S7-200 Maestro Modbus

Siguiendo la práctica anterior, hoy vamos a configurar el S7-200 como Maestro en una red Modbus-RTU, para ello vamos a necesitar dos funciones mas de la libreria Modbus, partimo de nuestro proyecto en microwin e insertamos la siguientes funciones de la libreria y dependiendo del puerto a utilizar en la CPU

La función MBUS_CRTL sirve para inicializar, activar o desactivar la comunicación Modbus. Si se ejecuta correctamente el bit Done estará a 1, con lo cual lo utilizo para habilitar la transferencia de mensajes.

Baud y Parity, Deben ser igual a la velocidad configurada en la Red y en el/los esclavos

Slave, la direccion del Esclavo para su lectura/escritura dependiendo de RW, 1 escritura y 0 lectura. Addr dirección en la que queremos escribir en modbus, en este ejemplo son las salidas empezando por la Q0.0 = 0001 y asi correlativamente el valor de Count. DataPtr  puntero a la primera dirección de memoria que queremos escribir

Como anteriormente se hizo hay que reservar una zona de memoria V para la utilización de las funciones Modbus, en bloque de programa -> Asignar memoria a librería

En este caso, cuando le damos a proponer dirección empieza desde la V0, esto es porque no hemos utilizado ningún direccionamiento en la zona de memoria

Iniciamos el Modbus Slave y por defecto nos aparece configurado para el esclavo nº1 y la zona de registros 4, pero lo primero que tenemos que hacer es configurar la conexión, para ello vamos a Connection, y definimos los parametro

Y como en nuestra función función de programa hemos puesto que vamos a escribir en la zona de salidas, lo configuramos igual en Slave Definition, y automaticamente al conectar el primer registro lo tenemos a 1, este era la salida que configuramos con el bit de Done al inicializar, activar la comunicación modbus, y esta escrito en el esclavo porque la entrada I0.0 se ha activado, ya que cuando se activa Firts, se ejecuta la función MBUS_MGS, tal vez un ejemplo mas práctico sería que con la lógica de programación correspondiente, activar un variador, enviarle la consigna etc ...

30 de Diciembre del 2012