Changes for page 01 Program execution

Last modified by Leo Wei on 2024/12/24 22:42

From version 12.1
edited by Stone Wu
on 2022/07/28 16:43
Change comment: Attachment moved from xwiki:PLC Editor2.2\.1 LX5V user manual.WebHome.
To version 13.13
edited by Stone Wu
on 2022/09/23 16:14
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,3 +1,124 @@
1 += **Summary** =
2 +
3 +This manual has a comprehensive introduction to the basic functions of WECON PLC Editor and the actual use. This book is completely aimed at zero-based readers, is an essential reference book for entry-level readers to quickly and fully grasp WECON PLC and WECON PLC Editor.
4 +
5 +This book starts from the basic product of WECON PLC and the basic concept and operation of WECON PLC Editor. It combines with a large number of cases and graphic analysis to comprehensively and deeply explain the use of WECON PLC Editor Software, as well as PLC program.
6 +
7 +WECON technology Co., Ltd. All rights reserved.
8 +
9 += Precautions =
10 +
11 +Before the installation, operation, maintenance and repair of the micro programmable control, please read this manual and other related manuals to ensure correct use. Please use it after you have mastered the operation method, safety information and all
12 +
13 +== Design ==
14 +
15 +In the event of an abnormality in the external power supply or failure of the programmable controller, to ensure the safe operation of the entire system, be sure to install a safety circuit outside the programmable controller.
16 +
17 +1. Be sure to install an emergency brake circuit, a protection circuit, an interlock circuit for reverse operation, such as an emergency brake circuit, a protection circuit, a forward and reverse circuit, and an interlock circuit for the upper and lower positioning limits to prevent machine damage, in the external circuit of the programmable controller.
18 +1. When the programmable controller CPU detects abnormal conditions such as WDT errors through self-diagnosis, all outputs are shut off. In addition, when the programmable controller CPU cannot detect abnormalities in the input/output control part, etc., it cannot control the output. At this time, in order to make the machine operate safely, please design the external circuit and mechanism.
19 +1. Due to the failure of the relay and transistor of the output unit, it is impossible to control the state of the output to ON or OFF. In order to ensure the safe operation of the machine, please design external circuits and mechanisms for output signals related to major accidents.
20 +
21 +== Installation ==
22 +
23 +* Please use it in the general specification environment described in the manual.
24 +** Do not use in the following places: places with dust, oily smoke, conductive dust, corrosive gas, flammable gas; places  exposed to high temperature, condensation, wind and rain; places with vibration or impact. Electric shock, fire, and misoperation can also cause product damage.
25 +* When processing screw holes and wiring, do not let iron filings or wire ends fall into the ventilation window of the programmable controller. It may cause fire, malfunction, or misoperation.
26 +* Please insert the connecting cable and display module accurately into the specified sockets. Poor contact may cause misoperation.
27 +
28 +(% class="box infomessage" %)
29 +(((
30 +**✎Note:**
31 +
32 +* To prevent the temperature from rising, do not install at the bottom, top or vertical direction.Be sure to install it horizontally on the wall as shown on the right.
33 +* Please leave a space of more than 50mm between the host and other equipment or structures.Try to avoid high-voltage lines, high-voltage equipment, and power equipment.
34 +)))
35 +
36 +== Wiring ==
37 +
38 +The signal input and output lines of the programmable controller cannot pass through the same cable.
39 +
40 +In addition, signal input lines and output lines cannot pass through the same pipeline with other power lines and output lines, and cannot be bundled together.
41 +
42 +If implemented according to the above precautions, even if the input and output wiring is as long as 50 to 100m, there is almost no noise problem. But generally for safety, the wiring length should be within 20m.
43 +
44 +(% style="text-align:center" %)
45 +[[image:PLC Editor2.01 Program execution.WebHome@1652145475206-244.png||height="179" width="200" class="img-thumbnail"]]
46 +
47 +(% class="box infomessage" %)
48 +(((
49 +**✎Note:**
50 +
51 +* The installation and wiring must be performed when the external power supply is cut off. Otherwise, it may cause electric shock or product damage.
52 +* After installation and wiring, etc., the terminal cover must be installed before power-on operation to avoid electric shock.
53 +)))
54 +
55 +(% class="table-bordered" %)
56 +|=(% scope="row" %)(((
57 +
58 +
59 +
60 +[[image:PLC Editor2.01 Program execution.WebHome@1652145267405-613.png||class="img-thumbnail"]]
61 +
62 +**Danger**
63 +)))|(((
64 +(% style="text-align:center" %)
65 +[[image:PLC Editor2.01 Program execution.WebHome@0-1.png||height="141" width="400" class="img-thumbnail"]]
66 +
67 +It is very dangerous to close the positive and negative contactors at the same time. For loads like this, in addition to the interlock set by the internal program of the programmable controller, the interlock shown above must also be set outside the programmable controller.
68 +)))
69 +|=(((
70 + [[image:PLC Editor2.01 Program execution.WebHome@1652145275238-798.png||height="45" width="50" class="img-thumbnail"]]
71 +
72 +**Attention**
73 +)))|Do not connect the empty terminal to the outside, otherwise the product will be damaged.
74 +
75 +* Please connect the AC power supply to the dedicated terminal according to the content in the manual.
76 +* If the AC power supply is connected to the DC input/output terminal or the DC power supply terminal, the programmable controller will be burnt out.
77 +* Please do not supply power to the 24+ terminal of the basic unit from the external power supply, and to the empty terminal    . Do not wire from the outside, otherwise the product will be damaged.
78 +* Please ground the ground terminal of the basic unit according to the third method. But please do not share the ground with the strong current system.
79 +
80 +**Attached**
81 +
82 +The programmable controller will continue to work if there is an instantaneous power failure of less than 10ms.
83 +
84 +When the power is cut for a long time or the voltage is low, the programmable controller will stop working and the output will turn OFF, but once the power supply is restored, it will automatically restart.
85 +
86 +== Startup and maintenance ==
87 +
88 +(% class="table-bordered" %)
89 +(% class="warning" %)|=**Danger**
90 +|(((
91 +Please do not touch the terminals when the power is on, otherwise it may cause electric shock or misoperation.
92 +
93 +Please clean and disassemble the terminal after the power is turned off. Performing it while the power is on may cause electric shock.
94 +
95 +Please read the manual thoroughly and fully confirm the safety before proceeding with program changes, forced output, RUN/STOP, etc. during machine operation.
96 +
97 +Operation errors can damage the machine and cause accidents.
98 +)))
99 +
100 +(% class="table-bordered" %)
101 +(% class="warning" %)|=**Caution**
102 +|(((
103 +Please do not disassemble or modify, otherwise it may cause malfunction, malfunction, fire.
104 +
105 +※For repair matters, please contact Fuzhou Wecon Electronic Technology Co., Ltd.
106 +
107 +After the power is turned off, perform the installation and disassembly of the extension cables and other connecting cables, otherwise it may cause malfunctions and malfunctions.
108 +)))
109 +
110 +== **Maintenance** ==
111 +
112 +Regular inspection: Whether the programmable controller is equipped with consumables with a shorter life.
113 +
114 +For relay output type, if the output relay works abnormally at a high frequency or drives a large-capacity load, you must pay attention to its impact on the service life.
115 +
116 +Check with other equipment, please pay attention to the following points:
117 +
118 +* Whether there is an abnormal increase in the temperature inside the machine due to other heating elements or direct sunlight.
119 +* Whether dust or conductive dust has penetrated into the machine.
120 +* Whether there are loose wiring and terminals or other abnormalities
121 +
1 1  = Scan structure =
2 2  
3 3  The scan configuration of the CPU module is as follows.
... ... @@ -9,11 +9,12 @@
9 9  
10 10  The initialization based on the status of the CPU module is as follows.
11 11  
12 -**√**: execute. **×**: not execute
133 +* **√**: execute
134 +* **×**: not execute
13 13  
14 14  (% class="table-bordered" %)
15 -|(% rowspan="2" %)**Processing item**|(% colspan="3" %)**Status of the CPU module**
16 -|**When the power is ON**|**STOP**|**When STOP RUN**
137 +|=(% rowspan="2" %)**Processing item**|=(% colspan="3" %)**Status of the CPU module**
138 +|=**When the power is ON**|=**STOP**|=**When STOP RUN**
17 17  |Initialization of input and output modules|√|×|×
18 18  |CPU parameter check|√|×|×
19 19  |Check of system parameters|√|×|×
... ... @@ -24,11 +24,11 @@
24 24  
25 25  Perform the following before starting program calculation.      
26 26  
27 -Update the actual input point of the PLC to the input relay X.
149 +* Update the actual input point of the PLC to the input relay X.
28 28  
29 29  The following is executed after the END instruction is executed.
30 30  
31 -Update the PLC output relay Y to the actual output point.
153 +* Update the PLC output relay Y to the actual output point.
32 32  
33 33  **Key points**
34 34  
... ... @@ -60,10 +60,8 @@
60 60  
61 61  It is the first scan time of the CPU module in RUN.
62 62  
63 -Process as the following way:
185 +Process as the following way: The value stored in SD134 (initial scan time (ms unit)) and SD135 (initial scan time (s unit)).
64 64  
65 -The value stored in SD134 (initial scan time (ms unit)) and SD135 (initial scan time (s unit)).
66 -
67 67  = The flow of each procedure =
68 68  
69 69  When the CPU module changes to the RUN state, the programs are executed in sequence according to the program execution type and execution sequence settings.
... ... @@ -75,10 +75,11 @@
75 75  
76 76  When the execution types of the programs are the same, they are executed in the order set in the execution order.
77 77  
78 -**✎Note:**
198 +(% class="box infomessage" %)
199 +(((
200 +**✎Note:** When executing instructions that can be completed with multiple cycles (such as OUT T, RAMP, RS, etc.), they should be programmed in the scan program. If it is used in event execution type programs and mid-stage execution type programs, these instructions may not be executed in multiple scan cycles, causing actual results to be different from the ideal results. Therefore, unless events, interrupts and subroutines can be executed in each scan cycle. It is not recommended to use multi-cycle execution instructions in other situations.
201 +)))
79 79  
80 -When executing instructions that can be completed with multiple cycles (such as OUT T, RAMP, RS, etc.), they should be programmed in the scan program. If it is used in event execution type programs and mid-stage execution type programs, these instructions may not be executed in multiple scan cycles, causing actual results to be different from the ideal results. Therefore, unless events, interrupts and subroutines can be executed in each scan cycle. It is not recommended to use multi-cycle execution instructions in other situations.
81 -
82 82  = Types of program execution =
83 83  
84 84  == Scan execution program ==
... ... @@ -97,11 +97,11 @@
97 97  (% style="text-align:center" %)
98 98  [[image:1-5.png||height="372" width="300" class="img-thumbnail"]]
99 99  
100 -* Scan the program name: the program name requires to match case, and the program name cannot use the same name with device name (the device name does not match case).
101 -* The input of /%$@&=to`^<>?:{}[],;!*.~\~\'" is not supported. It cannot exceed 64 characters. The default name is MAINx.
102 -* The number of scan programs that can be built is limited to 100.
103 -* Each scan program has been END ended, but only the last END instruction is completed to calculate a scan cycle.
104 -* The execution sequence runs from top to bottom in the order of creation.
221 +1. Scan the program name: the program name requires to match case, and the program name cannot use the same name with device name (the device name does not match case).
222 +1. The input of /%$@&=~~`^<>?:{}[],;!*.~\~\'" is not supported. It cannot exceed 64 characters. The default name is MAINx.
223 +1. The number of scan programs that can be built is limited to 100.
224 +1. Each scan program has been END ended, but only the last END instruction is completed to calculate a scan cycle.
225 +1. The execution sequence runs from top to bottom in the order of creation.
105 105  
106 106  (% style="text-align:center" %)
107 107  [[image:1-6.png||class="img-thumbnail"]]
... ... @@ -117,7 +117,7 @@
117 117  
118 118  The trigger of event execution type program is as follows.
119 119  
120 -**(1) ON event of bit data (TRUE)**
241 +**ON event of bit data (TRUE)**
121 121  
122 122  * After the ON event is specified, if the contact that sets the trigger condition in the ON event is turned ON during the scan program, the ON event program will be executed in the scan program page*1 or before the END instruction is executed.
123 123  * The ON event program will only be executed once in a single scan cycle.
... ... @@ -133,13 +133,13 @@
133 133  The devices that can be specified are as follows.
134 134  
135 135  (% class="table-bordered" %)
136 -|(% colspan="2" %)**Project**|**Content**
257 +|=(% colspan="2" %)**Project**|=**Content**
137 137  |(% rowspan="2" %)Device *1|Bit Device|X, Y, M, SM
138 138  |Bit specification of word device|D.b
139 139  
140 140  *1 The indexed device cannot be specified.
141 141  
142 -**(2) TIME event**
263 +**TIME event**
143 143  
144 144  After the program is to RUN state and the specified time has elapsed, event is executed one time when it comes to the execution sequence of the first corresponding program. For the second and subsequent executions, the time is re-measured from the start of the last event execution type program. After the specified time has elapsed, the program is executed repeatedly when it comes to the execution sequence of the first corresponding program. In addition, in the next scan after the corresponding program is executed, the current value of the output (Y) and timer (T) used in the corresponding program can be cleared. It can be used for programs that do not need to respond in a fixed period of time.
145 145  
... ... @@ -164,7 +164,7 @@
164 164  Event program name:
165 165  
166 166  * The program name requires to match case, and the program name with the same name as the device cannot be used (the device name does not match case).
167 -* The program name does not support /%$@&=to`^<>?:{}[],;!*.~\~\'" character input.
288 +* The program name does not support /%$@&=~~`^<>?:{}[],;!*.~\~\'" character input.
168 168  * The length of the program name cannot exceed 64 characters. The default name is EVENTx.
169 169  
170 170  A maximum of 100 new event programs could be created.
... ... @@ -179,26 +179,26 @@
179 179  (% style="text-align:center" %)
180 180  [[image:1-11.png||height="419" width="500" class="img-thumbnail"]]
181 181  
182 -Configuration instructions:
303 +**Configuration instructions:**
183 183  
184 - 1) Configuration interface
305 + Configuration interface
185 185  
186 186  (% style="text-align:center" %)
187 187  [[image:1-12.png||height="372" width="300" class="img-thumbnail"]]
188 188  
189 -2) Parameter content:
310 +Parameter content:
190 190  
191 191  (% class="table-bordered" %)
192 -|(% colspan="2" %)**Project**|**Content**|**Setting range**|**Default**
193 -|(% colspan="2" %)Execution type|Select event type|Not set/ON event/TIME event|Not set
194 -|(% rowspan="2" %)ON event|Contact|The event type can be set when ON event is selected. Set the bit device as the trigger condition.|X/Y/M/SM/D.b|
195 -|Whether to clear|When the bit device of the trigger condition set by the ON event is turned OFF, whether to clear the current value of the output (Y) and timer (T) used in the execution program of the ON event in the next cycle.|(((
313 +|=(% colspan="2" %)**Project**|=(% style="width: 654px;" %)**Content**|=(% style="width: 190px;" %)**Setting range**|=**Default**
314 +|(% colspan="2" %)Execution type|(% style="width:654px" %)Select event type|(% style="width:190px" %)Not set/ON event/TIME event|Not set
315 +|(% rowspan="2" %)ON event|Contact|(% style="width:654px" %)The event type can be set when ON event is selected. Set the bit device as the trigger condition.|(% style="width:190px" %)X/Y/M/SM/D.b|
316 +|Whether to clear|(% style="width:654px" %)When the bit device of the trigger condition set by the ON event is turned OFF, whether to clear the current value of the output (Y) and timer (T) used in the execution program of the ON event in the next cycle.|(% style="width:190px" %)(((
196 196  True
197 197  
198 198  False
199 199  )))|False
200 -|(% rowspan="2" %)TIME event|Time|Set how long to execute the event program once.|1 to 2147483647 (100us unit)|
201 -|Whether to clear|When the TIME event is executed, if the event is not executed in the next scan cycle, select whether to clear the output (Y) used in the TIME event execution program and the current value of the timer (T).|(((
321 +|(% rowspan="2" %)TIME event|Time|(% style="width:654px" %)Set how long to execute the event program once.|(% style="width:190px" %)1 to 2147483647 (100us unit)|
322 +|Whether to clear|(% style="width:654px" %)When the TIME event is executed, if the event is not executed in the next scan cycle, select whether to clear the output (Y) used in the TIME event execution program and the current value of the timer (T).|(% style="width:190px" %)(((
202 202  True
203 203  
204 204  False
... ... @@ -212,78 +212,61 @@
212 212  
213 213  In the process of executing the scan program, the program that can interrupt the priority execution of the scan program is called an interrupt execution program.
214 214  
215 - ~1. When an interrupt cause occurs, the interrupt program corresponding to the interrupt pointer number will be executed. However, the execution needs to be set to the interrupt enabled state by the EI instruction.
336 +* When an interrupt cause occurs, the interrupt program corresponding to the interrupt pointer number will be executed. However, the execution needs to be set to the interrupt enabled state by the EI instruction.
216 216  
217 217  (% style="text-align:center" %)
218 218  [[image:1652249587490-678.png||class="img-thumbnail"]]
219 219  
220 220  
221 - 2. An interrupt name corresponds to an interrupt program, and the interrupt name cannot be repeated. Each interrupt has its own trigger condition and execution program, and each interrupt program ends with END.
342 +* An interrupt name corresponds to an interrupt program, and the interrupt name cannot be repeated. Each interrupt has its own trigger condition and execution program, and each interrupt program ends with END.
343 +* Interrupt has the characteristic of interrupting the original execution program and executing the interrupt first, but it cannot interrupt the interrupt program being executed.
344 +* The interrupt program has the concept of priority. The smaller the priority value, the more priority the response. The priority setting range is 0 to 2.
222 222  
223 - 3. Interrupt has the characteristic of interrupting the original execution program and executing the interrupt first, but it cannot interrupt the interrupt program being executed.
346 +**The actions when an interruption cause occurs are as follows:**
224 224  
225 - 4. The interrupt program has the concept of priority. The smaller the priority value, the more priority the response. The priority setting range is 0 to 2.
348 +* Interrupt prohibition (DI) when an interruption cause occurs.
349 +** If the interrupt execution condition is triggered in a program that is forbidden by DI, the interrupt will not be executed. Even if the subsequent program uses the EI instruction to allow interruption, the previously shielded interrupt program will not be executed. Only the interrupt execution condition is triggered again. The interrupt program will be executed.
350 +* When multiple interrupt causes occur simultaneously in the interrupt enabled state.
351 +** The interrupt program with higher priority will be executed sequentially. In addition, when multiple interrupts with the same priority occur at the same time, the actions are executed in the order of interrupt priority.
352 +** If three interrupt programs I0, I10, I16 are created, the priority of I0 is 1, the priority of I10 is 0, and the priority of I16 is 1. The execution logic is shown in the figure below: I10 has the smallest priority and is executed first; I0 and I16 have the same priority and are executed in the order of program establishment.
226 226  
227 -The actions when an interruption cause occurs are as follows:
228 -
229 -1. Interrupt prohibition (DI) when an interruption cause occurs.
230 -
231 -If the interrupt execution condition is triggered in a program that is forbidden by DI, the interrupt will not be executed. Even if the subsequent program uses the EI instruction to allow interruption, the previously shielded interrupt program will not be executed. Only the interrupt execution condition is triggered again. The interrupt program will be executed.
232 -
233 - 2.When multiple interrupt causes occur simultaneously in the interrupt enabled state.
234 -
235 -The interrupt program with higher priority will be executed sequentially. In addition, when multiple interrupts with the same priority occur at the same time, the actions are executed in the order of interrupt priority.
236 -
237 -If three interrupt programs I0, I10, I16 are created, the priority of I0 is 1, the priority of I10 is 0, and the priority of I16 is 1. The execution logic is shown in the figure below: I10 has the smallest priority and is executed first; I0 and I16 have the same priority and are executed in the order of program establishment.
238 -
239 239  (% style="text-align:center" %)
240 240  [[image:1652249553246-688.png||class="img-thumbnail"]]
241 241  
242 - 3. When an interrupt occurs during the waiting time when performing constant scan.
357 +* When an interrupt occurs during the waiting time when performing constant scan.
358 +** Execute the interrupt program for this interrupt.
359 +* When other interrupts occur during the execution of the interrupt program.
360 +** In the interrupt program (including the specification when the interrupt occurs in the event execution program), when other interrupts occur, the original interrupt execution program will not be interrupted. After the original interrupt execution program is completed, the new interrupt program is executed. After the execution is completed Then return to the scanning procedure.
361 +* During the execution of the interrupt program, when an interrupt cause with a low priority or the same priority occurs.
362 +** The interruption cause that occurred is stored, and after the interrupt program in execution ends, the interrupt program corresponding to the stored interruption cause is executed. Even if the same interruption cause occurs multiple times, the interruption cause is stored only once.
243 243  
244 -Execute the interrupt program for this interrupt.
245 245  
246 - 4.When other interrupts occur during the execution of the interrupt program.
247 -
248 -In the interrupt program (including the specification when the interrupt occurs in the event execution program), when other interrupts occur, the original interrupt execution program will not be interrupted. After the original interrupt execution program is completed, the new interrupt program is executed. After the execution is completed Then return to the scanning procedure.
249 -
250 - 5. During the execution of the interrupt program, when an interrupt cause with a low priority or the same priority occurs.
251 -
252 -The interruption cause that occurred is stored, and after the interrupt program in execution ends, the interrupt program corresponding to the stored interruption cause is executed. Even if the same interruption cause occurs multiple times, the interruption cause is stored only once.
253 -
254 -
255 255  (% style="text-align:center" %)
256 256  [[image:1652249673420-476.png||class="img-thumbnail"]]
257 257  
258 - 6. When the same interruption cause occurs during the execution of the interrupt program;
368 +* When the same interruption cause occurs during the execution of the interrupt program;
369 +** The interruption cause that occurred is stored, and after the interrupt program in execution ends, the interrupt program corresponding to the stored interruption cause is executed. Even if the same interruption cause occurs multiple times, the interruption cause is stored only once.
259 259  
260 -The interruption cause that occurred is stored, and after the interrupt program in execution ends, the interrupt program corresponding to the stored interruption cause is executed. Even if the same interruption cause occurs multiple times, the interruption cause is stored only once.
261 -
262 262  **Interrupt trigger condition classification**
263 263  
264 -1. **External input (X) interrupt**
373 +* **External input (X) interrupt**
374 +** Description of external input interrupt
375 +*** The external input interrupt is triggered by the rising or falling edge of the fixed X point input.
376 +*** Supports the rising and falling edge interrupts of a total of 8 input points of X0 to X7, and supports a total of 16 external input interrupts.
377 +*** The same interrupt trigger condition cannot create multiple interrupt programs.
378 +*** External input interrupt and high-speed counter cannot use the same X point.
379 +*** You must use EI in the scan program to allow interrupts before the interrupt execution program will be executed.
380 +* **External input interrupt steps.**
381 +** Project management→ Program→ Interrupt→ right click to create.
382 +** The interrupt program name requires to match case, and the program name with the same name as the device cannot be used (the device name does not match case),
383 +** The interrupt program name does not support the input of /%$@&=~~`^<>?:{}[],;!*.~\~\'" characters,
384 +** The length of the interrupt program name cannot exceed 64 characters and cannot be typed. The default name is INTx.
265 265  
266 -**~ **1. Description of external input interrupt
267 -
268 -1. The external input interrupt is triggered by the rising or falling edge of the fixed X point input.
269 -1. Supports the rising and falling edge interrupts of a total of 8 input points of X0 to X7, and supports a total of 16 external input interrupts.
270 -1. The same interrupt trigger condition cannot create multiple interrupt programs.
271 -1. External input interrupt and high-speed counter cannot use the same X point.
272 -1. You must use EI in the scan program to allow interrupts before the interrupt execution program will be executed.
273 -
274 - 2. External input interrupt steps.
275 -
276 -Project management→ Program→ Interrupt→ right click to create
277 -
278 278  (% style="text-align:center" %)
279 279  [[image:1-16.png||class="img-thumbnail"]]
280 280  
281 -1. The interrupt program name requires to match case, and the program name with the same name as the device cannot be used (the device name does not match case),
282 -1. The interrupt program name does not support the input of /%$@&=to`^<>?:{}[],;!*.~\~\'" characters,
283 -1. The length of the interrupt program name cannot exceed 64 characters and cannot be typed. The default name is INTx.
389 +* Click Configure, and select external interrupt for execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management):
284 284  
285 -Click Configure, and select external interrupt for execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management):
286 -
287 287  (% style="text-align:center" %)
288 288  [[image:1-17.png||class="img-thumbnail"]]
289 289  
... ... @@ -303,7 +303,7 @@
303 303  Note: X rising edge interrupt and X falling edge interrupt use the same X filter, so after the filter setting is changed in the X rising edge configuration, the X falling edge will also change. If the filter time is set to 1000, you must ensure that the high level and low level of the input signal are maintained for more than 10 us before the interrupt can be triggered.
304 304  )))|0 to 1700|1
305 305  
306 -1. Write interrupt execution program
410 +* Write interrupt execution program
307 307  
308 308  (% style="text-align:center" %)
309 309  [[image:1-18.png||class="img-thumbnail"]]
... ... @@ -313,19 +313,19 @@
313 313  (% style="text-align:center" %)
314 314  [[image:1652250056160-117.png||height="215" width="500" class="img-thumbnail"]]
315 315  
316 -**~ 2.Timer interrupt**
420 +**Timer interrupt**
317 317  
318 -1. Timer interrupt description
422 +Timer interrupt description
319 319  
320 -1. Timer interrupt is based on the set time, execute the interrupt program every this time, the minimum time interval can reach 100us.
321 -1. Up to 100 timer interrupt execution programs can be created.
322 -1. Each timer interrupt program is independent of each other and does not affect each other.
323 -1. Each timer interrupt program should be configured with priority. When triggered at the same time, it is executed in the order of priority, but when the priority is the same, it is executed in the order of the established program.
324 -1. The interrupt execution program is executed only after EI is used in the scanner to allow the interrupt
424 +* Timer interrupt is based on the set time, execute the interrupt program every this time, the minimum time interval can reach 100us.
425 +* Up to 100 timer interrupt execution programs can be created.
426 +* Each timer interrupt program is independent of each other and does not affect each other.
427 +* Each timer interrupt program should be configured with priority. When triggered at the same time, it is executed in the order of priority, but when the priority is the same, it is executed in the order of the established program.
428 +* The interrupt execution program is executed only after EI is used in the scanner to allow the interrupt
325 325  
326 - 2. Timer interrupt step
430 +Timer interrupt step
327 327  
328 -Project managementðProgramðInterruptðRight click to create. Enter the program name. The program name only supports the combination of English letters, numbers, and underscores, and must start with an English letter. The default is INTx. Click Configure and select Timer Interrupt as the execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management).
432 +* Project managementðProgramðInterruptðRight click to create. Enter the program name. The program name only supports the combination of English letters, numbers, and underscores, and must start with an English letter. The default is INTx. Click Configure and select Timer Interrupt as the execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management).
329 329  
330 330  (% style="text-align:center" %)
331 331  [[image:1-20.png||class="img-thumbnail"]]
... ... @@ -336,34 +336,35 @@
336 336  |(% rowspan="2" %)Timer interrupt|Time|Set the interval time for interrupt triggering|1 to 2147483647 (100us unit)|
337 337  |priority|When multiple interrupts arrive at the same time, the order of priority execution, the smallest value is executed first|0 to 2|0
338 338  
339 -1. Write interrupt execution program
443 +Write interrupt execution program
340 340  
341 341  (% style="text-align:center" %)
342 342  [[image:1-21.png||class="img-thumbnail"]]
343 343  
344 -Double-click the newly created timer interrupt program in the project management to start writing the interrupt execution program. As shown in the figure above, a newly created timer interrupt program is INT0, and the trigger condition is configured to execute the interrupt program every 10ms. If the main program uses EI to enable interrupts, all instruction programs in INT0 will be executed every 10ms, namely D0 It will add 1 to 10ms.
448 +* Double-click the newly created timer interrupt program in the project management to start writing the interrupt execution program. As shown in the figure above, a newly created timer interrupt program is INT0, and the trigger condition is configured to execute the interrupt program every 10ms. If the main program uses EI to enable interrupts, all instruction programs in INT0 will be executed every 10ms, namely D0 It will add 1 to 10ms.
345 345  
346 346  (% style="text-align:center" %)
347 347  [[image:1652250294005-455.png||class="img-thumbnail"]]
348 348  
349 -**~ 3. High-speed counter interrupt**
453 +**High-speed counter interrupt**
350 350  
351 -1. Description of high-speed counter interrupt
455 +Description of high-speed counter interrupt
352 352  
353 -1. The high-speed counter interrupt triggers an interrupt condition after the set value of the high-speed counter HSC0 to HSC7 provided by the PLC and executes the interrupt program.
354 -1. It can support up to 100 high-speed counter interrupt programs, but the number that can be supported by each channel does not need to be fixed.
355 -1. When using the high-speed counter interrupt, project must configure the high-speed counter and use the OUT HSC instruction to enable the corresponding counting channel to count before it can be used (see the high-speed counter description section for the specific configuration method).
356 -1. Each high-speed counter interrupt program should be configured with priority. When triggered at the same time, it will be executed in the order of priority. When the priority is the same, it will be executed in the order of channels HSC0-HSC7. When the channel is also the same, it is executed in order according to the creation promise.
357 -1. Project must use EI in the scan program to allow interrupts before the interrupt execution program will be executed.
457 +* The high-speed counter interrupt triggers an interrupt condition after the set value of the high-speed counter HSC0 to HSC7 provided by the PLC and executes the interrupt program.
458 +* It can support up to 100 high-speed counter interrupt programs, but the number that can be supported by each channel does not need to be fixed.
459 +* When using the high-speed counter interrupt, project must configure the high-speed counter and use the OUT HSC instruction to enable the corresponding counting channel to count before it can be used (see the high-speed counter description section for the specific configuration method).
460 +* Each high-speed counter interrupt program should be configured with priority. When triggered at the same time, it will be executed in the order of priority. When the priority is the same, it will be executed in the order of channels HSC0-HSC7. When the channel is also the same, it is executed in order according to the creation promise.
461 +* Project must use EI in the scan program to allow interrupts before the interrupt execution program will be executed.
358 358  
359 -**✎Note: **Both the HSC channel and the external input interrupt channel must use the PLC input point X. It should be noted that it
463 +(% class="box infomessage" %)
464 +(((
465 +**✎Note: **Both the HSC channel and the external input interrupt channel must use the PLC input point X. It should be noted that it cannot be reused during configuration. For details, please refer to the configuration chapter of the high-speed counter.
466 +)))
360 360  
361 -cannot be reused during configuration. For details, please refer to the configuration chapter of the high-speed counter.
468 +High-speed counter interrupt steps
362 362  
363 -1. high-speed counter interrupt step
470 +* “Project management”ð“Programð“Interrupt”ðRight click to create. Enter the program name. The program name only supports the combination of English letters, numbers, and underscores, and must start with an English letter. The default is INTx. Click Configure, select high-speed interrupt for execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management).
364 364  
365 -“Project management”ð“Programð“Interrupt”ðRight click to create. Enter the program name. The program name only supports the combination of English letters, numbers, and underscores, and must start with an English letter. The default is INTx. Click Configure, select high-speed interrupt for execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management).
366 -
367 367  (% style="text-align:center" %)
368 368  [[image:1-23.png||class="img-thumbnail"]]
369 369  
... ... @@ -396,56 +396,57 @@
396 396  |Priority|When multiple interrupts arrive at the same time, the order of priority execution, the smallest value is executed first|0 to 2|0
397 397  |Contact|It is available when selecting high-speed comparison set and high-speed comparison reset. The contact is set or reset immediately after the trigger condition is reached.|Y/M/D.b|
398 398  
399 - 3. Description of triggering rules
504 + Description of triggering rules
400 400  
401 401  (% class="table-bordered" %)
402 -|**Mode**|**Configuration**|**The current value**|**Action**
403 -|(% rowspan="2" %)High-speed compare interrupt (INT0)|(% rowspan="2" %)Comparison value: 10000|9999 → 10000|Execute all programs in interrupt INT0
404 -|10001 → 10000|Execute all programs in interrupt INT0
405 -|(% rowspan="2" %)High-speed comparison set (INT1)|(% rowspan="2" %)(((
507 +|(% style="width:135px" %)**Mode**|(% style="width:187px" %)**Configuration**|(% style="width:128px" %)**The current value**|(% style="width:324px" %)**Action**
508 +|(% rowspan="2" style="width:135px" %)High-speed compare interrupt (INT0)|(% rowspan="2" style="width:187px" %)Comparison value: 10000|(% style="width:128px" %)9999 → 10000|(% style="width:324px" %)Execute all programs in interrupt INT0
509 +|(% style="width:128px" %)10001 → 10000|(% style="width:324px" %)Execute all programs in interrupt INT0
510 +|(% rowspan="2" style="width:135px" %)High-speed comparison set (INT1)|(% rowspan="2" style="width:187px" %)(((
406 406  Comparison value: -50,000
407 407  
408 408  Contact: Y10
409 -)))|-50001 → -50000|(((
514 +)))|(% style="width:128px" %)-50001 → -50000|(% style="width:324px" %)(((
410 410  Y10 is immediately set and mapped to the actual output (not affected by the scan period)
411 411  
412 412  The program in INT1 will not be executed
413 413  )))
414 -|-49999 → -50000|(((
519 +|(% style="width:128px" %)-49999 → -50000|(% style="width:324px" %)(((
415 415  Y10 is immediately set and mapped to the actual output (not affected by the scan period)
416 416  
417 417  The program in INT1 will not be executed
418 418  )))
419 -|(% rowspan="2" %)High-speed comparison reset (INT2)|(% rowspan="2" %)(((
524 +|(% rowspan="2" style="width:135px" %)High-speed comparison reset (INT2)|(% rowspan="2" style="width:187px" %)(((
420 420  Comparison value: 400000
421 421  
422 422  Contact: Y10
423 -)))|399999 → 400000|(((
528 +)))|(% style="width:128px" %)399999 → 400000|(% style="width:324px" %)(((
424 424  Y10 is reset immediately and mapped to the actual output (not affected by the scan period)
425 425  
426 426  The program in INT2 will not be executed
427 427  )))
428 -|400001 → 400000|(((
533 +|(% style="width:128px" %)400001 → 400000|(% style="width:324px" %)(((
429 429  Y10 is reset immediately and mapped to the actual output (not affected by the scan period)
430 430  
431 431  The program in INT2 will not be executed
432 432  )))
433 433  
539 +(% class="box infomessage" %)
540 +(((
434 434  **✎Note: **Both HSC channel and external input interrupt channel need to use the INPUT point X, so it should be noted that it cannot be reused in configuration. For details, please refer to the configuration section of high-speed counter.
542 +)))
435 435  
436 -1. Write interrupt execution program
544 +Write interrupt execution program
437 437  
438 438  * New interrupt program
547 +** Create three new interrupt programs under the interrupt of project management, namely HSC0_20000, HSC0_30000, HSC0_40000. Configure the interrupt program in the "program parameters", as shown in the figure below.
439 439  
440 -Create three new interrupt programs under the interrupt of project management, namely HSC0_20000, HSC0_30000, HSC0_40000. Configure the interrupt program in the "program parameters", as shown in the figure below.
441 -
442 442  (% style="text-align:center" %)
443 443  [[image:1-24.png||class="img-thumbnail"]]
444 444  
445 445  * High-speed counter configuration
553 +** Configure HSC0 for use in the high-speed counter configuration. After selecting the working mode, click the "Check” button. After the correct configuration box pops up, click Enter.
446 446  
447 -Configure HSC0 for use in the high-speed counter configuration. After selecting the working mode, click the "Check” button. After the correct configuration box pops up, click Enter.
448 -
449 449  (% style="text-align:center" %)
450 450  [[image:1-25.png||class="img-thumbnail"]]
451 451  
... ... @@ -455,31 +455,29 @@
455 455  
456 456  Program operation:
457 457  
458 -Assuming that the High-speed counter channel 0 has been receiving pulses:
564 +* Assuming that the High-speed counter channel 0 has been receiving pulses:
565 +** When the count value of HSC0 accumulates from 0 to 20000, all procedures of HSC0_20000 are executed.
566 +** When the count value of HSC0 is accumulated from 20000 to 30000, all procedures of HSC0_30000 are executed.
567 +** When the count value of HSC0 is accumulated from 30000 to 40000, all procedures of HSC0_40000 are executed.
459 459  
460 -When the count value of HSC0 accumulates from 0 to 20000, all procedures of HSC0_20000 are executed.
461 -
462 -When the count value of HSC0 is accumulated from 20000 to 30000, all procedures of HSC0_30000 are executed.
463 -
464 -When the count value of HSC0 is accumulated from 30000 to 40000, all procedures of HSC0_40000 are executed.
465 -
466 466  **Mask interrupt**
467 467  
468 -**~ 1. Mask through application instructions**
571 +Mask through application instructions
469 469  
470 -The PLC interrupt is in the shielded state by default when it is powered on, and can only be used after the interrupt is allowed through the EI instruction.
573 +* The PLC interrupt is in the shielded state by default when it is powered on, and can only be used after the interrupt is allowed through the EI instruction.
574 +* The interrupt mask instruction DI masks all interrupts without parameters, and masks some priority interrupts with parameters (refer to the program flow instruction DI/EI for details).
471 471  
472 -The interrupt mask instruction DI masks all interrupts without parameters, and masks some priority interrupts with parameters (refer to the program flow instruction DI/EI for details).
576 +Mask through special registers SM and SD
473 473  
474 -**~ 2. Mask through special registers SM and SD**
475 -
476 -1.External input interrupt mask register
477 -
478 478  (% class="table-bordered" %)
479 -|(% colspan="4" %)**External input interrupt mask register**
480 -|**Special register number**|**Type of interrupt**|**Instruction**|**Defaults**
579 +|=(% colspan="4" %)**External input interrupt mask register**
580 +|=**Special register number**|=**Type of interrupt**|=**Instruction**|=**Defaults**
481 481  |SM352|X0 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
482 -|SM353|X0 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
582 +|SM353|X0 falling edge interrupt|(((
583 +ON: Ma
584 +
585 +sk interrupt OFF: Enable interrupt
586 +)))|OFF
483 483  |SM354|X1 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
484 484  |SM355|X1 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
485 485  |SM356|X2 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
... ... @@ -495,11 +495,9 @@
495 495  |SM366|X7 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
496 496  |SM367|X7 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
497 497  
498 -2. Timer interrupt mask register
499 -
500 500  (% class="table-bordered" %)
501 -|(% colspan="4" %)**Timer interrupt mask register**
502 -|**Special register number**|**Type of interrupt**|**Instruction**|**Default**
603 +|=(% colspan="4" %)**Timer interrupt mask register**
604 +|=**Special register number**|=**Type of interrupt**|=**Instruction**|=**Default**
503 503  |SD350|1st to 16th timer interrupt|(((
504 504  Each bit can control the mask of an interrupt.
505 505