SmartHome

by WouterL4 in Circuits > Raspberry Pi

5891 Views, 39 Favorites, 0 Comments

SmartHome

IMG_6084.jpg

I am a student at HoWest Kortrijk who studies New Media and Communication Technology(NMCT)

For our module Project we had to make an raspberry or Arduino based prototype who collects data via sensors and stores this in a MySQL database.

In this instructable I will guide you through each step so you can recreate this prototype for yourself.

Materials: What Do You Need

  • HC-SR505 mini PIR Motion sensor
  • MCP 3008
  • 5mm LDR
  • LED's
  • Breadbord
  • Jumper Wires M/M
  • Raspberry Pi 3
  • Transistor
  • Servo Motor
  • Resistors
  • Wood & Tools

All of these items you can buy at your local shop or on Ali express, amazon, kiwi electronics,... .

A detailed list of parts with a link to the shops is given below in the BOM.

Wiring

Screen Shot 2017-06-20 at 07.55.47.png
IMG_6039.JPG
IMG_6051.jpg
IMG_6050.jpg
IMG_6049.jpg

For the wiring i used Fritzing to have a nice overview of how my wiring should be done. You can find the file below.If you need to save GPIO pins You can hook up the 2 PIR sensors to the MCP3008.

I didn't do that because i am not so familiar to the MCP3008 and the PIR Sensor works perfectly fine without the MCP 3008.

As you can see on the second photograph everything fits nicely in the housing.

Database Using MySQL

F5QQNK9J3YQNLFN.MEDIUM.jpg

One of the major task we had to implement in this project is the connection with a MySQL database.

Every time a light goes on or a door is opened via the PIR sensor this is registered and written to the database.

below you can find a .xml file where you have a overview of how the database is setup.

Install MySQL database on the Raspberry Pi

Start with checking if you have the latest software with this command:

sudo apt-get update &&sudo apt-get upgrade

install MySQL server:

sudo apt-get install mysql-server

install the MySQL Client:

sudo apt-get install mysql-client

For the connection you need to create a user. This can be done if you follow the following screenshot:

When you've done this you can use the dump file i included and use the database.You still have to install the connector in your raspberry with the following command.

sudo apt-get install python3-mysql.connector

Coding

Screen Shot 2017-06-20 at 08.24.52.png
Screen Shot 2017-06-20 at 08.25.02.png

you can download the code via Github:

https://github.com/WouterLefebvre/Project1

The code for the sensors is included in this project and can be found with the names

  • MotionGarage(Pir Sensor1 and Servo1)
  • MotionDeur(Pir Sensor2 and Servo2
  • TempLicht(Temperature and light sensor)
  • LED(Led + PushButton)

Don't forget to change the DBClass.py to your settings so it can connect with your created database and user.

Housing

IMG_5844.jpg
IMG_6036.JPG
IMG_5839.jpg
IMG_5847.jpg

For the housing i used a replica of the well known Simpson house. It is realy handy because the door and garage door are hinged so that was a little bit easier to use with my servo's.

I included a ZIP file with the CAD file so you can laser cut your own house.

I used four 3x400x650mm plywood plates, that was the maximum dimension the laser cut machine could handle.

Once this was lasered out is was really easy to put all the pieces together as you have a nice how-to pdf file(also included). I used normal wood glue who doesn't expand during it dries.

when you are finished with puzzling all you have to do is build al your sensors in the house and you are set to go .

I Hope you all enjoy this project as much as i did and wish you al the best with it.