Servo Motor Testing


Team C was given two tasks in the “Focused Studies” portion of the project. The second task given to team C, was to try and incorporate a servo motor in a way of their choosing in  order to increase overall efficiency of their AEV model. The engineers began this task by analyzing previous data recorded from their AEV test runs, and pinpointing issues that stood out. Eventually, the engineers realized how much energy was being consumed when the AEV came to a stop by reversing direction of the propellers. When taking this large energy consumption into consideration, and the addition of the requirement of the vehicle to stop at a specific point on the test rail added the necessity for an efficient and precise braking method. Team C engineers decided to incorporate a servo motor, which would work as a brake to stop the AEV at a specific point, while minimizing energy consumption. Shown below is the servo motor attached to our AEV.

           Servo Motor Brake Arm                                Servo Motor and Brake Arm on AEV

             

The engineers began working with the AEV code, to allow the servo motor to rotate when necessary, and to return to its initial point after a specific amount of time. Once the servo brake had been incorporated, and the engineers had conducted test runs with the new braking method, analysis of the data clearly showed the decrease in energy required to bring the AEV to a stop, when compared to the previous braking method (power braking). Shown below is the data collected from the test runs.

 

Energy vs Distance Graph – Before Servo Implementation

 

Energy vs Time Graph – Before Servo Motor Implementation

 

 

As shown in the two graphs above, which cover energy consumed over both distance and time for the vehicle before attaching the servo brake, their is a large energy spike (highlighted with arrow) which is being caused because of the fact that the vehicle is using power braking to bring it to a stop. Power braking is the method of reversing the direction of the motors to slow the AEV to a complete stop. While it is efficient, it consumes a lot of energy as shown in the graphs above.

 

 

Energy vs Distance – After Servo Implementation

 

Energy vs Distance – After Servo Implementation

 

As shown in the graphs above, after replacing power braking with the servo braking method, the previous energy spikes have been reduced by a noticeable amount. By using servo braking, we are cutting our energy costs down, and increasing our precision as we are able to stop the AEV whenever we wish to with simple code adjustments.

 


Takeaways

Based off of observations, and the data collected, team C engineers have concluded that implementing a servo braking method as a precise and energy efficient way of bringing your AEV to a stop is a great use for the servo motor, and all interested parties should consider implementing a servo brake on their own designs.

 

 


Code Used

Refer here for information on command functions.

reverse(4);                                                                          Reverse all motors

celerate(4,0,25,3);                                                            Accelerate all motors from start to 25% in 3 seconds.

motorSpeed(4,25);                                                           Run all motors at 25% power.

goFor(5);                                                                            Run for 5 seconds.

motorSpeed(4,23);                                                          Run all motors at 23% power.

goFor(3);                                                                            Run for 3 seconds.

brake(4);                                                                            Brake all motors.

goFor(4);                                                                            Run for 4 seconds.

rotateServo(45.00);                                                         Rotate servo to 45 degrees.

goFor(1);                                                                            Run for 1 second.

rotateServo(0.00);                                                           Rotate servo to 0 degrees.

reverse(4);                                                                         Reverse all motors.

motorSpeed(4,25);                                                          Run all motors at 25% power.

goFor(5);                                                                           Run for 5 seconds.

brake(4);                                                                           Brake all motors.

goFor(3);                                                                          Run for 3 seconds.

rotateServo(45.00);                                                       Rotate servo to 45 degrees.

goFor(1);                                                                           Run for 1 second.

rotateServo(0.00);                                                          Rotate servo to 0 degrees.