Motor Control Project
Mechatronic Systems, Northeastern University
Relevant Skills: open and closed-loop system design, motor control
Objective
My teammate and I were tasked with using Arduino and Simulink to provide open-loop and closed-loop control for a DC motor/encoder. Both velocity and position were controlled.
Variables / Constraints
The motor circuit had to include the provided H-bridge, and a SimScape model of the circuit had to be constructed. The physical motor and SimScape model had to produce the same velocity/position data.
Design Process
Project Part A: The motor circuit was created, and the Arduino Uno was linked to Simulink for remote operation. by measuring encoder counts and converting to the proper units, the speed, direction, and position of the motor's rotor were accurately determined.
​
Project Part B: Using known motor data, we solved for the motor torque and viscous friction coefficients. For different PWM duty cycles, the-open loop motor response was plotted, which allowed us to estimate the transfer function for the motor in MATLAB. The SimScape model was constructed, and it reflected the same results as the physical motor.
Project Part C: For position and speed control, we created closed-loop SimScape models to simulate the motor. Additional SimScape models provided feedback and control on the physical motor. Position and speed data were overlaid to confirm accuracy.