About three weeks ago I decided I wanted to learn CAD, so I downloaded Solidworks and tried to teach it to myself. This is my first project, so I would appreciate any advice you have to give.
I designed these octocanum modules with my team (small, poor, and few precision machining resources) in mind, so I put a large focus on cost savings and ease of assembly (i.e. as many COTS parts and as few precision machined parts as possible). Since we have a number of 2 output 20" Nanotube gearboxes available, I chose to incorporate them into my design so we don’t have to machine or buy new gearboxes. I also tried to buy as many parts from AndyMark as possible because we have the $450 PDV there. Everything else either came from VexPro or McMaster-Carr. The whole system (aside from the Nanotubes) would be mounted between two pieces of VersaFrame Stock, one of which is shown in the render (both shown in the 3D model). Aside from the sheet metal parts, which we would get cut by our water-jet sponsor, the only holes that would need to by cut are in the pieces of VersaFrame, which doesn’t need to be 100% precise.
Here are some specs:
High Gear Ratio - 5.5:1
Low Gear Ratio - 12.8:1
High Gear Top Speed - 13.73 ft/s
Low Gear Top Speed - 5.89 ft/s
Weight (not including CIM, Nanotube, or VersaFrame Stock): ~5 lbs each
Some questions I have that I hope someone can answer:
Are those speeds about what they should be?
Is 1/8 plate too thin? too thick?
Will the 1.0625" d pneumatic cylinder be strong enough? too strong?
Will the thing snap in half as soon as we start driving?
They seem a bit faster than average, but certainly reasonable.
Definitely not too thick, assuming that’s aluminum.
A 1" diameter cylinder has an area of 0.78 square inches. At 60 psi, this would generate over 45 pounds of lift, which sounds about right to authoritatively lift a 140 pound robot.
I would round off the corners of those triangular holes. Not only will it be easier to machine, this will dissipate stress. Sharp inside corners are the most likely places for metal fatigue stress fractures to begin.
I would also add some springs to lift the mecanum wheel off the floor when not in use to reduce drag and wear; they just need to be strong enough to lift the mecanum wheel, sprocket, bracket and chain. You should be able to anchor them to the top of the translucent bracket in the render by adding a couple of holes on either side of the cylinder.
Or you can use the piston (assuming it’s a double piston) to lift the mecanum off the ground. Then you would need to actually attach the piston to the module, maybe using these rod ends from mcmasters.
I notice that you have an extra bearing on the end of the traction wheel shaft. What is it for?
For the bracket that holds the piston: one side is attached to the frame, what’s the other side attached to?
I looked into attaching the piston to the module, but it requires two joints (one at the piston end and one at the cylinder end). That’s a little more complexity than I was looking for, and it would make the mounting plate for the piston that much higher. I will add in a spring return for the module in version 2 like GeeTwo suggested.
Not pictured in the render is another piece of VersaFrame stock. This is the outside of the robot where the bumpers will be mounted. You can see how the module fits into the second piece more clearly in the 3D model on GrabCAD.
I’d be a touch hesitant to use the force generated by the piston to say that this module will actuate. The rotation of the module about its pivot axis makes the problem a rotational one, rather than a purely linear F=mg situation.
From my understanding, actuation depends on the torque exerted by the piston at least cancelling the torque exerted by the ground on the dropped wheel at full actuation, as well as all points before that. Ideally, we’d like the torque exerted by the the piston to be far greater than that of the normal force, since the module should actuate with some vigor and keep the robot suspended on the dropped wheels, even if another robot climbs its way on top.
I haven’t taken a look at your CAD, but based on some inspection of the image you’ve posted:
Assuming that your dropped wheel center is 6 inches from the pivot axis, it drops 10 degrees from horizontally aligned with the pivot and your robot weighs 150lb, each dropped wheel exerts a torque of -39lbf. The maximum torque I can coax out of your piston, at about 4 inches from the pivot axis and assuming it exerts all 47.12lb of force perpendicular to the radius drawn between its standoff and the pivot axis is 15.71lbf.
Take it for what you will, but I’d suggest moving the piston further from the pivot or moving the dropped wheel closer. Increasing your piston bore would also be effective, and will provide a more dramatic (quadratic) effect than changing your radii.
It’s super great that you’ve decided to teach yourself CAD and have worked on original designs just a few weeks into it. Good for you, keep doing that.
That said, this design might need some work, and building a cantilevered octacanum module like this is a somewhat complex endeavor that is probably not the best first design project for someone new to this stuff.
The “double cantilever” of supporting a drive module cantilevering off of an already cantilevered shaft can put some weird and strong bending moments on the drive shaft that it may not be ready to support. Specifically when a robot is pushing you from the side (or to a lesser extent, when you’re strafing) - there’s a real danger in bending the shaft this way and you’ll want to be really careful.
For “west coast” drop drive modules like this, I’ve always been more comfortable with a design that straddles the drive tube, rather than hanging off of it. You can add some low friction plastic blocks between the module and the frame so that if the module deflects under load, the forces are transmitted to the frame rather than the axle supporting the module, and even if the axle supporting the module takes some load, it will be on both sides of the tube very close to the side walls which is a lot better of a loading condition. The Vex drop modules do this for good reason; they are a good starting point for a design.
If you are going to face mount the piston then using it only to push the module down is the correct choice. If you couple the piston to the module but rigid mount it on one end, you put a bending moment on the piston, which is bad news bears and just unnecessary. You’ll have to pivot mount the piston on both ends if you want it to provide the up-lifting force to hold the mecanum off the ground, which is a lot more of a pain than just throwing a torsion spring on there.
If you’re using 1/8" plates for the module, I would just get rid of the lightening altogether. The pattern you have has a web that is too thin to do anything in the middle and it gets dangerously close to those bolt holes. The lightening saves you maybe like a quarter pound per module?
Can you make the mecanum wheel a dead axle wheel? This way you can use the axle as a structural member and you get some “free” rigidity.
Agreed. I had assumed that the piston was essentially over the wheel pivot, as on the VersaDrop. Looking more carefully at the render, I see that you’ll only get about 60% of your cylinder force as lift. You’ll have to move the cylinder and cross bar out, or increase your piston diameter by about 30%. (1.3 * 1.3 * 0.6 = 1.01)
Yeah I messed up my math when calculating the torque needed to lift the robot. I will probably end up increasing the cylinder to 2" diam. which should be more than enough torque even with the piston where it is. I would go for a 1.75" pancake cylinder, but Bimba doesn’t offer that and they’re the only pneumatic company I’ve ever worked with.
Thank you! I was originally planning on attaching the cylinder to the module, but I decided against it when I realized I would need the double hinge. When I saw that the VersaDrop doesn’t have the piston attached, I thought that would be okay to do, but I forgot to add the spring return. That will definitely be something I add in the next version.
As far as the cantilevered module goes, I don’t know if you saw that the module is supported by two pieces of VF Stock, not just the one shown in the render. If you take a look at the 3D model, you can see that the module is constrained on both sides. That being said, the problem of side loading is something I was keeping in mind when building it. I was under the impression that a 1/2" Hex shaft constrained on both sides would be strong enough, but I don’t have any experience to prove this. If this isn’t true, what do you think I could do to fix this problem?
I was wondering about the lightening. Do you think it would be better to make it a thicker plate and add pockets or leave it 1/8" plate and take out the pockets?
Since the mecanum wheel is AndyMark and the pulley is Vex, there’s no easy way to attach them and make it a dead axle. Sadly, AndyMark doesn’t make an 18t pulley and Vex’s 4" mecanum wheel doesn’t support dead-axle drive. If you have another way to do this dead-axle, I would be interested in hearing about it.
You shouldn’t need 2" - Bimba does have 1.5" cylinders in both square and round pancake styles. Remember that force goes up as the **square **of the diameter, so 1.5" provides twice the force of a 1.0625" cylinder (to within 1%).
You could pivot on the mecanum, which would make the cantilevered wheel the traction wheel which has a 42 tooth sprocket, if I did my math correctly. This would be easy to mount sprocket to wheel on a dead axle. This solution would also require a change in gear ratio of your gearbox - in the direction that it will probably get simpler and lighter. This would also make high-speed mecanum your “default” drive if the pressure goes out, which may be a good or bad thing depending on your game strategy/style.
I knew I didn’t need a 2" cylinder, but it was the smallest I was able to find that would work when I posted. But speak and it shall be so. I went back and checked, and this time I found the 1.5" pancake cylinder. I will probably end up using that one.
One of the big perks of octocanum for me is built-in mecanum suspension. I wanted to pivot on the traction wheel so we wouldn’t have to worry about uneven loading. I agree that switching them would make it easy to do a dead axle, but that would take away a major advantage in my opinion. Would it be advantageous to add more bolts, a piece of churro, or some other cross brace between the wheels to better connect the plates instead of going to dead axle?
I don’t see how the air suspension would compensate for uneven loading. Air (especially if allowed to flow among the cylinders, or vent when over-pressured) does not behave like springs do in this case. If you have uneven loading such that the weight on any one wheel is greater than what the air can carry, that one will drop until the traction wheels touch the carpet and compensate. At lesser inequality I believe it will lift the lightest corner relative to the others, but if you have a low CoG it will take a lot of lift to effectively move the robot’s CoG to the geometric center and equalize the weight carried by each wheel.
I was under the impression that if the mecanums were pneumatically actuated, you could tune the pressure so that the cylinders would have some give. Then the heavier wheels would compress the springs, and all four wheels would still have the same ground contact. Am I wrong?
Based on my dry-erase figuring (not experience), the air suspension **will **help keep all four wheels on the floor/carpet as you go over minor bumps and dips. It will not do much to equalize the weight carried by each wheel due to differences between center of gravity and center of geometry.
Yes, you are correct. If you supply air to all four wheels and adjust the pressure so the cylinders are not bottomed out all four wheels will maintain equal pressure and contact with the ground as the system travels over uneven surfaces. This is indeed a great feature of your design. This helps steering because if one wheel floats, as a ridged system would, the robot will not steer correctly.
You may need to pivot the cylinder to compensate for the radius as the assembly articulates. Otherwise it will likely jam.
This is a really bad idea from a durability perspective. If you make the traction wheel the pivoting wheel, you will have to deal with a lot more sideways loading on the module than if a wheel with rollers is the pivoting wheel. This has been a documented problem in other drop drives (e.g. 148’s 2010 drivetrain) and isn’t recommended if you don’t have a really robust way to deal with the side loading.
With omnis, I would agree with you. However, mecanums generate as much side force as forward/reverse force by design even when the robot is driving directly forward. With octanum, I’d consider the traction wheels as having **less **sideways loading under most conditions, probably only exceeding the peak mecanum side load when being T-boned. And in that case, the solution is to switch to mecanum and strafe your way out of the t-bone, or at worst into a legal pin that (under most years’ rules) is time limited.
First things first, if your solution to a design problem is to drive around the failure mode, that’s just plain bad design. You should never have a robot designed in a mechanically weak manner just because the driver “shouldn’t” have the robot in that mode when you expect damage. You can’t bet your drivetrain on perfect play.
The strafing force a mecanum wheel puts on the robot is very different than the force of being pushed to the side in traction mode. When being pushed in traction mode, the full weight of the robot resists motion until static friction is broken. When strafing in omni / mecanum mode, there is no such resistance - the wheels are rotating and the rollers are allowing the motion to happen.
Finally, while you are technically right that mecanum wheels exert as much force in the sideways direction as they do in the forward / back direction, it is worth noting that this is ~70% of the peak force a traction wheel of the same gearing would put in the forward direction, assuming the same CoF for both wheels (which is also not true, all commercially available mecanum wheels have a lower effective CoF than most high traction wheels).
It is simply more robust to put the omni wheel on the pivot and the traciton wheel at the axle.
Again, no argument as stated, but Mecanum ain’t Omni.
I wasn’t so much betting on perfect play, as planning on the play I’ve seen (which has not included t-boning, for the record). Once T-boning was under consideration based on evidence of others, the defense is straightforward. Training for this situation would be included in driver practice, not left as something that we hope the driver would invent on the spot. In any case, we would design to handle the (externally applied) strafe forces of the worst case we expect to see. If 1/8", there would likely be no pocketing. If 1/4", there would probably still be minimal or no pocketing. As I’ve stated before: Due to our limited machining capability, our team’s general strategy is to **select **material for our robot, not **engineer **it.
Our team is not planning for an octanum drive train, but if we did, we’d be at least as likely to have the mecanums as the “fast default” and the traction wheels as the “shifted shoving” state as any of the other three possibilities.
Also, as a final fallback, we’d design any “quad-drop” drive train to have predictable behavior should the modules be pushed by extreme strafe forces. It might involve a drive shaft pushing against a plate with unreasonable friction, but the outcome would still result in a fairly reasonable, predictable outcome.
So what I’m hearing is either configuration (mecanum or traction wheels pivoting) will have sideways forces that need to be dealt with. For traction, the big problem is T-boning. For mecanum, the problem is the constant force being applied at a 45* angle. Can anyone comment on whether they think both the 1/2" Hex shaft and the 1/8" plates (without pocketing) would be strong enough to stand up to either of these forces?