Table of Contents |
---|
Additional Information
https://revolutionpi.com/io-modules?noredirect=en-US
High-Side
Here is a practical example of implementing a High-Side circuit with a RevPi DIO | DO module.
Useful information for this article:
https://revolutionpi.com/tutorials/overview-revpi-i-o-modules/konfiguration-dio-di-do/
Features
A high-side switch refers only to the position of the switch. A high-side switch switches the positive supply voltage. See the illustration below.
All 14 output ports can supply 500mA simultaneously, in high-side mode.
All outputs can be individually set to push-pull, which is the default setting, or to high-side mode.
If the module gets too warm, all ports are switched off. This prevents the device from being damaged.
See under the tuple “Status” under the following link https://revolutionpi.com/tutorials/overview-revpi-i-o-modules/konfiguration-dio-di-do/
Wiring
Connect The RevolutionPi Revolution Pi DIO as in the Following picture
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
DIO
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
DO
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Connect 12V -24V to the X4 plug located on the bottom of the device.
Connect 12V -24V to the X2 plug on the top of the unit to supply power to the output ports.
Connect 12V -24V to the X2 plug on the top of the unit to supply power to the Input ports.
Connect all the grounds marked on the plugs X4 and X2 together.
Connect one port from Output 1 to 14 to the electrical consumer [M], [M] can be a 24V LED
Connect the ground from the electrical consumer [M] to the same ground as the RevolutionPi Revolution Pi (X4 plug)
Connect the extension module with a base module
Connect the RevolutionPi Revolution Pi DIO to the RevolutionPi Connect Revolution Pi, with a PiBridge.
PiCtory Configuration
The following describes how to set up the PiCtory configuration to run the DIO in high-side mode.
For this example, you can use a RevolutionPi Revolution Pi Core or Connect. The only difference for this example is which base module is inserted into PiCtory.
Set output to high-Side mode
for high-side mode, 2 bytes are available to switch each output from push-pull to high-side.
Set the corresponding bit to 1 for high-side mode and 0 for push-pull mode. The default value is 0x0000.
For example, you want to run Output O_14, O_10 and O_2 in high-side mode.
The Binary value is 00101000000000102 = 10.24210
10.242 is the decimal value you need to enter into the corresponding field.
Save the config like in the picture below, with “Save as Start-Config“Config”. This Configuration will be load loaded at each boot.
Now you have to reset the driver.
Tools → “Reset Driver”
or
Code Block |
---|
piTest -x #driver reset |
Switching output with piTest from
piControlPiControl
Check that the RevolutionPI Revolution Pi DIO is detected correctly.
Code Block |
---|
piTest -d |
Code Block |
---|
Found 2 devices: Address: 0 module type: 105 (0x69) RevPi Connect V1.0 Module is present input offset: 113 length: 6 output offset: 119 length: 5 Address: 31 module type: 96 (0x60) RevPi DIO V1.4 Module is present input offset: 0 length: 70 output offset: 70 length: 18 |
Control of the DIO Output ports
Switch Output 1 (0_1)
Code Block |
---|
piTest -1 -r O_1 Bit value: 0 piTest -w O_1,1 Set bit 0 on byte at offset 70. Value 1 piTest -1 -r O_1 Bit value: 1 |
If output 1 = 1, the circuit is closed.
If output 1 = 0, then the circuit is not closed.
Push-Pull
Here is a practical example of implementing a push-pull circuit with a RevPi DIO | DO module.
Useful information for this article:
https://revolutionpi.com/tutorials/overview-revpi-i-o-modules/konfiguration-dio-di-do/
Wiring
Here, there are two possibilities for a circuit:
Push Mode
Drawio | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Pull Mode
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
PiCtory Configuration
The register “OutputPushPull” contains a bit field in which is defined which function is active:
0 := Push-Pull
1 := High-Side
For example, the following configuration should be created:
11 1111 1111 1110 dual = 16382 decimal
Write the decimal value into the variable “OutputPushPull”
Save the PiCtory configuration
Restart cyclic data communication
Switch
Code Block | ||
---|---|---|
| ||
piTest -w O_1,1 # Output 1 := 24V piTest -w O_1,0 # Output 1 := 0 |
Read input values
How to read values from the inputs of the RevPi DIO | DI
Code Block | ||
---|---|---|
| ||
piTest -r I_1 # Input 1 := 12V 1 piTest -r I_1 # Input 1 := 0V 0 |
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Input Mode
If you want would like to know more about the input modes, please watch our video.
https://revolutionpi.com/tutorials/video-tutorials#VT14 | Tutorial 14 – Counter and Encoder
Encoder
if you want to user use an encoder an any inputport input port of the RevPi DIO | DI. then set the variable
InputMode_x_yz to Encoder
Counter
All inputs, of the DIO, DI that have been activated, can count individually on rising or falling edge.
To read the value of on counting register:
Code Block |
---|
piTest -r Counter_1_xyz |
If there are incorrect inputs, you should switch on the debouncing. by By default, this is switched off.
Set it to 25us, 750us or 3ms.
PWM
To activate the PWM signal, you have to set the following variable to 1.
Code Block |
---|
OutputPWMActive_i04 = 1 |
In the PiCtory you can configure the period of the PWM Signal
This function is availably available on the RevPi DIO | DO
each individual output can send out a PWM signal.
Info |
---|
You can select only one frequency for all outputs. |
Note: If you want would like to know more about the input modes, please watch our video.
https://revolutionpi.com/tutorials/video-tutorials#VT14 | Tutorial 15 – PWM on RevPi DIO