Re: Omni dtrectional drive system
It is really important you understand the underlying math of an omniwheeled system. It's not terribly complex but it really makes things easier. I have a somewhat working omniwheeled robot that I am working on at the moment. It uses 3 wheels instead of the 4 you want.
This is the code I have:
For any given wheel, the speed it needs to turn at is :
Vw = Vb (cos Aw * cos At + sin Aw * sin At)
Vw = speed of the wheel
Vb = speed of the robot's body
Aw = the angle of the wheel on the body
At = the angle at which the body is travelling
So for a robot with 3 wheels (at 0, 120 and 240 degrees around the body), like my example, you get the following formulae:
Sometimes a term will disappear from the calculations because it's 0, sometimes it's simplified because it's 1. You need to figure out what angles your wheels are at and create the formulae for your Vw1, Vw2, Vw3 and Vw4.
I am not going to give you the answers, you have all the information here for a robot with 3 and a generic formula.
You need to figure out why I have the following code:
Good luck, if you have more questions, don't hesitate to ask, but don't ask me to write out the formulae for the 4 wheels, you should be able to do that yourself.
| Some people, when confronted with a problem, think, "I know, I'll use threads,"
| and then two they hav erpoblesms. (@nedbat)
| My Blog: I'd Rather Be Building Robots
| ROBOTC 3rd Party Driver Suite: [Project Page