Like a lot of teams we are considering mecanum but have no experience with them. Would you be willing to share some of your experiences on what to watch out for?
A mecanum drive train has the advantage of mobility, but that mobility comes at the cost of power. My team found this out the hard way when we were pushed all over the field. Since that is no longer an issue mecanum would be great for this game. As far as setting up the system, make sure the four wheels/gearboxes/motors are as close to identical as possible. The way mecanum wheels make strafing possible is reliant on the angle of the force generated by the wheels. If one of the wheel assemblies creates a greater or lesser force than the others, the strafing will be at a diagonal. The small amount of angling that will occur regardless can be fixed through use of a gyroscope; however, if the degree of the difference is too much, the gryo will do more harm than good. I known that in LabVIEW at least the gyro feature is build into the mecanum drive (called holonomic drive in the code) control block. The gyro will take some effort to function properly, but it is worth it in the end. If I remember right LabVIEW (if you are using it) has a nice detailed example of the coding setup. Good luck with it! Being able to strafe would be a major advantage in this game.
mainly, just make sure each wheel is pushing down with the same amount of force. Some teams have even done a suspension system in the past, while others have just designed they’re robots so the weight distribution is as close to uniform as possible. Either way, that will be an issue. Also just remember that whatever aspect ratio you chose, going straight on the wider side will always be more difficult.
Is this what you are referring to? If so, it’s only fair to note that the problem was taken seriously by Vex, the cause was found, and changes were made.
Yes, but I’d still keep spares around just in case. For me at least it’s once bitten twice shy. We won every match in which we broke a roller, but we still had to change out our wheels at least once a competition including at World.
If a robot is designed with the wheels set square at 22 inches and the weight is equal on all wheels. What happens when you load one side with 24 pounds (3 totes) cantilevered out the long way of the totes (fork lift style)? Will it still strafe? Hard to turn?
I’ve already posted this in another thread, but our team developed our own Java Library, as we had a lot of issues with the default stock code. It can be found here:
Team 2465 (Kauaibots) has been working with mecanum for a few years now. We’re one of those teams that will hopefully have a singing mecanum driver system.
Like the fine folks at ai-robotics, we’d like to make our mecanum drive code available too - in the hopes that other teams find it useful. I sincerely hope this won’t steal the thunder from ai-robotics’ excellent work, but since the Kauaibots code has some unique features, we wanted to post this on this thread.
(a) Velocity PID control of CAN-based black Jaguars (for traction control, which could come in handy this year). We note that mecanum is sensitive to weight distribution, and a velocity PID is very useful to help deal with this issue. You can disable this if you want.
(b) integration with the nav6 IMU for a field-oriented drive that exhibits superior accuracy (typically, yaw drift of about 2.5 degrees over a 2:30 minute period, the FRC match length). Like the ai-robotics code, you can disable this if you want, too.
The java code for this is available online. See the Drive.java file.
You might also find the “AutoDrive.java” and “StickDrive.java” files useful, they’re up one directory, then down into the “commands” directory. The StickDrive implements a set of joystick response curves we’ve found useful.
Team 2465 partnered with Kauai Labs to design the new open-source navX MXP Robotics Navigation Sensor. The navX MXP is compatible w/the nav6, so you should be able to use either board with this code. Alternatively, the kit of parts gyro can be integrated into it, although we find the nav6/navX provides greater accuracy.
There are a few tuning parameters (the robot wheel base and the wheel diameter). We’ve tested this on both 6-inch and 8-inch Andymark mecanum wheels, on both square-shaped and rectangular chassis. Our favorite configuration is a rectangular chassis with 8-inch wheels. This has enough pushing power to push one of the adult mentors sitting in a chair (the chair doesn’t have wheels) across a carpeted floor.
This code is for the CRio; We haven’t yet ported this to the RoboRio, but we’ll be posting the ported code soon.
What is the best layout for the drive base? My team is working with a modified KOP drive base in the long configuration. We chose this with the thinking that it will be easier to balance weight with the forklift collector we are currently planning on using. But, we do not have enough experience in mecanum to know how this will affect the wheels. Should we revert to a square drive base and figure out the weight distribution? How will a long drive base affect strafing?
I think this is one of the more important questions to be answered about Mecanum drives this year. I also imagine it will be very hard to predict or calculate before actually testing.
Can any teams with Mecanum experience give an idea as to how “off” control would be if heavily weighted on one side?