Jim

[EV3] Omnidirectional Robot Concept and Discussion

Recommended Posts

27889585740_578438ef3a_c.jpg

MINDSTORMS EV3 OMNIDIRECTIONAL ROBOT

INTRODUCTION

The reason you are stuck with me as Moderator/Admin is actually caused by Mindstorms EV3. I proposed an Index for Mindstorms and Bonaparte figured I could make one myself. Resulting in me making one, and one thing lead to another.

In 2013 TLG released a brand new edition of LEGO Mindstorms. Owning two NXT sets, which I had hardly used to build something cool, I was determined to change that when I bought the EV3 sets. I first bought the 45544 - EV3 Education Core Set set, and shortly after that I added the 31313 - Mindstorms EV3 (Retail) set to my collection. After some initial experiments both unit had been turned on approximately the same number of times as the NXT.

This being a terrible waste of potential, I recently decided to start building the robot I have been planning in my mind for a long time. My goal is to build a fairly big humanoid(-ish) robot. Does that sound familiar? Of course it does, since my good mate Simon Burfield (Burf2000) has built a super cool humanoid robot recently. We also know him of the Wheelchair and Segway. And yes, he is a big inspiration to me.

What I am aiming at is a Omnidirectional Robot with one or two arms and a Wall-e like head. The height of the robot will be approximately the size of a child, let's say around 120cm. Omnidirectional means allowing movement in all directions (more on that in the next chapter).

Since I have no idea where this will end, I have created a WIP topic, in review style. I will add chapters along the way. When I add a new chapter I will post that new chapter and edit the original post. Feel free to comment, hint, tip, suggest, mock and ridicule :wink:

Before we continue I'd like to give my man Burf and the guys at Rotacaster a big thank you!

OMNIDIRECTIONAL WHEELS

Here's the wikipedia description for Omni wheels:

Omni wheels or poly wheels, similar to Mecanum wheels, are wheels with small discs around the circumference which are perpendicular to the turning direction. The effect is that the wheel can be driven with full force, but will also slide laterally with great ease. These wheels are often employed in holonomic drive systems.

A platform employing three omni wheels in a triangular configuration is generally called Kiwi Drive. The Killough platform is similar; so named after Stephen Killough's work with omnidirectional platforms at Oak Ridge National Laboratory. Killough's 1994 design used pairs of wheels mounted in cages at right angles to each other and thereby achieved holonomic movement without using true omni wheels.[1]

They are often used in small autonomous robots in intelligent robots research in the academia. In projects such as VEX Robotics, Robocup and FIRST Robotics, many robots use these wheels to have the ability to move in all directions. Omni wheels are also sometimes employed as powered casters for differential drive robots to make turning faster. However, this design is not commonly used as it leads to fishtailing.

LINKS

Some interesting links:

Omniwheels

Mecanum wheels

Ball transfer unit

Holonomic

Festo

After 15 seconds you can see the Kiwi Drive in action:

Control using gamepad

ROTACASTER

Here's the complete lineup for Rotacaster wheels with LEGO hubs. From left to right:

  • 125mm
  • 48mm
  • 35mm

27496366113_a37e03ba50_c.jpg

As you can imagine the 125mm version are for heavy duty applications. Since the robot will probably by quite heavy, I figured the bigger the better. There's also a 125mm version with 3 wheels instead of 2. However, this will probably suffice for my robot.

The diameter of the 125mm is slightly larger than a 15L liftarm and the width is slightly less than 6L.

28185549644_ac75d881be_c.jpg

CONCEPT

Here's a simple concept sketch.

28111082895_dc88f752c9_c.jpg

And an artist impression of how the robot should look like. The end result will probably look nothing like this one, but it's nice to have an idea.

28033704981_fceffddb8f_c.jpg

PROTOTYPE

I have started building the prototype.

27496365863_377a4f83f6_c.jpg

27496365583_35bdbde5e1_c.jpg

28033705141_d1940f912d_c.jpg

The idea was to buil in a modular fashion, but this early concept failed miserably.

28184278754_f0184813c3_c.jpg

28770358866_dfc489e971_c.jpg

28770358996_26fec2ba3f_c.jpg

VERSION 2

The triangular shape poses quite a few challenges. Not that I hate a challenge, but I am contemplating on making a four wheeled version.

28184376704_165d3d3e57_c.jpg

The idea is to create 4 standalone wheel units, which can be attached to a center hub, possibly with shock absorbers. The red liftarms underneath need to be removed, because they will prevent the wheels to be mounted. This is just a simple LDD setup I drew, since we discussed Bob's problem with turntables. That made me rethink my setup.

28724652451_d998271546_c.jpg

Some turntables and dog bones for the new setup.

28771550196_05bc231fd9_c.jpg

When using the modular setup for the wheels, I could easily switch between different setups, three or four wheels.

My progress is what you see in the pictures. Now let's have fun discussing and mocking.

Alasdair mocking in ...3....2.... :wink:

Share this post


Link to post
Share on other sites

So what I basically need is something in the center of the black part of the turntable that can be linked directly to the hub of the Rotacaster.

Share this post


Link to post
Share on other sites

I like your triangular setup, one question: for what the USB dongle is ?

Share this post


Link to post
Share on other sites

I like your triangular setup, one question: for what the USB dongle is ?

It's for making WiFi connection. EV3 doesn't come with on board WiFi, so you need a dongle. In the early days this was the only supported by the EV3 firmware. If I am not mistaken, the smaller dongle is supported now too.

Share this post


Link to post
Share on other sites

I don't have the turntable , probably will have slack

LDD

turntable.png

Edited by LXF

Share this post


Link to post
Share on other sites

I don't have the turntable , probably will have slack

That's a great solution, thanks!

I do have some turntables :laugh:

28771550196_05bc231fd9_c.jpg

Here you can see the dimensions of the Rotacaster wheel. There's a 10L axle going through it.

28185549644_ac75d881be_c.jpg

When using the modular setup for the wheels, I could easily switch between different setups, three or four wheels.

Share this post


Link to post
Share on other sites

I think I would drive both turntables rather than one (but you could just use a axle).

Been thinking about that. Seems like the best solution, but it requires some tinkering.

Any suggestions are appreciated :thumbup:

Share this post


Link to post
Share on other sites

Yay, EV3!!! I've only had one for less than a month (on loan), but am already in love with it. This project looks great and I am looking forward to see it develop.

Share this post


Link to post
Share on other sites

Did you consider placing an omni wheel on each side of the motor and driving it directly? The axle can pass from the motor through each wheel and be supported on the other side by a frame. These motors have quite a bit of torque so I don't think you would have trouble moving the robot.

Share this post


Link to post
Share on other sites

This seems very interesting, I will follow this topic very closely.

Share this post


Link to post
Share on other sites

Did you consider placing an omni wheel on each side of the motor and driving it directly? The axle can pass from the motor through each wheel and be supported on the other side by a frame. These motors have quite a bit of torque so I don't think you would have trouble moving the robot.

I have considered it, but in the end I think gearing down will be the best solution. The finished robot will weigh a ton, so I think gearing down is necessary. The BWE already weighs around 5kg so this model will easily weigh between 10-20kg. But you might be right. That's why I want a modular setup, so I can try different setups.

Share this post


Link to post
Share on other sites

Modular sounds like a very solid direction. You may also want to ask Burf about this, his stuff is heavy and moves people on omni wheels.

Share this post


Link to post
Share on other sites

Have you considered a hexagon for the frame? I've build several of these over the years using the NXT brick and motors, and my most successful design was using a hexagon which forms a more stable base than a triangle. I'll see if I can find some photos. I think I even have an LXF file for the hexagon.

Share this post


Link to post
Share on other sites

Have you considered a hexagon for the frame? I've build several of these over the years using the NXT brick and motors, and my most successful design was using a hexagon which forms a more stable base than a triangle. I'll see if I can find some photos. I think I even have an LXF file for the hexagon.

No I haven't but now you mention it; it seems like a better solution than a triangular shape. Also for attaching the sensors. An LXF is always welcome :thumbup:

Currently working on the Wheel attachments. I will maken four of 'em, but I can still decide on which kind of base to use.

Share this post


Link to post
Share on other sites

Modular sounds like a very solid direction. You may also want to ask Burf about this, his stuff is heavy and moves people on omni wheels.

I have indeed spoken to him about it. He does gear down his creations.

Share this post


Link to post
Share on other sites

Thanks mate, for the models and the wishes!

So I will need to take apart my X-Wing :wink:

Both solutions look good, especially the one on the right. Currently I am using an altered version of LXF's solution in my LDD file. Next step will be to build one of the wheel modules in real life.

Share this post


Link to post
Share on other sites

If I understand the wheels correctly, they have to be driven to roll forward and backward, but can roll sideways freely. Right?

If correct, then a setup with too many wheels won't work unless you program some mathematics into the unit to link the speeds to which the motors are set. Otherwise some wheels will slip forward and backward.

That's probably why the original has three wheels. If any one wheel is driven and the other two are kept idle, the model can rotate in such a way that the other two wheels are rolling sideways only. (by addition, this also works if any two wheels are driven, or if all wheels are driven) If you add more wheels, then if you drive only one wheel, some of the other wheels will have to roll forward/backwards as well. As they are linked to a motor, they will slip unless the speed of the motor matches the required speed.

The latter involves some pretty complex mathematics, I expect.

So I'd go with as few wheel units as you can, i.e. three.

Share this post


Link to post
Share on other sites

Happy Birthday Jim!

That rotacaster is huge, when you said the size I didn't expected it to be so big :O

Share this post


Link to post
Share on other sites

Happy Birthday Jim!

That rotacaster is huge, when you said the size I didn't expected it to be so big :O

Thanks! The bigger ones are indeed heavy duty.

If I understand the wheels correctly, they have to be driven to roll forward and backward, but can roll sideways freely. Right?

If correct, then a setup with too many wheels won't work unless you program some mathematics into the unit to link the speeds to which the motors are set. Otherwise some wheels will slip forward and backward.

That's probably why the original has three wheels. If any one wheel is driven and the other two are kept idle, the model can rotate in such a way that the other two wheels are rolling sideways only. (by addition, this also works if any two wheels are driven, or if all wheels are driven) If you add more wheels, then if you drive only one wheel, some of the other wheels will have to roll forward/backwards as well. As they are linked to a motor, they will slip unless the speed of the motor matches the required speed.

The latter involves some pretty complex mathematics, I expect.

So I'd go with as few wheel units as you can, i.e. three.

This topic might be interesting as well:

http://www.eurobricks.com/forum/index.php?showtopic=92575

Driving with three wheels requires some Sin and Cos mathematics. I have done this before and shouldn't prove to be a real issue. It get's interesting when you want to drive forward and sideways at the same time, using a PID controller setup.

http://people.idsia.ch/~foerster/2006/1/omnidrive_kiart_preprint.pdf

When using 4 wheels, you can use 2 of them for normal driving mode. The other two will be casters. Implementing a PID controller for this setup will be a challenge too.

Share this post


Link to post
Share on other sites

Nice idea! I have a concept for a holonomic EV3 robot without using omni-wheels. Essentially, it will use beefed-up 4-wheel steering with 3 different modes:

  • Mode 1 steers the front wheels in the opposite directions to the rear wheels (like normal cars with 4-wheel steering), allowing the car to drive like a regular car.
  • Mode 2 make all four wheels steer in the same direction with the same angle, allowing the car to move sideways without turning.
  • Mode 3 doesn't really steer the wheels but gives both axles extreme positive toe (wheels pointing in). This makes the car turn around on the spot.

Visualised:

Mode 1 Mode 2 Mode 3

\ __ \ / \

| \ -->--

\ <-------> | |

| --<--

/ / \ /

[black text shows the wheels, red text shows the overall movement of the car - sorry about the weird ASCII drawings]

My idea is to have a gearbox (possibly very complex) which controls the steering. One motor steers, one motor shifts the gearbox. The gearbox would have 4 outputs - one for each wheel. That would leave two motors for driving. Controlling each

The other main hurdle I can see would be getting a steering lock of at least 90 degrees. Perhaps I would use a pivot point above the wheel, a little like the front wheel of a bicycle. Driving the steered wheels could be done with a bevel-gear setup,

Sorry for the rather incomplete concept - I'm currently on vacation and away from my LEGO (for the first time in a year :P). And when I come back, I'll be greeted with half a concept transmission (for a different idea) that I'm eager to finish first. So this idea certainly won't be built until late September, possibly later.

Share this post


Link to post
Share on other sites

Sounds interesting too!! Looking forward to your implementation, especially Mode 3 :sweet::thumbup:

Do you guys think I should use shock absorbers when attaching the wheel modules to the center base module? In order words; would it be cool or useful for my robot to have suspension?

The base of the BWE looks like a nice example of a base for a 4 wheel setup :sweet:

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.