Wiki source code of 12

Version 1.5 by Joey on 2022/06/09 15:37

Show last authors
1 = **Contact comparison instruction** =
2
3 == **Signed 16-bit contact comparison instruction** ==
4
5 **LD £, AND £, OR £**
6
7 The BIN 16-bit data of the device specified in (s1) and the BIN 16-bit data of the device specified in (s2) are compared by normal open contact processing.
8
9 LD£: Normally open contact comparison instruction
10
11 AND£: Normally open contact series connection comparison instruction
12
13 OR£: Normally open contact parallel connection comparison instruction
14
15 **Ladder diagram**
16
17 (% style="text-align:center" %)
18 [[image:07-5 Basic instructions_html_63210db6b7e1512f.png]]
19
20 (You can enter "=", "<>", ">", "<", ">=", "<=" in "£")
21
22 **Content, range and data type**
23
24 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
25 |(s1)|Comparison data or device storing comparison data|-32768 to 32767|Signed BIN 16 bit|ANY16_S
26 |(s2)|Comparison data or device storing comparison data|-32768 to 32767|Signed BIN 16 bit|ANY16_S
27
28 **Device used**
29
30 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="11" %)**Devices**|(((
31 **Offset modification**
32 )))|(((
33 **Pulse extension**
34 )))
35 |**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**K**|**H**|**[D]**|**XXP**
36 |LD=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
37 |LD>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
38 |LD<|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
39 |LD>=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
40 |LD<=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
41 |LD<>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
42 |AND=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
43 |AND>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
44 |AND<|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
45 |AND>=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
46 |AND<=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
47 |AND<>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
48 |OR=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
49 |OR>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
50 |OR<|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
51 |OR>=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
52 |OR<=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
53 |OR<>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|
54
55 **Features**
56
57 The BIN 16-bit data of the device specified in (s1) and the BIN 16-bit data of the device specified in (s2) are compared by normal open contact processing.
58
59 The comparison operation result of each instruction is shown below.
60
61 |**Instruction Sign**|**Condition**|**Comparison operation result**|**Instruction Sign**|**Condition**|**Comparison operation result**
62 |==|(s1)=(s2)|(% rowspan="6" %)On state|==|(s1)≠(s2)|(% rowspan="6" %)Non-conduction state
63 |<>|(s1)≠(s2)|<>|(s1)=(s2)
64 |>|(s1)>(s2)|>|(s1)≤(s2)
65 |<|(s1)<(s2)|<|(s1)≥(s2)
66 |>=|(s1)≥(s2)|>=|(s1)<(s2)
67 |<=|(s1)≤(s2)|<=|(s1)>(s2)
68
69 **Error code**
70
71 |**Error code**|**Content**
72 |4085H|(s) read address exceeds the device range
73
74 **Example**
75
76 (((
77 (1) LD£ instruction:
78
79 (% style="text-align:center" %)
80 [[image:07-5 Basic instructions_html_1309199eccc7134.png]]
81 )))
82
83 When the current value of counter C10 is 200, Y10 is set
84
85 When the content of D200 is above -29, and X1 is ON, Y11 is set
86
87 (2) AND£ instruction:
88
89 (% style="text-align:center" %)
90 [[image:07-5 Basic instructions_html_1c966f74b0bd808e.png]]
91
92 (((
93 When X0 is ON, or when the current value of counter C10 is 200, Y10 is set
94
95 When X1 is OFF, and the content of data counter D0 is not -10, Y11 is set
96
97
98 )))
99
100 (3) OR£ instruction:
101
102 (% style="text-align:center" %)
103 [[image:07-5 Basic instructions_html_8b000809015ea436.png]]
104
105 (((
106 When X1 is ON, or when the current value of counter C10 is 200, Y0 is set
107
108 When X2 and M30 are ON, or the content of register D100 is K10000 and above, M60 is set
109 )))
110
111 == **Signed 32-bit contact comparison instruction** ==
112
113 **LDD £, ANDD £, ORD £**
114
115 The BIN 32-bit data of the device specified in (s1) and the BIN 32-bit data of the device specified in (s2) are compared by normal open contact processing.
116
117 LDD£: Normally open contact comparison command
118
119 ANDD£: Normally open contact series link comparison instruction
120
121 ORD£: Normally open contact parallel link comparison instruction
122
123 **Ladder diagram**
124
125 (% style="text-align:center" %)
126 [[image:07-5 Basic instructions_html_63210db6b7e1512f.png]]
127
128 “=”, “<>”, “>”, “<”, “>=”, “<=” can be input in “£”
129
130 **Content, range and data type**
131
132 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
133 |(s1)|Comparison data or device storing comparison data|-2147483648 to 2147483647|Signed BIN 32 bit|ANY32_S
134 |(s2)|Comparison data or device storing comparison data|-2147483648 to 2147483647|Signed BIN 32 bit|ANY32_S
135
136 **Device used**
137
138 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="13" %)**Devices**|(((
139 **Offset modification**
140 )))|(((
141 **Pulse extension**
142 )))
143 |**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**[D]**|**XXP**
144 |LDD=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
145 |LDD>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
146 |LDD<|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
147 |LDD>=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
148 |LDD<=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
149 |LDD<>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
150 |ANDD=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
151 |ANDD>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
152 |ANDD<|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
153 |ANDD>=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
154 |ANDD<=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
155 |ANDD<>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
156 |ORD=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
157 |ORD>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
158 |ORD<|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
159 |ORD>=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
160 |ORD<=|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
161 |ORD<>|s1, s2|●|●|●|●|●|●|●|●|●|●|●|●|●|●|
162
163 **Features**
164
165 The BIN 32-bit data of the device specified in (s1) and the BIN 32-bit data of the device specified in (s2) are compared by normal open contact processing.
166
167 The comparison operation result of each instruction is shown below.
168
169 |**Instruction Sign**|**Condition**|**Comparison operation result**|**Instruction Sign**|**Condition**|**Comparison operation result**
170 |==|(s1)=(s2)|(% rowspan="6" %)On state|==|(s1)≠(s2)|(% rowspan="6" %)Non-conduction state
171 |<>|(s1)≠(s2)|<>|(s1)=(s2)
172 |>|(s1)>(s2)|>|(s1)≤(s2)
173 |<|(s1)<(s2)|<|(s1)≥(s2)
174 |>=|(s1)≥(s2)|>=|(s1)<(s2)
175 |<=|(s1)≤(s2)|<=|(s1)>(s2)
176
177 **Error code**
178
179 |**Error code**|**Content**
180 |4085H|(S) read address exceeds the device range
181
182 **Example**
183
184 (1) LDD£ instruction:
185
186 (% style="text-align:center" %)
187 [[image:07-5 Basic instructions_html_8acf0d489297c561.png]]
188
189 When the data of LC10 is 200000, Y10 is set, otherwise Y10 is reset.
190
191 When the 32-bit data composed of D201 and D200 exceeds -5000, and X1 is ON, Y11 is turned ON.
192
193 (2) ANDD£ instruction:
194
195 (% style="text-align:center" %)
196 [[image:07-5 Basic instructions_html_38be93eec0ced6c.png]]
197
198 When X0 is ON and the value of LC10 is 200000, Y10 is set, otherwise it is reset.
199
200 When X1 is OFF and the 32-bit data composed of D1 and D0 is not equal to K-50000, Y11 is set.
201
202 (3) ORD£ instruction:
203
204 (% style="text-align:center" %)
205 [[image:07-5 Basic instructions_html_8ebfc7b0562cf370.png]]
206
207 When X1 is ON, or the data of LC10 is equal to the data of LC10 is equal to 200000, Y0 is set.
208
209 When X2 and M30 are set, or the double word data composed of D101 and D100 is greater than or equal to 100000, M60 is set.
210
211 == **Single precision real number contact comparison instruction** ==
212
213 **LDE £, ANDE £, ORE £**
214
215 The single precision real number of the device specified in (s1) and the single precision real number of the device specified in (s2) are compared by normal open contact processing.
216
217 LDE£: Normally open contact comparison command
218
219 ANDE£: Normally open contact series link comparison instruction
220
221 ORE£: Normally open contact parallel link comparison instruction
222
223 **Ladder diagram**
224
225 (% style="text-align:center" %)
226 [[image:07-5 Basic instructions_html_6ac28f30e24ad296.png||height="352" width="550"]]
227
228 “=”, “<>”, “>”, “<”, “>=”, “<=” can be input in “£”
229
230 **Content, range and data type**
231
232 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
233 |(s1)|Comparison data or the device start number storing the comparison data|0, 2^^-126^^ ≤~|(s)~|< 2^^128^^|Single precision real number|ANYREAL_32
234 |(s2)|Comparison data or the device start number storing the comparison data|0, 2^^-126^^ ≤~|(s)~|< 2^^128^^|Single precision real number|ANYREAL_32
235
236 **Device used**
237
238 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="8" %)**Devices**|(((
239 **Offset modification**
240 )))|(((
241 **Pulse extension**
242 )))
243 |**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**E**|**[D]**|**XXP**
244 |LDE=|s1, s2|●|●|●|●|●|●|●|●|●|
245 |LDE>|s1, s2|●|●|●|●|●|●|●|●|●|
246 |LDE<|s1, s2|●|●|●|●|●|●|●|●|●|
247 |LDE>=|s1, s2|●|●|●|●|●|●|●|●|●|
248 |LDE<=|s1, s2|●|●|●|●|●|●|●|●|●|
249 |LDE<>|s1, s2|●|●|●|●|●|●|●|●|●|
250 |ANDE=|s1, s2|●|●|●|●|●|●|●|●|●|
251 |ANDE>|s1, s2|●|●|●|●|●|●|●|●|●|
252 |ANDE<|s1, s2|●|●|●|●|●|●|●|●|●|
253 |ANDE>=|s1, s2|●|●|●|●|●|●|●|●|●|
254 |ANDE<=|s1, s2|●|●|●|●|●|●|●|●|●|
255 |ANDE<>|s1, s2|●|●|●|●|●|●|●|●|●|
256 |ORE=|s1, s2|●|●|●|●|●|●|●|●|●|
257 |ORD>|s1, s2|●|●|●|●|●|●|●|●|●|
258 |ORE<|s1, s2|●|●|●|●|●|●|●|●|●|
259 |ORE>=|s1, s2|●|●|●|●|●|●|●|●|●|
260 |ORE<=|s1, s2|●|●|●|●|●|●|●|●|●|
261 |ORE<>|s1, s2|●|●|●|●|●|●|●|●|●|
262
263 **Features**
264
265 The single precision real number of the device specified in (s1) and the single precision real number of the device specified in (s2) are compared by normal open contact processing.
266
267 The comparison operation result of each instruction is shown below.
268
269 |**Instruction Sign**|**Condition**|**Comparison operation result**|**Instruction Sign**|**Condition**|**Comparison operation result**
270 |E=|(s1)=(s2)|(% rowspan="6" %)On state|E=|(s1)≠(s2)|(% rowspan="6" %)Non-conduction state
271 |E<>|(s1)≠(s2)|E<>|(s1)=(s2)
272 |E>|(s1)>(s2)|E>|(s1)≤(s2)
273 |E<|(s1)<(s2)|E<|(s1)≥(s2)
274 |E>=|(s1)≥(s2)|E>=|(s1)<(s2)
275 |E<=|(s1)≤(s2)|E<=|(s1)>(s2)
276
277 **Error code**
278
279 |**Error code**|**Content**
280 |4084H|When the content of the specified device by (s1) and (s2) is an irregular number, a non-number, or ±∞
281 |4085H|The read address of (s1) and (s2exceeds the device range
282
283 **Example**
284
285 (1) LDE£ instruction:
286
287 (% style="text-align:center" %)
288 [[image:07-5 Basic instructions_html_c4c820cf59601493.png]]
289
290 When the real number input in D0 is equal to E1.23, Y10 is ON, otherwise Y10 is OFF.
291
292 When the real number in R0 is greater than or equal to the real number in LC0, Y11 is ON, otherwise it is OFF.
293
294 If the input in D0, R0, LC0 is not a real number, it will report H4084 error.
295
296 (2) ANDE£ instruction:
297
298 (% style="text-align:center" %)
299 [[image:07-5 Basic instructions_html_7cdd2117360e179b.png]]
300
301 Only when M0 is ON and D2 real number is not equal to E1.23 and R2 real number is less than real number LC2 , Y12 is ON, otherwise all are OFF.
302
303 (3) ORE£ instruction:
304
305 (% style="text-align:center" %)
306 [[image:07-5 Basic instructions_html_3eba0bd56176441d.png]]
307
308 When the real number of R4 is less than or equal to the real number of R15, or the real number R6 is equal to the real number R20, Y13 is ON, otherwise Y13 is OFF.
309
310 == **String comparison** ==
311
312 **LDS£、ANDS£、 ORS£**
313
314 Compare the string stored after the device number specified in (s1) with the string stored after the device number specified in (s2).
315
316 LDS£: String comparison instruction
317
318 ANDS£: String serial connection comparison instruction
319
320 ORS£: String parallel connection comparison instruction
321
322 **Ladder diagram**
323
324 (% style="text-align:center" %)
325 [[image:07-5 Basic instructions_html_5fb3b3b70645fef5.png||height="371" width="550"]]
326
327 “=” and “<>” could be entered in “£”
328
329 **Content, range and data type**
330
331 |**Parameter**|**Content**|**Range**|**Date type**|**Date type(label)**
332 |(S1)|Connection data or the device start number storing the data or the string specified directly|-|String|ANYSTRING_SINGLE
333 |(S1)|Connection data or the device start number storing the data or the string specified directly|-|String|ANYSTRING_SINGLE
334
335 **Device used**
336
337 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="9" %)**Devices**|(((
338 **Offset modification**
339 )))|(((
340 **Pulse extension**
341 )))
342 |**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**[D]**|**XXP**
343 |LDS=|s1、s2|●|●|●|●|●|●|●|●|●|●|
344 |LDS<>|s1、s2|●|●|●|●|●|●|●|●|●|●|
345 |ANDS=|s1、s2|●|●|●|●|●|●|●|●|●|●|
346 |ANDS<>|s1、s2|●|●|●|●|●|●|●|●|●|●|
347 |ORS=|s1、s2|●|●|●|●|●|●|●|●|●|●|
348 |ORS<>|s1、s2|●|●|●|●|●|●|●|●|●|●|
349
350 **Features**
351
352 • Compare the string stored after the device number specified in (s1) with the string stored after the device number specified in (s2).
353
354 • The comparison operation result of each instruction is shown below.
355
356 |**Instruction sign**|**Condition**|**Comparison operation result**|**Instruction sign**|**Condition**|**Comparison operation result**
357 |==|(s1)=(s2)|(% rowspan="2" %)On stat|==|(s1)≠(s2)|(% rowspan="2" %)Non-conduction state
358 |<>|(s1)≠(s2)|<>|(s1)=(s2)
359
360 **Error code**
361
362 |**Error code**|**Content**
363 |4085H|The read address of (s1) or (s2) exceeds the device range
364 |408AH|The length of the read string of (s1) or (s2) exceeds, and the continuous length of the string exceeds 400 characters.
365 |408BH|When (s1) or (s2) reading the string, the maximum range of the device is read but 00H is not found as the end.
366
367 **Example**
368
369 (1) LDS£ instruction:
370
371 (% style="text-align:center" %)
372 [[image:07-5 Basic instructions_html_449a071f61ff5b58.png]]
373
374 (2) ANDS£ instruction:
375
376 (% style="text-align:center" %)
377 [[image:07-5 Basic instructions_html_dd6aa995d193bdd2.png]]
378
379 (3) ORS£ instruction:
380
381 (% style="text-align:center" %)
382 [[image:07-5 Basic instructions_html_4f8fb7c94f87c58d.png]]
383
384 = **Clock operation instruction** =
385
386 == **TADD/The addition of clock data** ==
387
388 **TADD(P)**
389
390 Add the time data stored after the device number specified in (s1) and the time data stored after the device number specified in (s2), and store the result of the addition operation after the device number specified in (d) .
391
392 -[TADD (s1) (s2) (d)]
393
394 **Content, range and data type**
395
396 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
397 |(s1)|The device start number that stores the added time data|-|Signed BIN 16 bit|(((
398 ANY16_ARRAY
399
400 (number of elements: 3)
401 )))
402 |(s2)|The device start number that stores the addition operation time (time) data|-|Signed BIN 16 bit|(((
403 ANY16_ARRAY
404
405 (number of elements: 3)
406 )))
407 |(d)|The device start number that stores the time (time) data of the addition operation result|-|Signed BIN 16 bit|(((
408 ANY16_ARRAY
409
410 (number of elements: 3)
411 )))
412
413 **Device used**
414
415 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="5" %)**Devices**|(((
416 **Offset modification**
417 )))|(((
418 **Pulse extension**
419 )))
420 |**T**|**C**|**D**|**R**|**SD**|**[D]**|**XXP**
421 |(% rowspan="3" %)TADD|Parameter 1|●|●|●|●|●|●|●
422 |Parameter 2|●|●|●|●|●|●|●
423 |Parameter 3|●|●|●|●|●|●|●
424
425 **Features**
426
427 Add the time data specified in (s1) and the time data specified in (s2), and store the result of the addition in the device number specified in (d) or later.
428
429 (% style="text-align:center" %)
430 [[image:07-5 Basic instructions_html_37222a6e282347f9.png||height="79" width="750"]]
431
432 **Example**
433
434 When 6:32:40 and 7:48:10 are added together
435
436 (% style="text-align:center" %)
437 [[image:07-5 Basic instructions_html_90138670198ab422.png||height="94" width="750"]]
438
439 When the calculation result time exceeds 24 o'clock, the carry flag turns ON, and the value after 24 hours is subtracted becomes the calculation result. For example, when 14:20:30 and 20:20:20 are added, the result is not 34:40:50, but 10:40:50.
440
441 (% style="text-align:center" %)
442 [[image:07-5 Basic instructions_html_bac419ce2dc0dc2.png||height="91" width="750"]]
443
444 When the calculation result is 0 (0 hour, 0 minute, 0 second), the zero flag turns on.
445
446 When 23:59:59 and 1 second are added, the result of the calculation is 0:00:00, and the carry flag and zero flag are turned on.
447
448 Related device are as follows:
449
450 |**Devices**|**Name**|**Content**
451 |SM151|Carry|It is ON when the result of the TADD(P) instruction exceeds the maximum clock data value of 23:59:59
452 |SM153|Zero|It is ON when the result of the TADD(P) instruction is 0:00:00
453
454 ✎**Note:**
455
456 The devices specified in (s1), (s2), (d) occupy 3 points respectively. Be careful not to overlap with the device used for machine control.
457
458 When using the clock data time (hour, minute, second) of the built-in real-time clock of the CPU module, use the TRD(P) instruction to read the value of the special register and assign the word device to each operand.
459
460 **Error code**
461
462 |**Error code**|**Content**
463 |4085H|When reading the specified device range exceeds the corresponding device range
464 |4086H|When writing the specified device range exceeds the corresponding device range
465 |4084H|(((
466 When the values specified in (s1) and (s2) are other than 0 to 23
467
468 When the values specified in (s1)+1, (s2)+1, (s1)+2 and (s2)+2 are other than 0 to 59
469 )))
470
471 **Example**
472
473 (% style="text-align:center" %)
474 [[image:07-5 Basic instructions_html_4f75eedee7172bbb.png||height="35" width="349"]]
475
476 Set D0 time to 16:30:00 and D10 time to 4:30:0
477
478 (% style="text-align:center" %)
479 [[image:07-5 Basic instructions_html_c64e0faf2af172f8.png]]
480
481 (% style="text-align:center" %)
482 [[image:07-5 Basic instructions_html_66e3a2eadeb2ecbb.png]]
483
484 After the coil is turned on, the D20 time is 21:0:0
485
486 (% style="text-align:center" %)
487 [[image:07-5 Basic instructions_html_a9b235835aa41200.png]]
488
489 == **TSUB/The subtraction of clock data** ==
490
491 **TSUB(P)**
492
493 Subtract the time data stored after the device number specified in (s1) and the time data stored after the device number specified in (s2), and store the subtraction result in the device number specified in (d) or later .
494
495 -[TSUB (s1) (s2) (d)]
496
497 **Content, range and data type**
498
499 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
500 |(s1)|The device start number that stores the subtracted time data|-|Signed BIN 16 bit|(((
501 ANY16_ARRAY
502
503 (number of elements: 3)
504 )))
505 |(s2)|The device start number that stores the subtraction operation time (time) data|-|Signed BIN 16 bit|(((
506 ANY16_ARRAY
507
508 (number of elements: 3)
509 )))
510 |(d)|The device start number that stores the time (time) data of the subtraction result|-|Signed BIN 16 bit|(((
511 ANY16_ARRAY
512
513 (number of elements: 3)
514 )))
515
516 **Device used**
517
518 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="5" %)**Devices**|(((
519 **Offset modification**
520 )))|(((
521 **Pulse extension**
522 )))
523 |**T**|**C**|**D**|**R**|**SD**|**[D]**|**XXP**
524 |(% rowspan="3" %)TSUB|Parameter 1|●|●|●|●|●|●|●
525 |Parameter 2|●|●|●|●|●|●|●
526 |Parameter 3|●|●|●|●|●|●|●
527
528 **Features**
529
530 Subtract the time data specified in (s1) and the time data specified in (s2), and store the subtraction result in the device number specified in (d) or later.
531
532 (% style="text-align:center" %)
533 [[image:07-5 Basic instructions_html_5a93455e4cd8a27.png]]
534
535 **Example**
536
537 When subtracting 10:40:20 and 3:50:10
538
539 (% style="text-align:center" %)
540 [[image:07-5 Basic instructions_html_2473f03fc493780c.png]]
541
542 When the calculation result time is a negative number, the borrow flag turns on and the data +24 is the calculation result. For example, in the case of subtracting 4:50:32 and 10:42:12, the result is not -6:8:20, but 18:8:20.
543
544 (% style="text-align:center" %)
545 [[image:07-5 Basic instructions_html_24b998b4c3c4ec73.png]]
546
547 When the calculation result is 0 (0 hour, 0 minute, 0 second), the zero flag turns on.
548
549 Related device are as follows:
550
551 |**Devices**|**Name**|**Content**
552 |SM152|Borrow|It is ON when the result of the TSUB(P) instruction is less than 0:00:00
553 |SM153|Zero|It is ON when the result of the TSUB(P) instruction is at the time of 0:00:00:00
554
555 ✎**Note:**
556
557 • The devices specified in (s1), (s2), and (d) occupy 3 points respectively. Be careful not to overlap with the device used for machine control.
558
559 • When using the clock data time (hour, minute, second) of the built-in real-time clock of the CPU module, use the TRD(P) instruction to read the value of the special register and assign the word device to each operand.
560
561 **Error code**
562
563 |**Error code**|**Content**
564 |4085H|When reading the specified device range exceeds the corresponding device range
565 |4086H|When writing the specified device range exceeds the corresponding device range
566 |4084H|(((
567 When the values specified in (s1) and (s2) are other than 0 to 23
568
569 When the values specified in (s1)+1, (s2)+1, (s1)+2 and (s2)+2 are other than 0 to 59
570 )))
571
572 **Example**
573
574 (% style="text-align:center" %)
575 [[image:07-5 Basic instructions_html_e3a5d4793d3ccd2d.png||height="36" width="372"]]
576
577 Set D0 time to 16:30:00 and D10 time to 4:30:0
578
579 (% style="text-align:center" %)
580 [[image:07-5 Basic instructions_html_c64e0faf2af172f8.png]]
581
582 (% style="text-align:center" %)
583 [[image:07-5 Basic instructions_html_66e3a2eadeb2ecbb.png]]
584
585 After the coil is turned on, the D20 time is 12:00:00
586
587 (% style="text-align:center" %)
588 [[image:07-5 Basic instructions_html_8f93ea19ba10652b.png]]
589
590 **TRD/Clock data reading**
591
592 **TRD(P)**
593
594 Read the clock data of the built-in real-time clock of the CPU module.
595
596 -[TRD (d)]
597
598 **Content, range and data type**
599
600 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
601 |(d)|Read destination and start device number of clock data|-|Signed BIN 16 bit|(((
602 ANY16_ARRAY
603
604 (number of elements: 7)
605 )))
606
607 **Device used**
608
609 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="4" %)**Devices**|(((
610 **Offset modification**
611 )))|(((
612 **Pulse extension**
613 )))
614 |**T**|**C**|**D**|**R**|**[D]**|**XXP**
615 |TRD|Parameter 1|●|●|●|●|●|●
616
617 **Features**
618
619 Read the clock data (SD100 to SD106) of the real-time clock built into the CPU module into (d) to (d)+6 in the following format.
620
621 |**Parameter**|**Element**|**Project**|**Clock data**| |**Element**|**Project**
622 |(% rowspan="7" %)Special register|SD105|Year (Gregorian)|2000 to 2099|→|(d)|Year (Gregorian)
623 |SD104|Month|1 to 12|→|(d)+1|Month
624 |SD103|Day|1 to 31|→|(d)+2|Day
625 |SD102|Hour|0 to 23|→|(d)+3|Hour
626 |SD101|Minute|0 to 59|→|(d)+4|Minute
627 |SD100|Seconds|0 to 59|→|(d)+5|Seconds
628 |SD106|Week|0 (Sun) to 6 (Sat)|→|(d)+6|Week
629
630 • The related devices are shown below. The clock data of these special registers are updated through END processing.
631
632 |**Devices**|**Content**
633 |SD100|The second data of the clock data is stored in BIN code.
634 |SD101|The sub-data of the clock data is stored in BIN code.
635 |SD102|Time data of clock data is stored in BIN code.
636 |SD103|The daily data of the clock data is stored in BIN code.
637 |SD104|The monthly data of the clock data is stored in BIN code.
638 |SD105|The year data of the clock data is stored in a 4-digit BIN code of the Gregorian calendar.
639 |SD106|The week data of the clock data is stored in BIN code. (0: day, 1: one, ..., 6: six) are stored in BIN code.
640
641 ✎**Note:**
642
643 • The device specified in (d) occupies 7 points. Be careful not to overlap with the device used for machine control.
644
645 **Error code**
646
647 |**Error code**|**Content**
648 |4086H|When reading the specified device range exceeds the corresponding device range
649
650 **Example**
651
652 (% style="text-align:center" %)
653 [[image:07-5 Basic instructions_html_b81c1991fec5b4b1.png||height="68" width="250"]]
654
655 After the M0 coil is turned on, the current date and time are read as 2020-2-19 13:10:38 Wednesday
656
657 (% style="text-align:center" %)
658 [[image:07-5 Basic instructions_html_fe82ecd18ebfd787.png||height="48" width="602"]]
659
660 == **TWR/Clock data writing** ==
661
662 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **TWR(P)**
663
664 Write the clock data of the built-in real-time clock of the CPU module.
665
666 -[TWR (s)]
667
668 **Content, range and data type**
669
670 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
671 |(s)|Clock data write source, start device number|-|Signed BIN 16 bit|ANY16_ARRAY (number of elements: 7)
672
673 **Device used**
674
675 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|(((
676 **Offset**
677
678 **modification**
679 )))|(((
680 **Pulse**
681
682 **extension**
683 )))
684 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
685 |TWR|Parameter 1| | | | | | | | | | | | | | |●|●|●|●| | | | | | |●|●
686
687 **Features**
688
689 Write the set clock data (s) to (s)+6 to the clock data (SD100 to SD106) of the real-time clock built into the CPU module.
690
691 |(% colspan="3" %)**Set data at all times**|(% rowspan="2" %) |(% colspan="2" %)**Special register**
692 |**Element**|**Project**|**Clock data**|**Element**|**Project**
693 |(s)|Year (Gregorian)|2000 to 2099 or 0 to 99|→|SD105|Year (Gregorian)
694 |(s)+1|Month|1 to 12|→|SD104|Month
695 |(s)+2|Day|1 to 31|→|SD103|Day
696 |(s)+3|Hour|0 to 23|→|SD102|Hour
697 |(s)+4|Minute|0 to 59|→|SD101|Minute
698 |(s)+5|Seconds|0 to 59|→|SD100|Seconds
699 |(s)+6|Week|0 (Sun) to 6 (Sat)|→|SD106|Week
700
701 • If the TWR(P) instruction is executed, the clock data of the real-time clock is changed immediately. Therefore, the clock data after a few minutes should be transferred to the set clock data (s) to (s)+6 in advance, and the instruction will be executed when the correct time is reached.
702
703 • If the year in (s) is in the range of 0 to 99, it will be automatically treated as 2000 to 2099.
704
705 • When a value indicating an impossible time is set, the clock data will not be updated. Set the correct clock data and write again.
706
707 • The day of the week (SD100) is automatically corrected.
708
709 • The related devices are shown below.
710
711 |**Devices**|**Content**
712 |SD100|The second data of the clock data is stored in BIN code.
713 |SD101|The sub-data of the clock data is stored in BIN code.
714 |SD102|Time data of clock data is stored in BIN code.
715 |SD103|The daily data of the clock data is stored in BIN code.
716 |SD104|The monthly data of the clock data is stored in BIN code.
717 |SD105|The year data of the clock data is stored in a 4-digit BIN code of the Gregorian calendar.
718 |SD106|The week data of the clock data is stored in BIN code. (0: day, 1: one, ..., 6: six) are stored in BIN code.
719
720 ✎**Note**
721
722 The device specified in (s) occupies 7 points. Be careful not to overlap with the device used for machine control.
723
724 **Error code**
725
726 |**Error code**|**Content**
727 |4085H|When reading the specified device range exceeds the corresponding device range
728
729 **Example**
730
731 Set D0 date and time to 2020-2-19 12:36:00 in advance
732
733 [[image:07-5 Basic instructions_html_994c66d1a4cbd45f.png]]
734
735 At the moment when the time 12:36:00 arrives, turn on the M0 coil and write the time.
736
737 [[image:07-5 Basic instructions_html_bf3e906ee5265598.png]]
738
739 {{id name="_Toc5357"/}}{{id name="_Toc6196"/}}[[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **HTOS/16-bit data conversion of time data (hour, minute, second → second)**
740
741 **HTOS(P)**
742
743 Convert the time data stored after the device number specified in (s) into seconds and store the conversion result as BIN 16-bit data in the device specified in (d).
744
745 -[HTOS (s) (d)]
746
747 **Content, range and data type**
748
749 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
750 |(s)|The device start number that stores the data of the subtracted time|-|Signed BIN 16 bit|ANY16_ARRAY (number of elements: 3)
751 |(d)|The device start number that stores the converted clock data|-|Signed BIN 16 bit|ANY16
752
753 **Device used**
754
755 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
756 **Pulse**
757
758 **extension**
759 )))
760 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
761 |(% rowspan="2" %)HTOS|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | | | | |●|●
762 |Parameter 2| | | | | | | | | | | |●|●|●|●|●|●|●|●| | | | | |●|●
763
764 **Features**
765
766 Convert the time data stored after the device number specified in (s) into seconds and store the conversion result in the device specified in (d).
767
768 [[image:07-5 Basic instructions_html_a84b7741fd5bef2f.png]]
769
770 **Example**
771
772 When 4 hours, 29 minutes and 31 seconds are specified in (s)
773
774 [[image:07-5 Basic instructions_html_5effb7bc9b8e5cf7.png]]
775
776 **Error code**
777
778 |**Error code**|**Content**
779 |4085H|When reading the specified device range exceeds the corresponding device range
780 |4086H|When writing the specified device range exceeds the corresponding device range
781 |4084H|(((
782 {{id name="OLE_LINK348"/}}When the calculation result is not in the range of 0 to 32767
783
784 When the value specified in (s) is not in the range of 0 to 9
785
786 When the value specified in (s)+1 and (s)+2 is not in the range of 0 to 59
787 )))
788
789 **Example**
790
791 [[image:07-5 Basic instructions_html_e23e38c4ba4c34bb.png]]
792
793 D0 time is set to 5:36:53
794
795 [[image:07-5 Basic instructions_html_2866a121e5ca5713.png]]
796
797 The time of D10 after the M0 coil is turned on is as below.
798
799 [[image:07-5 Basic instructions_html_1dd6c5de05890797.png]]
800
801 {{id name="_Toc13431"/}}{{id name="_Toc5278"/}}**DHTOS/32-bit data conversion of time data (hour, minute, second → second)**
802
803 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **DHTOS(P)**
804
805 Convert the time data stored after the device number specified in (s) into seconds and store the conversion result as BIN 32-bit data in the device specified in (d).
806
807 -[DHTOS (s) (d)]
808
809 **Content, range and data type**
810
811 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
812 |(s)|The device start number that stores the data of the subtracted time|-|Signed BIN 16 bit|ANY16_ARRAY (number of elements: 3)
813 |(d)|The device start number that stores the converted clock data|-|Signed BIN 32 bit|ANY32
814
815 **Device used**
816
817 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|(((
818 **Offset**
819
820 **modification**
821 )))|(((
822 **Pulse**
823
824 **extension**
825 )))
826 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
827 |(% rowspan="2" %)DHTOS|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | | | | |●|●
828 |Parameter 2| | | | | | | | | | | |●|●|●|●|●|●|●|●| | | | | |●|●
829
830 **Features**
831
832 Convert the time data stored after the device number specified in (s) into seconds and store the conversion result in the device specified in (d).
833
834 [[image:07-5 Basic instructions_html_f4be08508575ea01.png]]
835
836 **Example**
837
838 When 35 hours, 10 minutes and 58 seconds are specified in (s)
839
840 [[image:07-5 Basic instructions_html_5b9ad230ed5e1fd0.png]]
841
842 **Error code**
843
844 |**Error code**|**Content**
845 |4085H|When reading the specified device range exceeds the corresponding device range
846 |4086H|When writing the specified device range exceeds the corresponding device range
847 |4084H|(((
848 When the calculation result is not in the range of 0 to 32767
849
850 When the value specified in (s)+1 and (s)+2 is not in the range of 0 to 59
851 )))
852
853 **Example**
854
855 [[image:07-5 Basic instructions_html_ae8ab4379e8bdb91.png]]
856
857 D0 time is set to 15:33:24
858
859 [[image:07-5 Basic instructions_html_57a15d9e1045e93e.png]]
860
861 The second of D10 after the M0 coil is turned on is
862
863 [[image:07-5 Basic instructions_html_194e906b1dc12078.png]]
864
865 {{id name="_Ref22686"/}}{{id name="_Toc11231"/}}{{id name="_Toc7401"/}}[[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **HOUR/Hour measuring 16-bit**
866
867 **HOUR(P)**
868
869 The time for the input contact to be ON is measured in units of one hour.C
870
871 -[HOUR (s) (d1) (d2)]
872
873 **Content, range and data type**
874
875 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
876 |(s)|(((
877 The time when the alarm (d2) is turned ON
878
879 (set by one hour)
880 )))|K0 to K32767|Signed BIN 16 bit|ANY16
881 |(d1)|Device that stores the current value of measurement (specified data register for power failure retention)|-|Unsigned BIN 16 bit|(((
882 ANY16_ARRAY
883
884 (Number of elements: 2)
885 )))
886 |(d2)|Device that turns ON when the time limit expires (alarm output)|-|Bit|ANY_BOOL
887
888 **Device used**
889
890 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|(((
891 **Offset**
892
893 **modification**
894 )))|(((
895 **Pulse**
896
897 **extension**
898 )))
899 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
900 |(% rowspan="3" %)HOUR|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
901 |Parameter 2| | | | | | | | | | | | | | | | |●|●|●| | | | | |●|●
902 |Parameter 3| |●|●|●|●| | | | |●| | | | | | | | | | | | | | |●|●
903
904 **Features**
905
906 The input contact ON time is measured in units of 1 hour. When the cumulative ON time exceeds the time (BIN 16-bit data) specified in (s), the device specified in (d2) is turned on .
907
908 • In (s), set the time until the alarm (d2) turns ON in units of 1 hour.
909
910 • (d1) stores the current measured value in units of 1 hour.
911
912 • If the median value of (d1) exceeds 32767, it will be modified to 32767.
913
914 • (d1)+1 stores the current measured value (in units of 1 second) that is less than 1 hour.
915
916 • (d2) turns on when the current value (d1) exceeds the time specified in (s).
917
918 • In order to continue to use the current value data even after the power of the CPU module is turned off, specify the data register for power failure retention to (d1). If you use general-purpose data registers, the current value data will be cleared by powering off the CPU module and STOP→RUN operations.
919
920 • After the alarm output specified in (d2) turns ON, measurement will continue.
921
922 • The measurement stops when the current value reaches the 16-bit maximum. To continue the measurement, clear the current value of (d1) to (d1)+1.
923
924 ✎**Note**
925
926 • The device specified in (d1) occupies 2 points. Be careful not to overlap with the device used for machine control.
927
928 • After the instruction stops running, the measurement stops and the output continues to be maintained.
929
930 **Error code**
931
932 |**Error code**|**Content**
933 |4085H|When reading the specified device range exceeds the corresponding device range
934 |4086H|When writing the specified device range exceeds the corresponding device range
935 |4084H|When the value of (s) is negative
936
937
938
939 **Example**
940
941 [[image:07-5 Basic instructions_html_7570f8c392470a9f.png]]
942
943 When M0 = ON, the duration of the state is accumulated, the time is recorded in D0, and the seconds less than 1 hour are recorded in D1. When the accumulated time of D0 reaches 98 hours, the Y0 output state is ON. When the timing conditions are met, after reaching the specified value (K98), the accumulated timing will continue and the reading will continue to increase; the current time value D0 reaches the maximum value of 32767 hours and D1 reaches 3599 seconds, the timing measurement will stop. The current time values D0 and D1 are cleared to 0.
944
945 {{id name="_Toc8523"/}}{{id name="_Toc9364"/}}[[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **DHOUR/Hour measuring 32 bits**
946
947 **DHOUR(P)**
948
949 The time for the input contact to be ON is measured in units of one hour.
950
951 -[DHOUR (s) (d1) (d2)]
952
953 **Content, range and data type**
954
955 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
956 |(s)|(((
957 The time when the alarm (d2) is turned ON
958
959 (set by one hour)
960 )))|0 to 2147483647|Signed BIN 32 bit|ANY32
961 |(d1)|Device that stores the current value of measurement (specified data register for power failure retention)|-|Unsigned BIN 32 bit|(((
962 ANY32_ARRAY
963
964 (Number of elements: 2)
965 )))
966 |(d2)|Device that turns ON when the time limit expires (alarm output)|-|Bit|ANY_BOOL
967
968 **Device used**
969
970 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|(((
971 **Offset**
972
973 **modification**
974 )))|(((
975 **Pulse**
976
977 **extension**
978 )))
979 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
980 |(% rowspan="3" %)DHOUR|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●|●|●| |●|●
981 |Parameter 2| | | | | | | | | | | | | | | | |●|●|●| | | | | |●|●
982 |Parameter 3| |●|●|●|●| | | | |●| | | | | | | | | | | | | | |●|●
983
984 **Features**
985
986 • The input contact ON time is measured in units of 1 hour. When the cumulative ON time exceeds the time (BIN 32-bit data) specified in (s), the device specified in (d2) is set to ON.
987
988 • In (s)+1, (s), set the time until the alarm (d2) turns ON in units of 1 hour.
989
990 • (D1)+1 and (d1) store the current value measured in units of 1 hour. ((d1)+1: high bit, (d1): low bit)
991
992 • If the median of (d1)+1 and (d1) exceeds 2147483647, it will be modified to 2147483647.
993
994 • (D1)+2 stores the current value (in units of 1 second) of the measurement that is less than 1 hour.
995
996 • (D2) turns on when the current value (d1)+1, (d1) exceeds the time specified in (s).
997
998 • In order to continue to use the current value data even after the power of the CPU module is turned off, specify the data register for power failure retention to (d1). If you use general-purpose data registers, the current value data will be cleared by powering off the CPU module and STOP→RUN operations.
999
1000 • After the alarm output specified in (d2) turns on, the measurement will continue.
1001
1002 • The measurement stops when the current value reaches the 32-bit maximum. To continue the measurement, clear the current value of (d1) to (d1)+2.
1003
1004 ✎**Note**
1005
1006 • The device specified in (d1) occupies 3 points. Be careful not to overlap with the device used for machine control.
1007
1008 • After the instruction stops running, the measurement stops and the output continues to be maintained.
1009
1010 **Error code**
1011
1012 |**Error code**|**Content**
1013 |4085H|When reading the specified device range exceeds the corresponding device range
1014 |4086H|When writing the specified device range exceeds the corresponding device range
1015 |4084H|When the value of (s) is negative
1016
1017
1018
1019 **Example**
1020
1021 [[image:07-5 Basic instructions_html_3f1ef5ecc835de30.png]]
1022
1023 When M0=ON, the duration of this state is accumulated, the time is recorded in D1, D0, and the seconds less than 1 hour are recorded in D2. When the accumulated time of D1, D0 reaches 1000 hours, the Y0 output state is ON. When the timing conditions are met, after reaching the specified value (K1000), the accumulated timing will continue, and the reading will continue to increase; the current time values D1 and D0 reach the maximum value of 2147483647 hours, and when D2 reaches 3599 seconds, the timing measurement will stop and the timing should be restarted. The current time values D0, D1, and D2 must be cleared to 0.
1024
1025 **{{id name="_Toc11629"/}}STOH/16-bit data conversion of time data (second → hour, minute, second)**
1026
1027 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **STOH(P)**
1028
1029 Convert the second 16-bit data stored in the device number specified in (s) into hour, minute, and second, and store the conversion result in the device specified in (d) and later.
1030
1031 -[STOH (s) (d)]
1032
1033 **Content, range and data type**
1034
1035 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1036 |(s)|{{id name="OLE_LINK353"/}}The device start number that stores the clock data before conversion|0 to 32767|Signed BIN 16 bit|ANY16
1037 |(d)|The device start number that stores the converted clock data|-|Signed BIN 16 bit|(((
1038 ANY16_ARRAY
1039
1040 (number of elements: 3)
1041 )))
1042
1043 **Device used**
1044
1045 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|(((
1046 **Offset**
1047
1048 **modification**
1049 )))|(((
1050 **Pulse**
1051
1052 **extension**
1053 )))
1054 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1055 |(% rowspan="2" %)STOH|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | | | | |●|●
1056 |Parameter 2| | | | | | | | | | | |●|●|●|●|●|●|●|●| | | | | |●|●
1057
1058 **Features**
1059
1060 Convert the second data stored after the device number specified in (s) into hour, minute, and second, and store the conversion result in the device specified in (d) and later.
1061
1062 [[image:07-5 Basic instructions_html_1f5f3f1d80af2a34.png]]
1063
1064 **Example**
1065
1066 When 29,011 seconds are specified in (s)
1067
1068 [[image:07-5 Basic instructions_html_682516cbf773f515.png]]
1069
1070 **Error code**
1071
1072 |**Error code**|**Content**
1073 |4085H|When reading the specified device range exceeds the corresponding device range
1074 |4086H|When writing the specified device range exceeds the corresponding device range
1075 |4084H|When the value of (s) exceeds the range
1076
1077 **Example**
1078
1079 [[image:07-5 Basic instructions_html_e783349d57adf7d2.png]]
1080
1081 Set D0 seconds to 12537
1082
1083 The hour, minute and second of D10 after the M0 coil is turned on are
1084
1085 [[image:07-5 Basic instructions_html_d3c33949e8684891.png]]
1086
1087 {{id name="_Toc10764"/}}{{id name="_Toc30243"/}}**DSTOH/32-bit data conversion of time data (second → hour, minute, second)**
1088
1089 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **DSTOH(P)**
1090
1091 Convert the second 32-bit data of second stored in the device number specified in (s) into hour, minute, and second, and store the conversion result in the device specified in (d) and later.
1092
1093 -[DSTOH (s) (d)]
1094
1095 **Content, range and data type**
1096
1097 |**Parameter**|**Content**|**Range**|**Data type**|**Data &nbsp;&nbsp;&nbsp;&nbsp;type (label)**
1098 |(s)|The device start number that stores the clock data before conversion|0 to 117964799|Signed BIN 32 bit|ANY32
1099 |(d)|The device start number that stores the converted clock data|-|Signed BIN 16 bit|(((
1100 ANY16_ARRAY
1101
1102 (number of elements: 3)
1103 )))
1104
1105 **Device used**
1106
1107 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|(((
1108 **Offset**
1109
1110 **modification**
1111 )))|(((
1112 **Pulse**
1113
1114 **extension**
1115 )))
1116 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1117 |(% rowspan="2" %)DSTOH|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | | | | |●|●
1118 |Parameter 2| | | | | | | | | | | |●|●|●|●|●|●|●|●| | | | | |●|●
1119
1120 **Features**
1121
1122 Convert the second data stored after the device number specified in (s) into hour, minute, and second, and store the conversion result in the device specified in (d) and later.
1123
1124 [[image:07-5 Basic instructions_html_cbf13fc3d10fbe61.png]]
1125
1126 **Example**
1127
1128 When 45,325 seconds is specified in (s)
1129
1130 [[image:07-5 Basic instructions_html_d6045506b13275a0.png]]
1131
1132 **Error code**
1133
1134 |**Error code**|**Content**
1135 |4085H|When reading the specified device range exceeds the corresponding device range
1136 |4086H|When writing the specified device range exceeds the corresponding device range
1137 |4084H|When the value of (s) exceeds the range
1138
1139 **Example**
1140
1141 [[image:07-5 Basic instructions_html_e7dd49d953db6da4.png]]
1142
1143 Set D0 seconds to 2152537
1144
1145 The hour, minute and second of D10 after the M0 coil is turned on are
1146
1147 [[image:07-5 Basic instructions_html_10d57bde1ac0a218.png]]
1148
1149 {{id name="_Toc2937"/}}{{id name="_Toc24209"/}}[[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **TCMP/Clock data comparison**
1150
1151 **TCMP(P)**
1152
1153 Compare the comparison time specified in (s1), (s2), (s3) with the time data specified in (s4), and turn the bit device specified in (d) ON/OFF according to their size match.
1154
1155 -[TCMP (s1) (s2) (s3) (s4) (d)]
1156
1157 **Content, range and data type**
1158
1159 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1160 |(s1)|Specify the "hour" of the comparison base time.|0 to 23|Signed BIN 16 bit|ANY16
1161 |(s2)|Specify the "minute" of the comparison base time.|0 to 59|Signed BIN 16 bit|ANY16
1162 |(s3)|Specify the "second" of the comparison base time.|0 to 59|Signed BIN 16 bit|ANY16
1163 |(s4)|Specify the "hour" of the time data (hour, minute, second).|-|Signed BIN 16 bit|ANY16_ARRAY
1164 |(d)|The bit device is turned ON/OFF according to the comparison result.|-|Bit|ANYBIT_ARRAY
1165
1166 **Device used**
1167
1168 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|(((
1169 **Offset**
1170
1171 **modification**
1172 )))|(((
1173 **Pulse**
1174
1175 **extension**
1176 )))
1177 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1178 |(% rowspan="5" %)TCMP|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
1179 |Parameter 2| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
1180 |Parameter 3| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
1181 |Parameter 4| | | | | | | | | | | | | | |●|●|●|●|●| | | | | |●|●
1182 |Parameter 5| |●|●|●|●| | | | |●| | | | | | | | | | | | | | |●|●
1183
1184 **Features**
1185
1186 Compare the time of the reference time (hour, minute, second) [(s1), (s2), (s3)] with the time data (hour, minute, second) [(s4), (s4)+1, (s4) +2] Compare the size and turn on/off the 3 points from (d) according to the result of the same size.
1187
1188 [[image:07-5 Basic instructions_html_5df7ad3057fada12.png]]
1189
1190 ✎**Note**
1191
1192 The device specified in (s4) and (d) occupies 3 points. Be careful not to overlap with the device used for machine control.
1193
1194 When using the clock data time (hour, minute, second) of the built-in real-time clock of the CPU module, use the TRD(P) instruction to read the value of the special register and assign the word device to each operand.
1195
1196 **Error code**
1197
1198 |**Error code**|**Content**
1199 |4085H|When reading the specified device range exceeds the corresponding device range
1200 |4086H|When writing the specified device range exceeds the corresponding device range
1201 |4084H|(((
1202 When the value specified in (s) and (s4) is not in the range of 0 to 23
1203
1204 {{id name="OLE_LINK355"/}}When the value specified in (s2),(s3) (s4)+1 and (s4)+2 is not in the range of 0 to 59
1205 )))
1206
1207 **Example**
1208
1209 [[image:07-5 Basic instructions_html_fcc16317cf7c0700.png]]
1210
1211 Set D10 to 1, D11 to 30, D12 to 0
1212
1213 When M0 is turned on, the time that D23 will come is 0:31:27
1214
1215 [[image:07-5 Basic instructions_html_de97dd7a612b2323.png]]
1216
1217 M10 is turned ON
1218
1219 [[image:07-5 Basic instructions_html_56e2d606adc09fd.png]]
1220
1221 {{id name="_Toc29031"/}}{{id name="_Toc22923"/}}**TZCP/Clock data bandwidth comparison**
1222
1223 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **TZCP(P)**
1224
1225 Compare the comparison time of the high and low points specified in (s1) and (s2) with the time data specified in (s3), and turn the bit device specified in (d) ON/OFF according to its size and bandwidth.
1226
1227 -[TZCP (s1) (s2) (s3) (d)]
1228
1229 **Content, range and data type**
1230
1231 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1232 |(s1)|Specify the "hour" of the lower limit time (hour, minute, second)|-|Signed BIN 16 bit|(((
1233 ANY16_ARRAY
1234
1235 (number of elements: 3)
1236 )))
1237 |(s2)|Specify the "hour" of the lower limit time (hour, minute, second)|-|Signed BIN 16 bit|(((
1238 ANY16_ARRAY
1239
1240 (number of elements: 3)
1241 )))
1242 |(s3)|Specify "hour" of time data (hour, minute, second)|-|Signed BIN 16 bit|(((
1243 ANY16_ARRAY
1244
1245 (number of elements: 3)
1246 )))
1247 |(d)|The bit device is turned ON/OFF according to the comparison result.|-|Bit|(((
1248 ANY16_ARRAY
1249
1250 (number of elements: 3)
1251 )))
1252
1253 **Device used**
1254
1255 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
1256 **Pulse**
1257
1258 **extension**
1259 )))
1260 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1261 |(% rowspan="4" %)TZCP|Parameter 1| | | | | | | | | | | | | | |●|●|●|●|●| | | | | |●|●
1262 |Parameter 2| | | | | | | | | | | | | | |●|●|●|●|●| | | | | |●|●
1263 |Parameter 3| | | | | | | | | | | | | | |●|●|●|●|●| | | | | |●|●
1264 |Parameter 4| |●|●|●|●| | | | |●| | | | | | | | | | | | | | |●|●
1265
1266 **Features**
1267
1268 Compare the comparison time of the high and low points specified in (s1) and (s2) with the time data specified in (s3), and turn the bit device specified in (d) ON/OFF according to its size and bandwidth.
1269
1270 [[image:07-5 Basic instructions_html_844291270080313d.png]]
1271
1272 ✎**Note**
1273
1274 • The devices specified in (s1), (s2), (s3), (d) occupy 3 points. Be careful not to overlap with the device used for machine control.
1275
1276 • When using the clock data time (hour, minute, second) of the built-in real-time clock of the CPU module, use the TRD(P) instruction to read the value of the special register and assign the word device to each operand.
1277
1278 • When (s1)> (s2), two of (d), (d)+1, (d)+2 are ON/OFF.
1279
1280 **Error code**
1281
1282 |**Error code**|**Content**
1283 |4085H|When reading the specified device range exceeds the corresponding device range
1284 |4086H|When writing the specified device range exceeds the corresponding device range
1285 |4084H|(((
1286 When the value specified in (s1), (s2) and (s3) is not in the range of 0 to 23
1287
1288 When the value specified in (s1)+1, (s2)+1, (s3)+1, (s1)+2, (s2)+2 and (s3)+2 is not in the range of 0 to 59
1289 )))
1290
1291 **Example**
1292
1293 [[image:07-5 Basic instructions_html_30027a2387c26c2e.png]]
1294
1295 Set D0 time to 16:30:00 and D10 time to 4:30:0
1296
1297 [[image:07-5 Basic instructions_html_c64e0faf2af172f8.png]]
1298
1299 [[image:07-5 Basic instructions_html_66e3a2eadeb2ecbb.png]]
1300
1301 After the coil is turned on, the reading time to D20 time is 8:30:00
1302
1303 [[image:07-5 Basic instructions_html_75c44dad07eaf80a.png]]
1304
1305 M0/M12 is ON
1306
1307 [[image:07-5 Basic instructions_html_f512f36261705953.png]]
1308
1309 {{id name="_Toc6129"/}}[[image:07-5 Basic instructions_html_a2e3294e01b2f206.gif]] **7.13 Data control instructions**
1310
1311 {{id name="_Toc3339"/}}{{id name="_Toc27829"/}}{{id name="_Toc9204"/}}**BAND/BIN 16-bit data dead zone control**
1312
1313 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **BAND(P)**
1314
1315 The input value (BIN 16-bit value) specified in (s3) controls the output value stored in the device specified in (d) according to the upper and lower limits of the dead zone specified in (s1) and (s2).
1316
1317 -[BAND (s1) (s2) (S3) (d)]
1318
1319 **Content, range and data type**
1320
1321 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1322 |(s1)|Lower limit of dead zone (no output zone)|-32,768 to +32,767|Signed BIN 16 bit|ANY16_S
1323 |(s2)|Upper limit of dead zone (no output zone)|-32,768 to +32,767|Signed BIN 16 bit|ANY16_S
1324 |(S3)|Input value controlled by dead zone control|-32768 to +32,767|Signed BIN 16 bit|ANY16_S
1325 |(D)|The start number of the device that stores the output value controlled by the dead zone control|-|Signed BIN 16 bit|ANY16_S
1326
1327 **Device used**
1328
1329 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|(((
1330 **Offset**
1331
1332 **modification**
1333 )))|(((
1334 **Pulse**
1335
1336 **extension**
1337 )))
1338 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1339 |(% rowspan="4" %)BAND|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
1340 |Parameter 2| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
1341 |Parameter 3| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | | | | |●|●
1342 |Parameter 4| | | | | | | | | | | |●|●|●|●|●|●|●|●| | | | | |●|●
1343
1344 **Features**
1345
1346 The input value (BIN 16-bit value) specified in (s3) controls the output value stored in the device specified in (d) according to the upper and lower limits of the dead zone specified in (s1) and (s2). The output value is controlled as follows.
1347
1348 |**Condition**|**The value stored in the output value**
1349 |When dead zone low limit (s1)> input value (s3)|Input value (s3)-Dead zone low limit (s1)
1350 |When dead zone high limit (s1) <input value (s3)|Input value (s3)- Dead zone high limit (s2)
1351 |When dead zone low limit (s1) ≤ input value (s3) ≤ dead zone low limit (s2)|0
1352
1353
1354 (((
1355 •When the output value stored in (d) is a signed BIN 16-bit value, and the operation result exceeds the range of -32768 to 32767, the situation is shown in the following example.
1356
1357 For example, when (s1) is 10 and (s3) is -32768,
1358
1359 the output value = -32768-10=8000H-000AH=7FFFH=32758.
1360
1361 [[image:07-5 Basic instructions_html_6850e21a76b813c0.png]]
1362 )))
1363
1364 **Error code**
1365
1366 |**Error code**|**Content**
1367 |4085H|When the specified device range for reading exceeds the range of the corresponding device.
1368 |4086H|When the specified device range for writing exceeds the range of the corresponding device.
1369 |4084H|When the low limit specified in (s1) is greater than the high limit specified in (s2).
1370
1371 **Example &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**
1372
1373 [[image:07-5 Basic instructions_html_c0e65cfeed403ecf.png]]
1374
1375 When X000 is ON, when D0<(-1,000), the value of ( D0)-(-1,000) is stored in (D1).
1376
1377 • When -1,000≦ D0≦1,000, 0 is stored in D1.
1378
1379 • When D0<1,000, the value of (D0)-1,000 is stored in D1.
1380
1381 {{id name="_Toc1180"/}}{{id name="_Toc21657"/}}{{id name="_Toc27323"/}}[[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **DBAND/BIN 32-bit data dead zone control**
1382
1383 **DBAND(P)**
1384
1385 The input value (BIN 32-bit value) specified in (s3) controls the output value stored in the device specified in (d) according to the upper and lower limits of the dead zone specified in (s1) and (s2).
1386
1387 -[DBAND (s1) (s2) (S3) (d)]
1388
1389 **Content, range and data type**
1390
1391 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1392 |(s1)|Dead zone low limit (no output zone)|-2,147,483,648 to +2,147,483,647|Signed BIN 32 bit|ANY32_S
1393 |(s2)|Dead zone high limit (no output zone)|-2,147,483,648 to +2,147,483,647|Signed BIN 32 bit|ANY32_S
1394 |(S3)|Input value controlled by dead zone control|-2,147,483,648 to +2,147,483,647|Signed BIN 32 bit|ANY32_S
1395 |(d)|The start number of the device that stores the output value controlled by the dead zone control|-|Signed BIN 32 bit|ANY32_S
1396
1397 **Device used**
1398
1399 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
1400 **Pulse**
1401
1402 **extension**
1403 )))
1404 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1405 |(% rowspan="4" %)DBAND|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●|●|●| |●|●
1406 |Parameter 2| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●|●|●| |●|●
1407 |Parameter 3| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●| | | |●|●
1408 |Parameter 4| | | | | | | | | | | |●|●|●|●|●|●|●|●|●|●| | | |●|●
1409
1410 **Features**
1411
1412 The input value (BIN 32-bit value) specified in (s3) controls the output value stored in the device specified in (d) according to the upper and lower limits of the dead zone specified in (s1) and (s2). The output value is controlled as follows.
1413
1414 |**Condition**|**The value stored in the output value**
1415 |When dead zone low limit ((s1), (s1)+1)> input value ((s3), (s3)+1)|{{id name="OLE_LINK42"/}}Input value ((s3), (s3)+1)-dead zone low limit ((s1), (s1)+1)
1416 |When dead zone high limit ((s1), (s1)+1) <input value ((s3), (s3)+1)|{{id name="OLE_LINK357"/}}Input value ((s3), (s3)+1)-dead zone high limit ((s2), (s2)+1)
1417 |When dead zone low limit ((s1), (s1)+1) ≤ input value ((s3), (s3)+1) ≤ dead zone high limit ((s2), (s2)+1)|0
1418
1419
1420 (((
1421 • When the output value stored in (d) is a signed BIN 32-bit value, and the operation result exceeds the range of -2,147,483,648 to 2,147,483,647, the situation is as the following example. For example,** &nbsp;**When (s1) and (s1)+1 are 1000, (s3) and (s3)+1 are -2,147,483,648, then the output value=
1422
1423 -2,147,483,648-1000=80000000H-000003E8H=7FFFFC18H=2,147,482,648.
1424
1425 [[image:07-5 Basic instructions_html_e0144674dad3e8fd.png]]
1426
1427
1428
1429 )))
1430
1431 **Error code**
1432
1433 |**Error code**|**Content**
1434 |4085H|When the specified device range for reading exceeds the range of the corresponding device.
1435 |4086H|When the specified device range for writing exceeds the range of the corresponding device.
1436 |4084H|When the low limit specified in (s1) is greater than the high limit specified in (s2).
1437
1438 **Example**
1439
1440 [[image:07-5 Basic instructions_html_88f3fe0fb4841bab.png]]
1441
1442 • When (D1, D0)<(-10,000), the value of (D1, D0)-(-10,000) is stored in (D11, D10).
1443
1444 • When -10,000≦(D1, D0)≦10,000, 0 is stored in (D11, D10).
1445
1446 • When 10,000< (D1, D0), the value of (D1, D0)-10,000 is stored in D1.
1447
1448 {{id name="_Toc21668"/}}{{id name="_Toc25056"/}}{{id name="_Toc17582"/}}{{id name="OLE_LINK165"/}}**BINDA/BIN 16-bit data → Decimal ASCII conversion**
1449
1450 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **BINDA(P)**
1451
1452 Convert the BIN 16-bit data specified in (s) and the value of each digit in decimal numbers into ASCII codes and store them after the device number specified in (d).
1453
1454 -[BINDA(s)(d)]
1455
1456 **Content, range and data type**
1457
1458 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1459 |(s)|BIN data for ASCII conversion|-32768 to +32767|Signed BIN 16 bit|ANY16_S
1460 |(d)|The start number of the device storing the conversion result|-|String|ANYSTRING_SINGLE
1461
1462 **Device used**
1463
1464 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
1465 **Pulse**
1466
1467 **extension**
1468 )))
1469 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1470 |(% rowspan="2" %)BINDA|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
1471 |Parameter 2| | | | | | | | | | | | | | | | |●|●|●| | | | | |●|●
1472
1473 **Features**
1474
1475 Convert the BIN 16-bit data specified in (s) and the value of each digit in decimal numbers into ASCII codes and store them after the device number specified in (d).
1476
1477
1478
1479 (((
1480 ←Only store 0 when SM191 is OFF
1481
1482 [[image:07-5 Basic instructions_html_57bda5f08026449d.png]]
1483 )))
1484
1485 For example, when -12,345 is specified in (s) (in the case of specifying signed)
1486
1487 [[image:07-5 Basic instructions_html_f346102467b9bef9.png]]
1488
1489 The calculation result stored in (d) will be as below.
1490
1491 • In "Sign", 20H is stored when the BIN data is positive, and 2DH is stored when it is negative.
1492
1493 • In the 0 to the left of the effective digit, 20H is stored. (Suppress 0.) For example, in the case of "00325", "00" becomes 20H, and "325" becomes the effective digit.
1494
1495 • When storing data to the device specified in (d)+3, when SM191 (output character number switching signal) is OFF, 0 is stored, and it does not change when it is ON.
1496
1497 ✎**Note: **The number of occupied points of (d) is 3 when SM191 is ON, and it is 4 when SM191 is OFF.
1498
1499 **Error code**
1500
1501 |**Error code**|**Content**
1502 |4085H|The read address of (s) exceeds the device range.
1503 |4086H|The write address of (d) exceeds the device range.
1504
1505 **Example**
1506
1507
1508
1509 (((
1510 When X000 is ON, convert the value of 16-bit data (BIN) D1000 into decimal ASCII code, and then use PR instruction to output the
1511
1512 converted ASCII code character by character to the program of Y040 to Y057.
1513
1514 [[image:07-5 Basic instructions_html_c598806a42484ed.png]]
1515 )))
1516
1517 {{id name="_Toc12255"/}}{{id name="_Toc8216"/}}{{id name="_Toc470"/}}**DBINDA/BIN 32-bit data → Decimal ASCII conversion**
1518
1519 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **DBINDA(P)**
1520
1521 Convert the BIN 32-bit data specified in (s) and the value of each bit in decimal numbers into ASCII codes and store them after the device number specified in (d).
1522
1523 -[DBINDA(s)(d)]
1524
1525 **Content, range and data type**
1526
1527 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1528 |(s)|BIN data for ASCII conversion|-2,147483648 to 2147483647|Signed BIN 32 bit|ANY32_S
1529 |(d)|{{id name="OLE_LINK2"/}}The start number of the device storing the conversion result|-|String|ANYSTRING_SINGLE
1530
1531 **Device used**
1532
1533 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|(((
1534 **Offset**
1535
1536 **modification**
1537 )))|(((
1538 **Pulse**
1539
1540 **extension**
1541 )))
1542 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1543 |(% rowspan="2" %)DBINDA|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●|●|●| |●|●
1544 |Parameter 2| | | | | | | | | | | | | | | | |●|●|●| | | | | |●|●
1545
1546 **Features**
1547
1548 Convert the BIN 32-bit data specified in (s) and the value of each bit when expressed in decimal numbers into ASCII codes, and store them after the device number specified in (d).
1549
1550 For example, when -12345678 is specified in (s). (in the case of specifying signed)
1551
1552 [[image:07-5 Basic instructions_html_4d939462838cf09b.gif]] The calculation result stored in (d) will be as below.
1553
1554 • In "Sign", 20H is stored when the BIN data is positive, and 2DH is stored when it is negative.
1555
1556 • 20H is stored at 0 to the left of the effective number of digits. (Suppress 0.) For example, in the case of "0012034560", "00" becomes 20H, and "12034560" becomes effective digits.
1557
1558 • For the data stored in the upper 8 bits of the device specified in (d)+5, 0 will be stored when SM191 (output character switching signal) is OFF, and 20H will be stored when it is ON.
1559
1560 ✎**Note: **(d) Occupies 6 points.
1561
1562 **Error code**
1563
1564 |**Error code**|**Content**
1565 |4085H|(s) read address exceeds the device range
1566 |4086H|(d) write address exceeds the device range
1567
1568 **Example**
1569
1570 [[image:07-5 Basic instructions_html_ec8ac32d748a991c.png]]
1571
1572 When X000 is ON, convert the value of 32-bit data (BIN) D1000 into decimal ASCII code, and then use PR (FNC 77) instruction to output the converted ASCII code character by character to the program in Y040 to Y051 in time and time division.
1573
1574 {{id name="_Toc19693"/}}{{id name="_Toc18078"/}}{{id name="_Toc5726"/}}**DABIN/Decimal ASCII → BIN conversion**
1575
1576 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **DABIN(P)**
1577
1578 Digital ASCII code (30H to 39H) is a instruction to convert real data into BIN data.
1579
1580 -[DABIN (s) (d)]
1581
1582 **Content, range and data type**
1583
1584 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1585 |(s)|The start number of the device that stores the data (ASCII code) to be converted into a BIN value|-|String|ANYSTRING_SINGLE
1586 |(d)|The device number for storing conversion result|-|BIN16 bit|ANY16_S
1587
1588 **Device used**
1589
1590 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
1591 **Pulse**
1592
1593 **extension**
1594 )))
1595 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1596 |(% rowspan="2" %)DABIN|Parameter 1| | | | | | | | | | | | | | | | |●|●|●| | | | | |●|●
1597 |Parameter 2| | | | | | | | | | | |●|●|●|●|●|●|●|●| | | | | |●|●
1598
1599 **Features**
1600
1601 The decimal ASCII data stored after the device number specified in (s) is converted into BIN 16-bit data and stored in the device specified in (d).
1602
1603 [[image:07-5 Basic instructions_html_22c5cb32a0a32214.png]]
1604
1605 |**ASCII S**|**ASCII 10^^0^^**|**ASCII 10^^1^^**|**ASCII 10^^2^^**|**ASCII 10^^3^^**|**ASCII 10^^4^^**
1606 |**ASCII code**|(((
1607 {{id name="OLE_LINK36"/}}Units of
1608
1609 ASCII code
1610 )))|(((
1611 Tens of
1612
1613 ASCII code
1614 )))|(((
1615 Hundreds of
1616
1617 ASCII code
1618 )))|(((
1619 Thousands of
1620
1621 ASCII code
1622 )))|(((
1623 Ten thousands
1624
1625 of ASCII code
1626 )))
1627
1628 For example, When -25,108 is specified in (s)
1629
1630 [[image:07-5 Basic instructions_html_10fb2792e37dbf23.png]]
1631
1632 • The ASCII data specified in (s) to (s)+2 is within the range of -32,768 to +32,767.
1633
1634 • In “Sign”, set 20H when the converted data is positive, and set 2DH when it is negative. (When other than 20H or 2DH is set, it will be treated as positive data. (DABIN(P))
1635
1636 • The range of the ASCII code set in each digit is 30H to 39H.
1637
1638 • When the ASCII code set in each bit is 20H or 00H, it will be treated as 30H.
1639
1640 **Error code**
1641
1642 |**Error code**|**Content**
1643 |4084H|(((
1644 When the Sign data exceeds the range of 30H to 39H, 20H, 00H, 2DH;
1645
1646 When the ASCII code of each bit specified in (s) to (s)+2 exceeds the range of 30H to 39H, 20H, 00H;
1647
1648 When the ASCII data specified in (s) to (s)+2 is other than -32,768 to +32,767.
1649 )))
1650 |4085H|The read address of (s) exceeds the device range.
1651 |4086H|The write address of (d) exceeds the device range.
1652
1653
1654 (((
1655 When X000 is ON, the Signs set in D20 to D22 and the ASCII code data of 5-digit decimal numbers are converted into BIN values, and then stored in the program of D0.
1656
1657 **Example**
1658 )))
1659
1660 [[image:07-5 Basic instructions_html_bec2bea131b58c03.png]]
1661
1662 {{id name="_Toc3351"/}}{{id name="_Toc26383"/}}{{id name="_Toc26233"/}}**DDABIN/Decimal ASCII → BIN32-bit data conversion**
1663
1664 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **DDABIN(P)**
1665
1666 The decimal ASCII data stored after the device number specified in (s) is converted into BIN 32-bit data and stored in the device number specified in (d).
1667
1668 -[DDABIN (s) (d) ]
1669
1670 **Content, range and data type**
1671
1672 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1673 |(s)|The start number of the device that stores data (ASCII code) to be converted into a BIN value|-|String|ANYSTRING_SINGLE
1674 |(d)|The device number for storing conversion result|-|Signed BIN 32 bit|ANY32_S
1675
1676 **Device used**
1677
1678 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
1679 **Pulse**
1680
1681 **extension**
1682 )))
1683 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1684 |(% rowspan="2" %)DDABIN|Parameter 1| | | | | | | | | | | | | | | | |●|●|●| | | | | |●|●
1685 |Parameter 2| | | | | | | | | | | |●|●|●|●|●|●|●|●|●|●| | | |●|●
1686
1687 **Features**
1688
1689 The decimal ASCII data stored after the device number specified in (s) is converted into BIN 32-bit data and stored in the device specified in (d).
1690
1691 [[image:07-5 Basic instructions_html_c444110b273f33b7.gif]]
1692
1693 |**ASCII S**|**ASCII code**|**ASCII S**|**ASCII code**
1694 |ASCII 10^^0^^|Units of ASCII code|ASCII 10^^5^^|{{id name="OLE_LINK38"/}}Hundred thousands of ASCII code
1695 |ASCII 10^^1^^|Tens of ASCII code|ASCII 10^^6^^|Millions of ASCII code
1696 |ASCII 10^^2^^|Hundreds of ASCII code|ASCII 10^^7^^|Ten millions of ASCII code
1697 |ASCII 10^^3^^|{{id name="OLE_LINK37"/}}Thousands of ASCII code|ASCII 10^^8^^|Hundred millions of ASCII code
1698 |ASCII 10^^4^^|Tens thousands of ASCII code|ASCII 10^^9^^|billions of ASCII code
1699
1700 When -1234543210 is specified in (s) (When signed is specified)
1701
1702 [[image:07-5 Basic instructions_html_1b4c7e1c663a4399.png]]
1703
1704 • The ASCII data specified in (s) to (s)+5 is within the range of -2,147,483,648 to +2,147,483,647. In addition, the data stored in the high byte of (s)+5 will be ignored.
1705
1706 • In the Sign data, set 20H when the converted data is positive, and set 2DH when it is negative. (When other than 20H or 2DH is set, it will be treated as positive data. (DABIN(P))
1707
1708 • The range of ASCII code set in each digit is 30H to 39H.
1709
1710 • When the ASCII code set in each bit is 20H or 00H, it will be treated as 30H.
1711
1712 **Error code**
1713
1714 |**Error code**|**Content**
1715 |4084H|(((
1716 When the Sign data exceeds the range of 30H to 39H, 20H, 00H and 2DH;
1717
1718 {{id name="OLE_LINK39"/}}When the ASCII code of each bit specified in (s) to (s)+5 exceeds the range of 30H to 39H, 20H and 00H;
1719
1720 When the ASCII data specified in (s) to (s)+5 exceeds the range of -2,147,483,648 to +2,147,483,647
1721 )))
1722 |4085H|The read address of (s) exceeds the device range.
1723 |4086H|The write address of (d) exceeds the device range.
1724
1725 **Example**
1726
1727 [[image:07-5 Basic instructions_html_feea438c943ea9dd.png]]
1728
1729 When X000 is ON, the Signs set in to D20 to D25 and the ASCII code data of 10-digit decimal numbers are converted into BIN values and then saved to the program in D0 to D1.
1730
1731 {{id name="_Toc26556"/}}{{id name="_Toc12799"/}}{{id name="_Toc23863"/}}**LIMIT/ BIN 16-bit data high and low limit control**
1732
1733 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **LIMIT(P)**
1734
1735 The input value (BIN 16-bit value) specified in (s3) controls the output value stored in the device specified in (d) according to the upper and lower limit value ranges specified in (s1) and (s2).
1736
1737 -[LIMIT (s1) (s2) (s3) (d)]
1738
1739 **Content, range and data type**
1740
1741 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1742 |s1|Low limit value (minimum output limit value)|-32,768 to 32,767|BIN16 bit|ANY16_S
1743 |s2|High limit value (maximum output limit value)|-32,768 to 32,767|BIN16 bit|ANY16_S
1744 |s3|Input value controlled by high and low limit control|-32,768 to 32,767|BIN16 bit|ANY16_S
1745 |d|The start number of device that stores the output value controlled by high and low limit control|-|BIN16 bit|ANY16_S
1746
1747 **Device used**
1748
1749 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
1750 **Pulse**
1751
1752 **extension**
1753 )))
1754 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1755 |(% rowspan="4" %)LIMIT|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
1756 |Parameter 2| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
1757 |Parameter 3| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | | | | |●|●
1758 |Parameter 4| | | | | | | | | | | |●|●|●|●|●|●|●|●| | | | | |●|●
1759
1760 **Features**
1761
1762 The input value (BIN 16-bit value) specified in (s3) controls the output value stored in the device specified in (d) according to the high and low limit value ranges specified in (s1) and (s2). The output value is controlled as follows.
1763
1764 |**Condition**|**The value stored in the output value**
1765 |Low limit value (s1)>input value (s3)|Low limit value (s1)
1766 |High limit value (s1) <input value (s3)|High limit value (s2)
1767 |Low limit value (s1) ≤ input value (s3) ≤ high limit value (s2)|Input value (s3)
1768
1769
1770 (((
1771 •Only in the case of controlling high limit value, set the minimum value of data range in the low limit value specified in (s1).
1772
1773 • Only in the case of controlling low limit value, set the maximum value of data range in the high limit value specified in (s2).
1774
1775 [[image:07-5 Basic instructions_html_50eb5229b027aa14.png]]
1776 )))
1777
1778 **Error code**
1779
1780 |**Error code**|**Content**
1781 |4085H|The read address exceeds the device range
1782 |4086H|The write address exceeds the device range
1783 |4084H|High limit <low limit
1784
1785 **Example**
1786
1787 [[image:07-5 Basic instructions_html_d67a2e740d4fc738.png]]
1788
1789 When X000 is ON
1790
1791 • When D0 <500, D1 is 500.
1792
1793 • When 500 ≤ D0 ≤ 5,000, D1 is the value of D0.
1794
1795 • When 5,000 <D0, D1 is 5,000.
1796
1797 {{id name="_Toc32553"/}}{{id name="_Toc9981"/}}{{id name="_Toc9158"/}}**DLIMIT/BIN 32-bit data high and low limit control**
1798
1799 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **DLIMIT(P)**
1800
1801 The input value (BIN 32-bit value) specified in (s3) controls the output value stored in the device specified in (d) according to the range of high and low limit values specified in (s1) and (s2).
1802
1803 -[DLIMIT (s1) (s2) (s3) (d)]
1804
1805 **Content, range and data type**
1806
1807 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1808 |s1|Low limit value (minimum output limit value)|-2,147,483,648 to 2,147,483,647|BIN32 bit|ANY32_S
1809 |s2|High limit value (maximum output limit value)|-2,147,483,648 to 2,147,483,647|BIN32 bit|ANY32_S
1810 |s3|Input value controlled by high and low limit control|-2,147,483,648 to 2,147,483,647|BIN32 bit|ANY32_S
1811 |d|The start number of the device that stores the output value controlled by high and low limit control|-|BIN32 bit|ANY32_S
1812
1813 **Device used**
1814
1815 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
1816 **Pulse**
1817
1818 **extension**
1819 )))
1820 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1821 |(% rowspan="4" %)DLIMIT|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●|●|●| |●|●
1822 |Parameter 2| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●|●|●| |●|●
1823 |Parameter 3| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●| | | |●|●
1824 |Parameter 4| | | | | | | | | | | |●|●|●|●|●|●|●|●|●|●| | | |●|●
1825
1826 **Features**
1827
1828 The input value (BIN 32-bit value) specified in (s3) controls the output value stored in the device specified in (d) according to the range of high and low limit values specified in (s1) and (s2). The output value is controlled as follows.
1829
1830 |**Condition**|**The value stored in the output value**
1831 |Low limit value ((s1), (s1)+1)> input value ((s3), (s3)+1)|Low limit value ((s1), (s1)+1)
1832 |High limit value ((s2), (s2)+1) <input value ((s3), (s3)+1)|High limit value ((s2), (s2)+1)
1833 |Low limit value ((s1), (s1)+1) ≤ input value ((s3), (s3)+1) ≤ high limit value ((s2), (s2)+1)|Input value ((s3), (s3)+1)
1834
1835 {{id name="OLE_LINK43"/}}{{id name="OLE_LINK40"/}}•Only in the case of controlling high limit value, set the minimum value of data range in the low limit value specified in (s1).
1836
1837 • Only in the case of controlling low limit value, set the maximum value of data range in the high limit value specified in (s2).
1838
1839 **Error code**
1840
1841 |**Error code**|**Content**
1842 |4085H|The read address exceeds the device range
1843 |4086H|The write address exceeds the device range
1844 |4084H|High limit <low limit
1845
1846 **Example**
1847
1848 [[image:07-5 Basic instructions_html_217355b90f4b4e16.png]]
1849
1850 Operation:
1851
1852 • When (D1, D0) <10,000, (D11, D10) is 10,000.
1853
1854 • When 10,000 ≤ (D1, D0) ≤ 1,000,000, (D11, D10) is the value of (D1, D0).
1855
1856 • When 1,000,000 <(D1, D0), (D11, D10) is 1,000,000.
1857
1858 {{id name="_Toc12534"/}}{{id name="_Toc28213"/}}{{id name="_Toc24591"/}}**SCL/BIN 16-bit unit scale (coordinate data of each point)**
1859
1860 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **SCL(P)**
1861
1862 The scaling conversion data (16-bit data unit) specified in (s2) is scaled from the input value specified in (s1), and the calculation result is stored in the device specified in (d).
1863
1864 -[SCL (s1) (s2) (d)]
1865
1866 **Content, range and data type**
1867
1868 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1869 |(s1)|The input value for scaling or the start number of device storing the input value|-32,768 to 32,767|Signed BIN 16 bit|ANY16_S
1870 |(s2)|The start number of the device storing conversion data for scaling|-|Signed BIN 16 bit|ANY16_S
1871 |(d)|The start number of the device that stores the output value controlled by scaling|-|Signed BIN 16 bit|ANY16_S
1872
1873 **Device used**
1874
1875 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
1876 **Pulse**
1877
1878 **extension**
1879 )))
1880 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
1881 |(% rowspan="3" %)SCL|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
1882 |Parameter 2| | | | | | | | | | | | | | | | |●|●|●| | | | | |●|●
1883 |Parameter 3| | | | | | | | | | | |●|●|●|●|●|●|●|●| | | | | |●|●
1884
1885 **Features**
1886
1887 For the scale conversion data (16-bit data unit) specified in (s2), scale by the input value specified in (s1), and store the operation result in the device specified in (d). Scale conversion is performed based on the scale conversion data stored after the device specified in (s2).
1888
1889 |(% colspan="2" %)**Setting items (n represents the number of coordinate points specified in (s2))**|**Device allocation**
1890 |(% colspan="2" %)Coordinate points|(s2)
1891 |(% rowspan="2" %)Point 1|X coordinate|(s2)+1
1892 |Y coordinate|(s2)+2
1893 |(% rowspan="2" %)Point 2|X coordinate|(s2)+3
1894 |Y coordinate|(s2)+4
1895 |(% colspan="3" %)........
1896 |(% rowspan="2" %)Point n|X coordinate|(s2)+2n-1
1897 |Y coordinate|(s2)+2n
1898
1899 [[image:07-5 Basic instructions_html_80185ccddb878234.png]]
1900
1901 • If the operation result is not an integer value, round the first digit below the decimal point.
1902
1903 • The X coordinate data of the conversion data for scaling should be set in ascending order.
1904
1905 • (s1) should be set within the range of conversion data for scaling (device value of (s2)).
1906
1907 • If the same X coordinate is specified for multiple points, the Y coordinate value of the second point will be output.
1908
1909 • Set the number of coordinate points of the conversion data for scaling within the range of 1 to 32,767.
1910
1911 • Setting example of conversion table for scaling.
1912
1913 In the case of scaling conversion characteristics as shown in the figure below, set it as the following data sheet.
1914
1915 [[image:07-5 Basic instructions_html_74fd22d845ad450e.png]]
1916
1917 |(% colspan="2" rowspan="2" %)**Set &nbsp;&nbsp;&nbsp;&nbsp;items**|(% colspan="3" %)**Sett &nbsp;&nbsp;&nbsp;&nbsp;device and content**|(% rowspan="2" %)**Remarks**
1918 |(% colspan="2" %)**When R0 is specified in (s2)**|**Set &nbsp;&nbsp;&nbsp;&nbsp;content**
1919 |(% colspan="2" %)Coordinate points|(s2)|R0|K10|
1920 |(% rowspan="2" %)Point 1|X coordinate|(s2)+1|R1|K5|
1921 |Y coordinate|(s2)+2|R2|K20|
1922 |(% rowspan="2" %)Point 2|X coordinate|(s2)+3|R3|K30|
1923 |Y coordinate|(s2)+4|R4|K50|
1924 |(% rowspan="2" %)Point 3|X coordinate|(s2)+5|R5|K100|
1925 |Y coordinate|(s2)+6|R6|K200|
1926 |(% rowspan="2" %)Point 4|X coordinate|(s2)+7|R7|K25|(% rowspan="6" %)(((
1927 If the coordinates are specified by 3 points, the intermediate value could be the output value.
1928
1929 In this example, the output value (median value) is specified by the Y coordinate of point 5.
1930
1931 When the X coordinate is the same at 3 points or more, the value of the 2nd point is also output.
1932 )))
1933 |Y coordinate|(s2)+8|R8|K200
1934 |(% rowspan="2" %)Point 5|X coordinate|(s2)+9|R9|K70
1935 |Y coordinate|(s2)+10|R10|K200
1936 |(% rowspan="2" %)Point 6|X coordinate|(s2)+11|R11|K250
1937 |Y coordinate|(s2)+12|R12|K250
1938 |(% rowspan="2" %)Point 7|X coordinate|(s2)+13|R13|K250|
1939 |Y coordinate|(s2)+14|R14|K90|
1940 |(% rowspan="2" %)Point 8|X coordinate|(s2)+15|R15|K350|(% rowspan="4" %)(((
1941 If the coordinates are specified by two points, the output value is the value of the Y coordinate of the next point.
1942
1943 In this example, the output value is specified by the Y coordinate of point 9.
1944 )))
1945 |Y coordinate|(s2)+16|R16|K90
1946 |(% rowspan="2" %)Point 9|X coordinate|(s2)+17|R17|K350
1947 |Y coordinate|(s2)+18|R18|K30
1948 |(% rowspan="2" %)Point 10|X coordinate|(s2)+19|R19|K400|
1949 |Y coordinate|(s2)+20|R20|K7|
1950
1951 **Error code**
1952
1953 |**Error code**|**Content**
1954 |4085H|When the specified device range for reading exceeds the range of the corresponding device.
1955 |4086H|When the specified device range for writing exceeds the range of the corresponding device.
1956 |4084H|(((
1957 When the Xn data of data table is not sorted in ascending order. However, the instruction will be executed until the position where the error occurs;
1958
1959 When the input value specified in (s1) exceeds the range of the set scale conversion data;
1960
1961 When the number of start coordinate points of device (s2) is less than 0.
1962 )))
1963
1964 **Example**
1965
1966 [[image:07-5 Basic instructions_html_5519d7b41f15b6d6.png]]
1967
1968 [[image:07-5 Basic instructions_html_ace075fb7675de8e.gif]] When -100 ≤ D0(X) < 0, D100(Y)=
1969
1970 [[image:07-5 Basic instructions_html_9acd6306c6d91847.gif]] when D0(X)=0, D100(Y)=0;
1971
1972 when 0< D0(X) ≤ 100, D100(Y)=
1973
1974 [[image:07-5 Basic instructions_html_e35e13160c08a133.png]]
1975
1976
1977
1978 {{id name="_Toc4862"/}}{{id name="_Toc11340"/}}{{id name="_Toc25383"/}}**DSCL/32-bit unit scale (coordinate data of each point)**
1979
1980 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **DSCL(P)**
1981
1982 The conversion data (32-bit data unit) for scaling specified in (s2) is scaled by the input value specified in (s1), and the operation result is stored in the device specified in (d).
1983
1984 -[DSCL (s1) (s2) (d)]
1985
1986 **Content, range and data type**
1987
1988 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
1989 |(s1)|The input value for scaling or the start number of the device storing the input value|-2,147,483,648 to 2,147,483,647|Signed BIN 32 bit|ANY32_S
1990 |(s2)|The start number of the device storing conversion data for scaling|-|Signed BIN 32 bit|ANY32_S
1991 |(d)|The start number of the device that stores the output value controlled by scaling|-|Signed BIN 32 bit|ANY32_S
1992
1993 **Device used**
1994
1995 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Device**|**Offset modification**|(((
1996 **Pulse**
1997
1998 **extension**
1999 )))
2000 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
2001 |(% rowspan="3" %)DSCL|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●|●|●| |●|●
2002 |Parameter 2| | | | | | | | | | | | | | | | |●|●|●| | | | | |●|●
2003 |Parameter 3| | | | | | | | | | | |●|●|●|●|●|●|●|●|●|●| | | |●|●
2004
2005 **Features**
2006
2007 {{id name="OLE_LINK41"/}}The conversion data (32-bit data unit) for scaling specified in (s2) is scaled by the input value specified in (s1), and the operation result is stored in the device number specified in (d). The scale conversion is performed based on the scale conversion data stored after the device specified in (s2).
2008
2009 |(% colspan="2" %)**Set items (n represents the number of coordinate points specified in (s2))**|**Device allocation**
2010 |(% colspan="2" %)Coordinate points|(s2)+1, (s2)
2011 |(% rowspan="2" %)Point 1|X coordinate|(s2)+3, (s2)+2
2012 |Y coordinate|(s2)+5, (s2)+4
2013 |(% rowspan="2" %)Point 2|X coordinate|(s2)+7, (s2)+6
2014 |Y coordinate|(s2)+9, (s2)+8
2015 |(% colspan="3" %)........
2016 |(% rowspan="2" %)Point n|X coordinate|(s2)+4n-1, (s2)+4n-2
2017 |Y coordinate|(s2)+4n+1, (s2)+4n
2018
2019 [[image:07-5 Basic instructions_html_6633ca18cee1218c.png]]
2020
2021 • If the calculation result is not an integer value, round the first digit below the decimal point.
2022
2023 • The X coordinate data of the conversion data for scaling should be set in ascending order.
2024
2025 • For (s1), set within the range of the conversion data for scaling ((s2), (s2) + 1 device value).
2026
2027 • If the same X coordinate is specified for multiple points, the Y coordinate value of the second point will be output.
2028
2029 • Set the number of coordinate points of conversion data for scaling within the range of 1 to 2,147,483,647.
2030
2031 • Setting example of conversion table for scaling.
2032
2033 In the case of scaling conversion characteristics as shown in the figure below, set it as the following data sheet.
2034
2035 [[image:07-5 Basic instructions_html_74fd22d845ad450e.png]]
2036
2037 |(% colspan="2" rowspan="2" %)**Set items**|(% colspan="3" %)**Set &nbsp;&nbsp;&nbsp;&nbsp;device and content**|(% rowspan="2" %)**Remarks**
2038 |(% colspan="2" %)**When R0 is specified in (s2)**|**Set &nbsp;&nbsp;&nbsp;&nbsp;content**
2039 |(% colspan="2" %)Coordinate points|(s2)+1, (s2)|R1, R0|K10|
2040 |(% rowspan="2" %)Point 1|X coordinate|(s2)+3, (s2)+2|R3, R2|K5|
2041 |Y coordinate|(s2)+5, (s2)+4|R5, R4|K7|
2042 |(% rowspan="2" %)Point 2|X coordinate|(s2)+7, (s2)+6|R7, R6|K20|
2043 |Y coordinate|(s2)+9, (s2)+8|R9, R8|K30|
2044 |(% rowspan="2" %)Point 3|X coordinate|(s2)+11, (s2)+10|R10, R11|K50|
2045 |Y coordinate|(s2)+13, (s2)+12|R13, R12|K100|
2046 |(% rowspan="2" %)Point 4|X coordinate|(s2)+15, (s2)+14|R15, R14|K200|(% rowspan="6" %)(((
2047 if the coordinates are specified by 3 points, the intermediate value could be the output value.
2048
2049 In this example, the output value (median value) is specified by the Y coordinate of point 5.
2050
2051 When the X coordinate is the same at 3 points or more, the value of the 2nd point is also output.
2052 )))
2053 |Y coordinate|(s2)+17, (s2)+16|R17, R16|K25
2054 |(% rowspan="2" %)Point 5|X coordinate|(s2)+19, (s2)+18|R19, R18|K200
2055 |Y coordinate|(s2)+21, (s2)+20|R21, R20|K70
2056 |(% rowspan="2" %)Point 6|X coordinate|(s2)+23, (s2)+22|R23, R22|K200
2057 |Y coordinate|(s2)+25, (s2)+24|R25, R24|K250
2058 |(% rowspan="2" %)Point 7|X coordinate|(s2)+27, (s2)+26|R27, R26|K250|
2059 |Y coordinate|(s2)+29, (s2)+28|R29, R28|K90|
2060 |(% rowspan="2" %)Point 8|X coordinate|(s2)+31, (s2)+30|R31, R30|K350|(% rowspan="4" %)(((
2061 If the coordinates are specified by two points, the output value is the value of the Y coordinate of the next point.
2062
2063 In this example, the output value is specified by the Y coordinate of point 9.
2064 )))
2065 |Y coordinate|(s2)+33, (s2)+32|R33, R32|K90
2066 |(% rowspan="2" %)Point 9|X coordinate|(s2)+35, (s2)+34|R35, R34|K350
2067 |Y coordinate|(s2)+37, (s2)+36|R37, R36|K30
2068 |(% rowspan="2" %)Point 10|X coordinate|(s2)+39, (s2)+38|R39, R38|K400|
2069 |Y coordinate|(s2)+41, (s2)+40|R41, R40|K7|
2070
2071 **Error code**
2072
2073 |**Error code**|**Content**
2074 |4085H|When the specified device range for reading exceeds the range of the corresponding device.
2075 |4086H|When the specified device range for writing exceeds the range of the corresponding device.
2076 |4084H|(((
2077 When the Xn data of data table is not sorted in ascending order. However, the instruction will be executed until the position where the error occurs;
2078
2079 When the input value specified in (s1) exceeds the range of the set scale conversion data;
2080
2081 When the number of start coordinate points of device (s2) is less than 0.
2082 )))
2083
2084 **Example**
2085
2086 [[image:07-5 Basic instructions_html_ba95b2d50d8d1d3e.png]]
2087
2088 [[image:07-5 Basic instructions_html_1de79c7d87d51f78.gif]] When -100 ≤ D0(X) < 0, D100(Y)=
2089
2090 [[image:07-5 Basic instructions_html_9acd6306c6d91847.gif]] When D0(X)=0, D100(Y)=0;
2091
2092 When 0 < D0(X) ≤ 100, D100(Y)=
2093
2094 [[image:07-5 Basic instructions_html_a5b19d1af74a9620.png]]
2095
2096 {{id name="_Toc3776"/}}{{id name="_Toc11170"/}}{{id name="_Toc2957"/}}**SCL2/BIN 16-bit unit scale (X/Y coordinate data)**
2097
2098 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **SCL2(P)**
2099
2100 The conversion data (16-bit data unit) for scaling specified in (s2) is scaled by the input value specified in (s1), and the operation result is stored in the device specified in (d).
2101
2102 -[SCL2 (s1) (s2) (d)]
2103
2104 **Content, range and data type**
2105
2106 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
2107 |(s1)|The input value for scaling or the start number of the device storing the input value|-32,768 to 32,767|Signed BIN 16 bit|ANY16_S
2108 |(s2)|The start number of the device storing conversion data for scaling|-|Signed BIN 16 bit|ANY16_S
2109 |(d)|The start number of the device that stores the output value controlled by scaling|-|Signed BIN 16 bit|ANY16_S
2110
2111 **Device used**
2112
2113 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
2114 **Pulse**
2115
2116 **extension**
2117 )))
2118 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
2119 |(% rowspan="3" %)SCL2|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
2120 |Parameter 2| | | | | | | | | | | | | | | | |●|●|●| | | | | |●|●
2121 |Parameter 3| | | | | | | | | | | |●|●|●|●|●|●|●|●| | | | | |●|●
2122
2123 **Features**
2124
2125 The conversion data (16-bit data unit) for scaling specified in (s2) is scaled by the input value specified in (s1), and the operation result is stored in the device number specified in (d). The scale conversion is performed based on the scale conversion data stored after the device specified in (s2).
2126
2127 |(% colspan="2" %)**Set items (n represents the number of coordinate points specified in (s2))**|**Device allocation**
2128 |(% colspan="2" %)Coordinate points|(s2)
2129 |(% rowspan="4" %)X coordinate|Point 1|(s2)+1
2130 |Point 2|(s2)+2
2131 |.....|......
2132 |Point n|(s2)+n
2133 |(% rowspan="4" %)Y coordinate|Point 1|(s2)+n+1
2134 |Point 2|(s2)+n+2
2135 |.....|.....
2136 |Point n|(s2)+2n
2137
2138 [[image:07-5 Basic instructions_html_80185ccddb878234.png]]
2139
2140 • If the operation result is not an integer value, round the first digit below the decimal point.
2141
2142 • The X coordinate data of the conversion data for scaling should be set in ascending order.
2143
2144 • For (s1), set within the range of the conversion data for scaling ((s2), (s2) + 1 device value).
2145
2146 • If the same X coordinate is specified for multiple points, the Y coordinate value of the second point will be output.
2147
2148 • Set the number of coordinate points of conversion data for scaling within the range of 1 to 32,767.
2149
2150 • Setting example of conversion table for scaling.
2151
2152 In the case of scaling conversion characteristics as shown in the figure below, set it as the following data sheet.
2153
2154 [[image:07-5 Basic instructions_html_74fd22d845ad450e.png]]
2155
2156 |(% colspan="2" rowspan="2" %)**Set items**|(% colspan="3" %)**Set device and content**|(% rowspan="2" %)**Remarks**
2157 |(% colspan="2" %)**When R0 is specified in (s2)**|**Set content**
2158 |(% colspan="2" %)Coordinate points|(s2)|R0|K10|
2159 |(% rowspan="10" %)X coordinate|Point 1|(s2)+1|R1|K5|
2160 |Point 2|(s2)+2|R2|K20|
2161 |Point 3|(s2)+3|R3|K50|
2162 |Point 4|(s2)+4|R4|K200|(% rowspan="3" %)Refer to** ✎1**
2163 |Point 5|(s2)+5|R5|K200
2164 |Point 6|(s2)+6|R6|K200
2165 |Point 7|(s2)+7|R7|K250|
2166 |Point 8|(s2)+8|R8|K350|(% rowspan="2" %)Refer to** ✎2**
2167 |Point 9|(s2)+9|R9|K350
2168 |Point 10|(s2)+10|R10|K400|
2169 |(% rowspan="10" %)Y coordinate|Point 1|(s2)+11|R11|K7|
2170 |Point 2|(s2)+12|R12|K30|
2171 |Point 3|(s2)+13|R13|K100|
2172 |Point 4|(s2)+14|R14|K25|(% rowspan="3" %)Refer to**✎1**
2173 |Point 5|(s2)+15|R15|K70
2174 |Point 6|(s2)+16|R16|K250
2175 |Point 7|(s2)+17|R17|K90|
2176 |Point 8|(s2)+18|R18|K90|(% rowspan="2" %)Refer to** ✎2**
2177 |Point 9|(s2)+19|R19|K30
2178 |Point 10|(s2)+20|R20|K7|
2179
2180 ✎**1** Like points 4, 5, and 6, if the coordinates are specified by 3 points, the intermediate value could be the output value.
2181
2182 In this example, the output value (median value) is specified by the Y coordinate of point 5.
2183
2184 When the X coordinate is the same at 3 or more points, the value of the second point is also output.
2185
2186 ✎**2** Like points 8 and 9, if the coordinates are specified by 2 points, the output value is the value of the Y coordinate of next point.
2187
2188 In this example, the output value is specified by the Y coordinate of point 9.
2189
2190 **Error code**
2191
2192 |**Error code**|**Content**
2193 |4085H|When the specified device range for reading exceeds the range of the corresponding device.
2194 |4086H|When the specified device range for writing exceeds the range of the corresponding device.
2195 |4084H|(((
2196 When the Xn data of data table is not sorted in ascending order. However, the instruction will be executed until the position where the error occurs;
2197
2198 When the input value specified in (s1) exceeds the range of the set scale conversion data;
2199
2200 When the number of start coordinate points of device (s2) is less than 0.
2201 )))
2202
2203 **Example**
2204
2205 [[image:07-5 Basic instructions_html_ace075fb7675de8e.gif]] [[image:07-5 Basic instructions_html_de529c9a16a62ef0.png]]
2206
2207 When -100 ≤D0 (X) < 0, D100(Y)=
2208
2209 [[image:07-5 Basic instructions_html_9acd6306c6d91847.gif]] when D0(X)=0, D100(Y)=0;
2210
2211 when 0 < D0(X) ≤ 100, D100(Y)=
2212
2213 [[image:07-5 Basic instructions_html_a5b19d1af74a9620.png]]
2214
2215 {{id name="_Toc5608"/}}{{id name="_Toc1756"/}}{{id name="_Toc21402"/}}**DSCL2/BIN 32-bit unit scale (X/Y coordinate data)**
2216
2217 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **DSCL2(P)**
2218
2219 The conversion data (32-bit data unit) for scaling specified in (s2) is scaled by the input value specified in (s1), and the operation result is stored in the device specified in (d).
2220
2221 -[DSCL2 (s1) (s2) (d)]
2222
2223 **Content, range and data type**
2224
2225 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
2226 |(s1)|The input value for scaling or the start number of the device storing the input value|-2,147,483,648 to +2,147,483,647|Signed BIN 32 bit|ANY32_S
2227 |(s2)|The start number of the device storing conversion data for scaling|-|Signed BIN 32 bit|ANY32_S
2228 |(d)|The start number of the device that stores the output value controlled by scaling|-|Signed BIN 32 bit|ANY32_S
2229
2230 **Device used**
2231
2232 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
2233 **Pulse**
2234
2235 **extension**
2236 )))
2237 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
2238 |(% rowspan="3" %)DSCL2|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●|●|●| |●|●
2239 |Parameter 2| | | | | | | | | | | | | | | | |●|●|●| | | | | |●|●
2240 |Parameter 3| | | | | | | | | | | |●|●|●|●|●|●|●|●|●|●| | | |●|●
2241
2242 **Features**
2243
2244 The conversion data (32-bit data unit) for scaling specified in (s2) is scaled by the input value specified in (s1), and the operation result is stored in the device number specified in (d). The scale conversion is performed based on the scale conversion data stored after the device specified in (s2).
2245
2246 |(% colspan="2" %)**Set items (n represents the number of coordinate points specified in (s2))**|**Device allocation**
2247 |(% colspan="2" %)Coordinate points|(s2)+1, (s2)
2248 |(% rowspan="4" %)X coordinate|Point 1|(s2)+3, (s2)+2
2249 |Point 2|(s2)+5, (s2)+4
2250 |.....|......
2251 |Point n|(s2)+2n+1, (s2)+2n
2252 |(% rowspan="4" %)Y coordinate|Point 1|(s2)+2n+3, (s2)+2n+2
2253 |Point 2|(s2)+2n+5, (s2)+2n+4
2254 |.....|.....
2255 |Point n|(s2)+4n+1, (s2)+4n
2256
2257 [[image:07-5 Basic instructions_html_6633ca18cee1218c.png]]
2258
2259 • If the operation result is not an integer value, round the first digit below the decimal point.
2260
2261 • The X coordinate data of the conversion data for scaling should be set in ascending order.
2262
2263 • For (s1), set within the range of the conversion data for scaling ((s2), (s2) + 1 device value).
2264
2265 • If the same X coordinate is specified for multiple points, the Y coordinate value of the second point will be output.
2266
2267 • Set the number of coordinate points of conversion data for scaling within the range of 1 to 2,147,483,647.
2268
2269 • Setting example of conversion table for scaling.
2270
2271 In the case of scaling conversion characteristics as shown in the figure below, set it as the following data sheet.
2272
2273 [[image:07-5 Basic instructions_html_74fd22d845ad450e.png]]
2274
2275 |(% colspan="2" rowspan="2" %)**Set &nbsp;&nbsp;&nbsp;&nbsp;items**|(% colspan="3" %)**Set device and content**|(% rowspan="2" %)**Remarks**
2276 |(% colspan="2" %)**When R0 is specified in (s2)**|**Set content**
2277 |(% colspan="2" %)Coordinate points|(s2)+1, (s2)|R1, R0|K10|
2278 |(% rowspan="10" %)X|Point 1|(s2)+3, (s2)+2|R3, R2|K5|
2279 |Point 2|(s2)+5, (s2)+4|R5, R4|K20|
2280 |Point 3|(s2)+7, (s2)+6|R7, R6|K50|
2281 |Point 4|(s2)+9, (s2)+8|R9, R8|K200|(% rowspan="3" %)Refer to** ✎1**
2282 |Point 5|(s2)+11, (s2)+10|R10, R11|K200
2283 |Point 6|(s2)+13, (s2)+12|R13, R12|K200
2284 |Point 7|(s2)+15, (s2)+14|R15, R14|K250|
2285 |Point 8|(s2)+17, (s2)+16|R17, R16|K350|(% rowspan="2" %)Refer to** ✎2**
2286 |Point 9|(s2)+19, (s2)+18|R19, R18|K350
2287 |Point 10|(s2)+21, (s2)+20|R21, R20|K400|
2288 |(% rowspan="10" %)Y coordinate|Point 1|(s2)+23, (s2)+22|R23, R22|K7|
2289 |Point 2|(s2)+25, (s2)+24|R25, R24|K30|
2290 |Point 3|(s2)+27, (s2)+26|R27, R26|K100|
2291 |Point 4|(s2)+29, (s2)+28|R29, R28|K25|(% rowspan="3" %)Refer to** ✎1**
2292 |Point 5|(s2)+31, (s2)+30|R31, R30|K70
2293 |Point 6|(s2)+33, (s2)+32|R33, R32|K250
2294 |Point 7|(s2)+35, (s2)+34|R35, R34|K90|
2295 |Point 8|(s2)+37, (s2)+36|R37, R36|K90|(% rowspan="2" %)Refer to** ✎2**
2296 |Point 9|(s2)+39, (s2)+38|R39, R38|K30
2297 |Point 10|(s2)+41, (s2)+40|R41, R40|K7|
2298
2299 ✎**1** Like points 4, 5, and 6, if the coordinates are specified by 3 points, the intermediate value could be the output value.
2300
2301 In this example, the output value (median value) is specified by the Y coordinate of point 5.
2302
2303 When the X coordinate is the same at 3 or more points, the value of the second point is also output.
2304
2305 ✎**2** Like points 8 and 9, if the coordinates are specified by 2 points, the output value is the value of the Y coordinate of the next point.
2306
2307 In this example, the output value is specified by the Y coordinate of point 9.
2308
2309 **Error code**
2310
2311 |**Error code**|**Content**
2312 |4085H|When the specified device range for reading exceeds the range of the corresponding device.
2313 |4086H|When the specified device range for writing exceeds the range of the corresponding device.
2314 |4084H|(((
2315 When the Xn data of data table is not sorted in ascending order. However, the instruction will be executed until the position where the error occurs;
2316
2317 When the input value specified in (s1) exceeds the range of the set scale conversion data;
2318
2319 When the number of start coordinate points of device (s2) is less than 0.
2320 )))
2321
2322 **Example**
2323
2324 [[image:07-5 Basic instructions_html_91dbc16faa9d2ec3.png]]
2325
2326 When -100 ≤D0(X) < 0, D100(Y)=[[image:/xwiki/bin/download/PLC%20Editor2/1%20User%20manual/2.1%20LX5V%20user%20manual/07-5%20Basic%20instruction/WebHome/07-5%20Basic%20instructions_html_2c96d630f666e72c.gif?rev=1.1||alt="07-5 Basic instructions_html_2c96d630f666e72c.gif"]],,[[image:07-5 Basic instructions_html_2c96d630f666e72c.gif]] ,,;
2327
2328 when D0(X)=0, D100(Y)=0;
2329
2330 when 0< D0(X) ≤ 100, D100(Y)=[[image:/xwiki/bin/download/PLC%20Editor2/1%20User%20manual/2.1%20LX5V%20user%20manual/07-5%20Basic%20instruction/WebHome/07-5%20Basic%20instructions_html_47ebf5cc7733fccc.gif?rev=1.1||alt="07-5 Basic instructions_html_47ebf5cc7733fccc.gif"]],,[[image:07-5 Basic instructions_html_47ebf5cc7733fccc.gif]] ,,.
2331
2332 [[image:07-5 Basic instructions_html_a5b19d1af74a9620.png]]
2333
2334 {{id name="_Toc32057"/}}{{id name="_Toc9941"/}}{{id name="_Toc6492"/}}**ZONE/BIN 16-bit data zone control**
2335
2336 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] **ZONE(P)**
2337
2338 After adding the offset value specified in (s1) or (s2) to the input value specified in (s3), it is stored in the device number specified in (d).
2339
2340 -[ZONE (s1) (s2) (s3) (d)]
2341
2342 **Content, range and data type**
2343
2344 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
2345 |s1|The negative offset value for addition in the input value|-32,768 to 32,767|BIN16 bit|ANY16_S
2346 |s2|The positive offset value for addition in the input value|-32,768 to 32,767|BIN16 bit|ANY16_S
2347 |s3|Input value for zone control`|-32,768 to 32,767|BIN16 bit|ANY16_S
2348 |d|The start number of the device storing the output value controlled by zone control|-|BIN16 bit|ANY16_S
2349
2350 **Device used**
2351
2352 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
2353 **Pulse**
2354
2355 **extension**
2356 )))
2357 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
2358 |(% rowspan="4" %)ZONE|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
2359 |Parameter 2| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | |●|●| |●|●
2360 |Parameter 3| | | | | | | | | | |●|●|●|●|●|●|●|●|●| | | | | |●|●
2361 |Parameter 4| | | | | | | | | | | |●|●|●|●|●|●|●|●| | | | | |●|●
2362
2363 **Features**
2364
2365 After adding the offset value specified in (s1) or (s2) to the input value (BIN 16-bit value) specified in (s3), it is stored in the device number specified in (d). The offset value is controlled as follows.
2366
2367 |**Condition**|**The value stored in the output value**
2368 |When input value (s3)<0|Input value (s3) + negative offset value (s1)
2369 |When input value (s3)=0|0
2370 |When input value (s3)>0|Input value (s3) + positive offset value (s2)
2371
2372
2373 (((
2374 • When the output value stored in (d) is a signed BIN 16-bit value, and the operation result exceeds the range of -32,768 to 32,767, the situation is shown in the following example.
2375
2376 For example, when (s1) is -100 and (s3) is -32,768,
2377
2378 the output value = -32768+(-100)=8000H-FF9CH=7F9CH=32668.
2379
2380 [[image:07-5 Basic instructions_html_a2adbf9ccf8f839.png]]
2381
2382
2383
2384 )))
2385
2386 **Error code**
2387
2388 |**Error code**|**Content**
2389 |4085H|When the specified device range for reading exceeds the range of the corresponding device
2390 |4086H|When the specified device range for writing exceeds the range of the corresponding device
2391
2392 **Example**
2393
2394 [[image:07-5 Basic instructions_html_5da523c7765bf5be.png]]
2395
2396 When X000 is ON
2397
2398 • When D0<0, the value of (D0)+(-1,000) is stored in D1.
2399
2400 • When D0=0, 0 is stored in D1.
2401
2402 • When 0<D0, the value of (D0)+(1,000) is stored in D1.
2403
2404 {{id name="_Toc28351"/}}{{id name="_Toc11023"/}}{{id name="_Toc30269"/}}**DZONE/BIN 32-bit data zone control**
2405
2406 [[image:07-5 Basic instructions_html_11b3991e89e21efc.gif]] DZONE(P)
2407
2408 After adding the offset value specified in (s1) or (s2) to the input value specified in (s3), it is stored in the device number specified in (d).
2409
2410 -[DZONE (s1) (s2) (s3) (d)]
2411
2412 **Content, range and data type**
2413
2414 |**Parameter**|**Content**|**Range**|**Data type**|**Data type (label)**
2415 |(s1)|The negative offset value for addition in the input value|-2147483648 to 2147483647|BIN32 bit|ANY32_S
2416 |(s2)|The positive offset value for addition in the input value|-2147483648 to 2147483647|BIN32 bit|ANY32_S
2417 |(s3)|Input value for zone control|-2147483648 to 2147483647|BIN32 bit|ANY32_S
2418 |(d)|The start number of the device storing the output value controlled by zone control|-|BIN32 bit|ANY32_S
2419
2420 **Device used**
2421
2422 |(% rowspan="2" %)**Instruction**|(% rowspan="2" %)**Parameter**|(% colspan="24" %)**Devices**|**Offset modification**|(((
2423 **Pulse**
2424
2425 **extension**
2426 )))
2427 |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
2428 |(% rowspan="4" %)DZONE|Parameter 1| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●|●|●| |●|●
2429 |Parameter 2| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●|●|●| |●|●
2430 |Parameter 3| | | | | | | | | | |●|●|●|●|●|●|●|●|●|●|●| | | |●|●
2431 |Parameter 4| | | | | | | | | | | |●|●|●|●|●|●|●|●|●|●| | | |●|●
2432
2433 **Features**
2434
2435 After adding the offset value specified in (s1) or (s2) to the input value (BIN 32-bit value) specified in (s3), it is stored in the device number specified in (d). The offset value is controlled as follows.
2436
2437 |**Condition**|**The value stored in the output value**
2438 |When input value ((s3), (s3)+1)<0|Input value ((s3), (s3)+1) + negative offset value (s1), (s1)+1
2439 |When input value ((s3), (s3)+1)=0|0
2440 |When input value ((s3), (s3)+1)>0|Input value ((s3), (s3)+1) + positive offset value (s2), (s2)+1
2441
2442
2443 (((
2444 • When the output value stored in (d) and (d)+1 is a signed BIN 32-bit value, and the operation result exceeds the range of -2,147,483,648 to 2,147,483,647, the situation is shown in the following example.
2445
2446 For example, (s1), (s1)+1 is -1,000, (s3), (s3)+1 is -2,147,483,648, then the output value=-2,147,483,648+(-1000)=80000000H+FFFFFC18H=2,147,482,648.
2447
2448 [[image:07-5 Basic instructions_html_2f3a96a2565c75c7.png]]
2449 )))
2450
2451 **Error code**
2452
2453 |**Error code**|**Content**
2454 |4085H|When the specified device range for reading exceeds the range of the corresponding device
2455 |4086H|When the specified device range for writing exceeds the range of the corresponding device
2456
2457 **Example**
2458
2459 [[image:07-5 Basic instructions_html_b831b14748df07ab.png]]
2460
2461 • When (D1, D0)<0, the value of (D1, D0)+(-10,000) is stored in (D11, D10).
2462
2463 • When (D1, D0)=0, 0 is stored in (D11, D10).
2464
2465 • When 0<(D1, D0), the value of (D1, D0)+10,000 is stored in (D11, D10).