View Full Version : Kiwi Drive Concept
Ginger Power
07-05-2015, 12:54
I've been playing around with some ideas for a kiwi drive after watching 1114 (http://www.thebluealliance.com/match/2015cmp_sf1m1) this year, and 1425 (http://www.thebluealliance.com/match/2014pncmp_qm58) in 2014. I also dug into the archives (http://www.chiefdelphi.com/forums/showthread.php?t=38370&highlight=116+kiwi) and took inspiration from 116's 2005 robot.
http://i.imgur.com/HmuLuXo.png
Here's the Album (http://imgur.com/gallery/AJzK9/new) containing different views of the drivetrain. Sorry about the render quality, it's the first one that I've done. I'd be interested to hear what people have to say about this unique drivetrain.
marshall
07-05-2015, 13:17
Kinda reminds me of the poor pit lighting from Palmetto this year... :P
On a more serious note, I remember 116 from 2005 in Annapolis. That was a cool concept then and this a cool concept now.
Richard Wallace
07-05-2015, 13:35
..., I remember 116 from 2005 in Annapolis. That was a cool concept then and this a cool concept now.Thanks for reminding me about 116's drive way back when. It inspired me to build a dual omniwheel (http://www.chiefdelphi.com/media/photos/21966) and a holonomic demonstration chassis.
Thinking about these past efforts makes me really grateful for AndyMark and VexPro/WCP. Today's FRC teams can spend more time on tweaking and practice, because we have access to good COTS components.
Wayne Doenges
07-05-2015, 13:35
Here's another working Kiwi drive:
http://www.chiefdelphi.com/media/photos/35176
This was our robot for the 2011 game. Breakaway
I would be a little worried about mounting Omni's sideways like that. Especially if the game is rough. In Breakaway we were constantly being hit. This would lift the corner of our robot and then slam it back down.
billbo911
07-05-2015, 13:44
We are planning on experimenting with a Kiwi bot this off season as well. If next years game doesn't lend it's self to an omni drive robot, at least we learned something!
The way you have those three drives angled in, there is no need for the second wheel. It will never touch the floor. If it does, you have bigger issues to deal with!
marshall
07-05-2015, 14:08
Thinking about these past efforts makes me really grateful for AndyMark and VexPro/WCP. Today's FRC teams can spend more time on tweaking and practice, because we have access to good COTS components.
Yeah, back in my day, we did it up hill both ways in the snow with drill motors! And we had to remove anti-backdrive pins from gearboxes to do it! And we didn't complain about it!
Ginger Power
07-05-2015, 15:04
We are planning on experimenting with a Kiwi bot this off season as well. If next years game doesn't lend it's self to an omni drive robot, at least we learned something!
The way you have those three drives angled in, there is no need for the second wheel. It will never touch the floor. If it does, you have bigger issues to deal with!
Obviously some years are better than others for kiwi drives but I think 1425 and 1501 proved that a well built kiwi drive can compete amidst heavy defensive pressure. My initial thought process for having dualie omni wheels was that I was worried about a single omni wheel not being strong enough. Now that you've pointed that out, my logic doesn't make a whole lot of sense!
Monochron
07-05-2015, 15:09
What is the benefit of putting the wheels at such an angle? I wouldn't assume omnis are designed to handle that much loading at that angle. And it looks like it would add a lot more difficulty for the machining?
Is it a shock system to help guarantee that all wheels are touching the floor?
Alan Anderson
07-05-2015, 15:19
In general, three wheels will always be touching the floor no matter what angle they are at. The two reasons I see for using the nearly flat angle are 1) it lowers the center of mass, and 2) it moves the contact point outward just a little more from the center of the robot.
In general, three wheels will always be touching the floor no matter what angle they are at. The two reasons I see for using the nearly flat angle are 1) it lowers the center of mass, and 2) it moves the contact point outward just a little more from the center of the robot.
I believe that the motors are moving upward as much as the wheels and gearbox move down, so I'm not sure about #1.
For #2, this could also be done by putting the motors inboard of the wheels; the wheels could be just a fraction of an inch from the outer frame.
Ginger Power
07-05-2015, 15:28
In general, three wheels will always be touching the floor no matter what angle they are at. The two reasons I see for using the nearly flat angle are 1) it lowers the center of mass, and 2) it moves the contact point outward just a little more from the center of the robot.
Both were design considerations. A third consideration was that the geometry of a sideways omni wheel made it easy to "retract" the omni wheel using the pneumatic cylinders shown. When the omni wheels are retracted the robot rests on a singular contact point extending down from the frame presumably covered in rough top tread.
The idea is that each omni wheel can be retracted independently, giving the robot the ability to change its center of rotation about each pivot point. There's also the advantage of retracting all omni wheels when in scoring position so the robot becomes difficult to move.
Ginger Power
07-05-2015, 15:30
I believe that the motors are moving upward as much as the wheels and gearbox move down, so I'm not sure about #1.
For #2, this could also be done by putting the motors inboard of the wheels; the wheels could be just a fraction of an inch from the outer frame.
The entire frame is riding lower when the omni wheels are sideways. Also there are more omni rollers in contact with the ground when they are sideways as opposed to when the ground is tangent to the wheel.
Looking a little closer - what are those cans inboard of the gearboxes (one of them is partially obscured by the signal light)? If those are pneumatic cylinders, perhaps these raise the robot and lower the wheels to the floor?
Hmm, and there seems to be a foot midway along the short face of the frame. Is there some reason that you want to "raise the landing gear" and be stationary?
Thinking up names for that - how about a kizzy drive? It sounds close enough to kiwi, and those of you who remember the Roots miniseries a few decades ago may recall that kizzy means "stay put".
The entire frame is riding lower when the omni wheels are sideways.
This could also be achieved by raising the axles relative to the chassis while keeping them horizontal.
Also there are more omni rollers in contact with the ground when they are sideways as opposed to when the ground is tangent to the wheel.
This is the point of dualies - there is always a roller in contact with the carpet, provided that they're mounted on a horizontal axis. Having multiple rollers in contact with the carpet at that angle will also introduce some additional friction as the rollers point in different directions.
The biggest issue is the one Wayne presented - wheels weren't meant to be loaded that direction. Omnis probably even more so - the whole point of omnis is that they don't exert a force parallel to the shaft. As a result, sound engineering would tend to reduce the sustainable force parallel to the shaft in favor of other requirements.
The idea is that each omni wheel can be retracted independently, giving the robot the ability to change its center of rotation about each pivot point.
...Kinematic calculations are left as an exercise for the student...
Ginger Power
07-05-2015, 16:05
This could also be achieved by raising the axles relative to the chassis while keeping them horizontal.
This is the point of dualies - there is always a roller in contact with the carpet, provided that they're mounted on a horizontal axis. Having multiple rollers in contact with the carpet at that angle will also introduce some additional friction as the rollers point in different directions.
The biggest issue is the one Wayne presented - wheels weren't meant to be loaded that direction. Omnis probably even more so - the whole point of omnis is that they don't exert a force parallel to the shaft. As a result, sound engineering would tend to reduce the sustainable force parallel to the shaft in favor of other requirements.
Both of these points make sense. The same functionality behind the "kizzy drive" can be achieved with wheels that are tangent to the ground. Thanks for the comments!
Ginger Power
07-05-2015, 16:07
...Kinematic calculations are left as an exercise for the student...
Ironic that you say that just as I'm leaving my last dynamics class of the year... but I agree!
Dunngeon
07-05-2015, 16:26
Obviously some years are better than others for kiwi drives but I think 1425 and 1501 proved that a well built kiwi drive can compete amidst heavy defensive pressure. My initial thought process for having dualie omni wheels was that I was worried about a single omni wheel not being strong enough. Now that you've pointed that out, my logic doesn't make a whole lot of sense!
I can't speak to 1501, but I know that 1425 had major issues when under heavy defense last year. They were effective at low levels of play, where coordinated defense wasn't common but at DCMP I remember watching them get pushed around the field extremely easily.
Both of these points make sense. The same functionality behind the "kizzy drive" can be achieved with wheels that are tangent to the ground. Thanks for the comments!
Also, it would require a lot less machining to mount the feet on pneumatic cylinders (though you'd still have to harden them against lateral forces, perhaps with a pipe-within-a-pipe), and hard-mount the wheels. Whichever you actuate, moving the feet close to the where the wheels contact the carpet will decrease the vertical travel required to reliably switch.
The other Gabe
07-05-2015, 17:12
I can't speak to 1501, but I know that 1425 had major issues when under heavy defense last year. They were effective at low levels of play, where coordinated defense wasn't common but at DCMP I remember watching them get pushed around the field extremely easily.
This happened to many of the robots with Mechanum and Omni... compared to those robots, they were slightly more successful, simply because their triangle design was hard to push, but at the same time, they were pretty easy to spin
Ginger Power
07-05-2015, 17:26
I wonder how useful the ability to plant itself would be for the kizzy drive? Would this added ability combined with shifting its center of turn make up for the low traction inherent to all omni/mecanum drives?
Actually, a kiwi drive (as with any holonomic drive) should already be able to rotate about any desired center of rotation, without the legs. To rotate around one of the wheels, just keep that wheel fixed, and rotate the other two at the same speed and direction (clockwise or counterclockwise). if the rotation center is desired to be closer to the center of the robot, rotate the pivot wheel in the same direction (but more slowly). If the rotation center is desired to be farther from the center, rotate the pivot wheel in reverse direction. I'll look around later to see if anyone has done the kinematics in terms of center of rotation and rotation speed; usually they're presented in terms of translation and rotation.
Unless the leg did more than just sit there or go vertically, they would presumably only be useful to stay in place. There are certainly times and games for which this is useful - planting to take a shot, for example. For defense (apart from being an obstruction), they're not likely to be effective except possibly in a few oddball orientations.
I skipped the research when I realized that all of the square roots and trig functions canceled out, and the mapping was pretty straightforward. To map rotation about a point xr, yr at angular speed wr (measured in radians/second, with rotation from the positive x axis towards the positive y axis being a positive angular speed) to translation speed vx,vy and rotation w0:
w0 = wr
vx = w yr
vy = -w xr
you can use this same preliminary mapping to make a mecanum drive rotate around a desired point.
For conversion purposes, 1 radian per second is 30/pi ~ 9.55 rpm.
-
Using the WPIlib convention for your coordinate system (+x to the right, +y forward, rotations clockwise as viewed from above), your angular speeds will be reversed from this, and you will need to use:
w0 = wr
vx = -w yr
vy = w xr
Ginger Power
08-05-2015, 11:41
I skipped the research when I realized that all of the square roots and trig functions canceled out, and the mapping was pretty straightforward. To map rotation about a point xr, yr at angular speed wr (measured in radians/second, with rotation from the positive x axis towards the positive y axis being a positive angular speed) to translation speed vx,vy and rotation w0:
w0 = wr
vx = w yr
vy = -w xr
you can use this same preliminary mapping to make a mecanum drive rotate around a desired point.
For conversion purposes, 1 radian per second is 30/pi ~ 9.55 rpm.
-
If you use mathematical conventions for your coordinate system (+x to the right, +y forward), and measure your rotations with the navigation convention of clockwise as viewed from above, your angular speeds will be reversed from this, and you will need to use:
w0 = wr
vx = -w yr
vy = w xr
Thanks a ton for all the information about kiwi drives! It has definitely influenced my plans moving forward!
Using the WPIlib convention for your coordinate system (+x to the right, +y forward, rotations clockwise as viewed from above), your angular speeds will be reversed from this, and you will need to use:
w0 = wr
vx = -w yr
vy = w xr
Once you've got Vx (strafe right speed), Vy (forward speed), and ω,
the inverse kinematics for your 3 wheel tangential speeds are:
S1 = r*ω + Vx
S2 = r*ω - 0.5*Vx - 0.866*Vy
S3 = r*ω - 0.5*Vx + 0.866*Vy
(see attached sketch)
Combining the two transformations, to rotate an equilateral kiwi drive around a pivot point (xp, yp) with angular speed ω, the inverse kinematics using Ether's diagram above are:
S1 = ω * (r - yp)
S2 = ω * (r + 0.5*yp - 0.866*xp)
S3 = ω * (r + 0.5*yp + 0.866*xp)
Checking rotation points to verify that we didn't swap sign conventions along the way:
(0,0): all are ωr, check
(0,r): S1 = 0, S2 = S3 = 1.5ωr, reasonable
(0,2r): S1 = -ωr, S2 = S3 = 2ωr, reasonable
(0,-2r): S1 = 3ωr, S2 = S3 = 0, check
(1.155r, 0): S1 = ωr, S2 = 0, S3 = 2ωr, ok
(-1.155r, 0): S1 = ωr, S2 = 2ωr, S3 = 0, ok
-
If you want "forward" to be directly between wheels rather than through one (for example if you'll be picking up pieces or doing an internal stack), rotate the robot 180 degrees, leaving the axes and forward arrow in place. Then, the inverse kinematics for rotation about (xp, yp) become:
S1 = ω * (r + yp)
S2 = ω * (r - 0.5*yp + 0.866*xp)
S3 = ω * (r - 0.5*yp - 0.866*xp)
vBulletin® v3.6.4, Copyright ©2000-2017, Jelsoft Enterprises Ltd.