Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Control System (http://www.chiefdelphi.com/forums/forumdisplay.php?f=177)
-   -   Mini-Me robot arm controller (http://www.chiefdelphi.com/forums/showthread.php?t=39969)

Andrew Schuetze 10-10-2005 22:10

Mini-Me robot arm controller
 
I am still working ideas for the pre-season workshops we hold for our team. I appretiate the replies to date about my previous posting on human arm based controllers.

I have seen more examples of control systems with a mini-me controller for their robot arm as compared to the two or three human interfaces. I was quite impressed with an example where the controller mimiced completely the look of the robot. Team 1100
http://www.chiefdelphi.com/pics/bin/111068167879.jpg controller

See this thread for RadioShack awards.
http://www.chiefdelphi.com/forums/sh...=human+control

Question:
I assume that pots are on both the robot and the controller. If you had a mini-me controller, did you use a PID control to move the arm or did you use a set rate of rotation / motor speed?

Query:
I would like to see pictures and talk with more teams who used such a control system. email or p.m.

Thanks,


APS :cool:

ConKbot of Doom 16-10-2005 02:00

Re: Mini-Me robot arm controller
 
You would almost undoubedly have to use some form of a PID routine, a set rate of rotation would make for nasty oscilations when it got to the point.

billbo911 16-10-2005 11:17

Re: Mini-Me robot arm controller
 
Quote:

Originally Posted by ConKbot of Doom
You would almost undoubedly have to use some form of a PID routine, a set rate of rotation would make for nasty oscilations when it got to the point.

Surprisingly, a PID control system is not necessarily required. I know others can elaborate on what I am saying, but to keep it simple: PID control includes a form of speed, or distanced traveled, feedback to help regulate speed and positioning. This is a valuable additions to positioning control, but is not required. Simply comparing the controller's position to the robot's arm, or which ever axis your controlling, and using the difference to drive a motor will work. Yes, there are some obvious drawbacks, but as for speed limiting, that can simply be done in the position comparing function.
As ConKbot said, just using a set rate will lead to oscillations, especially when just moving a small distance. But, if you compared the controller position to the controlled axis position, you would see that as you got closer to the desired position, the axis would slow down and make the possibility of oscillating much less.
There are many factors that play into the success you will have with position feedback control like: mass being moved, friction in the system, moment of inertia, system speed etc. If you find that your system oscillates, then you will want to replace your simple comparative function with a PID function which will allow tuning of your axis control. Otherwise, it may not be necessary.

anna~marie 17-10-2005 07:55

Re: Mini-Me robot arm controller
 
The HOT team has used a design like that in the past, and last year.

Andrew Schuetze 18-10-2005 19:41

Re: Mini-Me robot arm controller
 
Quote:

Originally Posted by billbo911
Simply comparing the controller's position to the robot's arm, or which ever axis your controlling, and using the difference to drive a motor will work. Yes, there are some obvious drawbacks, but as for speed limiting, that can simply be done in the position comparing function.
snip
There are many factors that play into the success you will have with position feedback control like: mass being moved, friction in the system, moment of inertia, system speed etc. If you find that your system oscillates, then you will want to replace your simple comparative function with a PID function which will allow tuning of your axis control. Otherwise, it may not be necessary.

If I understand this method, one sets the PWM motor control based on a percentage of the maximum difference. I.e. If the maximum range of motion on an axis is 180 degrees, when the difference between the mimic control and the robot arm is 180 one sets the motor speed to full, 100%, speed. As it moves into position the motor set point is reduced. When the difference is only 90 degrees, the motor speed would now be only 50% of max speed. If Frictional losses and moments of inertia are favorable, this method may not create oscillations around the setpoint.

APS

Chris Hibner 19-10-2005 10:38

Re: Mini-Me robot arm controller
 
Quote:

Originally Posted by Andrew Schuetze
If I understand this method, one sets the PWM motor control based on a percentage of the maximum difference. I.e. If the maximum range of motion on an axis is 180 degrees, when the difference between the mimic control and the robot arm is 180 one sets the motor speed to full, 100%, speed. As it moves into position the motor set point is reduced. When the difference is only 90 degrees, the motor speed would now be only 50% of max speed. If Frictional losses and moments of inertia are favorable, this method may not create oscillations around the setpoint.

APS

What you described here is a 'P' controller (i.e. a PID controller without the I and D).

Simply put, a P (proportional) controller does this: 1) determine the difference between the robot arm and the minime arm; 2) set the PWM proportionally to this difference.

Matt Leese 19-10-2005 10:51

Re: Mini-Me robot arm controller
 
We tried to implement such a controller last year. The mechanical parts of the mini-arm were great. Unfortunately, we didn't have enough time to get the software working in a nice enough fashion. It was implemented as a PID controller controlling two separate arm joints.

The upper arm had a tendency to wave in the air a bit. This was some form of oscillation that we had trouble removing. The real problem was that the arm didn't respond fast enough. The operator would move the arm but it would take a bit to respond. When we changed the PID controller to respond faster, it would respond too fast and oscillate wildly.

In many ways, I think our problem was inexperience in developing such a controller. Just be advised in may not be as easy as you'd think.

Matt

Bharat Nain 19-10-2005 11:07

Re: Mini-Me robot arm controller
 
In 2004, Team 25 built a similar mini-arm. You can take a look at the discussion here. We tried different programming methods which calculated the percentage error and made decisions based on that. Surprisingly we found a really simple solution to that. We we gave the potentiometer 2 ranges. If the arm was within a 15 degrees range we told it to move the arm half speed in whatever direction. Otherwise it moved full speed and stopped at 0. Feel free to contact me if you need more help with the software end of this.


All times are GMT -5. The time now is 20:22.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi