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