A simple project to build a garage parking sensor for a two-car garage.
Let's face it, garages are simply not big enough. There is always more you want to put into a garage than will fit and once you park your cars, things get tighter still. To get the most out of this space, your car needs to be parked correctly everytime. That is what this little device seeks to do. This is the second generation of device I have used and I learned some things from my first go-round. Before I share the current design, let me give a few lessons learned from the first:
I wanted this project to be something that would last, looked professional and functioned reliably. You could save a lot of time and some cost be mounting your sensor "on" rather than "in" the walls but here is the bill of materials for the approach I took.
I have designed a board for this project which I share on OSHPark under my username. The EAGLE and GERBER files are also stored here.
I wont bore you with the obvioud details but here is a rough outline of the work to be done. I selected a site which had a nearby outlet and placed the double box and a single box at a heigh of about six feet centered on each parking space. I then placed two single boxes below the first two and tried to get them as close to car bumper height as the garage wall would allow. I had to open up the wall in between the left and right boxes so I could snake the wire across. If you are skilled in fishing wires across 2-3 studs without doing this then you can save a lot of time.
Once I had the boxes in place, I created the custom cables using a Pololu crimper making sure to skip one spot on the sensor end of the wire so the PW pin was unconnected and the BW pin was held high. This enabled the two sensors to be "chained" where one sensor pings and then signals the next to ping thereby avoiding interferrence between the sensors. The ability for these sensors to perform this chaining and the analog output of the sensor made for a much cleaner sketch without the need for any libraries.
With everything connected, I programmed the board with the sketch provided here. The only items you may need to tweak are the Max, Mid and MinDistance variables. You can also put the potentiometers on the board and make manual adjustments to the MinDistance just un-comment that code in the void setup() section.
lease feel free to look at the code, board design and my approach to the project and suggest improvements. I hope this project is helpful and I may come back to it based on your feedback. I can also imagine some potential improvements going forward such as - networking the sensor to report status and trigger events, temperature correction (currently done only on power-on, and power saving steps.