RS-485 's Introducción
Lectura previa
Requisitos para trabajar con RS-485
RS-485 en M-Duino
ral audience in mind, your story will ring false and be bland. No one will be interested. Write for one person. If it’s genuine for the one, it’s genuine for the rest.
RS-485 en Ardbox
ForPara la familia Ardbox tenemos dos subfamilias. En ésta, tenemos que elegir entre RS-485 y RS-232 utilizando los interruptores y puentes como mostramos en la siguiente imagen:
Jumper zone 1: RS-232 / RS-485 HW.
Jumper zone 2: RS-232 SW / Q0.8 and Q0.9.
Jumper zone 1: RS-485 FD / A0.0 and A0.1.
Jumper zone 2: RS-232 SW / I0.2 and I0.3.
Jumper zone 3: RS-232 / RS-485.
Hardware
Lo primero que tenemos que hacer es asegurarnos de que nuestro PLC está alimentado con 12-24Vdc.
Los pines del PLC que tenemos que utilizar para la comunicación RS-485.
#incluir <RS485.h>
Para comprobar la activación de RS-485 solo tienes que utilizar el monitor serie del Arduino IDE usando la oración correcta dentro de la función setup ().
Serial.begin(9600);
También es importante implementar la inicialización en la función setup().
RS485.begin(38400);
IMPORTANTE: COMPRUEBA LA VELOCIDAD DE TRANSMISIÓN DE LOS DISPOSITIVOS PLC-PORTÁTIL Y PLC.
Un ejemplo básico de escritura en el RS-485:
// Include Industrial Shields libraries
#include <RS485.h>
//// IMPORTANT: check switches configuration
////////////////////////////////////////////////////////////////////////////////////////////////////
void setup() {
// Begin serial port
Serial.begin(9600);
// Begin RS485 port
RS485.begin(38400);
}
////////////////////////////////////////////////////////////////////////////////////////////////////
void loop() {
// Wait bytes in the serial port
if (Serial.available()) {
byte tx = Serial.read();
// Echo the byte to the serial port again
Serial.write(tx);
// And send it to the RS-485 port
RS485.write(tx);
}
}
// And send it to the RS-485 port
RS485.write(tx);
}
}
Un ejemplo básico de lectura del RS-485:
// Include Industrial Shields libraries
#include <RS485.h>
//// IMPORTANT: check switches configuration
////////////////////////////////////////////////////////////////////////////////////////////////////
void setup() {
// Begin serial port
Serial.begin(9600);
// Begin RS485 port
RS485.begin(38400);
}
////////////////////////////////////////////////////////////////////////////////////////////////////
void loop() {
// Print received byte when available
if (RS485.available()) {
byte rx = RS485.read();
// Hexadecimal representation
Serial.print("HEX: ");
Serial.print(rx, HEX);
// Decimal representation
Serial.print(", DEC: ");
Serial.println(rx, DEC);
}
}
Ejemplo básico de RS-485 Full Duplex:
Antes de iniciar la prueba, conecta A, B (receptores) a los Y, Z (transmisores).