|
THS 2011-2012 |
Lab1 /
Lab1Group7Q4How accurate is the Drive command?Can you verify the accuracy of the velocity and radius that you use as an input? Find a way to accurately measure both. What does RADIUS and VELOCITY mean to the Create in this context? I can think of at least three interpretations from the Create's point of view--you should experimentally determine what it means. Don't presume that your logical idea of radius and velocity are the radius and velocity used by the Create, PROVE IT! USE SOME NICE DIAGRAMS!! Purpose: The purpose of this lab is to figure out what the robot interprets the radius and velocity when sent as a Drive command and how accurate the radius and velocity is.
Materials :
Hypothesis: I hypothesize that the velocity is the average velocity over the time and distance that the robot travels.
I hypothesize that the radius is measured from the center of the robot to the center of the circle, and that the sign and magnitude of the the radius tells the direction and the magnitude of the turn.
Procedure: To measure the accuracy of the velocity, we will need to make the robot go straight for any time and stop it after. We would measure the distance drawn by the marker attached to the front of the robot and with it calculate the velocity using the equation rate equals distance over time.
Verifying the Accuracy of Velocity at 100 mm/s: We know the distance should be 500 mm in 5.0 seconds.
1. First attach a marker/pen to the very front of the robot.
2. Then turn on the robot and send in 128 131 to put it in safe mode.
3. Send in 137 0 100 128 0 (these are in decimal) to make it go straight at 100 mm/s.
4. To make it easier to calculate, we can run the robot for 5 seconds. With a stopwatch, watch for when it comes to 5 seconds and send 137 0 0 0 0 to stop the robot. This should be done as precisely as possible.
5. Measure the distance drawn by the marker (record it) and divide it by the time (record it) to get the measured velocity.
6. Repeat this 10 times for better accuracy.
Verifying the Accuracy of Velocity at 200 mm/s: We know the distance should be 1000 mm in 5.0 seconds. This trial should be done the same way with the exception of changing the command to:
137 0 200 128 0 to make it go at 200 mm/s.
Verifying what the Radius is and the Accuracy: We know the radius is defined as the distance from the center of the robot to the center of the circle it is turning on (the inner circle--see diagram). We also know that the sign of the radius tells the direction it turns (Positive to the left, negative to the right) and that a negative velocity drives the robot backwards. We will need to have the robot turn in place so we can measure its radius and then measure the inner/turning circle to get the radius there.
1. First attach a marker/pen to the left side (since we are sending in a positive radius and velocity).
2. Then turn on the robot and send in 128 131 to put it in safe mode.
3. Next send in 152 13 137 0 200 0 1 157 1 104 137 0 0 0 1 153 to make the robot turn in place for 360 degrees.
4. Next send in 152 13 137 0 200 0 100 157 1 104 137 0 0 0 100 153 to make the robot turn 360 degrees on the turning circle with 100 mm radius and stop after. (For the second trial, you would send 152 13 137 0 200 0 120 157 1 104 137 0 0 0 120 153 for a turning circle radius of 120 mm.)
5. On your paper there should be two circles (smaller inside the larger). The larger one is the robot and the smaller the inner circle. To find the radius of the inner circle, just measure the radius of the larger one (radius of robot) and from that subtract the radius of the inner circle. (radius of robot - radius of inner circle = radius of turning circle)
Results/Data:
Trial 1: Verifying a Velocity of 100 mm/s Script 1:
128 131 137 0 100 128 0
Then after desired time (in this case 5 seconds) has come, quickly send 137 0 0 0 0 to stop robot.
Trial 2: Verifying a Velocity of 200 mm/s Script 2:
128 131 137 0 200 128 0
Then after desired time (in this case 5 seconds) has come, quickly send 137 0 0 0 0 to stop robot.
Trial 3: Verifying Accuracy of Radius Script 1:
128 131 152 137 0 200 0 100 157 1 104 137 0 0 0 100 153
152 137 0 200 0 1 157 1 104 137 0 0 0 100 153
Script 2:
128 131 152 137 0 200 0 120 157 1 104 137 0 0 0 100 153
152 137 0 200 0 1 157 1 104 137 0 0 0 100 153
Observations: As you can see, the velocity was not always accurate. The smallest percent error on the first trial was 3%, while the greatest error was at 9%. However, when calculating a greater velocity, it tended to be more accurate with the smallest error at 0.40% and the greatest at 4.40%.
When measuring for the radius of the 'turning circle', we proved the definition was right. It was from the center of the robot to the center of the inner circle. It was 100% accurate too.
Conclusions : My conclusion is that the velocity is more accurate when it is a higher speed. Also, the definition of the radius in the OpenInterface book was proven to be accurate with 100% accuracy.
Back To Group 7 |