Proposed Fuzzy-NN Algorithm with LoRaCommunication Protocol for Clustered Irrigation Systems
Abstract
:1. Introduction
2. Proposed Irrigation System Architecture
3. Irrigation Systems Algorithms
- Precise Time Controlled algorithm (PTC): This algorithm is an assisted algorithm either by the farmer or an external mechanism such as meteorological predictions. The farmer/external mechanism sets at the Application Service (AS) the precise time per month that the actuator will be set to the “on” state as well as the time duration that it will remain at this state. This algorithm may also use sensor measurements as feedback in order to perform adaptively, reducing daily watering time. It is the case that the sensors indicate an excitation value above statically set sensory thresholds PTCthres [3,10,13].
- Majority Vote Algorithm (MVA): MVA algorithm is similar to the LWA algorithm and requires more than two sensors (a majority of sensors to approve irrigation). MVA algorithm sets the actuator to the “on” position when the average value of the soil moisture sensors is above an Athres threshold value. MVA Athres and lower-upper bound sensor values are set by the farmer using the AS web interface [2,6]. For error detection, the MVA algorithm uses two boundary values, the Upper and Lower sensor value bounds. If the sensor’s value is above or below of the Upper and Lower values accordingly then this sensor is not taken into account by the MVA for the actuator “on”/“off” selection process.
- Exponential Weight Moving Watering Algorithm (EWMWA):This algorithm requires at least one soil moisture sensor and averages its sensor values based on the following equation: Sv = a·Svc + b·Svavg, where coefficient b = 1 − a. Coefficient a is a parameter that adjusts the current soil moisture sensor value influence on the final sensor value assessment, over the average sensor value. Coefficient parameter a value is between 0.1 < a < 0.9 and it is set by the farmer at the AS web interface. In case of multi-sensors, EWMWA algorithm follows the LWA algorithm approach and sets the actuator to the “on” position when the majority of sensor values ceil (N/2) + 1 is above Athres threshold value set by the farmer. Average sensor values are reset daily and re-calculated at the AS, based on the previous day measurements [6,14].
- Proportional Integral Control algorithm (PIC): This is a control loop feedback process based on an average daily water consumption metric value measured in lt or m3. The PIC algorithm does not use feedback information from soil moisture sensors but from a flow meter sensor placed before the actuator. In OWS architecture the PIC algorithm can be used at the flow meter placed before the actuator for the purpose of identification and reporting of erroneous states. The PIC algorithm uses a maximum water consumption metric Wm, set by the farmer at the AS. The PIC algorithm will reach up to that daily water consumption. In existing implementation of the PIC algorithm the watering time is also statically set by the farmer at the AS. When the PIC algorithm sets the actuator to the “on” state it starts to measure water consumption using the flow meter value Fv. When the daily Fv value is close to the Wm value or exceeds this value, then an error metric is measured as Errori = Wv − Fv/i per daily basis. All daily Errors are added to a total Error value: Errortotal = Σi=1nErrori. The n + 1 day on watering flow meter value Fvn+1 shall be set automatically as follows: Fvn+1 = K·Errorn + (K/n) Errortotal + (Errorn − Errorn−1), where K is a statically assigned gain coefficient and n are the n days of Fv flow meter measurements [7,8,16].
- Fuzzy algorithms: This category includes algorithms of fuzzy decisions based on a pre-defined set of rules and Degree of Membership calculations upon sensor values (metrics) [7,8]. Fuzzy algorithms are fast and smart adaptive algorithms and may also include error control capabilities similar to the PIC algorithm. Proposed by the authors, the FITRA algorithm is partly a fuzzy algorithm and when the irrigation system is in a stable state it is transformed to a neural network algorithm (NN) [32].
- FITRA algorithm: the FITRA algorithm is a neuro-fuzzy algorithm proposed by the authors and presented in a following section. FITRA at first instantiates as a fuzzy algorithm. Analytical description of the algorithm follows.
3.1. Proposed FITRA Algorithm Supporting the OWS Architecture
- Identification and reporting of erroneous “on” states due to actuator misuse or malfunction.
- Identification and reporting of excess daily water consumption, when water consumed exceeds a certain high water consumption threshold Wthres.
- Identification and reporting of leaks when there is water flowing and the valve is in the “off” state.
3.2. FITRA Communication Protocol
- Preamble consisted of 1 octet for synchronization purposes.
- LoRa concentrator destination address (1 octet), which is the address of the LoRa gateway device. The number of 0xFF, while 0x00 is the network broadcast address. Since the address fields are 1 octet long there is a limitation of 253 devices under single LoRa radio channel concentrator control. For the three default channels of the 433 MHz band there can be used up to three gateways and a total of 759 devices.
- Source address (1 octet).
- Message ID (1 octet), used in order to differentiate different messages derived from LoRa devices. The Message ID field is set to 0x00 for the FITRA protocol implementation and the message differentiation was moved to the application layer FITRA protocol.
- Flags (1 octet). Flags include one ACK bit, which indicates whether it is a normal or an acknowledgment frame, then there are 3 reserved bits for future use and the last 4 bits have the value of 0x08 that indicate that the payload that follows is part of the FITRA application protocol.
- Frame CRC field (2 octet).
- (1)
- Application ID field uniquely identifies all FITRA actuator controllers, controlled by a single-channel gateway. The purpose of the Application ID is to differentiate among controllers that are controlled by different gateways placed on the same agricultural area of interest. Gateways only respond to messages received from actuators with the same application ID. Application ID can also be characterized as network ID, giving the system the capability of maintaining up to 256 gateways on the same channel.
- (2)
- Valve ID is a 1 octet field that uniquely identifies each actuator controller, controlled by a gateway. With reserved values of 0x00 and 0xFF this identifier limits that number of actuators per gateway to 253 (a limit set by the physical layer RadioHead library. See source and destination address Figure 6a).
- (3)
- Sequence number is a 16-bit value, incremented by the actuator controller upon successful reception of an ACK FITRA frame. The initial sequence number is randomly generated.
- (4)
- Valve status field indicates the current valve status. A status value of 0x00 means that the actuator is at the “off” position and a value of 0x01 that the actuator is at the “on” position. A value above 0x01 indicates a partly open valve. Then the value corresponds to the rotation degrees that the valve is open (if the actuator is a servo actuator value then the rotation degree angle increases 0.7°/value) or the steps that the valve is open (if the actuator is a stepper one—up to 253 steps/180° rotation angles). 0xFF value indicates an erroneous valve status.
- (5)
- Sensors LEN field indicates the number of sensor values included in the frame payload. It also indicates weather the sensor is in a disabled state. For example, a value of b00110101 indicates that the payload shall include 4 sensor values for sensors 1, 3, 5 and 6. The other sensors are in a disabled state either due to erroneous readings or non-existent ones.
- (6)
- Sensor value vector field is a variable-length field, whose length is determined by Sensors LEN field. In this vector the sensor values are placed and for each 10-bit sensor value a 2 octet value field is used.
- (7)
- Monitor day field is used to indicate the actuator’s monitoring day. Each system actuator is capable of storing to its EEPROM up to 256 days of “on” valve time statistical data (1 byte long), starting from day 0 (actuator startup day) up to day 0xFF and start over again from day 0. If signaled by a gateway ACK frame the actuator can send the daily on valve value in minutes for a specific day. By default, the actuator transmits only the “on” valve time value of its current counted day. Since these values are stored to the EEPROM, in case of power outage, the actuator controller can identify from its EEPROM the last EEPROM address that has a value different than zero as the current count day. If all EEPROM addresses have values different than zero then the controller zeros all EEPROM values and starts from day 0.
- (8)
- Valve on Time field is a statistical field that indicates the minutes that the actuator was in a position other than “off”. It is a 1 octet value meaning that the maximum daily “on” actuator time cannot exceed 255 irrigation minutes per day (4.25 h/day). If this happens then the valve on time field does not overflow to zero but it remains at the value of 0xFF.
- (1)
- Valve next status field: This value corresponds to the actuator’s valve status. If the value is 0x00 then the actuator has to be set to “off” state immediately. If the value is 0x01 then the actuator must move to the “on” state. Any other value between 0x02 and 0xFD indicates either the degrees or steps that the actuator must set the servo or stepper valve state.
- (2)
- Valve next transmission interval value: This value increases or decreases the actuator’s periodic data transmission interval. In case of nodes frame collision or node frame loss, the gateway is responsible for modifying microcontroller nodes processing module transmission periods in order to enforce an adequate data transmission gap upon devices registered in the network. The microcontroller node next transmission interval value is a 2 octet value and is measured in seconds. This gives as an approximate maximum increase or decrease (Δtx) of periodic transmission interval up to 18.2 h: Tperiod = (Tp + Δtx) + Tk + Toff, where Tp is the statically assigned microcontroller processing module period, Tk is the receive device time usually set to 1–2 s and Toff is the channel idle time restriction set by the ITU for the 433 MHz band. The ITU restriction for LoRa transmissions on the 433 MHz band is of 1% duty cycle channel utilization. This means that the same 43 3 MHz sub-band cannot be used by the same transponder again for duration of Toff seconds: Toff = (Ttime_on_air/0.01) − Ttime_on_air. For FITRA communication protocol the Ttime_on_air ≤ 128 ms, thus giving a maximum Toff value of: Toff = 12.672 s. A value of 0xFFFF indicates no transmission interval variations (Δtx) for the device.
3.3. FITRA Protocol Logic
4. Experimentation and Evaluation Results
4.1. Water Consumption Results
4.2. Ground Humidity Results
4.3. Comparison Results of the Two Algorithms Set on Close-By Tomato Fields
- It can save water up to 7%. Comparing the results with the majority algorithm, the FITRA irrigation algorithm manages to keep ground moisture 12.5% wetter with 7% less water consumption.
- The FITRA algorithm can achieve higher crop yield that existing algorithms by up to 14%.
- The FITRA algorithm pours water smoother than the majority algorithm, assisted by adaptive fuzzy or NN process and achieving more targeted watering cycles according to the plant’s needs. The result of such adaptation is that with the central valve changes it takes fewer times for smaller time intervals and when needed. Moreover, the FITRA watering temp control process prevents the algorithm from extreme temperature condition irrigation.
- The farmer can weigh the sensors value based on the sensor’s distance from the actuator, while in the majority algorithm all sensor measurements have the same weight.
- As well as ground moisture, the FITRA algorithm monitors the air temperature. It capable of interrupting (WTC process) the irrigation in extreme temperatures, so as to avoid the freezing or the burning of the plants.
- The FITRA algorithm monitors the sensor values for errors or transition to erroneous states. If a value is out of logical range it is skipped and is not taken into consideration for the next calculation interval.
5. Conclusions
Author Contributions
Conflicts of Interest
References
- FAO Corporate Document Repository. Irrigation Water Management: Training Manual No. 1—Introduction to Irrigation. Available online: ftp://193.43.36.92/agl/AGLW/fwm/Manual1.pdf (accessed on 15 October 2017).
- Koubachi Company. The Plant Sensor for your Home and Garden. Available online: http://www.koubachi.com (accessed on 15 October 2017).
- Parameswaran, G.; Sivaprasath, K. Arduino Based Smart Drip Irrigation System Using Internet of Things. Int. J. Eng. Sci. 2016, 5518. [Google Scholar] [CrossRef]
- Kumar, M.K.; Srenivasa, R.K. Automation of Irrigation System based on Wi-Fi Technology and IOT. Indian J. Sci. Technol. 2016, 9. [Google Scholar] [CrossRef]
- Harun, A.N.; Kassim, M.R.M.; Mat, I.; Ramli, S.S. Precision irrigation using Wireless Sensor Network. In Proceedings of the IEEE International Conference on Smart Sensors and Application (ICSSA 2015), Kuala Lumpur, Malaysia, 26–28 May 2015; pp. 71–75. [Google Scholar]
- Kumbhar, R.S.; Ghatule, A.P. Microcontroller based Controlled Irrigation System for Plantation. In Proceedings of the International Multi Conference of Engineers and Computer Scientists, Hong Kong, China, 13–15 March 2013; Volume 2, pp. 662–665. [Google Scholar]
- Touati, F.; Al-Hinti, M.; Benhmed, K.; Tarish, R. A fuzzy logic irrigation system enhanced with wireless logging applied to the state of Qatar. Comput. Electron. Agric. 2013, 98, 233–241. [Google Scholar] [CrossRef]
- Bahat, M.; Inbar, G.; Yaniv, O.; Schneider, M. A fuzzy irrigation controller system. Eng. Appl. Artif. Intell. 2000, 13, 137–145. [Google Scholar] [CrossRef]
- Rajalakshmi, P.; Mahalakshmi, S.D. IOT Based Crop-Field Monitoring and Irrigation Automation. In Proceedings of the IEEE 10th International Conference on Intelligent Systems and Control, Coimbatore, India, 7–8 January 2016; Volume 1, pp. 24–32. [Google Scholar] [CrossRef]
- Halahan, P.B.; McIntyre, J.P.; Coopersmith, M.; Puckett, M. System and Method for Smart Irrigation. U.S. Patent US20120303168 A1, 2 February 2015. [Google Scholar]
- Ko, J.; Piccinni, G. Corn yield responses under crop evapotranspiration-based irrigation management. Agric. Water Manag. 2009, 96, 799–808. [Google Scholar] [CrossRef]
- Allen, R.G.; Pereira, L.S.; Raes, D.; Smith, M. Crop Evapotranspiration-Guidelines for Computing Crop Water Requirements FAO Irrigation and Drainage; FAO: Rome, Italy, 1998; Volume 300, p. D05109. [Google Scholar]
- Migliaccio, K.W.; Morgan, K.T.; Fraisse, C.; Vellidis, G.; Andreis, J.H. Performance evaluation of urban turf irrigation smartphone app. Comput. Electron. Agric. 2015, 118, 136–142. [Google Scholar] [CrossRef]
- Majone, B.; Viani, F.; Filippi, E.; Bellin, A.; Massa, A.; Toller, G.; Salucci, M. Wireless sensor network deployment for monitoring soil moisture dynamics at the field scale. Elsevier Procedia Environ. Sci. 2013, 19, 426–435. [Google Scholar] [CrossRef]
- Gardena Soil Moisture Sensor. An Automatic Water Saving Irrigation Component for Small Field Irrigation. 2015. Available online: http://www.gardena.com/int/water-management/water-controls/soil-moisture-sensor (accessed on 15 October 2017).
- Hunter Industries. Soil Clik Moisture Sensor Irrigation System. 2014. Available online: http://www.hunterindustries.com/irrigation-product/sensors/soil-cliktm (accessed on 15 October 2017).
- Pratim, R.P. Internet of things for smart agriculture: Technologies, practices and future direction. J. Ambient Intell. Smart Environ. 2017, 9, 395–420. [Google Scholar] [CrossRef]
- Navarro-Hellín, H.; Martínez-del-Rincon, J.; Domingo-Miguel, R.; Soto-Valles, F.; Torres-Sánchez, R. A decision support system for managing irrigation in agriculture. Elsevier Comput. Electron. Agric. 2016, 124, 121–131. [Google Scholar] [CrossRef] [Green Version]
- Mihajlov, B.; Bogdanoski, M. Overview and Analysis of the Performances of ZigBee based Wireless Sensor Networks. Int. J. Comput. Appl. 2011, 29, 28–35. [Google Scholar]
- ALLIANCE, ZigBee. ZigBee 2007 Specification. Available online: http://www.zigbee.org/Specifications/ZigBee/Overview.aspx (accessed on 15 October 2017).
- Augustin, A.; Yi, J.; Clausen, T.; Townsley, W.M. A Study of LoRa: Long Range & Low Power Networks for the Internet of Things. Sensors 2016, 16, 1466. [Google Scholar]
- RadioHead Packet Radio Library for Embedded Microprocessors. 2015. Available online: http://www.airspayce.com/mikem/arduino/RadioHead/ (accessed on 15 October 2017).
- Alam, M.M.; Hamida, E.B. Surveying Wearable Human Assistive Technology for Life and Safety Critical Applications: Standards, Challenges and Opportunities. Sensors 2014, 14, 9153–9209. [Google Scholar] [CrossRef] [PubMed]
- LoRa Alliance. LoRaWAN A Technical Overview of LoRa and LoRaWAN; Tech Report; The LoRa Alliance: San Ramon, CA, USA, 2015. [Google Scholar]
- Tomtsis, D.; Kokkonis, G.; Kontogiannis, S. IoT Evolution Dissemination through Existing Wireless Technologies. In Proceedings of the IEEE 8th South-East Europe Design Automation, Computer Engineering, Computer Networks and Social Media Conference, Kastoria, Greece, 23–25 September 2017. [Google Scholar]
- Baronti, P.; Pillai, P.; Chook, V.W.C.; Chessa, S.; Gotta, A.; Hu, F.Y. Wireless sensor networks: A survey on the state of the at and the 802.15.4 and ZigBee standards. Comput. Commun. 2007, 30, 1655–1695. [Google Scholar] [CrossRef]
- Orange Connected Objects & Partnerships. LoRa Device Developer Guide. 2016. Available online: https://partner.orange.com/wp-content/uploads/2016/04/LoRa-Device-Developer-Guide-Orange.pdf (accessed on 15 October 2017).
- Sinha, R.S.; Wei, Y.; Hwang, S.H. A survey on LPWA technology: LoRa and NB-IoT. Elsevier ICT Express 2017, 3, 14–21. [Google Scholar] [CrossRef]
- LU, R.-J.; Li, P.; Zhou, S. Application of SHT10 sensor in humidity-and-temperature monitoring system. Transducer Micro Syst. Technol. 2012, 9, 40. [Google Scholar]
- Raspberry Pi Foundation. Raspberry Pi, the Low Cost Embedded Hardware Computer System. 2011. Available online: https://www.raspberrypi.org (accessed on 15 October 2017).
- Adafruit Inc. Adafruit Feather 32u4 with HopeRF RFM95/96 LoRa Radio Module. 2016. Available online: https://learn.adafruit.com/adafruit-feather-32u4-radio-with-lora-radio-module (accessed on 15 October 2017).
- Umair, S.M.; Usman, R. Automation of Irrigation System Using ANN based Controller. Int. J. Electr. Comput. Sci. 2010, 10, 41–47. [Google Scholar]
- Kokkonis, G.; Kontogiannis, S.; Tomtsis, D. A Smart IoT Fuzzy Irrigation System. IOSR J. Eng. 2017, 7, 15–21. [Google Scholar] [CrossRef]
- SemTech.SX1272/3/6/7/8 LoRa Modem Design Guide. 2015. Available online: https://www.loriot.io/lorawan.html (accessed on 15 October 2017).
- Prajzler, V. LoRa, LoRaWAN and LORIOT.io. 2016. Available online: https://www.loriot.io/lorawan.html (accessed on 15 October 2017).
- Knight, M. Reversing Lora. 2016. Available online: https://github.com/matt-knight/research (accessed on 15 October 2017).
- Sornin, N.; Luis, M.; Eirich, T.; Kramp, T.; Hersent, O. LoRaWAN Specification V1.0. 2015. Available online: https://enablingsupport.zendesk.com/hc/en-us/article_attachments/202357691/LoRaWAN1.0.1_d3.pdf (accessed on 15 October 2017).
Wireless Communication Technology | Maximum Coverage Range (m) | TX Current Consumption (mA) | Throughput | Scalability/Max Nodes |
---|---|---|---|---|
3G/4G LTE | Cellular Network | 260–370 | 1–50 Mbit/s | 1155 active transmissions/site |
LoRa/LoRaWaN | 12,000 | 40 | 5 Kbit/s | 5000–20,000 nodes (LoRaWAN) (50 Bytes payload, 7.3 packet/hour) |
RFM69 | 500 | 80 | 100 Kbit/s | 65,536 |
ZigBee | 100–1000 | 35–65 | 1 Mbit/s–250 Kbit/s | 65,536 |
Bluetooth LE | 50 | <25 | 1 Mbps | 7 |
Input DOM Value | Valve Status | |
---|---|---|
Very Low Temp (VLT) | Any | Off |
Low Temp (LT) | >0.7 | Off |
Low Temp (LT) | ≤0.7 | Little On/Off |
Medium Temp (MT) | Any | Middle On/Off |
Normal Temp (NT) | Any | On/Off |
High Temp (HT) | ≤0.7 | Little On/Off |
High Temp (HT) | >0.7 | Off |
Frame Count | Av. RTT | |
---|---|---|
GPRS | 4850 | 420 ms |
LoRa | 26,580 | 580 ms |
© 2017 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Kontogiannis, S.; Kokkonis, G.; Ellinidou, S.; Valsamidis, S. Proposed Fuzzy-NN Algorithm with LoRaCommunication Protocol for Clustered Irrigation Systems. Future Internet 2017, 9, 78. https://doi.org/10.3390/fi9040078
Kontogiannis S, Kokkonis G, Ellinidou S, Valsamidis S. Proposed Fuzzy-NN Algorithm with LoRaCommunication Protocol for Clustered Irrigation Systems. Future Internet. 2017; 9(4):78. https://doi.org/10.3390/fi9040078
Chicago/Turabian StyleKontogiannis, Sotirios, George Kokkonis, Soultana Ellinidou, and Stavros Valsamidis. 2017. "Proposed Fuzzy-NN Algorithm with LoRaCommunication Protocol for Clustered Irrigation Systems" Future Internet 9, no. 4: 78. https://doi.org/10.3390/fi9040078
APA StyleKontogiannis, S., Kokkonis, G., Ellinidou, S., & Valsamidis, S. (2017). Proposed Fuzzy-NN Algorithm with LoRaCommunication Protocol for Clustered Irrigation Systems. Future Internet, 9(4), 78. https://doi.org/10.3390/fi9040078