FAQs Técnicas

Realizar una pregunta

¿Es posible leer la direccion MAC en una aplicacion Unity de un PLC M340 para identificar la CPU de forma inequívoca?

¿Es posible leer la direccion MAC en una aplicacion Unity de un PLC M340 para identificar la CPU de forma inequívoca? Si no es posible, ¿podría leerse alguna otra información que identificase individualmente cada CPU?

En general, la dirección MAC no es un dato válido que se suela considerar para identificar inequivocamente una CPU de la gama M340, ya  que sólo los interfaces ethernet diponen de dirección MAC. Por tanto, la dirección MAC sirve para identificar inequivocamente una CPU de la gama M340 sólo en el caso de que ésta disponga de un puerto ethernet integrado.
No obstante lo anterior, no es posible leer la dirección MAC de un puerto ethernet de un PLC de la gama M340 en una aplicación Unity, ni desde registros de sistema ni desde ningún bloque de función.

Las posibles soluciones para identificar inequívocamente una aplicación Unity o un hardware compatible desde una aplicación Unity (a partir de Unity v5.0) son:

1- Controlar la versión y la firma digital de la aplicación a través del bloque de función PRJ_VERS (a partir de Unity v5.0). La firma digital es un dato inequívoco para la identificación de la aplicación ya que se crea al generar una aplicación. Ante cualquier generación de la aplicación Unity (se haya producido un cambio en la misma o no) se creará una nueva firma digital y se actualizarán los datos de tiempo correspondientes a la última modificación realizada (fecha y hora), así como los datos de la versión (aunque esta opción se puede desactivar  en la opción Herramientas > Opciones > Opciones Generales > Incremento automático de la versión del proyecto).
Esta opción identifica la aplicación, no la CPU físicamente, y, por tanto, es válida para todas las plataformas de PLCs compatibles con Unity.

Para más información acerca del bloque de función PRJ_VERS, consultar el documento adjunto: Unity v50 - Libreria de sistema.pdf.

2- Firmar y comprobar la firma de la SD insertada en una CPU M340 mediante los bloques de función SIG_WRITE y SIG_CHECK.
Esta opción no identifica la CPU físicamente, pero sí la tarjeta SD insertada en la misma. Sólo es válida para las plataforma de PLCs M340.

Para más información acerca de los bloques de función SIG_WRITE y SIG_CHECK, consultar el documento adjunto: Unity v50 - Libreria de sistema.pdf.

3- Consultando los registros de sistema %SW146 y %SW147 en aplicaciones M340. Estas dos palabras de sistema contienen el número de serie único de la tarjeta SD (32 bits). Si no hay una tarjeta SD o hay una no reconocida, las dos palabras de sistema se establecen en 0. Esta información se puede utilizar para proteger una aplicación contra la duplicación.
Esta opción no identifica la CPU físicamente, pero sí la tarjeta SD insertada en la misma. Sólo es válida para las plataforma de PLCs M340.

Para más información acerca los registros de sistema de las plataformas de PLCs compatibles con Unity, consultar el documento adjunto: Unity v50 - Lenguajes y estructura del programa.pdf.
¿Ha sido útil?
¿Qué podemos hacer para mejorar la información?