Servo Motor Testing

advertisement
David Gonsalez
Course 400D
Report: Servo motor testing and evaluation
MG995 Tower Pro
Servo motor testing.
Purpose and general plan:
The principal purposes of this exercise are to test the following:
1.
2.
3.
4.
5.
6.
No load current
Stall current
Stall torque
Current due to different load.
Change in current due to change in torque
Change in rpm due to change to input frequency.
Equipment:
1.
2.
3.
4.
5.
7.
One PC running Matlab (any version)
One power supply with a supply voltage of 6v at 1 amps.
One multimeter with a current rating of 10Amp
One Arduino uno
One C-clamp
One Fish scale
Attach servo motor to the table with C-Clamp as shown
Hooking up The Arduino to the servo motor:
1. Connect the signal wire of the servo(usually the orange wire) to pin 9 of the arduino
2. Connect the power and ground (usually the red and brown wire) to the power supply
3. Connect the ground of the power supply to the ground pin of the arduino( the power supply and the arduino need
a common ground to function properly.
Now run code provided below
// Sweep
// by BARRAGAN <http://barraganstudio.com>
// This example code is in the public domain.
#include <Servo.h>
Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created
int pos = 0;
// variable to store the servo position
void setup()
{
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}
void loop()
{
for(pos = 0; pos < 180; pos += 1) // goes from 0 degrees to 180 degrees
{
// in steps of 1 degree
myservo.write(pos);
// tell servo to go to position in variable 'pos'
delay(15);
// waits 15ms for the servo to reach the position
}
for(pos = 180; pos>=1; pos-=1) // goes from 180 degrees to 0 degrees
{
myservo.write(pos);
// tell servo to go to position in variable 'pos'
delay(15);
// waits 15ms for the servo to reach the position
}
}
Testing current and Torque:
1. Stall torque
Stall torque__4.5lb*cm_____ Stall Current____.5 A____
2. Divide the total weight that caused stall by 10 this new fraction of weight will be used to test the change in current
due to the change in load.
Actual weight Current
Torque
used
Mean(A)
.83 lb
0.125
.83 lb*cm
1.23lb
0.32
1.23lb*cm
1.78lb
0.4
1.78lb*cm
SERVO MG 995
Torque (lb*cm)
Peaks are holding current, Dips are lower
ends of oscillation
Current (Amps)
%%rotating servo from 0 degrees to 120 degrees ,,, zero is straight down
%% fixed 5 volts
NoLoadCurrent= [ .07 .12 .13 .11];
Current1 = [.22 .14 .23 .08 .13 .25]; %% .83 lbs
Current2 = [.19 .23 .32 .22 .33 .08 .07]; %% 1.23 lbs
Current3 = [.4 .24 .09 .24 .34]; %%1.78 lbs
%% @ 6 volts
Current4 = [.4 .22 .09]; %% 1.78 lbs
holdcurrent = [.5]; %% 4.5 lbs can only life 4 lbs
%%% servo seems to lift 1.78 lbs with mild issue on the return motion
Transfer Function Estimate:
(0.9333 +/- 0.3293)
------------------------s + (0.09074 +/- 0.05948)
Torque (lb*in)
HOLDING CURRENT
Oscillatory current, low
Current (Amps)
%%% stepper motor test
%%@ 12 volts
NoLoad = [.354 ] ;
%% .41 lbs
current1= [ .403 .393 ] ;%% first number is hold current second number is ave. continuous
%% .7 lbs
current2 = [ .401 .393]; % ''
%%.9 lbs
current3 = [.404 .394];
%% stall torque 1.12 lbs * inch
StallCurrent= [ .406 .399];
%% fails > 40 rpm
%% @ 9 volts
StallCurrent2= [ .218 ] ; %%.5 lbs
current11 = [ .3 .217]; %% .26 lbs
Transfer Function Estimate
(-0.03976 )
----------------------------------------------s^2 + (3.486 ) s + (0.04942 )
Conclusion: Stepper motor, SM-42BYGO11-25
MAX hold torque, 1.12 lb*in. MAX RPM < 40 rpm.
Current very stable with different loads.
Download