Notifier of Mushroom Cultivation Room using EdSim51 Simulator

This project aims to design a notifier of a cultivation room used to cultivate king oyster mushrooms (P. eryngii spp.) using an SHT75 temperature and humidity sensor. When the temperature or humidity of the cultivation room is beyond the mushrooms’ growing condition, the notifier will notify the cultivator by showing the texts to let the cultivator be conscious of the surrounding temperature and relative humidity. In this project, 8051 microcontrollers simulator (EdSim51) used to design the notifier. The component used to imitate the function is the SHT75 sensor, Liquid Crystal Display (LCD) module, Light Emitting Diode (LED) bank and Universal Asynchronous Transmitter (UART-Tx). Temperature and humidity parameter classed into low, normal, fruiting, high and over-limit condition. The system developed was successfully detected all the parameter. The notifier designed can solve the problems faced by most cultivators in cultivating mushrooms and helps to grow other plants in the future.


Introduction
Over 200 mushrooms have long been used as functional foods worldwide, but only about 35 species have been commercially cultivated [1]. Mushrooms are a rich source of nutrients, particularly proteins, minerals, vitamins B, C and D. Compared to other mushrooms species, mushrooms of the genus Pleurotus (also known as white-rot fungi) require a short growth time. Diseases and pests do not often attack its fruiting body, and it can be grown cheaply and straightforwardly with high yield. Among all the Pleurotus spp., P. eryngii (king oyster mushroom) is chosen in this research to cultivate in a cultivation room. Several factors will affect the mushrooms' growth that needs to be apprehensive: temperature and the room area's humidity [2].
The latest technological advances have led many researchers to develop products that are smarter and more automated. In general, automation has become a new trend in designing an embedded system [3]. Automation has become a new trend in designing an embedded system in various areas such as monitoring systems [4], medical applications [5,6], optimisation [7,8,9] and decision making [10,11] As the temperature and humidity of a cultivation room will keep altering by the effects of the unknown external factors, such as malfunction of the air condition, malfunction of the water sprinklers, or the sunlight's emission, the designation of this notifier solves the problem stated above. The project's main objective is to give early warning failure related to changes in temperature or humidity. This design alert the cultivator as it can make sure the mushrooms are correctly growing.

Methodology
In this project, a notifier designed to alert the cultivator whether the temperature and humidity of the cultivation room are in average condition or not. When the temperature or humidity of the cultivation room is lower or higher than mushrooms' growing state, the notifier will notify the cultivator that 2 mushrooms are in danger. Thus the cultivator can prevent mushrooms from deteriorating. The notifier will keep sensing the surrounding temperature and humidity until the cultivator switched off the notifier. Figure 1 shows the logic diagram of the system. The system contains microcontroller 8051 in the centre and other peripheral connected to the microcontroller. In this project, the notifier designed with a temperature and humidity sensor (SHT75). Edsim51 simulation tool used to write the assembly code. 8-bit Universal Asynchronous Transmitter (UART-Tx) used as the input of SHT75 [12]. LCD module and LED bank (HD44780) perform as the output. The user will key in the value(s) of temperature or humidity, which imitates the function of SHT75 in sensing the surrounding temperature or humidity. After that, the LCD module will show the data given by showing the texts coded in the assembly language.
There are 2 phases when building software for this system. Figure 2 shows the first phase of development. In the first phase, enter is the simulated temperature to be tested and analysed. The results of this phase will classify mushrooms under normal conditions, can be harvested or damaged.  Once the first phase completed, the system will go to the second phase. Fig. 3 shows the flowchart for the second phase. The input in the second phase is humidity. As a result of this phase, the system will classify conditions such as high humidity, saturated humidity, average humidity and dehydrated humidity. After the second phase, the system will repeat this process. If there is no damage to the hardware, the system will be in the infinite loop

Result and Discussion
The program started to run; it will wait for 11ms to reach its "sleep" state. No commands sent before this time.

Temperature Displays
The LCD module showed the word 'TEMPERATURE=?' to let the user key in the temperature value through UART-Tx. Notice that the number key should have three digits and one decimal place. According to the temperature value, there are five outputs that the user key in low temperature, average temperature, fruiting temperature, high temperature, and over-limit. Figure 4 shows the result of the temperature analysis. The low temperature is between 0 -9.9ºC. The LCD module will show the temperature value that the user key in at the first row, and a second row will show the word 'LOW TEMP', which indicates that the surrounding temperature was low. A few milliseconds will clear the display and show the name 'MUSHROOM IN DANGER' to notify the cultivator to increase the surrounding temperature.
The average temperature is between 10 -35.0ºC. The LCD module will show the temperature value that the user key in at the first row, and a second row will show the word 'NORMAL TEMP', which indicates that the surrounding temperature was average.
The fruiting temperature is between 20 -24.9ºC. The LCD module will show the temperature value that the user key in at the first row, and a second row will show the word 'NORMAL TEMP', which indicates that the surrounding temperature was average. After a few milliseconds, it will clear the display and show the name 'MUSHROOM FRUITING' to show that the surrounding temperature was suitable for the mushroom to reproduce.
High temperature is between 35.1 -123.8ºC, and the LCD module will show the temperature value that the user key in at the first row, and a second row will show the word 'HIGH TEMP', which indicates that the surrounding temperature was high. A few milliseconds will clear the display and show the name 'MUSHROOM IN DANGER' to notify the cultivator to decrease the surrounding temperature.
When the user key in the temperature value beyond the upper limit of SHT75 (greater than 123.8ºC), The LCD module will show the word 'SYSTEM BROKE' at the first row the surrounding temperature was too high, and the temperature sensor was malfunction. The system was then stopped and cannot proceed anymore. The user must reset the program and restart it.

Humidity Displays
After one of the outputs shown in the LCD module (except the over-limit subsection), the LED again started to blink and stopped at 00000011B, and the LCD module offered the word 'HUMIDITY=?' to let the user key in the humidity value through UART-Tx. According to the humidity value, there are four outputs in this program: the user key in low humidity, average humidity, high humidity, and overlimit. Figure 5 shows the humidity display of the LCD module Low humidity is between 0 -84.9%RH; the LCD module will show the humidity value that the user key in at the first row, and a second row will show the word 'LOW HUMID', indicates that the surrounding humidity was low. A few milliseconds will clear the display and show the name 'MUSHROOM IS DEHYDRATING' to notify the cultivator to increase the surrounding humidity.
SHT75 average humidity is between 85 -95%RH. The LCD module will show the humidity value that the user key in at the first row, and a second row will show the word 'NORMAL HUMID', which indicates that the surrounding humidity was average.
High humidity is between 95 -99.9%RH, the LCD module will show the humidity value that the user key in at the first row, and a second row will show the word 'HIGH HUMID', which indicates that the surrounding humidity was high.
The upper limit of SHT75 (greater or equals to 100%RH). The LCD module will show the word 'HUMIDITY IS SATURATED'. The upper limit of SHT75 indicates that the surrounding humidity was too high, and the sensor will activate the heater in the sensor to drop its surrounding moisture. The system was then stopped and cannot proceed anymore. The user must reset the program and restart it.
After one of the outputs shown in the LCD module (except the over-limit subsection), the LED again started to blink and stopped at 00000101B, and the LCD module offered the word 'TEMPERATURE=?' to let the user key in the temperature value through UART-Tx again. The user must press 'Tx Reset' to change the transmission area from grey to white to pass the temperature value. In this program, the system will change alternatively to let the user key in temperature and humidity.

Conclusion
The designation of this notifier was a significant improvement in the cultivation of mushrooms. This project will help a lot in this path of cultivating mushrooms. It will reduce the number of mushrooms dying due to the unexpected external factors that will cause the cultivating room's temperature or humidity beyond the mushrooms' cultivation range. The assembly code is written in the Edsim51 simulation tool. 8-bit Universal Asynchronous Transmitter (UART-Tx) used as the input of SHT75. HD44780 LCD module and LED bank, which operated as the outputs of SHT75. A user key in the value(s) of temperature or humidity imitated the function of SHT75 in sensing the surrounding temperature or humidity. The LCD module showed the results of the data given, which replicated the role of SHT75 in analysing the data provided and delivered the results to the user.