The ACM5004-2-I model is supplied with a green connector block on the side by default. The first two connectors on this block (marked DIO1 and DIO2) are digital interface ports ( TTL level digital I/O ports 5V max @ 20mA) which can be configured to have external sensors / devices attached.
The ACM5508-2-I and ACM5504-5-G(V-W)-I models have four digital interface ports which present on a green connector block on the side of the unit:
- DIO1 and DIO2 are two TTL level digital I/O ports (5V max @ 20mA)
- OUT1 and OUT2 are two "High-Voltage" digital Output ports (>5V to <= 30V @100mA)
The I/O ports are configured via the I/O port page which is found under the system menu. Each port can be configured with a default direction and state.
- Select the System: I/O Ports menu
Digital I/O Output Configuration
Each of the two digital I/O ports (DIO1 and DIO2) can be configured as an Input or Output port. To use them as digital outputs first configure the port direction on the System: I/O Ports menu page.
The DIO1 and DIO2 pins are current limited by the chip to 20mA and accept 5V levels – so they cannot drive a relay etc.
Alternately you can change the output states using the ioc command line utility. The following text is the usage message from the ioc usage:
ioc: digital io-port controller:
-p pin_num pin number (1 to 4)
-d pin_dir pin direction (0 = output 1 = input)
-v pin_val pin electrical value in output mode (0 = low 1 = high)
-r reset pins to all inputs and low
-g displays the pin directions and current values
-l load pin configuration from configlity
For example, to set pin 1 to a low output, type:
ioc -p 1 -d 0 -v 0
To pulse one of these outputs, use a script like the following:
ioc -p 1 -d 0 -v 1
ioc -p 1 -d 0 -v 0
This will set the output high for 1 second, then return it to low (assuming the initial state is low)
Digital I/O Input Configuration
When either of the two digital I/O (DIO1 & DIO2) outlets is configured as an Input on the System: I/O Ports, it can be used to monitor the current status of any attached sensor.
When configured as inputs (and this is the factory default) these first two ports are notionally attached to an internal EMD. So to configure them as alarms, go to the Environmental page and edit and enable the Internal EMD.
Also the low voltage circuits in DIO1 and DIO2 should not be wired to voltages greater than 5V DC.
Alternately these input ports can be monitored using the ioc command line utility (as detailed in the previous section
High Voltage Outputs
OUT1 and OUT2 (internally DIO3 & DIO4) outlets are wired as high voltage outputs. The way these outputs are expected to be used is to pull a power connected line to ground (i.e. the OUT1 and OUT2 transistors are open collector).
The I/O port header includes a 12v reference line (VIN) which can be used to detect the line state change.
For example, to light a 12v LED using the high voltage outputs, connect the positive leg of the LED to the 12v reference, and the negative leg to output pin 4. Due to the way that the I/O port is connected internally, the output has to be set "high" to pull the output to ground.
The following command will switch on the led:
ioc -p 4 -d 0 -v 1
OUT1 and OUT2 transistors can operate with a supply of >5V to <= 30V @100mA. This means to drive a relay circuit you must guarantee it doesn't provide more than 100mA when set to 1.
Article is closed for comments.