Técnicas y sugerencias para desarrolladores de (SCIC)

publicado en: Notas | 0
            En los últimos años, y tanto más con la llegada de la crisis mundial, se han necesitado realizar aplicaciones industriales complejas, con el mínimo recurso disponible en cuanto a tiempo y dinero. Con los componentes .COM de FP Control tiene la posibilidad de interactuar con toda la línea FP Series de Controladores Lógicos Programables PANASONIC® brindando a través de una PC o NoteBook una perfecta y económica interfaz de usuario tan flexible como lo requiera.    
         En otras palabras con un PLC y una PC podrá realizar la siguiente ecuación:     
 

PLC  +  PC + AutomationToolKit  =  SCIC
* SCIC (Sistema de Control Industrial Centralizado)

(FP Control recomienda productos PANASONIC®)

          A continuación de detallan algunas sugerencias a tener en cuenta al momento de desarrollar sus aplicaciones:           
 ¿Cómo desarrollar paneles de control o terminales de usuarios?        
     Al momento de comenzar a desarrollar una aplicación, es necesario haber hecho el análisis de lo que se necesita lograr. Debe conocer exactamente qué información mostrar y en qué momento. Esto le permitirá distribuir los instrumentos, botoneras, señales luminosas y demás componentes de tal forma que el usuario disponga de todo lo que necesita en cada momento de un proceso. Esto es especialmente necesario ya que la mayoría de los diseños cuentan con varias pantallas que se mostrarán al operador.
             Es muy conveniente agrupar los instrumentos teniendo en cuenta que todos los instrumentos que forman parte de un «sistema» se encuentren juntos. Por ejemplo supongamos que tenemos que desarrollar un controlador de un horno industrial que cuenta con un sistema de Refrigeración, un sistema de generación de Vacío, un sistema de Potencia Eléctrica, y la parte de comandos. Será muy importante mantener los elementos de cada sistema claramente delimitados por un FRAME, a fin de que la operatoria por parte del operador sea clara y libre de cometer errores. Esto resulta especialmente importante en diseños de grandes paneles o terminales de control. Imagine que el piloto de un avión tenga los instrumentos del tablero tan desordenados que tenga que andar buscando todos los instrumentos que formen parte del «sistema de navegación», o del «sistema de control de motores» por todo el tablero. Por lo tanto, tenga presente que una interfaz desordenada también puede causar accidentes!

Panel de automatización creado con componentes de AutomationToolKit que incluyen instrumentos analógicos de aguja y display digitales desarrollados por FP Control.
Panel Principal de control de un Horno de Sinterizado.

¿Cómo utilizar ActiveNewTocol de la manera más eficiente?

             En una aplicación que lee y escribe datos en un PLC es muy conveniente trabajar con un Registro de Datos. Este registro consiste en agrupar de a 24 posiciones de memorias los datos que serán enviados o leídos por el componente ActiveNTocol. Esto resultará en que con una sola operación de lectura o escritura, estaremos leyendo o escribiendo 24 palabras del PLC al mismo tiempo, lo que aumenta la performance de nuestra aplicación. Aunque puede realizar perfectamente lecturas o escrituras individuales, el trabajar con registros resulta mas ordenado y de ésta manera se limita el uso del puerto de comunicaciones.

Ejemplo:

Defina un registro de 24 palabras, para ser leído desde un ordenador.

DT1001

DT1002

DT1003

……

DT1024

Luego en su aplicación, realice las lecturas mediante los componentes ActiveNTocol o ActiveMBus.

Dim miBuffer As String
Dim miDT(24) as String

 

‘Lee 24 palabras de memorias del PLC

miBuffer = ActiveNTocol.ReadData(1, “D”, 1001, 1024)  

 

‘Separa la cadena leída en miBuffer pasándola al vector para individualizar los valores leídos

ActiveNTocol.CStrToArray(miBuffer, miDT) 

      Ahora el valor de memoria de DT1001 se encuentra en miDT(1), y el de DT1024 en miDT(24).  Esta misma técnica de registros se puede utilizar al grabar datos en el PLC.

      Nota: En el ejemplo anterior la base de definición de vectores y matrices es 1. Si programa en .NET por ejemplo, debe tenerse en cuenta que los vectores son definidos por default con base cero, por lo que el valor de memoria de DT1001 se encuentra en miDT(0), y el de DT1024 en miDT(23).

 ¿Cómo averiguar si está corriendo una aplicación en la PC que interactúa con el PLC?

             En muchas ocasiones se necesita saber si una aplicación está ejecutándose sobre un PLC. Puede suceder que por alguna razón ocurra un desperfecto técnico en la PC, o en su sistema operativo lo que pueda ocasionar que el operador ya no tenga control sobre lo que esté pasando en el PLC.

             Por tal motivo, en sistemas sensibles se suele utilizar la técnica de “conversación” entre el PLC y la PC u ordenador.  Esto permite conocer al PLC si el ordenador o la aplicación que está corriendo en él se detuvo, y también permite al ordenador saber si el PLC entró en ERROR.

  La técnica de escuchar la conversación consiste sencillamente en grabar un dato en memoria del PLC (Bit, o Palabra),  e ir variando constantemente el valor o estado. De ésta manera solo debemos asegurarnos que el estado actual sea distinto que el anterior, de lo contrario significa que se ha interrumpido la comunicación con el ordenador permitiendo disparar un evento de Alarma.

 ¿Cómo distribuir aplicaciones?

             Tenga presente que toda aplicación que distribuya con los componentes “AutomationToolKit” o “ActiveNTocol” funcionarán mientras tenga la llave de seguridad colocada en la PC. Debe asegurarse que en toda instalación que se realice sobre un equipo, ya sea manualmente o por medio de un programa instalador, se incluyan las librerías “RocKey4ND.dll” y “Ossmtp.dll” en una carpeta con “path”, como por ejemplo “Windows\System32”.

   Autor: Fernando Polverini  15/07/2008.