information and instruction manual for the simplexcnc ... · the specific manual for the version of...

53
Peter Norberg Consulting, Inc. Professional Solutions to Professional Problems P.O. Box 10987 Ferguson, MO 63135-0987 (314) 521-8808 Information and Instruction Manual for the SimplexCNC Simple Router Control Application Manual By Peter Norberg Consulting, Inc. Matches SimplexCNC Program Revision 2.0.0.79 This Manual is Copyright 2008, 2009, 2010, 2011 by Peter Norberg Consulting, Inc. All Rights Reserved. Authored in the United States of America. Manual published September 16, 2011 10:46 AM

Upload: others

Post on 27-Dec-2019

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Peter Norberg Consulting, Inc.

Professional Solutions to Professional Problems P.O. Box 10987 Ferguson, MO 63135-0987 (314) 521-8808

Information and Instruction Manual for the SimplexCNC Simple Router Control Application

Manual By

Peter Norberg Consulting, Inc. Matches SimplexCNC Program Revision 2.0.0.79

This Manual is Copyright 2008, 2009, 2010, 2011 by Peter Norberg Consulting, Inc. All Rights Reserved.

Authored in the United States of America. Manual published September 16, 2011 10:46 AM

Page 2: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Table Of Contents Page 2

SimplexCNC Application Peter Norberg Consulting, Inc.

Table Of Contents

Table Of Contents ...................................................................................................... 2

Disclaimer and Revision History ................................................................................... 5

Product Safety Warnings ............................................................................................ 6

LIFE SUPPORT POLICY .................................................................................... 6

Introduction and Product Summary ............................................................................. 7

SimplexCNC Application Summary ............................................................................... 8

Configuring your system using the Preferences Screen ........................................ 10

Setting your “Machine Units” ................................................................ 10

Loading and saving the machine settings ............................................... 11

X, Y, Z Axis Settings ............................................................................ 12

Resolution ............................................................................... 12

Backlash ................................................................................. 12

Home Over Run ....................................................................... 12

Limit – .................................................................................... 13

Limit + ................................................................................... 13

Home ..................................................................................... 13

Machine Origin ......................................................................... 13

Max Travel .............................................................................. 13

A Axis ................................................................................................ 14

Resolution Step/Deg ................................................................. 14

Axis of Rotation ....................................................................... 14

Angular Rate Modifier ............................................................... 14

Base Rates ......................................................................................... 15

Start Speed ............................................................................. 15

Maximum Speed ...................................................................... 15

Max Rate Change ..................................................................... 15

Acceleration ............................................................................ 15

Max Spindle Speed ................................................................... 15

SD4D user initialization string .................................................... 15

Chord Length ...................................................................................... 16

OK/Cancel .......................................................................................... 16

Operating your system with the main screen ..................................................... 17

Menu Options ..................................................................................... 18

File menu ................................................................................ 18

Edit menu ............................................................................... 19

Messages menu ....................................................................... 21

Preview ................................................................................... 21

Motor Locations .................................................................................. 22

Page 3: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Table Of Contents Page 3

SimplexCNC Application Peter Norberg Consulting, Inc.

GCode Source Panel ................................................................. 22

Messages ................................................................................ 22

Preview Panel .......................................................................... 23

Manual Data Input ................................................................... 25

Tool ........................................................................................ 25

Main control buttons ................................................................. 25

Incremental (toggles jog mode) ................................................. 26

Jog Control .............................................................................. 26

Library Manager ............................................................................................. 27

Example use of a library function .......................................................... 27

GCode Implementation .............................................................................................. 29

Implemented G Words .................................................................................... 29

Miscellaneous Words ....................................................................................... 33

M0 allows pause/restart action .............................................................. 34

Special Drill Commands (G81, G82, G83) .......................................................... 35

G81 - Drilling Canned Cycle .................................................................. 35

G82 - Spot Drilling Cycle (also called the „Drilling with dwell canned

cycle‟) ................................................................................................ 35

G83 - Deep Hole Drilling Cycle .............................................................. 35

Non Standard Functionality .............................................................................. 36

:debug/:nodebug ................................................................................ 36

STARTLOOP / ENDLOOP ....................................................................... 36

Extended Interpreter Functions ............................................................. 36

Example: ........................................................................................... 37

Diagnostic Support Log ................................................................................... 37

SD4DP/SD4D Series Board Connections ....................................................................... 38

Board Size ..................................................................................................... 39

Mounting Requirements .................................................................................. 39

Cooling Requirements ..................................................................................... 39

Connection Summary ................................................................................................. 40

Hardware Configuration: Board Jumpers ........................................................... 40

Jumper R1K: Default Step Pulse Polarity ................................................ 40

Jumper S1K: Default Step Direction Level .............................................. 40

Jumper RN: Clock enable ..................................................................... 40

Jumper DP: Driver Pullup Voltage Source ............................................... 40

Connector Signal Pinouts ................................................................................. 41

SX-Key debugger connector ................................................................. 42

CTL – Output Power and DAC voltages, SD4DP version ............................ 42

CTL - Board status and TTL Serial, SD4D series version ........................... 42

Input Limit Sensors, lines LW- to LZ+ .................................................... 43

Page 4: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Table Of Contents Page 4

SimplexCNC Application Peter Norberg Consulting, Inc.

PWR - Power Connector for the SD4DP and all but the SD4DEU ................ 44

PWR - Power Connector for the SD4DEU ................................................ 44

IO - TTL Outputs, used for device on/off control ...................................... 46

STEPS - TTL Step And Direction Signals ................................................. 48

Connection Example 1: SD4D revision 1 to Gecko G2O1 or G2O2 Drivers .............. 49

Connection Example 2: SD4DP, SD4D, SD4DEI or SD4DEU to Gecko G2O3 Drivers .......................................................................................................... 50

Connection Example 3: SD4DP, SD4DG, SD4DEI or SD4DEU to Gecko G201 or G2O2 Drivers ................................................................................................. 51

Connection Example 4: SD4DP, SD4DG to Gecko G203 Drivers ............................ 52

Connection Example 5: SD4DP, SD4DG, SD4DEI or SD4DEU to SMC LC6D

Drivers .......................................................................................................... 53

Page 5: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Disclaimer and Revision History Page 5

SimplexCNC Application Peter Norberg Consulting, Inc.

Disclaimer and Revision History

All of our products are constantly undergoing upgrades and enhancements. Therefore, while this manual is accurate to the best of our knowledge as of its date of publication, it cannot be construed as a commitment that future releases will operate identically to this description. Errors may appear in the documentation; we will correct any mistakes as soon as they are

discovered, and will post the corrections on the web site in a timely manner. Please refer to the specific manual for the version of the hardware and firmware that you have for the most accurate information for your product.

This manual describes Jim Gunther‟s SimplexCNC application. The software release described is SimplexCNC build 2.0.0.39. The manual version shown on the front page normally has the same value as the associated SimplexCNC application version. If no manual has yet been published which matches a given firmware level, then the update is purely one of internal

details; no new command features will have been added.

As a short firmware revision history key points, we have:

Version Date Description

1.0.0.55 February 15, 2008 First manual relating to SimplexCNC Software – BETA release

May 20, 2008 Corrected R1K and S1K jumper documentation;

they were reversed.

June 5, 2008 Added note for the new ESD version of the SD4DP board (serial numbers M209-0001 and later) relating to Gecko Vampire installation.

1.0.1.15 July 17, 2008 General code cleanup, corrected various customer

reported issues

1.0.1.22 August 15, 2008 Updated to add DXF import

1.1.0.91 April 27, 2009 Added „:debug‟ and „:nodebug‟ commands to the interpreter

1.2.0.105 May 10, 2009 Released 3D preview mode

2.0.0.28 January 11, 2010 Released operation on all of the SD4D series of

boards, added display resize capability, for support on many netbooks. Removed documentation for the SD4DP board,

since all products from the SD4D and SD4DP series are now supported

2.0.0.39 July 6, 2010 Added user control of diagnostic log file generation, as well control of font to use during engraving actions using the M96 command.

2.0.0.78 September 9, 2011 Added board connection documentation back into this manual, to better explain use of the IO connector to drive auxiliary devices. Updated engraving tool to lift Z axis (if home enabled) when moving between key locations

2.0.0.79 September 16, 2011

Corrected error in application -- failed to actually send the User Init string.

Page 6: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Product Safety Warnings Page 6

SimplexCNC Application Peter Norberg Consulting, Inc.

Product Safety Warnings

The SD4D series of controllers can get hot enough to burn skin if touched, depending on the voltages and currents used in a given application. Care must always be taken when handling the product to avoid touching the board or its installed components, until the board has cooled down completely. Always allow adequate time for the board to “cool down”

after use, and fully disconnect it from any power supply before handling it.

The board itself must not be placed near any flammable item, as it can generate significant heat. There exist several components on the bottom side of the board that can get quite hot; therefore, the board must be correctly mounted using stand-offs.

Note also that the product is not protected against static electricity. Its components can be damaged simply by touching the board when you have a “static charge” built up on your body. Such damage is not covered under either the satisfaction guarantee or the product warranty.

Please be certain to safely “discharge” yourself before handling any of the boards or components.

Always use a correctly grounded power supply to power the system. Failure to do so may cause dangerous voltages to exist on the board, and thus may cause damage or injury to anything connected to the product, including people!

LIFE SUPPORT POLICY

Due to the components used in the products (such as National Semiconductor Corporation,

and others), Peter Norberg Consulting, Inc.'s products are not authorized for use in life support devices or systems, or in devices that can cause any form of personal injury if a failure occurred.

Note that National Semiconductor states "Life support devices or systems are devices which (a) are intended for surgical implant within the body, or (b) support or sustain life, and in whose failure to perform when properly used in accordance with instructions or use provided in the labeling, can be reasonably expected to result in a significant injury to the user". For a

more detailed set of such policies, please contact National Semiconductor Corporation.

Page 7: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Introduction and Product Summary Page 7

SimplexCNC Application Peter Norberg Consulting, Inc.

Introduction and Product Summary

Full details of connecting and testing your SD4D series (SD4DG, SD4DEU, SD4DEI) controller board are available from within its hardware and firmware reference manual, SD4DNCRouter.pdf.

Full details of connecting and testing your SD4DP controller board are available from within its

hardware and firmware reference manual, SD4DFifoNCStepper.pdf.

The SimplexCNC application software is designed to operate up to 4 stepper motors, along with 1 DAC if available (usually used to define the spin rate for one DC motor), via a variant of the G-Code language.

Page 8: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 8

SimplexCNC Application Peter Norberg Consulting, Inc.

SimplexCNC Application Summary

The SimplexCNC application is designed to make thorough use of the capabilities of the SD4D and SD4DP series of boards, allowing control of 3 linear stages of motion (X, Y and Z) as well as a rotational stage (using the „W‟ motor connection). Additionally, on the SD4DP, one of the two 0-5 volt DAC outputs may be used to control the spin rate of a voltage-programmable DC

(or AC) motor through use of the „S‟ memory location. You will probably need an external speed controller to take voltage output and scale it to operate the external motor.

When the application is started, it first scans for the presence of our SD4DP board with the appropriate firmware. If the board is not detected, then the code will allow you to view your GCODE files as well as to configure the intended use of the application.

The main application page can appear as follows:

Almost all of your interaction with the system will be through this page, once you have configured your particular installation.

From this screen, you can request loading of new GCODE files, edit the existing GCODE file, preview the run, manually move the motors, control mist and spindle operation, and actually run the complete GCODE application.

Page 9: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 9

SimplexCNC Application Peter Norberg Consulting, Inc.

The other main interactive screen of the code is the preferences section, reached through the „Edit->Preferences‟ drop-down menu, and appears as follows:

This screen is used to define how the application makes use of the SD4DP controller board to

actually run your CNC machinery. This screen is critical to correct operation of your system, since it controls the scaling between internal machine units and user-units (inches or

millimeters), presence and polarity of limit switch inputs, as well as various other details relating to control of your system.

This manual will start by going through the details of configuring the application using the above preferences screen, followed by a detailed explanation of use of the main control screen.

Page 10: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 10

SimplexCNC Application Peter Norberg Consulting, Inc.

Configuring your system using the Preferences Screen

The preferences section is reached through the „Edit->Preferences‟ drop-down menu on the main screen, and appears as follows:

This page is used to tell the application how your system is physically configured, so that it

can correctly interpret your GCODE application requests. It shall be discussed here one section at time, roughly from top to bottom.

Setting your “Machine Units”

The “Machine Units” preference tells the application to interpret number values either in

inches (shown) or millimeters. Select which style fits your needs; the code will automatically rescale all of the other parameters on the screen to be in the appropriate form.

Page 11: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 11

SimplexCNC Application Peter Norberg Consulting, Inc.

Loading and saving the machine settings

Press the “File” menu to get to a screen that allows you to load and save the machine-specific portions of the configuration. The resulting screen appears as:

To load a new configuration, select the „Load Pre-Configured Settings…” menu item. This will bring up a file open dialog, to allow you to select a new machine configuration file to load. The settings in the preference screen will be reset to those in the requested file. To „back out‟ of the new settings, simply press the „Cancel‟ button on the main preferences screen.

To save the current configuration, select the „Save Current Setting as a Configuration…” menu item, which will bring up a file dialog for you to use to save the settings. Type in

the name under which you want the settings to appear, and press the “Save” button to save the settings.

Page 12: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 12

SimplexCNC Application Peter Norberg Consulting, Inc.

X, Y, Z Axis Settings

The X, Y and Z axis settings are used to define exactly how your motors are scaled into your preferred units (inches or millimeters). The code uses these values to scale all requests sent to the controller, and must be correct in order to generate correctly sized results.

The fields available for each separate motor are:

Resolution

This field tells the code how many steps of your motor system (which will be dependent on your actual motor driver microstep setting, the resolution of the motor itself, and your drive train) are needed per inch or millimeter (as set in the “Machine Units” selection).

For example, if you:

have a 200 step/revolution motor,

an a 10 turn/inch gear train

have a Gecko drive with 10 microsteps/step

then your „resolution‟ would be 200 (steps/motor revolution) * 10 (turns/inch) * 10 (microsteps/step), or 20,000 steps/inch.

Backlash

This field allows you to tell the system how much motor/gear train backlash there is in

your system. When you reverse a motor‟s direction of spin, most systems have enough „give‟ in their gear train to actually require several steps of motor motion to occur before real physical motion occurs. This setting is used to tell the code how much your particular drive train requires, so that it can correctly reach the same physical location from either direction of travel.

Home Over Run

The „Home Over Run‟ setting informs the code of the distance from where the limit

switch sensor triggers and where you want true physical end of travel. You should set this value to be slightly less than that maximum distance: it is used by the code to calculate the maximum rate at which the homing function may be accomplished without physically hitting the end-stops.

This setting is ignored for a given motor if there are no limit switches enabled.

Page 13: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 13

SimplexCNC Application Peter Norberg Consulting, Inc.

Limit –

This setting tells the code whether there is a “-“ motion limit switch, and whether it is wired as “low/closed” = at limit, or “high/open” = at limit.

„Low‟ means „low/closed‟ is a limit event,

„High‟ means „high/open‟ is a limit event

Limit +

This setting tells the code whether there is a “+“ motion limit switch, and whether it is wired as “low/closed” = at limit, or “high/open” = at limit.

„Low‟ means „low/closed‟ is a limit event,

„High‟ means „high/open‟ is a limit event

Home

This setting identifies which limit is to be used as the “auto-home” detector.

N/A means neither

Minus means use the „-„ limit

Plus means use the „+‟ limit

If this is set to use of either the „-„ or „+‟ limit, then the “HOME” button will be available on the main screen in order to force the system to automatically seek to the indicated

limit (to “home” the machine).

Machine Origin

If you have „homing‟ enabled (see the „Home‟ setting, above). then the “Machine Origin” defines the distance to come off the limit switch after homing the axis. This position is then defined as the origin (zero point) for that axis.

Note that the sum of the “Machine Origin” setting and the “Home Over Run” setting equals the physical distance from the end-stop at which the origin will be defined.

Max Travel

If you have „homing‟ enabled (see the „Home‟ setting, above), then the “Max travel” field will appear on the screen. This field defines the maximum distance to the „other limit‟ (soft limits). The code uses this to help prevent overrun requests.

Page 14: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 14

SimplexCNC Application Peter Norberg Consulting, Inc.

A Axis

This section defines the settings for the rotational axis, connected to motor „W‟ on the SD4DP.

Resolution Step/Deg

This describes the number of (micro)steps per degree of rotation.

For example, if you:

have a 200 step/revolution motor,

an a 10:1 gear reducer

have a Gecko drive with 10 microsteps/step

then you would have be 200 (steps/motor revolution) * 10 (gear reduction) * 10 (microsteps/step), or 20,000 (micro)steps per full revolution.

Since there are 360 degrees in a revolution, there would be 20000/360 or 55.5555

steps/degree.

Axis of Rotation

This allows you to select how the mechanics of the system are arranged.

None – The A axis is independent, and does not affect the geometry of cutter motion.

X, Y, or Z – The selected axis is the axis of rotation, and thus affects the geometry of cutter motion.

Angular Rate Modifier

This is a scale factor to apply to the run rate, to scale equivalent motion on the A axis

(since GCode does not support specifying a separate feed rate for this axis).

When the A axis is used as a rotary axis, the units are in degrees. Since the X, Y and Z axis are in inches or millimeters, the time it would take to rotate the A axis one turn would be same as moving the X,Y or Z 360 units. If the feed rate is 10 then it would

take 36 minutes to make the move. This issue only occurs if A is the dominate axis (that is to say, if A is the axis which “numerically” would need to move the furthest distance on a given move. If the "Angular Rate Modifier" is set to 10 then the move would take

3.6 minutes. Please note that, in setting this rate, one must consider the tangent velocity.

Page 15: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 15

SimplexCNC Application Peter Norberg Consulting, Inc.

Base Rates

This section defines the standard rates required for safe operation of your machine.

Start Speed

This is the start/stop speed for all motors, and is the rate at which all motion is normally started (and stopped). Setting this to too low of a value will make your system run more

slowly than you would like, since the system must accelerate from this rate to your feed rate. Setting this to too large of a value will generate uneven cuts, and may miss steps if your system does not have the torque to start out that quickly.

Maximum Speed

This is the maximum speed that the system is permitted to attempt to travel. As stepper motors move faster, they lose torque. Eventually, they reach a rate wherein they have inadequate torque to reliably move the mechanics – and they start missing

steps. This rate should be less than that rate, since otherwise you will get incorrect cuts.

Max Rate Change

This defines the maximum rate at which the system can go from one rate to the next, and is a function of your motor‟s capabilities in combination with your mechanics.

This is used to control how the code “breaks up” complex curves. Sometimes, when attempting to follow a requested path, a new rate for a motor will be too large of a jump

for the motors to be able to execute. If that is the case, the code will actually stop the motion, and then restart in the new direction.

Acceleration

This defines the normal rate that you want to use when going between different feed rates.

Max Spindle Speed

This defines the maximum rotational rate of your spindle when the onboard DAC is set to

5 volts. For example, a “Max Spindle Speed” of 1400 would mean that a 5 volt signal from Dac 0 (“DC0”) makes the spindle spin at 1400 RPM.

SD4D user initialization string

This is a string used to send special initialization sequences to the SD4D controller that are beyond the normal capabilities of the SimplexCNC application. Leave this field blank unless you are told to place some specific string into it by a technician from Peter Norberg Consulting, Inc.

The most common use of this field is to force the pulse width of the controller to match the characteristics of your motor driver. Depending on the controller, the default pulse width is 6.7 to 10.2 microseconds; the 'N' command may be used here to adjust this to match your needs.

Page 16: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 16

SimplexCNC Application Peter Norberg Consulting, Inc.

Chord Length

This tells the code how precisely it needs to draw curves. In reality, the system draws all curves as a series of very short straight lines, called “chords”. This section of the panel defines how long one chord is going to be.

Also, when performing actual motion control, you can either set motion priority as follows:

Speed: If selected, the code could literally „cut corners‟ in order to keep the motor rates of change within requirements.

Path: If selected, the code will slow down as needed in order to stay on path.

OK/Cancel

Press OK if you have made changes that you want the system to accept.

Press Cancel if you do not want any changes that you made to become permanent.

Page 17: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 17

SimplexCNC Application Peter Norberg Consulting, Inc.

Operating your system with the main screen

The main application page appears as follows:

If you have enabled any of the motors to operate in “homing mode” through enabling the

feature as described in the section entitled “Home”, then the „Home” button will appear on the Main screen as part of the control block near the bottom center:

Your normal operation would be to:

1. Open a GCODE file for processing

2. Observe that the preview panel correctly shows your intended pattern

3. Start the run by pressing „Cycle Start‟

4. Observe the run being highlighted on the preview screen

5. When the run completes, the system returns to being ready to run the same GCODE file again

The page is interpreted as is shown in the following sections of this manual.

Page 18: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 18

SimplexCNC Application Peter Norberg Consulting, Inc.

Menu Options

The menus near the top of the main window control access to files, preferences, as well as allowing you to see what the appearance is of the currently loaded GCODE file.

File menu

The „File‟ menu allows you to manage your GCODE source files.

New – Create a new, empty GCODE source

Open… – Open an existing GCODE source

Import DXF File – Import a DXF file, converting it to GCODE. Please see the

later section on DXF File import for details.

Save – Replace the currently open GCODE source file with any new content shown on the edit window.

Save As… – Save the currently open GCODE source file into a new file

Output Log File – When checked, a diagnostic log file will be generated which can help us trace any control problems you may be having

The “Import DXF File” action allows you to import and convert many DXF files into GCODE files. It brings up the following import display:

These parameters are used to fine-tune how the code treats separate lines within the

DXF file as follows:

Travel Height – Position of the Z axis while moving from one line to the next

Cut depth – Position of the Z axis while moving within one line

Feed rate – Cutting speed (in your default units) while moving

Same point – If line end points are closer together than this value, the lines are treated as one line: that is to say, the cutter will not be lifted during the move.

Position – Specifies where the cutting path should be positioned.

Page 19: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 19

SimplexCNC Application Peter Norberg Consulting, Inc.

Edit menu

The „Edit‟ menu gives you access to three separate subsystems within the SimplexCNC application.

The Cut, Copy, Paste, Find and Replace actions support direct editing within the currently

open GCODE source window.

Cut deletes the currently highlighted text within the GCODE window

Copy duplicates the currently highlighted text into the clipboard

Paste replicates the clipboard content into the current curser location within the GCODE source

Find allows you to locate text within the GCODE source

Replace allows to you automatically search and then interactively replace text

with the GCODE source.

Engraving Font allows you to select the font to use when the M96 command is performing an engraving action

The „Preferences‟ section provides access to the mappings between user-coordinates and

the „real‟ low-level device control required to actually run your machine. This brings up the „Preferences‟ window as documented here.

Page 20: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 20

SimplexCNC Application Peter Norberg Consulting, Inc.

„Work Offsets‟ brings up the „Work Offsets‟ window, shown below.

This allows you to define the values for each of the standard GCODE offset fields.

The system also allows you to select which of the various offset fields gets automatically redefined when you press the „ZERO‟ button in the main screen. This is quite useful for

defining standard template offsets: you first HOME your machine, then manually jog to the correct start point on the template. You then zero each motor – the default work offset will now contain the location of the template start point relative to the „home‟ position.

The „Subprogram Library‟ allows you to manage your library of complete GCODE

subprograms, bringing up the following display:

This panel is described later, in the section entitled “Library Manager”.

Page 21: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 21

SimplexCNC Application Peter Norberg Consulting, Inc.

'Engraving Font' allows you to select the font to use when the M96 command is performing an engraving action. The system font dialog appears, which is used to

perform the selection:

Messages menu

This allows you to save a copy of the current contents of the messages window (for a customer support engineer to review), and to clear that window.

Preview

Pressing the „Preview‟ menu will regenerate the preview window on the screen, showing

you the actions that will be performed by the currently loaded GCODE file.

Page 22: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 22

SimplexCNC Application Peter Norberg Consulting, Inc.

Motor Locations

This panel shows the current locations for each of the motors, the current rate of motion of the machine (the “Feed Rate”), and the duration of the current run.

You may redefine the current location of any motor to be “0” by pressing its associated “ZERO” button.

GCode Source Panel

This panel shows the current GCODE file source, and allows you to edit the file before the run starts.

A new file may be loaded through use of the “File->Open” pull-down menu, and the file may be saved (as a replacement operation) through use of the “File->Save” menu. If you select “File->Save As…”, then you may save the GCode file under a different name.

Messages

This panel shows you the current state of the system, and keeps you informed as to the current actions being performed by the code.

Page 23: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 23

SimplexCNC Application Peter Norberg Consulting, Inc.

Preview Panel

This panel shows you a plot of the current GCode file. You may change the orientation by moving the XY and YZ sliders (as well as returning to default orientations by pressing the 0/90 and 30/45 buttons).

The „0/90” button gives you a standard “direct down” view of just the X,Y plane.

The “30/45” button gives you more of a 3D view, with all planes slightly offset to allow you to see the entire motion of the cutter.

The A slider allows you to rotate the rotary axis.

The “Modify Draw” checkbox allows the display to alternate between two colors when the preview drawing appears as a solid color. This can make it easier to interpret the preview display.

Page 24: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 24

SimplexCNC Application Peter Norberg Consulting, Inc.

As of version 1.2.0.105, a 3-D preview mode is available, using three extra fields.

If “Show Surface” is checked, then the code will attempt to show you the image with a surface draw, instead of just the lines. This mode is only available if no rotations are being done by the „A‟ axis.

In the above example (after changing the orientation a bit), the display could appear as:

The “Mill Type” drop-down selects the type of bit used to do the cutting, which affects the view. Select the bit type which most closely matches that which you will be using. The “Top of Surface” edit field adjusts the expected relative height of the surface; this controls the size of box which is used by the firmware in generating the above image.

Page 25: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 25

SimplexCNC Application Peter Norberg Consulting, Inc.

Manual Data Input

This field allows you to execute one GCODE command at a time. Type in the command, then press the “Execute” button.

The drop down list will show at most the last 12 commands that you have entered, and allows you to select any of those commands to be executed again. You may also right-click on any command to save it or to delete it from the list.

Tool

This allows you to specify the size of the cutting tool.

Main control buttons

If homing is enabled for your system, the bottom 3 buttons get a new „Home‟ button

added, as:

These buttons allow you to actually control the run.

The blue buttons (Spindle, Flood, Mist and AUX) let you enable or disable their associated function (such as turning the cooling mist on or off).

The “Limits” box is used to show whether you have actuated a limit during a motion event.

The three (or four) large buttons are used to actually control a complete run:

Cycle Start is used to start a run, and to show that it is under way

Feed Hold is used to pause the run, so that you may make adjustments to the machine (during a feed hold, no motion commands are accepted). To exit feed

hold and continue the run, just press the Feed Hold button again.

STOP is used to stop the run in progress. It will also cancel any Feed Hold that is

active.

HOME (appears only if enabled on any motor) causes the system to automatically go to the „home‟ location for each motor on which it is enabled.

Page 26: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 26

SimplexCNC Application Peter Norberg Consulting, Inc.

Incremental (toggles jog mode)

The “Incremental” label is actually a push-to-lock button: when it is depressed (pushed),

the jog controls operate one “step” at a time (pre press of the associated jog button), with the motion size being that listed in the drop-down edit menu under the “Incremental” label. When it is not depressed, the jog controls request motion in their associated direction at the rate specified by the jog speed slider.

The units for both the “incremental” mode and the jog speed slider are set in the preferences screen.

Jog Control

This panel allows you to manually “jog” the motors into a better position. You can adjust

the slider to set the rate of motion while jogging.

The actual jog mode is controlled by the “Incremental” push-to-lock-button (above). While the button is depressed, each press of a jog button moves the motor one

“incremental” unit in the direction requested. While the button is not depressed, pressing and holding a jog button causes the indicated motor to move in the indicated direction at the requested jog rate.

Page 27: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 27

SimplexCNC Application Peter Norberg Consulting, Inc.

Library Manager

The “Library Manager” is reached from the „Edit->Subprogram Library‟ menu. Visually, it consists of the following window:

This window allows you to edit and create your own list of separate GCODE function libraries,

to simplify the task of managing complex applications.

The library functions are designed to be called by either (or both) of two ways:

“M98 #” can be used to call a function whose name is the purely numeric „#‟ (the code automatically 0-fills the number, so that “M98 P12” is the same as “M98 P00000012”). This is the historical method of calling external functions.

“Call function” where „function‟ is the name of the requested procedure from the library. The function can be purely numeric, or it can be a standard name. Note that, unlike the “M98” call, the “Call function” technique will NOT 0-fill purely numeric

names.

Example use of a library function

As a simple example, you could define the following library procedure “Star5pt” (which will be saved in the „My Documents\SimplexCNC\Library\Star5pt.mem” file):

// Star

G00X0Y0Z0.1

:Rad = 0.5

:Ang = 18

:X = Cos(Ang) * Rad

:Y = Sin(Ang) * Rad

G00X[X]Y[Y]

G01Z-0.1F8

StartLoop 5

:Ang = Ang + 144

:X = Cos(Ang) * Rad

Page 28: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SimplexCNC Application Summary Page 28

SimplexCNC Application Peter Norberg Consulting, Inc.

:Y = Sin(Ang) * Rad

G01X[X]Y[Y]

EndLoop

G00Z0.1

G00X0Y0

You could then call that procedure from your standard GCODE file as is shown in the sample “CircleOfStars.t” GCODE file:

( Circle of Stars )

G90

m3 s1000

G00Z0.1

G00X0Y0

:A = 0

:R = 1.625;

StartLoop 12

:XX = Cos(A) * R

:YY = Sin(A) * R

G00X[XX]Y[YY]

G92X0Y0

G68X0Y0R[A-90]

Call Star5pt

G69

G92.2

:A = A + 30

EndLoop

G00X0Y0

M30

When you run the above code, it will automatically load the “Star5pt” file from your SimplexCNC\Library, and will call it as part of the drawing procedure to generate the following result:

Page 29: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

GCode Implementation Page 29

SimplexCNC Application Peter Norberg Consulting, Inc.

GCode Implementation

The SimplexCNC application implements the following GCODE commands.

Implemented G Words

Some G words alter the state of the machine so that it changes from cutting straight lines to cutting arcs. Other G words cause the interpretation of numbers as millimeters rather than inches. While still others set or remove tool length or diameter offsets. Most of the G words

tend to be related to motion or sets of motions.

G0

Rapid positioning Form : G0 X0 Y0 Z0 A0

G0 is a modal command. It moves at the maximum rate specified by your configuration settings.

G1

Linear interpolation Form : G1 X0 Y0 Z0 A0

G1 is a modal command. It uses the feed rate for motion control.

G2

Circular/helical interpolation (clockwise) Form : G2 X1 Y0 I1 J0 (XY plane)

G2 X1 Z0 I0 K1 (XZ plane) G1 Y0 Z1 J1 K0 (YZ plane) G2 X1 Y0 R1

G2 is a modal command . The default plane for the circular motion to

take place is the XY plane(See G17). The X, Y and Z words defines the ending position for each of axis‟s. In the XY plane all three axis‟s can be specified, creating a helical move.

There are two ways of defining an arc. The first is with the I, J and K words. The I word specifies the X

distance to the center of the arc from the current position, J the Y distance and K the Z distance.

The second is with the R word. The R word specifies the radius of the

arc.

G3 Circular/helical interpolation (counter-clockwise)

Same as G2.

G4

Dwell Form : G4 P2

This command will cause the motion to pause for the number seconds

specified. The P word is used to specify the delay in seconds.

G17

XY plane selection Form : G17

Selects the XY plane for the circular/helical moves.

Page 30: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

GCode Implementation Page 30

SimplexCNC Application Peter Norberg Consulting, Inc.

G18

XZ plane selection Form : G18

Selects the XZ plane for the circular/helical moves.

G19

YZ plane selection Form : G19

Selects the YZ plane for the circular/helical moves.

G20

Imperial system selection Form : G20

Positions entered will be interpreted as inches.

G21

Metric system selection Form : G21

Positions entered will be interpreted as millimeters.

G40

Cancel cutter diameter compensation Form : G40

G41

Start cutter diameter compensation left Form : G41

This command will offset the cutter path by ½ the cutter diameter.

The offset will be to the left to the direction of travel. This program queues all the movement commands until the G40 command is encountered. The necessary calculations are made and the modified path is generated. Scaling, Mirroring and Rotation commands can not be issued

between the G42 and G40.

G42

Start cutter diameter compensation right Form : G42

This command will offset the cutter path by ½ the cutter diameter. The offset will be to the right to the direction of travel. This program

queues all the movement commands until the G40 command is encountered. The necessary calculations are made and the modified path is generated. Scaling, Mirroring and Rotation commands cannot be issued between the G42 and G40.

G50 Scaling function cancel Form : G50

Page 31: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

GCode Implementation Page 31

SimplexCNC Application Peter Norberg Consulting, Inc.

G51

Scaling function Form : G51 X0 Y0 Z0 I2 J1.5 Z0.5 G51 X0 Y0 Z0 P2

The scaling command uses the X, Y and Z words to specify the center

of scaling. If the X, Y or Z word isn‟t specified then the current position will be used. The I, J and K words specify the scaling value. If all axis‟s are to be scaled the same, then the P word can be used to specify the scaling. The scaling command will effect the G2 and G3. If the scaling is different for the two axis‟s in the circular move, an elliptical move will be made.

The scaling command can also mirror positions by setting the scaling

factor to a negative value.

G54 Work coordinate offset 1 Form : G54

G55 Work coordinate offset 2 Form : G55

G56 Work coordinate offset 3 Form : G56

G57 Work coordinate offset 4 Form : G57

G58 Work coordinate offset 5 Form : G58

G59 Work coordinate offset 6 Form : G59

G59.1 Work coordinate offset 7 Form : G59.1

G59.2 Work coordinate offset 8 Form : G59.2

G59.3 Work coordinate offset 9 Form : G59.3

G68

Rotate Plane Form : G68 X0 Y0 R45

The coordinates of the cutter path will be rotate in the XY plane (G17) only. The X and Y words specify the center of rotation. The R word specifies the angle of rotation in degrees.

G68.1

Mirror X Form : G68.1 X0

The X word is used to set the point about which the X values will be mirrored. The scaling command (G51) can also be used.

Page 32: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

GCode Implementation Page 32

SimplexCNC Application Peter Norberg Consulting, Inc.

G68.2

Mirror Y Form : G68.2 Y0

The Y word is used to set the point about which the Y values will be mirrored. The scaling command (G51) can also be used.

G69 Cancel Rotation Form : G69

G69.1 Cancel Mirror X Form : G69.1

G69.2 Cancel Mirror Y Form : G69.2

G80 Cancel motion mode (includes canned) Form : G80

G81

Drilling canned cycle Form : G81 X1 Y2 R0.1 Z-1 F5 1) Rapid motion to XY position 2) Rapid motion to R level 3) Feed rate motion to Z depth

4) Rapid retract to R level

G82

Drilling with dwell canned cycle Form : G82 X1 Y2 R0.1 Z-1 P0.1 F5 1) Rapid motion to XY position 2) Rapid motion to R level 3) Feed rate motion to Z depth

4) Dwell at depth - millisecond (P)

5) Rapid retract to R level

G83

Chip-breaking drilling canned cycle Form : G83 X1 Y2 R0.1 Z-1 Q0.1 F5 1) Rapid motion to XY position 2) Rapid motion to R level 3) Feed rate motion to Z depth by the amount of Q 4) Rapid retract to R level 5) Rapid motion to previous depth

6) Steps (3,4,5) repeated until Z depth is reached 7) Rapid retract to R level

G85

Boring, no dwell, feed out canned cycle Form : G85 X1 Y2 R0.1 Z-1 F5

1) Rapid motion to XY position 2) Rapid motion to R level 3) Feed rate motion to Z depth

4) Feed rate retract to R level

Page 33: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

GCode Implementation Page 33

SimplexCNC Application Peter Norberg Consulting, Inc.

G89

Boring, dwell, feed out canned cycle Form : G89 X1 Y2 R0.1 Z-1 P0.1 F5 1) Rapid motion to XY position

2) Rapid motion to R level 3) Feed rate motion to Z depth 4) Dwell at depth - millisecond (P) 5) Feed rate retract to R level

G90 Absolute distance mode

G91 Incremental distance mode

G92 Offset coordinate systems

G92.2 Cancel offset coordinate systems

Miscellaneous Words

M words are used to control many of the I/O functions of a machine. M words can start the

spindle and turn on mist or flood coolant. M words also signal the end of a program or a stop within a program.

M0 Program stop - See extended notes (below)

M1 Optional program stop

M2 Program end

M3 Turn spindle clockwise

M4 Turn spindle counterclockwise

M5 Stop spindle turning

M7 Mist coolant on

M8 Flood coolant on

M9 Mist and flood coolant off

M10 Auxiliary Device On

M11 Auxiliary Device Off

M30 Program end, pallet shuttle, and reset

M96

Outputs a text outline path (engraves text). Form: M96 (text) Xn Yn Zn In Jn Rn

The (text) is specified as a comment. Xn and Yn define the lower left corner of the starting point.

Zn defines the depth of the cut In is optional. If present, it defines the width (length) of the text. If

In is not defined or is 0, then the length will be based on the font's proportion.

Jn defines the height of the text Rn defines the retract Z position to use in the non-cut parts of the

engraving.

Page 34: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

GCode Implementation Page 34

SimplexCNC Application Peter Norberg Consulting, Inc.

M0 allows pause/restart action

M0 (Program Stop) has the capability of allowing a program to be restarted. M0 stops the motion, but allows the machine to be jogged while the machine is stopped. When the machine is restarted, it automatically returns to the X, Y and Z position that were active at the point when it was paused, at which point the program gets resumed.

The M0 behavior on a restart depends on whether the machine has been homed:

If it was homed, then the software will move the Z axis all of the way up before it does the return to the X, Y and Z position, so as to not cut a path

If it was not homed, then the machine will not do this Z axis clearing move first. Note that this might cause a collision with the walls of your cut!

Page 35: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

GCode Implementation Page 35

SimplexCNC Application Peter Norberg Consulting, Inc.

Special Drill Commands (G81, G82, G83)

The SimplexCNC application supports 3 special drilling cycles. As a very simple summary, the cycles are implemented as follows:

G81 - Drilling Canned Cycle

G81 X.. Y.. R.. Z.. F..

1. Rapid motion to XY position

2. Rapid motion to R level

3. Feedrate motion to Z depth

4. Rapid retract to R level

G82 - Spot Drilling Cycle (also called the „Drilling with dwell canned cycle‟)

G82 X.. Y.. R.. Z.. P.. F..

1. Rapid motion to XY position

2. Rapid motion to R level

3. Feedrate motion to Z depth

4. Dwell at depth - millisecond (P..)

5. Rapid retract to R level

G83 - Deep Hole Drilling Cycle

G83 X.. Y.. R.. Z.. Q.. F..

1. Rapid motion to XY position

2. Rapid motion to R level

3. Feedrate motion to Z depth by the amount of Q

4. Rapid retract to R level

5. Rapid motion to previous depth

6. Steps (3,4,5) repeated until Z depth is reached

7. Rapid retract to R level

Page 36: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

GCode Implementation Page 36

SimplexCNC Application Peter Norberg Consulting, Inc.

Non Standard Functionality

The SimplexCNC application provides for some non-standard extensions, in order to support programming full sequences without the need for an external GCODE generator.

:debug/:nodebug

These directives cause the system to output diagnostic information to the message window, allowing you to view intermediate values while the code is being executed. This is particularly useful in identifying incorrectly named variables, since the code will

automatically assume any variable name is valid, and will preassign it a value of 0 when it is first referenced.

STARTLOOP / ENDLOOP

These directives are used to repeat a group of code.

STARTLOOP n

….

ENDLOOP

The n on the STARTLOOP line is the loop count.

Extended Interpreter Functions

Embedded in the GCODE processor is an interpreter that can process the following

functions:

ABS(v) Absolute Value

ACOS(v) Arc Cosine

ASIN(v) Arc Sine

ATAN(dy, dx) Arc Tangent

COS(v) Cosine

EXP(v) Exponent (natural, based on „e‟)

FRAC(v) returns the fractional part of a number

INT(v) returns the whole part of a number

LN(v) natural log (based on „e‟)

ROUND(v) round the number

SIN(v) Sine

SQR(v) squares the number

SQRT(v) find the square root of a number

The interpreter also accepts the following operators:

+ plus

- minus

Page 37: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

GCode Implementation Page 37

SimplexCNC Application Peter Norberg Consulting, Inc.

/ divide

* multiply

^ power.

Lines that are meant for the interpreter must start with a “:”.

Values calculated with the interpreter are inserted into the

G code commands with “[“ and “]”. See example below.

Example:

G90

G00Z0.5 G00X0y0 G01Z-0.5F5

:X= 0 StartLoop 361 G01 X[x/40] Y[Sin(x)*2] :X = X + 1 EndLoop

G00Z0.5 G00X0Y0 M30

Diagnostic Support Log

The SimplexCNC application always generates a diagnostic support log, to be used when you have an unexpected issue that needs to be reported to customer service. The file is created in your

“My Documents\SimplexCNC”

folder, and is called

“LOGFILE.TXT”

If the customer support engineer requests it, you will need to send this complete log (as well as your actual GCode file) to Peter Norberg Consulting as part of the problem determination procedure. We would strongly suggest that you compress it before sending it, since it can be

extremely large, depending on its contents. If you do not have a compression tool, please

contact technical support for suggestions.

Page 38: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SD4DP/SD4D Series Board Connections Page 38

SimplexCNC Application Peter Norberg Consulting, Inc.

SD4DP/SD4D Series Board Connections

The SimplexCNC application runs on both the SD4DP and SD4D series of boards.

An example of the SD4DP board is shown below.

Above is the SD4DP with Amp MTA-100 connectors

Above is the SD4D with screw terminal connectors

Above is the SD4DG with Amp MTA-100 connectors

Above is the SD4DEI with Amp MTA-100 connectors

Page 39: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

SD4DP/SD4D Series Board Connections Page 39

SimplexCNC Application Peter Norberg Consulting, Inc.

Above is the SD4DEU with Amp MTA-100 connectors

Board Size

The boards, oriented as shown above, are 3 inches wide by 1.6 inches high.

Mounting Requirements

The SD4DP mounting holes are 0.125 inches in diameter, and are positioned exactly 0.125 inches in from each corner. They allow up to a number 5 screw, which thus allows use of the standard #4 mounting spacers. Horizontally, their centers are 2.75 inches apart, and vertically they are 1.35 inches apart. Thus, when the board is positioned as shown above,

their positions are: (0.125, 0.125), (2.875, 0.125), (0.125, 1.475), (2.875, 1.475)

Cooling Requirements

Normally, the board does not require any special cooling. However, if you use the +5V power outputs from the board for driving your own circuits and if you are supplying 6.5 to 15 volts as

your power source to the board, then you will want to fan-cool the board if you are going to be drawing more than about 100 mA of power.

You may also need to provide for board cooling if you are driving multiple outputs at 4 mA of current or more. If, in your application, the SX48 seems to be getting too warm, then you need to (1) check your connections to make certain that the 5mA of current/output requirement is not being exceeded, and (2) cool the board.

Fan based cooling should be done such that the airflow is directed toward the top or bottom

surface of the board, centered over the SX48 chip. The fan should provide about 6-10 CFM of air flow. Note that the board includes mounting holes positioned such that a 1.6 inch (40 mm) fan may be directly mounted, through use of two #4 standoffs. If the fan is mounted facing down at the top of the board (which cools the SX48 microprocessor better), use 1 inch standoffs. If mounted facing up at the bottom of the board (which cools the power regulator

better), use ½ inch standoffs.

Page 40: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 40

SimplexCNC Application Peter Norberg Consulting, Inc.

Connection Summary

The set of connectors on the board can be functionally grouped as follows:

Internal board configuration jumpers

USB Communications (either USB connector, or an optional SIP header for internal mounting)

Step-And-Direction outputs to up to four step-and-direction motor drivers

TTL Outputs, used to drive external devices, such as coolant flow

TTL-based input limit sensors, used to protect physical machine limits from being reached

Extra TTL SLEW inputs (on the SD4D series) are not used in the SimplexCNC application.

0-5 volt analog output, used to control external spindle motor controllers

Power connection to and from the board

These are generally grouped on related connectors, in order to simplify wiring.

Hardware Configuration: Board Jumpers

The board firmware has two features that can be configured as startup options through use of a hardware strap.

Jumper R1K: Default Step Pulse Polarity

Normally, we ship the product such that the default operation of the STEP output pulses is OFF-ON-OFF; that is to say a low-going pulse (of user-programmable width) is generated

for each step requested. If the R1K jumper is installed, then this pulse is ON-OFF-ON (high going). The „O‟ command may be used to override the jumper setting.

Jumper S1K: Default Step Direction Level

Normally, we ship the product such that the default operation of the DIRECTION output signals is “OFF=Negative, ON=Positive”. That is to say, when a pulse occurs on the associated step line, the direction line will be OFF if the step is to be negative, or ON if the step is to be positive.

If the S1K jumper is installed, then this operation is reversed: LOW becomes positive, and

HIGH becomes negative. The „O‟ command may be used to override the jumper setting.

There are also two other jumpers that are rarely changed:

Jumper RN: Clock enable

The „RN‟ jumper (on the 5 pin programming header in the middle of the board) must be installed for the controller to run. This connects the clock to the microprocessor, and is

required for correct operation of the system.

Jumper DP: Driver Pullup Voltage Source

If present (this is board artwork dependent), the „DP‟ jumper (in between the Step-And-

Direction and the IO connectors) is used to define the pullup-voltage used for the outputs from the ULN2803 high-current Step-And-Direction output drivers. When the jumper is inserted on the two pins closer to the center of the board (the default, shipped configuration), the pullup voltage is the on-board 5 volt bus. When inserted on the outer two pins, the pullup voltage is the +Vc power input connector. This is used to redefine the output drive voltage to match the needs of your step-and-direction driver board.

Page 41: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 41

SimplexCNC Application Peter Norberg Consulting, Inc.

Connector Signal Pinouts

Above is an example of an SD4DP board

Above is an example of an SD4D series board (the SD4DEU)

There are seven connectors on each SD4DP board, or eight on each SD4D board, given that 2 connectors (CTL and LIM) abut up against each other.

Going from bottom-left to the right, we have:

SX-Key debugger connector (5 pin SIP header in middle of board) and main clock enable („RN‟ jumper)

CTL – Output Power and DAC voltages (+5, GND, DC1 (DAC 1), GND, DC0 (DAC 0) GND.

LIM – TTL Limit Input (GND, LW- to LZ+)

SLEW - SLEW input control (SD4D series only), not used in the SimplexCNC

application

Going from top-left to the right, we have:

PWR – Power and reset connector (upper left)

IO – Generic TTL I/O connector , used to run external devices

STEPS – Step and Direction output connector

USB Serial connector (center right hand side)

Page 42: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 42

SimplexCNC Application Peter Norberg Consulting, Inc.

SX-Key debugger connector

Pin Name Description 1 GND Vss (gnd) for SX-Key

2 +5V +5 for SX-Key

3 OSC2 Oscillator Input 2

4 OSC1 Oscillator Input 1

5 RN Must be jumpered to OSC1 for the board to operate

This connector allows use of the Parallax, Inc.tm SX-Key debugger/programmer product, to reprogram the SX-48 in place. If the SX-Key is used as a debugging device, then

the ‘RN’ jumper MUST BE REMOVED, or damage to the SX-Key may occur!

CTL – Output Power and DAC voltages, SD4DP version

Name Description +5 Access to +5 from the board

GND Ground reference for all signals

DC1 DAC 1 0 to 5 volt output

GND Ground reference for DAC 1

DC0 DAC 0 0 to 5 volt output. This is used with the GCode „S‟ command to drive a spindle.

GND Ground reference for DAC 0

This connector gives access to the board 5 volt regulator output, as well as the two 0 to 5

volt DAC outputs. Note that Dac 0, labeled DC0, is used by the SimplexCNC application to run the spindle, if you have one. 5 volts is mapped by the code into your top spindle speed (i.e., that attained when the DAC is at 5 volts), and all lower speeds are assumed to be linearly scaled from there.

CTL - Board status and TTL Serial, SD4D series version

Name Description +5 Access to +5 from the board

GND Ground reference for all signals

SI INPUT: Raw SX-48 Serial Input (TTL level)

SO OUTPUT: Raw SX-48 Serial Output (TTL Level)

POT Connect to potentiometer to control step rate

RDY Ready/busy output

This connector gives access to the serial control signals for the SX-48, as well as board status and slew rates.

POT is unused when the SD4DNCStepper firmware is installed. In other firmwares, it can be connected to a user-provided potentiometer, to allow manual control of the motor stepping rate.

RDY is normally an informational output that describes the state of “one or more motors

are still stepping”. High means READY/IDLE, low means STEPPING. During processor reset, RDY is sampled as an input –this can be used on some firmware versions to control certain features.

SI and SO are the serial input and serial output (respectively), as seen by the SX-48 chip.

The communication rate is fixed at 19200 baud, no parity, 8 data bits, 1 stop bit.

Page 43: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 43

SimplexCNC Application Peter Norberg Consulting, Inc.

Input Limit Sensors, lines LW- to LZ+

Lines LW- through LZ+ are used by the software to request that the motors begin to stop moving when they reach a hardware-defined positional limit. The interpretation of these signals is controlled by the “X,Y, Z Axis Settings” section of the “Preferences” screen.

The connections are:

Signal Limit Sensed

LW- -W

LW+ +W

LX- -X

LX+ +X

LY- -Y

LY+ +Y

LZ- -Z

LZ+ +Z

The connections may be implemented as momentary switch closures to ground; on the connector, a ground pin is available near the LW- pin. They are fully TTL compatible; therefore driving them from some detection circuit (such as an LED sensor) will work. The

lines are “pulled up” to +5V with a very weak (10-20K) resistor, internal to the SX-48 microcontroller. By default, we also include an additional 1K pullup, to „strengthen‟ the signal: this extra resistor pack may optionally be excluded from the assembly.

The stop requested by a limit switch normally is “soft”; that is to say, the motor will start ramping down to a stop once the limit is reached – it will not stop instantly at the limit point (unless a special firmware option is ordered). It is quite important to know the distance (in steps) between limit switch actuation and the hard mechanical limit of each

motorized axis, and to set the machine settings appropriately.

You may also tell the board whether the limit is considered to be „reached‟ when the associated signal is high or low: this is controlled by the limit sense preference.

It is also possible to order the firmware configured for “instant stop” on the limit switches. As with the „!‟ command, if the firmware is configured with this mode of operation, please

be aware that, in some designs, damage to gear systems can result when such a sudden stop occurs. Use this feature with care!

Page 44: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 44

SimplexCNC Application Peter Norberg Consulting, Inc.

PWR - Power Connector for the SD4DP and all but the SD4DEU

Name Description

+Vc 6.5-15 volts DC, to be regulated by the board

GND Ground for Vc

GND Ground for +5V

+5V Either regulated 5 volts provided by you (do NOT

connect anything to +Vc), or 5 Volt output from the board (max 100 mA draw)

RST RESET- for processor. Pull low to initiate a board reset

There are two ways of powering the logic circuits for any of the boards (both SD4D series

and SD4DP), which can simplify selection of a power supply to use in driving the system.

1. If you have a 6.5 to 15 volt regulated DC power supply, then you can connect that to the +Vc and nearest GND connection. The on-board voltage regulator will regulate this down to 5 volts for use by the board, and will also present the 5 volts at the +5V/GND power connectors for external use (please do not draw more than about 100 mA).

2. If you have a regulated 5 volt DC power source, then you may power the board by

connecting that supply to the +5V and nearest GND connector. In this case, do NOT connect anything to the +Vc; otherwise, you will have our on-board regulator and your +5 power supply both attempting to generate the board 5 volts, which will probably cause failure of our board (and possibly your power supply!). This type of failure is not covered by our warranty.

In both methods of powering our board, it is critical that you use a correctly grounded power supply, and that our GND power signal is also connected to true

earth ground. If you fail to do this, you can have an incorrectly floating power system, which can cause failure of products (including damage to your computer) and can be potentially damaging to you!

The RST input signal provides you with a hardware method of restarting the controller. By momentarily grounding the RST line (or by driving it low with a TTL signal), the board will act as if a power-on request has been made, thus resetting all of its internal states to

match the power-on conditions.

PWR - Power Connector for the SD4DEU

This description is for the SD4DEU board. Please see the prior page for the description of this connector on the SD4D, SD4DG and SD4DEI boards.

Name Description

+Vc 6.5-15 volts DC, to be regulated by the board

GND Ground for Vc

GND Ground for +5V

+5V 5 Volt output from the board (max 100 mA draw)

RST RESET- for processor. Pull low to initiate a board reset

There are three ways of powering the logic circuits for system, which can simplify selection

of a power supply to use in driving the system. There is a 3-position jumper positioned just beside the PWR power connector, as shown below.

Page 45: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 45

SimplexCNC Application Peter Norberg Consulting, Inc.

The positions are labeled as:

USB (short top 2 pins) – Power is provided by the USB system.

5V (short center 2 pins) – You are providing fully regulated 5 volts.

>6.5 (short bottom 2 pins) – You are providing regulated 6.5 to 15 volts.

In both methods of powering our board with your own power supply, it is critical that you use a correctly grounded power supply, and that our GND power signal is also connected to true earth ground. If you fail to do this, you can have an incorrectly floating power system, which can cause failure of products (including damage to your computer) and can be potentially damaging to you!

1. If you have a 6.5 to 15 volt regulated DC power supply, then you can connect that to the +Vc and nearest GND connection, and set the PWR jumper to the “>6.5”

position. The on-board voltage regulator will regulate this down to 5 volts for use by the board, and will also present the 5 volts at the +5V/GND power connectors for external use (please do not draw more than about 100 mA).

2. If you have a regulated 5 volt DC power source, then you may power the board by connecting that supply to the +Vc and nearest GND connector, and set the PWR jumper to the “5V” position. Your 5V source will also be presented at the

+5V/GND connector.

3. If you wish to power the board off of the USB system, place the PWR jumper into the USB position. Do not draw more than 100mA from the +5V pin when this option is selected. Power will be present as long as the USB system from the computer is connected and “awake” – if the computer is placed into its sleep mode, then the board will (mostly) go to sleep, and the +5V will be turned off. Always unplug the USB connector from the board at any time that you

change any wire on the board! As long as the unit is plugged in, it is powered!

The RST input signal provides you with a hardware method of restarting the controller. By momentarily grounding the RST line (or by driving it low with a TTL signal), the board will act as if a power-on request has been made, thus resetting all of its internal states to

match the power-on conditions.

Page 46: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 46

SimplexCNC Application Peter Norberg Consulting, Inc.

IO - TTL Outputs, used for device on/off control

Lines IO0 through IO6/IO7 are usually generic TTL I/O lines, programmable by you to be either input or output. For the SimplexCNC application, they are normally configured as outputs, and are expected to be used to control specific external devices on your system.

Lines IO0 through IO3 are treated by SimplexCNC as outputs, with high (1) being 'on', 0

(low) being 'off'.

You will have to buffer these signals before you use them to drive external electronics! They are simply TTL outputs, and can only drive about 5 mA of current in each output.

Signal Used as

IO0 Spindle

IO1 Flood coolant

IO2 Mist coolant

IO3 Aux device

IO4 <reserved>

IO5 <reserved>

IO6 <reserved>

IO7 Not present on SD4DP

<reserved>

+5 Available on the SD4DP only to

drive your own low current device

(<100 mA)

Page 47: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 47

SimplexCNC Application Peter Norberg Consulting, Inc.

Possible Connections of the IO lines to external 12 volt relays

Note: Since relays are inductive, the 'COM'

connection on the ULN2803 needs to be

connected to the same power suppy that you

use to drive the relay coils. In this example,

it is assumed that you are using 12 volt relays,

and that the 12 volt supply has its ground

shared with the power ground for our board.

The 'COM' signal on the ULN2803 is used as

the voltage limiter point for the diode-protected

outputs of the device

IO4, IO5, and IO6 are not shown connected here.

The current version of SimpleCNC does not make

use of those ports for outputs.

GND

8B

7B

6B

5B

4B

3B

2B

1B

COM

8C

7C

6C

5C

4C

3C

2C

1C

ULN2803A

9

8

7

6

5

4

3

2

1

10

11

12

13

14

15

16

17

18

U1

1

2

3

4

5

6

7

8

9

IO

112V

K1

K2

K3

K4

SPINDLE

FLOOD

MIST

AUX

IO3

IO2

IO1

IO0

GND

+12V

Page 48: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 48

SimplexCNC Application Peter Norberg Consulting, Inc.

STEPS - TTL Step And Direction Signals

Name Description WDR W motor direction

WST W motor steps

XDR X motor direction

XST X motor steps

YDR Y motor direction

YST Y motor steps

ZDR Z motor direction

ZST Z motor steps

GND Logic signal ground

This connector gives access to the actual step-and-direction signals as generated by the

board. The outputs are configured in terms of polarity (high or low true) through use of the R1K and S1K jumpers, as well as through use of the „O‟ command.

By default, these outputs are configured to be compatible with most step-and-direction

motor drivers. The „direction‟ signals define the direction of motor motion each time that an associated „step‟ pulse event occurs.

The outputs are normally buffered through a ULN2803 driver (except for our original SD4D board that uses paper labels on the connectors), which gives you adequate current to

operate the Gecko products without additional external buffering. On some driver and board models (such as the “fool proof” Gecko), you may have to provide pullup resistors to +5 in order to define the signals as TTL compatable. If our board has the 3-pin 'DP' jumper header available and installed (in between the STEPS and IO connector), that shows that you have on-board pullups already installed, and you use the jumper to select the pullup voltage: shorting the two pins towards the inside of the board selects 5 volt

pullup, while the two pins towards the outside of the board select "+Vc" as the pullup source.

The step signals all default to operate as „Float-Pull Low-Float‟; that is to say, a „pulse‟ is defined as a signal which starts as „floating‟ (value defined by your connection/the pullup source), is pulled low to GND for an indicated number of microseconds, and then returns

to a „floating‟ state. If the „S1K‟ jumper is installed at the time that the board is reset or powered on, then this sequence is inverted; the signal starts as being grounded, „floating‟

for an indicated number of microseconds, and then returning to ground.

The direction signals are stable for at least 2 microseconds before the leading edge of the associated step pulse.

Many step-and-direction boards use optically isolated inputs to buffer the incoming signals. You will have to refer to the manufacturer‟s instructions to determine how to wire our ULN2803 driver to those boards. In most cases, our GND signal will be connected to their „common‟, while our signal lines are connected to the appropriate step or direction

inputs. In some cases (such as with Gecko G2O1 or G2O2 drivers), our +5V will need to be connected to their „common‟ (due to the way that they have wired their optical isolators); our step and direction signals will still be connected to their appropriate signal inputs as needed.

You will then have to determine whether the polarity of our step pulses is correct: an

incorrect choice can cause a missed step when a direction change is done, since the

direction signal will be changed during the wrong state of the „pulse‟. Again, you will have to study the motor driver‟s manual to determine the correct settings; feel free to call us with questions, but we will probably need access to a copy of your documentation in order to be able to give you definitive answers.

Page 49: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 49

SimplexCNC Application Peter Norberg Consulting, Inc.

Connection Example 1: SD4D revision 1 to Gecko G2O1 or G2O2 Drivers

The following schematic shows a very simple and inexpensive technique for connecting the SD4D version 1 controller to up to 4 Gecko G2O1 or G2O2 step-and-direction motor drivers. This is what is done directly on the SD4DG, SD4DEI and SD4DEU boards (as shown on later pages) – that is to say, the ULN2803 buffer is already in the circuit

between the microprocessor and the Step and Direction signals on our later SD4D series of boards.

A Radio Shack “Dual General Purpose IC PC Board” (their part number 276-159) can be used as a very inexpensive holder for the ULN2803A, as can their “Grid-Style PC Board” (their part number 276-150).

N.C.

Note: Since the Gecko inputs are

not inductive, the 'COM' connection on

the ULN2803 does not need to be connected

to anything -- that signal is used as the voltage

limiter point for the diode-protected outputs of

the device

Connection of the SD4D controller to four Gecko G2O1 or G2O2 drives

Connect +5V from SD4D PWR connector

to 'COMMON' on Gecko

GND 8B 7B 6B 5B 4B 3B 2B 1B

COM 8C 7C 6C 5C 4C 3C 2C 1C

ULN2803A

9 8 7 6 5 4 3 2 1

10 11 12 13 14 15 16 17 18

U1

1 2 3 4 5 6 7 8 9

STEP

1 PWR

10 j Motor Z

9 i Motor Z

8 h Motor Z

10 j Motor Y

9 i Motor Y

8 h Motor Y

10 j Motor X

9 i Motor X

8 h Motor X

10 j Motor W

9 i Motor W

8 h Motor W

Z-STEP

Z-DIR

Y-STEP

Y-DIR

X-STEP

X-STEP

X-DIR

W-DIR

WDR WST XDR XST YDR YST ZDR ZST GND

+5V

Page 50: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 50

SimplexCNC Application Peter Norberg Consulting, Inc.

Connection Example 2: SD4DP, SD4D, SD4DEI or SD4DEU to Gecko G2O3 Drivers

The following schematic shows how to connect the SD4DP, SD4D, SD4DEI or SD4DEU controller to up to 4 Gecko G2O3 step-and-direction motor drivers, when our board has its own pullups installed. Please refer to connection example 4 for connection of an SD4DG board to the G2O3.

Connect GND from SD4D STEP connector

to 'COMMON' on Gecko

Connection of the SD4D (original) controller to four Gecko G2O3 drives.

Unlike the G2O1 and the G2O2, the G2O3 accepts TTL input signals,

so the original SD4D may directly connect to the G2O3 system.

1 2 3 4 5 6 7 8 9

STEP

10 j Motor Z

9 i Motor Z

8 h Motor Z

10 j Motor Y

9 i Motor Y

8 h Motor Y

10 j Motor X

9 i Motor X

8 h Motor X

10 j Motor W

9 i Motor W

8 h Motor W

WDR

WDR

WST

WST

XDR XDR XST

XST YDR

YDR

YST

YST

ZDR

ZDR

ZST

ZST

GND

GND

Page 51: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 51

SimplexCNC Application Peter Norberg Consulting, Inc.

Connection Example 3: SD4DP, SD4DG, SD4DEI or SD4DEU to Gecko G201 or G2O2 Drivers

The following schematic shows how to connect the SD4DG, SD4DEI or SD4DEU controller

artwork to up to 4 Gecko G2O1 or G2O2 step-and-direction motor drivers.

N.C.

Connect +5V from SD4DG/P PWR connector to 'COMMON' on Gecko

Each output (such as WDR) has a Darlington driver circuit similar to the following:

This means that each output may be modeled as a switch closure to ground: The signal 'floats' when 'Off',

and is grounded when 'On'

Connection of the SD4DG or SD4DP controller to four Gecko G2O1 or G2O2 drives

1 2 3 4 5 6 7 8 9

STEP

1 PWR

10 j Motor Z

9 i Motor Z

8 h Motor Z

10 j Motor Y

9 i Motor Y

8 h Motor Y

10 j Motor X

9 i Motor X

8 h Motor X

10 j Motor W

9 i Motor W

8 h Motor W

Q1

WDR

WDR

WST

WST

XDR XDR XST

XST YDR

YDR

YST

YST

ZDR

ZDR

ZST

ZST

+5V

IN

GND

OUT

Page 52: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 52

SimplexCNC Application Peter Norberg Consulting, Inc.

Connection Example 4: SD4DP, SD4DG to Gecko G203 Drivers

The following schematic shows how to connect the SD4DG or SD4DP controller artwork to up to 4 Gecko G2O3 step-and-direction motor drivers. This example is for use with our older artworks that do not have the pullup resistors installed on them already.

Each output (such as WDR) has a Darlington driver circuit similar to the following:

This means that each output may be modeled as a switch closure to ground: The signal 'floats' when 'Off', and is grounded when 'On'

Connect GND from SD4DG/P SLEW connector to 'COMMON' on Gecko G2O3

Connection of the SD4DG or SD4DP controller to four Gecko G2O3 drives.

Unlike the G2O1 or G2O2, the G2O3 requires TTL input signals. We emulate

this by using 1K pullups on our transistor outputs.

1 2 3 4 5 6 7 8 9

STEP

1 PWR

10 Motor Z j

9 Motor Z i

8 Motor Z h

10 Motor Y j

9 Motor Y i

8 Motor Y h

10 Motor X j

9 Motor X i

8 Motor X h

10 Motor W j

9 Motor W i

8 Motor W h

Q1

1K Res Pack

IN

GND

GND OUT

ZST

ZST

ZDR

ZDR

YST

YST

YDR

YDR

XST XST

XDR XDR WST

WST

WDR

WDR

+5V

Page 53: Information and Instruction Manual for the SimplexCNC ... · the specific manual for the version of the hardware and firmware that you have for the most accurate information for your

Connection Summary Page 53

SimplexCNC Application Peter Norberg Consulting, Inc.

Connection Example 5: SD4DP, SD4DG, SD4DEI or SD4DEU to SMC LC6D Drivers

The following schematic shows how to connect the SD4DP, SD4DG, SD4DEU or SD4DEU controller artwork to up to 4 SMC LC6D step-per-direction motor drivers. You will need to use the „O‟ command to tell the board that the system is to be configured for “step-per-

direction” mode of operation; please contact us for detailed instructions on how to convince SimplexCNC to do this for you!

N.C.

Each output (such as WDR) has a Darlington driver circuit similar to the following:

This means that each output may be modeled as a switch closure to ground: The signal 'floats' when 'Off', and is grounded when 'On'

Connection of the SD4DG or SD4DP controller to four SMC LC6D drivers

Connect +5V from SD4DG/P PWR connector to 'RTN' signals on SMC

1 2 3 4 5 6 7 8 9

STEP

1 PWR

2 Motor Z (CCW RTN)

10 Motor Z (CW)

9 Motor Z (CCW)

2 Motor Y (CCW RTN)

10 Motor Y (CW)

9 Motor Y (CCW)

2 Motor X (CCW RTN)

10 Motor X (CW)

2 Motor W(CCW RTN)

10 Motor W (CW)

9 Motor W (CCW)

Q1

3 Motor X (CW RTN)

3 Motor Y (CW RTN)

3 Motor Z (CW RTN)

9 Motor X (CCW)

3 Motor W (CW RTN)

WDR

WDR

WST

WST

XDR

XDR

XST XST

YDR

YDR

YST

YST

ZDR

ZDR

ZST

ZST

IN

GND

OUT

+5V