Guía de solución de problemas de RS485

29 de abril de 2019 por
Guía de solución de problemas de RS485
Serzh Ohanyan

Paso a paso para la resolución de problemas de RS485

Solución de problemas de RS485, paso a paso:

  • Asegúrate de que el controlador está alimentado entre 12-24 Vdc.

  • Comunicación Half Duplex: Asegúrate de que conecta el pin A+ de su controlador Industrial Shields con el pin A+ del otro dispositivo RS485. Y el pin B- de tu controlador Industrial Shields con el pin B- del otro dispositivo RS485.  

  • Comunicación Full Duplex: Asegúrate de que conecta el pin A+ de su controlador Industrial Shields con el pin Y+ del otro dispositivo RS485. Y el pin B- de tu controlador Industrial Shields con el pin Z- del otro dispositivo RS485.
    Conexiones adecuadas: 
Industrial Shields Unit
(Half Duplex)
RS485 Device
(Half Duplex)
A+A+
B-B-
Industrial Shields Unit
(Full Duplex)
RS485 Device
(Full Duplex)
A+Y+
B-Z-
  • Configuración adecuada de los interruptores y puentes para utilizar el puerto RS-485. 


M-Duino Family

Para el protocolo de comunicación RS-485, sólo hay 1 interruptor que afecta a esta comunicación. El protocolo RS-485 estará siempre activado, el único interruptor que afecta es el llamado "FD rs-485 HD". Este interruptor permite elegir entre RS-485 Half Duplex (Posición ON) o RS-485 Full Duplex (Posición OFF). 



Ardbox Family

Para habilitar el Hardware Serial RS-485 la configuración total del Ardbox Analog HF será: 


ZONA TOP

SWITCHMODE
I0.3OFF
RS485 HSON
I0.2OFF
RS485 HS
ON

Nota: Con esta configuración, I0.2 e I0.3 están desactivados.


ZONA IZQUIERDA

SWITCHMODE
DE-RS485ON
D10 / A0.2 - Q0.2OFF
RE-RS485ON
D11 / A0.1 - Q1.1OFF
SDA - D2 / I0.0-
SCL - D3 / Q0.6-

Nota: Para habilitar el protocolo de comunicación RS-485 es necesario que los interruptores de la zona izquierda estén configurados como se muestra en la tabla. Los marcados con "-" significan que no afectan a la configuración del protocolo RS-485.


Configuración de los puentes

Para habilitar el Hardware Serial RS-485 la configuración total del Ardbox Analog HF será:



Para habilitar el Hardware Serial RS-485 la configuración total del Ardbox Relay HF será:

    • Configuración de los interruptores Ardbox Relay HF


Nota: Para habilitar el protocolo RS-485 la ZONA SUPERIOR debe estar configurada como se muestra en la tabla. Aunque el nombre del conmutador sólo se refiere al RS-485 también es el mismo para el RS-232.


Nota: El H/F puede configurarse como ON u OFF. Si se deseas utilizar el RS-485 Half Duplex (A+, B-) debe estar en ON. Si se deseas utilizar el RS-485 Full Duplex (A+, B-, Y+, Z-) debe estar en OFF.

El interruptor RE-RS485 y DE-RS485 debe ponerse en modo ON. Al estar estos pines en ON, los otros 2 (I0.4, I0.5) deben estar en OFF. Estando en modo OFF están completamente deshabilitados. Los interruptores marcados como " - " no interfieren con el protocolo de comunicación RS-485.

    • Configuración de los puentes Ardbox Relay HF

Ardbox Relay HF jumpers configuration - Jumper zone 1 Half Duplex - Jumper zone 2 - Jumper zone 3


Nota: La zona de puentes 2 no tiene ningún efecto sobre el protocolo RS-485 pero nos permite tener disponibles I0.2 e I0.3.


Instalación de placas de blindaje industrial


*Atención no utilices librerías antiguas como MDuino.h o Ardbox.h, estas librerías están obsoletas y pueden causar problemas de mapeo a tu controlador. 


Familia M-Duino: 

El Arduino Mega 2560 Rev3 es el controlador del M-Duino y el RS-485 se controla con el Serial0 del Arduino Mega 2560 Rev3. Si por alguna razón no estás usando nuestras placas asegúrate de que estás usando Serial0 para controlar el RS-485.  


Ardbox Analog HF w/HW RS232:

Si usas el hardware serial Ardbox Analog HF w/HW RS232 solo tienes que incluir la librería RS485.h en tu sketch y seleccionar la placa correcta ARDBOX Analog HF w/HW RS485. Usa el objeto RS485 para escribir y leer valores a través de tu puerto serie RS485. Vea el siguiente ejemplo de código de cómo usar el objeto RS485. 


Ardbox Relay HF w/HW RS232:

Si usas el Ardbox Relay HF w/HW RS485 (hardware serial) solo tienes que incluir la librería RS485.h en tu sketch y seleccionar la placa correcta ARDBOX Relay HF w/HW RS485. Utiliza el objeto RS485 para escribir y leer valores a través de tu puerto serie RS485. Vea el siguiente ejemplo de código de cómo usar el objeto RS485.


Ejemplo de software:

Para verificar que la recepción y la transmisión funcionan, hemos hecho este programa que en la misma placa recibimos o transmitimos un byte. Para ello utilizamos la configuración FULLDUPLEX. En este ejemplo solo enviamos un byte por el Serial, lo recibimos, lo imprimimos y lo enviamos por el RS485. Luego, recibimos el mismo byte y lo imprimimos. 

#include <RS485.h>

void setup() {
  // Begin Serial port
  Serial.begin(9600);
  // Begin RS485 port
  RS485.begin(9600, FULLDUPLEX);
}

void loop() {
  //Send one byte for the serial, receive this byte by rs485
  if (Serial.available()){
    read_from_serial();
  }
  if (RS485.available()){
    read_from_rs485();
  }
}

static void read_from_serial(void){
  char tx = Serial.read(); //Read byte
  if (tx != '\n') Serial.println(tx); //Print the byte 
  RS485.write(tx); //Transmit by rs485
}

static void read_from_rs485(void){
  char rx = RS485.read(); //Receive the same byte
  if (rx != '\n') {
    Serial.println(rx); //Print the byte
}
}

Buscar en nuestro blog

Guía de solución de problemas de RS485
Serzh Ohanyan 29 de abril de 2019
Compartir

¿Estás buscando tu Controlador Lógico Programable ideal?

Echa un vistazo a esta comparativa de producto de varios controladores industriales basados en Arduino.

Comparamos entradas, salidas, comunicaciones y otras especificaciones con las de los equipos de otras marcas destacadas.


Industrial PLC comparison >>>