Week 05: TinyG Stepper Controller & Gantry Hardware Basics

This is a quick-start summary of the steps you must first take to begin using the Serpentine 2.0 machines. You need to follow each step:

1. TINYG: We'll be using the TinyG Stepper Motor Controller available from Synthetos which can drive 4 stepper motors, digital inputs and a fan. Check out the helpful TinyG "Getting Started" Wiki here

2. DRIVERS: Before your laptop will recognize the TinyG you may need to download and install the "FTDI Virtual COM Port Drivers": 

3. DIAGRAM: Use the diagram to the left to familiarize yourself with the layout of the board. The TinyG is a stand-alone industrial grade controller with an on-board CPU and handy screw terminal to connect motors, limit switches and a fan. Similar to an Arduino we'll be connecting the TinyG to our computers through a USB.  

4a. COOLTERM: To setup the TinyG correctly we'll need to use a program called CoolTerm to send and receive messages, and modify the board's settings. The TinyG Wiki covers how to use CoolTerm to communicate with the TinyG controller board. Using the CoolTerm terminal command line we can access and update the TinyG's core settings (feedrates, switch types, units, etc) and also send G-code directly to the board.

4b COOLTERM SETTINGS: Once CoolTerm is open, click OPTIONS and make sure you have it setup exactly like this. Save a copy of these setting to your Desktop to reuse later.  

5. G-CODE: We'll be sending the TinyG G-Code using either CoolTerm or directly using Grasshopper + Firefly Serial Write composnent . Here is a list of all the G-Code that we can send to the TinyG

Here is some sample G-code (This can be cut+paste into CoolTerm terminal or sent over serial using Firefly. Words in brackets are notes and will not be uploaded):

G28.2 X0 Y0 Z0 (Homing - go as far left as possible and stop)
G28.3 X
0 Y0 Z0 (Set current position to be absolute 0)
G1 X10 Y10 Z10 F16000 (Go to +100 mm at the max feedrate of 16000)

G1 X0 Y0 Z0 F2000 (Return to 0,0,0 at a feedrate of 2000)

To move the 4th motor "A" (for custom tools, extruders, grippers, etc) you type the following into CoolTerm's command line :
G0 X0 Y0 Z0 A100 F150
or on a separate line you can add a feed rate specific to your custom tool.
G0 A100 F150

7. MACHINE HARDWARE: Our gantry is made out of a combination of aluminum extrusions and components found here. We are using both 20mm X 40mm extrusions and our slides run along these Makerslides. Our current Z axis setup use Type 316 Stainless Steel Threaded Rod (M8 Thread, 1.25mm Pitch) from McMaster Carr.

8. CALIBRATING THE MACHINE: Since we will be constantly evolving and modifying our machine it is important that we know how to calibrate things. The machines should run smoothly and the micro-controllers and motors shouldn't generarate too much heat. Here are some good links: Calibrating and squaring the machine; Tuning the machine; Tuning the Tiny-G motor settings through software; Fine tuning homing and limit switches.

9. EMERGENCY STOPS: There are two reset / emergency stops (E-stops) on either side of the machine. Use these to stop the machine in its tracks.