|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
| Thread Tools | Rate Thread | Display Modes |
|
#1
|
|||
|
|||
|
Killough platforms (A.K.A Holonomic/kiwi drive)
My team, 820, has built a killough platform. We're having serious issues with programming the robot. The robot doesn't seem to go straight and it rotates while straffing. In addition the wheels turn faster when the motors are going in a clockwise direction than when they spin counter clockwise. We think it might be due to the pulsing but we're not sure, we also strongly suspect that its a problem with programming.
Long story short we're looking for anyone out there who has either programmed one of these before or has some ideas on how to fix the problem please reply to the post or if ur feeling very generous you could email me a copy of the code at Tcru00@hotmail.com Your help is greatly appreciated. |
|
#2
|
||||
|
||||
|
Re: Killough platforms (A.K.A Holonomic/kiwi drive)
I've never programmed one for the RC, but I have for LEGO.
![]() The first thing I'd say is that the motors that come with the kit have a prefered direction, meaning they spin better one way than another, which is why you get the clockwise vs. counter-clockwise thing. (All motors have this problem, but for really good ones, the difference is neglible.) This is also the reason you don't go straight, even though the same value is being sent to the motors which are currently driving you. There are two ways to correct this. The first involves some semi-complicated programming because you create a PID loop. The idea of this loop is that it will monitor your wheel rotations (using encoders or some such thing) and if anything disturbs the speeds from the values you request, such as a bump or one motor running slower than the other, it will adjust the outputs automatically. The other way is to use encoders (or some other method) to measure the difference in the motor speeds and hard code that into your program. Obviously, it isn't as elegant and is harder to change when you motors get more broken in (or broken ), but it's fast and easy... Actually, with a Killough, it may be just as difficult to do, because you must store the differences between all (3? I'm assuming a normal setup) the motors and choose the right one to use for which ones you are currently running.Hope that helps! P.S. What motion exactly are you refering to when you say straffing? One motor on full? Two? Two at differing speeds? Maybe I'm just not thinking right now... ![]() Last edited by Ryan M. : 03-02-2005 at 17:43. |
|
#3
|
||||
|
||||
|
Re: Killough platforms (A.K.A Holonomic/kiwi drive)
I don't know much about kiwi drive, other than watching the original video and the 229 parody, but maybe I can still help you.
The vast majority of DC motors are designed to run more efficiently in one direction. This is a function of how the motor is wound. This difference was very drastic in the drill motors last year; I haven't found it to be as severe in the CIMs this year. If I had to fix this in software, I would take a CIM motor, and hook it up to a Victor. Pick a few different clockwise PWM values, and measure the speed with a tachometer (you can make your own with an encoder). Then output the equivalent values to spin the motor counterclockwise. Keep note of the speeds, and then do a calculation to slow the motor when it's running clockwise. For example, if the motor runs twice as fast clockwise as counterclockwise (a gross exaggeration): Code:
if(pwm15>127) pwm15=(pwm15-127)*.5+127; |
|
#4
|
||||||
|
||||||
|
Re: Killough platforms (A.K.A Holonomic/kiwi drive)
I beleive it took 1083 several regionals before they were able to get thier robot driving straight last year.
|
|
#5
|
|||||
|
|||||
|
Re: Killough platforms (A.K.A Holonomic/kiwi drive)
The way we controlled our Killough platform back in 2002 was a completely analog solution. We used three joysticks mounted in the same orientation as the drive wheels (120 degrees apart), mounted together using ball joints like so:
![]() This was back in the PBASIC days. It may be low-tech, but it certainly worked: http://stuweb.ee.mtu.edu/~alkrajew/FIRST/kiwi.mpg |
|
#6
|
|||||
|
|||||
|
Re: Killough platforms (A.K.A Holonomic/kiwi drive)
Quote:
|
|
#7
|
||||
|
||||
|
Re: Killough platforms (A.K.A Holonomic/kiwi drive)
In my dream of a 4 wheeled Killough drive bot I was going to turn the handle of a joystick to 45° from the base of the joystick. If you push the joystick strait up you get full + X and full + Y. You can map the drive motors directly to the joystick values in such a way that the bot moves in the direction that the joystick is pressed. You would also need a rotary pot to control the rotation of the bot.
|
|
#8
|
|||||
|
|||||
|
Re: Killough platforms (A.K.A Holonomic/kiwi drive)
Quote:
Quote:
|
|
#9
|
||||
|
||||
|
Re: Killough platforms (A.K.A Holonomic/kiwi drive)
as adam already posted the analog joystick solution is very easy to construct and works flawlessly without any programming....i repeat, no programming!
my suggestion is to build one and then work on a slick programming solution if you still feel it's necessary. |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Globe gear box | Pat Roche | Motors | 9 | 25-05-2004 22:50 |
| Pressure on Drive Team | David66 | General Forum | 52 | 30-03-2004 14:31 |
| What is wrong with this code???? It won't Compile and I don't know why? Please Help | CrashZero | Programming | 23 | 26-03-2004 09:44 |
| what's your most important drive train advice? | Ken Leung | Technical Discussion | 42 | 07-01-2003 09:58 |
| "Motors and Drive train edition" of Fresh From the Forum | Ken Leung | CD Forum Support | 6 | 29-01-2002 12:32 |