Difference between revisions of "Robotic Arm: Team Roaring Bears"

From ENGR005 2008
Jump to: navigation, search
(Robotic Arm: Team Roaring Bears)
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=Robotic Arm: Team Roaring Bears=
 
 
==Team members:==
 
==Team members:==
 
*[[User:abiele1 | Bielenberg]]
 
*[[User:abiele1 | Bielenberg]]
Line 6: Line 5:
 
*[[User:sruther1|Rutherford]]
 
*[[User:sruther1|Rutherford]]
 
==Team Roaring Bears' Robotic Arm==
 
==Team Roaring Bears' Robotic Arm==
[[Image:blah.jpg|200px|thumb|right|The Roaring Bears' Robotic Arm]]
+
[[Image:Arm.jpg|300px|thumb|right|The Roaring Bears' Robotic Arm]]
 +
The Roaring Bears constructed a fairly simple arm of total length 44 cm.
 +
 
 +
[[Image:Robot_Arm_Model.jpg|300px|thumb|right|The Roaring Bears' Robotic Arm in SolidWorks]]
 +
They modeled it in SolidWorks using mostly pre-drawn parts, with some additions included, such as the first servo bracket and the pencil holder.
 +
 
 +
Overall, it was highly successful. It was incredibly smooth-running, despite initial 'junkie' behaviour. However, a lingering problem is the arm's tendency to skew drawings - circles become eggplant-shaped, lines are curved, et cetera. A fix for this is in the works.
 +
 
 +
[[Image:Drawing.jpg|450px|thumb|left|The Arm tries to draw a circle]]
 +
 
 +
The SolidWorks files for the Roaring Bears' Robotic Arm can be found [[Media:RoaringBearsArm.zip | here]].
 +
 
 +
The MATLAB code that controlled the Bears' arm and simulated it can be found [[Media:ArmControl2.zip | here]].
 +
About the scripts:
 +
The sequencer.m script is main file. It can call functions that draw things.
 +
The script uses a few global variables, so you can't run any of the functions beside the sequencer, before you first run sequencer.m (hence, defining global variables, including the serial port)
 +
 
 +
the functions are:
 +
*draw(path). . . . . . . . . . .moves arm from point to point through a 2*n matrix
 +
*drawLine(x1,x2,y1,y2). . . . calls draw(), interpolating between point 1 and point 2
 +
*drawPath(path). . . . . . . . .calls drawLine() between points on path, a 2*n matrix
 +
*drawCircle(x0,y0,r,a0). . . . .draws a circle with draw()
 +
*drawPolygon(x0,y0,r,a0,n,skip) draws an n-pointed polygon, skipping 'skip' points. good for making stars, square, etc.

Latest revision as of 12:29, 18 November 2008

Team members:

Team Roaring Bears' Robotic Arm

The Roaring Bears' Robotic Arm

The Roaring Bears constructed a fairly simple arm of total length 44 cm.

The Roaring Bears' Robotic Arm in SolidWorks

They modeled it in SolidWorks using mostly pre-drawn parts, with some additions included, such as the first servo bracket and the pencil holder.

Overall, it was highly successful. It was incredibly smooth-running, despite initial 'junkie' behaviour. However, a lingering problem is the arm's tendency to skew drawings - circles become eggplant-shaped, lines are curved, et cetera. A fix for this is in the works.

The Arm tries to draw a circle

The SolidWorks files for the Roaring Bears' Robotic Arm can be found here.

The MATLAB code that controlled the Bears' arm and simulated it can be found here. About the scripts: The sequencer.m script is main file. It can call functions that draw things. The script uses a few global variables, so you can't run any of the functions beside the sequencer, before you first run sequencer.m (hence, defining global variables, including the serial port)

the functions are:

  • draw(path). . . . . . . . . . .moves arm from point to point through a 2*n matrix
  • drawLine(x1,x2,y1,y2). . . . calls draw(), interpolating between point 1 and point 2
  • drawPath(path). . . . . . . . .calls drawLine() between points on path, a 2*n matrix
  • drawCircle(x0,y0,r,a0). . . . .draws a circle with draw()
  • drawPolygon(x0,y0,r,a0,n,skip) draws an n-pointed polygon, skipping 'skip' points. good for making stars, square, etc.