SmartMotor Response Rates

Submitted by Automation Engineering Staff

How fast are the Analog to Digital pins on the SmartMotor read and converted?

The acquisition time is 25 to 30 microseconds and the conversion time is about the same.

The literature mentions "4kHz 32-bit motion".  Does this mean a position update loop of 250usec (1/4kHz)?

Yes, a position update every 1/4000 seconds.

What is the best time resolution that you can get trying to synchronize motors over the network?

Your literature indicates that you can synchronize the motors via hardware (presumably the I/O port). Can you provide me details on how this is done? I am still curious about what performance can be attained over the network, so could you also ask your software people what the latency is when synchronizing motors via the network.

At its most basic, we can synchronize motors by hardware. In this mode, a motor will wait for a signal from a limit switch, another motor or external source before commencing a position change. This is perhaps the slowest method because movements are timed according to 'mechanical' events. Our network options are possible with series (RS232) or parallel (RS485) configurations. In RS232, each motor receives its commands preceded by that motor's unique address. A command for a specific motor must travel through the each motor that lies between the controller and the specific motor before it is 'seen' by the target. Each motor takes approximately 0.25 milliseconds to receive and re-transmit a command. The command for the target motor will be delayed according to the number of motors between it and the controller, and the number of other commands coming down the network. If the network may carry commands to and from other devices and the motor has to wait while this traffic passes before it can receive and read its instructions.

Response rate is a real differentiator of servomotors and an indicator of the capability of the on-board processors. In a worse case scenario long instructions and low baud rate, we take 5ms to read, receive and process an instruction. With typical faster baud rates and command lengths, the time can come down to 1 ms. Using RS485 mode, the motors are connected in parallel to the network and all motors read instructions simultaneously. A motor will ignore an instruction unless it is addressed to that specific motor.

How long does it take until a command is executed?

Depending on the PID tuning values, execution time is around 0.3 milliseconds. The time taken for RS232 commands to pass along a set of SmartMotors in series is as follows:
The time for the SmartMotor controller to process a 14 character command, at 107 micro seconds per character is 1.5 ms.  The process time can be 1 to 6 servo cycles.   The servo rate is 4 kHz, 6 servo cycles in 1.5 ms.  Latency, the time for an incoming signal to be read, processed and retransmitted as an output to the next motor on the RS232 is 2 to 3 ms.

How long does it take to transition out of Mode Follow to Position or Velocity Mode?

Transition time to Position and Velocity Mode is around 5.4 ms and 6.2 ms, respectively.