Difference between revisions of "High Speed Motor Control"

From Mech
Jump to navigationJump to search
Line 10: Line 10:
===Theory of Parallelogram Design===
===Theory of Parallelogram Design===
====Equations of Motion====
====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.
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 to angles to 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> x = L \cos (\theta_1)\ + \cos (\theta_1+\theta_2)</math>
<math> y = L \sin(\theta_1)\ + \sin(\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>
*<math> \theta_1 = \frac{-(2 L \sin(\theta_2)) x + (L + 2 L \cos(\theta_2)) y} {(2 L \sin(\theta_2)) y + (L + 2 L \cos(\theta_2)) x}</math>
*<math> \theta_2 = cos^{-1} \left(\frac{x^2+y^2-L^2-(2L)^2}{2L^2} \right)</math>


Note: In the code, <math>\theta_2 \, </math> is written out explicitly in the equation for <math>\theta_1 \, </math>, but was defined as above for ease of reading.
===Basket Design===
===Basket Design===
===Materials and Construction===
===Materials and Construction===

Revision as of 14:46, 9 March 2010

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 to angles to x- and y- coordinates) were also needed to evaluate the accuracy of the execution with respect to the command path.

Note: In the code, is written out explicitly in the equation for , but was defined as above for ease of reading.

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.

Next Steps