Skip to content

Plant care and monitoring system implemented on Raspberry Pi Model 3 B+

License

Notifications You must be signed in to change notification settings

atuatohu/Plant-o-Matic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Logo

Plant-o-Matic

Automated plant care and monitoring system using Raspberry Pi Model 3 B+
Explore the docs »

View Demo · Report Bug or Request a Feature

   
Hackaday page

Table of Contents
  1. About
  2. Hardware
  3. How to Start
  4. Usage
  5. Roadmap
  6. Contributing
  7. License
  8. Contact
  9. References

About

Plant-o-Matic is an automated plant care and monitoring system implemented on Raspberry Pi Model 3 B+ with the help of C++, nginx and FastCGI.

For some people plants are parts of their families and taking care of their plant is as crucial as for other people to take care of their pets. For others, they are something they keep forgetting about because of the busy schedule or heaps of thoughts.If you belong to the latter category, this project is for you! With it's help, it is possible not just to grow a plant, but also monitor it's state and other related data.

System senses the soil moisture and the surrounding temperature and humidity. With the help of ultrasonic sensor, it is possible to observe the water level of your home reservoir to see if the water is enough to feed your plant while you are out of home. If the soil is gets dry and there is appropriate water level, water pump will automatically start and irrigate the plant.

Data monitoring is done in a web application, which is hosted on the Raspberry Pi.

Hardware

Before purchasing any device and starting to work with it, it is important to check its datasheet/manual. For this project, we've collected this information for each device. You can check it in the Hardware folder.

   mcp3008    mcp3008    hc-sr04    dht22    water pump    tra 1-0512

The interconnection diagram:

How to Start

Before downloading the project, check if the following prerequisites are present on your Raspberry Pi:

To install:

sudo apt-get install wiringpi

To install:

sudo apt install nginx

Reload the configuration file, if changes were made:

sudo /etc/init.d/nginx reload

If not, please visit our wiki page for detailed instructions.

Usage

Building the project

To built:

cmake . 
make

To run: Run it with the command:

./Plant

To test:

ctest

Starting FastCGI Server

Start Plant in the background with:

nohup ./Plant &

which creates sockets under /tmp/soilsocket, /tmp/tempsocket,/tmp/humsocket, /tmp/ultrasonicto communicate with the fastcgi server.

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Aigerim Abdurakhmanova

Adil Shakeel

Medet Kassymov

Project Link: https://github.com/atuatohu/Plant-o-Matic

References