Force-write
El mensaje tipo Force-Write es un mensaje modbus que permite registrar el valor de otro parámetro, cuando ocurre un
evento. En el ejemplo hemos descrito el modo en el que el cambio del valor de DO1 implica un cambio de DO2.
La declaración del canal se realiza mediante la asignación de un nombre único a este canal. Como protocol, hay que poner
'forcewrite'. Existe también la posibilidad de definir varios destinatarios. Como destinatario indicamos el ID del parámetro en
el que debe ser guardado el valor del parámetro. Por defecto, se envía el valor del parámetro del que «sale» el evento. Sin
embargo, es posible sobreescribirlo incluyendo en la declaración del mensaje el valor que debe ser registrado.
<message-channel name="ForceWrite">
<protocol name="forcewrite"/>
<recipient>"103"</recipient>
</message-channel>
Cada vez que cambie el valor del parámetro, este valor se trasladará al parámetro 103.
<parameter>
<id>"102"</id>
<comment>"DO1"</comment>
<init-value>"0"</init-value>
<description>"DO1"</description>
<source-channel
<access-channel
<event type="OnChange">
<message-channel channel-name="ForceWrite"/>
</event>
</parameter>
La sobreescritura de los valores del registro con un mensaje antes definido:
Al cambiar un valor del registro 100 al registro 101, se introduce el valor 10.
Para usar esta función en la definición del access channel hay que añadir:
<property
name="force" value="true"
Después crear el canal de mensaje:
En el campo recipient hay que introducir la dirección del registro en la que se registrará el valor:
<message-channel name="ForceWrite">
<protocol name="forcewrite"/>
<recipient>"101"</recipient>
</message-channel>
Hay que definir el cuerpo del mensaje que se registrará en el registro meta. En este caso es el valor 10:
<message id="TestMsg">
© 2013 TECHBASE Group
TECHBASE C)
channel-name="NPE_io"
channel-name="Modbus_S1"
/>
Technical contact - support.techbase.eu
parameter-id="DO1"/>
parameter-id="102"/>
iMod Manual ES
85/108
85/108