Navigation

  • Page 1

    CNC USB ControllerUser manual2011-12-161

  • Page 2

    DisclaimerCONTROLLER AND CONTROLLER SOFTWARE ARE PROVIDED TO YOU "AS IS," WITHOUT WARRANTY. THERE IS NO WARRANTY FOR THE CONTROLLER AND CONTROLLER SOFTWARE, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR...

  • Page 3

    1 Introduction1.1 OverviewThe planet-cnc.com series of USB CNC motion controllers link between a personal computer and motor drivers supporting step/dir control. They are compatible with most drivers. The controllers use the USB port, available on all modern computers and laptops. They can serve ...

  • Page 4

    Optional modules that add a range of functions to the USB CNC Controller series can be used.Adapters simplifies connections to motor drivers, output board adds 3 relays and 0-10V for VFD, MPG pendant adapter adds connectivity to MPG pendants, SD card adapter adds support for running programs with...

  • Page 5

    1.2 Features and specifications:•USB (V2.x) from PC/Laptop running Windows XP, Vista or Windows 7 (32 bit or 64bit) •motor driver connector pin-out is compatible with 10 pin open source interface •controller works with most step/dir motor drivers available on the market •buffered IO for m...

  • Page 6

    1.2.1 Mk1 - 4 axes USB CNC controller•25 kHz maximum step frequency •3 digital outputs (flood, mist, spindle) •12 us minimum pulse width •manual jog input keys for all axes •limit keys for all axes •control external devices with I2C protocol 1.2.2 Mk2 - 9 axes USB CNC controller•100...

  • Page 7

    1.3 System RequirementsMinimum system requirements:•1 GHz or faster processor •512MB RAM•500 MB available hard disk space•DirectX 9 graphics device with WDDM 1.0 or higher driver•USB 2.0 port•.NET Framework 3.5 SP1Recommended system requirements:•2 GHz or faster processor •2GB RAM...

  • Page 8

    2 Hardware2.1 InstallationInstallation of PlanetCNC CNC USB Controller requires a USB equipped PC or laptop along with motor drivers appropriate to the motors in use. The USB CNC controller is compatible with the vast majority of motor drivers that use step/direction signals. Optional support har...

  • Page 9

    2.2 Mk1 - 4 axis CNC USB controller descriptionFeatures:•25 kHz maximum step frequency •3 digital outputs (flood, mist, spindle) •12 us minimum pulse width •manual jog input keys for all axes •limit keys for all axes •control external devices with I2C protocol 9

  • Page 10

    2.2.1 Mk1 MOTOR connectorEach connector controls one motor driver. Pins 2,4, 6,7, 8 and 10 provide the ‘Ground’ or common side of connections.+5VEX: Motor drivers can be powered from the USB controller. The ‘5VEXT’ jumper, highlighted above, must be closed to enable this feature.STEP: Pr...

  • Page 11

    2.2.2 Mk1 CONNECTOR connectorThis connector provides for control of external devices and other helpful features built into controller. Pins 2,4,6,8.....16 provide the ‘Ground’ side of connections.STOP: Direct connection to OUT 3 allows the ENABLE pins on the MOTOR connector to be controlled b...

  • Page 12

    2.2.3 Mk1 JOG connectorManual jogging is controlled by switched operation of JOG 1-8. An optional plug-in ‘Jogging Keyboard’ can be provided. If users construct their own jogging keyboard, it’s recommended that a 100nF capacitor is connected across switch terminals.Pins 2, 4, 6, 8,10,12,14 ...

  • Page 13

    2.2.4 Mk1 LIMIT connectorLIMIT 1-8 connects limit switches. It’s recommended that a 100nF capacitor is connected directly across switch terminals. Pins 2, 4, 6, 8,10,12,14 and 16 are ‘Ground’ or common connections.LIMIT 1: X axis negative limit.LIMIT 2: X axis positive limit.LIMIT 3: Y axi...

  • Page 14

    2.2.5 Mk1 EXT connector GND:Ground or ‘common’ connections. RESET:A NO (normally open) momentary switch that, when closed, connects this pin to ground, duplicates the function of the built-in reset switch. This is helpful if the controller is enclosed making the dedicated button inaccessible....

  • Page 15

    2.3 Mk2 - 9 axis CNC USB controller descriptionFeatures:•100 kHz maximum step frequency •7 digital outputs •12 us minimum pulse width •manual jog input keys for all axes •limit keys for all axes •5 general inputs •8 control inputs for pendant or similar device •SD card support for...

  • Page 16

    2.3.1 Mk2 MOTOR connectorEach connector controls one motor driver.Pins 2, 4, 6,7, 8 and 10 provide the ‘Ground’ or common side of connections.+5V:+5V power. Motor drivers can take power from the USB controller.STEP:Provides a STEP signal of minimum 12 us pulse width to the motor driver.DIR:Pr...

  • Page 17

    2.3.2 Mk2 MOTOR 5-9 connectorThis connector controls up to 5 motor drivers. It can also provide an ENABLE signal to drivers that can take advantage of these feature.STEP 5-9:Provides a STEP signal of minimum 12 us pulse width for up to 5 motor drivers.DIR 5-9:Provides DIR or DIRECTION signal for ...

  • Page 18

    2.3.3 Mk2 JOG connectorSwitched operation of JOG 1-8 controls manual jogging. Pins 4, 6, 8,10,12,14 and 16 provide convenient ‘Ground’ connections. Jogging keyboards can use a ‘SHIFT’ key, allowing Mk2 controller users to jog additional axes or toggle the option of jog ‘step’ mode. ...

  • Page 19

    2.3.4 Mk2 LIMIT connectorLIMIT 1-8 connects limit switches. It’s recommended that a 100nF capacitor is connecteddirectly across switch terminals. Pins 4, 6, 8,10,...... 16 are ‘Ground’ or common connections.LIMIT 1: X axis negative limit.LIMIT 2: X axis positive limit.LIMIT 3: Y axis negati...

  • Page 20

    The 'SHIFT' key toggles limit options using one of three possible configurations. The chosen configuration determines hardware connections. NORMAL: Each switch is connected to its own pin.SHIFT OFF: Axes 1 to 4 limits are selectedSHIFT ON: Axes 5 to 9 limits are selectedSINGLE INPUT:Both axis lim...

  • Page 21

    2.3.5 Mk2 CTRL connectorThis connector provides inputs for use with axis, distance and E-Stop switches. MPG pendant devices can also be attached. Pins 2, 4, 6, 8.......16 provide convenient ‘Ground’ or common connections.An E-Stop attached to this connector can be configured in software to ac...

  • Page 22

    2.3.6 Mk2 INPUT connectorThis connector will provide input for user-assigned functions. INPUT1:PauseINPUT2:StartINPUT3:StopINPUT4:E-StopINPUT5:Tool sensor22

  • Page 23

    2.3.7 Mk2 OUTPUT connectorThis connector provides 7 digital outputs for control of external devices. The optional ‘Output board’ links to the Mk2 controller using this connector. Output assignment is controlled in software. OUT 1 - 7: Digital OutputGND: GroundGND: Ground+5V: +5V supply.OUT1 a...

  • Page 24

    2.3.8 Mk2 EXT connectorThis connector allows use of SD Card and I2C protocol devices. An inexpensive I2C LCD digital readout has been successfully prototyped, tested and documented.SDMISO: SignalSDMOSI: SignalSDSSEL: SignalSDSCK: SignalI2C CL: SignalI2C DA: SignalGND: Ground+3.3V: +3.3V supplyGND...

  • Page 25

    2.3.9 Mk2 POT connectorA potentiometer attached to this connector provides a manual jog speed control when using jogging keyboard connected to JOG connector.+3.3V:+3.3V power supply for use with potentiometers. POT: 5k or 10k ohm, logarithmic taper potentiometer can be connected to provide a jo...

  • Page 26

    2.3.10Mk2 USB connectorThe Mk2 USB CNC controller connects to computers via the USB port. The port uses the USB 2.x standard.2.3.11Mk2 Power terminal and Power options jumpers USB:Power controller through USB port.REG:Power controller from 7-12 V (recommended 9V) on green screw terminal. Polarity...

  • Page 27

    2.4 Mk2/4 - 4 axis CNC USB controller descriptionFeatures:•100 kHz maximum step frequency •3 digital outputs •12 us minimum pulse width •manual jog input keys for all axes •limit keys for all axes (single input mode)•4 inputs for tool sensor, E-Stop, …27

  • Page 28

    2.4.1 Mk2/4 MOTOR connectorEach connector controls one motor driver.Pins 2, 4, 6,7, 8 and 10 provide the ‘Ground’ or common side of connections.All signals are also available on screw type connector and DB25 connector.+5V:+5V power. Motor drivers can take power from the USB controller.STEP:Pr...

  • Page 29

    2.4.2 Mk2/4 JOG connectorSwitched operation of JOG 1-8 controls manual jogging. Pins 4, 6, 8,10,12,14 and 16 provide convenient ‘Ground’ connections. Jogging keyboards can use a ‘SHIFT’ key, allowing Mk2/4 controller users to jog ‘step’ mode. ‘SHIFT’ key function is defined in set...

  • Page 30

    2.4.3 Mk2/4 OUTPUT connectorThis connector provides 3 digital outputs for control of external devices. Output assignment is controlled in software. OUT 1, 2, 7: Digital OutputGND: Ground+5V: +5V supply.OUT1 and OUT2 are capable of generating PWM signal.OUT7 is capable of generating UART signal.30

  • Page 31

    2.4.4 Mk2/4 LIMIT connectorLIMIT 1-4 connects limit switches. It’s recommended that a 100nF capacitor is connecteddirectly across switch terminals. LIMIT 1: X axis limit.LIMIT 2: Y axis limit.LIMIT 3: Z axis limit.LIMIT 4: A axis limit.Software 'Invert' options allow use of ‘normally closed...

  • Page 32

    2.4.5 Mk2/4 INPUT connectorFour inputs are available on INPUT terminals. CTRL 1:E-StopINPUT 5: Tool sensorCTRL 8:Additional switchINPUT 1:Pause32

  • Page 33

    2.4.6 Mk2/4 POT connectorA potentiometer attached to this connector provides a manual jog speed control when using jogging keyboard connected to JOG connector.+3.3V:+3.3V power supply for use with potentiometers. POT: 5k or 10k ohm, logarithmic taper potentiometer can be connected to provide a ...

  • Page 34

    2.4.7 Mk2/4 DB25 connectorPin 1:OUT 1Pin 2:STEP 1Pin 3:DIR 1Pin 4:STEP 2Pin 5:DIR 2Pin 6:STEP 3Pin 7:DIR 3Pin 8:STEP 4Pin 9:DIR 4Pin 10:LIMIT 1Pin 11:LIMIT 2Pin 12:LIMIT 3Pin 13:LIMIT 4Pin 14:OUT 2Pin 15:CTRL 1Pin 16:MOTOR ENABLEPin 17:OUT 7Pins 18-25:GND34

  • Page 35

    2.4.8 Mk2/4 USB connectorThe Mk2/4 USB CNC controller connects to computers via the USB port. The port uses the USB 2.x standard.2.4.9 Mk2/4 Power terminal and Power options jumpers USB:Power controller through USB port.REG:Power controller from 7-12 V (recommended 9V) on green screw terminal. Po...

  • Page 36

    2.5 Adapter with screw terminalsThe Screw Terminal Adapter assists Mk1 and Mk2 controller connect to motor drivers that use screw terminal inputs. The adapter is compact. The ribbon cable connector helps in keeping enclosure wiring neat and accessible. Use is not difficult.1: Adapter MOTOR connec...

  • Page 37

    2.6 Jogging keyboardThe jogging keyboard is a quick, easy and inexpensive means to add dedicated manual jogging buttons to Mk1, Mk2 and Mk2/4 CNC USB controllers. Mk2 and Mk2/4 controller users can take advantage of software options allowing the ‘SHIFT’ button to toggle jog ‘STEP’ mode. A...

  • Page 38

    2.7 Output boardThe output board assists controlled switching of external devices such as spindles, coolant pumps, dust extractors and so forth. It’s a very easy way to add device switching. All planet-cnc.com controllers can use the output board. Screw terminal inputs allow this board to be us...

  • Page 39

    2.8 MPG Pendant AdapterThis adapter allows the Mk2 9-axis controller to support use of an MPG pendant, such as HEDSS pendant. This type of hand held device provides a convenient means of precise control while the operator is close by the machine. It can be of much assistance when performing job s...

  • Page 40

    2.9 SD Card AdapterSD card options for the Mk2 CNC USB Controller are in development. Use of this adapter, in conjunction with control buttons attached to the INPUT connector, will allow CNC machinery to run proven NC programs without need of an attached PC.Pin-outs for this adapter correspond wi...

  • Page 41

    3 Software3.1 OverviewCNC USB Controller software is designed to fully exploit the advanced features of controller hardware. At the same time the software remains user friendly. Even those new to CNC machining can employ advanced functions with little difficulty.Configuration options allow for ma...

  • Page 42

    3.2 InstallationCNC USB Controller software is compatible with Windows XP, Vista or Windows 7 (32 or 64 bit). Installation is a two-part process. Driver installation is performed, after which the main application can be installed and configured. The installation process is largely ‘automatic....

  • Page 43

    A destination folder is nominated. ‘C:\Program Files\CNC USB Controller\’ is the default install location. An alternate location can be selected by use of the ‘Browse..’ button.Press ‘Next’ to continue or ‘Cancel’ to exit the setup wizard.The setup wizard’ will request confirmat...

  • Page 44

    Wait until installation is complete.Driver installation might start during this step. This is explained in next chapter.On completion the setup wizard’ will display a report of successful installation. Press ‘Close’ to exit the wizard.44

  • Page 45

    3.2.2 Driver installationDriver installation is achieved by running “CNCUSBControllerDriver.exe”. The ‘Driver Setup Wizard’ will launch, press ‘Next’ to continue, or ‘Cancel’ to stop installation.The destination “C:\Program Files\CNC USB Controller\Driver” is applied by defaul...

  • Page 46

    A start menu folder for shortcuts is created. “CNC USB Controller\Driver” is the default setting.An alternate folder can be specified using the ‘Browse..’ button.Press ‘Next’ to continue, or ‘Cancel’ to stop installation.The ‘Ready to Install’ pane will appear. This provides o...

  • Page 47

    Driver is successfully installed.Press ‘Finish’ to exit setup.3.2.3 Completing driver installation (Windows XP)Driver installation will complete when the CNC USB Controller is connected to the USB Port. Windows XP will detect controller hardware and the ‘Found New Hardware Wizard’ will la...

  • Page 48

    The new hardware wizard will present additional options.‘Install the software automatically’ is the recommended option.Press ‘Next’ to continue, or ‘Cancel’ to stop installation.Windows XP will continue installation without further user input. The ‘Found New Hardware Wizard’ will ...

  • Page 49

    3.2.4 Completing driver installation (Windows 7)When the CNC USB Controller is connected to the USB Port, Windows 7 will detect controller hardware and begin the driver installation process. ‘Windows Security’ will launch a ‘publisher verification’ request.Select ‘Install this driver s...

  • Page 50

    3.3 Main windowOn launch of CNC USB Controller software the ‘Main Window’ will display. Data and status information for all aspects of G-Code program execution is provided on this main screen. The interface has been designed to be simple to use. Many regularly used functions are available via...

  • Page 51

    3.3.1 Position panelThe panel displays currently active offsets, machine position and speed. On panel are jog buttons used to move machine to desired position.There is also speed setting with speed override slider and check box.Offset:W – Working offsetT – Tool offsetM – Matrix transformati...

  • Page 52

    3.3.2 State panelThe State panel displays a range of information in respect of active parameters and settings. Information has reference to current machine state and program simulation state.Information displayed on the panel includes:Units:millimeters or inchesPlane:XY, YZ or ZXMode:absolute or ...

  • Page 53

    3.3.3 Program panelThe program panel shows information about the active NC program. Information displayed includes:Name:name of programUnits:units used in this panelMin/Max:minimum and maximum values used in program (program extents)Min Feed, Max Feed:minimum and maximum values used for feed move...

  • Page 54

    3.3.4 Graphical program visualization displayThis display shows 3D representation of machine, tool, toolpath,... •Orange box – machine limits•Gray grid – machine table•Axis arrows – displayed coordinate system origin•Red axis lines – selected coordinate system origin•White line ...

  • Page 55

    3.3.7 ToolbarEmergency stop:Executes immediate Emergency StopOpen program:Loads a G-Code programStart execution:Start program execution / machineStop execution:Stop program execution / machinePause execution:Pause program execution / machineTop View:Display G-Code program view from the topSide Vi...

  • Page 56

    Set Position – Zero:Zero all axes. If any offset is checked, it will be used. Warning: “Set Position” will change machine absolute position! If absolute position is changed automatic tool change and fixed tool sensor position might become invalid!Go To Position - Zero: Moves the machine to ...

  • Page 57

    3.3.8 File menuThe file menu opens or imports files for toolpath, simulation and cutting. Numbers next to items are MDI key codes or shortcuts assigned to functions. Entry of the relevant code into the MDI panel ‘calls’ or applies the function. Codes must be entered exactly as they appear on-...

  • Page 58

    3.3.8.4 Import G-CodeImport G-Code program.3.3.8.5 Import DXFImport DXF file.Sort: Optimizes the generated path by sorting DXF elements. Units: DXF files have no embedded units. Millimeters or inches units must be specified.Advanced / GeneralUse Block Entities:Used if DXF has entities in 'Block' ...

  • Page 59

    Advanced / Safe HeightEnable:Enable traverse moves at ‘Safe Height’ between elements.Height:‘Safe Height’ value.Spindle:Insert Spindle' on/off G-Codes before downward ‘plunge’ move.Flood:Insert 'Flood' on/off G-Codes before downward ‘plunge’ move.Mist:Insert 'Mist' on/off G-Codes ...

  • Page 60

    3.3.8.6 Import PLT/HPGLImport PLT/HPGL file.Height:Safe Height value for traverse moves between elements.3.3.8.7 Import NC DrillImport NC Drill (Excellon) file.Feed Speed: Set feedrate.Plunge Speed: Set feedrate for plunge (down) moves.Safe Height: Safe Height value for traverse moves.Zero Height...

  • Page 61

    3.3.8.8 Import GerberImport Gerber file.Feed Speed: Set feedrate.Plunge Speed: Set feedrate for plunge (down) moves.Safe Height: Safe Height value for traverse moves.Zero Height: Surface height. Depth: Mill penetration depth.Sort: Sort holes to optimize the toolpath.Mirror:Mirrors program in XY....

  • Page 62

    3.3.8.9 Import ImageImport image file. Size XY: Sets maximum XY dimensions of the generated toolpath. Initial values are determined using pixel dimensions and the image ‘resolution’.Height Z:Maximum Z dimension of the generated toolpath.Invert: Invert Z values for positive or negative relie...

  • Page 63

    3.3.8.10Import TextA fast means to process true-type font to G-Code. Any TTF font on the system can be used, even ‘graphic’ fonts. Font, font size, styling and layout options can be applied. After setting text and styling options, DXF import dialog will appear.63

  • Page 64

    3.3.8.11Import AirfoilFile menu: Load and save 'airfoil' files Cutter: Foam cutting machine parameters.Foam: Foam block parametersHeat: Wire heater parametersKerf: Wire parametersCutouts:Tube spar 1: Tube spar parameters for the first sparTube spar 2: Tube spar parameters for the second sparWirin...

  • Page 65

    3.3.8.12G-Code WizardVarious wizards for different tasks.3.3.8.13Export Toolpath To G-codeExport toolpath to G-code file. 3.3.8.14Export Toolpath to DXFExport toolpath to DXF file. Created file also contains traverse moves at safe height.3.3.8.15Export Toolpath to CSVExport toolpath to CSV file. ...

  • Page 66

    3.3.9 View menuThe view menu controls various aspects of the G-Code program visualization. Only program visualization is affected by view menu options, there are no changes applied to active program G-Code.For example, where ‘Settings’,options have defined user coordinate systems,‘View / Or...

  • Page 67

    3.3.9.9 Zoom ExtentsCenter and zoom display to view whole G-Code / toolpath.3.3.9.10Center ToolCenters the program visualization on the current tool position. Useful to ‘find’ and follow the tool when simulating large NC programs or if cut extents move the tool outside the displayed area.3.3....

  • Page 68

    3.3.9.17ShowThe ‘Show’ item opens a sub-menu of elements that can be displayed as part of G-Code visualizations. There are many helpful aids to provide useful feedback.Use is fairly self-explanatory. Checked items are visible in visualizations, unchecked items are not.3.3.9.18Material‘Mater...

  • Page 69

    3.3.10Program menuThe program menu provides G-Code processing functions to conform NC programs to user requirements. In most cases only parameter entry is required to make desired adjustments.Functions to navigate NC programs and ‘bookmark’ blocks of code are also available. NC programs can b...

  • Page 70

    3.3.10.3Shift'Shift' translates or moves the toolpath in 3D space using one of options.User: Displays dialog allowing user specification of the distance to move the toolpath for each axis.Extents to Zero: Aligns the ‘minimum’ edges of the toolpath extents with the machine zero position.Exte...

  • Page 71

    3.3.10.8Copy XYZ → UVWG-Code applied to the XYZ or 1st tower is duplicated / modified to create code for the UVW or 2nd tower. For use with foam-cutters. 3.3.10.9Swap XYZ ↔ UVWG-Code applied to the 1st and 2nd towers is exchanged / modified so that XYZ code becomes UVW code and vice verse. Fo...

  • Page 72

    3.3.11Machine menuThe machine menu provides means to directly interact with controlled machines and attached hardware.The machine can be positioned at preset locations or user specified positions. Cutting can be controlled. Raw binary files can be processed. Programs can be looped or segmented. O...

  • Page 73

    3.3.11.7BookmarksProcesses the active G-Code program based on bookmarks.Start - Only Bookmarked:Cut only bookmarked lines.Start - Skip Bookmarked:Cut all except bookmarked lines.Start - From Beginning To Bookmark: Cut from first line to first bookmark.Start - From Bookmark To End: Cut from first ...

  • Page 74

    Park2: Go to ‘Park2’ position defined in ‘Settings/Axes2’.G28: Go to G28 position set in ‘Settings/Parameters’.G30: Go to G30 position set in ‘Settings/Parameters’.User: Opens the data entry dialog. The desired location for up to 9 axes can be specified. 3.3.11.13Set PositionAppli...

  • Page 75

    3.3.11.14.1Offset / From Tool SensorSets the working offset based on positions detected using the tool sensor.Current X: Set working offset to current position for the X axis only (uses sensor size).Current Y: Set working offset to current position for the Y axis only (uses sensor size).Current Z...

  • Page 76

    3.3.11.14.5Offset / Sensor SetupProvides convenient means to adjust sensor parameters without recourse to the main settings panel. This can be useful if it’s necessary to adjust the ‘Size’ parameter when tools are changed.Offset XY: Sensor offset. The tool sensor may be mounted at an offset...

  • Page 77

    3.3.11.15.8Tools / Measure Tool LengthMeasure tool length and set absolute position using a fixed tool sensor. The machine moves to the tool sensor and measures tool length. 3.3.11.15.9Tools / Measure Tool Length HereMeasure tool length and set absolute position at current location using a movabl...

  • Page 78

    3.3.11.17.3Transformation / Calculate Matrix From PointsCalculates matrix based transformation for current G-Code program using captured, measured to stored ‘point’s data.3.3.11.17.4Transformation / Capture & Measure Points / MeasureInitiates measuring procedure using a ‘movable’ sens...

  • Page 79

    3.3.11.17.5Transformation / Capture & Measure Points / CaptureInitiates points capture using a ‘movable’ sensor. USB camera sensors may be used.Capture Point: Stores the current machine location as an entry in the ‘points’ list.Capture Point X-: Stores the current machine location...

  • Page 80

    3.3.11.17.9Transformation / Capture & Measure Points / Show Camera‘Show Camera’ opens camera dialog. It’s designed to display the view visible to a USB web-cam, mounted alongside the spindle, looking down on the workpiece.The large cross-hair marker in the center of the view is used for...

  • Page 81

    3.3.11.18Soft LimitsUsed to temporarily disable soft limits during machine setup. During setup, correct coordinates are not yet in place. If active, ‘Soft Limits’ may prevent movement when current settings indicate the machine is at it’s limit.3.3.11.19FirmwareFirmware management functions ...

  • Page 82

    3.3.12Help menuThe help menu provides access to offline and internet assistance for CNC USB software. Reference content related to supported G-Code is also linked.Software license activation and management are also catered for along with information regarding start-up, update status and software ...

  • Page 83

    3.4 SettingsController software configuration is adjusted using the ‘File ’ menu ‘Settings ’ item. A tabbed panel will appear. The panel allows setup of all software options and features. Settings allow automation and integration of many features to provide advanced functions and simplify...

  • Page 84

    3.4.1 GeneralThe ‘General’ tab is used to apply settingsrelated to measurement, speed and G-Codevisualization.3.4.1.1 UnitsSets the system of measurement / units applied in display and input dialogs.Speed, Feed and Traverse rates resolve to units per minute.3.4.1.2 SpeedFeed:Default feed rat...

  • Page 85

    3.4.1.4 Default buttonRestore settings to default values and parameters.3.4.1.5 Colors... buttonAdjusts color assignments for the main window visualization and G-Code panel.Display: Named swatches identify visualization elements and applied colors. Color is adjusted by selection of an element. A ...

  • Page 86

    3.4.1.6 Keys... buttonUp to three ‘Sets’ of PC jog keys are configured using this tab. Custom axis names andcombined axes jogging can be assigned.Using standard axis names,‘Set’ names A,B,C correspond with axes X,Y , Z... and so on. - / + symbols show direction. For example:A-B+ is a diag...

  • Page 87

    3.4.1.8 Calibration... buttonThis option should only be used if manual calculation of Steps/Unit is not possible. It’s far more accurate to derive Steps/Unit by calculation using known data.Pressing the 'Calibration' button opens the panel. The axis to be calibrated is selected. 'Next' advances...

  • Page 88

    3.4.2 Axes 1This tab is used to specify the number of axes in use on the controlled machine as well as axis names and other options.3.4.2.1 AxesNumber of Axes: The number of axes attached to the CNC machine.R: Resets all axis names to defaults.Name: Specifies the G-Code name used for each axis. S...

  • Page 89

    3.4.3 Axes 2Steps/Unit is most important setting.3.4.3.1 AxesSteps / Unit:The number of steps the controller must generate to move the machine one unit (mm or inch).A stepper motor using 200 steps perrevolution, 1/8 micro-stepping and 5mm per revolution lead screw requires a Steps per Unit value ...

  • Page 90

    3.4.4 Axes 3Axes3 settings adjust limit switch operation, ‘Soft Limits’ setup, machine working area and homing parameters. Operator and machine safety will benefit from careful attention to the parameters applied.3.4.4.1 LimitsLimit Switch:If checked, trigger of a limit switch E-Stops the mac...

  • Page 91

    Example:A machine has two X axis limit switches exactly 500mm apart. To give tolerance of 10mm on each side, the working area is set as ‘Limit- = 0’ and ‘Limit+= 480’. The X axis has absolute value range of -10 mm to +490 mm = 500 mm.Homing in the positive X direction (‘Direction = +’...

  • Page 92

    3.4.5 Misc‘Misc’ tab settings affect G-Code interpolation and optimization, decelerations, pause dialog and other miscellaneous functions.Interpolation:Line length used to interpolate arcs when helix interpolation is not used.Speed Tolerance: Maximum allowed percentage deviation from the G-Co...

  • Page 93

    3.4.5.1 ExtPinExt pin is only available on Mk1 controller.Enable: Enables use of the ‘Ext pin’.Invert:Specifies switch hardware connected to ‘Ext pin’ as being Normally Open (uninverted) or Normally Closed (inverted).Is E-Stop: Triggering of switch hardware connected to ‘Ext pin’ caus...

  • Page 94

    3.4.6 OutputsThis tab specifies and directs output signalsfrom the controller. Settings will vary depending on controller hardware. Mk1 controllers have outputs 1,2 and 3. Mk2 controllers have all 7 outputs.Mk2/4 controllers have outputs 1,2 and 7. 3.4.6.1 Spindle (M3, M4, M5)Output pin On/Off: S...

  • Page 95

    3.4.6.3 PauseOutput pin:If an output pin is assigned, ‘Pause’ generates a signal on the specified pin. This can trigger an external device to perform a function. On completion, a signal to a controller input pin can resume NC program execution.3.4.6.4 Motor EnableOutput pin:If set, an enable ...

  • Page 96

    3.4.7 LimitsLimits options relate primarily to use of Normally Open (NO) or Normally Closed (NC) switch hardware. This is set with 'Invert' checkbox. Controllers can use 'Normal’ or 'Single Input'mode. Normal:Each switch is connected to its own pin.Single Input:Both axis limit switches are conn...

  • Page 97

    3.4.8 JogOptions on this tab configure use of hardware and software jogging keyboards.Enable: Enable / disable use of hardware jogging keyboard.Invert: Allows use of Normally Open (NO) or Normally Closed (NC) switch hardware on user jogging keyboards.Swap: Reverse positive / negative direction.De...

  • Page 98

    3.4.9 InputThe Mk2 controller input connector allows hardware switches to stop, start and pausethe machine. Invert: Use Normally Open (NO) or Normally Closed (NC) hardware. Use Pause: Switching toggles pause/resume of NC program. (INPUT 1)Use Start: Triggers G-Code execution start. (INPUT 2)Us...

  • Page 99

    3.4.10ControlConfigures Mk2 controller dedicated MPGpendant inputs.Invert: Use Normally Open (NO) or Normally Closed (NC) hardware. Use E-Stop: E-stop while switched, on release, normal function is resumed. Use for ‘locking’ (stay-down)E-Stop switches (CTRL1).Use Axis Switch: MPG pendant ax...

  • Page 100

    3.4.11ToolsThis tab allows the creation of a tool table ordatabase. Number: Assigns a dedicated number to call this tool in G-Code.Name: Name used in the tool listing.Shape: Select tool shape from the drop down list.Description: User description for the tool.Diameter: Tool diameter in units.Z Of...

  • Page 101

    3.4.12Tool ChangeThis tab configures manual or automatic toolchange parameters.3.4.12.1Tool ChangePosition - Not Set:Toolchange position has not been set.Position - At Park 1, At Park 2:On tool change (M6), the machine moves to the park location specified in the ‘Axes 2’ tab.Position - At G28...

  • Page 102

    3.4.12.2From Tool TableThese options are used if ‘Position ’ is set to ‘From Tool Table ’. See the example below for a detailed description of automatic toolchange.Safe Height: The Z axis value applied during the move to toolchange position.Speed: The speed rate applied for the move to to...

  • Page 103

    Step 5 - Using designated outputs, the controller sends ‘Lock’ to grip the tool and ‘Blow’ to clear any debris. A short delay is used to allow the cycle to complete ‘Blow’.Step 6 - The machine will move at ‘Speed’ ’ rate to the ‘Tool Change ’ location defined in the tool tab...

  • Page 104

    3.4.13Tool SensorThis tab configures use of an electronic sensor for use in automatic tool length detection, material position detection or transformations. The tool sensor can be used in a multi function ‘movable’ mode or ‘fixed’ to the machine table, as a dedicated tool length sensor. T...

  • Page 105

    3.4.13.2Tool Sensor MovableOffset X,Y: Sensor offset. Sometimes the sensor is mounted at an offset from tool center. This is usually the case with a USB camera sensor.Size: Total distance from tool center to stock when sensor is triggered. Example:If the tool sensor is a simple piece of PCB of th...

  • Page 106

    3.4.14MaterialsSimulations can employ a database of user defined materials to represent stock in the visualization display. Shaded or wireframe representation is available. Stock definitions can be applied in the calculation of offsets.Number: Assigns a number to the defined material.Name: Name ...

  • Page 107

    3.4.15ParametersParameter table is used for setting various parameters. Usually these are persistent G-Code variables such as coordinate systems and offsets.Offset:Working offsetCoordinate system:Coordinate system origin setting defined with G10 L2 G-Code.Position G28:Home position defined with G...

  • Page 108

    3.4.16I2CFor setting up communication with I2C devices.108

  • Page 109

    3.4.17NotesThe top text box is the name of the settings. If specified by the user it it will be displayed in the application title bar.This is a useful option if many setting files are used. The active settings file is indicated to check the correct file is in use.The larger lower panel allows en...

  • Page 110

    3.4.18ScriptsScripts are code, which allows you to define custom action on specified events. Each action must be enabled with checkbox.Event action is defined with script filename, followed by semicolon and method name. Methods are written in VB script.Script files must be in subfolder “Scripts...

  • Page 111

    4 How to ...4.1.1 How to activate, import, request and export license?If you don't have a license you need to send me activation code and controller serial number.If you have registration key, open "License activation" dialog and paste your registration key.111

  • Page 112

    If you have license data file (.dat, .lic or .zip) you can import it. There is no functional difference if using registration key or license data file.If you want to create backup copy of your license you can export it as license data file.112

  • Page 113

    4.1.2 How to connect motor driver with optoisolated inputs?113

  • Page 114

    4.1.3 How to connect and setup Output board?Output board needs 12V power supply.Mk2 controllerConnect Mk2 controller with 10wire cable to OUTPUT connector. Set output pins like this:114

  • Page 115

    Mk1 controllerConnect Mk1 controller with 16wire cable to CONNECTOR connector.If you use 3 relays put jumper to "1" position set output pins like this:If you use 2 relays and 0-10V put jumper to "S" position set output pins like this:115

  • Page 116

    116

  • Page 117

    4.1.4 How to configure settings for MPG pendant?MPG pendant only works with Mk2 controller.117

  • Page 118

    5 G-CodeG-code interpreter used by CNC USB controller is implemented according to National Institute of Standards and Technology RS274NGC Interpreter - Version 3 specification. Full documentation of RS274NGC is available at web page:actionURI(http://www.isd.mel.nist.gov/personnel/kramer/pubs/RS2...

  • Page 119

    Spaces and tabs are allowed anywhere on a line of code and do not change the meaning of the line, except inside comments. This makes some strange-looking input legal. The line "g0x +0. 12 34y 7" is equivalent to "g0 x+0.1234 y7", for example. Blank lines are allowed in the inp...

  • Page 120

    A non-zero number with no sign as the first character is assumed to be positive.Notice that initial (before the decimal point and the first non-zero digit) and trailing (after the decimal point and the last non-zero digit) zeros are allowed but not required. A number written with initial or trail...

  • Page 121

    operation is the modulus operation (MOD). The ninth operation is the "power" operation (**) of raising the number on the left of the operation to the power on the right. The binary operations are divided into three groups. The first group is: power. The second group is: multiplication, ...

  • Page 122

    5.10Item RepeatsA line may have any number of G words, but two G words from the same modal group may not appear on the same line. A line may have zero to four M words. Two M words from the same modal group may not appear on the same line. For all other legal letters, a line may have only one word...

  • Page 123

    5.12Modal and Non-modal modesIn RS274/NGC, many commands cause a machining center to change from one mode to another, and the mode stays active until some other command changes it implicitly or explicitly. Such commands are called "modal". For example, if coolant is turned on, it stays ...

  • Page 124

    For several modal groups, when a machining center is ready to accept commands, one member of the group must be in effect. There are default settings for these modal groups. When the machining center is turned on or otherwise re-initialized, the default values are automatically in effect. Group 1,...

  • Page 125

    5.14.3 G02 - Circular/Helical Interpolation (CW)5.14.4 G03 - Circular/Helical Interpolation (CCW) (Arc at Feed Rate)A circular or helical arc is specified using either G2 (clockwise arc) or G3 (counterclockwise arc). The axis of the circle or helix must be parallel to the X, Y, or Z-axis of th...

  • Page 126

    Here is an example of a radius format command to mill an arc: G17 G2 x 10 y 15 r 20 z 5. That means to make a clockwise (as viewed from the positive Z-axis) circular or helical arc whose axis is parallel to the Z-axis, ending where X=10, Y=15, and Z=5, with a radius of 20. If the starting value o...

  • Page 127

    units from the current X location and offset in the Y direction by 4 units from the current Y location. If the current location has X=7, Y=7 at the outset, the center will be at X=10, Y=11. If the starting value of Z is 9, this is a circular arc; otherwise it is a helical arc. The radius of this ...

  • Page 128

    5.14.8 G10 L9 – Set Machine Position Without MoveExamples:G10 L9 P1 X- Y- Z- A- B- C- Machine will set position to coordinates defined with axis wordsG10 L9 P28 Machine will set position to coordinates defined as G28 homeG10 L9 P30 Machine will set position to coordinates defined as G30 homeG...

  • Page 129

    as the current position numbers so that the rotational axes do not move. The linear axis words are optional, except that at least one of them must be used. The tool in the spindle must be a probe. It is an error if: •the current point is less than 0.254 millimeter or 0.01 inch from the programm...

  • Page 130

    It is OK to program using the same offset already in use. It is also OK to program using no tool length offset if none is currently being used. 5.14.21G49 - Cancel Tool Length OffsetTo use no tool length offset, program G49. 5.14.22G53 - Motion in Machine Absolute CoordinatesYou can make straight...

  • Page 131

    5.14.32G61 - Set Path Control Mode: Exact Path5.14.33G61.1 - Set Path Control Mode: Exact Stop5.14.34G64 - Set Path Control Mode: Continuous(not implemented)Program G61 to put the machining center into exact path mode, G61.1 for exact stop mode, or G64 for continuous mode. It is OK to program for...

  • Page 132

    Drive Line - A line through the initial X position parallel to the Z.P- The "thread pitch" in distance per revolution.Z- The final position of threads. At the end of the cycle the tool will be at this Z position.I- The "thread peak" offset from the "drive line". Nega...

  • Page 133

    L- Specifies which ends of the thread get the taper. Program L0 for no taper (the default), L1 for entry taper, L2 for exit taper, or L3 for both entry and exit tapers. Entry tapers will pause at the drive line to synchronize with the index pulse then feed in to the beginning of the taper. No ent...

  • Page 134

    All canned cycles use X, Y, R, and Z numbers in the NC code. These numbers are used to determine X, Y, R, and Z positions. The R (usually meaning retract) position is along the axis perpendicular to the currently selected plane (Z-axis for XY-plane, X-axis for YZ-plane, Y-axis for XZ-plane). Some...

  • Page 135

    When the YZ plane is active, the X number is sticky, and it is an error if: •the X number is missing and the same canned cycle was not already active,•the R number is less than the X number.Preliminary and In-Between MotionAt the very beginning of the execution of any of the canned cycles, wi...

  • Page 136

    and the R number is 1.8. The initial X position is 5 (=1+4), the initial Y position is 7 (=2+5), the clear Z position is 4.8 (=1.8+3), and the Z position is 4.2 (=4.8-0.6). Old Z is 3. The first move is a traverse along the Z-axis to (1,2,4.8), since old Z < clear Z. The first repeat consists ...

  • Page 137

    5.14.42G84 - Canned Cycle: Right Hand TappingThe G84 cycle is intended for right-hand tapping with a tap tool.Program G84 X- Y- Z- A- B- C- R- L- 1. Preliminary motion, as described above. 2. Start speed-feed synchronization. 3. Move the Z-axis only at the current feed rate to the Z position. 4. ...

  • Page 138

    It is an error if: •the spindle is not turning before this cycle is executed.5.14.45G87 - Canned Cycle: Back BoringThe G87 cycle is intended for back boring.Program G87 X- Y- Z- A- B- C- R- L- I- J- K- The situation is that you have a through hole and you want to counter bore the bottom of hole...

  • Page 139

    6. Restart the spindle in the direction it was going. 5.14.47G89 - Canned Cycle: Boring, Dwell, Feed OutThe G89 cycle is intended for boring. This cycle uses a P number, where P specifies the number of seconds to dwell. program G89 X- Y- Z- A- B- C- R- L- P- 1. Preliminary motion, as described ab...

  • Page 140

    The axis offsets are always used when motion is specified in absolute distance mode using any of the nine coordinate systems (those designated by G54 - G59.3). Thus all nine coordinate systems are affected by G92. Being in incremental distance mode has no effect on the action of G92. Non-zero off...

  • Page 141

    In units per minute feed rate mode, an F word is interpreted to mean the controlled point should move at a certain number of inches per minute, millimeters per minute, or degrees per minute, depending upon what length units are being used and which axis or axes are moving. 5.14.56G98 - Initial le...

  • Page 142

    5.15.8 M5 - Stop Spindle TurningTo stop the spindle from turning, program M5.5.15.9 M6 - Tool ChangeTo change a tool in the spindle from the tool currently in the spindle to the tool most recently selected (using a T word), program M6. 5.15.10M7 - Mist Coolant OnTo turn mist coolant on, progra...

  • Page 143

    5.16Other Codes5.16.1F - Set Feed RateTo set the feed rate, program F. The rate at which the controlled point or the axes move is nominally a steady rate which may be set by the user. For motion involving one or more of the X, Y, and Z axes (with or without simultaneous rotational axis motion), t...

  • Page 144

    5.17Sample G-code programs5.17.1Square%M3G01 X0 Y0G01 Z-3G01 Z3G01 X-150 Y-150G01 Z-3G01 X150 Y-150G01 X150 Y150G01 X-150 Y150G01 X-150 Y-150G01 Z3G01 X0 Y0M5%5.17.2Circle%M3G01 X0 Y0G01 Z-3G01 Z3G01 X0 Y-150G01 Z-3G02 X0 Y-150 I0 J150G01 Z3G01 X0 Y0G01 Z-3G01 Z3M5%144

  • Page 145

    5.17.3One side of a ball in cage%G90G21#1=50 (width of box)#2=2 (tool radius)#3=4 (height of box)#4=5 (resolution in degrees)#5=#4 (counter)#6=[[#1/2]+#2] (actual radius of circle - cutter radius + radius) G01 X0 Y0o140 do #8 = [[SIN[#5]*#6]*SIN[45]] ( X and Y position) #9 = [0-[[1-COS[#5]]*...

  • Page 146

    Table of Contents1 Introduction........................................................................................................................................ 31.1 Overview.................................................................................................................

  • Page 147

    2.4.9 Mk2/4 Power terminal and Power options jumpers ...........................................................352.4.10 Mk2/4 LED indicators.......................................................................................................352.5 Adapter with screw terminals.............

  • Page 148

    3.3.8.20 Language................................................................................................................653.3.8.21 Exit.......................................................................................................................... 653.3.9 View menu.......

  • Page 149

    3.3.11.7 Bookmarks..............................................................................................................733.3.11.8 Mist......................................................................................................................... 733.3.11.9 Flood..........

  • Page 150

    3.3.12.7 About.......................................................................................................................823.4 Settings..................................................................................................................................... 833.4.1 ...

  • Page 151

    3.4.18 Scripts............................................................................................................................ 1104 How to .......................................................................................................................................... 1...

  • Page 152

    5.14.21 G49 - Cancel Tool Length Offset..................................................................................1305.14.22 G53 - Motion in Machine Absolute Coordinates...........................................................1305.14.23 G54 - Use Preset Work Coordinate System 1....

  • Page 153

    5.15.10 M7 - Mist Coolant On...................................................................................................1425.15.11 M8 - Flood Coolant On.................................................................................................1425.15.12 M9 - Mist and Flood C...

x