Laser 2000

Zaber Controller feature: AutoDetect

By Stephen Hunt, Zaber Technologies’ Firmware Team
10th January, 2023
On this page:

Zaber controllers can support a wide variety of peripherals (i.e. motion control solutions with motor and mechanics, but excluding the driver and controller), including rotary and linear models, stepper and direct-drive motors, different encoder and limit sensor types, and a range of motor rated currents. Each peripheral needs to be controlled differently to achieve high performance and also to avoid damage. For instance, if the controller mistakenly supplied 3 Amps to a small motor rated for 0.5 Amps, it would certainly overheat the windings and damage the motor. To ensure situations like this are avoided, and to make set-up as easy as possible, all new Zaber controllers and peripherals have a feature called AutoDetect. Peripherals with AutoDetect contain electronics that can uniquely identify the specific model. Controllers with AutoDetect can automatically identify a connected peripheral, adjust configuration settings appropriately, and drive the peripheral safely. When driving peripherals without AutoDetect (including legacy peripherals and non-Zaber peripherals), the controller can still help prevent misconfiguration.

AutoDetect peripherals
AutoDetect peripherals have a chip inside that allows Zaber controllers to identify them and configure settings automatically.

Peripheral detection and activation

In the context of a Zaber controller and peripheral, “activation” refers to all the steps a controller performs to configure one of its axes to safely drive a particular peripheral. Note that controllers may have one or more axes and each may be activated independently. When a controller axis is “active” (i.e. has been “activated”) the controller will accept motion commands for the axis and attempt to drive the connected peripheral using the currently configured settings, such as hold current and running current. When a controller axis is “inactive” (i.e. has been “deactivated”) the controller will reject motion commands for that axis with the reason INACTIVE and will not apply any current to a connected peripheral.

Peripheral activated.
In most cases, AutoDetect peripherals will activate automatically when plugged in. This LHM peripheral has been activated.

Controllers with the AutoDetect feature constantly monitor each of their axes to detect whether a peripheral is connected. When there is no peripheral connected to an axis, the controller will automatically deactivate that axis (i.e. disable the driver, present the FZ (Peripheral Inactive) warning flag, and reject motion commands with the reason INACTIVE). When the controller detects that a peripheral has been connected to an axis, the controller will first determine if it is safe to activate the axis (i.e. update relevant settings, enable the driver, and begin accepting motion commands). The activation process differs depending on whether the peripheral also has the AutoDetect feature or not.

Peripheral inactive
This AutoDetect peripheral has an inactive fault, likely due to being unplugged. The axis will reject motion commands until it has been activated.

Peripherals with AutoDetect

AutoDetect peripherals contain an on-board memory chip with identifying information such as the peripheral ID, serial number, and sometimes other data. Their product names always end with the letter “A”. When an AutoDetect peripheral is connected to an AutoDetect-capable controller, the controller reads the peripheral ID.

The controller will automatically activate the axis the peripheral is connected to under the following conditions:

  • The controller axis hasn’t yet been configured for any peripheral ID.
    In this case, the controller will configure the axis using default (safe) settings for the detected peripheral ID, update peripheral.id, enable the driver, clear the FZ warning flag, and begin accepting motion commands.
  • The controller axis has already been configured for the same peripheral ID.
    In this case, the controller will keep the current axis configuration, enable the driver, clear the FZ warning flag, and begin accepting motion commands.

The controller will not activate the axis if it has already been configured for a different peripheral than the one connected. In this case, the prior axis configuration will also be retained. This ensures accidentally connecting the wrong peripheral will not overwrite custom configuration data on the controller. To activate the axis send the activate command. The controller will then reconfigure the axis with default (safe) settings for the connected peripheral ID, update peripheral.id, enable the driver, remove the FZ warning flag, and begin accepting motion commands.

Axis pre-configured for a different peripheral.
This axis was pre-configured for a different peripheral, so the new one needs to be activated manually.

Peripherals without AutoDetect

Legacy peripherals without the AutoDetect feature (i.e., those whose product name does not end with the letter “A”, or those purchased before June 2020) do not have the onboard electronics necessary to identify themselves. Newer controllers, such as the X-MCC, will not automatically activate an axis when a legacy peripheral is connected. Instead, one must set peripheral.id or send the activate command after connecting the peripheral in order to activate the axis. However, older AutoDetect-capable controllers, such as the X-MCA or X-MCB, will automatically activate an axis when a legacy peripheral is connected. On these controllers it is important to set peripheral.id to the ID on the peripheral’s label before connecting the peripheral.

In certain situations controllers may not be able to detect the connection or disconnection of a peripheral without AutoDetect. In particular, X-MCA and X-MCB controllers cannot detect whether a legacy peripheral without an encoder is connected or disconnected. See the Peripherals without the auto-detect feature section in the Zaber ASCII Protocol Manual for more details.

Set peripheral ID manually for peripherals without AutoDetect.
The peripheral ID must be set manually for older peripherals without AutoDetect.

Conclusion

The AutoDetect feature of Zaber controllers ensures that all Zaber peripherals will be properly configured and have excellent performance. In most cases, Zaber controllers can automatically detect the connection of peripherals, and activate corresponding axes, allowing peripherals to be used as soon as they are connected. In other cases only minimal effort is required from the user.

For more detailed information about the AutoDetect feature, see the peripheral section in the Zaber ASCII Protocol Manual. If you are having problems activating your peripheral, please contact us.

Interested in Zaber Motion Control?

Complete the form below and we’ll answer any questions you may have for us. Find out how Laser 2000 can help integrate motion control solutions from Zaber Technologies into your application.

By submitting this form you consent to us contacting you with relevant information.

You can unsubscribe at any time.

BACK
TO TOP

Interested in Zaber Motion Control?

Complete the form below and we’ll answer any questions you may have for us.

Find out how Laser 2000 can help integrate motion control solutions from Zaber Technologies into your application.

By submitting this form you consent to us contacting you with relevant information.

You can unsubscribe at any time.