Mitsubishi MC

Conectar PLC Mitsubishi MELSEC con el protocolo MC (trama 3E): códigos de dispositivo, numeración decimal y hexadecimal, y longitudes de lectura.

Ver como Markdown

El driver Mitsubishi MC habla con PLC Mitsubishi MELSEC con el protocolo MC, usando la trama binaria 3E sobre TCP, la trama que hablan las series Q, L e iQ. Usted direcciona los valores con la notación de dispositivo MELSEC de siempre: un código de dispositivo más un número, como D100 o M50. Agregue un dispositivo bajo el driver Mitsubishi MC en el Connector; el panel muestra solo los campos que usa este protocolo.

La conexión

Campo Significado Valor inicial
Host o IP Dirección IP o nombre de host de la interfaz Ethernet del PLC. vacío
Puerto Puerto TCP de la conexión del protocolo MC. 0 usa el 5007. 0

El encabezado del dispositivo muestra el punto de conexión armado, por ejemplo mcp://192.168.0.20:5007. Este driver no tiene campos de intervalo de sondeo: sus tags se leen una vez por segundo. Del lado del PLC tiene que haber una conexión TCP de protocolo MC (SLMP) configurada para comunicación binaria en el puerto elegido.

El direccionamiento

Un tag de Mitsubishi se direcciona con dos campos de la tarjeta Origen del tag:

Campo Significado Valores aceptados Valor inicial
Dirección del dispositivo Código de dispositivo MELSEC más número, por ejemplo D100. Obligatorio. texto libre vacío
Longitud de lectura (bytes, en blanco = automático) Cuántos bytes transferir por lectura. En blanco, la lectura se dimensiona a partir del tipo de dato. 1 en adelante, o en blanco en blanco

La dirección no distingue mayúsculas y gana el código coincidente más largo, así que SD100 es el registro especial 100, no el relevador de paso S. El número es hexadecimal para los dispositivos que Mitsubishi numera en hexadecimal (X, Y, B, W, SB, SW, DX, DY) y decimal para todos los demás (X1F es la entrada 0x1F). Los códigos de dispositivo aceptados:

Código Dispositivo Numeración
M relevador interno decimal
SM relevador especial decimal
L relevador de enganche decimal
F anunciador decimal
V relevador de flanco decimal
S relevador de paso decimal
X entrada hexadecimal
Y salida hexadecimal
B relevador de enlace hexadecimal
SB relevador de enlace especial hexadecimal
DX entrada directa hexadecimal
DY salida directa hexadecimal
D registro de datos decimal
SD registro especial decimal
R registro de archivo decimal
ZR registro de archivo extendido decimal
W registro de enlace hexadecimal
SW registro de enlace especial hexadecimal
Z registro índice decimal
TC / TS / TN bobina / contacto / valor actual de temporizador decimal
SC / SS / SN bobina / contacto / valor actual de temporizador retentivo decimal
CC / CS / CN bobina / contacto / valor actual de contador decimal

La biblioteca MC de base acepta además los códigos TT, TM, CT, CM y A. La línea de solo lectura Dirección de origen (bus) de la tarjeta Origen muestra la dirección armada conforme usted edita.

Los tipos de dato

El selector de Tipo de dato ofrece los cuatro tipos que el driver sabe transportar:

Tipo de dato Longitud de lectura automática Notas
Boolean 1 byte en un dispositivo de bit, el único relevador nombrado; en un dispositivo de palabra, cualquier palabra distinta de cero
Int32 4 bytes dos palabras consecutivas de 16 bits, por ejemplo D100+D101
Float 4 bytes dos palabras consecutivas con un IEEE de precisión simple
String 16 bytes el texto hasta el primer NUL del búfer de lectura

Los datos de palabra llegan en el orden little-endian nativo de MELSEC y se decodifican automáticamente; no hay opción de orden de bytes. Un valor de 32 bits ocupa dos dispositivos de palabra consecutivos. Para un String de más de 16 caracteres, suba la Longitud de lectura para que cubra el texto guardado. La Longitud de lectura es un conteo de bytes y el protocolo transfiere palabras enteras de 16 bits, así que una longitud impar se redondea hacia arriba a la palabra que lleva su último byte.

Los dispositivos de bit, los que el driver lee un relevador a la vez, son X, Y, M, L, F, V, B, S, TS, TC, SS, SC, CS, CC, SB, DX y DY. Ahí un tag booleano contesta por la dirección que usted escribió y por ninguna otra. Cualquier otro código es un dispositivo de palabra, incluidos el valor actual de un temporizador o de un contador (TN, SN, CN) y los registros de enlace (W, SW), y ahí decide la palabra entera: D100 con 0x0100 se lee como verdadero.

Las escrituras

Los tags cuyo Acceso es Lectura y escritura o Solo escritura se pueden escribir, en la misma dirección de dispositivo que usa la lectura. Una escritura booleana sobre un dispositivo de bit pone o borra el único relevador nombrado y no toca a ninguno de sus vecinos. Todo lo demás se escribe como palabras enteras de 16 bits: dos palabras para Int32 y Float, una palabra para un booleano sobre un dispositivo de palabra, y para String toda la Longitud de lectura del tag, con los bytes UTF-8 del texto al frente y ceros detrás, redondeada hacia arriba hasta la última palabra. Por eso un texto más corto escrito sobre uno más largo reemplaza el valor entero y no sobrevive nada del anterior. Un texto que no cabe en la longitud declarada se rechaza, con la longitud nombrada en el diario técnico, nunca se recorta para que quepa. Un tag nuevo arranca como Solo lectura.

El descubrimiento

En este driver el protocolo MC no tiene descubrimiento por difusión, así que el Connector no muestra botón Descubrir. Agregue el dispositivo y sus direcciones a mano.

Bueno saber

  • El sondeo es fijo de un segundo para todos los tags de este driver; los campos habituales de intervalo de sondeo no se muestran.
  • La trama 3E tiene que estar activada en el PLC como una conexión MC/SLMP binaria (no ASCII); un puerto configurado en ASCII no le contesta a este driver.
  • Un PLC inalcanzable no cuesta nada al arrancar: el dispositivo sigue reintentando en segundo plano y sus tags se leen con mala calidad hasta que la conexión llega.