A number of commercially available board-level computers are targeted specifically at servocontrol. These devices might take inputs from a control panel or a host computer. For example, many dedicated controllers today consist of cards that reside in industrially hardened PCs, or in VMEbus card cages. They take high-level positioning commands such as move the slide 10 inches from computers on other cards.
These servocontroller systems also provide dedicated interface hardware to accept and process position-encoder feedback signals and to generate drive signals for a servoamplifier. Finally, they run software that closes a feedback loop and stabilizes the system.
Any digital servocontroller must be able to operate reliably in the electrically noisy industrial environment. Noise immunity must go beyond mere shielding, bypassing, and optical coupling. The controller must be designed to fail gracefully in the event that noise garbles signals. However, not all controllers provide such safeguards.
Three types of input/output signals must be protected from noise interference: encoder inputs, servodrive output, and any discrete I/O that the digital servocontroller provides. Feedback encoder signals are particularly sensitive to noise. Corruption of these signals can cause position inaccuracies, jerky or rough operation, and even dangerous unexpected motion.
One way to minimize such noise effects is with differential encoders. Here, each encoder channel signal is transmitted to the digital servocontroller over two wires. Position information is transmitted as the difference between the two signal levels rather than as a voltage level referenced to ground.
Not all digital servocontroller boards can accept differential encoder inputs, however. Nor do all boards capable of servocontrol use optically isolated inputs. In general, less-expensive boards do not provide such isolation. These products are best suited for laboratory and light industrial use.
The servocontroller typically provides a ±10-V output to the servodrive. These signals are more difficult to optically isolate than the relatively small encoder signals. In some cases, digital servocontrollers use a conventional digital-to-analog converter (DAC) to provide an output voltage. In this case, an analog isolation amplifier may be used on the DAC output, or separate optocouplers can handle each of the input bits. Usually, however, both these isolation techniques are prohibitively expensive.
Isolation is less expensive when the servocontroller generates a high-frequency PWM signal. A PWM output can be easily isolated with conventional optocouplers. The resulting isolated output can then be converted to the required ±10-V signal needed to drive motors.
To maintain the integrity of the optical isolation, an isolated ±12 to ±15-V supply must power the circuitry between the PWM output of the controller and the ±10-V output to the motor. In most cases, the servoamplifier provides these voltages, without needing a separate supply.
It is standard industrial practice to optically isolate all discrete inputs and outputs. A complete digital servocontroller for industrial applications must not only provide discrete I/O for motion-related functions, but should also incorporate on-board optical isolation for protection from switching transients and fault voltages.
Industrial I/O usually operates at either 120 Vac or 24 Vdc. Many applications use both. But digital servocontrollers should provide only 24 Vdc to ensure that 120-V line voltages are kept away from sensitive microprocessor circuitry.
In general, servocontrollers must handle a few discrete inputs and outputs having functions intimately tied to the control of axis motion. These I/O include the home limit switch and encoder marker, axis-overtravel switches, drive-fault input, and drive-enable output. For best performance, the servocontroller should handle these motion-specific I/O directly, but not all controllers provide for such specialized I/O.
Because position-feedback encoders are typically incremental, a servocontroller must be able to find a known absolute home position to calibrate its motion. This calibration uses both a home limit switch and the marker channel on the encoder. Thus, the servocontroller must handle the encoder marker and home limit-switch inputs.
The encoder marker is a third output from the incremental encoder that indicates a single, unique position of the encoder. In some applications, the encoder marker alone provides enough information to establish a unique reference position for axis calibration. Applications in this category include rotary indexing tables or machines using linear encoders. Usually, however, the encoder completes many revolutions within the travel range of the axis, so the encoder marker alone is not enough to define a unique reference position.
A home limit switch activates at only one position in the total travel of the axis. This switch can be mechanical, optical, magnetic, Hall effect, and so forth. By first searching for the home limit-switch signal and then for the encoder marker signal, the digital servocontroller can home the axis and quickly establish a precise reference position over a large range of travel.
Overtravel switches prevent a programming error or fault condition from damaging the axis mechanics. The axis activates these switches when it reaches its defined travel limits. The digital servocontroller can inhibit axis motion to prevent machine damage when it senses the overtravel switch closure.
Most servoamplifiers provide an output that activates when a fault within the amplifier takes place. Obviously, if the servoamplifier malfunctions, the digital servocontroller cannot control the axis and must inhibit further motion until the fault clears. Thus, the controller should provide a drive-fault input to handle the drive-fault output from the servodrive.
Most servoamplifiers also provide a drive-enable input. Servocontrollers can use this input to enable and disable the amplifier to avoid unexpected motion during system start-up and shutdown. In addition, the servoamplifier should be disabled immediately whenever the servocontroller detects a fault. The controller, thus, should provide a drive-enable output to allow for enabling and disabling the servoamplifier.
Besides monitoring and reacting to discrete sensor signals that warn of external faults, the servocontroller must monitor its own internal conditions and take action if those conditions could cause damage.
Some fail-safe measures have become standard on industrially hardened computers. For example, many such devices incorporate a watchdog timer circuit. This circuit controls a relay contact that can cut power to the machine. A typical watchdog time-out event might consist of a loss of the encoder-feedback signal, or some other condition that could occur if the machine was moving out of control.
Another kind of watchdog circuit shuts down the machine if the controller fails. One way to implement this function is with a circuit that only stays activated as long as it receives a periodic signal from the servocontroller. The hard-contact output of the circuit is generally incorporated into the machine emergency-stop circuit or other safety shutoff.
If the servoamplifier fails, it activates a drive-fault input to the digital servocontroller. The controller then takes action to minimize the effect of the fault. Normally, this action might consist of stopping axis motion, disabling feedback, and notifying the operator or host control system. Of course, when the fault in the drive system clears, the servocontroller must also be able to reestablish control without unexpected axis motion. As long as power to the encoder is present, the servocontroller must also resume operation without reestablishing the home position.
When an axis exceeds maximum travel, severe damage can result. Limit switches are usually employed to alert the servocontroller of impending overtravel. In addition, the actual position of the axis reported by the encoder can be continuously compared to predefined maximum travel values to provide secondary overtravel protection. This secondary protection is generally called software travel limits. Software travel limits can be used in conjunction with or in place of overtravel limit switches.
When used for overtravel protection, a software travel limit is usually considered a fatal fault. As in the case of hitting hardware limit switches, the controller stops any motion on the axis, disables the software-feedback loops and the drive, and advises the host of the problem.
The limit-switch placement should allow sufficient deceleration distance between the software travel limits and the overtravel limit switches. Otherwise, the system may not have enough space to stop without tripping an overtravel limit switch.
Activating an overtravel limit switch is always interpreted as a fatal fault. Here, the servocontroller must again shut down the machine. Enough travel distance must be provided beyond the overtravel limit switch for the axis to come to a complete stop without damaging the machine mechanics.
Servo following error is the axis-position error, or the difference between the commanded and actual positions, when the axis is moving. The digital servocontroller should monitor the servo following error and constantly compare it to the preset following error tolerance value. If the tolerance value is ever exceeded, the controller must stop all axis motion, disable feedback and the servoamplifier, and notify the operator.