Digital Inputs / Outputs

From mediawiki_02
Jump to: navigation, search
Digital IO connection

The CPR robolink control comes with a digital input / output module. This page shows how to connect actors, valves or sensors to the module.

The Digital IO module provides 7 digital inputs and 7 digital outputs. The inputs are decoupled by optocoupler and accept 24V input signals. The outputs are reed relays which can drive up to 500 mA per channel.

Indicators: When the state of a sensor input or and output changes the orange LED on the top is blinking once.

Project Configuration

Each robot control is delivered with and configured for one Digital IO Module, there is nothing to do to use this. If you want to add another one please add a line in the project file, e.g. c:\CPRog\Data\Project\51_IGUS_arm5DOF_SV.prj:

<DIOModule ID="112"/>
<DIOModule ID="128"/>

The second line adds a Digital IO module with CAN ID 128 = 0x80. The ID switch on the physical module has to be set to 2 to match this ID.

Naming Conventions

All CPR robots provide digital inputs and outputs on channels 1 to 4.

In the case of the robolink arm these channels are only mapped from the original channels which are:

  • For the first DIO-Modul: 21 to 27
  • For the second DIO-Modul: 31 to 37
  • For the third DIO-Modul: 41 to 47

More than 3 DIO modules are not possible.

Attention: The DIO are also used by the PLC Interface (if active), refer to this.

Digital IO connection

Output Usage: The output signals can be switched on or off with the 'Digital Out' command.

  • The 'Local' parameter has to be 'true' to use the physical outputs. If it is 'false' the virtual global outputs are used.
  • The 'Ch' channel parameter defines the output channel, see the naming conventions above
  • The 'State' parameter tells CPRog to switch the output on 'true' or off 'false'

Please be aware that the outputs can only be switched on when the robot is enabled!

Attention: The outputs must not drive more then 500 mA, also not at startup! Avoid higher currents e.g. due to capaciators! Use a secondary relay in this this case.

Input Usage: The digital inputs can be used e.g. in if-then-else statements. The local and channel parameters are used as above.

The program on the right shows a simple test. The first input of DIO module 1 is checked in a loop. If it is true than the first output is set.


The picture on the right shows an output example: The first pin ( upper left line ) accepts the power supply for all outputs. The other seven lines are the outputs of the reed relays. This means, the relay connects, when switched on, the supply pin (first pin) with the according output pin.

For inputs its the same: the first pin is the ground pin, to be connected with the sensor ground. The sensor signal is connected with one of the seven input pins.