Wiki source code of 8. Control Setup Manual

Version 56.1 by Lana on 2025/12/17 20:43

Show last authors
1 = CONTENT =
2
3 = 1. INTRODUCTION =
4
5 CENTO is a multifunctional software platform for data acquisition, processing and display. This manual describes how to configure the CENTO user tool Control.
6
7 It is assumed that the user, having read the "User manual", is already familiar with the basic elements of the CENTO interface.
8
9 This manual describes how to configure the Control service, which is used to send control commands to the objects being controlled.
10
11 = 2. CONTROL USING WEB INTERFACE =
12
13 == 2.1. Control using the device, tags editor ==
14
15 A user with the appropriate permissions can control the object using the devices, tags, channels editor.
16
17 By default, for security reasons, in CENTO software, the Administrator role is not authorized for remote control and control operations, and the Dispatcher role does not have access to the devices, tags, and channels editor. To enable control and remote control using the editor, configure a custom role. For example, duplicate the Dispatcher role and assign it the necessary permissions to access and use the editor.
18
19 To control the device, navigate to the **Tags, channels** tab on the **Devices, tags, channels** page accessible in the menu: Settings > Devices, tags, channels. In the tree structure, locate the device whose parameters are to be controlled. All the tags with preconfigured control functionality will display either a **C** button (see Fig. 2.1) or a **TC** button (see Fig. 2.2) in the **Control** column.
20
21 **C** is an abbreviation for //Control//. **TC** is an abbreviation for Remote //control.// In CENTO software, //Control// refers to sending a non-negative integer value to a device, while Remote //control //refers to sending a discrete signal.
22
23 [[image:Screenshot 2025-12-17 at 16.28.40.png]]
24
25 Figure 2.1. Tags with remote control enabled
26
27 [[image:Screenshot 2025-12-17 at 16.29.26.png]]
28
29 Figure 2.2. Tags with control and remote control enabled
30
31 Clicking **C** opens a pop-up window prompting the user to enter a password to access the control function (see Fig. 2.3).
32
33 [[image:Screenshot 2025-12-17 at 16.30.01.png]]
34
35 Figure 2.3. Entering password
36
37 To proceed, enter the account password. After successful authentication, a modal window appears allowing to specify the value to be written to the device (see Fig. 2.4).
38
39 [[image:Screenshot 2025-12-17 at 16.31.55.png]]
40
41 Figure 2.4. Entering value for control
42
43 After entering the value in the field, click **Send** (see Fig. 2.4).
44
45 Next, confirm the entered value by clicking **Execute** to initiate the control command and write the value to the device. Alternatively, click **Cancel,** to cancel the operation (see Fig. 2.5).
46
47 [[image:Screenshot 2025-12-17 at 16.32.27.png]]
48
49 Figure 2.5. Confirmation of the command to write a value
50
51 Clicking **TC** also opens a password prompt window. After successful authentication, a command selection window appears (see Fig. 2.6). As with the Control, a confirmation window follows the selected command.
52
53 [[image:Screenshot 2025-12-17 at 16.33.06.png]]
54
55 Figure 2.6. Selecting command for remote control
56
57 = 3. SETTING CONTROL =
58
59 == 3.1. Setting using WEB interface ==
60
61 Setting control for tags transmitted via Modbus, OPC DA, or IEC-104 protocols is performed through the **Edit parameter** interface located under Settings > Devices, tags, channels, in the **Tags, channels** tab. In this interface, select the target device in the device tree by checking the box next to it. The device should be configured with one of the supported protocols: Modbus TCP, Modbus RTU over TCP, OPC DA, or IEC-104. To open the tag editing interface, click on the tag identifier or tag name in the general tag list.
62
63 The interface includes protocol-dependent fields:
64
65 - general settings described in the “Setup manual”,
66
67 - reading settings as defined in the relevant configuration manuals,
68
69 - settings for writing:
70
71 * Remote control (discrete signal transmission to the device) for IEC-104 protocol: "Remote control is allowed", "Select before operate (SBO)", "Function", "Command duration", "Switch on address", "Switch on value", "Switch off address", "Switch off value", for Modbus TCP protocol: "Remote control is allowed", "Function", "Value length", "Switch on address", "Switch on value", "Switch off value", "Switch off address", "Write by bitmask";
72 * Control (transmission of a positive integer to the device) for Modbus TCP protocol: "Record values", "Function", "Data type in device", "Address", "Byte order", conversion elements: "Physical value (lower limit)", "Physical value (upper limit)", "Value to record (lower limit)", "Value to record (upper limit)", for OPC DA protocol: "Record values", "Device Tag Data Type", conversion elements: "Physical value (lower limit)", "Physical value (upper limit)", "Value to record (lower limit)", "Value to record (upper limit)".
73
74 1) The remote //control// function is available for Modbus TCP Modbus RTU over TCP) protocols (see Fig. 3.1.1) and IEC 104 (see Fig. 3.1.2).
75
76 The position of the **Remote control is allowed **switch determines whether record commands can be sent to the device at the specified address.
77
78 The position of the **Select before operate (SBO)** switch defines whether command selection is required prior to executing remote control commands.
79
80 In the Remote **control **field, select the appropriate ASDU type for the control command from the drop-down list (see Fig. 3.1.4).
81
82 [[image:Screenshot 2025-12-17 at 16.38.45.png]]
83
84 Figure 3.1.1. Setting remote control via Modbus protocol
85
86 [[image:Screenshot 2025-12-17 at 16.39.12.png]]
87
88 Figure 3.1.2. Setting remote control via IEC-104 protocol
89
90 The following functions are available for the Modbus protocol:
91
92 FC5 (0x05) - recording the value of one flag (Force Single Coil).
93
94 FC6 (0x06) - recording the value to Preset Single Register.
95
96 FC16 (0x10) - recording multiple registers, used to record a block of contiguous registers (1 to 123 registers) to a remote device (Write Multiple Registers)
97
98 The** Value lenght** field specifies the number of registers to be recorded.
99
100 The **Switch on address** field specifies the address of the register in the device memory where the enable command will be written. The address should be a non-negative integer.
101
102 The **Switch off address** field specifies the register address in the device memory where the disable command will be written. The address should be a non-negative integer.
103
104 The **Switch on value** and **Switch off value** indicate the value to be written to the register address to execute the disable command. The value can be specified in decimal, binary, octal, or hexadecimal (HEX) format. Decimal is written as a plain number, binary is prefixed with 0b or 0B, represents setting the two least significant bits to 1 and 0, octal is prefixed with 08, HEX is prefixed with 0x or 0X.
105
106 The **Write by bitmask **field specifies the mask in decimal, binary, or HEX format.
107
108 2) The //Control// function is available for Modbus TCP (Modbus RTU over TCP) protocols (see Fig. 3.1.3 ), and OPC DA (see Fig. 3.1.9).
109
110 [[image:Screenshot 2025-12-17 at 16.40.14.png]]
111
112 Figure 3.1.3. Setting  control for Modbus protocol
113
114 [[image:Screenshot 2025-12-17 at 16.41.11.png]]
115
116 Figure 3.1.4. Remote control for IEC-104
117
118 Settings for writing: Write values, Function, Device Tag Data Type, Address, Byte order; Tranformation elements: Physical value (lower limit), Physical value (upper limit), Record value (lower limit), Record value (upper limit).
119
120 The position of the **Write values** switch determines whether value write commands can be sent to the device at the specified address.
121
122 The **Function** field selects the Modbus recording function from the drop-down list (see Fig. 3.1.5).
123
124 [[image:Screenshot 2025-12-17 at 16.41.51.png]]
125
126 Figure 3.1.5. Modbus control function
127
128 FC5 (0x05) - recording the value of one flag (Force Single Coil).
129
130 FC16 (0x10) - recording multiple registers, used to write a block of contiguous registers (1 to 123 registers) to a remote device (Write multiple registers).
131
132 The **Address** field specifies the address of the tag in the device memory to which the value will be written. The address should be a non-negative integer in decimal format.
133
134 The field **Byte order** from the drop-down list (see Fig. 3.1.6) is used to select different order of bytes and/or words in the written CENTO data.
135
136 [[image:Screenshot 2025-12-17 at 16.42.23.png]]
137
138 In the **Device Tag Data Type** field, select the data type used by the device to store values from the drop-down list (see the device manual for details) (see Fig. 3.1.7).
139
140 [[image:Screenshot 2025-12-17 at 16.43.58.png]]
141
142 Fig. 3.1.7. Device Tag Data Type
143
144 In the **Transformation** block, a linear transformation is applied to convert a physical quantity into a value to be recorded, using defined upper and lower limits for both. These limits establish the valid ranges for the physical quantity and its corresponding recorded value, within which data can be filled in (see Fig. 3.1.8).
145
146 [[image:Screenshot 2025-12-17 at 16.44.29.png]]
147
148 Figure 3.1.8. Transformation block
149
150 In devices using the OPC DA protocol, the control function is easier to configure. In the settings, enable **Write values**, select the device tag data type, and define the necessary transformations (see Fig. 3.1.9).
151
152 [[image:Screenshot 2025-12-17 at 16.45.36.png]]
153
154 Figure 3.1.9. Configuring control for OPCDA protocol
155
156 == 3.2. Setting control using MS Excel ==
157
158 To configure **Control **for a tag polled via the required protocol using Excel, download a configuration template. To do this, navigate to Settings > Configuration files in the CENTO interface. The **Import/Export configuration file** page opens (see Fig. 3.2.1). In the **Tags and Channels** section, click** Download** to download the template file.
159
160 [[image:Screenshot 2025-12-17 at 16.50.31.png]]
161
162 Figure 3.2.1. Import/Export configuration files
163
164 Next, open the previously downloaded file, which contains a list of all tags used in CENTO. The details for setting these tags are outlined in the corresponding manual for configuring tags and devices based on the selected protocol.
165
166 [[image:Screenshot 2025-12-17 at 16.51.23.png]]
167
168 [[image:Screenshot 2025-12-17 at 16.51.40.png]]
169
170 Figure. 3.2.2. Table of tags
171
172 The table includes columns specifically designated for control and remote control settings:
173
174 * **Resolution of TU** field specifies whether the ability to send remote control (recording) commands is enabled.
175 * **Register address enable** specifies the address of the register in the device memory where the enable command will be written. The address should be a non-negative integer.
176 * **Value for enable **specifies the value to be written to the register address to execute the enable command.
177 * **Register address disable** specifies the address of the register in the device memory where the disable command will be written. The address should be a non-negative integer.
178 * **Value for disable **specifies the value to be written to the register address to execute the disable command.
179 * **Control resolution** field specifies whether the ability to send write commands is enabled.
180 * **Write function **is completed according to the device manual. The mapping between write functions and their identifiers is provided on the //ID Directory //sheet (see Fig. 3.2.3).
181
182 [[image:Screenshot 2025-12-17 at 16.52.25.png]]
183
184 Figure 3.2.3. ID Directory write function
185
186 * **Device data type **is filled in according to the device manual. The mapping between data types and their corresponding identifiers is listed on the //ID Directory //sheet (see Fig. 3.2.4).
187
188 [[image:Screenshot 2025-12-17 at 16.52.54.png]]
189
190 Figure 3.2.4. Directory ID data type
191
192 * **Write address **specifies the memory address of the tag in the device where the value will be written.
193 * **Byte order **is filled in according to the device manual. The mapping between byte order and their corresponding identifiers is provided on the "ID Directory" sheet (see Fig. 3.2.5).
194
195 [[image:Screenshot 2025-12-17 at 16.53.28.png]]
196
197 Figure 3.2.5. Directory ID byte order
198
199 * Transformation for Modbus: Physical value (lower limit)
200 * Transformation for Modbus: Physical value (upper limit)
201 * Transformation for Modbus: Value for writing (lower limit)
202 * Transformation for Modbus: Value for writing (lower limit)
203
204 After creating the configuration, upload the template to the CENTO database. To do this, click **Upload** in the **Tags and Channels** block of the **Configuration files** interface Then, click **Select a file. **A window opens to select the storage location of the tag configuration file that was previously uploaded and edited.
205
206 Afterward, check the file for any errors that may have occurred during configuration by clicking **Check.**
207
208 If the check is successful, write the configuration to the database clicking **Save**. If errors are detected during the check, eliminate them and repeat the process until all errors are resolved.
209
210 == 3.3. Setting up control in the information model ==
211
212 The Information Model (IM) is an add-on to the structure recorded in CENTO.
213
214 The IM classes define the types and subtypes of all devices on the site, ensuring the system knows which parameters to expect from these devices.
215
216 To add //Control// to the IM, download the Excel file from the **Configuration files** menu item under **Information Model Classes** (see Fig. 3.2.1), or configure it using the web editor by going to Information Model Editor > Classes (see Fig. 3.3.2).
217
218 In the downloaded file, first create a new class //Write value// in the //List of Classes// sheet. Then, create a separate sheet where the **code** name matches the tab name (see Fig. 3.3.1).
219
220 [[image:Screenshot 2025-12-17 at 16.54.43.png]]
221
222 Figure 3.3.1. Value for writing class with attributes in Excel file
223
224
225 This class has four attributes to be specified exactly as shown in Figure 3.3.1:
226
227 * **Tag ID **is a mandatory field;
228 * Optional fields include the lower and upper limits of values, which define the range within which any values can be entered. The **Value variants** field is provided for convenience, allowing to select from predefined options instead of manually entering values. To use this feature, specify a reference to the directory in the **Type** column, such as// ref_value_variants //(see Fig. 3.3.6). This reference can then be used to select the desired numeric parameters (see Fig. 3.3.7).
229
230 Check the created //Write value// class on the classes editor page:
231
232 [[image:Screenshot 2025-12-17 at 16.55.17.png]]
233
234 Figure 3.3.2. Class Write value with attributes in the web-interface of the IM editor
235
236 Next, create a class, for example, Motor, to be used to control the IM object. For this class, add attributes with the reference to the class //Write value //in the **Type** column (write the class **code**):
237
238 [[image:Screenshot 2025-12-17 at 16.55.51.png]]
239
240 Fig. 3.3.3 - Class Motor with attributes in Excel file
241
242 Check the created //Motor// class on the classes editor page:
243
244 [[image:Screenshot 2025-12-17 at 16.56.24.png]]
245
246 Figure 3.3.4. Class Motor with attributes in the web-interface of the IM editor
247
248 In the IM object editor, create an object with the class //Motor//. In the **Attributes** table, set tag ID, upper and lower limits, value variants (if necessary, reference book is to be created) for configuring.
249
250 [[image:Screenshot 2025-12-17 at 16.56.55.png]]
251
252 Figure 3.3.5. Configuring the Control in the Information Model (object editor)
253
254 To add aliases of values for writing, download a template from the **Information model references** block (see Fig. 3.2.1). Next, open the downloaded file. On the sheet //Categories,// add the code of the directory and its name:
255
256 [[image:Screenshot 2025-12-17 at 16.57.33.png]]
257
258 Figure 3.3.6. Configuring IM directory
259
260 The added directory should be placed on a separate Excel tab, with the tab name matching the directory code. The table structure for the directory should be copied from the provided templates, and the values for writing should be entered into it (see Fig. 3.3.7). These values can later be selected during control operations on the diagram (see the “User manual” for details).
261
262 [[image:Screenshot 2025-12-17 at 16.58.03.png]]
263
264 Figure 3.3.7. Table of IM directories
265
266 IM directories can also be configured using the web** Information Model editor** on the **Directories** tab. The directory shown in Fig. 3.3.7 is displayed in the web interface as illustrated in Fig. 3.3.8.
267
268 [[image:Screenshot 2025-12-17 at 16.58.31.png]]
269
270 Figure 3.3.8. IM directory
271
272 IM settings allow sending both single and multiple remote control commands. Remote control is configured in the same way as control, but uses its own set of system commands.
273
274 * **Single remote control command of an IM object**
275
276 If an IM object is intended for remote control from a diagram, the following system attributes are added to the object's class (see Fig. 3.3.9)
277
278 [[image:Screenshot 2025-12-17 at 16.59.06.png]]
279
280 Figure 3.3.9. Adding remote control attributes to the Switch class
281
282 Values for these attributes should be specified for class elements (see Fig. 3.3.10):
283
284 * telecontrol_on_ti – Tag ID for switching the object on;
285 * telecontrol_off_ti – Tag ID for switching the object off;
286 * telecontrolled – flag indicating whether the object can be controlled (TRUTH – remote control is available, FALSE – not available).
287
288 [[image:Screenshot 2025-12-17 at 16.59.40.png]]
289
290 Figure 3.3.10. Configuring Switch remote control via Excel
291
292 Remote control can also be configured in the Information Model Editor (see Fig. 3.3.11).
293
294 [[image:Screenshot 2025-12-17 at 17.02.42.png]]
295
296 Figure 3.3.11. Configuring switch remote control via the web editor
297
298 * **Multiple remote control commands for a single IM object**
299
300 For objects with multiple telecontrol (remote control) commands, the IM includes a system class called //Telecontrol// (class code: telecontrol) with the following attributes (see Fig. 3.3.12):
301
302 [[image:Screenshot 2025-12-17 at 17.04.22.png]]
303
304 Figure 3.3.12. Telecontrol (remote control) class with attributes
305
306 For an IM object requiring multiple remote control commands, a class should be created whose attributes reference the //Telecontrol// system class. An example of such a class is shown in Fig. 3.3.13:
307
308 [[image:Screenshot 2025-12-17 at 17.05.09.png]]
309
310 Figure 3.3.13. Class attributes with the type Telecontrol
311
312 Fig. 3.3.14 shows an example of a configured IM object with multiple remote control commands:
313
314 [[image:Screenshot 2025-12-17 at 17.06.00.png]]
315
316 Figure 3.3.14. IM object with multiple telecontrol commands
317
318 Fig. 3.3.15 shows the drop-down menu of an active diagram element bound to the IM object configured as shown in Fig. 3.3.14:
319
320 [[image:Screenshot 2025-12-17 at 17.06.35.png]]
321
322 Figure 3.3.15. IM object on the diagram with multiple remote control commands
323
324 The system class //Telecontrol// can also be used for objects with single remote control commands. Attribute configuration is done in the same way – simply add a Telecontrol attribute to the remote control object, as shown in Fig. 3.3.13.
325
326 3.3.1. Setting up control and remote control without password
327
328 In standard operation, sending control and remote control signals requires user password entry. However, in certain cases, this level of security may be excessive. To accommodate such scenarios, the CENTO software includes a setting that allows //Control without password.//
329
330 Control without password is configured using the diagram (i.e., via the Information Model). To enable this, add the attribute Control without password with the code //skip_password// and the bool type to the class of the control object (see Fig. 3.3.16).
331
332 [[image:Screenshot 2025-12-17 at 17.25.19.png]]
333
334 Figure 3.3.16. Setting the control attribute without entering password
335
336 Thus, when creating an object of the selected class (see Fig. 3.3.17), include the specified attribute in the value field and verify its functionality on the diagram.
337
338 [[image:Screenshot 2025-12-17 at 17.27.04.png]]
339
340 Figure 3.3.17. Configuring an object with control without entering password
341
342 To skip password entry during remote control, as with control, an attribute named //Skip password// (any name can be used) is to be added. This attribute should have the  //skip_password// code and the //bool// type(see Fig. 3.3.18).
343
344 [[image:Screenshot 2025-12-17 at 17.27.52.png]]
345
346 Figure 3.3.18. Configuring the attribute for password-free control
347
348 Next, for the object with remote control commands, this attribute, should be enabled as shown in Fig. 3.3.19, and the command sending on the diagram should be tested.
349
350 [[image:Screenshot 2025-12-17 at 17.32.18.png]]
351
352 Figure 3.3.19. Configuring object for control without entering password
353
354 === 3.3.2. Configuring permission for remote control ===
355
356 Before executing remote control commands, some devices require an initial permission signal to be sent to a dedicated register. This signal enables remote control functionality. Only after this permission is granted the device accepts and process the main remote control commands.
357
358 To implement this type of remote control (TC) in CENTO, the following attributes are added to the object class (see Fig. 3.3.20):
359
360 * **telecontrol_permit_on_ti** – permission to switch TC on;
361 * **telecontrol_permit_off_ti** – permission to switch TC off.
362
363 [[image:Screenshot 2025-12-17 at 17.34.12.png]]
364
365 Figure 3.3.20. Attributes for remote control permission
366
367 The system assigns the IDs of the corresponding tags to these attributes of the IM object. These tags are configured to send a signal to the register that enables remote control (see Fig. 3.3.21)
368
369 [[image:Screenshot 2025-12-17 at 17.34.50.png]]
370
371 Figure 3.3.21. Configuration of attributes for enabling telecontrol
372
373 When an object uses the system class //Telecontrol// to send control commands, the permission-related attributes are designated as //permit_on_tag// and //permit_off_tag// (see Fig. 3.3.22):
374
375 [[image:Screenshot 2025-12-17 at 17.35.21.png]]
376
377 Figure 3.3.22. Attributes for enabling remote control
378
379 In some devices, a single tag handles this function, while in others, two separate tags perform it. These tags are configured similarly to those used for direct remote control, differing only in the register address (see Fig. 3.3.23):
380
381 [[image:Screenshot 2025-12-17 at 17.37.11.png]]
382
383 Figure 3.3.23. Tag configuration for telecontrol permission
384
385 Thus, after adding the attributes //telecontrol_permit_on_ti// and //telecontrol_permit_off_ti//, configuring the tags, and assigning them to the IM object, CENTO software first sends the remote control permission command before transmitting the actual remote control command.
386
387 = 4. RECOMMENDED SETTINGS AND SPECIAL CASES =
388
389 [[image:Screenshot 2025-12-17 at 17.38.23.png]]
390
391 [[image:Screenshot 2025-12-17 at 17.38.44.png]]
392
393 [[image:Screenshot 2025-12-17 at 17.38.57.png]]
394
395 [[image:Screenshot 2025-12-17 at 17.42.19.png]]
396
397 [[image:Screenshot 2025-12-17 at 17.41.38.png]]
398
399 [[image:Screenshot 2025-12-17 at 17.42.37.png]]