OOAK Table Tennis Forum


A truly International Table Tennis Community for both Defensive and Offensive styles!
Live Table Tennis Videos Table Tennis News Live OOAK Forum Links About OOAK Table Tennis Forum OOAK Forum Memory
It is currently 25 Jul 2017, 22:12


Don't want to see any advertising? Become a member and login, and you'll never see an ad again!



All times are UTC + 9:30 hours




Post new topic Reply to topic  [ 223 posts ]  Go to page Previous  1 ... 11, 12, 13, 14, 15
Author Message
PostPosted: 28 Nov 2016, 20:22 
Offline
New Member

Joined: 21 Oct 2016, 19:24
Posts: 7
Has thanked: 2 times
Been thanked: 1 time
Still waiting for my Gertbots.
The Raspberry arrived and i managed the Bluetooth connection.

I have started to program the app.
There are some questions popping up:

Does the Random function only randomize the direction, or are the tractionary, the spin etc. also randomized?
I think you can not recognize the spin if it is generated by chance.

Is it important to randomize how many balls are played?

@Dave: Can you help me with the pin assignment at the db25 or do I have to measure myself?

Regards Stefan


Top
 Profile  
 


Don't want to see this advertisement? Become a member and login, and you'll never see an ad again!

PostPosted: 01 Dec 2016, 03:37 
Offline
New Member

Joined: 07 Nov 2016, 11:38
Posts: 9
Has thanked: 8 times
Been thanked: 0 time
Blade: Grubba
FH: Sriver-EL
BH: Sriver
johnnykl wrote:

Btw, I don't have the Amicus. If by any chance you are in the south bayarea of CA, then maybe I can be of help.

Dave: If you are reading this, please consider open sourcing what you have as this will help us out a lot and your efforts will not be wasted.


Johnnyk,

I've been following this thread and actually Dave's post about a potential software/app. It would be nice to be able to control it using a smartphone. I'm in the East Bay area, not a programmer but maybe we can work out something to develop the software with Dave's help ofcourse. I actually just ordered the Amicus Pro ;)


Top
 Profile  
 
PostPosted: 03 Dec 2016, 21:07 
Offline
New Member

Joined: 21 Oct 2016, 19:24
Posts: 7
Has thanked: 2 times
Been thanked: 1 time
hi,

first screenshots from my app "smarticus" version 0.01:
Image Image Image Image Image

Bluetooth Connection to Raspberry via rfcomm.

We should work together on an bluetooth interface protocol.

Like: How many steps are from the far left to the far right.
How many different speed settings are possible.

If we define a standard protocol, we can easy share different apps for different devices an use it for raspberry and arduino.
Maybe 3 bits for what to change and 5 bits for the amount. Then we only need to send one Byte for every change.
Example: there are 23 trajectory steps and we define Trajectory is 011. Setting the trajctory to 13 would be 011 01101 -> 0x6D hex


Top
 Profile  
 
PostPosted: 04 Dec 2016, 17:32 
Offline
New Member

Joined: 21 Oct 2016, 19:24
Posts: 7
Has thanked: 2 times
Been thanked: 1 time
After I've been thinking about timing, I think I should throw the whole exercise at once to Raspberry and not every ball individually. The raspberry should then send the individual balls to the amicus and always wait for the signal of the amicus that a ball was played (IR sensor).

Any feedback?


Top
 Profile  
 
PostPosted: 09 Dec 2016, 02:09 
Offline
New Member

Joined: 07 Nov 2016, 11:38
Posts: 9
Has thanked: 8 times
Been thanked: 0 time
Blade: Grubba
FH: Sriver-EL
BH: Sriver
HI Stefan, this is good stuff! I just got my Amicus and still learning how the control panel works. I'll definitely keep an eye on your posts!


Top
 Profile  
 
PostPosted: 20 Dec 2016, 00:14 
Offline
New Member

Joined: 21 Oct 2016, 19:24
Posts: 7
Has thanked: 2 times
Been thanked: 1 time
Update:
After I learned to program in Python and measured a lot on my amicus, I now know how I can control every motor and how I have to process the signal of the IR sensor which stops the ball feed.

Now I'm just wondering how the 3 spin engines must work together to get the desired speed and the desired spin.

When all 3 engines run full throttle, the ball is shot at maximum speed.

What happens when only one engine is full throttle and the other two engines are stopped? Is then the ballspeed = maximum ballspeed / 3?

The motors can also be reversed. Maybe the formula is simple: Ballspeed = SpeedMotorA + SpeedMotorB + SpeedMotorC (if a motor runs reversed then his Speed is negative)

And then there is the spin and the spin direction.

I need a formula for each engine, which gives me the required speed due to speed, spin and direction of spin.

For example: speed 100% and no spin = MotorA 100%, MotorB 100%, MotorC 100%

Even better would be a finished function, like.. ;)
public int[3] GetMotorSpeed(int speed, int spin, int spindirection)
{
// speed (20%-100%)
// spin percent (0%-100%)
// spindirection in (0min - 59min) 0min = Topspin, 15min = right Sidespin, etc

return int[3]{SpeedM1, SpeedM2, SpeedM3};
}

Can anyone help?


Top
 Profile  
 
PostPosted: 24 Apr 2017, 19:50 
Offline
New Member

Joined: 22 Apr 2017, 16:42
Posts: 2
Has thanked: 2 times
Been thanked: 1 time
steff76 wrote:
Update:
After I learned to program in Python and measured a lot on my amicus, I now know how I can control every motor and how I have to process the signal of the IR sensor which stops the ball feed.

Now I'm just wondering how the 3 spin engines must work together to get the desired speed and the desired spin.

When all 3 engines run full throttle, the ball is shot at maximum speed.

What happens when only one engine is full throttle and the other two engines are stopped? Is then the ballspeed = maximum ballspeed / 3?

The motors can also be reversed. Maybe the formula is simple: Ballspeed = SpeedMotorA + SpeedMotorB + SpeedMotorC (if a motor runs reversed then his Speed is negative)

And then there is the spin and the spin direction.

I need a formula for each engine, which gives me the required speed due to speed, spin and direction of spin.

For example: speed 100% and no spin = MotorA 100%, MotorB 100%, MotorC 100%

Even better would be a finished function, like.. ;)
public int[3] GetMotorSpeed(int speed, int spin, int spindirection)
{
// speed (20%-100%)
// spin percent (0%-100%)
// spindirection in (0min - 59min) 0min = Topspin, 15min = right Sidespin, etc

return int[3]{SpeedM1, SpeedM2, SpeedM3};
}

Can anyone help?


Sorry to see that no one seems interested in this project, i am though.
And where did David go with his big ambition to make this app?
Did you continue Stefan?

Best Regards
Bjorn


Top
 Profile  
 
PostPosted: 04 May 2017, 20:19 
Offline
New Member

Joined: 04 May 2017, 20:14
Posts: 2
Has thanked: 0 time
Been thanked: 1 time
Hi!

I am going to buy Amicus Advance about this July-August, then I'll look what I can do with the controller.

I am the programmer and have experience working with embedded sw (including motor controllers), desktop apps, mobile apps. So, if it is realistic to develop the controlling app without sacrificing the actual play time too much, I'll do it.


Top
 Profile  
 
PostPosted: 04 May 2017, 23:14 
Offline
Senior member

Joined: 29 Oct 2014, 02:52
Posts: 123
Has thanked: 0 time
Been thanked: 8 times
I have already done this. It is perfectly doable, but you will have to build your own hardware. There is no way to interface to the existing controller.


Top
 Profile  
 
PostPosted: 07 May 2017, 05:25 
Offline
New Member

Joined: 04 May 2017, 20:14
Posts: 2
Has thanked: 0 time
Been thanked: 1 time
Dave T wrote:
I have already done this. It is perfectly doable, but you will have to build your own hardware. There is no way to interface to the existing controller.

So, don't you want to share/sell you SW/HW?


Top
 Profile  
 
PostPosted: 23 May 2017, 10:35 
Offline
New Member

Joined: 08 Dec 2015, 10:24
Posts: 1
Has thanked: 0 time
Been thanked: 0 time
I've had the Amicus Professional for awhile now, and I love what the robot can do. I'm really looking forward to seeing everyone's progress with the custom controller.

It would be nice to have a community backed and developed open source project for this. I'm sure there are a lot of people who could help, but just don't have the time to fully commit to it.


Top
 Profile  
 
PostPosted: 19 Jul 2017, 04:13 
Offline
New Member

Joined: 21 Feb 2015, 12:31
Posts: 35
Location: Gold Coast, Australia
Has thanked: 5 times
Been thanked: 3 times
steff76 wrote:
Maybe the formula is simple: Ballspeed = SpeedMotorA + SpeedMotorB + SpeedMotorC (if a motor runs reversed then his Speed is negative)


I would think that when the speed of motor A = B = C (eg when they're all at max speed, or whatever), the ball speed = speedmotorA = speedmotorB = speedmotorC?


Top
 Profile  
 
PostPosted: 19 Jul 2017, 05:33 
Offline
Super User
User avatar

Joined: 06 Jun 2015, 13:09
Posts: 451
Location: Las Vegas
Has thanked: 4 times
Been thanked: 37 times
Custom controller would be amazing. I think I need a little primer to getting started.

Very cheap 3d printer parts might be a possibility.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 223 posts ]  Go to page Previous  1 ... 11, 12, 13, 14, 15




All times are UTC + 9:30 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Copyright 2012 OOAK Table Tennis Forum. The information on this site cannot be reused without written permission.

Powered by phpBB® Forum Software © phpBB Group




Don't forget to 'LIKE' our forum on Facebook if you enjoy the content: