LEGO Delta Robot Scanning & Drawing

by sharonchen10271027 in Circuits > Robots

3792 Views, 29 Favorites, 0 Comments

LEGO Delta Robot Scanning & Drawing

26653511_1805464572881348_1281584626_o.jpg

Using LEGO NXT to built a Delta Robot.

Combined scanning and drawing.

Kinemtic Analysis

1.png

Please open the PDF to see details.

Reference:
https://www.google.com.tw/url?sa=t&rct=j&q=&esrc=s...

Mechanism

IMAG5347.jpg
IMAG5352.jpg
IMAG5353.jpg
IMAG5354.jpg
IMAG5348.jpg
IMAG5349.jpg
IMAG5350.jpg
IMAG5351.jpg
IMAG5355.jpg

LEGO NXT *1
LEGO Motor *3
LEGO Light sensor *1
LEGO mindstorms *1 box
White board *1 ( Because white board has less friction.)
White board marker *1
Shelf *1
Belt *n (Fixed the Shelf and Robot together.)

If you have more gear, you can use them to build a gearbox.
It's better for the motor to have large reduction ratio.

Change the arm length to meet your need.

It's better to use the ball socket at the junction.
I don't have it, so I change it to 2 revolution joints.

MATLAB Simulation

26241800_1968821776466085_1723423703_n.jpg
26550965_1968821783132751_550803180_n.jpg

Using MATLAB to simulate the action.

Calculate the trajectory of the robot before operating the robot.
It can avoid the improper operating such as exceed the work space.

LabVIEW Code - Main

擷取2.PNG
擷取3.PNG
擷取4.PNG
擷取5.PNG
擷取1.PNG
  1. Click the "Initialize" bottom.
    It can let the robot always starts from the same place.
    Give 3 motors powers make them running to the top of the shelf.
    Calculate the difference between previous and present value of the motor degree.
    If the difference is 0, the initialization is complete.
  2. Click the "Scan" bottom.
    Give NXT a L(cm)*L(cm) array that has d columns and d rows.
    Let the light sensor scanning from left to right, and from top to bottom.
    If the values that light sensor determined is black (in the picture it is <45, but it will be different.), it will be access to the array as X0, Y0, Z0.
    And it will exit the scanning process.

  3. Change light sensor to white board marker.

  4. Click the "Draw" bottom.
    The drawing will start at the position that Step 2 access (X0, Y0, Z0).
    The matlab script is trajectory that you insert.

Downloads

LabVIEW Code - Delta Inverse

擷取6.PNG

It's the inverse kinematic calculating.

Inputs are the trajectory points's coordinate x, y, and z.

Outputs are the angle and power for three motors, and the "loops" shows the loops's number.

LabVIEW Code - 3 Motor Sync

擷取8.PNG
擷取7.PNG

Using PID control.

Input 3 motors's port, power, angle.

If the difference of motor's angle read from NXT and the angle that Delta Inverse gave is less than 5 degree, the motor will stop rotating.

If 3 motors are stopped, the process is complete.

Demo

LEGO Delta Robot scanning &amp;amp; drawing