PDA

View Full Version : Anyone using omnidirectional drive?



Pi Robot
09-07-2010, 09:51 PM
I am planning on upgrading the base on my robot which currently uses standard differential two-wheel drive with a trailing caster wheel. I am tempted to try out an omnidirectional setup so I am curious if anyone has any recommendations. The only retail models I have found so far are from SuperDroids at:

http://superdroidrobots.com/shop/category.aspx?catid=61

They don't seem to include a vectoring motor controller, but I found this one for a three-wheeled drive system:

http://www.robotlogic.com/product_omx3.html

Anyone have any experience with these or something else? Any thoughts?

--patrick

darkback2
09-07-2010, 10:25 PM
http://www.andymark.biz/am-0732.html These were all the rage at FIRST Robotics last year. The bots that used them were whicked maneuverable. They also had code posted on chiefDelphi.com. Pretty pricy though.

DB

zoomkat
09-07-2010, 10:56 PM
The below bot is pretty interesting.

http://letsmakerobots.com/node/11412

Pi Robot
09-07-2010, 11:43 PM
http://www.andymark.biz/am-0732.html These were all the rage at FIRST Robotics last year. The bots that used them were whicked maneuverable. They also had code posted on chiefDelphi.com. Pretty pricy though.

DB

Thanks--that's exactly the kind of thing I was looking for!

--patrick

SK.
09-08-2010, 04:55 PM
The RoboCup SmallSize and MidSize leagues use omnidirectional (and especially Mecanum) wheel setups since years. So searching for stuff like "mecanum robocup" or "robocup omnidirectional" will get you quite a lot of papers on a broad range of design, control etc. issues involving them.

Pi Robot
09-09-2010, 07:44 AM
Thanks--I will do some searching on these keywords. I am mostly interested in something prefabricated and ready to go such as this:

http://www.andymark.biz/am-0666.html (http://www.andymark.biz/am-0666.html)

Then I would use something like this:

http://www.robotlogic.com/product_omx3.html

to do the control.

lnxfergy
09-09-2010, 11:48 AM
Are you planning to use any of the ROS navigation stack on this bot? Just a thought if you are -- omni bases like that are probably not going to have the odometry required to make the nav stack really work.

-Fergs

Pi Robot
09-09-2010, 12:13 PM
Are you planning to use any of the ROS navigation stack on this bot? Just a thought if you are -- omni bases like that are probably not going to have the odometry required to make the nav stack really work.

-Fergs

Good point. Yeah, I certainly would like to at least explore the navigation stack so perhaps I'll stick with differential drive for now. I have some potential funding to upgrade the base on Pi Robot so I and I have been considering the Videre ERA MOBI. But it also occurred to me that an omnidirectional drive could be very useful which is why I started thinking along those lines. (I have a Rovio and the omni-motions are really very cool.) I understand the PR2 has a four wheel omni-drive that works by turning each wheel. Perhaps that would be another way to go?

--patrick

lnxfergy
09-09-2010, 12:34 PM
Good point. Yeah, I certainly would like to at least explore the navigation stack so perhaps I'll stick with differential drive for now. I have some potential funding to upgrade the base on Pi Robot so I and I have been considering the Videre ERA MOBI. But it also occurred to me that an omnidirectional drive could be very useful which is why I started thinking along those lines. (I have a Rovio and the omni-motions are really very cool.) I understand the PR2 has a four wheel omni-drive that works by turning each wheel. Perhaps that would be another way to go?

--patrick

Yep, that's how the PR2 does it (with odometry still working). University of Bonn also has a platform using similar kinematics: http://www.hizook.com/blog/2010/08/01/volksbot-omni-holonomic-robot-base-using-only-robotis-dynamixel-servos

Honestly, that 4-wheel omni base is *the* holy grail of mobile bases. I'd eventually like to build something using kinematics like that (but for less than the $10k-100k most of them currently are running)

-Fergs

zoomkat
09-09-2010, 02:24 PM
Honestly, that 4-wheel omni base is *the* holy grail of mobile bases. I'd eventually like to build something using kinematics like that (but for less than the $10k-100k most of them currently are running)

Would be interesting to see how closely the base drive could be duplicated using ~simple and inexpensive methods.

lnxfergy
09-09-2010, 02:26 PM
Would be interesting to see how closely the base drive could be duplicated using ~simple and inexpensive methods.

It's mostly about the control & timing -- the mechanics aren't that overly special, but getting the timing correct to achieve a desired velocity is a tough problem (it's like controlling 4 differential drive bases, all in unison). I think it could definitely be done well using inexpensive components -- but it's going to take some serious work to get the software working.

-Fergs

zoomkat
09-09-2010, 02:43 PM
Just looking at the base i would think that only the diagional wheels may need to be driven. With the center of the turn circle selected, the needed angle of each the wheels to stay on their individual circle edges can be determined. The needed rotation speed for each wheel could then be calculated such that all are moving at the same deg/sec around the common center of turn circle. An interesting math calculation, but probably doable with some experimentation.

Pi Robot
09-09-2010, 03:20 PM
[Ooops--just saw that you guys posted two more messages above this that I didn't see before writing mine!]

Yeah, I was thinking the same thing. Mike can probably tell us if something is wrong with this idea, but basically "all" the system consists of is 4 drive motors and 4 servos to turn the drive motors. So especially on smaller robots, you could probably get away with four AX-12+'s to vector the motors and you could use fairly low end drive motors since you have four wheel drive.

One of the things I prefer about other omnidirectional designs such as the one on the Rovio, is that you can zip off in any direction essentially instantly whereas the approach described above requires that you turn the wheels first, then roll in the new direction.

zoomkat
09-09-2010, 03:30 PM
One of the things I prefer about other omnidirectional designs such as the one on the Rovio, is that you can zip off in any direction essentially instantly whereas the approach described above requires that you turn the wheels first, then roll in the new direction.

Can it operate on a surface other than a flat, smooth, clean surface?

Pi Robot
09-09-2010, 03:44 PM
I've only tried it on various indoor surfaces (not including shag carpet since I don't have any) as well as clean asphalt walkways. Then again, I haven't seen any off-road videos featuring the PR2 either. :veryhappy:

lnxfergy
09-09-2010, 03:52 PM
I've only tried it on various indoor surfaces (not including shag carpet since I don't have any) as well as clean asphalt walkways. Then again, I haven't seen any off-road videos featuring the PR2 either. :veryhappy:

PR2's drive mechanism was designed to handle door thresholds -- but yeah, most omni-directional bases are going to have major tradeoffs in terms of capacity and terrain. The multiple-steered-differential style base is probably a better design for a heavier robot (compared to the three omni-wheel approach) -- the question is: at what point does the weight become enough of an issue to warrant the complexity?

-Fergs

Pi Robot
09-09-2010, 04:26 PM
Are you planning to use any of the ROS navigation stack on this bot? Just a thought if you are -- omni bases like that are probably not going to have the odometry required to make the nav stack really work.

-Fergs

Just to make sure I understand this--if one had encoders on the three motors of a 3-wheel omnidrive setup, couldn't you do a little math to get the needed odometry? And the controller shown here:

http://www.robotlogic.com/product_omx3.html

seems like it would work well with the ROS Twist data type, no?

--patrick

SK.
09-11-2010, 08:20 AM
PR2's drive mechanism was designed to handle door thresholds -- but yeah, most omni-directional bases are going to have major tradeoffs in terms of capacity and terrain. The multiple-steered-differential style base is probably a better design for a heavier robot (compared to the three omni-wheel approach) -- the question is: at what point does the weight become enough of an issue to warrant the complexity?

-Fergs
There are (very) large four (and more) wheel mecanum wheel platforms available though:
http://rmp.segway.com/ (400lb payload)
http://www.hizook.com/blog/2009/08/20/omnirob-kuka-robotics-foray-omnidirectional-mobile-manipulation-platforms (about PR2-sized)
http://www.omni-move.com/ (up to 45 tons payload per platform, yes you read that right :) )

SK.
09-11-2010, 08:30 AM
Just to make sure I understand this--if one had encoders on the three motors of a 3-wheel omnidrive setup, couldn't you do a little math to get the needed odometry? And the controller shown here:
Well you can use your control information but you´d need encoders in all of the little rollers of the mecanum wheels to really be able to measure the movement of your actuators (and even then you´d have problems with slip probably).
Unsurprisingly, other people also had this problem before, see for example:
http://70.88.136.210/For%20Rookie%20FRC%20Teams/DriveTrain/Mechanum%20and%20Omni%20Drive/OkayamaU-JP.pdf
There´s of course some interesting other stuff that could be done, like using optical mouse sensors to get odometry, but that´s a whole other can of worms.

Pi Robot
11-15-2010, 11:51 AM
Well you can use your control information but you´d need encoders in all of the little rollers of the mecanum wheels to really be able to measure the movement of your actuators (and even then you´d have problems with slip probably).
Unsurprisingly, other people also had this problem before, see for example:
http://70.88.136.210/For%20Rookie%20FRC%20Teams/DriveTrain/Mechanum%20and%20Omni%20Drive/OkayamaU-JP.pdf
There´s of course some interesting other stuff that could be done, like using optical mouse sensors to get odometry, but that´s a whole other can of worms.

I am returning to the idea of building an omnidirectional drive system for Pi Robot and now I am intrigued by the "optical mouse" solution for collecting odometry data as mentioned above by SK. Has anyone tried this? And if so, how well does it work over various surfaces such as carpet, hardwood, tile, linoleum, asphalt, etc?

--patrick

siempre.aprendiendo
11-15-2010, 12:18 PM
Some time ago I built this omnidirectional with Bioloid :)

http://www.youtube.com/watch?v=CCVF2LDy6I0

Pi Robot
11-15-2010, 12:26 PM
Some time ago I built this omnidirectional with Bioloid :)

http://www.youtube.com/watch?v=CCVF2LDy6I0

That is *really* cool. Am I correct in assuming that the Bioloid servos have a "dead zone" when being used in continuous rotation mode so that I wouldn't be able to use position info for odometry?

--patrick

darkback2
11-15-2010, 01:14 PM
Here is another source for mecanum wheels (http://www.robotmarketplace.com/products/0-FT-MECANUM-SET.html). These ones are smaller and seam like they would fit nicely on a light weight omni-drive robot.

Pi Robot
11-15-2010, 01:25 PM
If using independently steerable drive wheels like in siempre.aprendiendo's video, I wonder if you could get by with just the front wheels being driven. And could you go even further and give it just three wheels, where the rear wheel is steerable but not driven? Would this be stable under all wheel orientations?

lnxfergy
11-15-2010, 01:28 PM
If using independently steerable drive wheels like in siempre.aprendiendo's video, I wonder if you could get by with just the front wheels being driven. And could you go even further and give it just three wheels, where the rear wheel is steerable but not driven? Would this be stable under all wheel orientations?

I think that one of the powers of having all "powered casters" is that everything in contact with the ground is powered. There's no point to "hang up" on things like door thresholds, because all wheels actively roll over them -- this is especially important for heavier robots, and those that operate in our complex real-world environments.

That said, you could probably get away with 3 powered casters in a triangle configuration without losing much of the stability of a quad-powered-caster setup (like PR2/dynamaid). But I think a non-driven rear caster would be a serious deficiency in any design.

-Fergs

Pi Robot
11-15-2010, 03:29 PM
Good points Fergs. So three powered caster wheels in a triangular formation for the minimal setup with a possible upper limit on robot weight before really needing four wheels. Would you only need encoders on the two front wheels?

--patrick

SK.
11-15-2010, 04:45 PM
I am returning to the idea of building an omnidirectional drive system for Pi Robot and now I am intrigued by the "optical mouse" solution for collecting odometry data as mentioned above by SK. Has anyone tried this? And if so, how well does it work over various surfaces such as carpet, hardwood, tile, linoleum, asphalt, etc?

--patrick
I know some people who tried it and less people still using it ;). It can work if one puts effort into it, but it's not as easy as it first sounds, because different texture, lighting etc. make a naive implementation very susceptible to errors.
A paper with a pretty nice solution can be found here (Outdoor Downward-facing Optical Flow Odometry with Commodity Sensors):
http://www.hessmer.org/blog/2010/08/17/monocular-visual-odometry/

Pi Robot
11-15-2010, 04:56 PM
Very interesting! Though I'm now starting to appreciate the ease of just using integrated encoders on the motors...

--patrick

hash79
08-22-2011, 01:00 PM
Pi,

Anything every come of your omnidirection wheel search? Anyone every create a lower cost version of the "powered castor" wheels? On the PR2 wheels are there three drive motors, one per wheel and one to rotate the castor, or just two for the wheels and an encoder on top to measure rotation?

-Hash

Peter_heim
08-23-2011, 02:12 AM
Hash
This one looks interesting
http://www.youtube.com/watch?v=ax_dtCUUKVU

http://www.team221.com/order.php?cat=3

peter

Pi Robot
08-23-2011, 08:47 PM
Pi,

Anything every come of your omnidirection wheel search? Anyone every create a lower cost version of the "powered castor" wheels? On the PR2 wheels are there three drive motors, one per wheel and one to rotate the castor, or just two for the wheels and an encoder on top to measure rotation?

-Hash

Hey Hash,

No, I stopped pursuing an omni-directional drive system for Pi Robot since I have too many other things to learn about ROS, like arm navigation and object recognition. So it ended up in the "nice to have but not essential" category. Looks like Peter found some interesting links though...As for the PR2 setup, I'm guessing Fergs could give you a detailed description of how they work.

--patrick

Peter_heim
08-24-2011, 02:19 AM
Hi All
I just ordered some parts and will start building the base on the weekend at the moment it will be 4 driven wheels with 2 steering motors and chain linking 2 wheels. This will be a slow project if anyone has any ideas
the one area that i have yet to work out is the transition from differential style drive to crab style drive

peter

jdolecki
08-31-2011, 08:23 AM
When I visited Trossen World HQ in Downers Grove,they took Video of my Base that has Omni directional drive.

http://blog.trossenrobotics.com/tag/cybermotion/

For those interested ther are 3 Cybermotion Bases for sale in florida on Ebay.

Pi Robot
08-31-2011, 08:41 AM
Wow! That is a really nice platform! Can I ask how you rotated the upper platform? Is it on a lazy susan style bearing and if so, what kind? No problem if the answer would give too much away. ;)

--patrick

jdolecki
08-31-2011, 10:49 AM
There is a shaft that runs up through the colum that turns the upper platform that connect the top to the steering motor on the side. There is a thrust bearing on top to support any weight.
There use to be and 80 tech 4 bit optical encoder also on the inside. Along with 12 conductor slip ring. but I have removed that to and I hoping to go wireless for the communication from top to bottom. I have changed the old steering encoder to a magnetic encoder (10bit) mounted on the end of the steering motor. Each leg has 2 shafts running through it one drives the wheels and the other turns them. As you can see they all drive and turn at the same time. I have it apart for painting and re-engineering and a body.
My Goal it to put some arms on it which I am working on now and offload all the processing to a "Cloud Server", since I seen the presentation from Google on Cloud Robotics I think thats is the way to go because the computer just draws to much power.

Pi Robot
08-31-2011, 06:04 PM
Thanks for the info! Some day I have to give my robot's torso the ability to rotate like yours but I am working on a smaller scale so I will hope to use either an AX-12 or something slightly bigger to turn it. The challenge has been finding a thrust bearing the right diameter that doesn't cost $200 and a way to mount the servo so that it can turn it...

--patrick

jdolecki
09-06-2011, 04:44 AM
Here is a picture of the main body drive. The first picture shows how a leg gets driven.

The upper gear is the steering

The lower gear is the drive.

Each leg has 2 shafts running through it.

Peter_heim
10-14-2011, 08:08 AM
Omni Drive Update
Over the last couple of weeks I started building the omni drive base this is essentially a junk yard bot built from what I had laying around or parts from work. The drive base is built from 19mm ply wood the castors rotate on 2 tapper bearings (throw away but ok for low speed) the draw back is they are heavy. Directional drive is through #25 chains linking the 2 front wheels and the 2 back wheels, a 300 deg potentiometer on one of the front wheels and back wheels gives me the steering angle. Each caster has its own drive motor and the front wheels have encoders at the moment the rear wheels run off the same motor controller this will change later. The whole lot is controlled by a Arduino mega using a python script on a laptop and a Xbox 360 game pad



3538


Peter

jdolecki
10-17-2011, 06:16 AM
You can skip the ad.

http://www.youtube.com/watch?v=BTp2UAaihaI&feature=youtu.be

Peter_heim
10-30-2011, 05:00 AM
Omni Base Update
I finally finished stage 1 of the omni drive base all the motors work and steering also works the base is 45cm wide and 54 cm long but it is still cramped in the base the casters are prone to snagging wires
until i finally tie them all back. The encoder in the drive wheels are causing a bit of a problem they work but i am having trouble reading them still trying to get my head around programing the base
having a mix of motor controllers is not helping. Having said that i can drive forwards, backwards and steer. Using a PWM of 25% i get good speed and no slippage of the drive belts as i had with diff drive base

Pi Robot
10-30-2011, 09:34 AM
Hey Peter,

That is a fantastic looking robot! I was on the Robotshop website the other day and came upon a new commercial omnidirectional platform:

http://www.robotshop.com/productinfo.aspx?pc=RB-Nex-05&lang=en-US

They also have 4-wheel versions like this:

http://www.robotshop.com/4wd-arduino-compatible-mecanum-robot-kit-3.html

I cannot tell from any of the specs or the Nexus website if they supply software for easily controlling the 3 or 4 motors for moving the robot in a specific direction.

--patrick

lnxfergy
10-30-2011, 03:03 PM
Patrick,

I'd be concerned about the payload capacity of these bots. This same company sells a similar platform based on tiny hobby servos for ~$500. The only spec I see on the motors is 17W motors and 2A motor drivers.... that is closer in size to one of my fire fighting robots or the original Armadillo platform -- not even close to Maxwell/Pi Robot or something similar.

-Fergs

Pi Robot
10-31-2011, 08:08 AM
Hey Fergs,

Yeah, I've been wondering about the price/quality ratio of these platforms. There's not a whole lot of information on their website--not even a video of one of the robots moving.

--patrick

Pi Robot
11-01-2011, 08:49 AM
Yet another commercial variant that I found on the Robot Marketplace website:

http://www.robotmarketplace.com/products/0-FB003.html

Here it is on the manufacturer's website:

http://www.fivebro.com.tw/fb003.htm

Looks oddly similar to the Nexus version. Also, this company apparently also sells the Rovio.

--patrick

r691175002
11-01-2011, 01:43 PM
IMO Crazy prices on some of these platforms.

In my experience mecannum wheels are the nicest.
Unfortunately, not many people make this stuff so most of it is heavy and expensive. I think the ideal omnidirectional drive would be a custom set of macannum wheels machined out of aluminium with sealed bearings. Would do great outdoors as well.

lnxfergy
11-01-2011, 02:59 PM
I have to agree -- these platforms all seem overpriced and of questionable quality. I'm also not a fan of these omni wheels or mecannum wheels for larger platforms (especially when they are autonomous and odometry matters). Honestly, if you're building a larger autonomous platform, powered casters are the way to go.

-Fergs

Peter_heim
11-01-2011, 03:28 PM
Fergs
After having build the casters for my omni bot its not that hard to put it all together. Not having a lathe meant the pivot tubes had to be made out of plumbing fittings not a machined tube and using linked steering wheels instead of 4 steering motors makes it harder to align the wheels but cheaper to make.

Peter

tician
11-01-2011, 05:09 PM
I've never used omni-wheels or mecanum wheels*, but I am not sure really how well suited they are for outdoors (off of paved roads) or even on non-commercial carpet (high pile residential). If you ever look at them very closely (mecanum wheels especially), you will notice lots and lots of pinch points for a bit of debris to get jammed into that would prevent the rollers from spinning freely. From what I understand, mecanum wheels also require all four wheels in constant contact with a solid driving surface, because it is the interaction of the grip and spin of the rollers on all four wheels that allows consistent control over its motion.

As for not using them on larger bots, a lot of the omni-wheels I have found online are produced for omni-directional conveyors/material transport inside of factories (such as moving and sorting boxes on 'rails'(?) of them throughout a factory), so they tend to have rather high load ratings. One company builds omni-wheel casters for industrial transport (hand trucks and carts), with one example product allowing one person to push/pull ~1000kg along a concrete floor with relative ease (6 triple casters). As long as you keep it on a solid surface (places you would expect a service bot such as indoors, sidewalks, parking lots, etc.), it seems a bit simpler (mechanically) to construct than powered casters (fewer motors required than powered casters, only the omni-wheel itself moves, and direction changes are approximately immediate). Though the potential difficulty with floor transitions and definitely the odometry problem do raise serious questions of usefulness.

*I have had a powerful urge for some time to buy three 48mm-double (mini-vacuum?) and eight 125mm-single (PR2-ish base) omni-wheels from Rotacaster and test them on the high pile carpet in my house, but I have received rather serious threats from parental units should I 'waste' any more of my money/savings on anything 'non-essential' (like the assorted bits required to use them effectively). Maybe I can build one as a mobile safety counterweight and powersupply for the DARwIn-OP in the lab. Four omni-wheels, a 6S 20 Ah LiFePO4 battery pack, a Kinect, and a laptop or mini-ITX board for following the DARwIn around with a tether to power it and catch it (like an acrobatic/Wire-Fu harness) when it loses balance.

Peter_heim
11-29-2011, 02:56 AM
Omni_Bot Update
After a few days driving the dual wheel steering it limitations became apparent the wheels were under tension with Ackerman steering greater than about 20 degrees and just locked up when trying to rotate in place
So after a quick rebuild i now have 4 wheel independent steering the rear wheels are still controlled from the front motor controllers but this will be changed in the next upgrade. The encoders now work and I now
control the RPM not the power level. The big problem now is the program and my lack of experience. At the moment i have all the control in the arduino and from python i just send X,Y and Z velocities or joystick commands and receive wheel position and encoder clicks. The next part will be to get it to work with ROS, I will post a video soon when i have the control working better


Peter

Peter_heim
12-11-2011, 06:02 AM
Here is a video of omni bot having a its first run it just a simple loop moving in a square my earlier decision on the parts i used (cheep homemade) are now causing problems but these can be replaced over time. But i think this design with a bit more tweaking will work

http://youtu.be/RhqqMZ-FxiI



peter

Pi Robot
12-11-2011, 09:03 AM
Congratulations Peter--that is simply awesome!

--patrick

tician
01-15-2012, 01:42 AM
Fortunately I was not the only person interested in building an omnidirectional base to protect (and supplement the power and onboard processing of) the DARwIn-OP in the lab. Unfortunately, there was not much thought/research into the kit, so we now have the Nexus 4-wheel kit mentioned earlier in the thread (way overpriced, no documentation, and appears to be the same origin as the Fivebro kits mentioned earlier). It seems to work well enough on vinyl tile covered concrete floors with the bit of demo code running on it, but won't know more until I finally figure out all of the pinout/controls to build a useful library (included no example code, no circuit schematics, or even assembly instructions with the kit or on their site). The main board is an "EDVAC Arduino" with one L298 motor driver; the sub board is a "Nexus Arduino I/O Expansion" (and appears identical to one in Fivebro documentation) with an XBee header and one more L298; all four motors have quadrature encoders of currently unknown ratio (counts per revolution). At least there is hope (http://www.ros.org/news/2010/06/robots-using-ros-robotino.html) (on solid floors and low-pile commercial carpet) of using it with ros-navigation.

Pi Robot
01-16-2012, 09:45 AM
This is really good news! Looking forward to following your progress creating a ROS controller for the Nexus omni-drive.

--patrick

Peter_heim
02-25-2012, 01:42 AM
Omni_bot Update
Since the last update I have been using the omni_bot continuously and improving it performance. Joystick control works well only 1 issue (I need to increase the dead band around neutral). Localisation works but after a while it gets lost, the odometery is still bad. I have added a IMU to the base (the pink arrow) i hope this will help improve localisation.

My thoughts about this project



It's hard and expensive but in the end it's worth it.
I learnt more about ROS and programming because of it.
The ability to strafe is great and worth the effort.


Things I would change in the next redesign



make the base smaller trying to navigate a 45cm robot through a 75 door is hard.
The steering motor make a lot of noise maybe use stepper motors?
Some form of suspension to keep the wheels in contact with the ground.
Steering calibration is a must a wheel out by a few degrees WILL cause problems.

For anyone who wants more information i have started a blog.
http://escaliente-robotics.blogspot.com.au/


http://www.youtube.com/watch?v=Fz-RhgNZpNQ



Peter

Pi Robot
02-25-2012, 09:57 AM
Hi Peter,

Very impressive! And really nice blog. Not sure if you're already aware of http://planet.ros.org where you can add your RSS feed and have your posts automatically show up there. I haven't done it myself yet because I'm not using standard blog software with RSS capability.

--patrick

Peter_heim
02-28-2012, 01:14 AM
Thanks Patrick I seen Planet.ros awhile ago never thought it was for the hobbiest but anyway I registered now all i have to do is write more :.)

Peter

tician
05-18-2012, 02:08 PM
After ~4 months, I finally got back around to working on the nexusrobot 4wd omni-wheel platform again. The bot arrived mid to late january and came with no assembly instructions, no manual, no software examples, no software libraries, and their forum consists of ~2000 posts of russian spam. The first email to their tech support shortly after the kit arrived got us the manual (with some code snippets, but none of the libraries to use them) and one image each of the two boards outlining the headers.

Then I got really lazy and distracted for a few months. I wrote quite a bit of code to do most of the control for the bot (PWM motor control, encoder/velocity estimation, X/Y/Th <=> motor speed conversions), but just lost interest.

After a second email to their tech support two days ago, I received an image showing the recommended wiring diagram (confirming how it came wired), a copy of the PID_Beta6 library (modified to use float and some int variables instead of double - apparently the coder did not know double is the same as float in arduino), a copy of the PinChangeInt library (version 1.1 or earlier as it does not have the large header with release and license info), and a copy of "MotorWheel" (plus a few 2WD/3WD/4WD controller files). I currently have no idea what "MotorWheel" is licensed under, so that may be a slight impediment to fully-FOSS firmware for the arduino derivative board.

It is not the nicest code I have ever produced (needs some cleanup to get the motors moving smoothly again), but using their "MotorWheel" library allowed me to build a working version of the firmware that takes a vector (X/Y/Th) over serial to control the bot. Next task is to finish a bit of code to pass the velocity commands from ros to the firmware, and then pull the velocity data from the firmware and publish it as odometry for ros. After that is building a small frame/box to help protect the electronics and give a place to mount the laptop/netbook/kinect. I think the mount for the bigger battery and the entirety of the safety gantry for catching/suspending a falling DARwIn-OP will be aluminum angle or maybe T-slot. Those two features will be on opposite sides of the bot, with the battery in-line with, or slightly further inward than, the 'rear' wheels to act as counterweight for the DARwIn-OP that will occasionally be hanging from the gantry a bit beyond the 'front' wheels. Hopefully the bot's little frame can handle what we will be dishing out. If not, it was an even bigger waste of $970.20 than I dared dread in january. Even if the frame and/or motor gearboxes fail, the wheels are supposed to have a 20kg payload (each?) so could probably be reused for a bigger and better bot.