martes, 18 de agosto de 2009

Problema de Comunicación con Driver 1747-PIC en RSLinx

AB-RX-001

A continuación, algunas consideraciones para lograr comunicarse con el driver 1747-PIC de RSLinx de Allen-Bradley.
De algo tan sencillo como es comunicarse con una CPU de un SLC-500, surge un mundo de finezas que hay que sortear para lograr nuestro objetivo.
Si no logramos la comunicación al PLC a la primera, hemos de hacer un buen trabajo detectivesco para eliminar las posibles causas por las cuales no nos comunicamos. Empezamos a pensar si será el cable de comunicación el del problema, si será que la CPU tiene deshabilitado el puerto, si nuestra Compu no tendrá dañado el puerto de comunicación, etc. Casi se van al infinito las opciones que tenemos que descartar cuando no logramos la conexión; le buscamos de una forma y de otra, hasta que, finalmente, resolvemos el misterio, y, con mucho alivio, decimos, ¡si era tan sencillo!, ¿por qué le batallé tanto?
Así que empecemos a tomar en cuenta lo siguiente, antes de caer en el torbellino de la desesperación por no lograr establecer comunicación.
Primero, los cables de comunicación apropiados. Si queremos comunicarnos con una CPU que tiene puerto DB9, podemos utilizar un cable DB9 serial RS-232 con configuración cruzada (es decir, los pines conectados así: 2 con 3, 3 con 2, y 5 con 5). Para CPU's con entrada para conector RJ-45, utilizamos el adaptador 1747-PIC.
Del lado de la CPU, partimos de que los puertos de comunicación están habilitados y, por supuesto, tendrán que estar configurados para comunicación DH-485 (habrá ocasiones en las que carezcamos de esta información, y más si es una CPU que nosotros no programamos).
Del lado de nuestra PC, hemos de contar con una computadora con puerto serial físico RS-232, ya que los adaptadores USB a Serial no son soportados por el driver 1747-PIC del RSLinx. Este punto es muy importante, puesto que las computadoras portátiles actuales ya no vienen con puerto serial físico, sólo puertos tipo USB. Si pensamos que este problema los solucionamos consiguiendo un adaptador USB a RS-232, estamos equivocados, y perderemos sólamente el tiempo al tratar de comunicarnos con este adaptador. Así que, repito, necesitamos un puerto RS-232 físico integrado en nuestra PC.
Otro punto importante es que al correr el RSLinx, necesitamos que, si tenemos cargado Windows XP, no tenga instalado el Service Pack 3. Cuando mucho, Windows XP estará instalado con el Service Pack 2. Con el SP 3, nos marcará error RSLinx y no podremos comunicarnos con la CPU. Así que, no perdamos de punto este detalle importante.
Una vez que tenemos conectado nuestros cables de comunicación entre CPU y PC, procedemos a abrir "RSLinx Classic Launch Control Panel". Pero atención, esta no es la aplicación "RSLinx Classic", la cual es la interfase para configurar drivers y comunicarse con los PLC, sino que es una aplicación que corremos para modificar la aplicación "RSLinx Classic". Para correr la aplicación, vamos a Inicio > Programas > Rockwell Software > RSLinx > RSLinx Launch Control Panel. En el recuadro que aparece quitamos la opción "Always Run As service" y oprimimos el botón "Start". De esta manera inicia el "RSLinx Classic".
Una vez iniciada esta aplicación, agregamos nuestro driver dando click en "Configure Driver". En la ventana que aparece damos click en el campo izquierdo del botón "Add New...", y en la lista de drivers que aparecen, seleccionamos "1747 - PIC / AIC+ Driver" y ahora oprimimos el botón "Add New..." En la pequeña ventana que aparece a continuación, simplemente damos click en "Ok" para dejar el nombre por default para el driver.
En el cuadro que emerge a continuación, configuramos el driver. Seleccionamos el puerto COM de nuestra PC al que conectamos nuestro cable de comunicación (COM1, COM2, etc.) y definimos la velocidad de comunicación, que por default será 19200, pero podremos probar con varias de ellas, y oprimimos el botón OK. Ahora esperamos un poco a que se procese nuestra petición, y el sistema operativo mostrará un mensaje de advertencia de compatibilidad pero damos click en "Continuar".
Finalmente, en RSLinx damos click en el icono "RSWho", luego click en "AB_PIC-1, DH-485", y en la mitad derecha de la ventana, veremos nuestra CPU con la que estamos conectados.

1 comentario: