Difference between revisions of "Equipment/Staubli/gdmux"

From London Hackspace Wiki
Jump to navigation Jump to search
m (Mentar moved page Project:Staubli Robot Arm/g-code interpreter to Equipment/Staubli/g-code interpreter: Staubli is permamently installed and working so is part of space's infrastructure now)
Line 4: Line 4:
 
===Challenges===
 
===Challenges===
 
* G-code standards often have tool specific inline variations. E.g. for 3D printint there's E###, which is the rate of extrusion, whereas for CNC applications there's F### which is the spindle speed. The issues arises as the CS7 controller does the motion planning and inverse kinematics, and although the controller has GPIO they are not 5v TTL and have to be controlled with [http://www1.adept.com/main/KE/DATA/V%20Plus/V%20Language%20Reference/signal_i.html awkward V+ code]. The alternative is to intercept the gcode on a separate micro-controller and either proxy the motion only g-code to the controller or alternatively  
 
* G-code standards often have tool specific inline variations. E.g. for 3D printint there's E###, which is the rate of extrusion, whereas for CNC applications there's F### which is the spindle speed. The issues arises as the CS7 controller does the motion planning and inverse kinematics, and although the controller has GPIO they are not 5v TTL and have to be controlled with [http://www1.adept.com/main/KE/DATA/V%20Plus/V%20Language%20Reference/signal_i.html awkward V+ code]. The alternative is to intercept the gcode on a separate micro-controller and either proxy the motion only g-code to the controller or alternatively  
 +
** I vote we write the GCode interpreter on a separate microcontroller board, which then spits out V+ MOVE commands to the CS7 over a serial port. There are lots of existing open source GCode interpreters (like this one https://github.com/grbl/grbl) which run on Arduino and RPi, and are written in C/C++. Writing it in V+ will be painful :-) Also, we could interface the feed motors, steppers, etc, directly to the microcontroller, rather than trying to drive them with the CS7 GPIO - Jon.
 
* Choose whether or not to implement arc motion as per G03 and G02. i.e. To use [http://www1.adept.com/main/KE/Data/v%20plus/V%20Language%20User/Locations5.html procedural motion] or not:
 
* Choose whether or not to implement arc motion as per G03 and G02. i.e. To use [http://www1.adept.com/main/KE/Data/v%20plus/V%20Language%20User/Locations5.html procedural motion] or not:
 
<code>
 
<code>

Revision as of 11:55, 7 March 2014

What?

To make good use of the Staubli robot arm we need to write an g-code interpreter to allow non-programmers to use it efficiently, by utilizing off the shelf CAM software.

Challenges

  • G-code standards often have tool specific inline variations. E.g. for 3D printint there's E###, which is the rate of extrusion, whereas for CNC applications there's F### which is the spindle speed. The issues arises as the CS7 controller does the motion planning and inverse kinematics, and although the controller has GPIO they are not 5v TTL and have to be controlled with awkward V+ code. The alternative is to intercept the gcode on a separate micro-controller and either proxy the motion only g-code to the controller or alternatively
    • I vote we write the GCode interpreter on a separate microcontroller board, which then spits out V+ MOVE commands to the CS7 over a serial port. There are lots of existing open source GCode interpreters (like this one https://github.com/grbl/grbl) which run on Arduino and RPi, and are written in C/C++. Writing it in V+ will be painful :-) Also, we could interface the feed motors, steppers, etc, directly to the microcontroller, rather than trying to drive them with the CS7 GPIO - Jon.
  • Choose whether or not to implement arc motion as per G03 and G02. i.e. To use procedural motion or not:

DURATION 0.5 ALWAYS
FOR angle = start TO last STEP angle.step
    x = radius*COS(angle)+x.center
    y = radius*SIN(angle)+y.center
    MOVE TRANS(x, y, 0, 0, 180, 0)
END

Useful links

  • g-code refference
  • List of cam [www.shapeoko.com/wiki/index.php/CAM| software] and converters from Shapeoko
  • CamBam+ - popular,customizable but non-free CAM software package