MB Server
MB Server
MB Server
Descripción MB_SERVER
Descripción
La instrucción "MB_SERVER" permite la comunicación como servidor Modbus TCP a
través de una conexión PROFINET. La instrucción "MB_SERVER" permite procesar solici-
tudes de conexión de un cliente Modbus TCP, recibir y procesar solicitudes de Modbus y
enviar mensajes de respuesta.
Para el S7-1200 con versión de firmware V4.0 puede utilizarse la instrucción "MB_SERV-
ER" hasta la versión de librería V3.1 inclusive. Con el S7-1200 (a partir de la versión V4.1
del firmware) y el S7-1500 puede utilizarse la instrucción "MB_SERVER" de todas las ver-
siones de librería.
La conexión puede realizarse a través de la interfaz local de la CPU o CM/CP.
Para utilizar esta instrucción no se requiere ningún módulo de hardware adicional.
ATENCIÓN
Nota de seguridad
Tenga en cuenta que todos los clientes de la red tienen acceso de lectura y escritura a la
memoria imagen de proceso de las entradas y salidas y al bloque de datos o al área de
marcas definido por el registro de retención de Modbus.
Para evitar que personas no autorizadas lleven a cabo procesos de lectura y escritura,
es posible restringir el acceso a una dirección IP. No obstante, tenga en cuenta que la
dirección habilitada también ofrece acceso a personas no autorizadas.
Parámetros
La tabla siguiente muestra los parámetros de la instrucción "MB_SERVER":
-1-
Descripción MB_SERVER (S7-1200, S7-1500)
-2-
Descripción MB_SERVER (S7-1200, S7-1500)
"Data Read":
DR Output BOOL • 0: No se han leído datos
• 1: El cliente Modbus ha leído datos
Si se produce un error durante una llamada de la in-
strucción "MB_SERVER", la salida del parámetro
ERROR Output BOOL
ERROR se pone a "1". La causa detallada del error
se muestra en el parámetro STATUS.
STATUS Output WORD Información de estado detallada de la instrucción.
Nota
Uso de la función Modbus 23 en la instrucción "MB_SERVER"
La instrucción "MB_SERVER" soporta el uso de la función Modbus 23, con la que, en
una petición, pueden escribirse datos en un registro de parada y leerse datos de dicho
registro; en cambio, la instrucción "MB_CLIENT" NO soporta esta función y devuelve un
código de error.
Asimismo, tenga en cuenta que, en una petición que contenga tanto un acceso de lec-
tura como un acceso de escritura, el acceso de escritura se ejecutará antes que el acce-
so de lectura.
Encontrará más información sobre los tipos de datos válidos en "Vista general de los ti-
pos de datos válidos".
-3-
Descripción MB_SERVER (S7-1200, S7-1500)
Función Modbus
Código de
Función Área de datos Espacio de direcciones
función
01 Leer: bits Output 0 a 65.535
02 Leer: bits Input 0 a 65.535
04 Leer: WORD Input 0 a 65.535
05 Escribir: Bit Output 0 a 65.535
15 Escribir: bits Output 0 a 65.535
Las solicitudes Modbus entrantes con los códigos de función 3, 6, 16 y 23 escriben o leen
los registros de retención de Modbus (el registro de retención debe especificarse en el par-
ámetro MB_HOLD_REG).
-4-
Descripción MB_SERVER (S7-1200, S7-1500)
Dirección Modbus
0 99
0 (WORD)
Dirección de la CPU MW100 MW298
Dirección Modbus
20 119
20 (WORD)
Dirección de la CPU MW100 MW298
Funciones Modbus
La tabla siguiente contiene todas las funciones Modbus que soporta la instrucción
"MB_SERVER".
Código de Descripción
función
Ejemplo
Encontrará un proyecto de ejemplo para la comunicación Modbus TCP entre dos CPU
S7-1500 en el portal de Siemens Industry Online Support, con la ID de artículo 94766380.
En este ejemplo se utilizan dos funciones de Modbus. Para cada función Modbus se esta-
blece una conexión Modbus TCP a través de una pareja de bloques Modbus (MB_CLIENT
y MB_SERVER).
-5-
Descripción MB_SERVER (S7-1200, S7-1500)
Consulte también
Diferencia entre las instrucciones que funcionan síncronamente y las que funcionan
asíncronamente (S7-1200, S7-1500)
-6-