Wiki source code of 04 Library

Last modified by Mora Zhou on 2023/11/01 13:39

Show last authors
1 = **Shape** =
2
3 It is used for storing bitmaps. The source of bitmaps are: system bitmap library and imported bitmaps.
4
5 (% style="text-align:center" %)
6 [[image:位图库 1.png||data-xwiki-image-style-alignment="center" class="img-thumbnail"]]
7
8 (((
9 (% style="text-align:center" %)
10 [[image:位图库、.png||data-xwiki-image-style-alignment="center" class="img-thumbnail"]]
11
12 (% class="wikigeneratedid" %)
13 You could view all the bitmaps in the library, and import or export them according to your own needs. You can also create multi-state bitmaps.
14
15 (% class="wikigeneratedid" %)
16 There are four kinds of galleries as follows.
17
18 * **Project gallery: **The bitmaps added to the project and the bitmaps applied to the project are displayed in the project gallery.
19 ** Rename: You could click one bitmap to rename. Bitmap names can be a combination of Chinese characters, numbers, and letters (case sensitive), but no special characters. The length of it cannot exceed 18 characters.
20 ** When you place the mouse on the display area of bitmap, its name and resolution would be displayed.
21 ** You can export the current project bitmap file, import the file in another project, and call it in the new project.
22 * **System gallery: **The software system gallery, including pictures and vector diagrams (svg picture).
23 * **Gallery file: **You can import the corresponding picture file from and call it in the project library.
24 ** You could import library files with suffixes "aa. pLb" and "aa. bLb".
25 ** Select one bitmap, right click to perform three operations: Use library, Delete library, and rename library (F2).
26 * **Extended gallery: **The image applied in the screen style can be found in the extended gallery.
27
28 = Font =
29
30 User can pre-set the font and directly call the settings in the font library when editing the project.
31
32 (% style="text-align:center" %)
33 [[image:字体库 1.png||data-xwiki-image-style-alignment="center" class="img-thumbnail"]]
34
35 (% style="text-align:center" %)
36 [[image:7.Library_html_938f815f649f52f7.png||data-xwiki-image-style-alignment="center" height="430" width="408" class="img-thumbnail"]]
37
38 (% class="table-bordered" %)
39 |=**Items**|=**Description**
40 |Add font|Add an new font in library
41 |Delete font|Delete selected font
42 |Properties|Edit selected font
43 |Close|Close current setting window
44 |Help|Click it to open help document
45
46 **Operating procedures of create font**
47
48 (% style="text-align:center" %)
49 [[image:7.Library_html_49e9837c01071e5a.png||data-xwiki-image-style-alignment="center" height="299" width="553" class="img-thumbnail"]]
50
51 1. Click [Add font] to open setting window.
52 1. Enter font name.
53 1. Select font.
54 1. Select font size.
55 1. Select font style.
56 1. Preview font.
57
58 = Text =
59 )))
60
61 Text library contains commonly used text. It avoids setting the text repeatedly. HMI provides up to 8 languages in text library.
62
63 Click "Project"→"Text" to open the setting window.
64
65 (% style="text-align:center" %)
66 [[image:文本库.png||data-xwiki-image-style-alignment="center" class="img-thumbnail"]]
67
68 (% style="text-align:center" %)
69 [[image:7.Library_html_b8f8338b62169207.png||data-xwiki-image-style-alignment="center" height="298" width="577" class="img-thumbnail"]]
70
71 (% class="table-bordered" %)
72 |=**Items**|=**Description**
73 |ID|The identifier of the text in the list
74 |Languages|One text can be set in 8 languages
75 |New|Add an new text in list
76 |Delete|Delete selected text
77 |Edit|Edit select text
78 |Close|Close text library list
79 |Help|Open help document
80 |Export EXCEL|Export text library to PC as excel file
81 |Import EXCEL|Import text library from excel file
82 |Clear|Delete all texts in list
83
84 **Operating procedures of creating new text**
85
86 1. Click "New" button to open setting windows as below.
87 1. Set at least one language and support up to 8 languages.
88 1. Click "Save" to complete operations.
89
90 (% style="text-align:center" %)
91 [[image:7.Library_html_f78c9d8bbbd45150.png||data-xwiki-image-style-alignment="center" height="431" width="554" class="img-thumbnail"]]
92
93 (% class="box infomessage" %)
94 (((
95 **✎Note:**
96
97 Text library: Supports importing edited Excel files into projects for use. However, the following two points need to be noted:
98
99 1. When importing an Excel file, if the contents of language one to language eight in ID (ID) information is all empty, the information of the subsequent ID will not be imported.
100 1. When importing Excel files, if there is pure digital content in the imported information, you need to set the format of the table box to "text" mode. Otherwise, the text import fails or an error occurs due to incorrect information format.
101 )))
102
103 = **Email** =
104
105 == Email setting ==
106
107 In "PIStudio" software, click "Project" → "E-mail" to open email function setting screen.
108
109 **Introduction**
110
111 Wecon HMI can send email with information from fields to the specified email address as soon as the conditions are triggered, but email sending is based on the network.
112
113 (% style="text-align:center" %)
114 [[image:image-20220616114515-1.png]]
115
116 **SMTP Settings**
117
118 * **Sender Name: **Fill the sender's name, which is composed of Chinese characters, letters (case sensitive) and numbers. But it can not contain the following special English symbols:  ',', ';', '"', '<'. Maximum character length 32 is allowed.
119 * **Password:** Fill in the password or authorization code of the mailbox. If the server needs to set the authorization code, the authorization code needs to be used. If the authorization code is not used, the password is used. Please refer to the SMTP service in the mailbox for the authorization code information. It cases sensitive, maximum character length 32 allowed in password.
120 * **Confirm Password: **Confirm the password or authorization code of the mailbox.
121 * **Email Address: **Fill in the sender's email address, case sensitive, maximum character length 32 allowed in it.Such as [[support@we-con.com.cn>>path:mailto:support@we-con.com.cn]].
122 * **SMTP Server: **Please refer to the mailbox account settings. If you enter a common mailbox, the corresponding server address will be automatically written. such as smtp.exmail.qq.com.
123
124 (% class="table-bordered" %)
125 |=Email|=Email server|=Port number
126 |163 email|smtp.163.com|465
127 |126 email|smtp.126.com|465
128 |QQ email|smtp.qq.com|465
129 |Sina email|smtp.sina.com|465
130 |Sohu email|smtp.sohu.com|465
131 |Yahoo email|smtp.mail.yahoo.com.cn|465
132 |Google email|smtp.gmail.com|465
133
134 (% class="box infomessage" %)
135 (((
136 **✎Note:** Gmail also needs to enable the [allow unsafe apps] option in the account, otherwise the mail will not be sent normally.
137 )))
138
139 * **Encryption Type: **SSL is a security protocol that provides security and data integrity for network communications. It encrypts network connections at the transport layer; TLS (STARTTLS) upgrades connections to SSL instead of using a separate encrypted communication port.
140 * **The Port Number: **Enter corresponding port number according to the SMTP serve addrress entered. You could only enter interger between 1 and 65535. Do not enter more than 6 digits in length. Common port numbers are port 25, 465 and 587.
141 ** Port 25: It does not protect the original data when transmitting data. The data can be seen. Generally, port 25 must be selected as no encryption or TLS(STARTTLS) encryption mode to send data correctly.
142 ** Port 465: It protect the original data when transmitting data. The data can not be seen. Generally, port 465 must be selected as SSL encryption mode to send data correctly.
143 ** Port 587: The original data is protected only after the TLS(STARTTLS) command is executed. Generally, port 587 must be selected as TLS(STARTTLS) encryption mode to send data correctly.
144
145 (% class="box infomessage" %)
146 (((
147 **✎Note: **Port 25 is open to SMTP servers, mainly for sending mail. But the port has vulnerability. Hackers often use port 25 to find SMTP servers to forward spam.
148 )))
149
150 * **Error Message**
151 ** Set the error message receiving address, you could use the information to get the reasons of errors.
152 ** The error types in the mail function are divided into two types: custom rule error and server's error.
153 ** Custom rule errors are as follows.
154
155 (% class="table-bordered" %)
156 |=**Message**
157 |Email settings are incorrect
158 |Email account is incorrect
159 |Email password could not include blank
160 |the settings of SMTP server are incorrect
161 |The range of SMTP server ports number should be integer, which is between 1 and 65535.
162 |The type of encryption for SMTP is incorrect
163 |The name of sender or email address setting is incorrect.
164 |The names of Recipients or email address setting are incorrect.
165 |The names of CC recipients or email address setting are incorrect.
166 |The names of Secret delivery recipients or email address setting are incorrect.
167 |Email topic could not be blank
168 |Email content could not be blank
169 |Total size of attachments should be below 25M
170 |Attachment "xxxx" is nonexistent
171
172 Server's errors are as follows.
173
174 (% class="table-bordered" %)
175 |=**Message**
176 |smtp-server: 554 DT: SPM
177 |smtp-server: 550 RP: TRC
178 |smtp-server: 550 Limitation of connecting counts
179 |smtp-server: 535
180 |smtp-server: 550 Error: Content rejected
181 |smtp-server: 451 Internal server error
182 |smtp-server: 535 Invalid login user or password
183 |smtp-server: 550 too many sending requests today
184 |smtp-server: 452 Too many recipients received this hour.
185 |smtp-server: 535 Error: Authentication failed, system busy
186 |could not connect: Connection timed out
187 |Unexpected EOF on SMTP connection
188 |could not initiate SSL/TLS connection
189 |smtp-server: 530 Need to issue a STARTTLS command first.
190 |could not resolve host
191 |could not connect: Connection timed out
192 |could not connect: Connection refused
193 |smtp-server: 550 User not found: aaa.163.com
194
195 * **Manual Trigger**
196
197 It is for modifying the email-sending settings when HMI is running. According to the set manual trigger address, the address is offset backward to get the address of the corresponding function (a total of 201 words). Take HDW100 as an example.
198
199 (% class="table-bordered" %)
200 |=**Address**|=**Description**
201 |HDX100.0|Sending trigger
202 |HDX101.0 to HDX101.15|It is used for triggering recipient groups, for example, HDW101.0 is set ON, and the address in group 1 will be in recipient list.
203 |HDX103.0 to HDX103.15|It is used for triggering recipient groups, for example, HDW103.0 set ON, and the address in group 1 will be in CC list.
204 |HDX105.0 to HDX105.15|It is used for triggering recipient groups, for example, HDW105.0 set ON, and the address in group 1 will be in BCC list (Secret delivery).
205 |HDW107 to HDW171|The subject length is limited to 64 words. (If it exceeds, it will intercept 64 words of content)
206 |HDW172 to HDW300|The content length is limited to 128 words. (If it exceeds, it will intercept 128 words of content)
207 |HDX301.0|Whether to send an alarm record attachment (a file named AlarmDataFile.db)
208
209 1. Emails that sent manually are not queued. Emails triggered by bit change, rising edge, falling edge and timing need to be sent in the sequence of triggering. The maximum value is 100, and those who are added after it is exceeded will be discarded. If an email is sending, it would send immediately after the current email is sent. If there is no email sending, it would send immediately.
210 1. If the trigger condition sent manually is the rising edge trigger, before the mail is sent, no new mail will be sent even if it is triggered again. No matter the email is sent successfully or not, the corresponding trigger would be OFF.
211 1. Emails that sent manually would only be sent once no matter whether ending error is custom error, network or other errors.
212
213 == Email sending settings ==
214
215 (% style="text-align:center" %)
216 [[image:image-20220616114743-1.png]]
217
218 1. **Add. **A maximum of 1024 email can be added.
219 1. **Modify.** Select an email to modify the content and configuration.
220 1. **Delete. **You could select an email to delete or click the "ID" column to delete in batch.
221
222 (% style="text-align:center" %)
223 [[image:image-20220616114936-3.png]]
224
225 **Email sending configuration.**
226
227 * **Theme. **The value cannot be empty and case sensitive. The total length  cannot exceed 256 characters.
228 * **Content of email. **The contents are divided into three combinations: text, alarm and variable. The list can contain only 32 items at most, and the total length of the preview cannot exceed 1024 items.
229 ** **Text. **You could directly edit the text of language 1 to language 3. If you need to set multiple languages, click "edit all text" to set. You may also select "Text library". The content is case sensitive, and the total length of English/Chinese characters/numbers/symbols does not exceed 253.
230 ** **Alarm. **You could select "bit alarm" or "word alarm" from the list. The content is from alarm text. if the alarm changes, the content changes with it. The content is case sensitive, and the total length of English/Chinese characters/numbers/symbols does not exceed 253.
231 ** **Variable. **Set the corresponding variable address. Read value or strings according to the specified format, and the read information will be displayed in the corresponding position in the mail content.
232 * **Preview. **Combine the content of current edited email and display it for you to modify the content conveniently. The preview length cannot exceed 1024.
233 * **Sending method. **It is divided into timed send interval and bit address trigger transmission. The two methods cannot be used at the same time.
234 ** Timed send interval. After booting, the current system time is used to start calculating, and each time the time  is up, the information will be sent to the set recipient in the form of an email, and the minimum time should be set to 5 minutes. **Note: **The first boot is not sent.
235 ** Bit address trigger tranmission. When the set trigger address meets the trigger conditon, the information will be sent to the set recipient in the form of an email. If the content select alarm, the alarm address would be written in the trigger address. There are three methods to trigger: sending on rising edge, sending on falling edge and send when the bit changes.
236 * **Recipient.** It is set in groups. You could send  multiple groups, and each group can have multiple recipients.
237 * **Add CC.** Sends the current email to other recipients.
238 * **Add secret delivery. ** Sends the current email to other recipients, but the recipient and cc recipients do not see the BCC recipient.
239 ** when sending an email, you must set a recipient. CC recipients and BCC recipients are not to be set. The total number of recipinet, CC recipients and BCC recipients is 40.
240 * **Recipient priority. **Set the priority order of recipients to recipient, BCC, and CC.
241
242 (% class="box infomessage" %)
243 (((
244 **✎Note: **If the recipient address you select exists in all three positions, it exist only in the highest priority position. For example, if the recipient of an email has aaa, the bcc has aaa, and the cc has aaa, then let aaa only be the recipient.
245 )))
246
247 == Recipient group setting ==
248
249 (% style="text-align:center" %)
250 [[image:image-20220616115028-4.png]]
251
252 1. **All Group.** The groups you added.
253 1. **Group to send. **The groups that you send the emails to.
254 1. **Open recipient settings.** Set the information of recipients, and add and subtract groups.
255
256 == Recipient setting ==
257
258 (% style="text-align:center" %)
259 [[image:image-20220616115126-5.png]]
260
261 * **Add. **Add a recipient. There are non-dynamic recipient and dynamic recipient. They cannot be used at the same time. You may just fill in the recipient's name and email address. The dynamic recipient address is limited to 32 characters, and a maximum of 40 recipients can be added.
262
263 (% style="text-align:center" %)
264 [[image:image-20220616115255-6.png]]
265
266 * **Modify. **Select one recipient and click "modify" or double click the recipient to modify. If it is non-dynamic recipient, you could modify the name and email address. The email is unique. If it is dynamic recipient, you could modify the address, and the address is unique.
267 * **Delete.** Select one recipient or multiple recipients to delete, or click the ID column to select all.
268 * **Number of group. **You could click the up/down arrow to increase or decrease groups. The default number is 1. The maximum number is 16.
269 * **Description. **To describe the group information. The total length shall not exceed 32.
270
271 == Test sending settings ==
272
273 (% style="text-align:center" %)
274 [[image:image-20220616115337-7.png]]
275
276 (% class="box infomessage" %)
277 (((
278 **✎Note: **
279
280 * You can open this after the SMTP server is set.
281 * When NetEase mail (126, 163 and yeah) occurs error 554, it may be that the mailbox used is restricted by the anti-spam mechanism, and the performance may be that it cannot send emails in bulk or directly.
282 * When TOM mail is sender's mail, the name of it and the recipient tested must be English, otherwise the email would be returned.
283 * When testing with Zoho mailbox, there was a delay of less than 3 minutes.
284 * The custom errors for the test error are as follows.
285 )))
286
287 (% class="table-bordered" %)
288 |=Error code|=Cause of reason
289 |0|CSMTP_NO_ERROR
290 |100|WSA_STARTUP = Unable to initialize winsock2
291 |101|WSA_VER = Wrong version of the winsock2
292 |102|WSA_SEND = Function send() failed
293 |103|WSA_RECV = Function recv() failed
294 |104|WSA_CONNECT = Function connect failed
295 |105|WSA_GETHOSTBY_NAME_ADDR = Unable to determine remote server
296 |106|WSA_INVALID_SOCKET = Invalid winsock2 socket
297 |107|WSA_HOSTNAME = Function hostname() failed
298 |108|WSA_IOCTLSOCKET = Function ioctlsocket() failed
299 |109|WSA_SELECT
300 |110|BAD_IPV4_ADDR = Improper IPv4 address
301 |200|UNDEF_MSG_HEADER = Undefined message header
302 |201|UNDEF_MAIL_FROM = Undefined mail sender
303 |202|UNDEF_SUBJECT = Undefined message subject
304 |203|UNDEF_RECIPIENTS = Undefined recipient
305 |204|UNDEF_RECIPIENT_MAIL = Undefined mail recipient
306 |205|UNDEF_LOGIN = Undefined user login
307 |206|UNDEF_PASSWORD = Undefined user password
308 |207|BAD_LOGIN_PASSWORD = Invalid user login or password
309 |208|BAD_DIGEST_RESPONSE = Server returned a bad digest MD5 response
310 |209|BAD_SERVER_NAME = Unable to determine server name for digest MD5 response
311 |300|COMMAND_MAIL_FROM = Server returned error after sending MAIL FROM
312 |301|COMMAND_EHLO = Server returned error after sending EHLO
313 |302|COMMAND_AUTH_PLAIN = Server returned error after sending AUTH PLAIN
314 |303|COMMAND_AUTH_LOGIN = Server returned error after sending AUTH LOGIN
315 |304|COMMAND_AUTH_CRAMMD5 = Server returned error after sending AUTH CRAM-MD5
316 |305|COMMAND_AUTH_DIGESTMD5 = Server returned error after sending AUTH DIGEST-MD5
317 |306|COMMAND_DIGESTMD5 = Server returned error after sending MD5 DIGEST
318 |307|COMMAND_DATA = Server returned error after sending DATA
319 |308|COMMAND_QUIT = Server returned error after sending QUIT
320 |309|COMMAND_RCPT_TO = Server returned error after sending RCPT TO
321 |310|MSG_BODY_ERROR = Error in message body
322 |400|CONNECTION_CLOSED = Server has closed the connection
323 |401|SERVER_NOT_READY = Server is not ready
324 |402|SERVER_NOT_RESPONDING = Server not responding
325 |403|SELECT_TIMEOUT
326 |404|FILE_NOT_EXIST = File not exist
327 |405|MSG_TOO_BIG = Message is too big
328 |406|BAD_LOGIN_PASS = Bad login or password
329 |407|UNDEF_XYZ_RESPONSE = Undefined xyz SMTP response
330 |408|LACK_OF_MEMORY = Lack of memory
331 |409|TIME_ERROR = time() error
332 |410|RECVBUF_IS_EMPTY = RecvBuf is empty
333 |411|SENDBUF_IS_EMPTY = SendBuf is empty
334 |412|OUT_OF_MSG_RANGE = Specified line number is out of message size
335 |413|COMMAND_EHLO_STARTTLS = Server returned error after sending STARTTLS
336 |414|SSL_PROBLEM = SSL problem
337 |415|SSL_PROBLEM = SSL problem
338 |416|STARTTLS_NOT_SUPPORTED = The STARTTLS command is not supported by the server
339 |417|LOGIN_NOT_SUPPORTED = AUTH LOGIN is not supported by the server
340
341 == Email status ==
342
343 **Network disconnection error**
344
345 If the fault is determined as a network disconnection error, the system does not delete the sent information and does not record the number of errors, and it would make an infinite send attempt.
346
347 **Custom rule error**
348
349 If the fault is determined as a custom rule error, delete the information.
350
351 **Server return error**
352
353 If the fault is determined as a server return error, then the error time add 1. It would try to send the email for 3 times. Regardless of whether the transmission is successful or not, it would delete the email to be sent. The test results are as follows.
354
355 (% class="table-bordered" %)
356 |=**Server name**|=**The number of sent**|=**Consequences of exceeding the limit**
357 |126|160|No more delivery on that day
358 |163|160|No more delivery on that day
359 |we-con|800|No more delivery on that day
360 |qq|50|It can be sent again after a few minutes or a few hours
361 |sohu|160|No more delivery on that day
362 |sina|50|It can be sent again after a few minutes or a few hours, but cannont be received normally
363 |gmail|500|No more delivery on that day
364
365 **Message Prompt**
366
367 1. If the email to be sent is deleted, a message will pop up.
368 1. If the email is sent successfully, a messge will pop up: "The email is sent successfully."
369 1. If the five symbols ',' , ' | ', '<', '>' and '&' appear in the fields set by the message prompt, the message prompt will display an abnormal message.
370
371 **Mail attachment**
372
373 Currently, the email attachment function only supports sending the specified alarm record (AlarmDataFile.db file), and does not support selecting content to send.
374
375 = Address =
376
377 Address library contains commonly used addresses. It not only avoids setting the addresses repeatedly but also expresses the function of an address more clearly.
378
379 Click "Project"→"Address" to open the setting window.
380
381 (% style="text-align:center" %)
382 [[image:地址库 1.png||data-xwiki-image-style-alignment="center" class="img-thumbnail"]]
383
384 (% style="text-align:center" %)
385 [[image:地址库 2.png||data-xwiki-image-style-alignment="center" height="429" width="659" class="img-thumbnail"]]
386
387 (% class="table-bordered" %)
388 |=(% style="width: 155px;" %)**Item**|=(% style="width: 689px;" %)**Description**
389 |(% style="width:155px" %)Word Address|(% style="width:689px" %)Select [Word Address] to display word addresses in list
390 |(% style="width:155px" %)Bit Address|(% style="width:689px" %)Select [Bit Address] to display bit addresses in list
391 |(% style="width:155px" %)Add|(% style="width:689px" %)Add a set of address to display in the address library to associate addresses with identifiers
392 |(% style="width:155px" %)Insert|(% style="width:689px" %)Insert (add) an new address before selected item in list
393 |(% style="width:155px" %)Edit|(% style="width:689px" %)Edit selected item
394 |(% style="width:155px" %)Delete|(% style="width:689px" %)Delete selected item in list
395 |(% style="width:155px" %)Up|(% style="width:689px" %)Move the selected item up one line
396 |(% style="width:155px" %)Close|(% style="width:689px" %)Close current setting window
397 |(% style="width:155px" %)Export EXCEL|(% style="width:689px" %)Export address library to PC as excel file
398 |(% style="width:155px" %)Import EXCEL|(% style="width:689px" %)Import address library from excel file
399 |(% style="width:155px" %)Clear|(% style="width:689px" %)Delete all items in list
400 |(% style="width:155px" %)Down|(% style="width:689px" %)Move the selected item down one line;
401 |(% style="width:155px" %)Help|(% style="width:689px" %)Click it to open help document;
402
403 **Operating procedures for creating a new address**
404
405 (% style="text-align:center" %)
406 [[image:7.Library_html_7780dffdef1ce220.png||data-xwiki-image-style-alignment="center" height="420" width="553" class="img-thumbnail"]]
407
408 1. Click "Add" to open address edit window.
409 1. Set "Address name".
410 1. Set address.
411 1. Set PLC station number (It is not necessary setting, the user sets it according to the actual situation).
412
413 (% class="box infomessage" %)
414 (((
415 **✎Note:**
416
417 1. Address Library: it supports importing address information from Excel files. However, the following two points need to be noted:
418 1. When importing an Excel file, if the contents of a certain Name, Type, and Address are all empty, the information of the subsequent ID will not be imported.
419 1. When importing Excel files, if there is pure digital content in the imported information, you need to set the format of the table box to "text" mode. Otherwise, the text import fails or an error occurs due to incorrect information format.
420 )))
421
422 = **Mapping** =
423
424 Address mapping is to build the relationship between two different addresses. Forwarding address from source address to target address, so the value in both addresses would be same according to the predefined mapping mode. Both addresses could be from different, in this way, to make HMI processing faster.
425
426 For example: Forward "D0" to "HDW100" (length: 10), so the address D0, D1,..., D9 would be related to HDW100, HDW101, .., HDW109.
427
428 **Description**
429
430 (% style="text-align:center" %)
431 [[image:8-1AddressMapping.png||data-xwiki-image-style-alignment="center" height="673" width="659"]]
432
433 **Address type**
434
435 It is used for selecting address type in address mapping.
436
437 **Source address**
438
439 The origin address needs to be mapped to other addresses. If there is calculation, 2 source addresses are required, and the result would be saved in "target address".
440
441 **Data type: **Only word address need to set data type. If it is the address of 32-bit register, check "32-bit register".
442
443 **Calculation**
444
445 Designated mathematical relationship between two source addresses, the result will be saved in target address.
446
447 **Length**
448
449 It is used to set the length of the operation address.
450
451 **For example**
452
453 Source address is D0, target address is 40, and length is 10.
454
455 **Result**
456
457 * 40=D0
458 * 41=D1
459 * ...
460 * 48=D8
461 * 49=D8
462
463 **Mode**
464
465 It provides two modes, Read-write and read only. The value of source address would not change if target value changed after read only selected.
466
467 **Update frequency**
468
469 It provides two modes, general and read-through.
470
471 * **General: **Read data from HMI cache (Recommended)
472 * **Read-Through: **Read data directly from the device without going through the HMI cache
473
474 **Mapping**
475
476 This is the control bit for mapping one item, the default mode is mapping when OFF; If user wants to change the control condition, please check [Mapping when ON];
477
478 **Target address**
479
480 It is address used to store source address data;
481
482 **Cont. Write:**
483
484 Write address length for a single time, used for some special device addresses that need to be written continuously;
485
486 **Global mapping control**
487
488 The function and mode are similar to [Mapping], but it is used to control all mapping items. The setting screen below show;
489
490 (% style="text-align:center" %)
491 [[image:7.Library_html_a04eddcc1d2f2f14.png||data-xwiki-image-style-alignment="center" height="199" width="419" class="img-thumbnail"]]
492
493 **Buttons**
494
495 * **Clear:** Delete all settings in settings, such as [Source address], [Length], and so on.
496 * **Add:** Create a new mapping item.
497 * **Edit:** Change selected item.
498 * **Delete:** Delete selected item.
499 * **Clear list: **Delete all mapping items in list.
500 * **Close: **Close address mapping window.
501 * **Help:** Click it to open help document.
502
503 **Item List**
504
505 It lists all address mapping items.
506
507 (% class="box infomessage" %)
508 (((
509 **✎Note:**
510
511 * Too many [Read-Through] items will cause HMI to run slowly.
512 * If there are multiple consecutive addresses, please increase the length to reduce the mapping items
513 )))
514
515 **Function description**
516
517 Address mapping is to map the source address to the destination address or the two source addresses are mapped to the destination address by some operation. The source and destination addresses can be PLC addresses or internal addresses or from different serial ports.
518
519 For example Map D0 to HDW100, the map length is 10, then the value of D0 to D9 are mapped to HDW100 to HDW109.
520
521 There are two map methods: read and write and read-only.
522
523 1. **Read and write: **If the value of source address is changed, the value of the destination address changes accordingly. After the value of the destination address is changed, the value of the corresponding source address does not change. Four some four operations or logical operations, they can only be selected in this way.
524 1. **Read-only: **If the value of the source address is changed, the value of the destination address changes accordingly. After the value of the destination address is changed, the value of the corresponding source address changes too. Four some four operations or logical operations, they can not be selected in this way.
525
526 There can be two sets of source addresses, and mapping the results to the destination address through operations (four operations or logical operations). For example, source address 1 is HDW100, source address 2 is HDW200, Map to destination address HDW300 by addition and the map length is 10.
527
528 * HDW300=HDW100+HDW200
529 * HDW301=HDW101+HDW201
530 * HDW309=HDW109+HDW209
531
532 The user could use the bit address to control whether to enable the mapping function. There is one-bit address for bits and one for words. Each mapping block also has a bit address. Bit address mapping and word address mapping, there are controlled by their own global bit addresses. Each mapping block relationship can also have its own control address, but the global control bit address has a high priority.
533
534 (% class="box infomessage" %)
535 (((
536 **✎Note:**
537
538 * Some of four operations do not have inverse operations such as trigonometric function, shift, remainder, and so on. They can only be read-only.
539 ** For example: If HDW100 is divided by HDW200, and the value is mapped to HDW300. When the value of HDW300 changes, the value of HDW100 will not change. Because you can't calculate what the HDW100 value should be.
540 * The maximum length of each mapping block is 2048.
541 * If there is no bit address to control the mapping, the mapping is enabled by default. If you set the bit address, the mapping is disabled when the value of the bit address is 1 and it is enabled when the value of the bit address is 0. If you select "control on closed state", the result is opposite.
542 * Update frequency refers to the update frequency of reading device data. The default is 0.
543 ** Normal read speed is 0, read-through value is 1, and fast read value is 2. There is no need to fill in the data type in address mapping. The selection of "32-bit register" is special for some PLC whose address interval is 1 in 32 bits. You don't have to choose it.
544 )))
545
546 = String table[[image:1.png]] =
547
548 A collection entered by the user in advance, contents of table can be referenced by text object. The string table support eight languages at max.
549
550 Click on the String table in "Library" on the upper left corner of the software, as shown in the following figure:
551
552 (% style="text-align:center" %)
553 [[image:1698817091225-789.2.jpg]]
554
555 (% style="text-align:center" %)
556 [[image:1698817149937-418.jpg]]
557
558 **String table size:**
559
560 ① i series, ie series, 3000ig series, General series 3000: The total number of text cannot exceed 8000, or the total size of all string tables does not exceed 1M.
561
562 ② General series 8000, General series 9000 and 8000ig series: The total number of texts cannot exceed 10000, or the total size of all string tables does not exceed 5M.