Wiki source code of 06 Data Tool

Version 65.1 by Jett on 2024/12/02 18:02

Show last authors
1 (% class="wikigeneratedid" %)
2 This chapter provides information about basic functions and configuration in PIStudio.
3
4 = **Alarm** =
5
6 == Bit alarm ==
7
8 Click "Project"→"Bit Alarm", it is displayed as the following figure.
9
10 (% style="text-align:center" %)
11 [[image:位报警 1.png||data-xwiki-image-style-alignment="center" class="img-thumbnail"]]
12
13 **Group No.: **Group number of Bit alarm. The name is unique and cannot be duplicated.
14
15 **Bit Address: **Bit address of alarm monitoring
16
17 * **Record bit alarm by default:**  Whether to record the alarm history data of bit alarm, if checked, it will be saved in the designated storage location.
18 * **Not save alarm OFF:** If checked, after the alarm is dismissed, the corresponding alarm records will be deleted from the log file.
19
20 **Upload to Cloud: **The data upload by "bit alarm" is stored in the Cloud and it is alarm data. (Only ig series and 8000/9000 series with -R after system upgrade are supported)
21
22 (% class="box infomessage" %)
23 (((
24 **✎Note:**
25
26 * After enable the Cloud and check the box of Upload to Cloud, the communication port settings of the address in the imported Bit Alarm record configuration must be the same as the communication port settings of the current project, otherwise it cannot be used normally.
27 * The number of Alarm records upload to Cloud shall not exceed the limit value, or the sum of the imported alarm records and the number of existing alarm records shall not exceed the limit value. the specific limitation as following table:
28
29 (% class="table-bordered" style="margin-left:auto; margin-right:auto; width:358px" %)
30 |=(% style="width: 79px;" %)Series|=(% style="width: 276px;" %)Number of Alarm upload to Cloud
31 |(% style="width:79px" %)8000-R|(% style="text-align:center; width:276px" %)200
32 |(% style="width:79px" %)9000-R|(% style="text-align:center; width:276px" %)200
33 |(% style="width:79px" %)3000ig|(% style="text-align:center; width:276px" %)20
34 |(% style="width:79px" %)8000ig|(% style="text-align:center; width:276px" %)200
35 |(% style="width:79px" %)MD|(% style="text-align:center; width:276px" %)20
36 )))
37
38 **Alarm Condition:** It sets alarm trigger condition, there are two types: alarm when ON and alarm when OFF.
39
40 **Alert: **It is used to mark whether the alarm has occurred. if an alarm occurs, the address of "control bit" will be written to 1. If "clear alert when alarm OFF" is checked, the address of "control bit" will be written to 0.
41
42 **Beep when alarm ON: **The beep works when the alarm is triggered. If "beep once" is checked, bit address alarm only beep once and stop.
43
44 **Content: **It is used for setting alarm content (command).
45
46 **Alarm Screen: **Pop-up alarm screen (it need to be sub-screen);
47
48 * **Position: **The location of the screen alarm display.
49 * **Pop-up Interval: **The time of reopen the alarm screen when alarm screen closed.
50 * **Pop-up once: **Pop up alarm screen once, and the screen would not pop up again
51 * **Close window when alarm off: **Automatically close the alarm screen when alarm off.
52
53 (% class="box infomessage" %)
54 (((
55 **✎Note:**
56
57 * If the "cloud" function is enabled and "upload to cloud" is checked, the communication port of the address in the configuration of the imported bit alarm record must be the same as that of the current project; otherwise, it cannot be used normally.
58 * The number of alarm configuration points reported to the cloud cannot exceed 20, or the sum of imported alarm records and the current alarm records cannot exceed 20. If it exceeds, please reconfigure.
59 )))
60
61 **Operating Procedures of Adding One Alarm**
62
63 * Click "Project"→"Bit Alarm" as below shows.
64
65 (% style="text-align:center" %)
66 [[image:8.Basic Function_html_5f8da20315334bac.png||data-xwiki-image-style-alignment="center" height="144" width="539" class="img-thumbnail"]]
67
68 * Click "Add" button to open "Bit Alarm" setting window.
69
70 (% style="text-align:center" %)
71 [[image:8.Basic Function_html_94a019683b506e15.png||data-xwiki-image-style-alignment="center" height="307" width="554" class="img-thumbnail"]]
72
73 * Set "Bit Address".
74 * Set "Alarm Condition".
75 * Set "Content".
76 * Other settings can be set according to the actual situation".
77 * Click "OK" button to complete settings.
78
79 == Word alarm ==
80
81 Word alarm is to monitor the word address of a device. If the data meets the set conditions, an alarm will be generated.
82
83 Click "Project"→"Word alarm", it is displayed as the following figure.
84
85 (% style="text-align:center" %)
86 [[image:字报警 1.png||class="img-thumbnail"]]
87
88 **Alarm Name:** You can set alarm name for it. Alarm Name can only consist of (0~~9), (a~~z), (A~~Z), ('_'), (' ') and other non-English characters.
89
90 **Alarm Address: **It is used for setting word address for word alarm, such as HDW0.
91
92 **Data Format: **16-bit unsigned decimal, 16-bit signed decimal, 16-bit BCD, 32-bit unsigned decimal, 32-bit signed decimal, 32-bit BCD, 32-bit float.
93
94 **Group No.: **Group number of word alarm. The name is unique and cannot be duplicated.
95
96 **Upload to Cloud: **The data upload by "word alarm" is stored in the Cloud and it is alarm data. (Only ig series and 8000/9000 series with -R after system upgrade are supported)
97
98 (% class="box infomessage" %)
99 (((
100 **✎Note:**
101
102 * If the "cloud" function is enabled and "upload to cloud" is checked, the communication port of the address in the configuration of the imported word alarm record must be the same as that of the current project; otherwise, it cannot be used normally.
103 * The number of alarm configuration points reported to the cloud cannot exceed 20, or the sum of imported alarm records and the current alarm records cannot exceed 20. If it exceeds, please reconfigure.
104
105 (% style="margin-left:auto; margin-right:auto; width:358px" %)
106 |=(% style="width: 79px;" %)Series|=(% style="width: 276px;" %)Number of Alarm upload to Cloud
107 |(% style="width:79px" %)8000-R|(% style="text-align:center; width:276px" %)200
108 |(% style="width:79px" %)9000-R|(% style="text-align:center; width:276px" %)200
109 |(% style="width:79px" %)3000ig|(% style="text-align:center; width:276px" %)20
110 |(% style="width:79px" %)8000ig|(% style="text-align:center; width:276px" %)200
111 |(% style="width:79px" %)MD|(% style="text-align:center; width:276px" %)20
112 )))
113
114 **Record alarm:**  Whether to record the alarm history data of word alarm, if checked, it will be saved in the designated storage location.
115
116 **Not save alarm OFF:** If checked, after the alarm is dismissed, the corresponding alarm records will be deleted from the log file.
117
118 **Alarm Condition**: Alarm is triggered when designated address meets the alarm condition, it provides four conditions;
119
120 1. **High alarm:** Alarm is triggered when it reaches high limit. It can be a constant or a variable
121 1. **Low alarm:** Alarm is triggered when it reaches low limit. It can be a constant or a variable
122 1. **Range alarm:** Alarm is triggered when it exceeds the range. It can be a constant or a variable
123 1. **Equivalent alarm: **Alarm is triggered when the value equals to the given data. It can be a constant or a variable
124
125 **Alarm Info: **It is used for setting alarm content (command);
126
127 **Alert: **It is used to mark whether the alarm has occurred. if an alarm occurs, the address of "control bit" will be written to 1. If "clear alert when alarm OFF" is checked, the address of "control bit" will be written to 0.
128
129 **Alarm Screen: **Pop-up alarm screen (it need to be sub-screen);
130
131 1. **Position: **The location of the screen alarm display.
132 1. **Pop-up Interval: **The time of reopen the alarm screen when alarm screen closed.
133 1. **Pop-up once: **Pop up alarm screen once.
134 1. **Close window when alarm off: **Automatically close the alarm screen when alarm off.
135
136 **Beep when alarm ON: **beep works when the alarm is triggered, in the default mode, the beep works until the alarm is released.
137
138 **Beep once:** Beep works once, when alarm is triggered.
139
140 **Alarm List**
141
142 It displays all the word alarm lists; it will show the alarm information;
143
144 **Operating Procedures of Adding One Alarm**
145
146 * Click "Project"→ "Word Alarm" as below shows.
147
148 (% style="text-align:center" %)
149 [[image:8.Basic Function_html_1b59522c984cd7c2.png||height="144" width="492" class="img-thumbnail"]]
150
151 * Click "AddClick" button to open "Word Alarm" setting window.
152
153 (% style="text-align:center" %)
154 [[image:8.Basic Function_html_942107c81fc6901c.png||height="307" width="554" class="img-thumbnail"]]
155
156 * Set Basic information of word alarm.
157 * Set "Content".
158 * Other settings can be set according to the actual situation.
159 * Click "OK" button to complete settings.
160
161 **HMI Alarm Demo Download Link**
162
163 [[https:~~/~~/drive.google.com/open?id=1Llq03CMISM_1mMIfU308hxFbs4rGdQGP>>url:https://drive.google.com/open?id=1Llq03CMISM_1mMIfU308hxFbs4rGdQGP]]
164
165 = **Recipe** =
166
167 == Overview of recipe ==
168
169 Recipes are composed of multiple groups of information materials with the same structure and different data. Due to the sameness of these materials, users can edit them into a group of recipes to facilitate data transfer between HMI and PLC. Therefore, this function can be utilized for information that has a similar structure to achieve efficient and correct transmission.
170
171 Data operation of recipe: Upload and download. Upload refers to reading the data of [The set address] group and writing the data of this group to the corresponding recipe file. Download refers to reading a group of data from the recipe file and assigning the group of data to [The set address].
172
173 The recipe data can be stored in external equipment, such as USB flash disk and SD card. The whole recipe data can be viewed with the [Recipe record] object.
174
175 (% class="wikigeneratedid" id="HExample" %)
176 **Example**
177
178 Taking automobile paint spraying as an example, suppose that when a newly manufactured automobile needs to be painted, it needs to spray different colors (red, green and blue) on the top, bottom and outside of the automobile, and the original colors provided are only red, green and blue. At this time, to spray different colors, it needs the appropriate ratio of these three colors, and the spraying time of different parts is different. At this time, the function of recipe needs to be executed. Check Table 1 for details.
179
180 Table 1 Example recipe
181
182 |Part|Red (Kg)|Green (Kg)|Blue (Kg)|Spraying time (Seconds)
183 |Top|2|2|1|30
184 |Bottom|3|1|2|40
185 |Outside|2|3|3|20
186
187 From the above table, one group of recipes is needed when spraying different parts, and three groups of recipes can be established, and each group of recipes has four ingredients: Red, Green, Blue, Spraying time. The value of each ingredient is different in different groups of recipes.**Recipe configuration**
188
189 The recipe function needs to be used with the recipe configuration area and [Recipe record] object. Click [Recipe] in the [System configuration/Record setting] in the upper left side of the software [[image:1698393787529-717.png]]and the following interface will pop up:
190
191 (% style="text-align:center" %)
192 [[image:1.png]]
193
194 Click [Add] to pop up the recipe setting interface, as shown in the following figure:
195
196 (% style="text-align:center" %)
197 [[image:2.png]]
198
199 |Recipe configuration options|Description|Notice
200 |Recipe name|Name the current recipe|Note: Recipe name can only consist of (0~~9), (a~~z), (A~~Z), ('_'), ('') and other non-English characters.
201 |Group number|Configure the group number of the current recipe, ranging from 0 to 1000|
202 |Number of ingredients|Configure the number of the current ingredient, ranging from 0 to 1500|
203
204 |Data configuration options|Description|Notice
205 |Starting address|The data of group in the recipe file is read out and displayed in the address, which will be automatically assigned according to the set data format of each ingredient. For example, if each group has 10 ingredients, the ingredient format is 16-bit unsigned decimal number, and the starting address is HDW0, then 10 addresses (HDW0-HDW9) correspond to 10 ingredients respectively, the values in HDWO correspond to the values in ingredient 1, the values in HDW1 correspond to the values in ingredient 2, and so on.|
206 |Recipes are read and written at different addresses|When "recipe written and read address are different" is checked, the address configured by the read address is only used for recipe read data operation, and the address set in this area is used to control recipe written data operation.|
207 |Data format|Configure the data format of this recipe. There are 9 modes of data format: 16-bit BCD code, 16-bit signed decimal, 16-bit unsigned decimal, 32-bit BCD code, 32-bit signed decimal, 32-bit unsigned decimal, 32-bit (single-precision) floating points, 64-bit (double-precision) floating point, string.|(% rowspan="2" %)(% class="box infomessage" %)
208 (((
209 **✎Note:** The data format set here is for all components of the recipe, that is, the data format of all components in a recipe is consistent.
210 )))
211 |Decimal point position|Configure the selection of integer and decimal places of data.
212 |Enable discontinuous addresses|If checked, the address of the recipe list can be modified.|
213 |Language|Recipe display language is selectable.|
214 |Recipe list|The recipe list displays the configured recipe parameter information in the list according to the settings. The parameters of each ingredient in the recipe list can be modified at the same time: For example, the name of the ingredient, the data format of the ingredient, the address of the ingredient, and directly filling in the data of each ingredient in each group.|
215 |Insert group|Click [Insert group], enter the number of groups to insert, and the corresponding row will be added to the recipe list.|
216 |Delete group.|Click [Delete group] to select the group to delete|
217 |Insert ingredient|Click [Insert group], enter the number of groups to insert, and the corresponding row will be added to the recipe list.|
218 |Delete ingredient|Click [Delete ingredient] to select the ingredient to delete.|
219 |Data import|Import existing data files, supporting .xlsx .xls .csv format.|
220 |Data export|Export configured recipe data|
221
222 Traditional recipe is composed of multiple groups of information with the same structure and different data. Due to the similarity of these information, you could edit them into a set of recipes to facilitate the transfer of data between HMI and PLC.
223
224 Data operation
225
226 1. **Read:** Read a group of data from the recipe file and assign the group of data to the set address.
227 1. **Write: **Read a group of data from the set address and assign the group of data to the corresponding recipe file.
228
229 PI Series HMI has Recipe function, Recipe function keeps data in the HMI, used to download the data from HMI to designated device addresses, or upload the data from device addresses to HMI.
230
231 The maximum number of group in recipe is 1000, and the maximum number of member in each group is 1500.
232
233 Recipe could store the data in USB flash disk and SD card and view the recipe data by object "Recipe display". It has two mode: simple mode and advanced mode.
234
235 1. **Simple: **Only support the data operation of one recipe file, including read and write.
236 1. **Advanced:** Support the data operation of multiple recipe files, including read, write, insert and index. View and select recipe file by object "File list".
237
238 Recipe function settings will be display in "[[Recipe display>>http://docs.we-con.com.cn/wiki/pistudio/view/Helps/06.Objects/#HRecipedisplay]]" object.
239
240 **Description**
241
242 (% style="text-align:center" %)
243 [[image:8-1Recipe.png]]
244
245 **Basic**
246
247 * **Recipe Folder:** Give Recipe folder name (It can be used, when setting Recipe display object);
248 ** (% class="box infomessage" %)
249 (((
250 **✎Note: **Recipe Folder name can only consist of (0~~9), (a~~z), (A~~Z), ('_'), (' ') and other non-English characters;
251 )))
252 * **Group: **Set the recipe group number, the number of elements, the data format. The data format has 8 modes: 16-bit signed decimal, 16-bit unsigned decimal, 16-bit BCD, 32-bit signed decimal, 32-bit unsigned decimal, 16-bit BCD, 32-bit floating point number, 64-bit (double-precision) floating-point number, string, and the choice of data integer and decimal places.
253 * **Elements:** It sets members' initial number of each group;
254 * **Data Format:** There are some formats can be supported in Recipe, like 16-bit BCD, 16-bit signed, 16-bit unsigned, 32-bit BCD, 32-bit signed, 32-bit unsigned, 32-bit floating and string. If each member requires different formats, please set it one by one in form;
255 * **Decimal: **It sets integer and scale digits;
256
257 **Mode Selection: **Select Simple or Advanced mode. Recipe file is divided into simple mode and advanced mode. Only in advanced mode can exist multiple recipe files used at the same time. (used wiht file list onject), Simple mode can only support a recipe file; Aadvanced mode can insert group information and reordered.
258
259 Function address: all operations are done through function addresses, different operating value is as follows:
260
261 * = 0: no operation;
262 * = 1: trigger read data;
263 * = 2: new trigger or update (If there is group number, it updates.)
264 * = 4: insert (only valid in advanced mode)
265 * = 8: delete (Delete according to the writing group number. If write and read address are consistent, refer to the reading group number);
266 * = 16: delete and sorted ((Delete according to the writing group number. If write and read address are consistent, refer to the reading group number)
267 * = 64: import CSV recipe file.
268
269 **Use Multiple File**
270
271 Check it to use more than one recipe file in HMI, but this option only valid in [Advanced mode];
272
273 **Select language**
274
275 The text in HMI can be in 8 languages, user can set language in here;
276
277 **Address**
278
279 1. **Group:** This address is for selecting group number;
280 1. **Start: **This is starting address is for reading and writing in recipe, PIStudio will automatically assigns addresses for each members;
281 1. **File(16 words): **This address only available when enable the Use Multiple File. This setting address is for input the recipe file's filename.
282
283 **Use Index**
284
285 If the value from Group address is changed, Read address will display the new data according to new group number immediately. Relatively, if the data of write address is changed, the corresponding group from table is also changed.
286
287 **Query by Element**
288
289 Enable it for querying group by specify element, select a primary key from all the elements, except the group number. This element value from all groups must be unique if want to set as primary key;
290
291 (% class="box infomessage" %)
292 (((
293 **✎Note: **When this option is enabled, Group address will be invalid.
294 )))
295
296 **Use Independent Write Address**
297
298 To separate Recipe read address and write address.
299
300 **Use Insert**
301
302 It inserts data into the specified group, if the specified group already exists, it would not cover the original data, while it will move the original group next one after it.
303
304 **Discontinuous Address**
305
306 Whether enable the non-consecutive recipe operation addresses or not. If disabled, the recipe address will recover as the continuous addresses.
307
308 (% class="box infomessage" %)
309 (((
310 **✎Note: **This function only supported in HMI+, i series, ie series, ig series.
311 )))
312
313 **Description of adcanced mode**
314
315 According to the recipe configuration information in Figure 2 above. The function address is HDW70, and each function configuration corresponds to the group number address, recipe element address and recipe file name address. The recipe information configured in figure 2 can be displayed in the table in figure 3 with the "Record Display" object.
316
317 [[image:image-20220806111333-1.jpeg]]
318
319 **Read recipe**: Input 1 to the file name, when the group number addresses HDW100=1 and HDW70=1 (read), the element data of the first group (ID=1) is written to the recipe address from the recipe file. As shown in Figure 3 above: HDW105=1, HHDW106=2, HDW107=3, HDW108=4, HDW109=5.
320
321 **Write recipe**: Input 1 to the file name, when the group number addresses HDW101=4 and HDW70=2 (write), the data will be read from the recipe address and written to the corresponding group of the recipe file. As shown in figure 3 above: HDW110=20, HHDW111=21, HDW112=22, HDW113=23, HDW114=24. Write the data of this set to the elements of ID=4 in the recipe table (if there is no data of Group 4 in the recipe file, a new set of data will be added; If there is data of Group 4 in the original recipe, the original data will be overwritten and the latest data will be displayed in the recipe file).
322
323 **Index recipe**: When the file name is input 1, when the group number address HDW102=3, the data of ID=3 (Group 3) in the recipe file will be directly displayed in the component address of the index, that is, HDW115=11, HHDW116=12, HDW117=13, HDW118=14 and HDW119=15. If the data of the index component address is modified, the modified data will be automatically filled into the table of the recipe file, that is, the data of the recipe file will be automatically updated after the data is modified.
324
325 [[image:image-20220806111355-2.jpeg]]
326
327 **Insert recipe**: Input 1 to the file name, when the group number addresses HDW103=3 and HDW70=4 (insert), the data of the 3rd group will be inserted, but the data of the third group already exists in the original recipe file (see Figure 3 above), then the original data will be moved down by one group, that is, the original 3rd group will become the 4th group, and so on, and HDW120=16, HHDW121=17, HDW122=18, HDW123=19 and HDW124=20 will be written into the new 3rd group of the recipe file at the same time. The results are shown in Figure 4 above.
328
329 When the group number address HDW101=2 (**The delete function only works on the group number of the write function**), HDW70=8 (delete), the data in the recipe file with ID=2 (Group 2) will be deleted.
330
331 When the group number address HDW101=5 (**The delete function only works on the group number of the write function**), HDW70=16 (delete and sort), the data of ID=5 (Group 5) in the recipe file will be deleted, and the original ID=6 (Group 6) data will be reordered to become the new Group 5 data, the original ID=7 (Group 7) data will be reordered to become the new Group 6 data, and so on.
332
333 **Recipe Demo Download Link: **[[Download>>url:https://drive.google.com/open?id=1Cjbq_tW-NIirHFBpxt47g7IKvoYaWqUR]]
334
335 == Calling CSV recipe file ==
336
337 **Overview**
338
339 The recipe files used by the regular series HMI are in CSV format, and the recipe files used by the current series HMI are in database format. In order to be compatible with CSV format recipe files on the current series of HMI, please follow the instruction when using it.
340
341 **Operations**
342
343 Create the recipe as it is configured. The default recipe file name is “1. rcp2”, which is placed in folder 123, as shown in the following figure.
344
345 (% style="text-align:center" %)
346 (((
347 (% style="display:inline-block" %)
348 [[Figure 1>>image:image-20220806100702-2.jpeg]]
349 )))
350
351 2. Place a "Recipe Record Display" object and a "File List" object on the project screen for viewing the recipe files in the folder 123, and the address configuration in the object should be consistent with the above configuration.
352
353 (% style="text-align:center" %)
354 [[image:image-20220806100753-3.jpeg]]
355
356 By configuring the address in the table and combining the recipe function, the CSV recipe files of regular series are imported.
357
358 |=Address range|=Object type|=Address function
359 |HSW1050 to 1065|Text input object|Enter the CSV recipe file name to import
360 |HSW1066|Numerical input object|Import CSV file type:(((
361 * = 0: Custom CSV file (all data in the file is valid)
362 * = 1: Normal recipe file for regular series HMI (the data in line 1 of the file is invalid)
363 * = 2: Special recipe file for regular series HMI (the data in line 1 and 2 and column 1 of the file are invalid)
364 )))
365 |HSW1067|Numerical input object|(((
366 Where the CSV file is saved:
367
368 * = 0: In the CsvFile directory of U disk
369 * = 1: In the CsvFile directory of the SD card
370
371 **The path for offline simulation is: C:\ HMIEmulation\ CustomFileDir\ CsvFile**
372 )))
373 |HSW242|Numerical input object|Returns the results of the csv import:(((
374 * = 37: CSV file imported successfully
375 * = 38: CSV file import failed
376 )))
377
378 **Select CSV recipe file (take U disk as an example):**
379
380 Using the file list object, select the recipe file in the U disk by path, and configure the recipe file name address directly to the special address HSW1050 in the above table, which can directly detect the CSV file in the U disk; Select the recipe file in the file list, and write the selected recipe file name into the recipe file name: In HSW1050 to 1065.
381
382 Use the special address of the above table to configure the path of the CSV file: HSW106, configure recipe file name: HSW1050 to1065
383
384 Use HSW1066 address to select the corresponding CSV recipe file type.
385
386 * HSW1066 = 0: Import a user-defined CSV recipe file (all data in the custom CSV file must be valid);
387
388 (% style="text-align:center" %)
389 [[image:image-20220806101129-5.jpeg]]
390
391 * HSW1066=1: Import the normal recipe file of regular series HMI (the data in line 1 of the file is invalid);
392
393 The data in line 1 of the normal recipe file is used to define the format of the recipe and will not be imported into the recipe table as recipe information, **but you must ensure that the data in line 1 representing the elements and number of groups is correct, otherwise the CSV recipe file will fail to be imported.**
394
395 (% style="text-align:center" %)
396 [[image:image-20220806101520-6.jpeg]]
397
398 * HSW1066=2: Import the special recipe file of regular series HMI (the data in line 1, 2 and column 1 of the file are invalid);
399
400 In the special recipe file, line 1 is used to define the format of the recipe, line 2 is used to define the element name of the recipe, and column 1 is used to define the group name of the recipe, so lines 1, 2 and column 1 of the special recipe will not be imported into the recipe table as recipe information. **During use, ensure that the data such as the number of groups and elements representing the recipe format in the first line are correct, otherwise the import of the CSV recipe file will fail.**
401
402 (% style="text-align:center" %)
403 [[image:image-20220806102610-7.jpeg]]
404
405 **Perform import**
406
407 After configuring the saving path of CSV recipe file, the name of recipe file and the type of recipe according to the above steps, the method of transferring CSV file to DB file is as follows:
408
409 * Configure the DB recipe file name by text input object: HDW500 = 3 (recipe file configured in Figure 1),
410 * Set the recipe function address to: HDW1000 = 64 (the function address configured in Figure 1),
411 * Transform the CSV recipe file in U disk into DB recipe file with file name “3.rcp2”.
412
413 **DB recipe file for storing CSV data:**
414
415 Simple mode: When the recipe file is set to simple mode, the file of CSV data is saved as the DB recipe file of 1. rcp2 by default.
416
417 Advanced mode: When the recipe is enabled in advanced mode (multi-file recipe), the imported CSV file data is saved to the file recorded at the recipe file address HDW500 (the address configured in Figure 1).
418
419 **Import results:**
420
421 * HSW242 = 37: Import succeeded;
422 * HSW242 = 38: Import failed.
423
424 **Precautions:**
425
426 * Ensure that the data format of each element in the CSV file is the same as the recipe data format set in the software (DB), and ensure that the elements of each row in the valid data area is the same as the elements set in the software (DB);
427 * When the elements of a line in CSV file is more than the elements set in the software (DB), it will prompt the import failure;
428 * When the CSV file imported into the regular series HMI is a recipe file, the data representing the recipe format (elements, number of groups, whether it is a special recipe) in line 1 must be correct, otherwise the import of CSV file will fail.
429
430 == **Recipe record function** ==
431
432 **Basic setting**
433
434 (% style="text-align:center" %)
435 [[image:3.png]]
436
437 Recipe selection: Select the recipe name to be displayed. The list is all the recipes configured in the recipe. If the list is empty, add the recipe in [Recipe].
438
439 Recipe shortcut key setting:
440
441 Add data: Used to add groups.
442
443 Delete data: Used to delete the selected configuration
444
445 Upload recipe: Used to upload the address data of the selected group to the corresponding group in recipe records.
446
447 Download recipe: Used to download the address data of the selected group to the corresponding group in recipe records.
448
449 Import recipe: Used to import the existing recipe files.
450
451 Export recipe: Used to export the current recipe as a file.
452
453 **Graphic**
454
455 (% style="text-align:center" %)
456 [[image:4.png]]
457
458 Style selection: Styles can be switched or customized.
459
460 Background configuration: Set the recipe background, including background color and transparency.
461
462 Table configuration: Set the appearance of recipe table area, including row background color, row spacing color, horizontal header background color, vertical header background color, horizontal header text color, vertical header text color, text color, row selected color, name color, line color and cell style.
463
464 **Expansion**
465
466 (% style="text-align:center" %)
467 [[image:5.png]]
468
469 Object lock: With the interlock address, the object is locked and the lock icon is displayed (upper left corner of the object) when the lock address is 0, and the bit switch is operable only when the bit pointed by the interlock bit address is 1. To lock the bit switch when the interlock bit address is 1, just check "Lock in ON".
470
471 Object lock icon: Icons will not display when the [Not display “Lock” icon] option is checked. Icon display will adapt to the change of object size.
472
473 Gray level display: When the object is locked, the text message will be grayed out.
474
475 = (% style="color:inherit; font-family:inherit; font-size:29px" %)**Traditional recipe**(%%) =
476
477 Traditional recipe is composed of multiple groups of information with the same structure and different data. Due to the similarity of these information, you could edit them into a set of recipes to facilitate the transfer of data between HMI and PLC.
478
479 Traditional recipe function is valid only when the LEVI project is converted to the PI project, and the original project uses the traditional recipe.
480
481 (% class="box infomessage" %)
482 (((
483 **✎Note**: Currently, only HMI+, i series, ie series, and ig series support the traditional recipe.
484 )))
485
486 == Simple recipe mode ==
487
488 Click the "Traditional Recipe" [[image:8-2TraditionalRecipe.png]] in the "Data tool" bar in the upper side of the software, and the following interface will pop up:
489
490 (% style="text-align:center" %)
491 [[image:8-3TraditionalRecipeConfigScreen.png||class="img-thumbnail"]]
492
493 **✎Note**:
494
495 * The recipe folder name can only consist of (0~~9), (a~~z), (A~~Z), ('_'), ('').
496 * The element name of the recipe cannot include following 5 special characters: " **,** " , " **|** " , " **<** " , " **>** " , " **&** " .
497
498 == Recipe display ==
499
500 Select the file type "Traditional recipe file" in object "Recipe Display", and it is recommended to fill in the traditional recipe group number HSW1612 to the address of select line.
501
502 (% class="box infomessage" %)
503 (((
504 **✎Note**: The Recipe Display can display up to 50 groups of 100 elements by default, which can be to display out of range by enabled "Address Control". After the "Address Control" is enabled, the display group number can be reached to 100. If want to display more than 100, please adjust the "Start Group" from "Address Control" to index the display group, as following shown:
505 )))
506
507 (% style="text-align:center" %)
508 [[image:8-4TraditionalRecipeDisplayConfigScreen.png||class="img-thumbnail"]]
509
510 == Recipe transmission address ==
511
512 The special addresses used in the Recipe are shown in the following table:
513
514 (% class="table-bordered" %)
515 |=Address|=Description|=Function
516 |HSW1611|Traditional Recipe transfer operation.|(((
517 ~=1: Recipe download.
518
519 ~=2: Recipe upload.
520 )))
521 |HSW1612|Traditional Recipe group number.|Traditional Recipe group number.
522 |(((
523 HSW242
524 )))|(((
525 Recipe operation result prompt:
526
527 Upload: Data is written to recipe file from address.
528
529 Download: Data is written to the address from recipe file.
530 )))|(((
531 ~=1: Recipe download, start.
532
533 ~=2: Recipe download, execution error.
534
535 ~=6: Recipe download, successful.
536
537 ~=7: Recipe upload, start.
538
539 ~=8: Recipe upload, execution error.
540
541 ~=11: Recipe group name does not exist.
542
543 ~=12: Recipe upload, successful.
544 )))
545
546 == **Recipe index** ==
547
548 The recipe index address RPW is mainly used for editing traditional recipes, and it is more convenient to modify the data and display of recipes. Only need to modify and display the data of the recipe file through "Numeric Input/Display" Object and "Word Switch".
549
550 The recipe index area (RPW)'s instruction as follows:
551
552 1. RPW~*~*~#~#~#~#, a total of six digits, the first two ~*~* represent the Recipe group number, ~#~#~#~# represents the element order number. For example, RPW010000 indicates the 1st element of the Recipe group No.1, and RPW110002 indicates the 3rd element of the Recipe group No.11.
553 1. If the indexed group number or element number does not exist, the value of RPW defaults to zero. For example, RPW110011 represents the 12th element of the Recipe group No.11. If it does not exist, the value returned by accessing RPW110011 is zero. The value written in RPW110011 will not be saved to the recipe file.
554
555 * **✎Note**: As long as RPW~*~*~#~#~#~# exists, any object "writes" to HPW~*~*~#~#~#~# will be saved to the recipe file. 
556
557 (% start="3" %)
558 1. The RPW register only supports word address access.
559 1. It can be known from the coding method of RPW~*~*~#~#~#~# that the range of RPW is from RPW000000-RPW990450, wherein the range of group number is 0-100, and the range of element is 0-450.
560
561 == Recipe example ==
562
563 The recipe index makes the modification and display of recipe data more convenient. Only need to modify and display the data of the recipe file through "Numeric Input/Display" Object and "Word Switch".
564
565 Edit the recipe configuration, create three groups of recipes, 4 elements for per group: Red, green, blue, spraying time, as following shown:
566
567 (% style="text-align:center" %)
568 [[image:8-5TraditionalRecipeCaseConfig.png]]
569
570 RPW 0~~3 can display the data of group for the selected line. RPW10000~~10003, RPW20000~~20003, RPW30000~~30003 each address can display the single element. Directly modify the content of the RPW address and then modify the recipe data, as following shown:
571
572 (% style="text-align:center" %)
573 [[image:8-7TraditionalRecipeCaseShowNoOpera.png]]
574
575 After selecting the 2nd group, trigger the download button to download the whole group data to the corresponding element address (For this case, the data will write into HDW0~~3), or trigger the upload button to upload the content of the element address to the specified recipe group.
576
577 (% style="text-align:center" %)
578 [[image:8-6TraditionalRecipeCaseShow.png]]
579
580 = **Trend chart** =
581
582 Trend chart function is used for displaying the real-time data in HMI as curve graph, which X axis represent as time, Y axis represent as data.
583
584 Click "Project" → "Trend chart", it will pop up the following screen. Click "Add" to creat new curve record.
585
586 (% style="text-align:center" %)
587 [[image:趋势图配置 001.png||class="img-thumbnail"]]
588
589 **Settings**
590
591 (% style="text-align:center" %)
592 [[image:趋势图设置 2.png||height="507" width="866"]]
593
594 **(1) Basic settings**
595
596 1. **Curve NO.: **It is for setting curve number,
597 1. **Curve Name:** It is for setting curve name. The length limitation is 31 bytes.
598 1. **Curve (1~~8):** It is for setting the number of curves. The default is 3.
599 1. **Dots of one curve: **It is for setting dots number of each curve. The default is 1000, but the maximum dots are 10,000 for all the curves.
600
601 **(2) Sample Type**
602
603 1. **Sample method:** There are two types, one is Cycle sample, the other is Trigger cycle sample. If you select Trigger cycle same mode, the trigger sample address is required to edit.
604 1. **Sample unit:** 100ms.
605
606 **(3) Quick Setting**
607
608 1. **Data format: **It is for setting all the curves, select the data format for all curves, and setting the reading addresses for curves. There are as follows.
609
610 (% style="text-align:center" %)
611 [[image:趋势图设置 3.png||class="img-thumbnail"]]
612
613 (% start="2" %)
614 1. **Sample address: **Fill in the start address that read the device data. If the sampl address is consecutive, check "use continuous address". For example, set HDW0 as start address, curve number is 3, then the HDW0 is for Curve 1, HDW1 is for Curve2, HDW2 is for Curve 3.
615
616 **(4) Curve Table:** The sample address you have set would display on it. Click the corresponding box to modify the content.
617
618 (% class="box infomessage" %)
619 (((
620 **✎Note: **Curve names can only consist of Chinese characters, (0~~9), (a~~z), (A~~Z), ('_') (' '), and other non-English characters.
621 )))
622
623 **Trend Chart Demo Download Link**
624
625 [[https:~~/~~/drive.google.com/open?id=1smnaAvSxOWC0WQK4_uvqHXWn4vUZxGJC>>url:https://drive.google.com/open?id=1smnaAvSxOWC0WQK4_uvqHXWn4vUZxGJC]]
626
627 = **History XY plot** =
628
629 Different from TrendChart, uses need to set history XY curve items in project. Please click "Project"-> "History XY Plot" to open the setting screen.
630
631 Recipe function settings will be display in "[[History XY Plot>>path:https://docs.we-con.com.cn/bin/view/PIStudio/08.Basic%20Function/#HHistoryXYplot]]" object.
632
633 (% style="text-align:center" %)
634 [[image:历史XY 2.png||class="img-thumbnail"]]
635
636 (% style="text-align:center" %)
637 [[image:历史XY 3.png||class="img-thumbnail"]]
638
639 **(1) Basic settings**
640
641 1. **Curve NO.: **It is for setting curve number,
642 1. **Curve Name:** It is for setting curve name. The length limitation is 31 bytes.
643 1. **Curve (1~~8):** It is for setting the number of curves. The default is 3.
644 1. **Dots of one curve: **It is for setting dots number of each curve. The default is 1000, but the maximum dots are 10,000 for all the curves.
645
646 **(2) Sample Type**
647
648 1. **Sample method:** There are two types, one is Cycle sample, the other is Trigger cycle sample. If you select Trigger cycle same mode, the trigger sample address is required to edit.
649 1. **Sample unit:** 100ms.
650
651 **(3) Quick Setting**
652
653 1. **Data format: **It is for setting all the curves, select the data format for all curves, and setting the reading addresses for curves. There are as follows.
654
655 (% style="text-align:center" %)
656 [[image:image-20220616145435-1.png]]
657
658 (% start="2" %)
659 1. **Sample address: **Fill in the start address that read the device data. If the sample address is consecutive, check "use continuous address". For example, set HDW0 as start address, curve number is 3, then the HDW0 is for Curve 1, HDW1 is for Curve2, HDW2 is for Curve 3.
660
661 **(4) Curve Table:** The sample address you have set would display on it. Click the corresponding box to modify the content.
662
663 (% class="box infomessage" %)
664 (((
665 **✎Note: **Curve names can only consist of Chinese characters, (0~~9), (a~~z), (A~~Z), ('_') (' '), and other non-English characters.
666 )))
667
668 **Operating Procedure**
669
670 * Click "Project" → "History XY Plot" to open the function selecting windows.
671
672 (% style="text-align:center" %)
673 [[image:8.Basic Function_html_5da6ca44bd28acbe.png||height="144" width="533" class="img-thumbnail"]]
674
675 * Click "Add" button to open "History XY Plot” setting windows.
676
677 (% style="text-align:center" %)
678 [[image:8.Basic Function_html_6345b50ea55168fa.png||height="307" width="554" class="img-thumbnail"]]
679
680 * Setting the function of History XY Plot.
681 * Click "OK" to save the setting.
682
683 **Download Link**
684
685 [[https:~~/~~/drive.google.com/open?id=1t4_HuRmIJJ-B5ryA2kVMadD9FywKhZ4r>>url:https://drive.google.com/open?id=1t4_HuRmIJJ-B5ryA2kVMadD9FywKhZ4r]]
686
687 = (% style="color:inherit; font-family:inherit; font-size:29px" %)**Data record**(%%) =
688
689 The data record function is organized according to the structure below. In a project, there can be multiple record groups, each record group containing multiple channels. Different groups have different sampling times.
690
691 The topology is shown in the following figure.
692
693 (% style="text-align:center" %)
694 [[image:8.Basic Function_html_1b4bd09dafa7e049.png||height="332" width="554" class="img-thumbnail"]]
695
696 The data record stored in SD card is also organized according to the above figure.
697
698 The sample time and save time is consistent in the same record group. There are multiple channels in the group, When the sampling time is up, every channel would collect data to PLC register according to its own address.
699
700 **Sampling interval: **The interval between two consecutive samples was recorded.
701
702 As long as the project uses the data record function and supports the large-capacity storage module, the system will sample data according to the set sampling interval and save data according to the set saving interval.
703
704 For the file storage of data, see the file size configuration during data record configuration.
705
706 ✎**Note: **
707
708 After enable the Cloud and check the box of Upload to Cloud, the communication port settings of the address in the imported Data record configuration must be the same as the communication port settings of the current project, otherwise it cannot be used normally.
709
710 The number of Data records upload to Cloud shall not exceed the limit value, or the sum of the imported Data records and the number of existing alarm records shall not exceed the limit value. the specific limitation as following table:
711
712 (% style="margin-left:auto; margin-right:auto; width:513px" %)
713 |=(% style="width: 70px;" %)Series|=(% style="width: 442px;" %)Number of Data Record upload to Cloud
714 |(% style="width:70px" %)8000-R|(% style="text-align:center; width:442px" %)100
715 |(% style="width:70px" %)9000-R|(% style="text-align:center; width:442px" %)100
716 |(% style="width:70px" %)3000ig|(% style="text-align:center; width:442px" %)50
717 |(% style="width:70px" %)8000ig|(% style="text-align:center; width:442px" %)100
718 |(% style="width:70px" %)MD|(% style="text-align:center; width:442px" %)50
719
720 The record group name can only be composed of Chinese characters, (0~~9), (a~~z), (A~~Z), ('_'), ('') and other non-English characters.
721
722 Channel name cannot incloud following symbols: :" , ", " | ", " < ", " > ", " & ".
723
724 (% class="wikigeneratedid" id="HSettings" %)
725 **Settings**
726
727 (% style="text-align:center" %)
728 [[image:数据记录设置 1.png||height="533" width="848" class="img-thumbnail"]]
729
730 **Operating Procedures**
731
732 1. Click "Project"->"Data record" as below shows.
733 1. Click "Add" button to open "Data record" setting window.
734 1. Enter group name, the default is "GroupName0"
735 1. Select "Trigger function" mode, such as "No trigger".
736 1. Set "Total channels", such as 3.
737 1. Click "Apply" button.
738 1. Set Sample cycle, such as 15.
739 1. Set "Start channel" in "Quick settings", such as 4 0.
740 1. Check group information in "Channel list" as below.
741 1. Click "Save" button to complete settings.
742
743 The figure above display the group of current project. The data record file would stored in "DataLogFile" folder, and the data of every  group would have a data file. The file suffix is in "db" format.
744
745 ✎**Note: **
746
747 * For HMI series 8000 and above, the size of a single file cannot exceed 300M and the total file capacity cannot exceed 1000M.
748 * For HMI series 3000, the size of a single file cannot exceed 4M and the total file capacity cannot exceed 10M.
749 * If the total amount exceeds the range, an alarm will be given during project compilation.
750
751 (% style="text-align:center" %)
752 [[image:数据记录设置 2.png||height="572" width="850" class="img-thumbnail"]]
753
754 **(1) Group name:** Set group name, and he name should be unique.
755
756 **(2) Trigger function:** There are four modes to trigger record.
757
758 1. **No trigger: **Data will be recorded in every sample time.
759 1. **Trigger to record by sample cycle: **Data will be recorded in every same time, when trigger control bit set ON.
760 1. **Trigger to record once and reset: **Data will be recorded when trigger control bit set ON, and the bit will be reset automatically.
761 1. **Trigger to record once: **Data will be recorded when trigger control bit set ON, and the bit need to be reset manually.
762 1. **Trigger address: **It is only valid when the trigger condition is selected. The monitoring cycle for trigger sampling address is 1s.
763
764 **(3) Total channels (1~~100): **Set the numbers of channels. Click "apply" to view the channel lists on the right record channel.
765
766 **(4) Sampling cycle: **If you check "collect control address", the sampling interval is the value of the address. The unit is second. For example, Sample cycle=15s. It means that records data one time every 15s.
767
768 **Timing address:** It sets address to change sample time when HMI is running;
769
770 **(5) Total records:** It sets data record number in one data record file. If the data file size is beyond the current file size. The old data will be deleted, and the new data will replace the old data. Please remember to back up the old data record file.
771
772 **Abnormal value:** It sets a value, when communication fails, data record will record this value;
773
774 **(6) Upload to Cloud**: The data uploaded by Data Record is stored in the Cloud(Only ig series). The maximum number of record is 20.
775
776 **(7) Quick Settings**
777
778 1. **Start Channel:** It sets the continuous addresses for channels.
779 1. **Data Format: **It sets the same data format for channels.
780 1. **Number of Digits:** It sets the digits’ number for channels.
781 1. **Language Settings**: The text in HMI can be in 8 languages, user can set language in here.
782
783 **(8) Channel List**: Besides quick settings, user can set channel name, address, data format, and so on one by one according to real situation.
784
785 **✎Note:**
786
787 * After enabling the Cloud function and checking the upload to the Cloud, the communication port settings of the address in the imported Data record configuration must be the same as the communication settings of the current project, otherwise it cannot be used normally.
788 * The range of upload to the Cloud from Data record configuration must not exceed 50, or the total number of imported Data records and the number of currently existing Data records must not exceed 50. If it exceeds, it will prompt you to reconfigure, should reduce the number.
789 * The channel name can only be composed of English characters, (0~~9), (a~~z), (A~~Z), ('_'), ('').
790 * The channel name does not include these 5 special characters: ", ", "| "," <", "> "," & ".
791 * The data would be overwritten automatically if the capacity exceed the maximum capacity. For 8000/9000 series, the size of single file cannot exceed 300MB, and total capacity of data records cannot exceed 1000MB. For 3000/3000i/3000ie series, the size of single file cannot exceed 4MB, and total capacity of data records cannot exceed 10MB. If the total amount exceeds the range , an error will be prompted when the project is compiled.
792
793 You could click here to jump to object "[[Data Record Display>>https://docs.we-con.com.cn/bin/view/PIStudio/06.Objects/#HDatarecorddisplay]]"
794
795 = **User permission** =
796
797 **Introduction**
798
799 1. User permission is one of expansion function in PI Series HMI; it provides multi-level of permission for control HMI operations.
800 1. User need to set the user and group during designing project. Different groups have different permission levels for accessing. Each user should be added into the specified group; it is possible to add the same user into different groups.
801 1. Operating record: it records user operations information, the records files are saved in HMI flash; its path is [~\~\flash~\~\UserOperationLogs.db].
802 1. When it is on simulator mode, the files are saved in C disk, its path is [C:~\~\WECON\UserMgrFile\UserOperationLogs.db].
803
804 (% class="box infomessage" %)
805 (((
806 ✎**Note: **
807
808 * The user name and password must be unique. Username can be up to 32 characters, and password can be up to 8 characters.
809 * The multi language function of User permission only supported on HMI system version V2.0 or above
810 )))
811
812 == Settings ==
813
814 Open PIStudio software, then operate as the following figure.
815
816 (% style="text-align:center" %)
817 [[image:用户权限 1.png||class="img-thumbnail"]]
818
819 Click on the cell from UserName and Desc, which can support the multi language.
820
821 (% style="text-align:center" %)
822 [[image:UserPermissionMultilan.png]]
823
824 1. Click "User Permission" in "Data Tool" toolbar.
825 1. Edit user name, click "User0" cell under "UserName", and then enter the user name, one project allows maximum 20 users.
826 1. Edit password, click "User0" cell under "PassWord", and then enter the user name.
827 1. Edit description, click "User0" cell under "Desc", and then enter, description is not necessary。
828 1. Check the groups for each user, there are 11 groups beside admin.
829 1. Editing groups' description, but it is not necessary.
830 1. {{id name="OLE_LINK7"/}}{{id name="OLE_LINK6"/}}Click "Save and Exit" button to complete all settings.
831
832 (% class="box infomessage" %)
833 (((
834 ✎**Note:**
835
836 * Only a maximum of one administrator permission is allowed in a profile with one user permission. If you want to use "Funtion address" to modify the user permission, you must log in the administrator account to operate.
837 * When the configured file does not have the administrator account, a new user can be added  through "Funtion address" and set as the administrator.
838 * If you select hidden fucntion when configuring user account, the account would display as "~*~*~*~*~*~*" in the list. You only need to enter the password of the corresponding hidden user to log in.
839 * (((
840 Adding new UserName and Desc on the HMI by special addresses in the current language of the HMI, other languages will also configure the user names and user descriptions to the current language by default, i.e. switching to other languages, the new user names and user descriptions will not change with the language.
841 )))
842 )))
843
844 (((
845
846 )))
847
848 == Object permission configuration ==
849
850 (% style="text-align:center" %)
851 [[image:用户权限 2.png||class="img-thumbnail"]]
852
853 User operation logs support multi languages configuration. Click on the Log Message, the text editor of multi language will be pop up:
854
855 (% style="text-align:center" %)
856 [[image:LogMessagesMultilan.png]]
857
858 **Operation Procedure of Object Permission**
859
860 1. Open the object setting windows;
861 1. Select "Security" windows;
862 1. Check the "User Permission";
863 1. Select "Level" to set permission level;
864 1. Enter "Log Message", it is for operation records, if it was empty, the operation for this object would be not be recorded;
865 1. Select the "Access Denied Setting" mode;
866
867 **Log information description**
868
869 A combination of Chinese characters, numbers, and uppercase and lowercase letters can be entered, and the number does not exceed 63.
870
871 The format of insert variable:{variable address, data format}. e.g., {HDW100,UW2.1}.
872
873 The data format are as follows.
874
875 (% class="table-bordered" %)
876 |=Letter|=Meaning
877 |B|Binary
878 |O|Octonary
879 |U|Unsigned decimal
880 |H|Hexadecimal
881 |b|BCD
882 |F|32-bit float
883 |S|Signed decimal
884 |C|Character
885 |W|Single word
886 |D|Double word
887
888 Examples.
889
890 * Unsigned decimal, BCD, 32-bit float and Signed decimal are as follows.
891
892 {HDW100,UW2.1}:  Indicates the variable address is HDW100. The data format are: unsigned decimal, single word, two integer bits, one decimal place.
893
894 * (((
895 Binary, Octonary and Hexadecimal are as follows.
896 )))
897
898 {HDW100,HD8}: Indicates the variable address is HDW100. The data format are: hexadecimal, double word, eight integer bits.
899
900 * (((
901 Character is as follows.
902 )))
903
904 {HDW100,C32}: Indicates the variable address is HDW100. The data format are: 32 characters.
905
906 When a record is generated, the contents of this variable are replaced by the value of your corresponding address.
907
908 == **Function address** ==
909
910 A user must first log in before performing an operation, and after the login is successful, the user can perform the required operation, and log out after completing the operation, making the operation permission invalid. User login, log out, modification of user password during operation and user management and other functions need to be configured.
911
912 HMI allows managing user accounts on screen. Including adding, deleting and editing the user account. HMI provide built-in screen for [Sign in] and [change password] (screen No. 1006 and 1007).
913
914 Functions and addresses are as follows.
915
916 (% class="table-bordered" %)
917 |=**Function**|=**Address**|=**Object type**|=**Address function**
918 |(% rowspan="3" %)Sign in|HUW1158~~1335|Drop down list|User name
919 |HUW1002|Character input object|Password
920 |HUW1000|Word Switch (Input 1)|OK (sign in)
921 |(% rowspan="5" %)Change password|HUW1158~~1335|Drop down list|User name
922 |HUW1002|Character input object|Old password
923 |HUW1006|Character input object|New password
924 |HUW1010|Character input object|Confirm password
925 |HUW1000|Word Switch (Input 2)|OK(change password)
926 |Sign out|HUW1000|Word Switch (Input 3) |Sign out
927 |(% rowspan="7" %)(((
928 New user ***1**
929 )))|HUW1014|Character input object|User name
930 |HUW1006|Character input object|password
931 |HUW1010|Character input object|Confirm password
932 |HUW1000|Word Switch (Input 4) |OK(add new user)
933 |HUW1336~~1345|Character input object|User description
934 |HUX1347.0|Bit switch|(((
935 ~=1: User hidden
936
937 ~=0: Visible (Defaults)
938 )))
939 |HUW1000|Word Switch (Input 8) |Save(add Hide features)
940 |(% rowspan="2" %)(((
941 Delete user ***2**
942 )))|HUW1158~~1335|Drop down list|User name
943 |HUW1000|Word Switch (Input 5)|OK (delete user)
944 |Delete Profile|HUW1000|Word Switch (Input 9)|OK(delete)
945 |Export Profile|HUW1000|Word Switch (Input 10)|OK(export)
946 |Import profile|HUW1000|Word Switch (Input 11)|OK(import)
947 |Export log file|HUW1000|Word Switch (Input 12)|OK(export)
948 |Delete log file|HUW1000|Word Switch (Input 13)|OK (delete)
949 |Current user name|HUW1349|Character object|32 Word
950 |System state information|HUW1030|Character input object|System state information
951 |(% rowspan="3" %)Permission settings|HUW1014|Character input object|User name
952 |HUW1348|Bit switch|(((
953 Set the user group:
954
955 HUX1348.0 = 1 administrator;
956
957 HUX1348.1 = 1 group 0 permission;
958
959 HUX1348.2 = 1 group 1 permission;
960
961 (Total group 0 - group 10)
962 )))
963 |HUW1000|Word Switch (Input 6)|Add user rights (set according to HUW1348)
964 |User login mode setting|HUW1382|Word Switch/Numeric input object|(((
965 0: Select a user name from the drop-down list
966
967 1: Use character input object (address HUW1014) to log in with a user name
968 )))
969
970 When the user performs a function operation, the operation result is displayed in the HUW1001.
971
972 (% class="table-bordered" %)
973 |=**Value (HUW1001)**|=**Meaning**
974 |1|Insufficient permissions.
975 |2|Username does not exist.
976 |3|Username already exists.
977 |4|Wrong username or password.
978 |5|Login successfully.
979 |6|Passwords are inconsistent in twice time.
980 |7|Password changed successfully.
981 |8|User added successfully.
982 |9|User deleted successfully.
983 |10|Maximum number of users exceeded.
984 |11|Admin user already exists.
985 |12|User permission modified successfully.
986 |13|File imported successfully.
987 |14|File imported failed.
988 |15|File exported successfully.
989 |16|File exported failed.
990 |17|Logout successfully.
991 |18|Profile deleted successfully.
992 |19|Log file deleted successfully.
993 |20|Hide settings modified successfully.
994 |21|Hide settings modified failed.
995 |22|(((
996 Password already occupied, please reset.
997
998 (For both username and password, it can not repetition)
999 )))
1000
1001 (% class="box infomessage" %)
1002 (((
1003 **✎Note:**
1004
1005 * *1: If there is an admin user account, then the new user can no longer add one more admin, that is, one project can only have one administrator account.
1006 * *1: When adding new user, the password could not be duplicated with other users.
1007 * *2: When deleting user, it is forbidden to delete the admin user.
1008 )))
1009
1010 **User Permission Demo Download**
1011
1012 [[https:~~/~~/drive.google.com/open?id=1qOiEDvo_1H1YqpoLDpS77dGaAFm8nrGq>>url:https://drive.google.com/open?id=1qOiEDvo_1H1YqpoLDpS77dGaAFm8nrGq]]
1013
1014 = Message prompt =
1015
1016 A message box is a window used to show some prompts or warnings to users. For example, the application process a task in the process of pop-up message box, suggesting that "U disk has been detected", then the customer can carry out data dump function.
1017
1018 (% style="text-align:center" %)
1019 [[image:消息提示 2.png||class="img-thumbnail"]]
1020
1021 (% style="text-align:center" %)
1022 [[image:8.Basic Function_html_5ce2091d6f7cd732.png||height="515" width="704" class="img-thumbnail"]]
1023
1024 **(1) Message**
1025
1026 It includes system classes (u disk, SD card, and others), chart classes (alarm, data record, recipe, file list), curve classes (Trend Chart, historical XY trend Plot).
1027
1028 **(2) Control**
1029
1030 1. **Current item: **It shows selected message information.
1031 1. **Use trigger address: **When the message is triggered, the trigger address would be set ON.
1032
1033 **For Example:**
1034
1035 Trigger address is 011, during inserting a USB flash disk into HMI, and 011 would be set ON, once HMI recognizes USB flash disk, and display message.
1036
1037 1. **Show message: **Check it to display message when HMI is running. It is checked by default.
1038 1. **Show on web: **Check it to display message when remote access HMI screen, it is unchecked by default.
1039
1040 **(3) Message Content**
1041
1042 Each message has default content, but you could set different content according to the actual situation. And the same message could be displayed in 8 languages.
1043
1044 **(4) Reload Text: **It means discard changes.
1045
1046 **For Example**
1047
1048 User deletes default content or modifies default content, but he wants to give up modification back to original, just click "Reload text".
1049
1050 (% class="box infomessage" %)
1051 (((
1052 **✎Note:**
1053
1054 * If you do not want this prompt during the running of HMI, please uncheck "Show message".
1055 * "Reload text" function would be invalid after clicking "save".
1056 * These 5 special characters are not supported in the header Multi language settings: ",", "|", "<", ">", "&".
1057 )))
1058
1059 == **Appendix** ==
1060
1061 The following pop-up message and code only available for HMI System V1.0, to indicate some system errors:
1062
1063 |=**Message code**|=**Description**|=
1064 |=10001|Failed to delete folder directory|(% rowspan="3" %)First confirm whether the U disk SD card is read-only, or if there are other abnormalities, if it cannot handle by prevouis advises, please provide the back label and background version info.
1065 |=10002|Failed to renaming file
1066 |=10003|Failed to delete file
1067 |=10004|Inconsistent data record tables|The files in the U disk SD card may be from other projects, or the same project but the number of channels in the current project is inconsistent with the record. Please consider verifying it first.
1068 |=10009|(% rowspan="4" %)
1069 LAN monitoring error|(% rowspan="4" %)Data packet loss during the monitoring process may cause this problem. Confirm the software version. The company has updated this issue. Older versions can be updated
1070 |=10010
1071 |=10011
1072 |=10012
1073 |=10015|Failed to initialize project|It is recommended to send the project back to the company for testing
1074 |=10022|U Disk Safe Exit Failed|(% rowspan="5" %)It may be in use, data is exported, or the storage location is U disk or SD card. It is best to trigger again and wait for its successful exit.
1075 |=10023|SD card safe exit failed
1076 |=10024|U disk is busy
1077 |=10025|SD card is busy
1078 |=10026|Cannot recognize the U disk/SD card
1079 |=10027|U disk/SD card cannot be read or written|(% rowspan="3" %)Detect the format of U disk/SD card. Fat32 and ntfs can be recognized normally. If the computer can use it normally and the HMI cannot recognize it, you can only consider formatting the U disk first and then try again.
1080 |=10028|U disk/SD card unknown error
1081 |=10029|U disk/SD card format error
1082 |=11000|(% rowspan="2" %)Alarm record error|(% rowspan="29" %)(((
1083 The version before Sept. 19th considers the flash problem. Please provide the back label and the backstage version info . Make sure to ask the customer to update the version first, and the customer's similar projects must be updated even if there is no problem. After the update, the flash usage should be checked and. If the flash is on a severe status, return to the company replaces the flash with a new one.
1084
1085 When the question is returned, the text behind the prompt is as complete as possible, which can help R&D to confirm the problem faster.
1086 )))
1087 |=11001
1088 |=11002|Failed to delete Alarm record in Flash
1089 |=11006|Failed to save the Alarm records to Flash
1090 |=11007|Alarm record error
1091 |=11009|(% rowspan="2" %)Data record error
1092 |=11010
1093 |=11011|Failed to save Data records to Flash
1094 |=11012|Failed to delete Data record in Flash
1095 |=11013|Data record error
1096 |=11014|Failed to transfer Data record to U disk/SD card
1097 |=11015|Failed to copy Data record to U disk/SD card
1098 |=11016|Data record error
1099 |=11017|User permission related operation error
1100 |=11018|SQL trigger monitoring error
1101 |=11019|Data record error
1102 |=11020|Historical XY graph error
1103 |=11021|Failed to save the Historical XY graph to Flash
1104 |=11022|Failed to delete the Historical XY graph in Flash
1105 |=11023|(% rowspan="5" %)
1106 \\Installment payment error
1107 |=11024
1108 |=11025
1109 |=11026
1110 |=11027
1111 |=11028|(% rowspan="3" %)
1112 Real-time trend graph error
1113 |=11029
1114 |=11030
1115 |=11031|Failed to delete the Real-time trend graph data in the memory
1116 |=11032|Failed to save the Real-time trend graph to Flash
1117 |=11033|(% rowspan="13" %)Recipe error|(% rowspan="13" %)If it is a new project download and there is an error, first confirm the settings of the recipe, if it is abnormal after a period of use, confirm whether it is the flash problem
1118 |=11034
1119 |=11035
1120 |=11036
1121 |=11037
1122 |=11038
1123 |=11039
1124 |=11040
1125 |=11041
1126 |=11042
1127 |=11043
1128 |=11044
1129 |=11045
1130 |=11046|(% rowspan="3" %)User permission related operation error|(% rowspan="3" %)If an error occurs when downloading a new project, first confirm the permission configuration, whether the reserved configuration is checked in the download tool, etc., if it is abnormal after a period of use, confirm whether it is a flash problem
1131 |=11047
1132 |=11048
1133 |=11049|Failed to upload operation log file via Ethernet|
1134 |=11050|(% rowspan="8" %)User permission related operation error|(% rowspan="6" %)If an error occurs when downloading a new project, first confirm the permission configuration, whether the reserved configuration is checked in the download tool, etc., if it is abnormal after a period of use, confirm whether it is a flash problem
1135 |=11051
1136 |=11052
1137 |=11053
1138 |=11054
1139 |=11055
1140 |=11056|(% rowspan="2" %)
1141 |=11057
1142 |=11058|Alarm record error|(% rowspan="2" %)Same as flash problem
1143 |=11062|Installment payment error
1144 |=11063|Alarm Runbar error|Mostly, the Runbar is used without config the alarm settings.
1145 |=11069|(% rowspan="3" %)Historical trend graph error|Same as flash problem
1146 |=11070|
1147 |=11071|
1148 |=11072|SQL trigger monitoring error|
1149 |=11073|Real-time trend graph error|Same as flash problem
1150 |=11075|Error getting database table file|Same as flash problem
1151 |=11076|Error getting database table file|Same as flash problem
1152 |=11077|(% rowspan="3" %)Recipe error|(% rowspan="3" %)If it is a new project download and there is an error, first confirm the settings of the recipe, if it is abnormal after a period of use, confirm whether it is the flash problem
1153 |=11078
1154 |=11079
1155 |=11080|(% rowspan="2" %)User permission related operation error|(% rowspan="2" %)Same as 11046
1156 |=11081
1157 |=11082|Drop-down list error|
1158 |=11083|The message prompt error|
1159 |=11084|(% rowspan="2" %)Alarm record error|Same as flash problem
1160 |=11085|
1161 |=11086|(% rowspan="2" %)Data record error|Same as flash problem
1162 |=11087|
1163 |=11088|(% rowspan="2" %)Alarm record error|Same as flash problem
1164 |=11089|
1165 |=11090|Installment payment error|Same as flash problem
1166 |=11091|The message prompt error|
1167 |=11092|The database table file does not exist|
1168 |=11093|Machine code error|
1169 |=11094|Import csv file error|
1170 |=30001|Flash free space is not enough to store Data records|(% rowspan="3" %)Insufficient space, whether any file is copied into the flash
1171 |=30002|Flash free space is not enough, Historical XY trend graph is not stored
1172 |=30003|Flash free space is not enough to store real-time trend graphs
1173 |=30005|System read only|(% rowspan="2" %)Same as the flash problem, if the flash is damaged, then the system must be updated
1174 |=30006|Insufficient reserved blocks
1175
1176 = **Cloud** =
1177
1178 **Introduction**
1179
1180 You may configure the basic settings of Cloud functions, tags, and User MQTT according to your needs. (If the device supports the Cloud function, you can use the function and configure the tags after checking the box to enable it, or upload the data to the 3rd party server.)
1181
1182 Click "Project"-"[[image:hh_B4H5OuNT87.png||height="29" width="30"]]Cloud" in the upper left corner of the software, as shown in the following figure.
1183
1184 (% style="text-align:center" %)
1185 [[image:云配置1.png||height="494" width="750" class="img-thumbnail"]]
1186
1187 **(1) Enable**
1188
1189 If the HMI supports the Cloud function, check it to enable the Cloud function, and it will collect the real-time data from HMI upload to the Cloud. The number of data collection is limited, and the specific parameters are as follows:
1190
1191 |=Series|=Monitoring Tags|=Alarm Record|=Data Record|=OpenCloud Data
1192 |8000-R (HMI V2.0 System)|300|200|100|1000
1193 |9000-R (HMI V2.0 System)|300|200|100|1000
1194 |3000ig|100|20|50|500
1195 |8000ig|300|200|100|1000
1196 |MD|100|20|50|500
1197
1198 For example:
1199
1200 * In 3000ig's Cloud, the monitoring tags upload to the Cloud in real time is limited to 100.
1201 * For 3000ig's Alarm, the Alarm records of word alarms and bit alarms upload to Cloud is limited to 20. (See [["Alarm">>http://docs.we-con.com.cn/wiki/pistudio/view/Helps/08.Basic%20Function/#HAlarm]] for details).
1202 * For 3000ig's Data record, the Data records upload to Cloud is limited to 50. (For details, please refer to [["Data Record">>http://docs.we-con.com.cn/wiki/pistudio/view/Helps/08.Basic%20Function/#HDataRecord]]).
1203
1204 **(2) Server Selection**
1205
1206 **Server**: China, ASEAN, and Europe.
1207
1208 **Password**:
1209
1210 1. If the HMI is not bound, this access password will be updated and downloaded into the HMI screen simultaneously.
1211 1. If the HMI is bound, this access password in the project cannot effectively change the binding password of the device, and it can only be changed through V-NET.
1212
1213 **(3) Upload Selection**: 
1214
1215 To upload the data collected by HMI to the cloud or a to the third-party server, only one upload method can be selected.
1216
1217 1. **to Cloud**: All the configured tags, data records, and alarm records would be pushed to V-NET.
1218 1. **to User MQTT**: All the configured tags, data records, and alarm records would be pushed to to the third-party server, and the relevant Lua function calls please refer to "[[Cloud interface>>http://docs.we-con.com.cn/wiki/pistudio/view/Helps/10.Lua/#HCloudInterface]]".
1219
1220 After the "to User MQTT" is checked. The tags, data records, and alarms cannot be viewed on V-NET, but the device can be bound to V-NET and remote monitoring the device screen normally.
1221
1222 **4) Low Data Mode setting**
1223
1224 1. When you check the "low Data Mod" by default on new tags, the newly added tags will be enabled in Low Data Mode by default.
1225 1. The longer the refresh interval, the slower the data upload, and the more traffic data will be saved. This function is only used for the control of tags.
1226
1227 = MQTT[[image:2.png]] =
1228
1229 (% class="wikigeneratedid" %)
1230 Configurable type MQTT. Users can publish message to the MQTT server or subscribe topics from the MQTT server.
1231
1232 **MQTT Configuration (Common Settings/AWS IOT Settings/ALi Settings/Huawei Settings)**
1233
1234 This chapter explains how to use configurable type MQTT. Users can publish message to the MQTT server or subscribe topics from the MQTT server.
1235
1236 Click “MQTT” in “Data Tool" in the upper side bar of the software.After checking "Enable", the settings window will pop up and select different cloud services for MQTT configuration, as shown in the following figure:
1237
1238 (% style="text-align:center" %)
1239 [[image:2.jpg]]
1240
1241 **MQTT Server Settings (Common)**
1242
1243 **General**
1244
1245 (% style="text-align:center" %)
1246 [[image:3.jpg]]
1247
1248 **Description:** Enter a description or comment about the server. Maximum input length: 255 characters, cannot be empty.
1249
1250 **Cloud Service**: (Select Common)
1251
1252 ① Common (Common Platform): General MQTT publish-subscribe topic mode.
1253
1254 ② AWS IoT (Amazon): Using "AWS IoT" as the Broker, using Thing to transfer data and support Shadow function.
1255
1256 ③ ALi (Alibaba Cloud): Using "Alibaba Cloud" as Broker.
1257
1258 ④ Huawei (Huawei Cloud): Using "Huawei Cloud" as Broker.
1259
1260 **Communication protocol**: MQTTv3.1, v3.1.1 and v5 are supported.
1261
1262 **Custom Client ID length:** User can customize the length of the Client ID (optional), length range: 20 ~~128.
1263
1264 **Custom username/password length:** Customize the length of user name/password length (optional), length range: 16 ~~ 256.
1265
1266 **IP:** Set the MQTT server IP to subscribe message.
1267
1268 **Use domain name:** Support using domain name to the specify server.
1269
1270 **Domain name:** Set the domain name of the MQTT server that subscribe message. Maximum input length: 128 characters, cannot be empty, supports letters, numbers, "-", “.”. The symbol cannot be placed at the first character or last character of name.
1271
1272 **Port number:** Set the MQTT server port to subscribe message. Range: 0~~65535, cannot be empty.
1273
1274 **Client ID:** Login name. Variables can be used as login names. For example: Enter% 0 and the Client ID is the device name. (This can be set in the HMI background. If not, the default is HMI model.) **(✎Note: A Client ID can only be used for one device.)** When there is no custom Client ID length, the maximum configurable length of Client ID is 40 characters.
1275
1276 **Verification:** Choose whether to connect to the MQTT server using [User Name] and [Password].
1277
1278 **User Name:** The [User Name] connects to the MQTT server. When there is no custom username/password length, the maximum configurable length of username is 32 characters.
1279
1280 **Password:** The password for connect to the MQTT server. When there is no custom username/password length, the maximum configurable length of password is 32 characters.
1281
1282 **Timestamp:** LOCAL: Using the HMI time as the timestamp. UTC Time: Using UTC+0.
1283
1284 **Clean message cache when normal connected:** If option is enabled, when the device is disconnected, the message to be published will be cached in the cache area, and then will be published when the device is online again.
1285
1286
1287 **Address**
1288
1289 (% style="text-align:center" %)
1290 [[image:4.jpg]]
1291
1292 **Status address: (Total length: 2 words)**
1293
1294 HDWn: Display [MQTT] connection status.
1295
1296 |Value|Description
1297 |0|Disable MQTT server connection
1298 |1|Disconnected or connecting
1299 |2|Successfully connected the MQTT server
1300
1301 HDWn+1: Error prompt
1302
1303 |Value|Description
1304 |0|No error
1305 |-1|General error code of wrong operation
1306 |-3|Disconnected
1307 |-4|Exceed client data concurrency
1308 |-5|Invalid UTF-8 string
1309 |-6|Null pointer parameter
1310 |-7|Topic name is truncated
1311 |-8|Wrong protocol structure body
1312 |-9|Bad QoS, acceptable range is (0, 1, 2)
1313 |-10|Try to use a non-SSL version library for SSL connection
1314 |-11|Wrong MQTT version
1315 |-14|Wrong protocol type
1316 |-15|Option is not suitable for the current request version
1317 |-16|Call MQTT version that is not applicable to request.
1318 |-17|0 length connects topics
1319
1320 **Buffer usage address: (Total length: 1 word)**
1321
1322 Unsuccessful published message will be stored in memory as cache, with a maximum 100,000 messages or 2M. Value display as unit %, and it is carried unconditionally.
1323
1324 HDWn: Display buffer usage.
1325
1326 **Control address: (Total length: 123 words; If the domain name is not enabled, it will take up 59 words)**
1327
1328 HDWn: Control the execution or stop of [MQTT Server].
1329
1330 |Value|Description
1331 |0|Ready
1332 |1|Start
1333 |2|Stop
1334 |3|Update
1335
1336 HDWn+1: IP address of the MQTT server. (✎**Note: This address is only valid when IP is used.**)
1337
1338 HDWn+5: Port number of the MQTT server.
1339
1340 HDWn+6: Client ID of the MQTT server connection.
1341
1342 HDWn+26: Authentication is enabled or not. = 0, disabled; = 1, enabled.
1343
1344 HDWn+27: User name of MQTT server connection.
1345
1346 HDWn+43: Password of MQTT server connection.
1347
1348 HDWn+59: Domain name of the MQTT server. (**✎Note: This address is only valid if the domain name is used.**)
1349
1350
1351 **TLS/SSL Settings**
1352
1353 (% style="text-align:center" %)
1354 [[image:5.jpg]]
1355
1356 **Enable:** Enable TLS/SSL encryption. User can manually select encrypted versions of TLS 1.0, TLS 1.1, or TLS 1.2.
1357
1358 **Server authentication:**
1359
1360 Enable: Verify whether the server certificate has been certified by a Certificate Authority Certificate (CA). Server certificates are sent by the server when connection is established.
1361
1362 Import: Select CA certificate to import.
1363
1364 More: After the import is successful, clicking it will display the certificate details.
1365
1366 Reset: Reset the import information.
1367
1368 The server name must match the certificate information: Verify whether the server name or IP matches with the information in the certificate. Domain name and IP are recorded in the Subject Alternative Name from certificate.
1369
1370 **Client authentication:** The private key and client certificate are the data required for the server to authenticate the client end.
1371
1372 Certificate:
1373
1374 Import: Select certificate to import.
1375
1376 More: After the import is successful, clicking it will display the certificate details.
1377
1378 Reset: Reset the import information.
1379
1380 Key:
1381
1382 Import: Select the key to import.
1383
1384 More: After the import is successful, clicking it will display key details.
1385
1386 Reset: Reset the import information.
1387
1388
1389 **System topics**
1390
1391 (% style="text-align:center" %)
1392 [[image:6.jpg]]
1393
1394 **Birth Topic: **The message that HMI will publish when it is connected to server.
1395
1396 **Close Topic:** The last send message before HMI actively disconnects from server connection
1397
1398 **Last Will: **Subscription of Last Will receive this message when an abnormal disconnection occurs between HMI and the server. HMI synchronizes the Last Will message to the server when it initially establishes the connection.
1399
1400 **Topic List:** A list of topics in the HMI that is sent to the server after the HMI is connected to the server.
1401
1402 **Topic:** The actual topic name of the system topic. Maximum input length: 255 characters, cannot be empty.
1403
1404 **Retain message: **The MQTT server keeps the latest message.
1405
1406 **QoS: **MQTT provides three levels of reliability called service quality. The service quality of message transmission determines whether the message is guaranteed to be delivered.
1407
1408 QoS 0: Messages are sent only once, and delivery is not guaranteed.
1409
1410 QoS 1: Message must be delivered at least once.
1411
1412 QoS 2: Message is delivered just once.
1413
1414 **Content format:**
1415
1416 **JSON (Default):** Use default values, default values for each system topic (**The bold is represented as the current actual value**)
1417
1418 **Birth Topic:** 
1419 {
1420 "d": {
1421 "connected": true
1422 },
1423 "ts": " **Current time**"
1424 }**Close Topic: **
1425 {
1426 "d": {
1427 "connected": false
1428 },
1429 "ts": " **Current time**"
1430 }**Last Will: **
1431 {
1432 "d": {
1433 "connected": false
1434 }
1435 }**Topic list:** 
1436 {
1437 "d": {
1438 "topics": [
1439 {
1440 "compression": "
1441
1442
1443 ",
1444
1445 "nickname": "**Subject name**",
1446
1447 "topic": "**Theme**"
1448 },
1449 {
1450 "compression": "**Compression type**",
1451
1452 "nickname": "**Subject nam**e",
1453
1454 "topic": "**Theme**"
1455 }
1456 ]
1457 },
1458 "ts": "**Current time**"
1459 }
1460
1461 Messages within topics vary depending on the actual topic settings. The above is an example of two topics.
1462
1463 **JSON (Customized):** Use custom content.
1464
1465 **Choose the connection network card**
1466
1467 (% style="text-align:center" %)
1468 [[image:7.jpg]]
1469
1470 **Default:** According to the priority order of network adapters set in the HMI background to connect server.
1471
1472 **Ethernet 1: **Specify Ethernet 1 network card to connect to the server. When the system does not find Ethernet 1, connect to the server by “Default”. When system finds Ethernet 1 and binds it to connect to the server.
1473
1474 **Ethernet 2: **Specify Ethernet 2 network card to connect to the server. When the system does not find Ethernet 2, connect to the server by “Default”. When system finds Ethernet 2 and binds it to connect to the server.
1475
1476 **4G:** Specify 4G network card to connect to server. When the system does not find 4G, connect to the server by “Default”. When system finds 4G and binds it to connect to the server.
1477
1478 **Wi-Fi:** Specify Wi-Fi network card to connect to server. When the system does not find Wi-Fi, connect to the server by “Default”. When the system finds Wi-Fi and bind it to connect to the server.
1479
1480
1481 **MQTT Topic**
1482
1483 **MQTT topic publish**
1484
1485 Select [Topic publish], click [Add], enter [Add MQTT topic publish object], and set the general settings and address. The maximum number of MQTT published topics is 255.
1486
1487 (% style="text-align:center" %)
1488 [[image:8.jpg]]
1489
1490 **General properties**
1491
1492 (% style="text-align:center" %)
1493 [[image:9.jpg]]
1494
1495 **Alias:** Set the project name of the MQTT topic. Maximum input length: 255 characters, cannot be empty.
1496
1497 **Topic:** The topic received by the MQTT server when sending message. Maximum input length: 255 characters, cannot be empty.
1498
1499 Sending mode: (AUTO/TRIGGER)
1500
1501 **① AUTO **value change mode: When any value changes, MQTT message is published.
1502
1503 a. Minimum time interval between messages: The minimum time interval can be set between messages to avoid over-publishing MQTT messages. When the interval of value change is less than the minimum time interval between messages, the message will be put in the cache. The MQTT message will not be published until the minimum interval between messages is met. Range: 0~~3600000ms.
1504
1505 b. Periodic mode: Publish MQTT message by the fixed time. Time interval: Set the time interval for periodic publishing. The range is 1~~3600s.
1506
1507 **② TRIGGER**
1508
1509 When the specified bit is triggered, the MQTT message is published. When HDX0.0 changes from OFF to ON, an MQTT message is published, and HDX0.0 is automatically set to OFF after publishing.
1510
1511 **Compression type:** Message is compressed before it is transmitted. The compressed message needs to be decompressed before the MQTT client reads it. Zilb, Gzip, or Deflate algorithm can be chosen to compress or decompress the message.
1512
1513 **QoS:** MQTT provides three levels of reliability called service quality. The service quality of message transmission determines whether the message is guaranteed to be delivered.
1514
1515 0: Messages are sent only once, and delivery is not guaranteed.
1516
1517 1: Message must be delivered at least once.
1518
1519 2: Message is delivered just once.
1520
1521 **Retain message: **When checked, the MQTT server keeps the latest message.
1522
1523 **Content format:**
1524
1525 Raw data: Data composed of BYTE data.
1526
1527 JSON (General): Put all data in JSON format of member "d".
1528
1529 JSON (Advanced): JSON format of flexibly customizable nested structure.
1530
1531 **Include timestamps:** This function is only supported when the content format uses [JSON (General)], and whether to include the timestamp can be decided manually.
1532
1533 **Use the top "d" symbol in the message format:**
1534
1535 This function is only supported when the content format uses [JSON (General)]. When checked, the message format is as follows:
1536
1537 {
1538
1539 "d": {
1540
1541 "addressName1": ...,
1542
1543 "addressName2":...
1544
1545 },
1546
1547 "ts":...
1548
1549 }
1550
1551 When unchecked, the message format is as follows:
1552
1553 {
1554
1555 "addressName1": ...,
1556
1557 "addressName2":...,
1558
1559 "ts":...
1560
1561 }
1562
1563 As shown above, when unchecked, ts and address names are both key at the same level. Therefore, avoid taking the address name as ts.
1564
1565 **Address setting**
1566
1567 ①Address settings when content formats use [Raw Data] and [JSON (General)].
1568
1569 (% style="text-align:center" %)
1570 [[image:10.jpg]]
1571
1572 **Add:** Establish the address source of the topic. The length of each address can be set separately.
1573
1574 **Delete:** Delete the address.
1575
1576 **Settings:** Modify the address and name.
1577
1578 (% style="text-align:center" %)
1579 [[image:11.jpg]]
1580
1581 **Included in all message sent**
1582
1583 Check the options: This topic will include this address every time it publishes a message.
1584
1585 Uncheck the options: When the sending mode is value, message is published only when the value of the address changes.
1586
1587 **Remove JSON array brackets' ['and'] ':**
1588
1589 Check the options: Remove the array symbol name when using non-array bits or characters.
1590
1591 **✎Note: A topic can be configured up to 255 nodes. The name length of a node can be configured up to a maximum of 255 characters and cannot be empty.**
1592
1593 ② Address setting when the content format uses [JSON (Advanced)]. [JSON (Advanced)] supports nested structure, which can use components, arrays and other forms. Timestamps and data names can also be customized, which is a more flexible design method.
1594
1595 (% style="text-align:center" %)
1596 [[image:12.jpg]]
1597
1598 The above figure is an example. If setting like above figure, the subscription side will receive the MQTT message like following format.
1599
1600 {
1601 "object": {
1602 "value": "teststring",
1603 "value (1)": 123,
1604 "value (2)": true,
1605 "value (3)": "",
1606 "value (4)": 0,
1607 "value (5)": true
1608 },
1609 "array": [
1610 10,
1611 20,
1612 30
1613 ],
1614 "value (6)": " 2023-04-27T03: 53: 20.156271 "
1615 }
1616
1617 **New component:** Add a new data component. Components can have multiple data formats; each data format has its own Name and Value. The data of the component is included in braces {}.
1618
1619 **New value:** Add a new value, string, or timestamp. When it is a value or a string, it can be fixed value or read data from a specified address.
1620
1621 **Delete:** Delete the selected field.
1622
1623 **Settings:** Modify the selected field. If the selected fields are components and arrays, only the names can be modified. But components and arrays include values that can modify parameters.
1624
1625 **Template:** Paste the JSON text here, and the system will automatically arrange the style to conform to this JSON format, saving the time of self-definition.
1626
1627 **Preview:** Preview JSON data in an easy-to-read format.
1628
1629 **✎Note: A Topic can be up to 512 nodes (including payload), and a node name can be configured to be up to 255 characters length.**
1630
1631 **Security settings**
1632
1633 The topic is published only when the register status matches the setting. As shown in the following figure, this topic will not be published until the address HDX0.0 is set to ON.
1634
1635 (% style="text-align:center" %)
1636 [[image:13.jpg]]
1637
1638 **MQTT topic subscription**
1639
1640 Select [Topic subscription] and click [Add] to enter general property settings and address settings. The maximum number of MQTT subscription topics is 255.
1641
1642 (% style="text-align:center" %)
1643 [[image:14.jpg]]
1644
1645 **General properties**
1646
1647 (% style="text-align:center" %)
1648 [[image:15.jpg]]
1649
1650 **Alias:** Set the project name of the MQTT topic. Maximum input length: 255 characters, cannot be empty.
1651
1652 **Topic:** Topics subscribed from the MQTT server. Maximum input length: 255 characters, cannot be empty.
1653
1654 **Compression type:** The transport compression type of a subscription topic must be the same as that of a publication topic.
1655
1656 **QoS:** MQTT provides three levels of reliability called service quality. The service quality of message transmission determines whether the message is guaranteed to be delivered.
1657
1658 0: Messages are sent only once, and delivery is not guaranteed.
1659
1660 1: Message must be delivered at least once.
1661
1662 2: Message is delivered just once.
1663
1664 **Content format:**
1665
1666 Raw data: There is no original data in a specific format.
1667
1668 JSON (General): JSON format of single-layer structure.
1669
1670 JSON (Advanced): JSON format of flexibly customizable nested structure.
1671
1672 **Verify timestamp:** The user can decide whether to verify the timestamp or not. When checked, it indicates that the received data timestamp must be strictly incremented before it can be updated. Otherwise, it will be judged as outdated data and not updated.
1673
1674 **Use the top "d" symbol in the message format:**
1675
1676 This function is only supported when the content format uses [JSON (General)]. When checked, the message format is as follows:
1677
1678 {
1679
1680 "d": {
1681
1682 "addressName1": ...,
1683
1684 "addressName2":...
1685
1686 },
1687
1688 "ts":...
1689
1690 }
1691
1692 When unchecked, the message format is as follows:
1693
1694 {
1695
1696 "addressName1": ..., "addressName2":...,
1697
1698 "ts":...
1699
1700 }
1701
1702 Please select the appropriate settings according to the data source.
1703
1704 **Address settings**
1705
1706 ①Address settings when content formats use [Raw Data] and [JSON (General)].
1707
1708 (% style="text-align:center" %)
1709 [[image:16.jpg]]
1710
1711 **Add:** Establish the address where the data is stored after the topic is subscribed, and the length of each address can be set separately.
1712
1713 **Delete:** Delete the address.
1714
1715 **Settings:** Modify the address and name.
1716
1717 (% style="text-align:center" %)
1718 [[image:17.jpg]]
1719
1720 **Remove JSON array brackets' ['and'] ':**
1721
1722 When using non-array bits or characters, array symbol can manually be removed.
1723
1724 **✎Note: A topic can be configured up to 255 nodes. The name length of a node can be configured up to a maximum of 255 characters and cannot be empty.**
1725
1726 ② Address setting when the content format uses [JSON (Advanced)]. [JSON (Advanced)] supports nested structure, which can use components, arrays and other forms. Timestamps and data names can also be customized, which is a more flexible design method.
1727
1728 (% style="text-align:center" %)
1729 [[image:18.jpg]]
1730
1731 **New component:** Add a new data component. There can be multiple data formats in a component, each with a name and a value. The data of the component is included in braces {}.
1732
1733 **New Array:** Add a new data array. Arrays can have multiple data formats, but only one name. The data of the component is included in brackets [].
1734
1735 **New value:** Add a new value, string, or timestamp. When it is a value or a string, it can be fixed value or read data from a specified address.
1736
1737 **Delete:** Delete the selected field.
1738
1739 **Settings:** Modify the selected field. If the selected fields are components and arrays, only the names can be modified. But components and arrays include values that can modify parameters.
1740
1741 **Template:** Paste the JSON text here, and the system will automatically arrange the style to conform to this JSON format, saving the time of self-definition.
1742
1743 **Preview:** Preview JSON data in an easy-to-read format.
1744
1745 **✎Note: A Topic can be up to 512 nodes (including payload), and a node name can be configured to be up to 255 characters length.**
1746
1747 **(3) Security settings**
1748
1749 The topic is published only when the register status matches the setting. As shown in the following figure, this topic will not be published until the address HDX0.0 is set to ON.
1750
1751 (% style="text-align:center" %)
1752 [[image:19.jpg]]
1753
1754 **MQTT Server Settings (AWS IOT)**
1755
1756 **General**
1757
1758 (% style="text-align:center" %)
1759 [[image:20.jpg]]
1760
1761 **Description:** Enter a description or comment about the server. Maximum input length: 255 characters, cannot be empty.
1762
1763 **Cloud service description**: (Select AWS IOT)
1764
1765 ① Common (Common Platform): General MQTT publish-subscribe topic mode.
1766
1767 ② AWS IoT (Amazon): Using "AWS IoT" as the Broker, using Thing to transfer data and support Shadow function.
1768
1769 ③ ALi (Alibaba Cloud): Using "Alibaba Cloud" as Broker.
1770
1771 ④ Huawei (Huawei Cloud): Using "Huawei Cloud" as Broker.
1772
1773 **Communication protocol**: MQTT v3.1.1 is supported.
1774
1775 **Domain name:** Set the domain name of the MQTT server that receives message. (Obtained from the AWS IOT platform) Maximum input length: 128 characters, cannot be empty, supports letters, numbers, "-", “.”. The symbol cannot be placed at the first character or last character of name.
1776
1777 **Port number:** Set the MQTT server port to receive message. Range: 0~~65535, cannot be empty. (AWS IOT platform is generally 8883).
1778
1779 **Client ID:** Login name. Variables can be used as login names. For example: Enter %0 and the Client ID is the device name (This can be set in the HMI background. If not, the default is HMI model). **(✎Note: A Client ID can only be used on one device.)** The maximum configurable length is 40 characters.
1780
1781 **Timestamp:** LOCAL: Using the HMI time as the timestamp. UTC Time: Using UTC+0.
1782
1783
1784 **Address**
1785
1786 (% style="text-align:center" %)
1787 [[image:21.jpg]]
1788
1789 **Status address: (Total length: 2 words)**
1790
1791 HDWn: Display [MQTT] connection status.
1792
1793 |Value|Description
1794 |0|Disable MQTT server connection
1795 |1|Disconnected or connecting
1796 |2|Successfully connected the MQTT server
1797
1798 HDWn+1: Error prompt
1799
1800 |Value|Description
1801 |0|No error
1802 |-1|General error code of wrong operation
1803 |-3|Disconnected
1804 |-4|Exceed client data concurrency
1805 |-5|Invalid UTF-8 string
1806 |-6|Null pointer parameter
1807 |-7|Topic name is truncated
1808 |-8|Wrong protocol structure body
1809 |-9|Wrong QOS.  (0, 1, 2) is acceptable.
1810 |-10|Attempt to use a non-SSL library for SSL connection
1811 |-11|Wrong MQTT version
1812 |-14|Wrong protocol type
1813 |-15|Option is not suitable for the current request version
1814 |-16|Call MQTT version that is not applicable to request.
1815 |-17|0 length topic connection
1816
1817 **Buffer usage address:** Not available.
1818
1819 **Control address: (Total length: 90 words)**
1820
1821 HDWn: Control the execution or stop of [MQTT Server].
1822
1823 |Value|Description
1824 |0|Ready
1825 |1|Start
1826 |2|Stop
1827 |3|Update
1828
1829 HDWn+1: Reserved for use.
1830
1831 HDWn+5: Port number of the AWS IOT connection.
1832
1833 HDWn+6: Client ID of the AWS IOT connection.
1834
1835 HDWn+26: Domain name of the AWS IOT connection. 
1836
1837 **TLS/SSL Settings**
1838
1839 (% style="text-align:center" %)
1840 [[image:22.jpg]]
1841
1842 **Enable:**
1843
1844 Enabled by default. The default is TLS V1.2.
1845
1846 **Server authentication:**
1847
1848 Enabled by default: Verify whether the server certificate has been certified by a Certificate Authority Certificate (CA). Server certificates are sent by the server when connection is established.
1849
1850 Import: Select CA certificate to import.
1851
1852 More: After the import is successful, clicking it will display the certificate details.
1853
1854 Reset: Reset the import information.
1855
1856 The server name must be matched with the certificate information to verify whether the server name or IP matches the records in the certificate. Domain name and IP are recorded in the Subject Alternative Name in the certificate.
1857
1858 **(3) Client authentication:** The private key and client certificate are the data required for the server to authenticate the client end.
1859
1860 Certificate:
1861
1862 Import: Select certificate to import.
1863
1864 More: After the import is successful, clicking it will display the certificate details.
1865
1866 Reset: Reset the import information.
1867
1868 Key:
1869
1870 Import: Select the key to import.
1871
1872 More: After the import is successful, clicking it will display key details.
1873
1874 Reset: Reset the import information.
1875
1876
1877 **Device setting**
1878
1879 Select [Add] to enter [General property settings and address settings]. To delete a device, select the device and click Delete.
1880
1881 (% style="text-align:center" %)
1882 [[image:23.jpg]]
1883
1884 **General**
1885
1886 (% style="text-align:center" %)
1887 [[image:24.jpg]]
1888
1889 **Device name:** It is consistent with the item name on AWS IOT. Maximum input length: 128 characters, cannot be empty, supports letters, numbers, "-", "_".
1890
1891 **Description:** For distinguish purpose. Maximum input length: 255 characters.
1892
1893 **Minimum time interval between messages:** The minimum time interval can be set between messages to avoid over-publishing MQTT messages. That is, when the interval of value change is less than the minimum time interval between messages, the message will be put in the cache, and the MQTT message will not be released until the minimum time interval between messages is met. Range: 0~~3600000ms.
1894
1895 **QoS:** MQTT provides three levels of reliability called service quality. The service quality of message transmission determines whether the message is guaranteed to be delivered.
1896
1897 0: Messages are sent only once, and delivery is not guaranteed.
1898
1899 1: Message must be delivered at least once.
1900
1901 2: Message is delivered just once.
1902
1903 **Content format:** Not configurable. All data is in JSON format.
1904
1905 **Include timestamps:** Whether to include the timestamp can be decided manually.
1906
1907 **Use the top "d" symbol in the message format:**
1908
1909 This function is only supported when the content format uses [JSON (General)]. When checked, the message format is as follows:
1910
1911 {
1912
1913 "d": {
1914
1915 "addressName1": ...,
1916
1917 "addressName2":...
1918
1919 },
1920
1921 "ts":...
1922
1923 }
1924
1925 When unchecked, the message format is as follows:
1926
1927 {
1928
1929 "addressName1": ...,
1930
1931 "addressName2":...,
1932
1933 "ts":...
1934
1935 }
1936
1937 As shown above, when unchecked, ts and address names are both key at the same level. Therefore, avoid taking the address name as ts.
1938
1939 **Address**
1940
1941 (% style="text-align:center" %)
1942 [[image:25.jpg]]
1943
1944 **Add:** Establish the address source of the topic. The length of each address can be set separately.
1945
1946 **Delete:** Delete the address.
1947
1948 **Settings:** Modify the address and name.
1949
1950 (% style="text-align:center" %)
1951 [[image:26.jpg]]
1952
1953 **Advanced Mode:**
1954
1955 Check the options: Check to configure four “Settings/Status".
1956
1957 Uncheck the options: Check to configure two "Settings/Status".
1958
1959 **Name:** Correspond to the key value in JSON.
1960
1961 **Type:** “Bit" and “Word” are optional. “Word” configuration can choose system of numeration.
1962
1963 **Length:**
1964
1965 Length 1: General JSON format.
1966
1967 Length > 1: Enable the format of JSON array. The values of continuous address with the configuration address as the first address as the elements of the array. This length is valid to the selected "settings/status”. (For example, the length is set to 3, and 4 "settings/states" are checked, so the length of these 4 are all 3). Range: 1-255.
1968
1969 For example, configure as the following figure:
1970
1971 (% style="text-align:center" %)
1972 [[image:27.jpg]]
1973
1974 Then HDW0, HDW2 and HDW4 will be read and published to the reported key; HDW10, HDW12, HDW14 will be read and published to the desired key. For example, if HDW0=1, HDW2=2, HDW4=3, HDW10=4, HDW12=5, and HDW14=6, the subscribed message format is as follows.
1975
1976 {
1977
1978 "state": {
1979
1980 "desired": {
1981
1982 "welcome": [1, 2, 3]
1983
1984 },
1985
1986 "reported": {
1987
1988 "welcome": [4, 5, 6]
1989
1990 }
1991
1992 }
1993
1994 }
1995
1996 **Status (Device address~-~->AWS IOT "reported"):** Pass a value from the Device address to the AWS IOT “reported” in one direction, which is equivalent to publishing to "reported".
1997
1998 **Setting (Device address->AWS IOT "desired"):** Pass a value from the Device address to the AWS IOT “desired” in one direction, which is equivalent to publishing to “desired".
1999
2000 **Status (AWS IOT "reported"->Device address):** Pass a value from AWS IOT "reported" to Device address in one direction, which is equivalent to subscribing to "reported".
2001
2002 **Settings (AWS IOT "desired"->Device address):** Pass a value from the AWS IOT "desired" to the Device address in one direction, which is equivalent to subscribing to "desired".
2003
2004 **Remove JSON array brackets' ['and'] ':** Check to remove array symbols when using non-array bits or characters. (Configurable when length is 1).
2005
2006 **MQTT Server Settings (ALi)**
2007
2008 **General**
2009
2010 (% style="text-align:center" %)
2011 [[image:28.jpg]]
2012
2013 **Description:** Enter a description or comment about the server. Maximum input length: 255 characters, cannot be empty.
2014
2015 **Cloud service description**: (Select Ali)
2016
2017 ① Common (Common Platform): General MQTT publish-subscribe topic mode.
2018
2019 ② AWS IoT (Amazon): Using "AWS IoT" as the Broker, using Thing to transfer data and support Shadow function.
2020
2021 ③ ALi (Alibaba Cloud): Using "Alibaba Cloud" as Broker.
2022
2023 ④ Huawei (Huawei Cloud): Using "Huawei Cloud" as Broker.
2024
2025 **Communication protocol**: MQTTv3.1, v3.1.1 and v5 are supported.
2026
2027 **Domain name:** Set the domain name of the MQTT server that receives message. Maximum input length: 128 characters, cannot be empty, supports letters, numbers, "-", “.”. The symbol cannot be placed at the first character or last character of name.
2028
2029 **Port number:** Set the MQTT server port to subscribe message. Range: 0~~65535, cannot be empty.
2030
2031 **Client ID:** Login name. Variables can be used as login names. For example: Enter %0 and the Client ID is the device name (This can be set in the HMI background. If not, the default is HMI model). (Note: A Client ID can only be used for one device.) When there is no custom Client ID length, the maximum configurable length of a Client ID is 64 characters.
2032
2033 **ProductId:** The key of the product to which the device belongs, that is, the globally unique identifier issued by the IoT platform for the product. (Obtained from Alibaba Cloud Platform) Maximum input length: 128 characters.
2034
2035 **DeviceId:** Unique identifier of the device within the product. DeviceName is combined with ProductKey of the product to which the device belongs as the device identification, which is used for connection authentication and communication with the IoT platform. (Obtained from Alibaba Cloud Platform) Maximum input length: 64 characters.
2036
2037 **DeviceSecret:** The device key issued by the IoT platform for devices is used for authentication and encryption. It needs to be used in pairs with DeviceName. (Obtained from Alibaba Cloud Platform) Maximum input length: 128 characters.
2038
2039 **Encryption algorithm:** Alibaba Cloud's signature algorithm type supports hmacmd5 and hmacsha1.
2040
2041 **Timestamp:** LOCAL: Using the HMI time as the timestamp. UTC Time: Use UTC+0 time.
2042
2043 **Clean message cache when normal connected:** If option is enabled, when the device is disconnected, the message to be published will be cached in the cache area, and then will be published when the device is online again.
2044
2045
2046 **Address**
2047
2048 (% style="text-align:center" %)
2049 [[image:29.jpg]]
2050
2051 **Status address: (Total length: 2 words)**
2052
2053 HDWn: Display [MQTT] connection status.
2054
2055 |Value|Description
2056 |0|Disable MQTT server connection
2057 |1|Disconnected or connecting
2058 |2|Successfully connected the MQTT server
2059
2060 HDWn+1: Error prompt
2061
2062 |Value|Description
2063 |0|No error
2064 |-1|General error code of wrong operation
2065 |-3|Disconnected
2066 |-4|Exceed client data concurrency
2067 |-5|Invalid UTF-8 string
2068 |-6|Null pointer parameter
2069 |-7|Topic name is truncated
2070 |-8|Wrong protocol structure body
2071 |-9|Wrong QOS.  (0, 1, 2) is acceptable.
2072 |-10|Attempt to use a non-SSL library for SSL connection
2073 |-11|Wrong MQTT version
2074 |-14|Wrong protocol type
2075 |-15|Option is not suitable for the current request version
2076 |-16|Call MQTT version that is not applicable to request.
2077 |-17|0 length topic connection
2078
2079 **Buffer usage address: (Total length: 1 word)**
2080
2081 Unsuccessful published message will be stored in memory as cache, with a maximum 100,000 messages or 2M. Value display as unit %, and it is carried unconditionally.
2082
2083 HDWn: Display buffer usage.
2084
2085 **Control address: (Total length: 258 words)**
2086
2087 HDWn: Control the execution or stop of [MQTT Server].
2088
2089 |Value|Description
2090 |0|Ready
2091 |1|Start
2092 |2|Stop
2093 |3|Update
2094
2095 HDWn+1: Port number of the Alibaba Cloud connection.
2096
2097 HDWn+2: Domain name title of the Alibaba Cloud connection.
2098
2099 HDWn+66: Client ID of the Alibaba Cloud connection.
2100
2101 HDWn+98: ProductId of the Alibaba Cloud connection.
2102
2103 HDWn+162: DeviceId of the Alibaba Cloud connection.
2104
2105 HDWn+194: DeviceSecret of the Alibaba Cloud connection.
2106
2107 **TLS/SSL Settings**
2108
2109 (% style="text-align:center" %)
2110 [[image:30.jpg]]
2111
2112 **Enable:** Enable TLS/SSL encryption. User can manually select encrypted versions of TLS 1.0, TLS 1.1, or TLS 1.2.
2113
2114 **Server authentication:**
2115
2116 Enable: Verify whether the server certificate has been certified by a Certificate Authority Certificate (CA). Server certificates are sent by the server when connection is established.
2117
2118 Import: Select CA certificate to import.
2119
2120 More: After the import is successful, clicking it will display the certificate details.
2121
2122 Reset: Reset the import information.
2123
2124 The server name must be matched with the certificate information to verify whether the server name or IP matches the records in the certificate. Domain name and IP are recorded in the Subject Alternative Name in the certificate.
2125
2126 **(3) Client authentication:** The private key and client certificate are the data required for the server to authenticate the client end.
2127
2128 Certificate:
2129
2130 Import: Select certificate to import.
2131
2132 More: After the import is successful, clicking it will display the certificate details.
2133
2134 Reset: Reset the import information.
2135
2136 Key:
2137
2138 Import: Select the key to import.
2139
2140 More: After the import is successful, clicking it will display key details.
2141
2142 Reset: Reset the import information.
2143
2144
2145 **MQTT Topic**
2146
2147 (% class="wikigeneratedid" id="H1.MQTTtopicpublish" %)
2148 **MQTT topic publish**
2149
2150 Select [Topic publish], click [Add], enter [Add MQTT topic publish object], and set the general settings and address. The maximum number of MQTT published topics is 255.
2151
2152 (% style="text-align:center" %)
2153 [[image:31.jpg]]
2154
2155 **General properties**
2156
2157 (% style="text-align:center" %)
2158 [[image:32.jpg]]
2159
2160
2161 **Alias:** Set the project name of the MQTT theme. Maximum input length: 255 characters, cannot be empty.
2162
2163 **Topic:** The topic received by the MQTT server when sending message. Maximum input length: 255 characters, cannot be empty.
2164
2165 **Sending mode:** **(AUTO/TRIGGER)**
2166
2167 **① AUTO **value change mode: When any value changes, MQTT message is published.
2168
2169 a. Minimum time interval between messages: The minimum time interval can be set between messages to avoid over-publishing MQTT messages. When the interval of value change is less than the minimum time interval between messages, the message will be put in the cache. The MQTT message will not be published until the minimum interval between messages is met. Range: 0~~3600000ms.
2170
2171 b. Periodic mode: Publish MQTT message by the fixed time. Time interval: Set the time interval for periodic publishing, ranging from 1 to 3600s.
2172
2173 **② TRIGGER**
2174
2175 When the specified bit is triggered, the MQTT message is published. When HDX0.0 changes from OFF to ON, an MQTT message is published, and HDX0.0 is automatically set to OFF after publishing.
2176
2177 **Compression type:** Message is compressed before it is transmitted. The compressed message needs to be decompressed before the MQTT client reads it. Zlib, Gzip, or Deflate algorithm can be chosen to compress or decompress the message.
2178
2179 **QoS:** MQTT provides three levels of reliability called service quality. The service quality of message transmission determines whether the message is guaranteed to be delivered.
2180
2181 0: Messages are sent only once, and delivery is not guaranteed.
2182
2183 1: Message must be delivered at least once.
2184
2185 2: Message is delivered just once.
2186
2187 **Retain message:** When checked, the MQTT server will keep the latest message.
2188
2189 **Content format:**
2190
2191 Raw data: Data composed of BYTE data.
2192
2193 JSON (General): Put all data in JSON format of member "d".
2194
2195 JSON (Advanced): JSON format of flexibly customizable nested structure.
2196
2197 **Include timestamps:** This function is only supported when the content format uses [JSON (General)], and whether to include the timestamp can be decided manually.
2198
2199 **Use the top "d" symbol in the message format:**
2200
2201 This function is only supported when the content format uses [JSON (General)]. When checked, the message format is as follows:
2202
2203 {
2204
2205 "d": {
2206
2207 "addressName1": ...,
2208
2209 "addressName2":...
2210
2211 },
2212
2213 "ts":...
2214
2215 }
2216
2217 When unchecked, the message format is as follows:
2218
2219 {
2220
2221 "addressName1": ...,
2222
2223 "addressName2":...,
2224
2225 "ts":...
2226
2227 }
2228
2229 As shown above, when unchecked, ts and address names are both key at the same level. Therefore, avoid taking the address name as ts.
2230
2231
2232 **Address setting**
2233
2234 ①Address settings when content formats use [Raw Data] and [JSON (General)].
2235
2236 (% style="text-align:center" %)
2237 [[image:33.jpg]]
2238
2239 **Add:** Establish the address source of the topic. The length of each address can be set separately.
2240
2241 **Delete:** Delete the address.
2242
2243 **Settings:** Modify the address and name.
2244
2245 (% style="text-align:center" %)
2246 [[image:34.jpg]]
2247
2248 **Included in all message sent**
2249
2250 Check the options: This topic will include this address every time it publishes a message.
2251
2252 Uncheck the options: When the sending mode is value, message is published only when the value of the address changes.
2253
2254 **Remove JSON array brackets' ['and'] ':**
2255
2256 Check the options: Remove the array symbol name when using non-array bits or characters.
2257
2258 **✎Note: A topic can be configured up to 255 nodes. The name length of a node can be configured up to a maximum of 255 characters and cannot be empty.**
2259
2260 ② Address setting when the content format uses [JSON (Advanced)]. [JSON (Advanced)] supports nested structure, which can use components, arrays and other forms. Timestamps and data names can also be customized, which is a more flexible design method.
2261
2262 (% style="text-align:center" %)
2263 [[image:HMIEditor_Db5tLtioq7.jpg]]
2264
2265 The above figure is an example. If setting like above figure, the subscription side will receive the MQTT message like following format.
2266
2267 {
2268 "object": {
2269 "value": "teststring",
2270 "value (1)": 123,
2271 "value (2)": true,
2272 "value (3)": "",
2273 "value (4)": 0,
2274 "value (5)": true
2275 },
2276 "array": [
2277 10,
2278 20,
2279 30
2280 ],
2281 "value (6)": " 2023-04-27T03: 53: 20.156271 "
2282 }
2283
2284 **New component:** Add a new data component. Components can have multiple data formats; each data format has its own Name and Value. The data of the component is included in braces {}.
2285
2286 **New value:** Add a value, string, or timestamp. When it is a value or a string, data can be read for a fixed value or from a specified address.
2287
2288 **Delete:** Delete the selected field.
2289
2290 **Settings:** Modify the selected field. If the selected fields are components and arrays, only the names can be modified. But components and arrays include values that can modify parameters.
2291
2292 **Template:** Paste the JSON text, and the system will automatically arrange the schema to conform to this JSON format, saving the time of self-definition.
2293
2294 **Preview:** Preview JSON data in an easy-to-read format.
2295
2296 **✎Note: A Topic can be up to 512 nodes (including payload), and a node name can be configured to be up to 255 characters length.**
2297
2298
2299 **Security settings**
2300
2301 The topic is published only when the register status matches the setting. As shown in the following figure, this topic will not be published until the address HDX0.0 is set to ON.
2302
2303 (% style="text-align:center" %)
2304 [[image:35.jpg]]
2305
2306 **MQTT topic subscription**
2307
2308 Select [Topic subscription] and click [Add] to enter general property settings and address settings. The maximum number of MQTT subscription topics is 255.
2309
2310 (% style="text-align:center" %)
2311 [[image:36.jpg]]
2312
2313 **General properties**
2314
2315 (% style="text-align:center" %)
2316 [[image:37.jpg]]
2317
2318 **Alias:** Set the project name of the MQTT theme. Maximum input length: 255 characters, cannot be empty.
2319
2320 **Topic:** Topics subscribed from the MQTT server. Maximum input length: 255 characters, cannot be empty.
2321
2322 **Compression type:** The transport compression type of a subscription topic must be the same as that of a publication topic.
2323
2324 **QoS:** MQTT provides three levels of reliability called service quality. The service quality of message transmission determines whether the message is guaranteed to be delivered.
2325
2326 0: Messages are sent only once, and delivery is not guaranteed.
2327
2328 1: Message must be delivered at least once.
2329
2330 2: Message is delivered just once.
2331
2332 **Content format:**
2333
2334 Raw data: There is no original data in a specific format.
2335
2336 JSON (General): JSON format of single-layer structure.
2337
2338 JSON (Advanced): JSON format of flexibly customizable nested structure.
2339
2340 **Verify timestamp:** The user can decide whether to verify the timestamp or not. When checked, it indicates that the received data timestamp must be strictly incremented before it can be updated. Otherwise, it will be judged as outdated data and not updated.
2341
2342 **Use the top "d" symbol in the message format:**
2343
2344 This function is only supported when the content format uses [JSON (General)]. When checked, the message format is as follows:
2345
2346 {
2347
2348 "d": {
2349
2350 "addressName1": ...,
2351
2352 "addressName2":...
2353
2354 },
2355
2356 "ts":...
2357
2358 }
2359
2360 When unchecked, the message format is as follows:
2361
2362 {
2363
2364 "addressName1": ..., "addressName2":...,
2365
2366 "ts":...
2367
2368 }
2369
2370 Please select the appropriate settings according to the data source.
2371
2372 **Address setting**
2373
2374 ①Address settings when content formats use [Raw Data] and [JSON (General)].
2375
2376 (% style="text-align:center" %)
2377 [[image:38.jpg]]
2378
2379 **Add:** Establish the address where the data is placed after the topic is subscribed, and the length of each address can be set separately.
2380
2381 **Delete:** Delete the address.
2382
2383 **Settings:** Modify the address and name.
2384
2385 (% style="text-align:center" %)
2386 [[image:39.jpg]]
2387
2388 **Remove JSON array brackets' ['and'] ':**
2389
2390 When using non-array bits or characters, array symbol can manually be removed.
2391
2392 **✎Note: A topic can be configured up to 255 nodes. The name length of a node can be configured up to a maximum of 255 characters and cannot be empty.**
2393
2394 ② Address setting when the content format uses [JSON (Advanced)]. [JSON (Advanced)] supports nested structure, which can use components, arrays and other forms. Timestamps and data names can also be customized, which is a more flexible design method.
2395
2396 (% style="text-align:center" %)
2397 [[image:40.jpg]]
2398
2399 **New component:** Add a new data component. There can be multiple data formats in a component, each with a name and a value. The data of the component is included in braces {}.
2400
2401 **New Array:** Add a new data array. Arrays can have multiple data formats, but only one name. The data of the component is included in brackets [].
2402
2403 **New value:** Add a value, string, or timestamp. When it is a value or a string, data can be read for a fixed value or from a specified address.
2404
2405 **Delete:** Delete the selected field.
2406
2407 **Settings:** Modify the selected field. If the selected fields are components and arrays, only the names can be modified. But components and arrays include values that can modify parameters.
2408
2409 **Template:** Paste the JSON text, and the system will automatically arrange the schema to conform to this JSON format, saving the time of self-definition.
2410
2411 **Preview:** Preview JSON data in an easy-to-read format.
2412
2413 **✎Note: A Topic can be up to 512 nodes (including payload), and a node name can be configured to be up to 255 characters length.**
2414
2415
2416 **Security settings**
2417
2418 The topic is published only when the register status matches the setting. As shown in the following figure, this topic will not be published until the address HDX0.0 is set to ON.
2419
2420 (% style="text-align:center" %)
2421 [[image:41.jpg]]
2422
2423 **MQTT Server Settings (Huawei)**
2424
2425 **General**
2426
2427 (% style="text-align:center" %)
2428 [[image:42.jpg]]
2429
2430 **Description:** Enter a description or comment about the server. Maximum input length: 255 characters, cannot be empty.
2431
2432 **Cloud service description**: (Select Huawei)
2433
2434 ① Common (Common Platform): General MQTT publish-subscribe topic mode.
2435
2436 ② AWS IoT (Amazon): Using "AWS IoT" as the Broker, using Thing to transfer data and support Shadow function.
2437
2438 ③ ALi (Alibaba Cloud): Using "Alibaba Cloud" as Broker.
2439
2440 ④ Huawei (Huawei Cloud): Using "Huawei Cloud" as Broker.
2441
2442 **Communication protocol**: MQTTv3.1, v3.1.1 and v5 are supported.
2443
2444 **Domain name:** Set the domain name of the MQTT server that subscribe message. Maximum input length: 128 characters, cannot be empty, supports letters, numbers, "-", “.”. The symbol cannot be placed at the first character or last character of name.
2445
2446 **Port number:** Set the MQTT server port to subscribe message. Range: 0~~65535, cannot be empty.
2447
2448 **DeviceId:** **Device ID** generated when registering the device in Huawei Cloud. Maximum input length: 128 characters
2449
2450 **DeviceSecret:** Customized **password **when registering devices on Huawei Cloud Maximum input length: 128 characters.
2451
2452 **Timestamp:** LOCAL: Using the HMI time as the timestamp. UTC Time: Using UTC+0.
2453
2454 **Clean message cache when normal connected:** If option is enabled, when the device is disconnected, the message to be published will be cached in the cache area, and then will be published when the device is online again.
2455
2456
2457 **Address**
2458
2459 (% style="text-align:center" %)
2460 [[image:43.jpg]]
2461
2462 **Status address: (Total length: 2 words)**
2463
2464 HDWn: Display [MQTT] connection status.
2465
2466 |Value|Description
2467 |0|Disable MQTT server connection
2468 |1|Disconnected or connecting
2469 |2|Successfully connected the MQTT server
2470
2471 HDWn+1: Error prompt
2472
2473 |Value|Description
2474 |0|No error
2475 |-1|General error code of wrong operation
2476 |-3|Disconnected
2477 |-4|Exceed client data concurrency
2478 |-5|Invalid UTF-8 string
2479 |-6|Null pointer parameter
2480 |-7|Topic name is truncated
2481 |-8|Wrong protocol structure body
2482 |-9|Wrong QOS.  (0, 1, 2) is acceptable.
2483 |-10|Attempt to use a non-SSL library for SSL connection
2484 |-11|Wrong MQTT version
2485 |-14|Wrong protocol type
2486 |-15|Option is not suitable for the current request version
2487 |-16|Call MQTT version that is not applicable to request.
2488 |-17|0 length topic connection
2489
2490 **Buffer usage address: (Total length: 1 word)**
2491
2492 Unsuccessful published message will be stored in memory as cache, with a maximum 100,000 messages or 2M. Value display as unit %, and it is carried unconditionally.
2493
2494 HDWn: Display buffer usage.
2495
2496 **Control address: (Total length: 194 words)**
2497
2498 HDWn: Control the execution or stop of [MQTT Server].
2499
2500 |Value|Description
2501 |0|Ready
2502 |1|Start
2503 |2|Stop
2504 |3|Update
2505
2506 HDWn+1: Port number of the Huawei Cloud.
2507
2508 HDWn+2: Domain name of the Huawei Cloud.
2509
2510 HDWn+66: DeviceSecret of the Huawei Cloud.
2511
2512 HDWn+130: DeviceSecret of the Huawei Cloud.
2513
2514 **TLS/SSL Settings**
2515
2516 (% style="text-align:center" %)
2517 [[image:44.jpg]]
2518
2519 **Enable:** Enable TLS/SSL encryption. User can manually select encrypted versions of TLS 1.0, TLS 1.1, or TLS 1.2.
2520
2521 **Server authentication:**
2522
2523 Enable: Verify whether the server certificate has been certified by a Certificate Authority Certificate (CA). Server certificates are sent by the server when connection is established.
2524
2525 Import: Select CA certificate to import.
2526
2527 More: After the import is successful, clicking it will display the certificate details.
2528
2529 Reset: Reset the import information.
2530
2531 The server name must match the certificate information: Verify whether the server name or IP matches with the information in the certificate. Domain name and IP are recorded in the Subject Alternative Name from certificate.
2532
2533 **Client authentication:** The private key and client certificate are the data required for the server to authenticate the client end.
2534
2535 Certificate:
2536
2537 Import: Select certificate to import.
2538
2539 More: After the import is successful, clicking it will display the certificate details.
2540
2541 Reset: Reset the import information.
2542
2543 Key:
2544
2545 Import: Select the key to import.
2546
2547 More: After the import is successful, clicking it will display key details.
2548
2549 Reset: Reset the import information.
2550
2551 **MQTT Topic**
2552
2553 **MQTT topic publish**
2554
2555 Select [Topic publish], click [Add], enter [Add MQTT topic publish object], and set the general settings and address. The maximum number of MQTT published topics is 255.
2556
2557 (% style="text-align:center" %)
2558 [[image:45.jpg]]
2559
2560 **General properties**
2561
2562 (% style="text-align:center" %)
2563 [[image:46.jpg]]
2564
2565 **Alias:** Set the project name of the MQTT theme. Maximum input length: 255 characters, cannot be empty.
2566
2567 **Topic:** The topic received by the MQTT server when sending message. Maximum input length: 255 characters, cannot be empty.
2568
2569 **Sending mode:** **(AUTO/TRIGGER)**
2570
2571 **① AUTO **value change mode: When any value changes, MQTT message is published.
2572
2573 a. Minimum time interval between messages: The minimum time interval can be set between messages to avoid over-publishing MQTT messages. When the interval of value change is less than the minimum time interval between messages, the message will be put in the cache. The MQTT message will not be published until the minimum interval between messages is met. Range: 0~~3600000ms.
2574
2575 b. Periodic mode: Publish MQTT message by the fixed time. Time interval: Set the time interval for periodic publishing, ranging from 1 to 3600s.
2576
2577 **② TRIGGER**
2578
2579 When the specified bit is triggered, the MQTT message is published. When HDX0.0 changes from OFF to ON, an MQTT message is published, and HDX0.0 is automatically set to OFF after publishing.
2580
2581 **Compression type:** Message is compressed before it is transmitted. The compressed message needs to be decompressed before the MQTT client reads it. Zlib, Gzip, or Deflate algorithm can be chosen to compress or decompress the message.
2582
2583 **QoS:** MQTT provides three levels of reliability called service quality. The service quality of message transmission determines whether the message is guaranteed to be delivered.
2584
2585 0: Messages are sent only once, and delivery is not guaranteed.
2586
2587 1: Message must be delivered at least once.
2588
2589 2: Message is delivered just once.
2590
2591 **Retain message:** When checked, the MQTT server will keep the latest message.
2592
2593 **Content format:**
2594
2595 Raw data: Data composed of BYTE data.
2596
2597 JSON (General): Put all data in JSON format of member "d".
2598
2599 JSON (Advanced): JSON format of flexibly customizable nested structure.
2600
2601 **Include timestamps:** This function is only supported when the content format uses [JSON (General)], and whether to include the timestamp can be decided manually.
2602
2603 **Use the top "d" symbol in the message format:**
2604
2605 This function is only supported when the content format uses [JSON (General)]. When checked, the message format is as follows:
2606
2607 {
2608
2609 "d": {
2610
2611 "addressName1": ...,
2612
2613 "addressName2":...
2614
2615 },
2616
2617 "ts":...
2618
2619 }
2620
2621 When unchecked, the message format is as follows:
2622
2623 {
2624
2625 "addressName1": ...,
2626
2627 "addressName2":...,
2628
2629 "ts":...
2630
2631 }
2632
2633 As shown above, when unchecked, ts and address names are both key at the same level. Therefore, avoid taking the address name as ts.
2634
2635
2636 **Address setting**
2637
2638 ①Address settings when content formats use [Raw Data] and [JSON (General)].
2639
2640 (% style="text-align:center" %)
2641 [[image:47.jpg]]
2642
2643 **Add:** Establish the address source of the topic. The length of each address can be set separately.
2644
2645 **Delete:** Delete the address.
2646
2647 **Settings:** Modify the address and name.
2648
2649 (% style="text-align:center" %)
2650 [[image:48.jpg]]
2651
2652 **Included in all message sent**
2653
2654 Check the options: This topic will include this address every time it publishes a message.
2655
2656 Uncheck the options: When the sending mode is value, message is published only when the value of the address changes.
2657
2658 **Remove JSON array brackets' ['and'] ':**
2659
2660 Check the options: Remove the array symbol name when using non-array bits or characters.
2661
2662 **✎Note: A topic can be configured up to 255 nodes. The name length of a node can be configured up to a maximum of 255 characters and cannot be empty.**
2663
2664 ② Address setting when the content format uses [JSON (Advanced)]. [JSON (Advanced)] supports nested structure, which can use components, arrays and other forms. Timestamps and data names can also be customized, which is a more flexible design method.
2665
2666 (% style="text-align:center" %)
2667 [[image:49.jpg]]
2668
2669 The above figure is an example. If setting like above figure, the subscription side will receive the MQTT message like following format.
2670
2671 {
2672 "object": {
2673 "value": "teststring",
2674 "value (1)": 123,
2675 "value (2)": true,
2676 "value (3)": "",
2677 "value (4)": 0,
2678 "value (5)": true
2679 },
2680 "array": [
2681 10,
2682 20,
2683 30
2684 ],
2685 "value (6)": " 2023-04-27T03: 53: 20.156271 "
2686 }
2687
2688 **New component:** Add a new data component. Components can have multiple data formats; each data format has its own Name and Value. The data of the component is included in braces {}.
2689
2690 **New value:** Add a value, string, or timestamp. When it is a value or a string, data can be read for a fixed value or from a specified address.
2691
2692 **Delete:** Delete the selected field.
2693
2694 **Settings:** Modify the selected field. If the selected fields are components and arrays, only the names can be modified. But components and arrays include values that can modify parameters.
2695
2696 **Template:** Paste the JSON text, and the system will automatically arrange the schema to conform to this JSON format, saving the time of self-definition.
2697
2698 **Preview:** Preview JSON data in an easy-to-read format.
2699
2700 **✎Note: A Topic can be up to 512 nodes (including payload), and a node name can be configured to be up to 255 characters length.**
2701
2702
2703 **Security settings**
2704
2705 The topic is published only when the register status matches the setting. As shown in the following figure, this topic will not be published until the address HDX0.0 is set to ON.
2706
2707 (% style="text-align:center" %)
2708 [[image:50.jpg]]
2709
2710
2711 **MQTT topic subscription**
2712
2713 Select [Topic subscription] and click [Add] to enter general property settings and address settings. The maximum number of MQTT subscription topics is 255.
2714
2715 (% style="text-align:center" %)
2716 [[image:51.jpg]]
2717
2718 **General properties**
2719
2720 (% style="text-align:center" %)
2721 [[image:52.jpg]]
2722
2723 **Alias:** Set the project name of the MQTT theme. Maximum input length: 255 characters, cannot be empty.
2724
2725 **Topic:** Topics subscribed from the MQTT server. Maximum input length: 255 characters, cannot be empty.
2726
2727 **Compression type:** The transport compression type of a subscription topic must be the same as that of a publication topic.
2728
2729 **QoS:** MQTT provides three levels of reliability called service quality. The service quality of message transmission determines whether the message is guaranteed to be delivered.
2730
2731 0: Messages are sent only once, and delivery is not guaranteed.
2732
2733 1: Message must be delivered at least once.
2734
2735 2: Message is delivered just once.
2736
2737 **Content format:**
2738
2739 Raw data: There is no original data in a specific format.
2740
2741 JSON (General): JSON format of single-layer structure.
2742
2743 JSON (Advanced): JSON format of flexibly customizable nested structure.
2744
2745 **Verify timestamp:** The user can decide whether to verify the timestamp or not. When checked, it indicates that the received data timestamp must be strictly incremented before it can be updated. Otherwise, it will be judged as outdated data and not updated.
2746
2747 **Use the top "d" symbol in the message format:**
2748
2749 This function is only supported when the content format uses [JSON (General)]. When checked, the message format is as follows:
2750
2751 {
2752
2753 "d": {
2754
2755 "addressName1": ...,
2756
2757 "addressName2":...
2758
2759 },
2760
2761 "ts":...
2762
2763 }
2764
2765 When unchecked, the message format is as follows:
2766
2767 {
2768
2769 "addressName1": ..., "addressName2":...,
2770
2771 "ts":...
2772
2773 }
2774
2775 Please select the appropriate settings according to the data source.
2776
2777 **Address setting**
2778
2779 ①Address settings when content formats use [Raw Data] and [JSON (General)].
2780
2781 (% style="text-align:center" %)
2782 [[image:53.jpg]]
2783
2784 **Add:** Establish the address where the data is placed after the topic is subscribed. The length of each address can be set separately.
2785
2786 **Delete:** Delete the address.
2787
2788 **Settings:** Modify the address and name.
2789
2790 (% style="text-align:center" %)
2791 [[image:54.jpg]]
2792
2793 **Remove JSON array brackets' ['and'] ':**
2794
2795 When using non-array bits or characters, array symbol can manually be removed.
2796
2797 **✎Note: A topic can be configured up to 255 nodes. The name length of a node can be configured up to a maximum of 255 characters and cannot be empty.**
2798
2799 ② Address setting when the content format uses [JSON (Advanced)]. [JSON (Advanced)] supports nested structure, which can use components, arrays and other forms. Timestamps and data names can also be customized, which is a more flexible design method.
2800
2801 (% style="text-align:center" %)
2802 [[image:HMIEditor_Db5tLtioq7.jpg]]
2803
2804 **New component:** Add a new data component. There can be multiple data formats in a component, each with a name and a value. The data of the component is included in braces {}.
2805
2806 **New Array:** Add a new data array. Arrays can have multiple data formats, but only one name. The data of the component is included in brackets [].
2807
2808 **New value:** Add a value, string, or timestamp. When it is a value or a string, data can be read for a fixed value or from a specified address.
2809
2810 **Delete:** Delete the selected field.
2811
2812 **Settings:** Modify the selected field. If the selected fields are components and arrays, only the names can be modified. But components and arrays include values that can modify parameters.
2813
2814 **Template:** Paste the JSON text, and the system will automatically arrange the schema to conform to this JSON format, saving the time of self-definition.
2815
2816 **Preview:** Preview JSON data in an easy-to-read format.
2817
2818 **✎Note: A Topic can be up to 512 nodes (including payload), and a node name can be configured to be up to 255 characters length.**
2819
2820
2821 **Security settings**
2822
2823 The topic is published only when the register status matches the setting. As shown in the following figure, this topic will not be published until the address HDX0.0 is set to ON.
2824
2825 (% style="text-align:center" %)
2826 [[image:56.jpg]]
2827
2828 = OPCUA Server =
2829
2830 (% class="box infomessage" %)
2831 (((
2832 ✎Note: Only 8000ig Series support OPC UA Server.
2833 )))
2834
2835 1.Open the OPCUA server tool
2836
2837 [Project]→[OPCUA server]→[Enable]
2838
2839 (% style="text-align:center" %)
2840 [[image:QOBzq5f8HF.png]]
2841
2842 2.Set General properties
2843
2844 (% style="text-align:center" %)
2845 [[image:e9rHcIHKsj.png]]
2846
2847 **Description**:Description of OPCUA server, character length 0~~255.** **
2848
2849 **OPC TCP**: Set URL of OPCUA server.
2850
2851 **Port number**:The port used by the client for communication.Default: 4840.
2852
2853 **Server name**:Set the name of Server,character length 0~~255.
2854
2855 **Security**: OPCUA server provides four security policies and three authentication methods, and different encryption methods can be implemented through different combinations.
2856
2857 3.User authentication
2858
2859 (% style="text-align:center" %)
2860 [[image:1733132656389-393.png]]
2861
2862 **Anonymous:** When the client chooses to log in anonymously, the permissions to interact with the server include brows, read and write.
2863
2864 **User name password:**The user name and password here are equivalent to the user name and password set on the [Project Settiing\User Login] page. When the client logs in to the server by using the user name and password, the user password used has the same group level as that configured by the server and has corresponding permissions.
2865
2866 4.Main interface
2867
2868 (% style="text-align:center" %)
2869 [[image:1733133255552-776.png]]
2870
2871 **Enable**: Check to configure the relevant properties of the OPC UA server
2872
2873 **Server\Settings:** Configure OPC UA Server Properties
2874
2875 **List of tags:** Display the defined tags
2876
2877 **New group:** Add a new group to manage tags
2878
2879 **New label:** Add the address label you want to monitor, and the name cannot be empty. The length of the label name ranges from 1 to 255.
2880
2881 **Settings**: When a label is selected, click to jump to the label configuration interface.
2882
2883 When a group is selected, click to configure the group name.
2884
2885 **Cancel**: Able to delete tags or groups
2886
2887 (% class="box infomessage" %)
2888 (((
2889 ✎Note: Setting and cancel options are only for the New label and New group, and do not apply to groups that exist by default
2890 )))
2891
2892 5.Label configuration
2893
2894 (% style="text-align:center" %)
2895 [[image:1733133363652-686.png]]
2896
2897
2898 **Name:** Tag name
2899
2900 **Type**:Indicate the read and write attributes of the label. The read attributes are checked by default** **
2901
2902 **Address**:Configure the address to be monitored by the label
2903
2904 **Data Type:** Represent the data type of this label
2905
2906 **Array length:** When the set length exceeds 1, it means that the label is an array, and the array range is 1 to 255.