sábado, 23 de enero de 2010

Comunicación Serial con ServoControlador TD-200 y PLC Siemens

MTS-MP-001

En estos días he estado algo ocupado en diversas programaciones de PLC's.
Recientemente, me tocó revisar un control TDC-200 encargado de gobernar una servoválvula.
Lo interesante de esto, es que era la primera vez que me encontraba con este tipo de equipos.
Así que lo primero que hice fue buscar el manual en internet. Pasé varias horas buscando en Google, pero no encontré más que catálogos, en el mejor de los casos. En esta búsqueda me enteré de que es ya un equipo obsoleto. Pero, por suerte, a los pocos días, recibí un correo donde me enviaban el escurridizo manual en formato PDF. Me puse a estudiarlo, poniendo especial atención a la parte de la comunicación.
Aunque algunos conceptos no me quedaron muy claros debido a mi poca familiaridad con este control, me puse manos a la obra para probar la comunicación. Probando es la mejor forma de aprender. Aunque para esto, no iba a utilizar el TDC-200 que está trabajando con la máquina. Claro que no. Para salvar este obstáculo, en la fábrica me hicieron llegar tres de estos equipos que andaban esparcidos por varios rincones.
Para no ser yo el primero en dañar uno de los equipos, dejé que uno de los trabajadores de la planta lo alimentaran eléctricamente. Este paso se hizo bien. Ahora seguía yo. Tuve que hacer un cable de comunicación para tal proposito. Como el control TDC-200 lo iba a conectar a mi lap-top, necesitaba una configuración RS-232, tal como sigue:

Bloque de terminales Conector DB9
J7 del TDC-200

Pin 1 (TXD) -------------------------- Pin 2 (RXD)
Pin 4 (RXD) -------------------------- Pin 3 (TXD)
Pin 9 (GND) -------------------------- Pin 5 (GND)
Pin 4 con 6 puenteados
Pin 7 con 8 puenteados

Una vez conectado el cable de comunicación entre el TDC-200 y mi lap-top, abrí HyperTeminal y configuré una conexión tipo VT100: 9600 bps de velocidad, 8 bits datos, no paridad, un bit de parada. Establecí la comunicación y desde mi lap-top envíe el comando IPX, con el cual solicito al TDC-200 la posición del eje X. Pero... no obtuve respuesta.
Seguí intentando configurando diferentes ajustes en HyperTerminal. Pasaba el tiempo, y no conseguía comunicarme. Revisamos el cable de comunicación, dandonos continuidad y correspondencia en los pines. También probé con varios ajustes del puerto COM1 de la lap-top, en la mayoría de las veces, consideraba que andaba fuera de toda lógica.
Cansados de tanto cambio, decidimos probar con otro controlador TDC-200. Sólo que este segundo control tenía dañada la fuente de alimentación, por lo que tuvimos que reemplazarla por la del primero. Desarmamos cuidadosamente los equipos, deconectando cables y verificando componentes, por si encontrábamos alguno dañado. Una vez armado el segundo control, procedimos a alimentarlo eléctricamente y a conectarle el cable de comunicación.
Mandé mi comando IPX desde mi HyperTerminal, y... nada. Sin respuesta del controlador.
Nuevamente me puse a jugar con todo tipo de configuraciones en HyperTerminal y con el COM1. Luego de un rato de desesperados intentos de comunicación, fuimos en busca de otro controlador.
Logramos encontrar un TDC-100, el cual varía del modelo anterior porque este último controla sólo un eje, y el TDC-200 dos ejes. Pero por el lado de la comunicación todo es igual. Lo energizamos. Sin embargo, notamos que no encendía el display ni tampoco los leds de equipo energizado y de falla. Así que, a desarmar otra vez y probar con el teclado del otro TDC.
Una vez reconstruido, nos pusimos a probar. Y... tampoco respondió a mi comando IPX.
Hicimos combinaciones de tarjetas, combinaciones de configuración en Hyperterminal, horas y horas sin éxito alguno.
Por fin nos decidimos a probar directamente con un TDC-100 que estaba instalado en una máquina que en esos momentos no estaba trabajando. Por supuesto, hacer pruebas sobre un equipo en una línea de producción tiene su riesgo. No obstante, sabíamos que había respaldos de la configuración, y por lo tanto, procedimos a hacer la prueba.
Conectamos el cable de comunicación al TDC-100 y a mi lap-top. Corrí la aplicación de HyperTerminal, la configuré como VT100, y procedí a enviar mi comando IPX y... Sí!, tuve respuesta del controlador: A2.4325
Recibí la posición del eje.
Finalmente, pude comunicarme, y pude saber que los otros TDC que había probado previamente estaban dañados.
Regresé ya por la noche a casa.
Estaba listo para iniciar la siguiente etapa de esta tarea: Comunicar un Panel Siemens con el TDC.
    

0 comentarios:

Publicar un comentario