Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
en:sw:01-mervis:communication-mervis-jablotron100-hidden [2020/06/15 14:42]
avsetula [Communication between Mervis IDE and Jablotron 100]
en:sw:01-mervis:communication-mervis-jablotron100-hidden [2021/08/05 13:52] (current)
avsetula
Line 3: Line 3:
 <WRAP half column 81%> <WRAP half column 81%>
 Do you own or are going to integrate the Jablotron 100 electronic security system (ESS) and you want to use the electronic security system peripherals and sections for other different purposes? Do you own or are going to integrate the Jablotron 100 electronic security system (ESS) and you want to use the electronic security system peripherals and sections for other different purposes?
 +
 +Data from the security system can be easily used for energy savings as well as other ideas. The following tutorial will guide you through both the HW and SW setup of the Jablotron 100 and Mervis IDE.
 </​WRAP>​ </​WRAP>​
 <WRAP half column 15%> <WRAP half column 15%>
 ;;# ;;#
-<​html><​span class="​dev-tag dev-axon">Axon</​span></​html>​ \\+<​html><​span class="​dev-tag dev-patron">Patron</​span></​html>​ \\
 <​html><​span class="​dev-tag dev-neuron">​Neuron</​span></​html>​ \\ <​html><​span class="​dev-tag dev-neuron">​Neuron</​span></​html>​ \\
-<​html><​span class="​dev-tag dev-unipi11">​Unipi&​nbsp1.1</​span></​html>​+<​html><​span class="​dev-tag dev-gate">​Gate</​span></​html>​ \\ 
 +<​html><​span class="​dev-tag dev-unipi11">​Unipi&​nbsp1.1</​span></​html>​ \\ 
 +<​html><​span class="​dev-tag dev-axon">​Axon</​span></​html>​
 ;;# ;;#
 </​WRAP>​ </​WRAP>​
 </​WRAP>​ </​WRAP>​
  
-Data from the security system can be easily used for energy savings as well as other ideas. The following tutorial will guide you through both the HW and SW setup of the Jablotron 100 and Mervis IDE. +<WRAP center round box> 
- +<​html><​span class="​kbBlue-H4alt">​Prerequisites:</​span></​html>​
-==== Prerequisites ​====+
   * Unipi controller running [[en:​files:​software:​os-images:​00-start|Mervis OS v2.3.0]] or higher   * Unipi controller running [[en:​files:​software:​os-images:​00-start|Mervis OS v2.3.0]] or higher
-  * [[https://​www.unipi.technology/​en/​accessories-c4|24V DC power supply]]+  * [[https://​www.unipi.technology/​en/​accessories-c4|24 V⎓ power supply]]
   * local network connectivity (any switch or router)   * local network connectivity (any switch or router)
   * Jablotron 100(+) ESS control panel   * Jablotron 100(+) ESS control panel
   * Jablotron JA-121T, RS-485 module   * Jablotron JA-121T, RS-485 module
-  * [[https://​www.unipi.technology/​en/​accessories-c4|6-28V DC power supply]] for the JA-121T module+  * [[https://​www.unipi.technology/​en/​accessories-c4|6-28 V⎓ power supply]] for the JA-121T module 
 +</​WRAP>​
  
  
 ===== 1 Connection of the JA-121T module ​ ===== ===== 1 Connection of the JA-121T module ​ =====
-The JA-121T module provides galvanic isolation of Jablotron100 and RS-485 lines, using separate power supply for each side highly recommended. One side of the module is powered by the Control Module. For the **galvanically isolated** side, use a 6-28V DC power power supply different to the one used for PLC (see the module’s user manual). Connect the **D+** terminal on JA-121T with the **RS485-A** terminal on the PLC. Repeat for the **D-** and **RS485-B** terminals.+The JA-121T module provides galvanic isolation of Jablotron100 and RS-485 lines, using the separate power supply for each side highly recommended. One side of the module is powered by the Control Module. For the **galvanically isolated** side, use a 6-28 V⎓ power supply different to the one used for PLC (see the module’s user manual). Connect the **D+** terminal on JA-121T with the **RS485-A** terminal on the PLC. Repeat for the **D-** and **RS485-B** terminals.
  
 {{ :​en:​sw:​01-mervis:​Jablotron100_en_01.png?​nolink |}} {{ :​en:​sw:​01-mervis:​Jablotron100_en_01.png?​nolink |}}
Line 34: Line 38:
 ==== 2.1 Introduction ==== ==== 2.1 Introduction ====
 Jablotron 100(+) ESS Control Modules and their peripherals communicate via proprietary Jablotron bus. The JA-121T module acts as a gateway, converting the internal Jablotron bus to RS-485 serial bus with ASCII communication and providing information about the ESS to other systems. The module allows the user to set or read states of peripherals,​ sections or PGs. Jablotron 100(+) ESS Control Modules and their peripherals communicate via proprietary Jablotron bus. The JA-121T module acts as a gateway, converting the internal Jablotron bus to RS-485 serial bus with ASCII communication and providing information about the ESS to other systems. The module allows the user to set or read states of peripherals,​ sections or PGs.
 +
  
 === 2.1.1 Section === === 2.1.1 Section ===
 Using **Section_state** data points, it is possible to read or change states of the individual sections (armed, disarmed, maintenance etc.). **Section_flag** datapoints then display states of sirens, types of alarms, or enter and exit delays. ​ Using **Section_state** data points, it is possible to read or change states of the individual sections (armed, disarmed, maintenance etc.). **Section_flag** datapoints then display states of sirens, types of alarms, or enter and exit delays. ​
 +
  
 === 2.1.2 PG === === 2.1.2 PG ===
 Regarding Jablotron Control Modules, PGs are variables that can be controlled by various states, peripherals etc. In some installations,​ physical inputs or outputs can be also mapped to PGs. PGs are especially suitable for this tutorial due to their very short response time. PG can, for example, represent peripheral status, allowing you to read it from the system much faster. Regarding Jablotron Control Modules, PGs are variables that can be controlled by various states, peripherals etc. In some installations,​ physical inputs or outputs can be also mapped to PGs. PGs are especially suitable for this tutorial due to their very short response time. PG can, for example, represent peripheral status, allowing you to read it from the system much faster.
 +
  
 === 2.1.3 Periferie === === 2.1.3 Periferie ===
 The term "​peripheral"​ encompasses various external devices such as window magnetic contacts, motion sensors, camera traps etc. Unfortunately,​ the JA-121T module refreshes the current peripheral states every 10 seconds – this delay makes it unsuitable for some applications as peripheral states may not be always reliably detected. If you need faster read time, you can opt for reading PGs instead. ​ The term "​peripheral"​ encompasses various external devices such as window magnetic contacts, motion sensors, camera traps etc. Unfortunately,​ the JA-121T module refreshes the current peripheral states every 10 seconds – this delay makes it unsuitable for some applications as peripheral states may not be always reliably detected. If you need faster read time, you can opt for reading PGs instead. ​
 +
  
 === 2.1.4 JA-121T modes - Active vs Passive === === 2.1.4 JA-121T modes - Active vs Passive ===
- 
-== Passive == 
-Passive mode is based on a query/​response model. It is necessary to use passive mode if your installation requires the PLC to set anything in the ESS(section settings, PG controls etc.). 
  
 == Active == == Active ==
Line 53: Line 58:
  
 //​*Peripheral states are updated once per 10 seconds.// //​*Peripheral states are updated once per 10 seconds.//
 +
 +
 +== Passive ==
 +Passive mode is based on a query/​response model. It is necessary to use passive mode if your installation requires the PLC to set anything in the ESS(section settings, PG controls etc.).
 +
  
 ==== 2.2 Configuration of Control Module ==== ==== 2.2 Configuration of Control Module ====
-Update the Control Module (including peripherals) before first connection to the PLC.+Update the Control Module (including peripherals) before ​the first connection to the PLC.
  
 **For writing into the ESS:** Create an independent user for the PLC in the Control Module and grant it all necessary privileges, a prefix (first column) and a code (fourth column). The Mervis IDE will require these credentials for configuration of the Jablotron 100 communication protocol. ​ **For writing into the ESS:** Create an independent user for the PLC in the Control Module and grant it all necessary privileges, a prefix (first column) and a code (fourth column). The Mervis IDE will require these credentials for configuration of the Jablotron 100 communication protocol. ​
Line 81: Line 91:
 **__Important data from the Control Module required by Mervis IDE__** **__Important data from the Control Module required by Mervis IDE__**
 **Control Module mapping:** **Control Module mapping:**
-  * description and position of each peripheral, section, or description of function of the individual PGs+  * description and position of each peripheral, section, or description of the function of the individual PGs
  
 **For writing into the ESS:** **For writing into the ESS:**
   * prefix + user password   * prefix + user password
   * list of sections and PGs the user can control   * list of sections and PGs the user can control
 +
  
 ===== 3 Mervis IDE settings ​ ===== ===== 3 Mervis IDE settings ​ =====
Line 91: Line 102:
  
 Now create a new Mervis IDE project or open an already existing project. Follow the steps listed below: Now create a new Mervis IDE project or open an already existing project. Follow the steps listed below:
- 
  
 <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_05.png)">​ <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_05.png)">​
 <img src="​https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_05.png"​ /> <img src="​https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_05.png"​ />
 </​figure></​html>​ </​figure></​html>​
 +
  
 ==== 3.1 Přidání reference na knihovnu Lib.Jablotron ==== ==== 3.1 Přidání reference na knihovnu Lib.Jablotron ====
Line 111: Line 122:
 <img src="​https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_07.png"​ /> <img src="​https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_07.png"​ />
 </​figure></​html>​ </​figure></​html>​
 +
  
 ==== 3.2 Adding a communication channel in Mervis IDE and attachment of Control Module ==== ==== 3.2 Adding a communication channel in Mervis IDE and attachment of Control Module ====
Line 130: Line 142:
 **Code prefix** – fill in only when writing to the Control Module, represents a user number created in Control Module settings (ie. service technician – 0) \\ **Code prefix** – fill in only when writing to the Control Module, represents a user number created in Control Module settings (ie. service technician – 0) \\
 **Code** – fill in only when writing to the Control Module – access code of the user \\ **Code** – fill in only when writing to the Control Module – access code of the user \\
-**Passive mode*** – as described in [[#​ja-121t_modes_-_active_vs_passive|chapter 2.1.4]] +**Passive mode** – set to TRUE if you want to write into the control ​module, otherwise **FALSE** ​(must correspond with the ESS settings), described in [[#​ja-121t_modes_-_active_vs_passive|chapter 2.1.4]]
- +
-set to TRUE if you want to write into the contol ​module (must correspond with the ESS settings)+
  
 <​html><​span class="​kbBlueText">​Serial Line Parameters</​span></​html>​ \\ <​html><​span class="​kbBlueText">​Serial Line Parameters</​span></​html>​ \\
Line 151: Line 161:
 </​figure></​html>​ </​figure></​html>​
  
-Mervis IDE contains a predefined all available Control Module devices with all of sections, peripherals,​ and PG for each Control Module type, including ​write data points or input-output data point couples. A dialog ​will appear. Select the required type of Control Module. Confirm by clicking on **OK**. ​+Mervis IDE contains a predefined all available Control Module devices with all of the sections, peripherals,​ and PG for each Control Module type, including ​writing ​data points or input-output data point couples. A dialogue ​will appear. Select the required type of Control Module. Confirm by clicking on **OK**. ​
  
 <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_11.png)">​ <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_11.png)">​
Line 164: Line 174:
  
 The newly added device contains all available Control Module configurations. To ensure proper functionality,​ however, you need to optimize the device first, eg. to remove all data points of unused sections, peripherals,​ or PGs.  The newly added device contains all available Control Module configurations. To ensure proper functionality,​ however, you need to optimize the device first, eg. to remove all data points of unused sections, peripherals,​ or PGs. 
 +
  
 ==== 3.3 Optimization of Control Module device in Mervis IDE ==== ==== 3.3 Optimization of Control Module device in Mervis IDE ====
Line 170: Line 181:
 ESS values are read by groups. Each group has its own data read interval – 2 seconds for library devices, 5 seconds for peripherals and 5 milliseconds for PGs. This configuration is designed to ensure communication stability and to decrease data read delays as much as possible. ​ ESS values are read by groups. Each group has its own data read interval – 2 seconds for library devices, 5 seconds for peripherals and 5 milliseconds for PGs. This configuration is designed to ensure communication stability and to decrease data read delays as much as possible. ​
  
-The optimization will be described ​on a practical installation example.+The optimization will be described ​in a practical installation example. 
  
 === 1 Example setup: === === 1 Example setup: ===
 You want the PLC to read from the JA-103 Control Module two sections – Section 1 and Section 2. You also need to monitor 5 sensors mapped to the first five PGs of the Control Module. PG state is read from the Control Modules in 1–1.5 s. The JA-121T module must be set to **passive** mode. Reading from ESS is dependent on traffic on the bus.  You want the PLC to read from the JA-103 Control Module two sections – Section 1 and Section 2. You also need to monitor 5 sensors mapped to the first five PGs of the Control Module. PG state is read from the Control Modules in 1–1.5 s. The JA-121T module must be set to **passive** mode. Reading from ESS is dependent on traffic on the bus. 
 +
  
 === 2 Optimization guide: === === 2 Optimization guide: ===
 Right-click on a device on the **JA-121T** channel and click **Make Custom** to enable device modifications. ​ Right-click on a device on the **JA-121T** channel and click **Make Custom** to enable device modifications. ​
 +
 +<WRAP center round tip 90%>
 +If you have to switch the Mervis IDE project into the **Full mode**, it is necessary to set **Autogen** for the entire **JA-103.generic** device.
 +</​WRAP>​
  
 <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_13.png)">​ <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_13.png)">​
Line 185: Line 202:
  
 <WRAP center round important 60%> <WRAP center round important 60%>
-To ease up orientation,​ Groups and their States have purple and green background while Data points have white background.+To ease up orientation,​ Groups and their States have purple and green background while Data points have white background.
 </​WRAP>​ </​WRAP>​
  
Line 194: Line 211:
 \\ \\
 <WRAP center round important 90%> <WRAP center round important 90%>
-The peripheral reading interval is set to 5 seconds by default which provides fastest possible reading. The reason for this is that the JA121-T module updates peripheral states once every 10seconds. If a faster response is needed, you need to use PGs which represent states of peripherals. PGs can be used to map states of peripherals as well as other parts of the ESS. The Control Module thus must be configured for copying states of the selected peripherals (or sensors) to the Control Module’s PGs. The time to update the state of a PG depends on the total number of PG, sections and other things that are communicated. The communication will be slightly slowed also by peripheral reading – this reading depends only on whether the peripherals are read or not. +The peripheral reading interval is set to 5 seconds by default which provides ​the fastest possible reading. The reason for this is that the JA121-T module updates peripheral states once every 10seconds. If a faster response is needed, you need to use PGs which represent states of peripherals. PGs can be used to map states of peripherals as well as other parts of the ESS. The Control Module thus must be configured for copying states of the selected peripherals (or sensors) to the Control Module’s PGs. The time to update the state of a PG depends on the total number of PG, sections and other things that are communicated. The communication will be slightly slowed also by peripheral reading – this reading depends only on whether the peripherals are read or not. 
 </​WRAP>​ </​WRAP>​
 \\ \\
Line 210: Line 227:
 </​figure></​html>​ </​figure></​html>​
  
-We won’t need any peripherals in this tutorial, as we assume the PGs 1-5 were already mapped by Jablotron service technician. Select all peripherals including their group and press DELETE. If you need to use these peripherals,​ keep only those data points you will use and delete the rest. In particular a group named **peripherals** and data points beginning with **peripheral_**. ​  +We won’t need any peripherals in this tutorial, as we assume the PGs 1-5 were already mapped by Jablotron service technician. Select all peripherals including their group and press DELETE. If you need to use these peripherals,​ keep only those data points you will use and delete the rest. In particulara group named **peripherals** and data points beginning with **peripheral_**. ​  
  
 <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_17.png)">​ <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_17.png)">​
Line 219: Line 236:
  
 <WRAP center round info 60%> <WRAP center round info 60%>
-Removing these data points is not necessary, as they do not affect the speed of communication. Their removal can, however, make the project ​more clean.+Removing these data points is not necessary, as they do not affect the speed of communication. Their removal can, however, make the project ​cleaner.
 </​WRAP>​ </​WRAP>​
  
Line 230: Line 247:
 </​figure></​html>​ </​figure></​html>​
  
-Scroll completely down to a list of so-called Couples (yellow background). Couples are connections between ​ both write and read data points, which allows you to read from and write into the datapoint using only a single variable. Couples used for PGs and section states are named **pg_xzy** and **section_state_xy**. You can remove these couples as well. +Scroll completely down to a list of so-called Couples (yellow background). Couples are connections between both write and read data points, which allows you to read from and write into the datapoint using only a single variable. Couples used for PGs and section states are named **pg_xzy** and **section_state_xy**. You can remove these couples as well. 
  
 <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_20.png)">​ <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_20.png)">​
Line 243: Line 260:
  
 <​html><​span class="​kbBlueText">​Recommended intervals:</​span></​html>​ \\ <​html><​span class="​kbBlueText">​Recommended intervals:</​span></​html>​ \\
-  * Section_flags_and_states_rd ..... 1s to 5s +  * Section_flags_and_states_rd ..... 1 s to 5 s 
-  * pg_rd ................................................... 0 to 500ms +  * pg_rd ................................................... 0 to 500 ms 
-  * peripheral ........................................... ​5s to 30s+  * peripheral ........................................... ​5 s to 30 s
  
 <WRAP center round important 75%> <WRAP center round important 75%>
Line 258: Line 275:
 More info about configuring Jablotron devices in the Mervis IDE and a complete description of all data points and/or groups is available in the Mervis IDE help. To open it, press F1.  More info about configuring Jablotron devices in the Mervis IDE and a complete description of all data points and/or groups is available in the Mervis IDE help. To open it, press F1. 
 </​WRAP>​ </​WRAP>​
 +
  
 ===== 4 Example of using function blocks and enumerated types ===== ===== 4 Example of using function blocks and enumerated types =====
-Below, you can see an example of application of the Jablotron 100 ESS in the Mervis IDE. Using this solution, you can trigger lights, acoustical or optical signalization,​ or send notifications once an intrusion or other alarm is detected. It is also possible to optimize automated tasks (heating, circulation pumps and other comfort systems) when the security system is armed. For emergencies,​ it is possible to disconnect the power supply in selected parts of the building to prevent any property damage. Last, but not least, the house can lock itself once you leave it. When moving through an unsecured object, you can switch heat pumps or adjust heating based on the current situation.+Below, you can see an example of an application of the Jablotron 100 ESS in the Mervis IDE. Using this solution, you can trigger lights, acoustical or optical signalization,​ or send notifications once an intrusion or other alarm is detected. It is also possible to optimize automated tasks (heating, circulation pumps and other comfort systems) when the security system is armed. For emergencies,​ it is possible to disconnect the power supply in selected parts of the building to prevent any property damage. Last, but not least, the house can lock itself once you leave it. When moving through an unsecured object, you can switch heat pumps or adjust heating based on the current situation.
  
 <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_23.png)">​ <​html><​figure ondblclick="​redirectImg(this)"​ class="​zoom"​ onclick="​zoom(event)"​ style="​background-image:​ url(https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_23.png)">​
 <img src="​https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_23.png"​ /> <img src="​https://​kb.unipi.technology/​_media/​en:​sw:​01-mervis:​Jablotron100_en_23.png"​ />
 </​figure></​html>​ </​figure></​html>​
 +
  
 ==== 4.1 Datapoint transformation – SectionTransform ==== ==== 4.1 Datapoint transformation – SectionTransform ====
Line 270: Line 289:
  
 {{:​en:​sw:​01-mervis:​Jablotron100_en_24.png?​nolink |}} {{:​en:​sw:​01-mervis:​Jablotron100_en_24.png?​nolink |}}
 +
  
 ==== 4.2 Function blocks ==== ==== 4.2 Function blocks ====
Line 279: Line 299:
  
 {{ :​en:​sw:​01-mervis:​Jablotron100_en_25.png?​nolink&​170|}} {{ :​en:​sw:​01-mervis:​Jablotron100_en_25.png?​nolink&​170|}}
 +
  
 === 4.2.1 SectionFlags === === 4.2.1 SectionFlags ===
Line 288: Line 309:
  
 {{ :​en:​sw:​01-mervis:​Jablotron100_en_27.png?​nolink&​170|}} {{ :​en:​sw:​01-mervis:​Jablotron100_en_27.png?​nolink&​170|}}
 +
 +
 === 4.2.2 SectionFlagsHolder ===  === 4.2.2 SectionFlagsHolder === 
 A variant of SectionFlags with enhanced functionality. A SabotageAlarm output is added along with an automatic sabotage detection –if sabotage is detected, the output is set to TRUE. The main addition is the hold function designed to hold alarms until a change on the State section is detected. This means the block also requires a state input for the monitored section. The block is also extended by the Clear optional input for the option to manually reset all alarms on hold by setting them to FALSE. This input is hidden, and its use is optional. A variant of SectionFlags with enhanced functionality. A SabotageAlarm output is added along with an automatic sabotage detection –if sabotage is detected, the output is set to TRUE. The main addition is the hold function designed to hold alarms until a change on the State section is detected. This means the block also requires a state input for the monitored section. The block is also extended by the Clear optional input for the option to manually reset all alarms on hold by setting them to FALSE. This input is hidden, and its use is optional.
  
 {{ :​files:​img_breakline.png?​nolink |}} {{ :​files:​img_breakline.png?​nolink |}}
 +
 +
 ==== 4.3 SectionState enumerated type ==== ==== 4.3 SectionState enumerated type ====
  
Line 301: Line 326:
 **Usage:** to write into the variable, you need to use the ''​SectionState#​STATE''​ format. **Usage:** to write into the variable, you need to use the ''​SectionState#​STATE''​ format.
 <​code>​State := SectionState#​STATE;</​code>​ <​code>​State := SectionState#​STATE;</​code>​
 +
  
 === 4.3.2 FUPLA === === 4.3.2 FUPLA ===