High Speed Motor Control
Overview
The project suggested was to design a system for high speed motor control using the PIC 32. To demonstrate the motor control, a two degree of freedom (2DOF) robot arm was designed to throw and catch one ball with itself.
Team Members
- Sam Bobb (Electrical Engineering senior)
- Daniel Cornew (Mechanical Engineering junior)
- Ryan Deeter (Mechanical Engineering junior)
Mechanical Design
Theory of Parallelogram Design
Equations of Motion
Commanding the arm is much easier for a user to do in x- and y- coordinates than in motor angles or encoder counts. Therefore, equations were required that would translate x- and y- coordinates into angles from horizontal and then into encoder counts. Equations to express the reverse (encoder counts -> angles -> x- and y- coordinates) were also needed to evaluate the accuracy of the execution with respect to the command path.
<math> x = L \cos (\theta_1)\ + \cos (\theta_1+\theta_2)<\math> <math> y = L \sin(\theta_1)\ + \sin(\theta_1+\theta_2)<\math> <math> \theta_1 = cos^{-1} \left(\frac{x^2+y^2-L^2-(2L)^2}{2L^2} \right)<\math>
Basket Design
Materials and Construction
Electrical Design
Overview
Circuit Diagram
Components
GUI
Usage
Programming
Code
Overview
PIC C Code
MATLAB Code
Results
It was awesome.