Smart Agriculture System Project on IBM IOT platform using NodeRed framework

Project Scope

We need to follow these steps to complete our Smart Agriculture System Project:

  • Project Planning and Kickoff
  • Explore the IBM Cloud Platform
  • Connect the IoT Simulator To the Watson IOT Platform
  • Configure the Node-red to Get the Data From the IBM IoT Platform And Open Weather API
  • Building A Web App
  • Configure Your Device to Receive The Data From The Web Application And Control Your Motors

Our Project’s main aim is to help farmers to control their motors from home. He/ She can On and Off his motor by using his mobile phone.
By using Weather API he can know the weather conditions like temperature, humidity, and soil moisture.

Project Background:

  • This Smart Agriculture System Project mainly aims to help the farmers to ease their work.
  • Farmers can get real-time weather conditions by using smart agriculture.
  • Instead of physical devices we create devices in the IBM IoT platform and use them in our project.
  • We connect our device to the IBM node in the NodeRed framework.
  • We need to create a Weather API account to configure the weather API Platform.
  • We then Configure our Node-red to get the weather forecasting data using HTTP requests.

Project Schedule:

  • Project Planning and Kickoff
  • Explore IBM Cloud Platform
  • Connect The IoT Simulator To the Watson IOT Platform
  • Configure The Node-red To Get The Data From IBM IOT Platform And Open Weather API
  • Building A Web App
  • Configure Your Device To Receive The Data From The Web Application And Control Your Motors

Project Requirements:

  • IBM Cloud Account and IBM Watson IOT Platform to create device and sensor
  • Python IDE
  • Node-Red
  • Open weather API Platform

Functional Requirements:

  • Measure Temperature.
  • Gauge Temperature.
  • Gauge Humidity.
  • Gauge Pressure.
  • Weather API.
  • Display the sensor readings using the Watson IOT sensor.
  • Respond to sensor readings and send alerts to the user.

Technical Requirements:

IoT Simulator

Software Requirements:

  • Python
  • Node-Red
  • IBM Watson IOT Platform
  • Open Weather API

Project Deliverables:

A Smart Agriculture System web App for farmers where he can:

• Monitor temperature, humidity, and Soil moisture along with weather forecasting details.
• Control motor for watering the crop through the web app from where he was.

THEORETICAL ANALYSIS

  • Required Software Installation
  • Node-Red

Installation:

  • First, install the Node
  • open command prompt
  • Type ->npm install node-red

To Run the application:

  • open command prompt
  • And then type “node-red”
  • Now open http://localhost:1880/ in the browser

Installation of IBM IOT nodes and Dashboard nodes for Node-Red

  • In order to connect to the IBM Watson IOT platform and create the web UI, these nodes are required
  1. IBM IoT Node
  2. Dash Board Node

IBM Watson IOT Platform

  • Steps To Configure:
  • Create an account in the IBM cloud using your email ID
  • Create IBM Watson Platform in services in your IBM cloud account
  • Launch the IBM Watson lot Platform
  • Create a new device
  • Give credentials like device type, device ID, Token
  • Create API key and store API key and token elsewhere

Python IDE

  • Install python 3 Compiler
  • I Installed PyCharm Community Edition 2020

IoT Simulator

 In our project in the place of sensors, we are going to use a lot sensor simulator which gives random readings to the connected

OpenWeather API

Building Project

Connecting IoT Simulator to IBM Watson IOT Platform

  • Open link Provided in section 4
  • Give the credentials of your device in IBM Watson IoT
  • Click on Connect
  • My credentials given to the simulator are:
  • Organization ID:ka1gns
  • Device Type:nodemcu
  • Device ID:1234five6789
  • Authentication Method:use-token-auth
  • Authentication Token:*********
  • You, Will, receive the simulator data in the cloud
  • You can see the received data in Recent events
  • Data is received in this format (JSON)
  • You can see the received data in cards by creating cards on Boards Tab

4.2    Configuration of Node-Red to collect IBM Cloud Data

  • The Node-Red IBM IoT App is added in Node-Red Work The appropriate device credentials obtained earlier are entered into the node to connect and fetch the device to Node-Red
  • Once it is connected Node-Red receives data from the device
  • Display the data using debug node for

Configuration of Node-Red to collect data from Open weather API

  • The Node-Red also receives data from the OpenWeather API by HTTP GET request. An inject trigger is added to perform HTTP requests for every certain
  • The data we receive from OpenWeather after the request is in JSON format

Configuration of Node-Red to send commands to IBM Cloud

  • By using IBM IoT out Node I used to send data from Node-Red to IBM Watson So, after adding it to flow we need to configure it with the credentials of our Watson device.

Adjusting UserInterface

  • By connecting all the flows shown above
  • We can display our UI by clicking on the dashboard tab in Node-red
  • On the above page, we can display the sensor data and motor
  • On this page, we open weather API data is displayed