Difference between revisions of "How to build Holonomic Robot"

From Lofaro Lab Wiki
Jump to: navigation, search
(Drilling and Milling of Frames)
 
(13 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
We have used three wheeled Holonomic robots to implement our Trilateration formation keeping method. Here we explain how we have built one from scratch. The robots have 3 Degrees of Freedom (D.O.F), they can move translations X and Y and rotation Z (i.e Yaw).  
 
We have used three wheeled Holonomic robots to implement our Trilateration formation keeping method. Here we explain how we have built one from scratch. The robots have 3 Degrees of Freedom (D.O.F), they can move translations X and Y and rotation Z (i.e Yaw).  
  
[[File:Holo prototype.jpg|A Protype of the Holonomic Robot (before PCB)|right|thumb]]
+
[[File:Holo prototype.jpg|A Protype of the Holonomic Robot|right|thumb]]
  
  
Line 26: Line 26:
 
4) Arduino Pro Mini (for PWMs)
 
4) Arduino Pro Mini (for PWMs)
  
5) Pololu 200:1 Plastic Gearmotor (https://www.pololu.com/product/1120)
+
5) Pololu 200:1 Plastic Gearmotor [https://www.pololu.com/product/1120]
  
6) Solobotic Gear Mount (https://www.pololu.com/product/601/)
+
6) Solobotic Gear Mount [https://www.pololu.com/product/601/]
  
7) VEX IQ 63mm Omni Wheels (http://www.robotshop.com/en/vex-iq-63mm-omni-wheels-2pk.html)
+
7) VEX IQ 63mm Omni Wheels [http://www.robotshop.com/en/vex-iq-63mm-omni-wheels-2pk.html]
  
8) L298N Motor Controller (http://www.robotshop.com/en/vex-iq-63mm-omni-wheels-2pk.html)
+
8) L298N Motor Controller [http://www.amazon.com/gp/product/B00RMVCXPK?keywords=l298%20dual%20h-bridge%20motor%20driver&qid=1449154591&ref_=sr_1_1&sr=8-1]
  
9) 2000 mAh 6V NiMH Battery (with charger) (http://www.amazon.com/Tenergy-2000mAh-Battery-Connector-Aircrafts/dp/B001BCOWLY/ref=sr_1_1?ie=UTF8&qid=1453317372&sr=8-1&keywords=6v+2000mah+nimh+battery)
+
9) 2000 mAh 6V NiMH Battery (with charger) [http://www.amazon.com/Tenergy-2000mAh-Battery-Connector-Aircrafts/dp/B001BCOWLY/ref=sr_1_1?ie=UTF8&qid=1453317372&sr=8-1&keywords=6v+2000mah+nimh+battery]
 
      
 
      
 
9) GY-271 Magnetometer
 
9) GY-271 Magnetometer
Line 41: Line 41:
  
 
11) Standouts (for mounting components)
 
11) Standouts (for mounting components)
 
(remove links, add ref. at the bottom)
 
  
 
== Drilling and Milling of Frames ==
 
== Drilling and Milling of Frames ==
The CAM design for the drilling and milling of frames was done with AutoDesk Inventor. Then the design was exported to AutoDesk Fusion 360 (.stp file) because Inventor was not able produce the G-code for a linux CNC machine that was available to us at the GMU workshop.  
+
The CAM design for the drilling and milling of frames was done with AutoDesk Inventor. Then the design was exported to AutoDesk Fusion 360 (.stp file) because Inventor was not able produce the G-code for the linux CNC machine that was available to us at the GMU workshop.
 +
 
 +
The required files can be obtained from github:
 +
    git clone http://www.github.com/raghuvelagala/holo_frames.git
  
 
[[File:CAM Design.jpg|CAM Design in AutoDesk Inventor|center|alt=A]]
 
[[File:CAM Design.jpg|CAM Design in AutoDesk Inventor|center|alt=A]]
Line 53: Line 54:
 
Files needed:
 
Files needed:
 
* design(60,60,60)_3frames.ipt - this file (inventor design file) could be used to produce the .stp file needed to export data to Fusion 360 where G-code could be generated. Changes to design are recommended to be performed in Inventor as we have found it was harder to do this directly on Fusion 360.  
 
* design(60,60,60)_3frames.ipt - this file (inventor design file) could be used to produce the .stp file needed to export data to Fusion 360 where G-code could be generated. Changes to design are recommended to be performed in Inventor as we have found it was harder to do this directly on Fusion 360.  
* design(60,60,60)_3frames.stp (not really needed) - to be opened in Fusion 360.
+
* design(60,60,60)_3frames.stp (design file exported from '.ipt' through Inventor) - to be opened in Fusion 360.
* .ngc Files - these files need to be imported on the Linux CNC software controlling the CNC machine.
+
* .ngc files - these files need to be imported on the Linux CNC software controlling the CNC machine.
   - 4001.ngc is for .... Drill bit needed:  
+
   - 4001.ngc is for components mount holes on top of the frame and also for the two mount holes on the sides needed for each of the motors.  
   - 4002.ngc is for .... Drill bit needed:  
+
            Drill bit needed: 2.63 mm. diameter
   - 4003.ngc is for .... Drill bit needed:  
+
   - 4002.ngc is for the tension support hole for motors. Drill bit needed: 1/4 in. flat drill bit
   - 4004.ngc is for .... Drill bit needed:  
+
   - 4003.ngc is for the motor axles. Drill bit needed: 1/4 in. flat drill bit
   - 4005.ngc is for .... Drill bit needed:  
+
   - 4004.ngc is for frame outlines. Drill bit needed: 1/4 in. flat drill bit
  - 4006.ngc is for .... Drill bit needed:
+
   - 4005.ngc is for cutting the three sharp corners for each of the frames. Drill bit needed: 1/4 in. flat drill bit
  - 4007.ngc is for .... Drill bit needed:
+
 
 +
As you can see two different drill bits were needed. One was needed to drill holes for the components (the 2.63 mm. drill bit) and the other (1/4 in. flat drill bit) was needed to cut the edges of the frames, the larger 18mm. hole (for passing wires from underneath the frame), and also holes for the motors. When the .ngc files are imported it could be useful to run the tool path simulation on CNC software to double check for any errors, although the simulation could also be viewed on Fusion 360 while making the '.ngc' files.  
 +
 
 +
It should be noted the Linux CNC machine in the workshop controls only the X,Y and Z position of the drill bit, and not the speed of the spindle. This is controlled independently using a different controller. When switching between .ngc files the origin for the CNC machine does not have to be re-homed as it the same for all the files therefore the origin is saved in memory. We just have to make sure that at the origin 'Z=0' position the adge of the drill bit is properly touching the top of the aluminum sheet.
 +
 
 +
== Components References ==
 +
[1] - https://www.pololu.com/product/1120
 +
 
 +
[2] - https://www.pololu.com/product/601/
 +
 
 +
[3] - http://www.robotshop.com/en/vex-iq-63mm-omni-wheels-2pk.html
  
As you can see two different drill bits were needed. One was needed to drill holes for the components (2.65 mm diameter) and the other (1/4 in. flat) was needed to cut the edges of the frames, the large 18mm. hole (for passing wire through) and holes for the motors. When the .ngc files are imported it could be useful to run a simulation on the software to double check any errors, although the tool path simulation could also be viewed on Fusion 360.
+
[4] - http://www.amazon.com/gp/product/B00RMVCXPK?keywords=l298%20dual%20h-bridge%20motor%20driver&qid=1449154591&ref_=sr_1_1&sr=8-1
  
It should be noted the Linux CNC machine in the workshop controls only the X,Y and Z position of the drill bit, not the speed of the spindle. This is controlled independently from a different controller.
+
[5] - http://www.amazon.com/Tenergy-2000mAh-Battery-Connector-Aircrafts/dp/B001BCOWLY/ref=sr_1_1?ie=UTF8&qid=1453317372&sr=8-1&keywords=6v+2000mah+nimh+battery

Latest revision as of 02:00, 23 May 2016

We have used three wheeled Holonomic robots to implement our Trilateration formation keeping method. Here we explain how we have built one from scratch. The robots have 3 Degrees of Freedom (D.O.F), they can move translations X and Y and rotation Z (i.e Yaw).

A Protype of the Holonomic Robot







Required Components

1) 1/16 in. Aluminum Frames (12 in. length x 24 in. width) for 3 frames

2) Rapberry Pi Zero

  • OTG usb hub (with atleast 2 ports for wifi dongle, L-CAS Sensor)
  • 3600 mAh portable power bank
  • 8GB MicroSD
  • Wifi Dongle

4) Arduino Pro Mini (for PWMs)

5) Pololu 200:1 Plastic Gearmotor [1]

6) Solobotic Gear Mount [2]

7) VEX IQ 63mm Omni Wheels [3]

8) L298N Motor Controller [4]

9) 2000 mAh 6V NiMH Battery (with charger) [5]

9) GY-271 Magnetometer

10) L-CAS Ranging Sensor

11) Standouts (for mounting components)

Drilling and Milling of Frames

The CAM design for the drilling and milling of frames was done with AutoDesk Inventor. Then the design was exported to AutoDesk Fusion 360 (.stp file) because Inventor was not able produce the G-code for the linux CNC machine that was available to us at the GMU workshop.

The required files can be obtained from github:

   git clone http://www.github.com/raghuvelagala/holo_frames.git
A

The origin position in the design is at the bottom left corner of the frame shown above. This should be specified in the linux CNC software before running the G-Code.

Files needed:

  • design(60,60,60)_3frames.ipt - this file (inventor design file) could be used to produce the .stp file needed to export data to Fusion 360 where G-code could be generated. Changes to design are recommended to be performed in Inventor as we have found it was harder to do this directly on Fusion 360.
  • design(60,60,60)_3frames.stp (design file exported from '.ipt' through Inventor) - to be opened in Fusion 360.
  • .ngc files - these files need to be imported on the Linux CNC software controlling the CNC machine.
 - 4001.ngc is for components mount holes on top of the frame and also for the two mount holes on the sides needed for each of the motors. 
            Drill bit needed: 2.63 mm. diameter
 - 4002.ngc is for the tension support hole for motors. Drill bit needed: 1/4 in. flat drill bit
 - 4003.ngc is for the motor axles. Drill bit needed: 1/4 in. flat drill bit
 - 4004.ngc is for frame outlines. Drill bit needed: 1/4 in. flat drill bit
 - 4005.ngc is for cutting the three sharp corners for each of the frames. Drill bit needed: 1/4 in. flat drill bit

As you can see two different drill bits were needed. One was needed to drill holes for the components (the 2.63 mm. drill bit) and the other (1/4 in. flat drill bit) was needed to cut the edges of the frames, the larger 18mm. hole (for passing wires from underneath the frame), and also holes for the motors. When the .ngc files are imported it could be useful to run the tool path simulation on CNC software to double check for any errors, although the simulation could also be viewed on Fusion 360 while making the '.ngc' files.

It should be noted the Linux CNC machine in the workshop controls only the X,Y and Z position of the drill bit, and not the speed of the spindle. This is controlled independently using a different controller. When switching between .ngc files the origin for the CNC machine does not have to be re-homed as it the same for all the files therefore the origin is saved in memory. We just have to make sure that at the origin 'Z=0' position the adge of the drill bit is properly touching the top of the aluminum sheet.

Components References

[1] - https://www.pololu.com/product/1120

[2] - https://www.pololu.com/product/601/

[3] - http://www.robotshop.com/en/vex-iq-63mm-omni-wheels-2pk.html

[4] - http://www.amazon.com/gp/product/B00RMVCXPK?keywords=l298%20dual%20h-bridge%20motor%20driver&qid=1449154591&ref_=sr_1_1&sr=8-1

[5] - http://www.amazon.com/Tenergy-2000mAh-Battery-Connector-Aircrafts/dp/B001BCOWLY/ref=sr_1_1?ie=UTF8&qid=1453317372&sr=8-1&keywords=6v+2000mah+nimh+battery