Changes for page 01 Program execution

Last modified by Jiahao Lai on 2025/07/18 17:39

From version 15.1
edited by Stone Wu
on 2022/09/23 16:24
Change comment: There is no comment for this version
To version 13.11
edited by Stone Wu
on 2022/09/23 16:05
Change comment: (Autosaved)

Summary

Details

Page properties
Content
... ... @@ -361,6 +361,7 @@
361 361  * During the execution of the interrupt program, when an interrupt cause with a low priority or the same priority occurs.
362 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.
363 363  
364 +
364 364  (% style="text-align:center" %)
365 365  [[image:1652249673420-476.png||class="img-thumbnail"]]
366 366  
... ... @@ -418,17 +418,17 @@
418 418  
419 419  **Timer interrupt**
420 420  
421 -Timer interrupt description
422 +1. Timer interrupt description
422 422  
423 -* Timer interrupt is based on the set time, execute the interrupt program every this time, the minimum time interval can reach 100us.
424 -* Up to 100 timer interrupt execution programs can be created.
425 -* Each timer interrupt program is independent of each other and does not affect each other.
426 -* 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.
427 -* The interrupt execution program is executed only after EI is used in the scanner to allow the interrupt
424 +1. Timer interrupt is based on the set time, execute the interrupt program every this time, the minimum time interval can reach 100us.
425 +1. Up to 100 timer interrupt execution programs can be created.
426 +1. Each timer interrupt program is independent of each other and does not affect each other.
427 +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.
428 +1. The interrupt execution program is executed only after EI is used in the scanner to allow the interrupt
428 428  
429 -Timer interrupt step
430 + 2. Timer interrupt step
430 430  
431 -* 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).
432 432  
433 433  (% style="text-align:center" %)
434 434  [[image:1-20.png||class="img-thumbnail"]]
... ... @@ -439,35 +439,34 @@
439 439  |(% rowspan="2" %)Timer interrupt|Time|Set the interval time for interrupt triggering|1 to 2147483647 (100us unit)|
440 440  |priority|When multiple interrupts arrive at the same time, the order of priority execution, the smallest value is executed first|0 to 2|0
441 441  
442 -Write interrupt execution program
443 +1. Write interrupt execution program
443 443  
444 444  (% style="text-align:center" %)
445 445  [[image:1-21.png||class="img-thumbnail"]]
446 446  
447 -* 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.
448 448  
449 449  (% style="text-align:center" %)
450 450  [[image:1652250294005-455.png||class="img-thumbnail"]]
451 451  
452 -**High-speed counter interrupt**
453 +**~ 3. High-speed counter interrupt**
453 453  
454 -Description of high-speed counter interrupt
455 +1. Description of high-speed counter interrupt
455 455  
456 -* 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.
457 -* 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.
458 -* 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).
459 -* 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.
460 -* Project must use EI in the scan program to allow interrupts before the interrupt execution program will be executed.
457 +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.
458 +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.
459 +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).
460 +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.
461 +1. Project must use EI in the scan program to allow interrupts before the interrupt execution program will be executed.
461 461  
462 -(% class="box infomessage" %)
463 -(((
464 -**✎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.
465 -)))
463 +**✎Note: **Both the HSC channel and the external input interrupt channel must use the PLC input point X. It should be noted that it
466 466  
467 -High-speed counter interrupt steps
465 +cannot be reused during configuration. For details, please refer to the configuration chapter of the high-speed counter.
468 468  
469 -* “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).
467 +1. high-speed counter interrupt step
470 470  
469 +“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).
470 +
471 471  (% style="text-align:center" %)
472 472  [[image:1-23.png||class="img-thumbnail"]]
473 473  
... ... @@ -500,7 +500,7 @@
500 500  |Priority|When multiple interrupts arrive at the same time, the order of priority execution, the smallest value is executed first|0 to 2|0
501 501  |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|
502 502  
503 - Description of triggering rules
503 + 3. Description of triggering rules
504 504  
505 505  (% class="table-bordered" %)
506 506  |(% style="width:135px" %)**Mode**|(% style="width:187px" %)**Configuration**|(% style="width:128px" %)**The current value**|(% style="width:324px" %)**Action**
... ... @@ -535,22 +535,21 @@
535 535  The program in INT2 will not be executed
536 536  )))
537 537  
538 -(% class="box infomessage" %)
539 -(((
540 540  **✎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.
541 -)))
542 542  
543 -Write interrupt execution program
540 +1. Write interrupt execution program
544 544  
545 545  * New interrupt program
546 -** 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.
547 547  
544 +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.
545 +
548 548  (% style="text-align:center" %)
549 549  [[image:1-24.png||class="img-thumbnail"]]
550 550  
551 551  * High-speed counter configuration
552 -** 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.
553 553  
551 +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.
552 +
554 554  (% style="text-align:center" %)
555 555  [[image:1-25.png||class="img-thumbnail"]]
556 556  
... ... @@ -560,29 +560,31 @@
560 560  
561 561  Program operation:
562 562  
563 -* Assuming that the High-speed counter channel 0 has been receiving pulses:
564 -** When the count value of HSC0 accumulates from 0 to 20000, all procedures of HSC0_20000 are executed.
565 -** When the count value of HSC0 is accumulated from 20000 to 30000, all procedures of HSC0_30000 are executed.
566 -** When the count value of HSC0 is accumulated from 30000 to 40000, all procedures of HSC0_40000 are executed.
562 +Assuming that the High-speed counter channel 0 has been receiving pulses:
567 567  
564 +When the count value of HSC0 accumulates from 0 to 20000, all procedures of HSC0_20000 are executed.
565 +
566 +When the count value of HSC0 is accumulated from 20000 to 30000, all procedures of HSC0_30000 are executed.
567 +
568 +When the count value of HSC0 is accumulated from 30000 to 40000, all procedures of HSC0_40000 are executed.
569 +
568 568  **Mask interrupt**
569 569  
570 -Mask through application instructions
572 +**~ 1. Mask through application instructions**
571 571  
572 -* 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 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).
574 +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 574  
575 -Mask through special registers SM and SD
576 +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 576  
578 +**~ 2. Mask through special registers SM and SD**
579 +
580 +1.External input interrupt mask register
581 +
577 577  (% class="table-bordered" %)
578 -|=(% colspan="4" %)**External input interrupt mask register**
579 -|=**Special register number**|=**Type of interrupt**|=**Instruction**|=**Defaults**
583 +|(% colspan="4" %)**External input interrupt mask register**
584 +|**Special register number**|**Type of interrupt**|**Instruction**|**Defaults**
580 580  |SM352|X0 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
581 -|SM353|X0 falling edge interrupt|(((
582 -ON: Ma
583 -
584 -sk interrupt OFF: Enable interrupt
585 -)))|OFF
586 +|SM353|X0 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
586 586  |SM354|X1 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
587 587  |SM355|X1 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
588 588  |SM356|X2 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
... ... @@ -598,9 +598,11 @@
598 598  |SM366|X7 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
599 599  |SM367|X7 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
600 600  
602 +2. Timer interrupt mask register
603 +
601 601  (% class="table-bordered" %)
602 -|=(% colspan="4" %)**Timer interrupt mask register**
603 -|=**Special register number**|=**Type of interrupt**|=**Instruction**|=**Default**
605 +|(% colspan="4" %)**Timer interrupt mask register**
606 +|**Special register number**|**Type of interrupt**|**Instruction**|**Default**
604 604  |SD350|1st to 16th timer interrupt|(((
605 605  Each bit can control the mask of an interrupt.
606 606