Go to Post Haters gonna hate; kill 'em with kindness. - Taylor [more]
Home
Go Back   Chief Delphi > Technical > Technical Discussion
Team 51   CD-Events   CD-Media   CD-Swap   CD-Spy   FRC-Spy   Unsung FIRST Heroes   WFA
portal register members calendar search Today's Posts Mark Forums Read FAQ rules
VEXpro
The Chief Delphi Forums are sponsored by Innovation First International, Inc.
ADVERTISEMENT

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 01-17-2009, 03:46 PM
adra adra is offline
Registered User
no team
 
Join Date: Jan 2009
Location: Turkey
Posts: 6
adra is an unknown quantity at this point
Forklift project with mecanum wheels HELP

Hi,
First of all i should thank you all for this great site which gives great feedback not only team members but also people like us interested with all these stuff.

Anyway, for our final project at university we will built a prototype forklift which is driven with mecanum drives. We have almost completed the lift mechanism and now we are focusing drive mechanism of our forklift. I should mention that we have 1 week left
Since we have no experience about this kind of drive systems, and we have some big problems that confuses us.

First of all, 4 wheels must be on the same plane. I mean even with a slight change of height of any wheel, driving will fail since all 4 mecanum wheels have to be operating related with each other. We can of course use a suspension system but that will cost time. So is it possible to mount the wheels directly to the chassis with same height?

Yet, we are all mechanical engineering students and we are barely related with PIC. So we avoid complex codes as much as we could and built a PIC code for a simple button configuration. For the button configuration, we have 6 buttons which are for forward,backward,rightside,leftside, CW-rotation and CCW-rotation. No other motion (turning while forward motion for example) is necessary then again we avoid them. I am giving the code below. Is it enough to drive? (please don't laugh ) We dont want to control the speed, so PWM is not necessary.


I am desperately waiting for your helps.
Thanks in advance.



Quote:
SAMPLE PIC CODE

#include <16f877a.h>
#use delay(clock=20000000)
int main()
{
int i=0;
set_tris_a(0xff);
set_tris_b(0x00);
set_tris_e(0x00);
output_b(0x00);
output_e(0x00);
while(1)
{
i=input_a();
switch(i)
{
case 1:
{
output_b(0x55);
output_e(0x01);
break;
}
case 2:
{
output_b(0xaa);
output_e(0x01);
break;
}
case 4:
{
output_b(0x96);
output_e(0x01);
break;
}
case 8:
{
output_b(0x69);
output_e(0x01);
break;
}
case 16:
{
output_b(0x66);
output_e(0x01);
break;
}
case 32:
{
output_b(0x99);
output_e(0x01);
break;
}
default:
{
output_b(0x00);
output_e(0x01);
}
}
}
}

Last edited by adra : 01-17-2009 at 08:38 PM.
  #2   Spotlight this post!  
Unread 01-17-2009, 03:51 PM
EricH's Avatar
EricH EricH is offline
...has read the 2012 Manual
FRC #0330 (Beach'Bots)
Team Role: Engineer
 
Join Date: Jan 2005
Rookie Year: 2003
Location: SoCal
Posts: 14,233
EricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond repute
Send a message via Skype™ to EricH
Re: Forklift project with mecanum wheels HELP

Quote:
Originally Posted by adra View Post
Anyway, for our final project at university we will built a prototype forklift which is driven with mecanum drives. We have almost completed the lift mechanism and now we are focusing drive mechanism of our forklift. I should mention that we have 1 week left
Since we have no experience about this kind of drive systems, and we have some big problems that confuses us.

First of all, 4 wheels must be on the same plane. I mean even with a slight change of height of any wheel, driving will fail since all 4 mecanum wheels have to be operating related with each other. We can of course use a suspension system but that will cost time. So is it possible to mount the wheels directly to the chassis with same height?
If this were for a FIRST Robotics Competition robot, I would say, just make sure the frame can flex. The problem is, you don't want flex on a forklift frame. So you pretty much have no choice but some form of suspension.
__________________
Paths a rules question takes:

Official: Post to Q&A-->GDC reviews-->Official answer posted on Q&A.

Unofficial: Post to CD-->CD views and comments, sometimes using The Manual and interpreting it-->Somebody goes the Official route -->Answer gets posted on CD eventually, as a quote from Q&A.

Which one takes longer for an official ruling? Therefore, which one makes more sense to use?
  #3   Spotlight this post!  
Unread 01-17-2009, 03:55 PM
Leav's Avatar
Leav Leav is offline
Spud Gun Division
AKA: Leav Oz-Ari
FRC #3316 (D-Bug) & FRC #2630 (ThunderBolts)
Team Role: Mentor
 
Join Date: Dec 2004
Rookie Year: 2005
Location: Technion, Haifa, Israel
Posts: 699
Leav has a reputation beyond reputeLeav has a reputation beyond reputeLeav has a reputation beyond reputeLeav has a reputation beyond reputeLeav has a reputation beyond reputeLeav has a reputation beyond reputeLeav has a reputation beyond reputeLeav has a reputation beyond reputeLeav has a reputation beyond reputeLeav has a reputation beyond reputeLeav has a reputation beyond repute
Send a message via ICQ to Leav Send a message via AIM to Leav Send a message via MSN to Leav Send a message via Skype™ to Leav
Re: Forklift project with mecanum wheels HELP

Perhaps you could implement a control system which compensates for traction loss caused by un-evenly balanced wheels.

It would not be easy but it would be perhaps easier to implement a basic control algorithm then building a chassis, bases on your personal capabilities.


Just reread your post.

You should be able to mount all 4 wheels no problem to the chassis at the same height.
Regarding the drive: if you are going for a simple drive like you mentioned perhaps you should in fact implement a PWM, and experiment with different values for the motors to achieve a balanced motion.

for example if more weight is on the front wheels you would only give them perhaps half the power when going sideways:

front_left=50%
front_right=50%
back_left=100%
back_right=100%

to get a straight line.

this will, of course, only work on flat surfaces. any bumps or irregularities and you are back to square one with the need for a suspension, like Eric mentione.

Good luck!

-Leav
(Israel)
__________________
"We choose to build robots this season and do the other things; Not because they are easy, but because they are hard."
-Paraphrasing JFK

[2005,FRC1578]=[Captain,Programmer];
[2006,FRC1578]=[Captain,Programmer,Coach];
[2007,FIRST]=[FLL MC @ Israeli Regional];
[2008,2009,2010,FIRST]=[Israeli Kickoff MC];
[2008,2010,FRC2630]=[Mentor];

Last edited by Leav : 01-17-2009 at 04:03 PM.
  #4   Spotlight this post!  
Unread 01-17-2009, 08:02 PM
adra adra is offline
Registered User
no team
 
Join Date: Jan 2009
Location: Turkey
Posts: 6
adra is an unknown quantity at this point
Re: Forklift project with mecanum wheels HELP

Our first aim is not to blow up at project demo, i.e. next week
So, there wont be any bump surfaces... Then we can agree that there is no need of suspensions, right?

I was about to ask that problem which you explained. When load is lifted center of mass will shift to front side. So torque values at front wheels will be greater and of course this will cause a reduction in speed at front wheels while back wheels are still rotating with same speed. When this happens, there is no problem in forward or backward motion. However side motion -just like you said- will be irrelevant. About that, we couldnt find a solution. I have watched some videos with huge frames running with mecanum wheels. And clearly, the weight was not distrubuted to each wheel equally! How come they dont fail?

In short, when torques of wheels are not same this will cause different speeds. However same speeds of all wheels are needed in order to get a straight line. How can we manage that?
  #5   Spotlight this post!  
Unread 01-17-2009, 08:23 PM
Alan Anderson's Avatar
Alan Anderson Alan Anderson is offline
Software Architect
FRC #0045 (TechnoKats)
Team Role: Mentor
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Kokomo, Indiana
Posts: 7,051
Alan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond repute
Send a message via AIM to Alan Anderson
Re: Forklift project with mecanum wheels HELP

You want to control your wheel speed. That means you'll need a way to measure the wheel speed and adjust motor power to make the wheels move at the rate you want.

For a quick demo, you might be able to get away with a "bang-bang" controller that simply turns on wheel power when the speed is too low, and turns it off when the rate is too high. For best results, you'll want some form of PID control (look it up, there are a lot of good explanations out there).
  #6   Spotlight this post!  
Unread 01-17-2009, 08:36 PM
adra adra is offline
Registered User
no team
 
Join Date: Jan 2009
Location: Turkey
Posts: 6
adra is an unknown quantity at this point
Re: Forklift project with mecanum wheels HELP

Quote:
For a quick demo, you might be able to get away with a "bang-bang" controller that simply turns on wheel power when the speed is too low, and turns it off when the rate is too high. For best results, you'll want some form of PID control (look it up, there are a lot of good explanations out there).
Do all teams here (going on mecanum wheels) use a close loop control system with a velocity feedback from wheels?
Or your suggestion is just for this case?

P.S. I dont want to control the speed unless strictly necessary??
  #7   Spotlight this post!  
Unread 01-17-2009, 09:29 PM
Alan Anderson's Avatar
Alan Anderson Alan Anderson is offline
Software Architect
FRC #0045 (TechnoKats)
Team Role: Mentor
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Kokomo, Indiana
Posts: 7,051
Alan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond repute
Send a message via AIM to Alan Anderson
Re: Forklift project with mecanum wheels HELP

Quote:
Originally Posted by adra View Post
...In short, when torques of wheels are not same this will cause different speeds. However same speeds of all wheels are needed in order to get a straight line. How can we manage that?
Quote:
Originally Posted by adra View Post
...I dont want to control the speed unless strictly necessary??
If you want to drive straight when your weight is not distributed equally over all your wheels, controlling speed is strictly necessary.

Not all teams do feedback control of their wheel speed with software. A good driver with analog joysticks directly mapped to speed controllers can be an effective feedback element. But with your wish to use discrete pushbuttons, you'll need some good programming in order to maintain straight line driving.
  #8   Spotlight this post!  
Unread 01-18-2009, 03:39 PM
adra adra is offline
Registered User
no team
 
Join Date: Jan 2009
Location: Turkey
Posts: 6
adra is an unknown quantity at this point
Re: Forklift project with mecanum wheels HELP

Quote:
for example if more weight is on the front wheels you would only give them perhaps half the power when going sideways:

front_left=50%
front_right=50%
back_left=100%
back_right=100%

to get a straight line.
Shouldnt it be the opposite? If front side weights more, that results reduction of speed in front side while power is the same. Then in order to equall the speeds we must decrease the speed in back wheels as well.
Or did i miss something?
  #9   Spotlight this post!  
Unread 01-18-2009, 03:41 PM
Alex.Norton's Avatar
Alex.Norton Alex.Norton is offline
Fidgetting
no team
 
Join Date: Apr 2005
Rookie Year: 2003
Location: Ft. Collins, Colorado
Posts: 190
Alex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud of
Send a message via AIM to Alex.Norton Send a message via MSN to Alex.Norton
Re: Forklift project with mecanum wheels HELP

When my team has experimented with mecanum drive we found that placing the wheels in the same plane didn't necessarily help with angular drift. The problem is that even minuscule changes in floor height caused large changes in traction and the base would inevitably change angle. In addition we found that wheel slip was a big problem and directly measuring wheel speed didn't correct for drift either, even in a non competition environment such as our programing lab.

The best solution that we found was to measure the change in the angle of the base using a yaw rate sensor and implementing a PID control loop to keep the base facing the intended direction.

Of course we also found that a suspension to keep all four wheels in contact with the ground was helpfull. I could see were this would be a problem for a forklift and there was some debate on the team regarding if the suspension was necessary. I can understand where writing a complex control loop for the wheel could provide significant difficulty in this case but our team found that the best solution came from closed loop control of the four motors.
__________________
"History doesn't repeat itself - at best it sometimes rhymes" --Mark Twain
  #10   Spotlight this post!  
Unread 01-18-2009, 04:41 PM
adra adra is offline
Registered User
no team
 
Join Date: Jan 2009
Location: Turkey
Posts: 6
adra is an unknown quantity at this point
Re: Forklift project with mecanum wheels HELP

Quote:
Originally Posted by Alex.Norton View Post
When my team has experimented with mecanum drive we found that placing the wheels in the same plane didn't necessarily help with angular drift. The problem is that even minuscule changes in floor height caused large changes in traction and the base would inevitably change angle. In addition we found that wheel slip was a big problem and directly measuring wheel speed didn't correct for drift either, even in a non competition environment such as our programing lab.

The best solution that we found was to measure the change in the angle of the base using a yaw rate sensor and implementing a PID control loop to keep the base facing the intended direction.

Of course we also found that a suspension to keep all four wheels in contact with the ground was helpfull. I could see were this would be a problem for a forklift and there was some debate on the team regarding if the suspension was necessary. I can understand where writing a complex control loop for the wheel could provide significant difficulty in this case but our team found that the best solution came from closed loop control of the four motors.
Thank you for your feedback.
But I couldnt follow exactly.

Did you use a PID control because of changing torque values resulting various speeds on wheels?

Or you just meant; when there exists a tiny little insignificant height change on the road (even on a flat surface), linear motion of system becomes impossible while 4 motors rotating with the same speed? And is this because wheels dont touch the surface with the same amount?

By the way did you manage to drive your system without a suspension system which is replaced by a PID control?
  #11   Spotlight this post!  
Unread 01-19-2009, 01:48 AM
Alex.Norton's Avatar
Alex.Norton Alex.Norton is offline
Fidgetting
no team
 
Join Date: Apr 2005
Rookie Year: 2003
Location: Ft. Collins, Colorado
Posts: 190
Alex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud ofAlex.Norton has much to be proud of
Send a message via AIM to Alex.Norton Send a message via MSN to Alex.Norton
Re: Forklift project with mecanum wheels HELP

The code implemented by my team had an x input from the joystick, a y input from the joystick, and a theta input. If the theta component was nonzero that meant that the robot's base needed to rotate. Theta was calculated by combining the input from the joystick with input from a yaw rate sensor that was on the base of the robot. This sensor measures the speed at which the base of the robot was rotating, this rotational velocity was then integrated to get the angle of the robot's base.

This system would correct the angle of the base if it drifted away from the intended value. This had the effect that if the base was pushed by an external force it would move back to the original orientation. It also meant that if the angle of the base changed while driving in a straight line it would correct back to the original orientation and the robot would move in a straight line.

Quote:
Originally Posted by adra View Post
Or you just meant; when there exists a tiny little insignificant height change on the road (even on a flat surface), linear motion of system becomes impossible while 4 motors rotating with the same speed? And is this because wheels dont touch the surface with the same amount?
While this was not the entire thrust of my other post this is very true. We never found a surface flat enough to keep the robot moving in a straight line without closed loop control of the wheel.

In regards to your question of driving without a suspension. No we never used a drive that had PID control of the wheels without a suspension. However, we once had one motor partially fail and while the robot didn't move in a straight line very well, the control of the orientation of the base was still accurate. When pushed the base would still return to the original orientation, in fact it hid it so well that we had to test each motor individually before we could figure out which one wasn't responding correctly.

I hope that helps some.
__________________
"History doesn't repeat itself - at best it sometimes rhymes" --Mark Twain
  #12   Spotlight this post!  
Unread 01-20-2009, 08:18 PM
adra adra is offline
Registered User
no team
 
Join Date: Jan 2009
Location: Turkey
Posts: 6
adra is an unknown quantity at this point
Re: Forklift project with mecanum wheels HELP

After some discussions, we have decided to use a very simple suspension mechanism (by using 2 springs for each wheel) and beside get feedback of velocities of each wheels with a shaft reader (?) .
What we intend to do is that using suspensions will allow the wheels to touch the surface always. And also we want to arrange the velocities of wheels according to each other. Since weight distribution of frame will not unique, i am assuming that torque values will change and wheel velocities will not remain equal every time which is not supposed to be in order to go on a straight line for both forward and side motion.
Again i am assuming that motor rotation of a wheel which has higher torque on it, due to the weight, will lower.

1) At this point i have to be sure, is that assumption true?

Also we had some research on yaw rate sensor and considering limited time and cost, decided to use shaft reader sensors on 4 wheels; so that we will equalize the all 4 motor rotation to each other with the value of the lowest feedback. Overall velocity of the forklift will reduce but that will not be a problem.

2) Is it appropriate to use such a control and will it be efficient?

Finally, i also think that (although i am not sure myself and everyone says the opposite) even with a suspension system and on a flat surface, all wheels wont grab the ground at the same amount. I mean they will touch it allright but not with a same force. Although it affects in insignificant amount (which we are ready to sacrifise by the way) i need to ask again,

3) Will that cause any dissarrangement on wheel speeds even while all 4 motors are rotating with the same speed.



Since we are about to over these disscusions and start to built the base, we dont want to dissappoint later. And comments of people having history with mecanums, about these issues are having great importance to us.


THANK YOU..
  #13   Spotlight this post!  
Unread 01-20-2009, 11:44 PM
Alan Anderson's Avatar
Alan Anderson Alan Anderson is offline
Software Architect
FRC #0045 (TechnoKats)
Team Role: Mentor
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Kokomo, Indiana
Posts: 7,051
Alan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond repute
Send a message via AIM to Alan Anderson
Re: Forklift project with mecanum wheels HELP

1: I think you are describing the situation backwards. A higher torque means greater power applied from the motor. More weight on the wheel will generally give a lower speed because of more rolling resistance, so the assumption is true even though the wording sounds wrong.

2: If your goal is merely to drive straight, the scheme of reducing wheel speeds to match the lowest one should work. You will probably want to make sure you know not to use the artificially lowered speeds as a basis for lowering other wheel speeds further.

3: As long as your wheels do not slip on the floor, you don't have to worry about the difference between wheel rotation speed and travel speed. Given a good tread surface and enough weight, slip should not be an issue.
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Bumpy Ride with AM's 8" Mecanum wheels? Leav Technical Discussion 12 02-14-2008 12:16 AM
Help with mecanum wheels CyDrive Programming 7 02-10-2008 03:16 PM
need help about Mecanum Wheels mahmosh Technical Discussion 4 01-18-2008 10:50 AM
Assistance with Mecanum Wheels CollmandosGrl General Forum 8 01-14-2008 04:42 PM
Teams With Mecanum Wheels Foss@Team176 Technical Discussion 15 10-06-2005 08:38 AM


All times are GMT -5. The time now is 11:45 AM.

The Chief Delphi Forums are sponsored by Innovation First, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Copyright © Delphi and Pontiac Central High School