Manuals/X-NMS

From ZaberWiki
Jump to navigation Jump to search
X-NMS Stepper Motors User's Manual


X-NMS Stepper Motors


Disclaimer

Zaber’s products are not intended for use in any critical medical, aviation, or military applications or situations where a product's use or failure could cause personal injury, death, or damage to property. Zaber disclaims any and all liability for injury or other damages resulting from the use of our products.

Precautions

Zaber’s motion control devices are precision instruments and must be handled with care. In particular, moving parts must be treated with care. Avoid axial loads in excess of the rated thrust load, axial and radial impact, dust and other contaminants and damage to the drive components. These will reduce the performance of the device below stated specifications.

Hot surface warning 180px.png Caution: The motor in this device can exceed 60° C during normal operation and become hot enough to cause burns. Take precautions to prevent contact with the motor.

Conventions used throughout this document

  • Fixed width type indicates communication to and from a device. The symbol indicates a carriage return, which can be achieved by pressing enter when using a terminal program.
  • An ASCII command followed by (T:xx) indicates a legacy T-Series Binary Protocol command that achieves the same result. For example,
    move abs 10000 (T:20:10000) shows that a move abs ASCII command can also be achieved with Binary command number 20.
Not all ASCII commands have an equivalent Binary counterpart.

Quick Tutorial

We recommend using Zaber Console to communicate with the device(s). For other software options, see the Software page. Please refer to the Protocol Manual for more detailed information on the available commands.

Initial Set-up

X-NMS Setup

  1. Daisy chain all integrated devices and controllers together using the RS-232 "Prev" and "Next" connectors (see Daisy-Chaining Devices for more details).
  2. Next, supply power to one or more devices. Many products share power through the daisy-chain cables. The green power indicator on each should light up.
  3. Turn the knob to move a positioner. Most positioners will only move in one direction until they reach a home sensor at one limit of travel. Then they will move in both directions over full travel.
  4. Download and install Zaber Console. Start Zaber Console.
  5. Select the communications port the first controller is connected to. For instructions on how to find the available communication ports on your system, please refer to: Appendix A - Available Communications Ports.
  6. If multiple devices are detected, Zaber Console may prompt you to renumber (T:2) them. The first device in the chain (closest to the computer) will become Device 1, the next will become Device 2, and so on.

Initialization

Every time the device is powered up or reset, you should return the positioner to the home position. This is achieved by sending the home (T:1) command to the individual device or all devices. Until this is done, most positioners will only allow motion in one direction, towards the sensor.

If it is not possible in your application to home the positioner after every power-up, see the tools parking (T:65) command. Parking allows the device to be turned off and then used at a later time without first having to home the axes.

Using the Device

Several commonly used ASCII commands and their Binary equivalents, are shown below. For a full list of available commands, please refer to the Protocol Manual.

Command Description
/1 1 get pos↵ (T:60) Query the current position of Device #1 Axis #1.
/1 1 move abs 10000↵ (T:20:10000) Move Device #1, Axis #1 to position 10000 microsteps.
/2 1 move rel -12800↵ (T:21:-12800) Move Device #2, Axis #1 in the negative direction by 12800 microsteps.
/1 stop↵ (T:23) Decelerate and stop ALL axes on Device 1.
An axis number of 0 or no axis number implies all axes on the device, or the device itself.
/move vel 153600↵ (T:22:153600) Move ALL devices and ALL axes in the positive direction at the speed 153600.
A device address of 0 or no device address implies all devices in the chain.

Modifying Device Settings

Here are some examples if you would like to customize particular device or axis settings. Refer to the Protocol Manual for detailed descriptions of each setting.

Command Description
/1 set maxspeed 100000↵ (T:42:100000) Set the speed of all axes on the device.
/1 get maxspeed↵(T:53:42) Query the maximum speed of all axes on the device.
/1 system restore↵ (T:36) Restore all the settings of Device 1 to the default.

Firmware Updates

In order to allow access to new features and bug fixes, this Zaber device can be updated remotely through Zaber Console. Follow instructions here to update: www.zaber.com/FirmwareUpdate

Device Overview

Connectors

All images are shown looking into the device.

Power

Terminal Connector Pin Description
1 24 - 48 V
2 Device GND

Note: As of February 2022, the power supplies Zaber provides for X-Series devices are isolated and thus the device is not connected to Earth ground.

Note: Prior to 2022, most power supplies provided for X-Series devices were non-isolated. Isolated units can be distinguished by the "S" suffix in their Zaber part number (eg. PS14S), which is marked on the label on the bottom of the power supply.

RS-232 Communications

M8 4-pin Connector Pin Previous Next
1 Power (max 4 A) Power (max 4 A)
2 Ground Ground
3 Receive Transmit
4 Transmit Receive
Default Settings
  • Baud rate: 115200
  • Protocol: Zaber ASCII
Specifications
  • Supported Protocols: Zaber ASCII, Zaber Binary
  • Supported baud rates: 9600, 19200, 38400, 57600, 115200
  • Bits: 8
  • Parity: None
  • Stop Bits: 1
  • Flow Control: None

External Hall Sensor

Pin Description
1 Signal
2 +5V
3 Reserved
4 Ground

NOTE: The signal is pulled up to the internal supply rail and is designed to be pulled low by an open collector.

NOTE: Sensor inputs are non-isolated 5V TTL lines.

Indicators

Green (Device) - Power
  • On: Controller is operational.
  • Blinking twice per second: The power supply voltage or controller temperature is out of range.
Red (Device) - System Error
Yellow (Device) - Communication
  • On: Data is being transferred.
  • Blinking twice per second: Packet corruption has occurred for ASCII commands sent with a checksum.
Yellow (Axis) - Axis Status
  • On: Axis is moving.
  • Blinking: Axis is under manual control via the knob (in Velocity mode). The blinking rate is proportional to movement speed.

Blue (Axis) - Warning/Error

  • Blinking twice per second: Driver is disabled due to over-temperature, out-of-range voltage or other driver fault; or due to user request. See Fx Warning Flags. Note: This may occur for a few seconds on power-up as device initializes.
  • Fading in and out slowly: The axis is parked. See the tools parking (T:65) command.

Installation

The X-NMS can be connected to a computer as follows:

  1. Plug the M8 to USB adaptor (X-USBDC) into one of your computer's USB ports, then attach the device to the adaptor. You may need to use a cable extension to reach your computer. There is no need to power down or reboot the computer.
  2. Connect the power plug of your power supply to the power connector of the device. The green LED should light up indicating the device has power.
  3. Additional devices can simply be daisy-chained to the first. See Daisy-Chaining Devices below.
  4. Install software from the Software page. For the initial setup, using Zaber Console is recommended.

X-NMS PC Connection Setup


As a simple first test, try entering:

/renumber↵ (T:2)
/1 home↵ (T:1)
/1 move rel 10000↵ (T:21:10000)

The parameter of 10000 in the move command above specifies 10000 microsteps. To see the microstep size (default resolution) for the positioner and how it translates to displacement, first go to the product overview page, find your product, click through to the product's webpage, and click on the "Series Specs" tab. The microstep size (default resolution) will be shown in the list of product specs either in the "Group Specifications" section or the "Comparison" section.

Daisy-Chaining Devices

Multiple devices can be connected together in a chain through the Prev and Next connectors. This allows any number of devices to be controlled from a single connection to a computer, reducing cabling demands. In addition, X-Series devices carry power through the daisy chain, so in most cases a power supply only needs to be connected to one device in the chain. Whenever a device is added or removed from a chain, a renumber (T:2) command should be sent to prevent device-address conflicts.

Daisy Chain Setup

To daisy-chain X-Series devices with T-Series and A-Series devices:

  • Ensure all devices are set to the same communication protocol and baud rate before connecting them. If any T-Series devices will be in the chain, then the communication protocol must be Binary at 9600 baud rate.
  • Connect any X-Series devices at the start of the chain (closest to the computer). This configuration will reduce the number of adaptor cables required.
  • Connect a T-XDC (or S-XDC for daisy-chaining an A-MCB2) adaptor cable to the Next port of the last X-Series device in the chain, and to the Prev port of the T-Series or A-Series device.
  • Power supplied to an X-Series device will not be transmitted to any T-Series or A-Series devices in the chain.
  • Contact Zaber Technical Support for assistance selecting connecting cables when daisy-chaining multiple series.

Physical Installation

The provided Hall Effect limit sensors are compatible with a T-slot (see dimensions below). To install a sensor, slide it down the T-slot from the slot's end to the desired position and tighten the M3 set screw until sensor is just secure. Over-tightening may cause threads to strip in the sensor. A small boss on the top side of the sensor indicates the approximate centre of the sensing area on the underside. If possible, nest the cable within the slot to avoid catching or pulling the cable.

4 mm T-slot dimensions Limit sensor sensing area position
T-slot dimensions (mm) M3 set screw position

To mount the provided magnet, use a strong adhesive to fix the magnet in a position that allows it to trigger the sensor (see below). Ensure the south pole (black side) of the magnet faces the sensor. The Hall Effect sensor only triggers on a south pole with a magnetic field intensity of approximately 35 G or more. Use a stronger magnet to trigger the sensor from a great distance. The triggering distance will vary depending upon the magnet's strength, the direction from which it approaches the sensor, its orientation relative to the sensor, and surrounding magnetic material. Standard mounting configurations and triggering distances are shown below.

Motion transverse to axis of magnet Motion along axis of magnet

Also see Home or Away Sensor Installation Sheet.

Manual Control

Most X-Series motion control products have an integrated, depressible knob with 20 detents per revolution, allowing axes to be controlled without the use of a computer. There are two manual movement modes available: Velocity and Displacement. Switch between these modes by holding down the knob for 1 second or by configuring the knob.mode (T:109) setting.

On power-up, many axes will only travel towards the motor from their start-up positions until the home position is reached. Once the axis has been homed, the full range of travel becomes available.

Velocity Mode

Turn the knob clockwise to move the axis in the positive direction (extend) or counter-clockwise for negative direction (retract). Each detent of the knob increases the speed of the carriage.

There are 16 speeds in each direction. The velocity profile and maximum speed can be configured via the knob.speedprofile (T:112) and knob.maxspeed (T:111) settings. The axis stops and resets the knob upon arriving at the end of travel.

Displacement Mode

Turn the knob clockwise to move the axis in the positive direction (extend), counter-clockwise for negative direction (retract). Each detent of the knob moves the axis a fixed number of microsteps, specified by the knob.distance (T:110) setting. If knob.distance (T:110) is set to 0, each detent of the knob will move to the next index position, similar to move index (T:78) movements. The axis moves at the speed specified by the maxspeed (T:42) setting, or the slower of maxspeed (T:42) and limit.approach.maxspeed (T:41) if the axis has not been homed. If there are fewer than knob.distance (T:110) microsteps to the end of travel and another move is requested, the axis will move to the end of travel and then stop.

Summary of knob functionality

  • Turning the knob:
    Moves the axis in the direction of knob turn.
  • Pressing the knob:
    Decelerates and stops the axis (identical to a stop (T:23) command).
    Instantly stops the axis, if the axis is already decelerating.
    Warning: Stopping instantly may result in damage to the product and reduced lifespan. Use sparingly if the axis is under heavy load.
  • Pressing and holding the knob for 1 second:
    Toggles between Velocity Mode and Displacement Mode.

Trajectory Control and Behaviour

This section describes the behaviour of the axis trajectory when a movement command is issued.

Software Position Limits

The travel range of the axis is limited by the Minimum Position and Maximum Position settings. The factory settings for the axis are configured to match the physical travel range. If a customized range is desired, it can be changed by configuring the limit.min (T:106) and limit.max (T:44) settings to appropriate values. For the Current Position, query pos (T:60).

Minimum Position
When the Current Position is less than the Minimum Position value, the axis cannot move in the negative direction(towards the motor).
Maximum Position
When the Current Position is greater than the Maximum Position value, the axis cannot move in the positive direction(towards the motor).

Movement Speed

The movement speed of the axis depends on axis status and various speed settings. If the axis has not been initialized by the home (T:1) command or by moving towards the home end of the axis, movement speed will be constrained to fail-safe values. The home status of the axis can be determined by reading the limit.home.triggered(T:53:103) setting.

Movement speed of the axis is specified below:

move vel (T:22)
The axis will move at the specified speed regardless of home status.
Knob movement in Velocity Mode
The axis will move at the specified speed regardless of home status.
The speed is specified by the knob.speedprofile (T:112) and knob.maxspeed (T:111) settings.
Other movement commands - when the axis has not been homed
The axis will move at the slower of the maxspeed (T:42) and limit.approach.maxspeed (T:41) settings.
Other movement commands - when the axis has been homed
The axis will move at the speed specified by the maxspeed (T:42) setting.


Troubleshooting X-Series Motion Devices

The following sections contain tips for troubleshooting common problems. If the device is unable to communicate, and it is operating erratically, a manual factory reset can be performed on most devices using the following steps. Note that this will reset most settings.

  1. Power Off the device
  2. Push and hold the knob for the first Axis (if applicable)
  3. Power On the device
  4. Continue to hold the knob in (for ~5 seconds) until one or more LEDs are fading or the blue LED is lit, then release.

The device has been returned to its factory defaults and can be configured as per the steps in Initial Setup.

Front Panel Indicators

Green LED on.
The device is powered on and is operating normally.
Green LED flashes slowly.
The operating conditions of the device are outside of the recommended range.
This will occur when the supply voltage is either over or under the recommended range or the controller temperature has exceeded the set limit. Check the following:
  • The input voltage is within the operational range of the device. This can be read from the device with the get system.voltage command.
  • The device temperature is within range. This can be read from the device with the get system.temperature command.
Green LED off.
The device is not powered.
Check the supply connections and power adaptor for correct operation.
Red LED on or flashing.
A critical error has occurred.
Please contact Zaber Technical Support.
Yellow LED always off or flashes but no reply.
There are communication errors.
Please see the Communication Errors section below.
Blue (or Green for Firmware versions <7.15) LED Fades In and Out.
The axis is parked.
Issue a tools parking unpark(T:65:0) command, or home (T:1) the axis.
Blue LED blinking twice per second. Axis does not move.
Driver may be disabled due to over-temperature, out-of-range voltage or other driver fault; or due to user request.
See Fx Warning Flags.
Once the issue has been resolved, send driver enable.

Manual Control

Turning the knob either way results in no movement.
The knob may have been disabled.
Check that the knob.enable (T:107) setting is correct.
Restore the default parameters through the system restore (T:36) command.
The axis won't cover the full range of travel.
The axis hasn't been homed.
Turn the knob anti-clockwise until the axis reaches the fully retracted position. The axis will home and the full range of travel available.

Unexpected Behaviour

The axis doesn't respond to a move command.
The axis may need to be homed before use.
Send the home (T:1) command.
The axis is moving on its own and running against the ends of travel.
The position encoder has de-synchronized.
Reset the device by power cycling it or sending the system reset (T:0) command, then re-initialize it with the home (T:1) command.
The axis is moving very slowly. It used to move faster.
The speed settings may have been changed inadvertently.
Send a system restore (T:36) command.
The axis makes louder than normal noise during travel and is frequently slipping.
This condition happens if the thrust needed is more than the thrust available from the axis.
Check the following:
  • The force on the axis is less than the maximum thrust.
  • The voltage matches the specified voltage. Read the voltage using the get system.voltage command. Voltage less than the specified voltage for the device will reduce the positioner’s maximum thrust.
Test the following:
  • Try a slower target velocity. Stepper motors produce more thrust when moving slowly.
  • Try a lower acceleration and deceleration.
  • Clean the screw and lightly re-grease it with a grease that does not degrade plastics.
The axis has repeatability errors smaller than 4 full steps.
If steps aren't being skipped, friction or loose parts may still cause some variation when returning to a position.
Please contact Zaber Technical Support.
The axis doesn't cover the full range of travel, or runs into the end.
A setting might have been inadvertently changed.
The positioner's motor unexpectedly shuts off. An Fx warning flag is present.
The motor over-temperature protection switch has been tripped. This sensor will trip if the positioner's maximum continuous thrust specification is exceeded for too long. To prevent this condition from occurring again, reduce the average force that the motor outputs by reducing acceleration, reducing the load, or lowering the duty cycle.
Send a driver enable command. The axis does not require homing.

Communication Errors

There is no communication with the device; the Yellow LED does not come on or flash.
There are several things that should be checked:
  • Make sure the correct serial port is selected. Try selecting other serial ports in the software.
  • Check the baud rate, hand shaking, parity, stop bit, etc. when configuring the serial communications software. The required settings are listed in the RS-232 Communications section above.
  • Make sure there are no bent pins in the ends of all the data cables
  • Make sure the device is powered. The Green LED should be on.
  • If the computer is a laptop running on batteries, try plugging in the power. Some laptops disable the serial ports when running on batteries.
  • Make sure a null modem adaptor or cable is not being used.
  • Make sure the correct adaptors(if any) are being used. Refer to the pinouts in the RS-232 Communications section above.
  • If the problem was encountered when trying to control the device with custom software, try using one of the demo programs from the Zaber website to verify that the hardware is functioning properly.
Two or more devices both respond to commands sent to device 1.
Most devices are shipped with their device number set as 1. If you connect the devices through Zaber Console, you will be prompted to renumber them. If you aren't able to install and open Zaber Console, send the renumber (T:2) command in the software you are using to set all of the device numbers to different values.
The Yellow LED comes on briefly when sending a command, but the axis does not move and does not reply.
Check baud rate, hand shaking, parity, stop bit, etc. are set as per the RS-232 Communications defaults.
The device numbers may not be what is expected, issue a renumber (T:2) command. Make sure that the computer does not transmit anything else while the devices renumber.
If using the Binary Protocol, check the following:
  • 6 bytes are transmitted and that the device number and command are valid.
  • The software does not transmit any control characters such as line feed and spaces.
  • That the serial port is not configured with a termination character (it often defaults to linefeed).
If problems are encountered when using custom software, try using one of the demo programs from the Zaber website to verify that the hardware works.
The device does not behave as expected when software sends it a series of commands.
The computer might be set to Unicode. This is common for languages that use non-Latin based characters. Go to Control Panel/Regional and Language Options/Advanced. Select a language for non-unicode programs. This should be English or another Latin based character language.
Check what is being sent out of the serial port. stackoverflow.com has a list of some tools to monitor serial ports.
In Binary mode, the device does not send replies but otherwise works.
Auto-reply might have been disabled via T:101.
Send a system restore (T:36) command.
If the problem is encountered when trying to control the device with custom software:
  • Use a demo program from the Zaber website to verify that the hardware is functioning properly.
  • Make sure that the receiving part of the code or commercial package is correct.
  • Check the serial port settings are correct.
  • Check connectors for bent or broken pins.
In Binary mode, the device sometimes returns fewer than 6 bytes.
This typically indicates a problem with the serial port settings. Some serial ports are set to automatically recognize and remove specific control characters such as carriage returns when they appear in the RS-232 receive buffer.
Check that the settings are correct and are not removing or replacing characters.

Slipping and Stalling

The axis makes noise but does not move.
The axis is stalling.
Try removing all external loads. If the axis now extends and retracts normally, the problem is excessive load. Try to reduce the load and ensure the load is less than the maximum thrust. A higher thrust or torque can be achieved by lowering the speed of the axis using the maxspeed (T:42) setting.
If an axis is stalling with no external load at default speed and acceleration settings then it requires servicing.

Warranty and Repair

For Zaber's policies on warranty and repair, please refer to the Ordering Policies.

Standard products

Standard products are any part numbers that do not contain the suffix ENG followed by a 4 digit number. Most, but not all, standard products are listed for sale on our website. All standard Zaber products are backed by a one-month satisfaction guarantee. If you are not satisfied with your purchase, we will refund your payment minus any shipping charges. Goods must be in brand new saleable condition with no marks. Zaber products are guaranteed for one year. During this period Zaber will repair any products with faults due to manufacturing defects, free of charge.

Custom products

Custom products are any part numbers containing the suffix ENG followed by a 4 digit number. Each of these products has been designed for a custom application for a particular customer. Custom products are guaranteed for one year, unless explicitly stated otherwise. During this period Zaber will repair any products with faults due to manufacturing defects, free of charge.

How to return products

Customers with devices in need of return or repair should contact Zaber to obtain an RMA form which must be filled out and sent back to us to receive an RMA number. The RMA form contains instructions for packing and returning the device. The specified RMA number must be included on the shipment to ensure timely processing.

Email Updates

If you would like to receive our periodic email newsletter including product updates and promotions, please sign up online at www.zaber.com (news section). Newsletters typically include a promotional offer worth at least $100.

Contact Information

Contact Zaber Technologies Inc by any of the following methods:

Phone 1-604-569-3780 (direct)
1-888-276-8033 (toll free in North America)
Fax 1-604-648-8033
Mail #2 - 605 West Kent Ave. N., Vancouver, British Columbia, Canada, V6P 6T7
Web www.zaber.com
Email Please visit our website for up to date email contact information.

The original instructions for this product are available at https://www.zaber.com/manuals/X-NMS.

Appendix A - Available Communications Ports

Finding Installed Serial Ports

Windows

  1. Open Search or Run from the Start Menu or Taskbar, type "Device Manager" and press enter.
    Win-serport-1.png
  2. Expand the Ports (COM & LPT) category.
    Win-serport-2.png
    • In this example there are two serial ports available (COM1 and COM15), which are both USB adaptors.

Linux

  1. Finding devices
    • Open a terminal and execute the following command:
    dmesg | grep -E ttyU\?S↵
    • The response will be similar to the following:
      [ 2.029214] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
      [ 2.432572] 00:07: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
      [ 2.468149] 0000:00:03.3: ttyS4 at I/O 0xec98 (irq = 17) is a 16550A
      [ 13.514432] usb 7-2: FTDI USB Serial Device converter now attached to ttyUSB0
    • This shows that there are 3 serial ports available: ttyS0, ttyS4 and ttyUSB0 (a USB adaptor)
  2. Checking port permissions
    • Using the ports found above, execute the following command
    ls -l /dev/tty{S0, S4, USB0}↵
    • The permissions, given below, show that a user has to be root or a member of the dialout group to be able to access these devices
      crw-rw---- 1 root dialout 4, 64 Oct 31 06:44 /dev/ttyS0
      crw-rw---- 1 root dialout 4, 68 Oct 31 06:45 /dev/ttyS4
      crw-rw---- 1 root dialout 188, 0 Oct 31 07:58 /dev/ttyUSB0
  3. Checking group membership
    groups↵
    • The output will be similar to the following:
      adm cdrom sudo dip plugdev users lpadmin sambashare
      Notice that dialout is not in the list
    • A user can be added to the dialout group with the following command
    sudo adduser $USER dialout↵
    • Group membership will not take effect until the next logon.

OSX

  1. Finding devices
    • Open a terminal and execute the following command:
    ls /dev/cu.*serial*
    • The response will be similar to the following:
      /dev/cu.usbserial-FTB3QAET
      /dev/cu.usbserial-FTEJJ1YW
    • This shows that there are two serial ports available, both of which happen to be USB adaptors.
    • There may be other devices that match this query, such as keyboards or some web cameras. To determine which one corresponds to your USB serial cable, try repeating the command with and without the cable connected to the computer, to see which one appears and disappears.