¿Cómo poner en Run/Stop un controlador o PLC desde vijeo designer con EcoStruxure Machine Expert mediante los códigos de comando de control de la variable PLC_W_COMMAND?
Este procedimiento permite enviar comandos al controlador independientemente de su estado: RUN, STOP o estado de excepción
Nota:
Aunque la presente FAQ se refiere al caso concreto de Vijeo Designer, el procedimiento es extensible a otros softwares HMI o SCADA que admitan el protocolo codesys V3, por ejemplo: Operator Terminal Expert o GP-Pro EX.
Descripción de partida:
Se parte de un proyecto de Machine Expert y asociado a él un proyecto de Vijeo Designer.
Se desea manejar la variable PLC_W_COMMAND desde Vijeo Designer para poner en RUN /STOP un controlador determinado (TM241, TM251 o TM262).
La variable es del tipo enumerado:
Asociado a este comando tenemos tres variables:
Para poner en RUN/STOP el controlador, debemos usar conjuntamente las dos siguientes:
q_wPLCControl
q_uiOpenPLCControl
Se necesita una transición de valor de 0 a 6699 en q_uiOpenPLCControl para que se ejecute el comando previamente escrito en q_wPLCControl.
Soluciones:
Puesto que las variables referidas al comando PLC_W_COMMAND son de tipo enumerado, no son soportadas por Vijeo Designer.
Utilizaremos el tipo de dato REFERENCE y el comando de asignación REF para pasar estas variables a tipos validos para Vijeo Designer (WORD,UINT, etc.)
En el proyecto de Ecostruxure Machine Expert declararemos en la GVL de este modo:
VAR_GLOBAL
status_plc : REFERENCE TO WORD;
control_plc: REFERENCE TO WORD;
control_plc2: REFERENCE TO UINT;
causa_stop:REFERENCE TO WORD;
END_VAR
Y desde un POU determinado utilizando el comando "REF=":
GVL.status_plc REF= PLC_GVL.PLC_R.i_wStatus;
GVL.control_plc REF= PLC_GVL.PLC_W.q_wPLCControl;
GVL.control_plc2 REF= PLC_GVL.PLC_W.q_uiOpenPLCControl;
GVL.causa_stop REF= PLC_GVL.PLC_R.i_wLastStopCause;
Estas variables ya son manejables desde Vijeo Designer.
Podemos ver que al generar la configuración de símbolos, exportarlos a Vijeo Designer e importarlos desde este, los tipos de datos son como sigue:
Así pues, desde Vijeo Designer utilizando las siguientes variables:
q_wPLCControl
q_uiOpenPLCControl
Se necesita una transición de valor de 0 a 6699 en q_uiOpenPLCControl para que se ejecute el comando previamente escrito en q_wPLCControl.
En el ejemplo adjunto se han utilizado dos interruptores del siguiente modo:
En el caso del STOP:
En el caso del RUN :
Por último:
De este modo podremos ejecutar un marcha/paro del PLC admisible salvo tras una descarga múltiple o un reset (frío o caliente) tras un error de excepción.
En estos últimos casos se debe restablecer el controlador desde la herramienta de software online puesto que el estado del controlador se queda en EMPTY, si bien esto depende en gran medida de las versiones de firmware. En últimas versiones de firmware el sistema recupera la comunicación al cabo de unos segundos pudiendo desde Vijeo Designer realizar reset caliente o frío usando la misma variable Ejemplo : reset caliente escribiendo un 8 en la palabra de comandos.
Ver diagrama de estados del controlador:
Adjuntos :
Video y ejemplo empleados para la realización de este articulo
¡¡ADVERTENCIA!!
LA OPERACIÓN INDICADA TIENE RIESGOS IMPORTANTES PARA PERSONAS Y MAQUINARIA
En este sentido desde Schneider recomendamos encarecidamente implementar grupos de seguridad en Vijeo Designer con diferentes usuarios y privilegios, de modo que esta operación quede restringida a usuarios cualificados.
Por ejemplo:
Donde, solo tengan acceso a efectuar la operación los usuarios de nivel 1, ejemplo:
Publicado para: Schneider Electric España
¿Necesitas ayuda?
Selector de productos
Encuentra rápida y fácilmente los productos y accesorios adecuados para tus aplicaciones.
Pedir presupuesto
Comienza tu consulta de ventas en línea y un experto se pondrá en contacto contigo.
¿Dónde comprar?
Encuentra fácilmente el distribuidor de Schneider Electric más cercano a ti.
Centro de ayuda
Encuentra recursos de soporte para todas tus necesidades en un solo lugar.