Homework2 Solution v4
Homework2 Solution v4
Homework #2
New and
Improved
NAME:___School Solution_________________________________________________________
Date Issued: Thursday 14 FEB, 11AM
Date Due: Tuesday 26 FEB, 11AM
Please answer the following 4 questions showing your work to the extent possible within
the allotted time. Point allocations are listed for each question (all equal at 25 points
each, all subsections within a question are equally important to that question). This
should not take more than 6 hours. If any problem takes much more than 1.5 hours, seek
help from instructors, UAs, classmates, etc.
As described in the course policies
document, this is one of four homeworks you will complete in this course. Each
homework counts as 5% of your total grade. You will submit your work in hardcopy at
the beginning of lecture.
1. (25 points) You plan to use two brushed DC motors to drive the rear wheels of a robot (one
motor per wheel). The drive wheels are 100mm in diameter, and are 200mm apart (center-tocenter). The mass of the robot is 0.32 kg. The center of gravity of the robot is 80mm off the
ground and directly at the center of the four wheels. You have two brushed DC motors with a
planetary gear drive (Vigor BP-05) that meet the manufacturers specifications available on
the 2.007 web site. You plan to power the motor directly with a 7.4V battery.
a. Sketch the torque-speed curve of the motor at 7.4V. Label the stall torque, noload speed, and maximum power point. Give values for each of these in
appropriate units.
According to the spreadsheet from the manufacturer:
At 3V
The stall torque is 3.6 kgf*cm but I prefer the units 0.353 N*m
The no load speed is 131 rpm but I prefer the units 13.7 rad/s
At 7.4 V (which is what the 2 cell Li Po battery provides) both the torque and no-load speed
scale linearly with voltage
The stall torque is 0.353 N*m * 7.4V/3V = 0.871 N*m
The no load speed is 13.7 rad/s *7.4/3V = 33.8 rad/sec
Torque speed curve
1
0.8
0.6
( )
0.4
Nm
0.2
0
10
20
30
40
rad/sec
Max power
1
4
0.871N m 33.838
7.368W
Page 2 of 14
b. Estimate the initial acceleration of the robot if the motors are throttled to full from
a dead stop. (Friction coefficient between the floor and the drive wheels is 0.7).
Draw a free body diagram of one of the drive wheels.
The initial acceleration of the robot could be limited by one of two phenomena by friction or
by the motors properties.
The motor is initially in the stalled condition and can therefore provide 0.871 N*m. This would
allow a Force tangent to the bottom of the 50mm radius wheel of 0.871N*m/0.05mm=17.4N
There are two drive wheels, so the total force would be 2*17.4N=34.8N
But the friction with the floor may limit the force to a smaller value. The normal force on each
wheel is 0.32 kg*g/4=0.785N. The frictional force on each wheel is therefore at most
0.7*0.785N=0.549N. The friction allows far less force to be applied.
The initial acceleration can therefore be estimated using the static force on the two drive wheels /
mass of the robot. 2*0.549N/0.32 kg= 3.4 m/s^2 or 0.35 gs.
A more refined answer can be made by drawing a full FBD of the robot and solving a system of
3 dynamics equations in 3 variables. This solution increased the acceleration estimate to
4.7m/s^2. This is due to the weight shift caused by the acceleration. The rear wheels have a
higher normal force and therefore get more traction. I dont feel sure that this answer is better as
a response to the question of what is the initial acceleration. On the real vehicle, it will take
time for the compliance in the system to allow the rear of the vehicle to sit down and actually
apply the additional normal force that emerges from the model. I think the reality is somewhere
in the range between the two answers (3.4 m/s^2 and 4.7m/s^2).
The FBD of the drive wheel was requested. The reaction at the axle and torque at the axle do not
have to be determined in order to solve for the initial acceleration though. They are forces
internal to the overall robot. Only externally applied forces determine the acceleration.
N= 0.87kg*g/4
t
N=0.7* 0.87kg*g/4
N= 0.87kg*g/4
Page 3 of 14
c. Use forward Euler to estimate the time it take the robot to move forward by one
meter. Explain your process and give your estimate.
I used Matlab to implement a solution. The graphs suggest there is a period of constant
acceleration followed by a fairly abrupt transition to constant velocity. The specific velocity
attained is governed by the no-load speed of the motor.
I find that the time required to cover one meter is 0.78 sec. If I change my code to neglect the
rear shift of the weight on the wheels due to acceleration, the time is a bit longer -- 0.84 sec. I
think its OK if students neglect this modest and subtle effect this time around.
Horizontal position of the robot over time
1.6
1.8
1.4
1.2
Velocity (meters/second)
Height (meters)
1.2
1
0.8
0.6
0.4
0.2
0.2
0.2
0.4
0.6
0.8
Time (seconds)
1.2
1.4
0.2
0.4
0.6
0.8
Time (seconds)
1.2
1.4
Page 4 of 14
% Initialization of state variables (this is a "dead start")
omega(1) = 0; % angular vel of motor
vel(1) = 0; % Velocity of person
dist(1) = 0; % Distance the person has ascended
force_shift(1)=0;
% This loop is the forward Euler method
% Euler's method is a simple explicit scheme for solving ODEs
% It is described at https://stellar.mit.edu/S/course/2/fa12/2.086
%/courseMaterial/topics/topic5/lectureNotes/2.086_Unit_IV_V1.1/
%2.086_Unit_IV.pdf
% page 325
for i=2:J
back_emf(i) = omega(i-1)*Kt;
current(i) = (Vb-back_emf(i))/Rm;
torque(i) = Kt*current(i);
% The force the motor can apply to the ground if NOT limited by friction
force_motor(i) = torque(i)*G/Rw;
% The force the wheel can apply to the ground if limited by friction
force_friction(i) = ((m*g/2)+force_shift(i-1))*mu;
force_applied(i)=min([force_motor(i) force_friction(i)]);
acc(i) = force_applied(i)/m;
vel(i) = vel(i-1)+ acc(i)*delt;
dist(i) = dist(i-1)+ vel(i)*delt;
omega(i) = vel(i)*G/Rw;
dist(i)=dist(i-1)+omega(i-1)*(Rw/G)*delt;
force_shift(i+1)= acc(i)*m*80/(100*2);
% I decided to model the aft shift of the weight on the wheels due
% to forward acceleration. There was very little effect on the
% time to reach the target distance
end
time=delt*min(find(dist>2.4))
figure(1)
plot(delt*(1:J),vel)
hold on
vel_steady=(No_load_speed/G)*Rw;
plot(delt*(1:J),vel_steady*ones(1,J)*1.001,'r')
title('Velocity of the robot over time');
xlabel('Time (seconds)');
ylabel('Velocity (meters/second)');
text(0.01,vel_steady-0.1,'red line = steady state velocity inferred',...
'HorizontalAlignment','left')
text(0.01,vel_steady-0.2,'from no load speed',...
'HorizontalAlignment','left')
figure(2)
plot(delt*(1:J),dist);
target=1.0;
hold on
plot(delt*(1:J),target,'r')
title('Horizontal position of the robot over time');
xlabel('Time (seconds)');
ylabel('Height (meters)');
Page 5 of 14
text(0.01,target+0.1,'This is the target distance',...
'HorizontalAlignment','left')
time_to_target=delt*min(find(dist>target))
plot([time_to_target time_to_target], [0 target],'r')
text(time_to_target,0.2,'This is the time',...
'HorizontalAlignment','left')
text(time_to_target+0.3,0.2,num2str(time_to_target),...
'HorizontalAlignment','left')
text(time_to_target,0.1,'to reach the target distance',...
'HorizontalAlignment','left')
Page 6 of 14
d. How steep a grade can this robot climb? What determines that limit? Power of
the motors? Torque of the motors? Friction? Tipping aft?
Page 7 of 14
Page 8 of 14
2. (25 points) Below is depicted a part that can be attached to a motor output shaft and used
as a link in a mechanism. Create this part geometry in Solidworks.
There are two options for completing this problem (check only one block below):
2
NOTE: All dimensions in millimeters.
Page 9 of 14
3. (25 points) Design a simple circuit with only switches
and LEDs and one 7.4 V battery. There will be seven
of each arranged in the pattern shown to the right
here (leave out the decimal). There will be a separate
pattern of LEDs mounted to one board and another
pattern of switched mounted to a different board. The
segments are a both 1/6 meter tall and are 2 meters
apart. Design a circuit so that closing each switch
results in lighting each corresponding LED. Design
the arrangement so that the amount of wire
consumed is as low as you can make it. Estimate the
amount of wire needed.
This is a good design. I mentioned in lecture the issue that if you turn
on 4 or more segments in series, then they will probably not light. But
these are in parallel. I mentioned that if you turn on only one LED with
7.4V source, I expect it will burn out if there is no resistance. But that
was not something I really intended for the students to work out.
Maybe there will be enough resistance in this length of wire. Maybe
each segment should have 2 LEDs in series to make it brighter rather
than wasting power in a resitor. If the students do comment on it, that
would be a nice bonus. But this is not really necessary for full credit.
There is some risk that students feel this question is not well linked to the lab. It
may be motivating for them to see this connection. Imagine you replace the
switches in this design with switches that are sensitive to a magnetic field. Then,
just when the switch is oriented correctly over Tims brain, the LEDs on the other
board will make a digit light up scoring the fMRI task.
Page 10 of 14
4.
Page 11 of 14
B) Provide enough calculations and explanation to persuade a classmate that the arrangement in your
sketch does provide 5N of grip force and that it opens wide enough and that the VS-2A servo is
capable of performing the actuation.
Page 12 of 14
Page 13 of 14
C) Lets say we find that the gripper needs to be lighter, so we want to move the actuator (VS-2A)
off of the arm and onto the base of the robot. Develop two options by which you can accomplish
this. Describe them with annotated sketches or other figures. Assume the arm must be able to
articulate vertically by 45 degrees. For both designs, estimate the percentage of actuation force
that is diminished through the remote actuation device.
Page 14 of 14
Pull/ pull strings applied to both the lever and the opposite side of the
moving finger and extending back to opposite sides of the servo horn.
The servo could be mounted on the arm to avoid coupling between grip
actuation and arm elevation and still move the mass close to the base.
There would be essentially zero loss in actuation force. However, there
might be some dead band as string creeps over time. This arrangement
seems to need frequent adjustment.