Conectar un RISH LM 1360 a un PLC Fatek Serie FBs
Después de la odisea que les conté en el post anterior (sí, esa donde el menú IP desapareció por culpa del Baud Rate), nos enfrentamos al siguiente problema: ¿Cómo rayos conectamos este instrumento al PLC Fatek Serie FBs?
Revisamos manuales, vimos todos los tutoriales disponibles y hasta tuvimos "asesoría" con el servicio técnico de Fatek. ¿El resultado? Nada funcionó. Pero como somos decididos, seguimos probando hasta que lo logramos. Aquí les dejo la receta de cómo conectar estos dos equipos sin morir en el intento.
Configurar los puertos del PLC
Lo primero es usar el Ethernet Scan de Fatek para dejar el PLC listo. Un punto vital: el Puerto 2 debe configurarse como Modbus Client. Esto es muy importante, si no, el PLC no tomará la iniciativa de ir a buscar los datos.
En la sección de Service Ports, deben mapear los datos así:
IP del instrumento: La que configuramos en el post anterior.
Remote Station: El Address que pusimos en el menú
SEr.Remote Port: El puerto Modbus que sacamos del menú IP del RISH.
Local Station: El valor con el que el PLC identifica internamente al equipo.
Con la red lista, nos vamos al ladder. Usamos la función M-BUS (150).
Aquí el secreto es que el Table Starting Address tiene que ser el mismo que el SR que pusimos en la función, o simplemente no va a haber comunicación.
| Tabla de registros |
Un dato importante: El RISH entrega los valores en dos registros (por ejemplo, el voltaje V1 usa el 30001 y 30002). Así que en la tabla Modbus, el Data Size debe ser de 2.
¡Ojo aquí!: La cantidad máxima de datos que puedes pedirle al RISH de una sola vez es 40. Si intentas pedirle 41 o más, el equipo te va a mandar un error y no te va a entregar nada.
El misterio de los parámetros y el "Swap" de registros
Aquí es donde la cosa se puso rara. Al configurar el puerto, terminamos usando parámetros que no coincidían con lo que decía el instrumento, pero ¡sorpresa!, así es como funcionó.
Cuando al fin recibimos datos, nos dimos cuenta de que estaban en hexadecimal y se veían horribles. Para pasarlos a algo que un humano entienda (flotantes), usamos la función 08.MOV.
Resulta que el orden en que el RISH manda los bytes no es el mismo que el Fatek espera. Para arreglarlo, hicimos un "enroque":
El valor de
R1lo movimos aD1.El valor de
R2lo movimos aD0.
Al cruzar los registros de esta manera y usar el inspector de variables en modo Floating (DDx), ¡al fin aparecieron los voltajes reales!
Conclusión
Fue un camino largo, probando y fallando, pero logramos leer en tiempo real todo lo que el LM-1360 estaba registrando vía Modbus TCP. Si estás en un proyecto de análisis de energía y te encuentras con estos equipos, espero que este camino ya recorrido te sirva para ahorrarte unos cuantos dolores de cabeza.
¡Nada como ver esos valores flotantes moviéndose en el inspector después de días de pelea!
Comentarios
Publicar un comentario