#1 Programmable I/O
I/O! I/O! It’s off to work we go!
Programmable I/O (input/output) is very useful for allowing digital servo drives to interact with each other or other elements in a system with simple high/low voltage signals assigned by the user.
Programmable digital inputs act as variables for a servo drive, and they can be completely independent of the input from the main controller or network. These inputs can still come from the controller, but they can also come from other servo drives, other electronic devices in the system, or even something as simple as a push button or switch. These programmable inputs can be configured to trigger servo drive events, such as enable, inhibit, jog, execute an indexed move, enable a sequence, or a number of other functions.
Programmable digital outputs, on the other hand, are variables sent out from a servo drive. These can be programmed to be triggered and sent from the drive when certain conditions are met or events occur, such as over-speed, position, inhibit, enable, a sequence step, or even receiving a digital input. The outputs send a high or low voltage signal to other electronic equipment in the system, including the controller or even the input terminals of other servo drives.
Great. What can you do with that?
Together, I/O allows the servo drives to play a greater role in the operations of the machine or robot. In certain cases, this can be something as simple as turning on a light while a motor is spinning or triggering a tone once a motion cycle is complete. However, it can also be used very effectively to take the computational load off of the controller and/or network, and in some cases, it can actually improve the synchronicity, safety, and reliability of the device.
One interesting use of I/O is to use one servo drive to trigger indexes and sequences in other servo axes. This is the case with ADVANCED Motion Controls’ five ball toss demo, where five balls are tossed by linear motors through spinning rings spun by rotary motors. This means there are ten motion axes in the system, and thus there are ten servo drives.
Following so far? If you need a visual, you can check out the video here.
When each ball is tossed, the servo drive controlling the linear motor sends a digital output which is received as an input by the servo drive for the rotary motor, triggering the spin motion. Having the spin motion completely dependent on the toss motion not only guarantees the correct timing every time, it also means only the five servo drives for the linear motors need to be on the network, and are therefore the only servo drives the controller needs to consider.
This same principle can be applied to any other device where one function should be dependent on the other, such as a liquid dispenser for containers on a conveyer belt, ensuring that the dispenser is only activated when the container is in the correct position using a programmable limit switch, a digital output specifically based on motor position.