Changes for page 02 Devices

Last modified by Mora Zhou on 2023/11/22 14:13

From version 12.1
edited by Jim
on 2022/09/13 10:14
Change comment: There is no comment for this version
To version 18.1
edited by Stone Wu
on 2022/09/26 09:23
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -02 Registers
1 +02 Devices
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Jim
1 +XWiki.Stone
Content
... ... @@ -1,28 +1,27 @@
1 -= Registers list =
1 += Device list =
2 2  
3 +|=(% scope="row" %)**Classification**|=**Type**|=**Device name**|=**Sign**|=**Range**|=**Number**
4 +|=(% rowspan="10" %)User devices|Bit|Input|X|0 to 1777|Octal number
5 +|(% scope="row" %)Bit|Output|Y|0 to 1777|Octal number
6 +|(% scope="row" %)Bit|Internal relay|M|0 to 7999|Decimal number
7 +|(% scope="row" %)Bit|Step relay|S|0 to 4095|Decimal number
8 +|(% scope="row" %)Bit/word|Timer|T|0 to 511|Decimal number
9 +|(% scope="row" %)Bit/word|Counter|C|0 to 255|Decimal number
10 +|(% scope="row" %)Bit/double word|Long counter|LC|0 to 255|Decimal number
11 +|(% scope="row" %)Bit/double word|High-speed counter|HSC|0 to 15|Decimal number
12 +|(% scope="row" %)Word|Data Register|D|0 to 7999|Decimal number
13 +|(% scope="row" %)Word|Data Register|R|0 to 29999|Decimal number
14 +|=(% rowspan="2" %)System devices|Bit|Special|SM|0 to 4095|Decimal number
15 +|(% scope="row" %)Word|Special register|SD|0 to 4095|Decimal number
16 +|=(% rowspan="3" %)Index registers|Word|Index register|[D]|0 to 7999|Decimal number
17 +|(% scope="row" %)Word|Index register|V|0 to 7|Decimal number
18 +|(% scope="row" %)Double word|Long index register|Z|0 to 7|Decimal number
19 +|=Nested|Bit|Nested|N|0 to 7|Decimal number
20 +|=Pointer|-|Pointer|P|0 to 4095|Decimal number
21 +|=(% rowspan="3" %)Constant|-|Decimal constant|K|-|Decimal number
22 +|(% scope="row" %)-|Hexadecimal constant|H|-|Hexadecimal number
23 +|(% scope="row" %)Single precision floating point|Real constant|E|-|-
3 3  
4 -|**Classification**|**Length**|**Description**|**Register**|**Range**|**Number**
5 -|(% rowspan="10" %)User registers|Bit|Input|X|0 to 1777|Octal number
6 -|Bit|Output|Y|0 to 1777|Octal number
7 -|Bit|Internal relay|M|0 to 7999|Decimal number
8 -|Bit|Step relay|S|0 to 4095|Decimal number
9 -|Bit/word|Timer|T|0 to 511|Decimal number
10 -|Bit/word|Counter|C|0 to 255|Decimal number
11 -|Bit/double word|Long counter|LC|0 to 255|Decimal number
12 -|Bit/double word|High-speed counter|HSC|0 to 15|Decimal number
13 -|Word|Data Register|D|0 to 7999|Decimal number
14 -|Word|Data Register|R|0 to 29999|Decimal number
15 -|(% rowspan="2" %)System registers|Bit|Special|SM|0 to 4095|Decimal number
16 -|Word|Special register|SD|0 to 4095|Decimal number
17 -|(% rowspan="3" %)Index registers|Word|Index register|[D]|0 to 7999|Decimal number
18 -|Word|Index register|V|0 to 7|Decimal number
19 -|Double word|Long index register|Z|0 to 7|Decimal number
20 -|Nested|Bit|Nested|N|0 to 7|Decimal number
21 -|Pointer|-|Pointer|P|0 to 4095|Decimal number
22 -|(% rowspan="3" %)Constant|-|Decimal constant|K|-|Decimal number
23 -|-|Hexadecimal constant|H|-|Hexadecimal number
24 -|Single precision floating point|Real constant|E|-|-
25 -
26 26  = User registers =
27 27  
28 28  == Input relay (X) ==
... ... @@ -63,7 +63,6 @@
63 63  
64 64  When the timer coil (OUT T instruction) is executed, the timer coil is turned on/off, the current value is updated, and the contact is turned on/off.
65 65  
66 -
67 67  |=Registers|=Timer
68 68  |=T0 to T191|100ms timer
69 69  |=T192 to T199|100ms subroutine timer (used in the subroutine, even if the subroutine is not called, it will still be updated)
... ... @@ -73,21 +73,27 @@
73 73  |=T256 to T383|1ms timer
74 74  |=T384 to T511|0.1ms timer
75 75  
76 -**(1) General-purpose timer (T0 to T245)**
74 +**General-purpose timer (T0 to T245)**
77 77  
78 78  (% style="text-align:center" %)
79 -[[image:02(1)_html_b1b48247f79e373c.gif||height="214" width="800" class="img-thumbnail"]]
77 +[[image:02(1)_html_b1b48247f79e373c.gif||height="165" width="598" class="img-thumbnail"]]
80 80  
81 -As shown in the figure above: when the normally open contact of X0 is turned on, the current value counter of T200 starts timing from zero and counts up the 10ms clock pulse. When the current value is equal to the set value 223, the timer's normally open contact is turned on and the normally closed contact is turned off, that is, the output contact of T200 will act after its coil is driven for 2.23s. After the normally open contact of X0 is disconnected, T200 is reset because the coil is de-energized. After reset, its normally open contact is disconnected, and the normally closed contact is connected, and the current value returns to zero.
79 +As shown in the figure above: when the normally open contact of X0 is turned on, the current value counter of T200 starts timing from zero and counts up the 10ms clock pulse.
82 82  
83 -**(2) Accumulative timer (T246 to T255)**
81 +When the current value is equal to the set value 223, the timer's normally open contact is turned on and the normally closed contact is turned off, that is, the output contact of T200 will act after its coil is driven for 2.23s. After the normally open contact of X0 is disconnected, T200 is reset because the coil is de-energized. After reset, its normally open contact is disconnected, and the normally closed contact is connected, and the current value returns to zero.
84 84  
83 +**Accumulative timer (T246 to T255)**
84 +
85 85  (% style="text-align:center" %)
86 -[[image:02(1)_html_ad4dcbfaa1b0c0af.gif||height="305" width="800" class="img-thumbnail"]]
86 +[[image:02(1)_html_ad4dcbfaa1b0c0af.gif||height="228" width="598" class="img-thumbnail"]]
87 87  
88 -When the X1 normally open contact in Figure b is turned on, the current value counter of T250 accumulates the 10ms clock pulse. When the normally open contact of X1 is disconnected or stopped, the counting stops, and the current value remains unchanged. When the normally open contact of X1 is turned on again, counting continues. When the accumulated time t1+t2 is 4.2s, the current value is equal to the set value of 420, the normally open contact of T250 is turned on and the normally closed contact is turned off. When the normally open contact of X2 is turned on, T250 will reset (because the coil of the accumulative timer will not reset when the power is off, you need to use the normally open contact of X2 and the reset instruction to force T250 to reset).
88 +* When the X1 normally open contact in Figure b is turned on, the current value counter of T250 accumulates the 10ms clock pulse.
89 +* When the normally open contact of X1 is disconnected or stopped, the counting stops, and the current value remains unchanged.
90 +* When the normally open contact of X1 is turned on again, counting continues.
91 +* When the accumulated time t1+t2 is 4.2s, the current value is equal to the set value of 420, the normally open contact of T250 is turned on and the normally closed contact is turned off.
92 +* When the normally open contact of X2 is turned on, T250 will reset (because the coil of the accumulative timer will not reset when the power is off, you need to use the normally open contact of X2 and the reset instruction to force T250 to reset).
89 89  
90 -**(3) Setting value**
94 +**Setting value**
91 91  
92 92  The timer time can use the constants (K, H) in the program memory as the set value, or can be specified indirectly by the content of the data register (D).
93 93  
... ... @@ -98,19 +98,25 @@
98 98  
99 99  == Counter (C) ==
100 100  
101 -The counter is used to complete the counting function. Each counter contains a coil, a contact, and a timer value register. Whenever the driving signal of the counter coil changes from OFF to ON, the counter reading value increases by 1, if the timer value reaches the preset time value, Its contact action, a contact (NO contact) is closed, b contact (NC contact) is opened; if the timing value is cleared, the output a contact will be opened, and b contact (NC contact) will be closed. Some timers have features such as power-down retention, accumulation, etc., and maintain the value before power-down after power-on again.
105 +The counter is used to complete the counting function. Each counter contains a coil, a contact, and a timer value register. Whenever the driving signal of the counter coil changes from OFF to ON, the counter reading value increases by 1.
102 102  
107 +If the timer value reaches the preset time value, its contact action, a contact (NO contact) is closed, b contact (NC contact) is opened;
108 +
109 +If the timing value is cleared, the output a contact will be opened, and b contact (NC contact) will be closed. Some timers have features such as power-down retention, accumulation, etc., and maintain the value before power-down after power-on again.
110 +
103 103  The counters are identified by C0, C1,..., C255, and the order is numbered in decimal.
104 104  
105 105  The counter (C) is a 16-bit counter.
106 106  
107 107  (% style="text-align:center" %)
108 -[[image:02(1)_html_740e6ef971b9c6de.gif||height="234" width="800" class="img-thumbnail"]]
116 +[[image:02(1)_html_740e6ef971b9c6de.gif||height="175" width="598" class="img-thumbnail"]]
109 109  
110 -The setting value of the 16-bit up counter is 1 to 32767. As shown in the working process of the up counter in Figure c, after the normally open contact of X1 in the figure is turned on, C0 is reset, its corresponding bit storage unit is set to 0, the normally open contact of C0 is disconnected, and the normally closed contact Point is turned on, and its current counter value is set to 0 at the same time. X2 provides a counting input signal. When the reset input circuit of the counter is disconnected and the counting input circuit changes from disconnected to connected (that is, the rising edge of the counting pulse), the current value of counter C0 is increased by 1. After 10 count pulses, the current value of C0 is equal to the set value of 10, and its corresponding bit storage unit is set to 1, and the Y0 contact is turned on at this time. When counting pulses again, the current value does not change until the reset input signal is turned on, and the current value of the counter is set to 0.
118 +The setting value of the 16-bit up counter is 1 to 32767. As shown in the working process of the up counter in Figure c, after the normally open contact of X1 in the figure is turned on, C0 is reset, its corresponding bit storage unit is set to 0, the normally open contact of C0 is disconnected, and the normally closed contact Point is turned on, and its current counter value is set to 0 at the same time.
111 111  
112 -== Long Counter (LC) ==
120 +X2 provides a counting input signal. When the reset input circuit of the counter is disconnected and the counting input circuit changes from disconnected to connected (that is, the rising edge of the counting pulse), the current value of counter C0 is increased by 1. After 10 count pulses, the current value of C0 is equal to the set value of 10, and its corresponding bit storage unit is set to 1, and the Y0 contact is turned on at this time. When counting pulses again, the current value does not change until the reset input signal is turned on, and the current value of the counter is set to 0.
113 113  
122 +== Long counter (LC) ==
123 +
114 114  The long counter (LC) is basically the same as the counter (C), but compared to the counter (C), the long counter (LC) is a 32-bit register, and the range of values that can be counted is larger.
115 115  
116 116  The long counter is identified by LC0, LC1,...,LC255, and the sequence is numbered in decimal.
... ... @@ -117,7 +117,7 @@
117 117  
118 118  == High-speed counter (HSC) ==
119 119  
120 - High-speed counter (HSC) is a device used for counting through external input of high-speed pulse signals. HSC is a 32-bit register.
130 +High-speed counter (HSC) is a device used for counting through external input of high-speed pulse signals. HSC is a 32-bit register.
121 121  
122 122  The corresponding parameter configuration can be configured through: “project management” -> “parameters” -> “high-speed counter configuration”:
123 123  
... ... @@ -127,33 +127,32 @@
127 127  (% style="text-align:center" %)
128 128  [[image:02(1)_html_a2d0f82f3579adff.png||class="img-thumbnail"]]
129 129  
140 +== Data register (D&R) ==
130 130  
131 -
132 -== Data Register (D&R) ==
133 -
134 134  Registers are used for data calculation and storage, such as the calculation and calculation of timers, counters, and analog parameters. The width of each register is 16 bits. If 32bit instructions are used, the adjacent registers are automatically formed into 32bit registers for use, the lower address is the low byte, and the higher address is the high byte.
135 135  
136 -The address range of D register: D0 to D7999; the address range of R register: R0 to R29999.
144 +* The address range of D register: D0 to D7999;
145 +* The address range of R register: R0 to R29999.
137 137  
138 138  The data involved in operations in most of our series PLC instructions are processed as signed numbers. For 16-bit registers, bit15 is the sign bit (0 represents a positive number, 1 represents a negative number); for a 32-bit register, the high byte bit15 It is the sign bit, and the value range is -32768 to 32767.
139 139  
140 -When 32-bit data needs to be processed, the two adjacent D registers can be formed into a 32-bit double word. For example, when accessing D100 in 32-bit format, use the high address D101 register as the high word and the high byte bit 15 as The sign bit of a double word can handle values from -2147483648 to 2 147483647.
149 +When 32-bit data needs to be processed, the two adjacent D registers can be formed into a 32-bit double word. For example, when accessing D100 in 32-bit format, use the high address D101 register as the high word and the high byte bit 15 as The sign bit of a double word can handle values from -2147483648 to 2147483647.
141 141  
142 142  = System device =
143 143  
144 -== Special Relay (SM) ==
153 +== Special relay (SM) ==
145 145  
146 146  The special relay SM is an internal relay with a certain specification inside the programmable controller, so it cannot be used in the program like ordinary internal relays. It can be turned ON/OFF as needed to control the PLC.
147 147  
148 -For details, please refer to [[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__Special relays (SM) list__>>path:https://docs.we-con.com.cn/bin/view/PLC%20Editor2/15/#HAppendix1SpecialRelay28SM29]](%%).
157 +For details, please refer to [[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__Special relays (SM) list__>>path:https://docs.we-con.com.cn/bin/view/PLC%20Editor2/15/#HAppendix1SpecialRelay28SM29]](%%).
149 149  
150 -== Special Register (SD) ==
159 +== Special register (SD) ==
151 151  
152 152  The special register SD is an internal register whose specifications are determined within the programmable controller, so it cannot be used in the program like a normal internal register, and the corresponding data can be written as needed to control the PLC.
153 153  
154 -For details, please refer to [[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__Special register (SD) list__>>path:https://docs.we-con.com.cn/bin/view/PLC%20Editor2/15/#HAppendix2SpecialRegister28SD29]](%%).
163 +For details, please refer to [[(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)__Special register (SD) list__>>path:https://docs.we-con.com.cn/bin/view/PLC%20Editor2/15/#HAppendix2SpecialRegister28SD29]](%%).
155 155  
156 -= Index Register =
165 += Index register =
157 157  
158 158  == Index register ([D]) ==
159 159  
... ... @@ -164,16 +164,12 @@
164 164  
165 165  The supported soft components for index modification are as follows:
166 166  
167 -Constant K, H plus index modification, such as D0 = 10, K10[D0] result = 10 + 10 = 20.
176 +* Constant K, H plus index modification, such as D0 = 10, K10[D0] result = 10 + 10 = 20.
177 +* Constant E and character strings do not support index modification.
178 +* Add index modification to the data device, such as D0 = 10, the result of D10[D0] is the value of D20. Even if D10[D0] is used in a double word instruction, the double word value is the value of D20 (low word) and D21 (high word).
179 +* Bit device plus index modification, such as D0 = 10, the result of M0[D0] is the value of M10.
180 +* Bits are combined into words with index modification. For example, D0 = 10, K4M10[D0] first takes M10 offset by 10 addresses, and then combines them. The result is equivalent to K4M10.
168 168  
169 -Constant E and character strings do not support index modification.
170 -
171 -Add index modification to the data device, such as D0 = 10, the result of D10[D0] is the value of D20. Even if D10[D0] is used in a double word instruction, the double word value is the value of D20 (low word) and D21 (high word).
172 -
173 -Bit device plus index modification, such as D0 = 10, the result of M0[D0] is the value of M10.
174 -
175 -Bits are combined into words with index modification. For example, D0 = 10, K4M10[D0] first takes M10 offset by 10 addresses, and then combines them. The result is equivalent to K4M10.
176 -
177 177  Whether the index modification can be used depends on whether each instruction supports the format, you can check the "offset modification" in the description of the available device for each instruction.
178 178  
179 179  = Nesting =
... ... @@ -187,7 +187,7 @@
187 187  
188 188  *1 is an instruction used to create an efficient ladder switching program by opening and closing the common bus of the Circuit program.
189 189  
190 -= pointer =
195 += Pointer =
191 191  
192 192  == Pointer (P) ==
193 193  
... ... @@ -214,11 +214,11 @@
214 214  (% style="text-align:center" %)
215 215  [[image:02(1)_html_8a090037e802011b.png||class="img-thumbnail"]]
216 216  
217 - (The address occupies D1 and D0)
222 + The address occupies D1 and D0.
218 218  
219 219  == String constant ==
220 220  
221 -The character string constant is the device that specifies the character string, and only supports the ASCII code character set, and any character string ends with a NULL character (00H). To use string devices, you must use double eye marks to modify the characters, as follows to convert the string to ASCII characters and fill in the device starting with D0:
226 +The character string constant is the device that specifies the character string, and only supports the ASCII code character set, and any character string ends with a NULL character (00H). To use string devices, you must use double quotation marks to modify the characters, as follows to convert the string to ASCII characters and fill in the device starting with D0:
222 222  
223 223  (% style="text-align:center" %)
224 224  [[image:02(1)_html_61bdd1807e91322f.png||class="img-thumbnail"]]
... ... @@ -225,43 +225,51 @@
225 225  
226 226  = Power-down retention setting =
227 227  
228 -The user can freely configure the power-off storage range within the range of the Devices. The constant configuration is located in: “Project Management”→”Parameters”→”PLC Parameters”→”Device Latch”.
233 +The user can freely configure the power-off storage range within the range of the Devices.
229 229  
235 +The constant configuration is located in: “Project Management”→”Parameters”→”PLC Parameters”→”Device Latch”.
236 +
230 230  (% style="text-align:center" %)
231 231  [[image:02(1)_html_6ba62f454f76a539.png||class="img-thumbnail"]]
232 232  
240 +(% class="box infomessage" %)
241 +(((
233 233  **✎Note: **The X and Y registers do not support the power-down save function.
243 +)))
234 234  
235 235  = Special use of device =
236 236  
237 -**(1) Use bits to form words**
247 +**Use bits to form words**
238 238  
239 239  Format: KnB
240 240  
241 -K is a fixed character.
251 +* K is a fixed character.
252 +* The value of n is 1 to 8, which means that (n * 4) bits are combined into a word, such as K4M0 is a combination of M0 to M15.
253 +* B is the bit device number.
242 242  
243 -The value of n is 1 to 8, which means that (n * 4) bits are combined into a word, such as K4M0 is a combination of M0 to M15.
244 -
245 -B is the bit device number.
246 -
247 247  Example: Set a total of 32 bits M0 to M31 at the same time.
248 248  
249 249  (% style="text-align:center" %)
250 250  [[image:02(1)_html_93f997406ac1572a.png||class="img-thumbnail"]]
251 251  
260 +(% class="box infomessage" %)
261 +(((
252 252  **✎Note: **KnB type can also support index modification.
263 +)))
253 253  
254 -**(2) Take the bit in the word**
265 +**Take the bit in the word**
255 255  
256 256  Format: D.b
257 257  
258 -D is the number of data device D (R is not available).
269 +* D is the number of data device D (R is not available).
270 +* b is the bit number that needs to be taken, hexadecimal, and the value range is 0 to F.
259 259  
260 -b is the bit number that needs to be taken, hexadecimal, and the value range is 0 to F.
261 -
262 262  Example: bit14 in D2000 is set and Y0 is output
263 263  
264 264  (% style="text-align:center" %)
265 265  [[image:02(1)_html_8908a96754754a6.png||class="img-thumbnail"]]
266 266  
277 +(% class="box infomessage" %)
278 +(((
267 267  **✎Note: **D.b type can also support index modification.
280 +)))