Digital Output I/O Module, 8 Channel Relay SPDT, 10 Amp, RS485, Modbus Interface
Regular price
$99.95 USD
Sale
Model No: VP-EC-8KO
This is an 8 Point Relay I/O Module, 24 VDC Powered and RS485 Modbus RTU Interface. Great for industrial applications as well as Arduino and Raspberry Pi projects when used with RS485 interfaces. The PIC processor has the ICSP port available making the relay module a development as well.
Specifications:
- Power: 24 VDC
- Network: RS485, Jumper selectable 9600 or 19.2K Baud, N81
- Modbus RTU Protocol
- Modbus ID: Dipswitch Selectable
- Relay Output: OMRON G5LE-14 24 VDC, 10 A, SPDT (Single Pole Double Throw)
- Relays are OMRON Series G5LE - UL,CSA, (Or Equivalent) EN standards approved and conforms to Electrical Appliance and Material Safety Law (300 V max.)
- Protection: MOV's on contact outputs
- Relay Test: Jumper to test relay operation, cycles thru relays K1 thru K8 ON
- 5VDC Switching Power Supply
- 3.3 VDC Linear Regulator
- Supports Modbus Function 15 "Write Multiple Relay Coils"
- Dimensions: 3.4" wide x 6.15" long
Processor:
- PIC18F45K20
- c/w ICSP Port
- Can be used as a development platform for power relay projects
Indicators:
- Power On: BLUE LED
- Relay 1 thru 8: RED LED ON
- Heart Beat: AMBER LED (Flashes to indicate proper operation)
- RS485: GREEN LED Rx, RED LED Tx.
Options:
- DIN Rail Enclosure 6.5" Long x 3.5" Wide x 1" High
Available in Black (Standard), Blue (Custom) and White (Custom)
Fabricated with PETG Plastc
For Modbus Registers and programming information, please visit the product page at vpprocess.com.
Sample Raspberry Pi 3 "C" Code Function
void VP_EC_8KO_Relay_Output(void)
{
char i, index;
char tx_buffer[11];
unsigned int checksum;
fd = serialOpen("/dev/ttyS0", 19200);
if(fd < 0)
{
printf("Error opening Serial Port \nn");
return;
}
index = 0;
tx_buffer[index++] = MODBUS_ID_RELAY;
tx_buffer[index++] = 15;
tx_buffer[index++] = 0;
tx_buffer[index++] = 0;
tx_buffer[index++] = 0;
tx_buffer[index++] = 8;
tx_buffer[index++] = 1;
tx_buffer[index++] = Relay_Status;
checksum = MB_crc16(tx_buffer,index);
tx_buffer[index++] = (char)(checksum & 0x00ff);
tx_buffer[index++] = (char)((checksum >>8)&0x00ff);
digitalWrite(DIR_RS485, HIGH);
delay(5);
for(i=0; i<index; i++)
{
serialPutchar(fd, tx_buffer[i]);
}
delay(50);
digitalWrite(DIR_RS485, LOW);
serialClose(fd);
}