Friday, October 16, 2009

Lab 3 - Motor model and theoretical behavior



Given the differential equations governing the motor system behavior, we were able to create a Simulink model of the system, following the general idea of the block diagram models discussed in class. The key element of the model is the element representing the motor mechanical dynamics which takes a torque as an input and outputs the resulting speed. The torque is determined by a series of gains starting at the Arduino PWM signal duty cycle value, which is converted to an effective voltage seen by the motor by the H-bridge and then further modified by the resistance of motor wires and the torque constant. Additionally, there is also feedback from the motor speed in terms of back EMF, but as we were almost always operating the motor at stall, our model assumes no back EMF feedback (Km = 0). Finally, there is an additional external feedback loop which takes the integrated velocity output (in reality, measured by the Hall effect sensor) and feeds it back to perform position control. There is also the potential for a load torque on the armature, which acts as a disturbance to the position controller, but in our case the only load torque was gravity, which was negligible for the motor in vertical position.

To validate the model, we performed both a simulation and an experiment of the motor response when commanded to move to a position of 5 degrees with a position controller gain of 5. As can be seen in the simulation, the net result is a highly underdamped system that converges to the desired position after roughly 5 seconds. When the actual experiment was performed, we found that the motor immediately moved to the desired position and then stayed there with little to no extra oscillation beyond the Hall effect sensor noise. This difference was mostly likely due both to non-linear effects of the friction in our motor, and the poor quality and extreme quantization of the Hall effect sensor.

No comments:

Post a Comment