---
title: "UCL - IIot - Smartplant"
url: "https://maker.wiznet.io/WIZnet/projects/ucl-iiot-smartplant/"
markdown_url: "https://maker.wiznet.io/WIZnet/projects/ucl-iiot-smartplant/md"
type: "UCC: User Created Content"
author: "Damholt"
author_url: "https://www.instructables.com/UCL-Smartplant/"
editor: "WIZnet"
editor_url: "https://maker.wiznet.io/"
original_author: "Damholt"
original_url: "https://www.instructables.com/UCL-Smartplant/"
published: "2023-02-15"
language: "en"
hardware: ["Arduino Ethernet Shield"]
likes: 3
views: 225
comments: 0
source: "WIZnet Makers (https://maker.wiznet.io/)"
---

# UCL - IIot - Smartplant

> Our goal with this project is that we want to collect data from our two plants.

Original author: Damholt (source: https://www.instructables.com/UCL-Smartplant/)

## Components

- **Arduino Ethernet Shield** x 1 ([docs](https://docs.arduino.cc/retired/shields/arduino-ethernet-shield-without-poe-module))

## Article

## **Step 1: Overview**

![](https://i.ytimg.com/vi/kdoTfOagyfY/hqdefault.jpg)

![](https://i.ytimg.com/vi/M2AFTRqkFNE/hqdefault.jpg)

Our goal with this project is that we want to collect data from our two plants. The data we collect are moisture in the soil, day light, humidity and temperatur to our database “MySQL”. These data we also want to use on our dashboard.

**First video**

For a quickly overview of our porject result. We have uploaded a video that give you guys at short overview of our project.

**Second video**

Also, we want to be able to water the plants automatically, by setting a limit for the moisture in the soil, or manually water the plant.

## **Step 2: List of Programs and Parts for This ProjectPrograms/Software**

- node-red
  - node-red-dashboard
  - node-red-node-mysql
  - node-red-node-serialport

- Arduino
  - add DHTlib

- Wampserver64

**Parts**

- Arduino mega 2560

- Arduino Ethernet Shield

- 2x Light Sensor

- 6x 220 ohm resistance

- 2x Green LED

- 2x Red LED

- 2x Yellow LED

- Alot of wire

- USB cable

- Lan cable

## **Step 3: Wiring Diagram (Fritzing)**

[![Wiring Diagram (Fritzing)](https://content.instructables.com/ORIG/FIQ/JIS5/JTWRYXCE/FIQJIS5JTWRYXCE.jpg?auto=webp&frame=1&width=461&height=1024&fit=bounds&md=8db1c36dd6de1da6f594a78f17ee2e87)](https://content.instructables.com/ORIG/FIQ/JIS5/JTWRYXCE/FIQJIS5JTWRYXCE.jpg?auto=webp&frame=1&height=1024&fit=bounds&md=8db1c36dd6de1da6f594a78f17ee2e87)

## **Step 4: Arduino Code**

[![Arduino Code](https://content.instructables.com/ORIG/FVB/IEFM/JTWRYV4R/FVBIEFMJTWRYV4R.jpg?auto=webp&frame=1&width=525&height=1024&fit=bounds&md=b8674056ce3ab1715408cc4d11124e57)](https://content.instructables.com/ORIG/FVB/IEFM/JTWRYV4R/FVBIEFMJTWRYV4R.jpg?auto=webp&frame=1&width=1024&height=1024&fit=bounds&md=b8674056ce3ab1715408cc4d11124e57)

We have kept working on the old project program. The reason we keep using arduino is that it gives us good oppunities for data collecting.

From the last project we have modified our program. So it now uploads its data to a html site. Also the arduino will be able to read data recieved from node-red. Remember to add DHTlib. You can find it in step 2.

## **Step 5: Node-red (Retrieving and Storing Data, Controlling “motor”)**

[![Node-red (Retrieving and Storing Data, Controlling](https://content.instructables.com/ORIG/FP8/LX86/JTWSC9M4/FP8LX86JTWSC9M4.png?auto=webp&frame=1&crop=3:2&width=800&fit=bounds&md=433fd5256682e1fd3ba79426c3e5af10)](https://content.instructables.com/ORIG/FP8/LX86/JTWSC9M4/FP8LX86JTWSC9M4.png?auto=webp&frame=1&width=1024&fit=bounds&md=433fd5256682e1fd3ba79426c3e5af10)

[![Node-red (Retrieving and Storing Data, Controlling](https://content.instructables.com/ORIG/F6C/UGFZ/JTWSC9NR/F6CUGFZJTWSC9NR.png?auto=webp&frame=1&crop=3:2&width=400&fit=bounds&md=010742599a97a20160c30a542db83b08)](https://content.instructables.com/ORIG/F6C/UGFZ/JTWSC9NR/F6CUGFZJTWSC9NR.png?auto=webp&frame=1&fit=bounds&md=010742599a97a20160c30a542db83b08)

[![Node-red (Retrieving and Storing Data, Controlling](https://content.instructables.com/ORIG/FIR/K97Y/JTWSC9NS/FIRK97YJTWSC9NS.png?auto=webp&frame=1&crop=3:2&width=400&fit=bounds&md=864f0c7189e5257ccdce2f6f57fba671)](https://content.instructables.com/ORIG/FIR/K97Y/JTWSC9NS/FIRK97YJTWSC9NS.png?auto=webp&frame=1&width=1024&fit=bounds&md=864f0c7189e5257ccdce2f6f57fba671)

We use node-red to log and display our data, which we retrieve from a very simple homepage arduino hosts (picture 3) and updates continuously. We also use node-red to control the “motors” through the dashboard, right now the “motors” are represented by the 2 sets of green, yellow and red lamps.

## **Step 6: Node-red Dashboard**

[![Node-red Dashboard](https://content.instructables.com/ORIG/F7M/VNZN/JTWSC0AN/F7MVNZNJTWSC0AN.png?auto=webp&frame=1&crop=3:2&width=990&fit=bounds&md=ef6dc364c1ce20dc6b30a76ffb881b7f)](https://content.instructables.com/ORIG/F7M/VNZN/JTWSC0AN/F7MVNZNJTWSC0AN.png?auto=webp&frame=1&width=1024&fit=bounds&md=ef6dc364c1ce20dc6b30a76ffb881b7f)

[![Node-red Dashboard](https://content.instructables.com/ORIG/FUR/SIN0/JTWSC1BG/FURSIN0JTWSC1BG.png?auto=webp&frame=1&crop=2:3&width=210&fit=bounds&md=6c4b38abf10d771d798a64f312d94c1b)](https://content.instructables.com/ORIG/FUR/SIN0/JTWSC1BG/FURSIN0JTWSC1BG.png?auto=webp&frame=1&fit=bounds&md=6c4b38abf10d771d798a64f312d94c1b)

[![Node-red Dashboard](https://content.instructables.com/ORIG/FCX/MWMX/JTWSC0B7/FCXMWMXJTWSC0B7.png?auto=webp&frame=1&width=210&fit=bounds&md=e282b0f63ae6dd540357ce070ee860e1)](https://content.instructables.com/ORIG/FCX/MWMX/JTWSC0B7/FCXMWMXJTWSC0B7.png?auto=webp&frame=1&fit=bounds&md=e282b0f63ae6dd540357ce070ee860e1)

[![Node-red Dashboard](https://content.instructables.com/ORIG/F1D/3MUO/JTWSC0CD/F1D3MUOJTWSC0CD.png?auto=webp&frame=1&crop=3:2&width=210&fit=bounds&md=0da6617be6a84130961bd09aaf9c2a5f)](https://content.instructables.com/ORIG/F1D/3MUO/JTWSC0CD/F1D3MUOJTWSC0CD.png?auto=webp&frame=1&width=1024&fit=bounds&md=0da6617be6a84130961bd09aaf9c2a5f)

## **Step 7: MySQL**

[![MySQL](https://content.instructables.com/ORIG/FRQ/E32Q/JTWSCAT9/FRQE32QJTWSCAT9.png?auto=webp&frame=1&crop=3:2&width=609&fit=bounds&md=a27e2563c41b529b052f3981436f7a34)](https://content.instructables.com/ORIG/FRQ/E32Q/JTWSCAT9/FRQE32QJTWSCAT9.png?auto=webp&frame=1&width=1024&fit=bounds&md=a27e2563c41b529b052f3981436f7a34)

[![MySQL](https://content.instructables.com/ORIG/FIW/K4BM/JTWSCATB/FIWK4BMJTWSCATB.png?auto=webp&frame=1&width=591&fit=bounds&md=1210787701f27e26c9834d17b99ba807)](https://content.instructables.com/ORIG/FIW/K4BM/JTWSCATB/FIWK4BMJTWSCATB.png?auto=webp&frame=1&width=1024&fit=bounds&md=1210787701f27e26c9834d17b99ba807)

---

Source: https://maker.wiznet.io/WIZnet/projects/ucl-iiot-smartplant/
