From c952f8d705856f42248ef0b1447b9923d47096a8 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Wed, 19 Apr 2023 18:31:04 -0600 Subject: [PATCH 01/38] Initial commit - Content & Example code (Further update incoming) --- .../assets/Interrupts_Opta.zip | Bin 0 -> 1272 bytes .../assets/opta_interrupt_model.svg | 30 ++ .../content.md | 257 ++++++++++++++++++ 3 files changed, 287 insertions(+) create mode 100644 content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/Interrupts_Opta.zip create mode 100644 content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_model.svg create mode 100644 content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/Interrupts_Opta.zip b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/Interrupts_Opta.zip new file mode 100644 index 0000000000000000000000000000000000000000..10cf1175d4021fffc80a0654ad599acbde0c159d GIT binary patch literal 1272 zcmWIWW@Zs#U|`^2$X_uj?Dp<;i~%eR3|ZU^49Y-J&%Bb(mZml>y z{mJD|sw?-M5tVV@*uuVRUG1xot8?bg+s3eNMUc;$ghd@8CQahYt{Dh*dCgSSYK=IM zyXeII`hTsbl0W&J*S<7U?BUN?waFH)7ndp&`vof~HR&AHU-M;4qRV{G8R=dNqt_bq zoNH6mQjL^+<;-pS&&z0QpDIu46hp!7e&?gs`kv`bn&YGvv`uJ+PF1_>oR<=^6Q)dl zZ*FpEwg%Vj*!?CmjvHS8r0*2@l3`lQ@+~Wk)U!64Njd)5=eIrl)fTah9-_6rDhbaF zRfLL-9dbF^bz2+-KJXZ<46^Bq4|voU{Yy`$>L~Ny%Pm4*j*=RO9ky}){$^MDdXC9SJh3{ti&EUItN;5x@javDvGSDA z`TMV=d{?Bj)X%sqDjX+K_lm9Y{_)SM*UlPOMCgcAFDqOouqOSOrMIp8tqXreSZXac z**$o&WXj(u(q9xWiGK~a`u*bif3II3NKY@At$B8)%`8TK<^|que0Gl(-~E=Dy+%l_ zu3Pz)<&7K3?0NFb%K3vQ=W3d7FkNCTp05(KBc`%rN8hoXQH4@+R)1||&&#Pz|Gt!` z)kSktg!tYkt~p0V9+vy~JpN>2{#ADW{)lb;YA@c@nMn4o_gV7)S&qa4>BILG=KS>+ zPkguNcJ_`NmR%n#&Pg7c_CU1s@6LqUxEW1OZVzPdd(KkgKmYJX=(2SOTA$CltCW#7 z-8`r_X6w7v(>`iXdYV{d?;N4Mm@~Dk!oab!M4(!&{Zfv^0nQnTS51Dec_`7zJM|pT z;)NIYPMfKjF3qE>yiI|tc4-=iA>$pFBkO)CFHUmQZD=pLX=Re_oRcu?^7e$RmCfu6 z|GjuFaQ*lrh56GzFqd@(7xF*fzp7U@)Z$iosKt$$&-qr&3wqD;EVh zhu+M%<~F}s@!O2Gb+Q7C(*tYIU(LAUz{+^!2J7?lva5UJFL<`H&TD5Yyw3MXO7+zS zi{#S_4*$OXamlt@^(fL&L}FyB+8KGyS;STxk71ksXt!JzWuR zd;iH|Zee!qe*NSPCzdSH*yPN7{w!aqa!P<+cKR=l{Rh6jcqMi2;j?eimYdo<5AA<# z-f<^H|B-3yj)*yV2kIyLi0(Elzf~CaY?7(#W)=PwTkp&=d2*%klS|_avqK+>Yl^*< zTojz1{;lSDkn!GN{!-_2jN5s2j5h}G#OrD;n5KPE=#FX8?zP41zt39cy>o@u> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md new file mode 100644 index 0000000000..038ac5a891 --- /dev/null +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -0,0 +1,257 @@ +--- +title: 'Getting Started with Interrupts on Opta™' +description: "Learn how to make use of the Interrupts on Opta™." +difficulty: beginner +tags: + - Getting started + - Interrupts +author: 'Taddy Chung and José Bagur' +software: + - ide-v1 + - ide-v2 +hardware: + - hardware/07.opta/opta-family/opta +--- + +## Overview + +The Opta™ micro PLC is designed to operate in several industrial environments. Because it is developed for implementation in crucial industrial processes, it is capable of managing delicate tasks and recognizing defined parameter set of variables when such measurement or request conditions are met to proceed with appropriate operation. + +The **Interrupt** feature can be set and used on Opta™ to handle time-sensitive and strictly scheduled tasks based on the state changes. This tutorial will help you learn to implement interrupt on Opta™ using Arduino ecosystem tools as the [Arduino IDE](https://www.arduino.cc/en/software). + +## Goals + +- Learn how to enable interrupts on Opta™ +- Learn how to implement interrupts on Opta™ + +### Required Hardware and Software + +#### Hardware Requirements + +- Opta™ PLC (x1) +- USB-C® cable (x1) +- 12-24VDC/1A power supply (x1) + +#### Software Requirements + +- [Arduino IDE 1.8.10+](https://www.arduino.cc/en/software), [Arduino IDE 2.0+](https://www.arduino.cc/en/software), or [Arduino Web Editor](https://create.arduino.cc/editor) + +## Interrupt Basics + +The **interrupts** are requests triggered based commonly on timed events caused by certain state changes. It will pause the current or active operations if the request gets accepted under parametrized conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that executes when an interrupt is generated. Usually, it is defined to run certain routine in a timely manner; but it can be also defined to use signal feedbacks whether to call interrupt routine depending on the external feedback, or as an indication for system failure. + +### Interrupt Overall Type + +Globally, interrupts are based on **hardware** and **software** events. The *hardware interrupt* takes action based on chage of the hardware state fed by an external feedback. This type of interrupt can occur at any instance while instructions are running. A button press could be interpreted as a hardware interrupt. For example, an external device may send a signal anytime, if certain conditions are met, to the main device resulting in execution of interrupt routine to make adjustments for the process. + +The *software interrupts* are generated when the device itself is exposed to interally defined conditions or upon particular instruction call. It is similar to subroutine calls, but based on special conditionals that creates interrupt case. Such as examples are service requests within operating system or when interacting with device drivers as storage controllers for write and read operations. + +***Please check out more with [Nick Gammon's Notes](http://gammon.com.au/interrupts), if you would like to dive deeper about interrupts.*** + +### Interrupt Triggers + +For implementing on programmable logic controllers as Opta™, an important characteristic to know is about interrupt signals. Since it will handle broad types of signal, it is preferable to understand which signal condition suits certains applications. Generally they are **Level-Triggered** or **Edge-Triggered**. They are characterized as follows: + +* Level-Triggered: this is when an interrupt has been requested with signals at particular logic level, which can be either *HIGH* or *LOW*. +* Edge-Triggered: this is when an interrupt has been requested due to signal at specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occured. + +With this, you will be able to understand how the following interrupt example on Opta™ will work. + +## Instructions + +### Setting up the Arduino IDE + +This tutorial will need the latest version of the Arduino IDE. You can download the Arduino IDE [here](https://www.arduino.cc/en/software). Please check the [getting started with the Opta™ tutorial](/tutorials/opta/getting-started) if it is your first time setting up the Opta™ with the Arduino IDE. + +### Example Setup + +The example will try to keep the setup as simple as possible while providing the scalability of the Opta™. The setup will use the programmable user button (`BTN_USER`) and A0-A1 inputs as interrupt pins. All available D0-D3 relays will be configured as outputs and status LEDs will indicate corresponding contact state. + +Please refer to the following diagram to have an overview of the inputs and outputs position of the example model. + +![Opta™ Example Setup](assets/opta_interrupt_model.svg) + +### Example Overview + +The example will showcase different interrupt routines for Opta™ and you will be greeted with two scenarios. The `BTN_USER`, which is the user programmable button, will be used to switch the relay and corresponding status LED state in sequence. The `A0` and `A1` inputs will be open to external devices that sends signals periodically. The `A0` will be in charge of `D0` and `D1` relay, while the `A1` will control the `D2` and `D3` relays. The following section will highlight the important details of the example code to help you understand with ease. + +### Example Description + +First, becasue the variables used within interrupt should keep its value, it will be defined as `volatile` so that the variables found inside ISR can be shared with main program. In this case, `counter` will keep the number of `BTN_USER` presses and `relayLedState` to track status LED of the corresponding relay. The boolean variables `relCntState`, `batchState01`, and `batchState23` will be used to control the conditional flag when its respective interrupt is called. + +```arduino +volatile unsigned int counter, relayLedState {}; +volatile bool relCntState = false; +volatile bool batchState01 = false; +volatile bool batchState23 = false; +``` + +The relays and corresponding status LEDs are defined as an array, while its status which is shared, will also be managed via array. + +```arduino +constexpr auto printInterval { 1000lu }; +auto printNow { 0lu }; + +int idx{ 0 }; +int relays[]{ D0, D1, D2, D3 }; +int leds[]{ LED_D0, LED_D1, LED_D2, LED_D3 }; +bool statuses[]{ true, true, true, true }; +``` + +The `setup()` will define the relay and status LED outputs, and also the inputs that will be used to attach to interrupt cases. + +```arduino +void setup(){ + + Serial.begin(115200); + for (const auto timeout = millis() + 2500; !Serial && millis() < timeout; delay(250)) + ; + + // Outputs + for (int i = 0; i < 4; i++) { + pinMode(relays[i], OUTPUT); + pinMode(leds[i], OUTPUT); + } + + // Inputs + pinMode(A0, INPUT); + pinMode(A1, INPUT); + pinMode(BTN_USER, INPUT); + + attachInterrupt(digitalPinToInterrupt(BTN_USER), relayCounterISR, RISING); + attachInterrupt(digitalPinToInterrupt(A0), batch01_ISR, RISING); + attachInterrupt(digitalPinToInterrupt(A1), batch23_ISR, RISING); +} +``` + +The `loop()` will be running tasks that are tied to `BTN_USER` or `A0-A1` interrupts. But it will also be checking and keeping the number of button presses that represents interrupts generated by `BTN_USER` button. + +```arduino +void loop(){ + + if (millis() > printNow) { + Serial.print("Presses: "); + Serial.println(counter); + + printNow = millis() + printInterval; + } + + // For USR_BTN interrupts + relayLinearCounter(); + + // For A0 & A1 interrupts + relayBatchInverter(); +} +``` + +The `relayLinearCounter()` function runs a linear sequence for turning on and off the D0 to D3 relays with its corresponding status LEDs based on `BTN_USER` response to trigger interrupt. The `counter` and `relayLedState` variables are used to track relay shift and also to provide button press counter to maintain total number of triggred interrupts. The `relCntState` is used as a gatekeeper to allow only when a valid interrupt has occured since the function is running inside the `loop()` function. The `counter` variable` is also incremented inside the ISR function which you will get to know later. + +```arduino +// Relay and status indicator state in linear sequence +void relayLinearCounter(){ + if (relCntState == true){ + if (counter > 4){ + relayLedState = counter % 4; + + if (relayLedState == 0){ + relayLedState = 4; + } + } else { + relayLedState = counter; + } + + Serial.print(F("Triggered Relay: ")); + Serial.println(relayLedState); + Serial.print(F("Counter Status: ")); + Serial.println(counter); + + // Array indexes start at 0 + idx = relayLedState - 1; + + relayStateHandler(idx); + + relCntState = false; + + } +} +``` + +The `relayBatchInverter()` function checks to invert batch of relays and its corresponding status LEDs based on configured `A0` and `A1` interrupt pins. The `A0` controls the batch of relay `D0` and `D1`, while The `A1` controls `D2` and `D3` relays. Each input has ISR function to handle `batchState01` and `batchState23` boolean variables. When either pin is triggered with interrupt signal, it will invert the actual state of the corresponding relay batch. + +```arduino +// Interrupt based on A0 & A1 to invert its defined states in batch +void relayBatchInverter(){ + if (batchState01 == true){ + Serial.println(F("A0 interrupt: Relay Batch 0 & 1")); + for (int i = 0; i < 2; i++){ + relayStateHandler(i); + } + batchState01 = false; + } + + if (batchState23 == true){ + Serial.println(F("A1 interrupt: Relay Batch 2 & 3")); + for (int j = 2; j < 4; j++){ + relayStateHandler(j); + } + batchState23 = false; + } +} +``` + +For both previous functions, the `relayStateHandler()` function is used manage the relay status. + +```arduino +void relayStateHandler(int relayID){ + // Get current status + auto status = statuses[relayID] ? HIGH : LOW; + + // Apply new status to the outputs + digitalWrite(relays[relayID], status); + digitalWrite(leds[relayID], status); + + // Invert the statuses array to be updated + statuses[relayID] = !statuses[relayID]; +} +``` + +These are all the ISR functions that helps to shift relay states of the correspoding process whenever an interrupt has ocurred. These functions are kept as short as possible to maintain quick responses for interrupts that can happen at any time. For good practice, please do not use `delay()` inside these functions as it might cause erratic behaviors and use it as a quick state modifier to be used with functions that may be running continuosly. + +```arduino +// All ISR functions +void relayCounterISR(){ + counter++; + relCntState = true; +} + +void batch01_ISR() { + batchState01 = !batchState01; +} + +void batch23_ISR() { + batchState23 = !batchState23; +} +``` + +### Full Example Code + +You can access the complete example code [here](assets/Interrupts_Opta.zip). After extracting the compressed file, you will be able to upload and test it out with your Opta™. + +### Testing Interrupt + +You will be able to observe following results when testing if you were able to upload the example code correctly to the Opta™. + +* You will be able to observe that the relays from D0 to D3 are turning on in sequence and turning off in the next sequence linearly as you press the `BTN_USER`. The sequence then will repeat, the counter will keep record of number of interrupts caused by `BTN_USER`, and actuated relay via `relayLedState`. +* If you send feedback on either `A0` or `A1` input with rising edge signal, it will proceed to apply state inversion on top of the actual relay states as a result of interrupt. Thus, you will observe the `D0` and `D1` relays have inverted its states if the interrupt was on `A0`; while `A1` will run the same task, but on `D2` and `D3` relays. + +## Conclusion + +You have now learned to enable and use interrupts on Opta™. With two main scenarios presented with the example, you have tested Opta™ with different interrupt cases by using integrated user programmable button and signal sources from external devices. + +### Next Steps + +Now that you are familiar with interrupts on the Opta™, take a look at the following documentation to learn more: + +* Take a look at [getting started tutorial](/tutorials/opta/getting-started) to get a better overview of the features of Opta™ + +* If you wish to incorporate Wi-Fi®/Bluetooth® Low Energy in your Opta™ solutions, have a look at [connectivity tutorial](/tutorials/opta/getting-started-connectivity) \ No newline at end of file From a0ebd2fe876ef52495574ebd8814071ef336f432 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Wed, 19 Apr 2023 18:41:25 -0600 Subject: [PATCH 02/38] Content minor fix --- .../getting-started-with-interrupts/content.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 038ac5a891..23ac0dfb13 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -42,9 +42,9 @@ The **interrupts** are requests triggered based commonly on timed events caused ### Interrupt Overall Type -Globally, interrupts are based on **hardware** and **software** events. The *hardware interrupt* takes action based on chage of the hardware state fed by an external feedback. This type of interrupt can occur at any instance while instructions are running. A button press could be interpreted as a hardware interrupt. For example, an external device may send a signal anytime, if certain conditions are met, to the main device resulting in execution of interrupt routine to make adjustments for the process. +Globally, interrupts are based on **hardware** and **software** events. The *hardware interrupt* takes action based on the hardware state change fed by an external feedback. This type of interrupt can occur at any instance while instructions are running. A button press could be interpreted as a hardware interrupt. For example, an external device may send a signal anytime, if certain conditions are met, to the main device resulting in execution of interrupt routine to make adjustments for the process. -The *software interrupts* are generated when the device itself is exposed to interally defined conditions or upon particular instruction call. It is similar to subroutine calls, but based on special conditionals that creates interrupt case. Such as examples are service requests within operating system or when interacting with device drivers as storage controllers for write and read operations. +The *software interrupts* are generated when the device itself is exposed to internally defined conditions or upon particular instruction call. It is similar to subroutine calls, but based on special conditionals that creates interrupt case. Such as examples are service requests within operating system or when interacting with device drivers as storage controllers for write and read operations. ***Please check out more with [Nick Gammon's Notes](http://gammon.com.au/interrupts), if you would like to dive deeper about interrupts.*** @@ -53,7 +53,7 @@ The *software interrupts* are generated when the device itself is exposed to int For implementing on programmable logic controllers as Opta™, an important characteristic to know is about interrupt signals. Since it will handle broad types of signal, it is preferable to understand which signal condition suits certains applications. Generally they are **Level-Triggered** or **Edge-Triggered**. They are characterized as follows: * Level-Triggered: this is when an interrupt has been requested with signals at particular logic level, which can be either *HIGH* or *LOW*. -* Edge-Triggered: this is when an interrupt has been requested due to signal at specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occured. +* Edge-Triggered: this is when an interrupt has been requested due to signal at specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. With this, you will be able to understand how the following interrupt example on Opta™ will work. @@ -77,7 +77,7 @@ The example will showcase different interrupt routines for Opta™ and you will ### Example Description -First, becasue the variables used within interrupt should keep its value, it will be defined as `volatile` so that the variables found inside ISR can be shared with main program. In this case, `counter` will keep the number of `BTN_USER` presses and `relayLedState` to track status LED of the corresponding relay. The boolean variables `relCntState`, `batchState01`, and `batchState23` will be used to control the conditional flag when its respective interrupt is called. +First, because the variables used within interrupt should keep its value, it will be defined as `volatile` so that the variables found inside ISR can be shared with main program. In this case, `counter` will keep the number of `BTN_USER` presses and `relayLedState` to track status LED of the corresponding relay. The boolean variables `relCntState`, `batchState01`, and `batchState23` will be used to control the conditional flag when its respective interrupt is called. ```arduino volatile unsigned int counter, relayLedState {}; @@ -144,7 +144,7 @@ void loop(){ } ``` -The `relayLinearCounter()` function runs a linear sequence for turning on and off the D0 to D3 relays with its corresponding status LEDs based on `BTN_USER` response to trigger interrupt. The `counter` and `relayLedState` variables are used to track relay shift and also to provide button press counter to maintain total number of triggred interrupts. The `relCntState` is used as a gatekeeper to allow only when a valid interrupt has occured since the function is running inside the `loop()` function. The `counter` variable` is also incremented inside the ISR function which you will get to know later. +The `relayLinearCounter()` function runs a linear sequence for turning on and off the D0 to D3 relays with its corresponding status LEDs based on `BTN_USER` response to trigger interrupt. The `counter` and `relayLedState` variables are used to track relay shift and also to provide button press counter to maintain total number of triggred interrupts. The `relCntState` is used as a gatekeeper to allow only when a valid interrupt has occurred since the function is running inside the `loop()` function. The `counter` variable` is also incremented inside the ISR function which you will get to know later. ```arduino // Relay and status indicator state in linear sequence @@ -215,7 +215,7 @@ void relayStateHandler(int relayID){ } ``` -These are all the ISR functions that helps to shift relay states of the correspoding process whenever an interrupt has ocurred. These functions are kept as short as possible to maintain quick responses for interrupts that can happen at any time. For good practice, please do not use `delay()` inside these functions as it might cause erratic behaviors and use it as a quick state modifier to be used with functions that may be running continuosly. +These are all the ISR functions that helps to shift relay states of the corresponding process whenever an interrupt has occurred. These functions are kept as short as possible to maintain quick responses for interrupts that can happen at any time. For good practice, please do not use `delay()` inside these functions as it might cause erratic behaviors and use it as a quick state modifier to be used with functions that may be running continuously. ```arduino // All ISR functions From 49bda292918823cbe352deaa234711f0bde185fc Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Wed, 19 Apr 2023 23:03:25 -0600 Subject: [PATCH 03/38] Major content update --- .../content.md | 60 +++++++++---------- 1 file changed, 29 insertions(+), 31 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 23ac0dfb13..3f2e9edc05 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -15,9 +15,9 @@ hardware: ## Overview -The Opta™ micro PLC is designed to operate in several industrial environments. Because it is developed for implementation in crucial industrial processes, it is capable of managing delicate tasks and recognizing defined parameter set of variables when such measurement or request conditions are met to proceed with appropriate operation. +The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These process types require controllers to be responsive and precise to manage their delicate tasks, and capable of handling large sets of conditions within defined parameters in real time. Asynchronous operations or spontaneous events are one of many processes that could require attention at any moment. -The **Interrupt** feature can be set and used on Opta™ to handle time-sensitive and strictly scheduled tasks based on the state changes. This tutorial will help you learn to implement interrupt on Opta™ using Arduino ecosystem tools as the [Arduino IDE](https://www.arduino.cc/en/software). +The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle time-sensitive and unexpected events based on state changes. This tutorial will help you to implement interrupt on Opta™ using the [Arduino IDE](https://www.arduino.cc/en/software) found within Arduino ecosystem tools. ## Goals @@ -35,27 +35,28 @@ The **Interrupt** feature can be set and used on Opta™ to handle time-sensitiv #### Software Requirements - [Arduino IDE 1.8.10+](https://www.arduino.cc/en/software), [Arduino IDE 2.0+](https://www.arduino.cc/en/software), or [Arduino Web Editor](https://create.arduino.cc/editor) +- [Interrupt example code](assets/Interrupts_Opta.zip) ## Interrupt Basics -The **interrupts** are requests triggered based commonly on timed events caused by certain state changes. It will pause the current or active operations if the request gets accepted under parametrized conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that executes when an interrupt is generated. Usually, it is defined to run certain routine in a timely manner; but it can be also defined to use signal feedbacks whether to call interrupt routine depending on the external feedback, or as an indication for system failure. +The **interrupts** are requests triggered based commonly on timed events caused by state changes. It will pause the current or active operations if the interrupt request gets accepted under parametrized conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that executes when an interrupt is generated. Usually, it is defined to run particular routines periodically. However, it can also be set to use external signal feedback to call interrupt routine or as an indication of system failure. ### Interrupt Overall Type -Globally, interrupts are based on **hardware** and **software** events. The *hardware interrupt* takes action based on the hardware state change fed by an external feedback. This type of interrupt can occur at any instance while instructions are running. A button press could be interpreted as a hardware interrupt. For example, an external device may send a signal anytime, if certain conditions are met, to the main device resulting in execution of interrupt routine to make adjustments for the process. +Globally, interrupts are based on **hardware** and **software** events. The *hardware interrupt* takes action based on the hardware state change provided by external feedback. This type of interrupt can occur at any instance while instructions are running. A button press could be interpreted as a hardware interrupt. For example, an external device may send a signal anytime, if certain conditions are met, to the main device resulting in the execution of an interrupt routine to make adjustments to the process. -The *software interrupts* are generated when the device itself is exposed to internally defined conditions or upon particular instruction call. It is similar to subroutine calls, but based on special conditionals that creates interrupt case. Such as examples are service requests within operating system or when interacting with device drivers as storage controllers for write and read operations. +The *software interrupts* occur when the device itself is exposed to internally defined conditions or upon a particular instruction call. It is similar to subroutine calls but based on special conditionals that create interrupt cases. A few examples are service requests within the operating system or when interacting with device drivers as storage controllers for write and read operations. -***Please check out more with [Nick Gammon's Notes](http://gammon.com.au/interrupts), if you would like to dive deeper about interrupts.*** +***Please check out [Nick Gammon's Notes](http://gammon.com.au/interrupts) for more in-depth information about interrupts.*** ### Interrupt Triggers -For implementing on programmable logic controllers as Opta™, an important characteristic to know is about interrupt signals. Since it will handle broad types of signal, it is preferable to understand which signal condition suits certains applications. Generally they are **Level-Triggered** or **Edge-Triggered**. They are characterized as follows: +Interrupt signals are an important element to comprehend to set events with appropriate triggers, especially when it is to be implemented on programmable logic controllers such as Opta™. Since it will handle broad signal types, it is a good practice to understand which signal condition suits certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered**. They are characterized as follows: -* Level-Triggered: this is when an interrupt has been requested with signals at particular logic level, which can be either *HIGH* or *LOW*. -* Edge-Triggered: this is when an interrupt has been requested due to signal at specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. +* Level-Triggered: this is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. +* Edge-Triggered: this is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. -With this, you will be able to understand how the following interrupt example on Opta™ will work. +With this, you will now be able to follow the interrupt example on Opta™ with much ease. ## Instructions @@ -65,19 +66,19 @@ This tutorial will need the latest version of the Arduino IDE. You can download ### Example Setup -The example will try to keep the setup as simple as possible while providing the scalability of the Opta™. The setup will use the programmable user button (`BTN_USER`) and A0-A1 inputs as interrupt pins. All available D0-D3 relays will be configured as outputs and status LEDs will indicate corresponding contact state. +The example will try to keep the setup as simple as possible while maintaining the scalability of the feature on Opta™. The setup will use the programmable user button (`BTN_USER`) and `A0-A1` inputs as interrupt pins. All available `D0-D3` relays will be configured as outputs and status LEDs will indicate the corresponding contact state. Please refer to the following diagram to have an overview of the inputs and outputs position of the example model. -![Opta™ Example Setup](assets/opta_interrupt_model.svg) +![Opta™ Interrupt Example Setup](assets/opta_interrupt_model.svg) ### Example Overview -The example will showcase different interrupt routines for Opta™ and you will be greeted with two scenarios. The `BTN_USER`, which is the user programmable button, will be used to switch the relay and corresponding status LED state in sequence. The `A0` and `A1` inputs will be open to external devices that sends signals periodically. The `A0` will be in charge of `D0` and `D1` relay, while the `A1` will control the `D2` and `D3` relays. The following section will highlight the important details of the example code to help you understand with ease. +The example will showcase different interrupt routines for Opta™, and you will be greeted with two scenarios. The `BTN_USER` is the user-programmable button that will be used to switch the relay and corresponding status LED state in sequence. The `A0` and `A1` inputs will be open to external devices that send signals periodically. The `A0` will be in charge of the `D0` and `D1` relays, while the `A1` will control the `D2` and `D3` relays. The following section will highlight the details of interest of the example code to help you understand it with ease. ### Example Description -First, because the variables used within interrupt should keep its value, it will be defined as `volatile` so that the variables found inside ISR can be shared with main program. In this case, `counter` will keep the number of `BTN_USER` presses and `relayLedState` to track status LED of the corresponding relay. The boolean variables `relCntState`, `batchState01`, and `batchState23` will be used to control the conditional flag when its respective interrupt is called. +First, because the variables used within interrupt should keep their value, they will be defined as `volatile` so that the variables found inside ISR can be shared with the main program. In this case, `counter` will keep the number of `BTN_USER` presses and `relayLedState` to track the status LED of the corresponding relay. The boolean variables `relCntState`, `batchState01`, and `batchState23` will be used to control the conditional flag when its respective interrupt is called. ```arduino volatile unsigned int counter, relayLedState {}; @@ -86,26 +87,21 @@ volatile bool batchState01 = false; volatile bool batchState23 = false; ``` -The relays and corresponding status LEDs are defined as an array, while its status which is shared, will also be managed via array. +The relays and corresponding status LEDs are defined in an array including their status. Using the array provides the advantage to manage and call the data flexibly. ```arduino -constexpr auto printInterval { 1000lu }; -auto printNow { 0lu }; - int idx{ 0 }; int relays[]{ D0, D1, D2, D3 }; int leds[]{ LED_D0, LED_D1, LED_D2, LED_D3 }; bool statuses[]{ true, true, true, true }; ``` -The `setup()` will define the relay and status LED outputs, and also the inputs that will be used to attach to interrupt cases. +The `setup()` will define the relay and status LED outputs, and also the inputs that will be used to attach to interrupt cases. The `attachInterrupt()` function configures the inputs as interrupts with its trigger method and connects to the defined ISR functions that can be found later in the example description. Thus, all the defined input pins are set as interrupt pins with their dedicated ISR functions and are programmed to trigger with a `RISING` signal. ```arduino void setup(){ - Serial.begin(115200); - for (const auto timeout = millis() + 2500; !Serial && millis() < timeout; delay(250)) - ; + ... // Outputs for (int i = 0; i < 4; i++) { @@ -124,7 +120,7 @@ void setup(){ } ``` -The `loop()` will be running tasks that are tied to `BTN_USER` or `A0-A1` interrupts. But it will also be checking and keeping the number of button presses that represents interrupts generated by `BTN_USER` button. +The `loop()` will be running tasks that are to execute based on `BTN_USER` or `A0-A1` interrupts. It will also be checking and keeping the number of button presses that represent interrupts generated by the `BTN_USER` button. ```arduino void loop(){ @@ -144,7 +140,7 @@ void loop(){ } ``` -The `relayLinearCounter()` function runs a linear sequence for turning on and off the D0 to D3 relays with its corresponding status LEDs based on `BTN_USER` response to trigger interrupt. The `counter` and `relayLedState` variables are used to track relay shift and also to provide button press counter to maintain total number of triggred interrupts. The `relCntState` is used as a gatekeeper to allow only when a valid interrupt has occurred since the function is running inside the `loop()` function. The `counter` variable` is also incremented inside the ISR function which you will get to know later. +The `relayLinearCounter()` function runs a linear sequence for turning on and off the `D0` to `D3` relays with their corresponding status LEDs based on the interrupt triggered each time `BTN_USER` is pressed. The `counter` and `relayLedState` variables are used to track the total number of `BTN_USER` triggered interrupts, which also represents the number of button presses, and currently shifted relay status. The `relCntState` is used as a gatekeeper to allow only when a valid interrupt has occurred since the function is running inside the `loop()` function. ```arduino // Relay and status indicator state in linear sequence @@ -176,7 +172,7 @@ void relayLinearCounter(){ } ``` -The `relayBatchInverter()` function checks to invert batch of relays and its corresponding status LEDs based on configured `A0` and `A1` interrupt pins. The `A0` controls the batch of relay `D0` and `D1`, while The `A1` controls `D2` and `D3` relays. Each input has ISR function to handle `batchState01` and `batchState23` boolean variables. When either pin is triggered with interrupt signal, it will invert the actual state of the corresponding relay batch. +The `relayBatchInverter()` function checks to invert a relay batch and its corresponding status LEDs based on `A0` and `A1` interrupt pins. The `A0` controls the batch of relays `D0` and `D1`, while The `A1` controls `D2` and `D3` relays. Each input has an ISR function conditioned with `batchState01` and `batchState23` boolean variables. When either pin is triggered with an interrupt signal, it will invert the state of the corresponding relay batch based on present relay states. ```arduino // Interrupt based on A0 & A1 to invert its defined states in batch @@ -199,7 +195,7 @@ void relayBatchInverter(){ } ``` -For both previous functions, the `relayStateHandler()` function is used manage the relay status. +For both previous functions, the `relayStateHandler()` function is used to manage the relay status. The `digitalWrite()` function will use a special conditional which goes by `status`. It will seek the corresponding relay and compare its stored status to shift its state in a more automated way. It is a practical method to avoid writing the same lines of code in different parts of the sketch and helps maintain a cleaner code structure using a single function with an argument to process the data. ```arduino void relayStateHandler(int relayID){ @@ -215,7 +211,7 @@ void relayStateHandler(int relayID){ } ``` -These are all the ISR functions that helps to shift relay states of the corresponding process whenever an interrupt has occurred. These functions are kept as short as possible to maintain quick responses for interrupts that can happen at any time. For good practice, please do not use `delay()` inside these functions as it might cause erratic behaviors and use it as a quick state modifier to be used with functions that may be running continuously. +These are all the ISR functions that help to shift relay states within the corresponding process whenever an interrupt has occurred. These functions are kept as short as possible to maintain quick responses for interrupts that can happen at any time. For good practice, please do not use `delay()` inside these functions as it might cause erratic behaviors, and use it as a quick state modifier to be used with functions that may be running continuously. ```arduino // All ISR functions @@ -239,14 +235,16 @@ You can access the complete example code [here](assets/Interrupts_Opta.zip). Aft ### Testing Interrupt -You will be able to observe following results when testing if you were able to upload the example code correctly to the Opta™. +You will be able to observe the following results when testing if you were able to upload the example code correctly to the Opta™. + +* You will be able to observe that the `D0-D3` relays are turning on in sequence and turning off in the next succession linearly as you press the `BTN_USER` button. The sequence then will repeat, and the counter will keep a record of the number of interrupts caused by `BTN_USER` button press, and currently actuated relay via `relayLedState`. +* If you send feedback on either `A0` or `A1` input with a rising edge signal, it will apply state inversion on top of the actual relay states as a result of the interrupt. Thus, you will observe the `D0` and `D1` relays invert their states if the interrupt was triggered on `A0`; while `A1` will do the same job, but on `D2` and `D3` relays. -* You will be able to observe that the relays from D0 to D3 are turning on in sequence and turning off in the next sequence linearly as you press the `BTN_USER`. The sequence then will repeat, the counter will keep record of number of interrupts caused by `BTN_USER`, and actuated relay via `relayLedState`. -* If you send feedback on either `A0` or `A1` input with rising edge signal, it will proceed to apply state inversion on top of the actual relay states as a result of interrupt. Thus, you will observe the `D0` and `D1` relays have inverted its states if the interrupt was on `A0`; while `A1` will run the same task, but on `D2` and `D3` relays. +Hence, your Opta™ is processing based on asynchronous interrupt caused by `BTN_USER` button while `A0-A1` are in charge of the interrupts generated periodically by an external device. ## Conclusion -You have now learned to enable and use interrupts on Opta™. With two main scenarios presented with the example, you have tested Opta™ with different interrupt cases by using integrated user programmable button and signal sources from external devices. +In this tutorial, you have learned to enable and use interrupts on Opta™. With the included example, you have tested Opta™ with multiple interrupt cases by using integrated user programmable button and signal sources from external devices. ### Next Steps From 0b74e773eb52bc80fe91a3562b9d0312379fb9a1 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Wed, 19 Apr 2023 23:25:05 -0600 Subject: [PATCH 04/38] Tutorial content update --- .../opta/tutorials/getting-started-with-interrupts/content.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 3f2e9edc05..33f02313d7 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -240,11 +240,11 @@ You will be able to observe the following results when testing if you were able * You will be able to observe that the `D0-D3` relays are turning on in sequence and turning off in the next succession linearly as you press the `BTN_USER` button. The sequence then will repeat, and the counter will keep a record of the number of interrupts caused by `BTN_USER` button press, and currently actuated relay via `relayLedState`. * If you send feedback on either `A0` or `A1` input with a rising edge signal, it will apply state inversion on top of the actual relay states as a result of the interrupt. Thus, you will observe the `D0` and `D1` relays invert their states if the interrupt was triggered on `A0`; while `A1` will do the same job, but on `D2` and `D3` relays. -Hence, your Opta™ is processing based on asynchronous interrupt caused by `BTN_USER` button while `A0-A1` are in charge of the interrupts generated periodically by an external device. +Hence, your Opta™ is processing based on asynchronous interrupt generated by `BTN_USER` button while `A0-A1` are in charge of the interrupts generated periodically by an external device. ## Conclusion -In this tutorial, you have learned to enable and use interrupts on Opta™. With the included example, you have tested Opta™ with multiple interrupt cases by using integrated user programmable button and signal sources from external devices. +In this tutorial, you have learned to enable and use interrupts on Opta™. On top of it, with the supplied example, you have tested Opta™ with multiple interrupt cases by using an integrated user-programmable button and signal sources from external devices, along with the Opta™ PLC's hardware features as onboard relays and status LEDs. ### Next Steps From 31c888661f1eae3401dd575d453a349ed1ff70c3 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Wed, 19 Apr 2023 23:34:03 -0600 Subject: [PATCH 05/38] Tutorial content update w/ SW --- .../assets/Interrupts_Opta.zip | Bin 1272 -> 1365 bytes .../content.md | 25 +++++++++++++----- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/Interrupts_Opta.zip b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/Interrupts_Opta.zip index 10cf1175d4021fffc80a0654ad599acbde0c159d..c1bda1deb00821628086aad6908577847c43f971 100644 GIT binary patch delta 1280 zcmV+b1^@c^3DpW4P)h>@6aWAK2mmI$lU5AxtkA6l007Gj001MCyaXnHomSgU<46#F z&sP*kiyUBx9cEsVWp~3p5(9{f=3#|UC+;MTOxx3L2T+u^{gVB(`I4~5sQ zao4r0PF*_N+bw`IuCR;zGZ;$EmC6#GLM-7b(d@@xe< z{5n%foFeH&vQflSU^0Y%EX6;f)HD~&oGBP(TBBOSGw?fu0GX1kG_}`4jeoFA&te4w z6=p)lt?f>$HIE~vMZ_VKshCQ17PZ4T&Ww#+P&{I97d*t9Xby{IzZ4k7ab)O6Qs>kI zn6N12O_mYU;~8=I!N)w^{gS6Oj%BL(YoY)>k0DX$8wG04B3M9w;QM}*0XkKZFXI=a z*yEPDiwIxwz`U9_x={M(!vc=|T{sT#+r{s`qena>>cz?Nqv4=uV4q$4ByMs%MW0Ph zjEGhl-(C47KjyIrA>}$ty!OJR;+8AHqP-EH3h4#Gm#*)(`*=RV^mugb{K{H9^ElHO zlV=e{BK6v^1KlrwzTbz9TnB7zm9$@-Kp#SLQ4d+$ZPaT%ePg)OfvZd-G~g(f6EV#c zrXiNjGzAQ;p?-ndKI3C&rwt2IkqG%U4!LJzC?0m<>i+Kf{*GKP=@i2Tb!m+c<%(@+ zm7)U-`S8*S6{o?v)5E*V$NSrpo08^C*z!Oa*RRO5X5(3ZLH9y26`DoYLf*yYsngrG z@IT6nVR(y{ZictR%QJH0-zgjTsD|L}2ao?#Mc`C)_Zupf7FtmpJ7kFocm*DQD~iJ9 zuz(&Byv=LHQ^ao%Hf<8?43YF~FUZ47X?As117)o^s~JB}#-7k`wFAxn^SFU{*!hjO2fUvb4n1Dx!@BK|lt9Zy}!uGls1o;*(0hfxHI%9rEh4 zwg$a_MkF!l=t|*5FV7;7UNAleMGn>thHgF>YA~wD(hBFOTfYNXY}Fk%3&2N?2k$xF zMaTD79e+Zb=En_u>v@yyH<)~S7W4IU=3T#j%vcaG2|QtMiq_bN4S(GAx0oX=GA)~ zz{bj9Wenh;go#Z}x(A0m!imLHo*YekE-lEko8u5nII_-pO>PhMd@9C3uelC*ZK4lQ z{9bj!yVIao9ol$WOKnw)$)@dWJ3A(V_3mS8p&a!!OVr03#kEm=Z^$`c8ghi~jp{qf q{R2=-0Rj{N6aWAK2mmI$lU5AxtkA6l007GjldA+r2JQp^0001&!)dhu delta 1195 zcmV;c1XTOg3it^aP)h>@6aWAK2mo)Wl2+Tht^rU4003$Wkr*t0ZX!nzedjC6mSW8q zvYvt67ZZ}OYp;#uV9Q|bLu8?bX`rok&!ndZdxdz*m*ms(C8@s56&y#gga^8=ed<)z zoSmMw0IsM~Osrs{h*UI!7pB%Q5{gQhB`Sqjz-^+)-+%sv%470O&nwcI7UB6_CX+Zt z(WM}BPE#Nvf-J>C0QBjLkm6rN;0*MB@AVhF%h>; z&swcb%!y*0LMBqS5|}J{hee#}7#)z5lkYb)!kZ`x+g-mjn8z{K@-ISJ=>V35r?jau zCu*@a8bSEJPPbR;v=*^Q6@5)4VCFF-5_2;^Z3u@ggh3F0@C-1iQap}dP~whT`YtSb z#RL7*gc9_{1lrmtg_^l(`upP+E`knRg!t*=r>7OPoYTliZ!RxpTEjd;_w2f7uLzT3 z3|%a3qGU!pd;d-3P0S)lsmc=1-|8AosAPnHn9~&#UKoDr27%wl^Ci~JGk91m6nmy| zrVy-W#yLxWJs;Z8{S*X!II=$AGmDb1NYngI_3 zpi71hKH{U@_F-$R5+;6&BkDQW*kcE7AEtK?Qn-$|Mx56|J)Ri>`M zh3A^xB4}!tH&TsUweG8y@hg($VRAo1SSzCmWp;QlL5Xw_dnSj{Y#6`^m|@j4`>f#@ zi4B#1&J3fW(Y==@pO^3hc8ODQ59hzCjU81u+ILkr*qP@JsGd^q1nyU2?ra%rEcogj zPbFKesKfzpFw}f-glN#A7UF=4cIF_|3l58a@V2i8wXlFgDY1Z9HTsI1EY%AVy95FY zcl3&Ps^9TP2%WV#H;30q0FD(zeZLg$FCs%yOPr$Hu+dTk0rz4~KAfh^5DgeE%!n?T zUW0~CnqRgvD=cbIGiOnK&(&zuKm`HB*ahd$9jlFB&`E^_o`(i;*AC(uCF-y^W6Pj_ z!~56qq@K85zV9U-zLj_v6YuRO{)90x<0rd8p8hrQr#BL>z7)8UmgT5lJ>TS`3lj$` zk1u1e$fTqwvO@#U%?@=VWKb?^XZi@g!1d_r8qVS7_FFl!hDpM|>oau}}cBcGC z)!%6M4^T@10u%rg000080B@+0R@=L-0Z;@00BQ>W03!eZ000000096X0001!7zH;5 Jkput$007e_Ehhi~ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 33f02313d7..db928e8c83 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -103,17 +103,18 @@ void setup(){ ... - // Outputs + // Output Configuration for (int i = 0; i < 4; i++) { pinMode(relays[i], OUTPUT); pinMode(leds[i], OUTPUT); } - // Inputs + // Input Configuration pinMode(A0, INPUT); pinMode(A1, INPUT); pinMode(BTN_USER, INPUT); + // Interrupt configuration attachInterrupt(digitalPinToInterrupt(BTN_USER), relayCounterISR, RISING); attachInterrupt(digitalPinToInterrupt(A0), batch01_ISR, RISING); attachInterrupt(digitalPinToInterrupt(A1), batch23_ISR, RISING); @@ -143,7 +144,9 @@ void loop(){ The `relayLinearCounter()` function runs a linear sequence for turning on and off the `D0` to `D3` relays with their corresponding status LEDs based on the interrupt triggered each time `BTN_USER` is pressed. The `counter` and `relayLedState` variables are used to track the total number of `BTN_USER` triggered interrupts, which also represents the number of button presses, and currently shifted relay status. The `relCntState` is used as a gatekeeper to allow only when a valid interrupt has occurred since the function is running inside the `loop()` function. ```arduino -// Relay and status indicator state in linear sequence +/** + Function to manage relay and status LED state in linear sequence based on BTN_USER interrupt. +*/ void relayLinearCounter(){ if (relCntState == true){ if (counter > 4){ @@ -163,11 +166,9 @@ void relayLinearCounter(){ // Array indexes start at 0 idx = relayLedState - 1; - relayStateHandler(idx); relCntState = false; - } } ``` @@ -175,7 +176,9 @@ void relayLinearCounter(){ The `relayBatchInverter()` function checks to invert a relay batch and its corresponding status LEDs based on `A0` and `A1` interrupt pins. The `A0` controls the batch of relays `D0` and `D1`, while The `A1` controls `D2` and `D3` relays. Each input has an ISR function conditioned with `batchState01` and `batchState23` boolean variables. When either pin is triggered with an interrupt signal, it will invert the state of the corresponding relay batch based on present relay states. ```arduino -// Interrupt based on A0 & A1 to invert its defined states in batch +/** + Function to handle relay and status LED states based on A0 & A1 interrupts to invert its defined states in batch. +*/ void relayBatchInverter(){ if (batchState01 == true){ Serial.println(F("A0 interrupt: Relay Batch 0 & 1")); @@ -198,6 +201,9 @@ void relayBatchInverter(){ For both previous functions, the `relayStateHandler()` function is used to manage the relay status. The `digitalWrite()` function will use a special conditional which goes by `status`. It will seek the corresponding relay and compare its stored status to shift its state in a more automated way. It is a practical method to avoid writing the same lines of code in different parts of the sketch and helps maintain a cleaner code structure using a single function with an argument to process the data. ```arduino +/** + Function to handle relay and status LED state by receiving relay designation. +*/ void relayStateHandler(int relayID){ // Get current status auto status = statuses[relayID] ? HIGH : LOW; @@ -214,7 +220,12 @@ void relayStateHandler(int relayID){ These are all the ISR functions that help to shift relay states within the corresponding process whenever an interrupt has occurred. These functions are kept as short as possible to maintain quick responses for interrupts that can happen at any time. For good practice, please do not use `delay()` inside these functions as it might cause erratic behaviors, and use it as a quick state modifier to be used with functions that may be running continuously. ```arduino -// All ISR functions +/** + ISR functions. Below are related inputs with respective ISR function. + - BTN_USER: relayCounterISR() + - A0: batch01_ISR() + - A1: batch23_ISR() +*/ void relayCounterISR(){ counter++; relCntState = true; From 48ea88628905d06fb5cf24432718b85c8fa0ce4b Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Wed, 19 Apr 2023 23:44:53 -0600 Subject: [PATCH 06/38] Tutorial content minor adjustment --- .../tutorials/getting-started-with-interrupts/content.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index db928e8c83..7848c90d46 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -41,7 +41,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle The **interrupts** are requests triggered based commonly on timed events caused by state changes. It will pause the current or active operations if the interrupt request gets accepted under parametrized conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that executes when an interrupt is generated. Usually, it is defined to run particular routines periodically. However, it can also be set to use external signal feedback to call interrupt routine or as an indication of system failure. -### Interrupt Overall Type +### Interrupt Types Globally, interrupts are based on **hardware** and **software** events. The *hardware interrupt* takes action based on the hardware state change provided by external feedback. This type of interrupt can occur at any instance while instructions are running. A button press could be interpreted as a hardware interrupt. For example, an external device may send a signal anytime, if certain conditions are met, to the main device resulting in the execution of an interrupt routine to make adjustments to the process. @@ -53,8 +53,8 @@ The *software interrupts* occur when the device itself is exposed to internally Interrupt signals are an important element to comprehend to set events with appropriate triggers, especially when it is to be implemented on programmable logic controllers such as Opta™. Since it will handle broad signal types, it is a good practice to understand which signal condition suits certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered**. They are characterized as follows: -* Level-Triggered: this is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. -* Edge-Triggered: this is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. +* **Level-Triggered:** this is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. +* **Edge-Triggered:** this is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. With this, you will now be able to follow the interrupt example on Opta™ with much ease. @@ -244,7 +244,7 @@ void batch23_ISR() { You can access the complete example code [here](assets/Interrupts_Opta.zip). After extracting the compressed file, you will be able to upload and test it out with your Opta™. -### Testing Interrupt +### Testing Interrupt Example You will be able to observe the following results when testing if you were able to upload the example code correctly to the Opta™. From 1cd4aaec4bce9b97fbbc655dad257794653680a7 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Wed, 19 Apr 2023 23:55:52 -0600 Subject: [PATCH 07/38] Tutorial content update --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 7848c90d46..630a54b109 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -74,7 +74,7 @@ Please refer to the following diagram to have an overview of the inputs and outp ### Example Overview -The example will showcase different interrupt routines for Opta™, and you will be greeted with two scenarios. The `BTN_USER` is the user-programmable button that will be used to switch the relay and corresponding status LED state in sequence. The `A0` and `A1` inputs will be open to external devices that send signals periodically. The `A0` will be in charge of the `D0` and `D1` relays, while the `A1` will control the `D2` and `D3` relays. The following section will highlight the details of interest of the example code to help you understand it with ease. +The example will showcase different interrupt routines for Opta™, and you will be greeted with two scenarios. The `BTN_USER` is the user-programmable button that will be used to switch the relay and corresponding status LED state in sequence. The `A0` and `A1` inputs will be open to external devices that send signals periodically. The `A0` will be in charge of the `D0` and `D1` relays, while the `A1` will control the `D2` and `D3` relays. These tasks will help you implement to test multiple interrupts and use Opta™ PLC's onboard relays and status LEDs. The following section will highlight the details of interest of the example code to help you understand it with ease. ### Example Description From 807695de127b8b605163f09aba00e745fd9bebcb Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 16:26:00 -0600 Subject: [PATCH 08/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 630a54b109..2a3a3d7416 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -21,7 +21,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle ## Goals -- Learn how to enable interrupts on Opta™ +- Learn how to configure an Opta™ program to use interrupts - Learn how to implement interrupts on Opta™ ### Required Hardware and Software From b9a0533f091497cf44979bcd5e508c2c74f6f8c1 Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 16:29:54 -0600 Subject: [PATCH 09/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 2a3a3d7416..7b4748f1af 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -15,7 +15,7 @@ hardware: ## Overview -The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These process types require controllers to be responsive and precise to manage their delicate tasks, and capable of handling large sets of conditions within defined parameters in real time. Asynchronous operations or spontaneous events are one of many processes that could require attention at any moment. +The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage delicate or dangerous tasks, being capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are one of many processes that could require attention at any moment, being the use of interrupts a critical feature to manage those events. The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle time-sensitive and unexpected events based on state changes. This tutorial will help you to implement interrupt on Opta™ using the [Arduino IDE](https://www.arduino.cc/en/software) found within Arduino ecosystem tools. From 636961fad4092423d31c400f24096b145d780c42 Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 16:30:18 -0600 Subject: [PATCH 10/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 7b4748f1af..278c270605 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -17,7 +17,7 @@ hardware: The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage delicate or dangerous tasks, being capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are one of many processes that could require attention at any moment, being the use of interrupts a critical feature to manage those events. -The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle time-sensitive and unexpected events based on state changes. This tutorial will help you to implement interrupt on Opta™ using the [Arduino IDE](https://www.arduino.cc/en/software) found within Arduino ecosystem tools. +The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle time-sensitive and unexpected events based on state changes. This tutorial will help you to implement interrupts on Opta™ using the [Arduino IDE](https://www.arduino.cc/en/software) found within Arduino ecosystem tools. ## Goals From a7d7274d028416959bbcc7271cf3c75a2ef7a415 Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 16:31:19 -0600 Subject: [PATCH 11/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 278c270605..39db0bd10e 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -39,7 +39,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle ## Interrupt Basics -The **interrupts** are requests triggered based commonly on timed events caused by state changes. It will pause the current or active operations if the interrupt request gets accepted under parametrized conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that executes when an interrupt is generated. Usually, it is defined to run particular routines periodically. However, it can also be set to use external signal feedback to call interrupt routine or as an indication of system failure. +**Interrupts** are execution requests that are normally triggered by a timed event or signal change. It will pause the current or active operations if the interrupt request gets accepted under certain conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that executes when an interrupt is generated. Usually, it is defined to run particular routines periodically. However, it can also be set to use external signal feedback to call interrupt routine or as an indication of a system failure. ### Interrupt Types From bdc9cd2cf18b0956cc442c43345f865f804a5cb0 Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 16:33:36 -0600 Subject: [PATCH 12/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../tutorials/getting-started-with-interrupts/content.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 39db0bd10e..8289a2c78a 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -43,9 +43,11 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle ### Interrupt Types -Globally, interrupts are based on **hardware** and **software** events. The *hardware interrupt* takes action based on the hardware state change provided by external feedback. This type of interrupt can occur at any instance while instructions are running. A button press could be interpreted as a hardware interrupt. For example, an external device may send a signal anytime, if certain conditions are met, to the main device resulting in the execution of an interrupt routine to make adjustments to the process. +Globally, interrupts are based on **hardware** and **software** events: -The *software interrupts* occur when the device itself is exposed to internally defined conditions or upon a particular instruction call. It is similar to subroutine calls but based on special conditionals that create interrupt cases. A few examples are service requests within the operating system or when interacting with device drivers as storage controllers for write and read operations. +* The *hardware interrupt* takes action based on the hardware state change provided by external feedback. This type of interrupt can occur at any instance while instructions are running. A button press could be interpreted as a hardware interrupt. For example, an external device may send a signal anytime to the main device resulting in the execution of an interrupt routine to make adjustments to the process. + +* The *software interrupts* occur when the device itself is exposed to internally defined conditions or upon a particular instruction call. It is similar to subroutine calls but based on special conditionals that create interrupt cases. A few examples are service requests within the operating system or when interacting with device drivers as storage controllers for write and read operations. ***Please check out [Nick Gammon's Notes](http://gammon.com.au/interrupts) for more in-depth information about interrupts.*** From 6a4370ce8a695989c59a5778cc7dd92925e898ac Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 16:35:02 -0600 Subject: [PATCH 13/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 8289a2c78a..fb7cf04941 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -244,7 +244,7 @@ void batch23_ISR() { ### Full Example Code -You can access the complete example code [here](assets/Interrupts_Opta.zip). After extracting the compressed file, you will be able to upload and test it out with your Opta™. +You can access the complete example code [here](assets/Interrupts_Opta.zip). After extracting the compressed file, you will be able to upload and test it out with your Opta™ device. ### Testing Interrupt Example From 5f14de7b976613539deb7bcd290b7f2789b9e6e2 Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 16:36:55 -0600 Subject: [PATCH 14/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index fb7cf04941..72becbdafe 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -257,7 +257,7 @@ Hence, your Opta™ is processing based on asynchronous interrupt generated by ` ## Conclusion -In this tutorial, you have learned to enable and use interrupts on Opta™. On top of it, with the supplied example, you have tested Opta™ with multiple interrupt cases by using an integrated user-programmable button and signal sources from external devices, along with the Opta™ PLC's hardware features as onboard relays and status LEDs. +In this tutorial, you have learned to enable and use interrupts on Opta™. On top of it, with the supplied example, you have tested Opta™ with multiple interrupt cases by using an integrated user-programmable button and signal sources from external devices, along with the Opta™ PLC's hardware features as onboard relays and status LEDs. Using the example of this tutorial as reference, now you can implement interrupts in your own professional solutions. ### Next Steps From bffabace1ddc7e6e5c1603da3cf17f81aaf580c2 Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 16:40:11 -0600 Subject: [PATCH 15/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 72becbdafe..e4a9e8309f 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -200,7 +200,7 @@ void relayBatchInverter(){ } ``` -For both previous functions, the `relayStateHandler()` function is used to manage the relay status. The `digitalWrite()` function will use a special conditional which goes by `status`. It will seek the corresponding relay and compare its stored status to shift its state in a more automated way. It is a practical method to avoid writing the same lines of code in different parts of the sketch and helps maintain a cleaner code structure using a single function with an argument to process the data. +For both previous functions, the `relayStateHandler()` function is used to manage the relay status. The `digitalWrite()` function will use a special conditional which goes by `status`. It will seek the corresponding relay and compare its stored status to shift its state in a more automated way. This is a practical method to avoid writing the same lines of code in different parts of the sketch and can help to maintain a cleaner code structure using a single function with an argument to process the data. ```arduino /** From 0235eb5f3a7aca28181c8d3a866d010a8158b0fc Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 17:03:50 -0600 Subject: [PATCH 16/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index e4a9e8309f..ef57e6c78c 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -98,7 +98,7 @@ int leds[]{ LED_D0, LED_D1, LED_D2, LED_D3 }; bool statuses[]{ true, true, true, true }; ``` -The `setup()` will define the relay and status LED outputs, and also the inputs that will be used to attach to interrupt cases. The `attachInterrupt()` function configures the inputs as interrupts with its trigger method and connects to the defined ISR functions that can be found later in the example description. Thus, all the defined input pins are set as interrupt pins with their dedicated ISR functions and are programmed to trigger with a `RISING` signal. +The `setup()` will define the relay and status LED outputs, and also the inputs that will be used to attach to interrupt cases. The `attachInterrupt()` function configures the inputs as interrupts with its trigger method and connects to the defined ISR functions that can be found later in the example description. Thus, all the defined input pins are set as interrupt pins with their dedicated ISR functions and are programmed to trigger with a `RISING` signal. This way, every time one of the pins goes from LOW to HIGH (rising signal) the ISR or callback function will be executed as far as possible. ```arduino void setup(){ From 45bfecf61a0499e07f4acb7635903b8460e24e21 Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 17:09:58 -0600 Subject: [PATCH 17/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index ef57e6c78c..f1bda149ec 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -53,7 +53,7 @@ Globally, interrupts are based on **hardware** and **software** events: ### Interrupt Triggers -Interrupt signals are an important element to comprehend to set events with appropriate triggers, especially when it is to be implemented on programmable logic controllers such as Opta™. Since it will handle broad signal types, it is a good practice to understand which signal condition suits certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered**. They are characterized as follows: +Interrupt signals are an important element to comprehend to set events with appropriate triggers, especially when it is to be implemented on programmable logic controllers such as Opta™. Since it will handle broad signal types, it is a good practice to understand which signal condition suits certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered** interruptions. They are characterized as follows: * **Level-Triggered:** this is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. * **Edge-Triggered:** this is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. From 586e48b2bc1b610d872c3223ade2fb61432b685c Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 20 Apr 2023 17:10:49 -0600 Subject: [PATCH 18/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index f1bda149ec..738b10cb4c 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -58,7 +58,7 @@ Interrupt signals are an important element to comprehend to set events with appr * **Level-Triggered:** this is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. * **Edge-Triggered:** this is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. -With this, you will now be able to follow the interrupt example on Opta™ with much ease. +Now that you have a better knowledge about interrupts, let's see how to use interrupts with an Opta™ device. ## Instructions From d85b15be1a55e5873f2c6c7396e738037bbcff28 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Thu, 20 Apr 2023 19:36:20 -0600 Subject: [PATCH 19/38] Tutorial content update --- .../content.md | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 738b10cb4c..98576f0a7a 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -15,7 +15,7 @@ hardware: ## Overview -The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage delicate or dangerous tasks, being capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are one of many processes that could require attention at any moment, being the use of interrupts a critical feature to manage those events. +The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage delicate or sensitive tasks, and capable to handle large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are one of many processes that requires attention at any moment, interrupts is a critical feature to manage these types of events. The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle time-sensitive and unexpected events based on state changes. This tutorial will help you to implement interrupts on Opta™ using the [Arduino IDE](https://www.arduino.cc/en/software) found within Arduino ecosystem tools. @@ -53,7 +53,7 @@ Globally, interrupts are based on **hardware** and **software** events: ### Interrupt Triggers -Interrupt signals are an important element to comprehend to set events with appropriate triggers, especially when it is to be implemented on programmable logic controllers such as Opta™. Since it will handle broad signal types, it is a good practice to understand which signal condition suits certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered** interruptions. They are characterized as follows: +Interrupt signals must be set with appropriate triggers to create interrupt requests correctly, and they become critical when implemented on programmable logic controllers such as Opta™. Because it handles broad signal types, it is a good practice to understand which signal circumstances suit certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered** interrupts. They are characterized as follows: * **Level-Triggered:** this is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. * **Edge-Triggered:** this is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. @@ -76,11 +76,16 @@ Please refer to the following diagram to have an overview of the inputs and outp ### Example Overview -The example will showcase different interrupt routines for Opta™, and you will be greeted with two scenarios. The `BTN_USER` is the user-programmable button that will be used to switch the relay and corresponding status LED state in sequence. The `A0` and `A1` inputs will be open to external devices that send signals periodically. The `A0` will be in charge of the `D0` and `D1` relays, while the `A1` will control the `D2` and `D3` relays. These tasks will help you implement to test multiple interrupts and use Opta™ PLC's onboard relays and status LEDs. The following section will highlight the details of interest of the example code to help you understand it with ease. +The example will showcase different interrupt routines for Opta™ using two scenarios: + +1. The `BTN_USER` is the user-programmable button that will be used for the interrupt to simulate asynchronous events. The corresponding interrupt will make relay and corresponding status LED state switch in a sequence based on its present state. +2. The `A0` and `A1` inputs will be open to external devices that send signals periodically, and it will make an interrupt on the signaled pin. The `A0` will be in charge of the `D0` and `D1` relays, while the `A1` will control the `D2` and `D3` relays. + +These tasks will help you test multiple interrupt schemes combined with Opta™ PLC's onboard relays and status LEDs. The following section will highlight the details of interest of the example code to help you understand it with ease. ### Example Description -First, because the variables used within interrupt should keep their value, they will be defined as `volatile` so that the variables found inside ISR can be shared with the main program. In this case, `counter` will keep the number of `BTN_USER` presses and `relayLedState` to track the status LED of the corresponding relay. The boolean variables `relCntState`, `batchState01`, and `batchState23` will be used to control the conditional flag when its respective interrupt is called. +When working with interrupts, it is crucial to designate the interrupt variables as `volatile` so that they can be used by both the ISR function and the main program. In this case, `counter` will keep the number of `BTN_USER` presses and `relayLedState` to track the status LED of the corresponding relay. The boolean variables `relCntState`, `batchState01`, and `batchState23` will be used to control the conditional flag when its respective interrupt is called. ```arduino volatile unsigned int counter, relayLedState {}; @@ -98,7 +103,11 @@ int leds[]{ LED_D0, LED_D1, LED_D2, LED_D3 }; bool statuses[]{ true, true, true, true }; ``` -The `setup()` will define the relay and status LED outputs, and also the inputs that will be used to attach to interrupt cases. The `attachInterrupt()` function configures the inputs as interrupts with its trigger method and connects to the defined ISR functions that can be found later in the example description. Thus, all the defined input pins are set as interrupt pins with their dedicated ISR functions and are programmed to trigger with a `RISING` signal. This way, every time one of the pins goes from LOW to HIGH (rising signal) the ISR or callback function will be executed as far as possible. +The `setup()` will define the relay and status LED outputs, and also the inputs that will be used to attach to interrupt cases. The `attachInterrupt()` function configures the inputs as interrupts with its trigger method and connects to the defined ISR functions that can be found later in the example description. + +***For more information about `attachInterrupt()` function, please check [here](https://www.arduino.cc/reference/en/language/functions/external-interrupts/attachinterrupt/). You will also be able to read briefly more information about interrupts.*** + +Thus, all the defined input pins are set as interrupt pins with their dedicated ISR functions and are programmed to trigger with a `RISING` signal. This way, every time one of the pins goes from LOW to HIGH (rising signal), the ISR or callback function will be executed. ```arduino void setup(){ @@ -143,7 +152,7 @@ void loop(){ } ``` -The `relayLinearCounter()` function runs a linear sequence for turning on and off the `D0` to `D3` relays with their corresponding status LEDs based on the interrupt triggered each time `BTN_USER` is pressed. The `counter` and `relayLedState` variables are used to track the total number of `BTN_USER` triggered interrupts, which also represents the number of button presses, and currently shifted relay status. The `relCntState` is used as a gatekeeper to allow only when a valid interrupt has occurred since the function is running inside the `loop()` function. +The `relayLinearCounter()` function runs a linear sequence for turning on and off the `D0` to `D3` relays with their corresponding status LEDs based on the interrupt triggered each time `BTN_USER` is pressed. The `counter` and `relayLedState` variables are used to track the total number of `BTN_USER` triggered interrupts, which also represents the number of button presses, and currently shifted relay status. The `relCntState` is used as a gatekeeper instance based on the `BTN_USER` interrupt request since the function is running inside the `loop()` function. ```arduino /** @@ -200,7 +209,7 @@ void relayBatchInverter(){ } ``` -For both previous functions, the `relayStateHandler()` function is used to manage the relay status. The `digitalWrite()` function will use a special conditional which goes by `status`. It will seek the corresponding relay and compare its stored status to shift its state in a more automated way. This is a practical method to avoid writing the same lines of code in different parts of the sketch and can help to maintain a cleaner code structure using a single function with an argument to process the data. +The `relayStateHandler()` function is used to manage the relay status and is implemented as a complementary function. The `digitalWrite()` function will use a special conditional that stores the applied state in a variable called `status`. It will seek the corresponding relay and compare its stored status to shift its state in a more automated way. This is a practical method to avoid writing the same lines of code in different parts of the sketch and can help to maintain a cleaner code structure using a single function with an argument to process the data. ```arduino /** From 6b3fe310343a01f2d0baeb876cabea506bea5ab3 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Thu, 20 Apr 2023 23:16:15 -0600 Subject: [PATCH 20/38] Tutorial content update --- .../tutorials/getting-started-with-interrupts/content.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 98576f0a7a..243fab0573 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -15,7 +15,7 @@ hardware: ## Overview -The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage delicate or sensitive tasks, and capable to handle large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are one of many processes that requires attention at any moment, interrupts is a critical feature to manage these types of events. +The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage sensitive tasks, and capable to handle large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are one of many processes that requires attention at any given moment, and interrupt is a critical feature to control and optimize these types of events. The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle time-sensitive and unexpected events based on state changes. This tutorial will help you to implement interrupts on Opta™ using the [Arduino IDE](https://www.arduino.cc/en/software) found within Arduino ecosystem tools. @@ -39,15 +39,15 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle ## Interrupt Basics -**Interrupts** are execution requests that are normally triggered by a timed event or signal change. It will pause the current or active operations if the interrupt request gets accepted under certain conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that executes when an interrupt is generated. Usually, it is defined to run particular routines periodically. However, it can also be set to use external signal feedback to call interrupt routine or as an indication of a system failure. +**Interrupts** are execution requests triggered usually by a timed event or signal. It will pause active process if the interrupt request is accepted under certain conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that performs specific instruction set whenever an interrupt is raised. The handler can be defined to run particular instructions periodically, to use external signal, or as an indication of a system failure. Basically, it is a prioritized function triggered whenever specific states suffer a change. ### Interrupt Types Globally, interrupts are based on **hardware** and **software** events: -* The *hardware interrupt* takes action based on the hardware state change provided by external feedback. This type of interrupt can occur at any instance while instructions are running. A button press could be interpreted as a hardware interrupt. For example, an external device may send a signal anytime to the main device resulting in the execution of an interrupt routine to make adjustments to the process. +* The *hardware interrupt* is an interrupt raised by a hardware signal sent from an external device. This interrupt class handles its asynchronously generated interrupt signal to synchronize within the subsequent instructions of the interrupted device. For example, a button press can send a signal that represents the change in hardware state to execute a task requiring immediate attention, such as an emergency stop alert. -* The *software interrupts* occur when the device itself is exposed to internally defined conditions or upon a particular instruction call. It is similar to subroutine calls but based on special conditionals that create interrupt cases. A few examples are service requests within the operating system or when interacting with device drivers as storage controllers for write and read operations. +* The *software interrupt* is raised when the device itself is exposed to internally defined conditions or upon a particular routine call. It watches for special conditionals that create interrupts based on the present parameters. For instance, read and write operations of the storage device interacting with the controller driver is one example that involves software interrupt. ***Please check out [Nick Gammon's Notes](http://gammon.com.au/interrupts) for more in-depth information about interrupts.*** From 06097878148c3f9ac212e26d0470e453794aa868 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Thu, 20 Apr 2023 23:23:29 -0600 Subject: [PATCH 21/38] Tutorial content update --- .../getting-started-with-interrupts/content.md | 2 +- .../hero-banner.png | Bin 0 -> 430159 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/hero-banner.png diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 243fab0573..3521c8eff1 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -21,7 +21,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle ## Goals -- Learn how to configure an Opta™ program to use interrupts +- Learn how to configure an Opta™ to use interrupts - Learn how to implement interrupts on Opta™ ### Required Hardware and Software diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/hero-banner.png b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/hero-banner.png new file mode 100644 index 0000000000000000000000000000000000000000..9889202edc4eb0ffdb7d1efdb8ad08a1527764e1 GIT binary patch literal 430159 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 hty570nspHmG4KaRQlTgUKF;%gKC` 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%0AQ8r;lKFiAttQoXv;f7B*h)s*F1)|(S~!dk-M6tF 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

s0o3yv4ah5 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 Kzg1jydhj1)iS5Dw literal 0 HcmV?d00001 From 3fa0b89ccf5177b0ec073b3f6d047c743e0ca519 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Thu, 20 Apr 2023 23:37:54 -0600 Subject: [PATCH 22/38] Tutorial content update --- .../getting-started-with-interrupts/content.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 3521c8eff1..8d1aaf0d03 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -15,7 +15,7 @@ hardware: ## Overview -The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage sensitive tasks, and capable to handle large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are one of many processes that requires attention at any given moment, and interrupt is a critical feature to control and optimize these types of events. +The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage sensitive tasks and capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are one of many processes that requires attention at any given moment; therefore, the interrupt is a critical feature to control and optimize these types of events. The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle time-sensitive and unexpected events based on state changes. This tutorial will help you to implement interrupts on Opta™ using the [Arduino IDE](https://www.arduino.cc/en/software) found within Arduino ecosystem tools. @@ -39,7 +39,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle ## Interrupt Basics -**Interrupts** are execution requests triggered usually by a timed event or signal. It will pause active process if the interrupt request is accepted under certain conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that performs specific instruction set whenever an interrupt is raised. The handler can be defined to run particular instructions periodically, to use external signal, or as an indication of a system failure. Basically, it is a prioritized function triggered whenever specific states suffer a change. +**Interrupts** are execution requests triggered usually by a timed event or signal. It will pause the active process if the interrupt request is accepted under certain conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. The handler can be defined to run particular instructions periodically, use external signals, or as an indication of a system failure. It is a prioritized function triggered whenever specific states suffer a change. ### Interrupt Types @@ -55,8 +55,8 @@ Globally, interrupts are based on **hardware** and **software** events: Interrupt signals must be set with appropriate triggers to create interrupt requests correctly, and they become critical when implemented on programmable logic controllers such as Opta™. Because it handles broad signal types, it is a good practice to understand which signal circumstances suit certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered** interrupts. They are characterized as follows: -* **Level-Triggered:** this is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. -* **Edge-Triggered:** this is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. +* **Level-Triggered:** This is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. +* **Edge-Triggered:** This is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. Now that you have a better knowledge about interrupts, let's see how to use interrupts with an Opta™ device. @@ -152,7 +152,7 @@ void loop(){ } ``` -The `relayLinearCounter()` function runs a linear sequence for turning on and off the `D0` to `D3` relays with their corresponding status LEDs based on the interrupt triggered each time `BTN_USER` is pressed. The `counter` and `relayLedState` variables are used to track the total number of `BTN_USER` triggered interrupts, which also represents the number of button presses, and currently shifted relay status. The `relCntState` is used as a gatekeeper instance based on the `BTN_USER` interrupt request since the function is running inside the `loop()` function. +The `relayLinearCounter()` function runs a linear sequence for turning on and off the `D0` to `D3` relays with their corresponding status LEDs based on the interrupt triggered each time `BTN_USER` is pressed. The `counter` and `relayLedState` variables are used to track the total number of `BTN_USER` triggered interrupts, which also represents the number of button presses, and currently shifted relay status. The `relCntState` is used as a gatekeeper instance based on the `BTN_USER` interrupt request since it is an active function inside the `loop()` function. ```arduino /** @@ -209,7 +209,7 @@ void relayBatchInverter(){ } ``` -The `relayStateHandler()` function is used to manage the relay status and is implemented as a complementary function. The `digitalWrite()` function will use a special conditional that stores the applied state in a variable called `status`. It will seek the corresponding relay and compare its stored status to shift its state in a more automated way. This is a practical method to avoid writing the same lines of code in different parts of the sketch and can help to maintain a cleaner code structure using a single function with an argument to process the data. +The `relayStateHandler()` function manages the relay status and is implemented as a complementary function. The `digitalWrite()` function will use a special conditional that stores the applied state in a variable called `status`. It will seek the corresponding relay and compare its stored status to shift its state in a more automated way. This is a practical method to avoid writing the same lines of code in different parts of the sketch and can help to maintain a cleaner code structure using a single function with an argument to process the data. ```arduino /** From d87aca20c633ab1a9d79c3d9c9804318d08ee2dd Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Thu, 20 Apr 2023 23:59:49 -0600 Subject: [PATCH 23/38] Tutorial content update --- .../assets/opta_interrupt_model.svg | 50 +++++++++---------- .../content.md | 24 ++++++--- 2 files changed, 43 insertions(+), 31 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_model.svg b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_model.svg index d54d199208..b378ea79bc 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_model.svg +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_model.svg @@ -1,30 +1,30 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - + - + diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 8d1aaf0d03..2cfe5dcbe4 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -39,7 +39,9 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle ## Interrupt Basics -**Interrupts** are execution requests triggered usually by a timed event or signal. It will pause the active process if the interrupt request is accepted under certain conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. The handler can be defined to run particular instructions periodically, use external signals, or as an indication of a system failure. It is a prioritized function triggered whenever specific states suffer a change. +**Interrupts** are execution requests triggered usually by a timed event or signal. It will pause the active process if the interrupt request is accepted under certain conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. + +The handler can be defined to run particular instructions periodically, use external signals, or as an indication of a system failure. It is a prioritized function triggered whenever specific states suffer a change. ### Interrupt Types @@ -53,7 +55,9 @@ Globally, interrupts are based on **hardware** and **software** events: ### Interrupt Triggers -Interrupt signals must be set with appropriate triggers to create interrupt requests correctly, and they become critical when implemented on programmable logic controllers such as Opta™. Because it handles broad signal types, it is a good practice to understand which signal circumstances suit certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered** interrupts. They are characterized as follows: +Interrupt signals must be set with appropriate triggers to create interrupt requests correctly, and they become critical when implemented on programmable logic controllers such as Opta™. + +Because it handles broad signal types, it is a good practice to understand which signal circumstances suit certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered** interrupts. They are characterized as follows: * **Level-Triggered:** This is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. * **Edge-Triggered:** This is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. @@ -152,7 +156,9 @@ void loop(){ } ``` -The `relayLinearCounter()` function runs a linear sequence for turning on and off the `D0` to `D3` relays with their corresponding status LEDs based on the interrupt triggered each time `BTN_USER` is pressed. The `counter` and `relayLedState` variables are used to track the total number of `BTN_USER` triggered interrupts, which also represents the number of button presses, and currently shifted relay status. The `relCntState` is used as a gatekeeper instance based on the `BTN_USER` interrupt request since it is an active function inside the `loop()` function. +The `relayLinearCounter()` function runs a linear sequence for turning on and off the `D0` to `D3` relays with their corresponding status LEDs based on the interrupt triggered each time `BTN_USER` is pressed. + +The `counter` and `relayLedState` variables are used to track the total number of `BTN_USER` triggered interrupts, which also represents the number of button presses, and currently shifted relay status. The `relCntState` is used as a gatekeeper instance based on the `BTN_USER` interrupt request since it is an active function inside the `loop()` function. ```arduino /** @@ -184,7 +190,9 @@ void relayLinearCounter(){ } ``` -The `relayBatchInverter()` function checks to invert a relay batch and its corresponding status LEDs based on `A0` and `A1` interrupt pins. The `A0` controls the batch of relays `D0` and `D1`, while The `A1` controls `D2` and `D3` relays. Each input has an ISR function conditioned with `batchState01` and `batchState23` boolean variables. When either pin is triggered with an interrupt signal, it will invert the state of the corresponding relay batch based on present relay states. +The `relayBatchInverter()` function checks to invert a relay batch and its corresponding status LEDs based on `A0` and `A1` interrupt pins. The `A0` controls the batch of relays `D0` and `D1`, while The `A1` controls `D2` and `D3` relays. + +Each input has an ISR function conditioned with `batchState01` and `batchState23` boolean variables. When either pin is triggered with an interrupt signal, it will invert the state of the corresponding relay batch based on present relay states. ```arduino /** @@ -228,7 +236,9 @@ void relayStateHandler(int relayID){ } ``` -These are all the ISR functions that help to shift relay states within the corresponding process whenever an interrupt has occurred. These functions are kept as short as possible to maintain quick responses for interrupts that can happen at any time. For good practice, please do not use `delay()` inside these functions as it might cause erratic behaviors, and use it as a quick state modifier to be used with functions that may be running continuously. +These are all the ISR functions that help to shift relay states within the corresponding process whenever an interrupt has occurred. These functions are kept as short as possible to maintain quick responses for interrupts that can happen at any time. + +For good practice, please do not use `delay()` inside these functions as it might cause erratic behaviors, and use it as a quick state modifier to be used with functions that may be running continuously. ```arduino /** @@ -274,4 +284,6 @@ Now that you are familiar with interrupts on the Opta™, take a look at the fol * Take a look at [getting started tutorial](/tutorials/opta/getting-started) to get a better overview of the features of Opta™ -* If you wish to incorporate Wi-Fi®/Bluetooth® Low Energy in your Opta™ solutions, have a look at [connectivity tutorial](/tutorials/opta/getting-started-connectivity) \ No newline at end of file +* If you wish to incorporate Wi-Fi®/Bluetooth® Low Energy in your Opta™ solutions, have a look at [connectivity tutorial](/tutorials/opta/getting-started-connectivity) + +* To partition the memory of an Opta™ device, please check the [memory partitioning tutorial](/tutorials/opta/memory-partitioning) \ No newline at end of file From 86d499419b823d77228cd520d372ac2ceac6157e Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Fri, 21 Apr 2023 00:42:18 -0600 Subject: [PATCH 24/38] Tutorial content update (Graphics) --- .../assets/opta_interrupt_overview.svg | 29 ++ .../assets/opta_interrupt_signals.svg | 260 ++++++++++++++++++ .../content.md | 10 +- 3 files changed, 297 insertions(+), 2 deletions(-) create mode 100644 content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_overview.svg create mode 100644 content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_signals.svg diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_overview.svg b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_overview.svg new file mode 100644 index 0000000000..5c5cc3457f --- /dev/null +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_overview.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_signals.svg b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_signals.svg new file mode 100644 index 0000000000..f9c76a5bf8 --- /dev/null +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/assets/opta_interrupt_signals.svg @@ -0,0 +1,260 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 2cfe5dcbe4..0329b393ba 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -17,6 +17,8 @@ hardware: The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage sensitive tasks and capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are one of many processes that requires attention at any given moment; therefore, the interrupt is a critical feature to control and optimize these types of events. +![General Overview of Interrupt on Opta™](assets/opta_interrupt_overview.svg) + The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle time-sensitive and unexpected events based on state changes. This tutorial will help you to implement interrupts on Opta™ using the [Arduino IDE](https://www.arduino.cc/en/software) found within Arduino ecosystem tools. ## Goals @@ -62,6 +64,8 @@ Because it handles broad signal types, it is a good practice to understand which * **Level-Triggered:** This is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. * **Edge-Triggered:** This is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. +![Interrupt Triggers with Opta™](assets/opta_interrupt_signals.svg) + Now that you have a better knowledge about interrupts, let's see how to use interrupts with an Opta™ device. ## Instructions @@ -76,7 +80,7 @@ The example will try to keep the setup as simple as possible while maintaining t Please refer to the following diagram to have an overview of the inputs and outputs position of the example model. -![Opta™ Interrupt Example Setup](assets/opta_interrupt_model.svg) +![Interrupt Example Setup for Opta™](assets/opta_interrupt_model.svg) ### Example Overview @@ -217,7 +221,9 @@ void relayBatchInverter(){ } ``` -The `relayStateHandler()` function manages the relay status and is implemented as a complementary function. The `digitalWrite()` function will use a special conditional that stores the applied state in a variable called `status`. It will seek the corresponding relay and compare its stored status to shift its state in a more automated way. This is a practical method to avoid writing the same lines of code in different parts of the sketch and can help to maintain a cleaner code structure using a single function with an argument to process the data. +The `relayStateHandler()` function manages the relay status and is implemented as a complementary function. The `digitalWrite()` function will use a special conditional that stores the applied state in a variable called `status`. + +It will seek the corresponding relay and compare its stored status to shift its state in a more automated way. This is a practical method to avoid writing the same lines of code in different parts of the sketch and can help to maintain a cleaner code structure using a single function with an argument to process the data. ```arduino /** From 95d79694deaeff4348a5028fb37033ea43fb7ad5 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Fri, 21 Apr 2023 00:52:34 -0600 Subject: [PATCH 25/38] Tutorial content update --- .../tutorials/getting-started-with-interrupts/content.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 0329b393ba..8cd6621631 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -43,7 +43,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle **Interrupts** are execution requests triggered usually by a timed event or signal. It will pause the active process if the interrupt request is accepted under certain conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. -The handler can be defined to run particular instructions periodically, use external signals, or as an indication of a system failure. It is a prioritized function triggered whenever specific states suffer a change. +The handler can be defined to run particular instructions periodically, use external signals, or alert an indication of a system failure. It is a prioritized function that is triggered whenever specific states suffer a change. ### Interrupt Types @@ -57,9 +57,7 @@ Globally, interrupts are based on **hardware** and **software** events: ### Interrupt Triggers -Interrupt signals must be set with appropriate triggers to create interrupt requests correctly, and they become critical when implemented on programmable logic controllers such as Opta™. - -Because it handles broad signal types, it is a good practice to understand which signal circumstances suit certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered** interrupts. They are characterized as follows: +Interrupt signals must be set with appropriate triggers to create interrupt requests correctly, and they become critical when implemented on programmable logic controllers such as Opta™. Because it handles broad signal types, it is a good practice to understand which signal circumstances suit certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered** interrupts. They are characterized as follows: * **Level-Triggered:** This is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. * **Edge-Triggered:** This is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. From d0787e54f870123fd8fdb86a29f67077c549816a Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Mon, 24 Apr 2023 12:52:42 -0600 Subject: [PATCH 26/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 8cd6621631..5f58ed8c1d 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -41,7 +41,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle ## Interrupt Basics -**Interrupts** are execution requests triggered usually by a timed event or signal. It will pause the active process if the interrupt request is accepted under certain conditions. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. +**Interrupts** are execution requests triggered usually by a timed event or signal. It will pause the active process if the interrupt request is accepted under certain conditions, executing new commands immediately and going back to the main process as soon as possible. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. The handler can be defined to run particular instructions periodically, use external signals, or alert an indication of a system failure. It is a prioritized function that is triggered whenever specific states suffer a change. From 17fd9c60da455f9eb4d288c2cb324ece2639e62b Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Mon, 24 Apr 2023 12:54:26 -0600 Subject: [PATCH 27/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Julián Caro Linares --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 5f58ed8c1d..79fcc32f74 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -289,5 +289,3 @@ Now that you are familiar with interrupts on the Opta™, take a look at the fol * Take a look at [getting started tutorial](/tutorials/opta/getting-started) to get a better overview of the features of Opta™ * If you wish to incorporate Wi-Fi®/Bluetooth® Low Energy in your Opta™ solutions, have a look at [connectivity tutorial](/tutorials/opta/getting-started-connectivity) - -* To partition the memory of an Opta™ device, please check the [memory partitioning tutorial](/tutorials/opta/memory-partitioning) \ No newline at end of file From 6aff295f0a052d8395d55588069839c4bff23136 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Mon, 24 Apr 2023 13:13:57 -0600 Subject: [PATCH 28/38] Tutorial content update --- .../tutorials/getting-started-with-interrupts/content.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 79fcc32f74..0b6cc6b9d8 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -41,13 +41,13 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle ## Interrupt Basics -**Interrupts** are execution requests triggered usually by a timed event or signal. It will pause the active process if the interrupt request is accepted under certain conditions, executing new commands immediately and going back to the main process as soon as possible. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. +**Interrupts** are execution requests triggered usually by a timed event or signal. It will pause the active process if the interrupt request is accepted under certain conditions, executing new high-priority commands immediately and returning to the main process as soon as possible. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. -The handler can be defined to run particular instructions periodically, use external signals, or alert an indication of a system failure. It is a prioritized function that is triggered whenever specific states suffer a change. +The handler can be defined to run particular instructions periodically, use external signals, or alert an indication of a system failure. It is a prioritized function that is triggered whenever specific high-awareness states suffer a change. ### Interrupt Types -Globally, interrupts are based on **hardware** and **software** events: +Interrupts are based on **hardware** and **software** events: * The *hardware interrupt* is an interrupt raised by a hardware signal sent from an external device. This interrupt class handles its asynchronously generated interrupt signal to synchronize within the subsequent instructions of the interrupted device. For example, a button press can send a signal that represents the change in hardware state to execute a task requiring immediate attention, such as an emergency stop alert. From 5cc8106f11e7efffd61adb6a242493a45079e4ae Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Tue, 25 Apr 2023 18:10:24 -0600 Subject: [PATCH 29/38] Tutorial content minor update --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 0b6cc6b9d8..7a1a4a610e 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -60,7 +60,7 @@ Interrupts are based on **hardware** and **software** events: Interrupt signals must be set with appropriate triggers to create interrupt requests correctly, and they become critical when implemented on programmable logic controllers such as Opta™. Because it handles broad signal types, it is a good practice to understand which signal circumstances suit certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered** interrupts. They are characterized as follows: * **Level-Triggered:** This is when an interrupt has been requested with signals at a particular logic level, which can be either *HIGH* or *LOW*. -* **Edge-Triggered:** This is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* argument to interrupt whenever either signal transition has occurred. +* **Edge-Triggered:** This is when an interrupt has been requested due to a signal at a specific transition level, which can be either *RISING* or *FALLING* edge. It can also be configured with *CHANGE* to interrupt whenever either signal transition has occurred. ![Interrupt Triggers with Opta™](assets/opta_interrupt_signals.svg) From cd2d2cbe526387f41b3760afdeba1a616ceddf7c Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 27 Apr 2023 10:43:41 -0600 Subject: [PATCH 30/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md Co-authored-by: Fr4ng <100422525+Fr4ng@users.noreply.github.com> --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 7a1a4a610e..dab1c09b17 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -15,7 +15,7 @@ hardware: ## Overview -The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage sensitive tasks and capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are one of many processes that requires attention at any given moment; therefore, the interrupt is a critical feature to control and optimize these types of events. +The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage sensitive tasks and capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are the kind of process that requires immediate attention at a given moment, therefore, the interrupt management is critical to control and optimize these types of events. ![General Overview of Interrupt on Opta™](assets/opta_interrupt_overview.svg) From 6ef0fcdb2e864399dd7f0d6932a60930be3a004c Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 27 Apr 2023 10:44:13 -0600 Subject: [PATCH 31/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md Co-authored-by: Fr4ng <100422525+Fr4ng@users.noreply.github.com> --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index dab1c09b17..92fc3c4fda 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -19,7 +19,7 @@ The Opta™ micro PLC is designed to operate in several industrial environments ![General Overview of Interrupt on Opta™](assets/opta_interrupt_overview.svg) -The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle time-sensitive and unexpected events based on state changes. This tutorial will help you to implement interrupts on Opta™ using the [Arduino IDE](https://www.arduino.cc/en/software) found within Arduino ecosystem tools. +The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle time-sensitive and unexpected events based on state changes. This tutorial will help you to implement interrupts on Opta™ using the Arduino programming language and the [Arduino IDE](https://www.arduino.cc/en/software). ## Goals From 6d37e4dc1c02ab25cf92d73067e38457164b9318 Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 27 Apr 2023 10:45:13 -0600 Subject: [PATCH 32/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md Co-authored-by: Fr4ng <100422525+Fr4ng@users.noreply.github.com> --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 92fc3c4fda..d3a3935570 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -41,7 +41,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle ## Interrupt Basics -**Interrupts** are execution requests triggered usually by a timed event or signal. It will pause the active process if the interrupt request is accepted under certain conditions, executing new high-priority commands immediately and returning to the main process as soon as possible. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. +**Interrupts** are execution requests triggered usually by a timed event or signal which will pause the active process if the interrupt request is accepted under certain conditions, executing new high-priority commands immediately and returning to the main process as soon as possible. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. The handler can be defined to run particular instructions periodically, use external signals, or alert an indication of a system failure. It is a prioritized function that is triggered whenever specific high-awareness states suffer a change. From c9b68cad0a5c3f3e6200fbb4f94a0a68e6cea9ca Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 27 Apr 2023 10:50:51 -0600 Subject: [PATCH 33/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md Co-authored-by: Fr4ng <100422525+Fr4ng@users.noreply.github.com> --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index d3a3935570..62e89a4eb3 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -49,7 +49,7 @@ The handler can be defined to run particular instructions periodically, use exte Interrupts are based on **hardware** and **software** events: -* The *hardware interrupt* is an interrupt raised by a hardware signal sent from an external device. This interrupt class handles its asynchronously generated interrupt signal to synchronize within the subsequent instructions of the interrupted device. For example, a button press can send a signal that represents the change in hardware state to execute a task requiring immediate attention, such as an emergency stop alert. +* The *hardware interrupt* is an interrupt raised by a hardware signal sent from an external device. This interrupt class handles its asynchronously generated interrupt signal to synchronize it with the subsequent instructions of the interrupted device. For example, the pression of a button can send a signal that represents the change in the hardware state to execute a task requiring immediate attention, such as an emergency stop alert. * The *software interrupt* is raised when the device itself is exposed to internally defined conditions or upon a particular routine call. It watches for special conditionals that create interrupts based on the present parameters. For instance, read and write operations of the storage device interacting with the controller driver is one example that involves software interrupt. From 5c2f2f24fa90c842bc65166e27e6f6fb77fb7941 Mon Sep 17 00:00:00 2001 From: TaddyHC <94547080+TaddyHC@users.noreply.github.com> Date: Thu, 27 Apr 2023 10:53:01 -0600 Subject: [PATCH 34/38] Update content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md Co-authored-by: Fr4ng <100422525+Fr4ng@users.noreply.github.com> --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 62e89a4eb3..0d7bedddfb 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -43,7 +43,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle **Interrupts** are execution requests triggered usually by a timed event or signal which will pause the active process if the interrupt request is accepted under certain conditions, executing new high-priority commands immediately and returning to the main process as soon as possible. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. -The handler can be defined to run particular instructions periodically, use external signals, or alert an indication of a system failure. It is a prioritized function that is triggered whenever specific high-awareness states suffer a change. +The handler can be defined to run particular instructions periodically, use external signals, or send an alert in case of a system failure. It is function that is launched as prioritary among the other operations, whenever a specific high-awareness change of state of a trigger occurs. ### Interrupt Types From 5106f8de14e52b967b9a7faee8ac4fefdde4b833 Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Thu, 27 Apr 2023 11:01:37 -0600 Subject: [PATCH 35/38] Tutorial content post patch --- .../opta/tutorials/getting-started-with-interrupts/content.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 0d7bedddfb..89f6b7061b 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -15,7 +15,7 @@ hardware: ## Overview -The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage sensitive tasks and capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are the kind of process that requires immediate attention at a given moment, therefore, the interrupt management is critical to control and optimize these types of events. +The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage sensitive tasks and capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are the kind of process that requires immediate attention at a given moment, therefore, interrupt management is critical to control and optimize these types of events. ![General Overview of Interrupt on Opta™](assets/opta_interrupt_overview.svg) @@ -49,7 +49,7 @@ The handler can be defined to run particular instructions periodically, use exte Interrupts are based on **hardware** and **software** events: -* The *hardware interrupt* is an interrupt raised by a hardware signal sent from an external device. This interrupt class handles its asynchronously generated interrupt signal to synchronize it with the subsequent instructions of the interrupted device. For example, the pression of a button can send a signal that represents the change in the hardware state to execute a task requiring immediate attention, such as an emergency stop alert. +* The *hardware interrupt* is an interrupt raised by a hardware signal sent from an external device. This interrupt class handles its asynchronously generated interrupt signal to synchronize it with the subsequent instructions of the interrupted device. For example, the button press can send a signal that represents the change in the hardware state to execute a task requiring immediate attention, such as an emergency stop alert. * The *software interrupt* is raised when the device itself is exposed to internally defined conditions or upon a particular routine call. It watches for special conditionals that create interrupts based on the present parameters. For instance, read and write operations of the storage device interacting with the controller driver is one example that involves software interrupt. From 815d565a2f3b68f064344c8dd5452e503cb5273c Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Thu, 27 Apr 2023 11:02:26 -0600 Subject: [PATCH 36/38] Tutorial content post patch --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 89f6b7061b..b7b87fe2e7 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -43,7 +43,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle **Interrupts** are execution requests triggered usually by a timed event or signal which will pause the active process if the interrupt request is accepted under certain conditions, executing new high-priority commands immediately and returning to the main process as soon as possible. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. -The handler can be defined to run particular instructions periodically, use external signals, or send an alert in case of a system failure. It is function that is launched as prioritary among the other operations, whenever a specific high-awareness change of state of a trigger occurs. +The handler can be defined to run particular instructions periodically, use external signals, or send an alert in case of a system failure. It is a function that is launched as a priority task among the other operations, whenever a specific high-awareness change of state of a trigger occurs. ### Interrupt Types From eb373b2db00b5a23b7501c721ec1970df449a0bc Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Thu, 27 Apr 2023 17:40:19 -0600 Subject: [PATCH 37/38] Tutorial content post patch --- .../opta/tutorials/getting-started-with-interrupts/content.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index b7b87fe2e7..5c7a2e3427 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -15,7 +15,7 @@ hardware: ## Overview -The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage sensitive tasks and capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are the kind of process that requires immediate attention at a given moment, therefore, interrupt management is critical to control and optimize these types of events. +The Opta™ micro PLC is designed to operate in several industrial environments involving crucial processes. These processes require controllers to be responsive and precise to manage sensitive tasks and capable of handling large sets of conditions within defined parameters in real-time. Asynchronous operations or spontaneous events are the kind of process that requires immediate attention at a given moment. Therefore, interrupt management is critical to control and optimize these event classes. ![General Overview of Interrupt on Opta™](assets/opta_interrupt_overview.svg) @@ -43,7 +43,7 @@ The **Interrupt**, a basic yet vital feature, is available on Opta™ to handle **Interrupts** are execution requests triggered usually by a timed event or signal which will pause the active process if the interrupt request is accepted under certain conditions, executing new high-priority commands immediately and returning to the main process as soon as possible. The **Interrupt Service Routine**, or **ISR**, is the handler that performs a specific instruction set whenever an interrupt is raised. -The handler can be defined to run particular instructions periodically, use external signals, or send an alert in case of a system failure. It is a function that is launched as a priority task among the other operations, whenever a specific high-awareness change of state of a trigger occurs. +The handler can be defined to run particular instructions periodically, use external signals, or send an alert in case of a system failure. It is a function launched as a priority task among the other operations, whenever a specific high-awareness state change occurs respective to an assigned trigger. ### Interrupt Types From a67bce57ae3903eaaaae6381db76cc59af7abdd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juli=C3=A1n=20Caro=20Linares?= Date: Fri, 28 Apr 2023 10:57:33 +0200 Subject: [PATCH 38/38] Removed link --- .../opta/tutorials/getting-started-with-interrupts/content.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md index 5c7a2e3427..e6af8af504 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/getting-started-with-interrupts/content.md @@ -53,8 +53,6 @@ Interrupts are based on **hardware** and **software** events: * The *software interrupt* is raised when the device itself is exposed to internally defined conditions or upon a particular routine call. It watches for special conditionals that create interrupts based on the present parameters. For instance, read and write operations of the storage device interacting with the controller driver is one example that involves software interrupt. -***Please check out [Nick Gammon's Notes](http://gammon.com.au/interrupts) for more in-depth information about interrupts.*** - ### Interrupt Triggers Interrupt signals must be set with appropriate triggers to create interrupt requests correctly, and they become critical when implemented on programmable logic controllers such as Opta™. Because it handles broad signal types, it is a good practice to understand which signal circumstances suit certain applications. Generally, they are **Level-Triggered** or **Edge-Triggered** interrupts. They are characterized as follows: