Smart green house with Intel Edison and Microsoft Azure

I have attended the Intel IoT Roadshow here in Silicon Valley during last weekend, and made this cool project – Smart Green House. Intel provided a bunch of sensors, and I thought of doing something with green house. We had done similar hack earlier during AT&T Developer summit hackathon at Las Vegas, but that was for industrial farming.

Project description :- I have placed various sensors inside the green house, and the system will monitor current condition (soil Smart Green Housetemperature, moisture, light, ph level, ultra violet, water et ), and report to the back end cloud.  Backend knows the current profile of the green house(I have used radish plant for demo), and if there is anything abnormal, green house system will adjust the settings. For example, if the temperature is high then the system will turn on the fan. If the water level is low, then the system will automatically turn on water pump. I have placed the LCD display unit outside to see the current health level, and if anything unusual with green house then the display will be red, and notification will be send as SMS.  Let us dive into more technical details. Following diagram shows the hardware pieces used in this project.Smart Green House components

Implementation details:- Core of this project is the Intel IoT developer kit which they have provided to the first 150 attendees, and I was lucky enough to get one. In addition to the default kit, I have managed to get the mini water pump, water flow control, fan, light etc.  I have used Intel XDK IoT edition for the development and used the Node.JS / Java script to read/write to hardware/sensors.  Intel SDK team did pretty decent job in documenting everything, and enough sample codes, and I could set up the first sensor up and running in couple of hours including the XDK and drivers installation.  Here comes the code sample to read the temperature value from the sensor connected to the analog pin.

Similarly, I have read values from all the sensors, and sent the same to Azure Event hub. I couldn’t find any AMQP 1.0 node package to connect to the Azure event hub, hence I used the REST api to post the reading in every second.    During the start of the app, green house system will connect the Azure backend to retrieve the profile for the current plant, and in this case it got the profile for radish plant.  Since the green house system already got the plant profile at the start, any reactive action (eg:- turn on water pump, turn on fan etc) don’t require network/backend connectivity. Hence we don’t put the plants on risk incase if there is any network outage.

Once I get the sensor values at Azure event hub, data gets forwarded to Stream Analytics service, and then the output of the stream is directed to the Power BI for dashboard. dashboardHere is a dashboard from my demo.

Even though I am an electronics engineer by degree, I didn’t seriously worked with the electronics components after the course. IoT hackathons are really helping me to do some amazing things, and I am enjoying it. Hope to write some more articles pretty soon on IoT.

 

6 thoughts on “Smart green house with Intel Edison and Microsoft Azure”

  1. WoW!!!! Amazing, im really new to all this things like IoT and Azure, i work with Microsoft as a partner as well and recently i earned one intel edison to create somethings..!!

    I bought some sensors on ebay and I’m waiting for them to arrive, in the meantime I’m studying a lot about node.js in mva and another sources but i`m wondering if you can send me your code?? It is exactly what I intend to do and would be a great point of beginning, besides helping me a lot to clear up some doubts that I still have!

    Please please please please contact me!

    Thanks!

    1. @Vinicius, Sorry about the delay. Hope you already started experimenting with Edison board. I have used the XDK IoT version for developing this prototype. Let me know if you still need support.

  2. Sreejumon thanks for the posts on using Edison & Azure, I have the same kit you have. Do you have some links to the very basics of getting Azure installed on the Edison and would it be possible to share some of your code or create an Edison & Azure collaboration on GitHub.

    1. Hi David, Are you using the Intel XDK for IoT? If so, you could include the Azure node module to interact with Azure. Unfortunately I didn’t get time to polish the app and publish it to GitHub. Let me know if you are looking for anything specific.

Leave a Reply