HW – 3: 30 Points (No Formal Report is Necessary)

advertisement
EE 5351
UMD
Spring, 2016
HW – 3: 30 Points (No Formal Report is Necessary)
1. Use the data for the robotic platform described in HW2 – problem 3: A differential drive robot
shown below has the following characteristics: L = 8 cm, Theta = 0 degrees, phi-1 = 3 rad/sec,
phi-2 = 6.5 rad/sec, and wheel radius is 4.5 cm for each drive wheel.
a. Starting with the code written for HW2-3, add a calculation for edot in the while loop,
such that edot, the velocity vector in the robot frame, can be updated iteratively.
b. Run a 10 second simulation with the following wheel velocities: 0 -3 sec: ph1=3,
ph2=6.5; 3-6 sec: ph1=5, ph2 =0; 6-10 sec: ph1=ph2=4 rad/sec.
c. X-Y plot the position, P, of the robot in the global frame for the 10 second run.
(For Grad Credit): Calculate and X-Y plot the acceleration of the robot in the global frame.
2. A Permanent Magnet DC Motor (PMDC) has the following parameters:
Motor
Name
type
PM
MY6812 DC
Voltage
(rated)
Amps
Power
(watts)
RPM
(Full
Load)
24
6.5
100
2800
Torque Kt (N(oz-in) m/A)
Inertia (Nm-s2)
50
0.0000141 0.35
0.054
Ra
ohm
La
(mH)
Wgt
(lbs)
0.6
2.9
a. Use the sample code (scilab) at the end of this assignment, updated with the
parameters above, to model the open loop behavior of the motor. (Note that the code
also includes a PID model. Comment out those lines of ciode) Make a 4 second plot of
the angular velocity of the shaft for an applied DC voltage of 20 volts.
b. Un-comment the lines of code that describe the PID. Turn the DC motor into a servomotor by adjusting the PID gain values to provide a lightly underdamped response to
step change in reference of 2 radians. Plot the result.
3. A 4-wheeled, 4 wheel drive, robotic platform weighs 10 kg, including its battery. It has 10 cm
diameter wheels, must achieve a top speed of 6 m/sec and accelerate from zero to top speed in
5 seconds while on a 10% grade. Make an assumption about rolling resistance and perform the
following:
a. Calculate the total motive force required to achieve this specification. (See “Drive
Motors” on the course webpage)
b. Calculate the Torque in N-m for each motor.
c. Calculate the Power in watts for each drive motor at top speed.
4.
S.Norr
A robotic platform weighs 15 kg without motors or battery. It utilizes differential drive, with
two drive wheels and a trailing castor. The design goals are that the robot achieves a top speed
of 3 m/s, and can accelerate from zero to top speed in 4 seconds. It must also climb an 8%
EE 5351
UMD
Spring, 2016
grade. A choice of wheel diameter is available: 5 cm or 8 cm. System voltage is desired to be 24
or 48 volts, and minimum usage time is 4 hours. Crr = 0.015.
a. Perform the total motive force calculations to determine a proper size (power, torque,
RPM) for the two drive motors. Shop around the ‘net for actual suitable 24 volt or 48
volt DC permanent magnet motors and gear-heads with appropriate ratios.
b. Take the full-load amp data for your motors and identify batteries for the platform and a
3 hour run-time.
c. Sum the weight of the motors and batteries and add them to the mass of the platform.
d. Repeat part a) to see if new motors would be required. If so, repeat the process until
you reach equilibrium.
e. Compute the cost of motors and battery.
5. Build a micro-stain gauge out of paper and pencil lead and design a transducer/amplifier that
will match its output range to the ADC port on your arduino. The amplifier might look like the
circuit below:
Ask your instructor for the LM 258 dual op amp and 2 alligator clips for your paper sensor. After
you build your sensor, connect it to an ADC port on arduino. and verify its proper operation.
You can use Open>0.3 Analog>AnalogInOutSerial.ino as starting code for the arduino. Enclose
a photo of the strain gauge in 100% deformation and arduino displaying 5 volts on a serial
monitor.
Sample Code: PMDC Motor with PID feedback controller
//PID position control of permanent magnet DC motor
//Constants
Ra=1.2;La=1.4e-3;Ka=.055;Kt=Ka;J=.0015;B=.001*J;Ref=0;Kp=20;Ki=1;Kd=1
//Initial Conditions
S.Norr
EE 5351
UMD
Spring, 2016
Vdc(1)=0;Theta(1)=0;Omega(1)=0;Ia(1)=0;P(1)=0;I(1)=0;D(1)=0;E(1)=0
//Time Step (Seconds)
dt=.001
//Initialize Counter and time
i=1;t(1)=0
//While loop to simulate motor and PID difference equation approximation
while i<1500,
// Motor model:
Theta(i+1)=Theta(i)+dt*Omega(i),
Omega(i+1)=Omega(i)+dt*(-B*Omega(i)+Kt*Ia(i))/J,
Ia(i+1)=Ia(i)+dt*(-Ka*Omega(i)-Ra*Ia(i)+Vdc(i))/La,
// PID controller model:
E(i+1)=Ref-Theta(i+1),
P(i+1)=Kp*E(i+1),
I(i+1)=Ki*(I(i)+dt*E(i)+0.5*dt*(E(i+1)-E(i))),
D(i+1)=Kd*(E(i+1)-E(i))/dt,
Vdc(i+1)=P(i+1)+I(i+1)+D(i+1),
//Check to see if Vdc has hit power supply limit
if Vdc(i+1)>12
Vdc(i+1)=12
elseif Vdc(i+1)<-12
Vdc(i+1)=-12
end
t(i+1)=t(i)+dt,
i=i+1,
//Call for a new shaft position (during PID control)
if i>5 then Ref=10
end
end
S.Norr
Download