How to: Writing to Tag
The guide demonstrates how to create an expression that writes the control signal if the threshold value is exceeded or decreased. Before starting, create a Modbus device and two tags named monitoring_tag (WORD, 16-bit unsigned integer) and control_tag (BOOLEAN).
Open Monokot Server Administrator and double-click Scripts on the Server Explorer pane. Click New Expression and set the name Writer for the expression that appears. Insert the following code into the expression code editor:
// Declaring a limit as a constant
const LIMIT = 100;
// Getting the tag value
var value = context.data['monitoring_tag_trig'].state.value;
if (value > LIMIT)
return MosUtils.writeTagValueSync('control_tag', true);
else
return MosUtils.writeTagValueSync('control_tag', false);
Press Ctrl + Enter to apply the change in the code editor.
Go to the Triggers tab and click Add Data.... Select the tag monitoring_tag created earlier as the data source for the trigger. Enter the name (key) monitoring_tag_trig for the trigger.

In order for the changes to take effect on the server, click the Sync button. Thus, the expression will be executed each time the monitoring_tag is changed. If monitoring_tag exceeds 100, control_tag will be set to True, otherwise False.
You can read more about the MosUtils object here.
Last updated