Who hasn't forgotten the garage door open at some point... No... Must be just me getting old. :-)
Anyway I thought this would be a cool project and could give some additional feedback when door(s) are opened, closed and possibly remotely control the door.
So the basic idea to use an Arduino to monitor some sensors to see if the doors are closed and generate a message or alarm to let you know you forgotten the doors open. This alert can be after x minutes of the doors being open and potentially after even more time generate more alarts as a reminder.
Since we now have an Arduino near the garage doors we can add more functionality without a lot of extra expense, so it is also nice to have a door open/close push button for each door at a more user friendly level. And while we're at it, some environmental monitoring would be nice.
Since we now have an Arduino near the garage doors we can add more functionality without a lot of extra expense, so it is also nice to have a door open/close push button for each door at a more user friendly level. And while we're at it, some environmental monitoring would be nice.
Using the MySensors library for comms and MQTT as the message pipeline makes it easy to roll out something like this fairly quickly, and will integrate into the home automation system very nicely.
Functionality:
This is the basic functionality required from the controller:- Report door(s) Open or Closed.
- Provide door control Buttons to more vertically challenged residents (already a button but on door controller about 7 feet off the ground)
- Possibly allow control of doors remotely
- Report temperature and humidity in garage
Parts List:
- 1 x Arduino Pro Mini 3.3v/8MHz
- 1 x nRF24L01+ 2.4GHz Transceiver
- 2 x Momentary push buttons
- 2 x Magnetic Door Sensors
- 1 x 2 Relay module (5v)
- 1 x DHT22 Temp and Humidity sensor
Schematic:
So the basic schematic The sensors, push buttons and temp/humidity sensor wire directly into the Arduino Pro Mini. The nRF24L01+ is also connected directly to the Arduino and a small regulator is used to generate the 3.3v for the DHT sensor and the nRF24L01+ radio. The regulator in the Arduino has a regulator that generate the +5v required for our the relay board.
Prototype:
The prototype was assembled inside a small enclosure and for the main electronics above I used the Easy/Newbie PCB for MySensors PCB to assemble the radio and Arduino and extract out the rest of the I/O required for the project. At some point I'll probably get a PCB made and replace as it could be a little smaller and better form factor for this application.
The lid of the case has the 2 buttons mounted on each side with the DHT sensor in the middle. This is the best arrangement for where this will be located as it will be between the 2 doors.
The relay board and the main PCB are mounted on a piece of 2mm thick poly-carbonate sheet purely because that's what I had lying around and is screwed to the case mounting points. This allows it all to not sit on the base of the case so that mounting screws can be put in to mount the case to the brick wall.
The holes on the top and bottom part of the box are where the conduit will enter the case from the door sensors at the bottom and the power and remote door actuator inputs at the top.
The lid of the case has the 2 buttons mounted on each side with the DHT sensor in the middle. This is the best arrangement for where this will be located as it will be between the 2 doors.
Connection on the board for all the I/O are shown in this diagram. Power is supplied by an 8vdc plug pack connected to the 2 screw terminal at the top of the PCB.
That's pretty much it from a hardware perspective.
Quick video of the controller push button functionality after it's installed.
Next time we'll do a bit more of a dive into the software and what is exposed to link to mqtt.
Until then...
I so need this. Thanks for sharing.
ReplyDeleteCasino - Harrah's Philadelphia - Hotel and Casino
ReplyDeleteHarrah's 안양 출장마사지 Philadelphia. Casino. Harrah's 경상남도 출장마사지 Philadelphia. 777 Harrah's Blvd. 광주광역 출장샵 Chester, PA 창원 출장마사지 19013. Casino. 과천 출장샵 (570) 795-2000. (800) 622-4700. (888) 795-1000.