ECE497 Project - Camper Automation

From eLinux.org
Revision as of 21:50, 13 November 2018 by Patzer (talk | contribs) (Theory of Operation)
Jump to: navigation, search


Team members: Marius Schwab, Vinzenz Felder, Daniel Patzer(aka. Harry Potter)

Grading Template

I'm using the following template to grade. Each slot is 10 points. 0 = Missing, 5=OK, 10=Wow!

00 Executive Summary
00 Installation Instructions 
00 User Instructions
00 Highlights
00 Theory of Operation
00 Work Breakdown
00 Future Work
00 Conclusions
00 Demo
00 Late
Comments: I'm looking forward to seeing this.

Score:  10/100

(Inline Comment)


Executive Summary

Hardware


In the Project we are using a 7” LED Touch panel to display sensor data and control outputs. Sensor data that will be displayed on the screen include two independent temperature measurements. The data will be displayed in number and through a graph. For monitoring the temperature behavior over time. Additionally, the 12V battery voltage will be measured and displayed. The GUI include Buttons to control a one channel relay to switch on led Lights.


RV Relay wide.jpg


The two 3V relays can provide 12 V and 10A power output.


RV temp wide.jpg


The two TMP 101 temperature sensor are used to measure indoor and outdoor temperature.


RV Button wide4.jpg


Three demo buttons on the LCD screen can be pressed to switch the 12V Power. This can control the heating or ventilation system or simply used to turn on 12V LEDs to light up your camper.


RV TEMP wide2.jpg


Indoor and outdoor temperature values are monitored on the screen. An additional menu allows to set specific times to switch the relays autonomously. This allows for example to switch off the water pump during the night.

Packaging

Installation Instructions

GitHub

The project is located on GitHub here: [1]

In the Github repository, you will find a README file with all necessary installation.

Hardware

Here are the links for the specific hardware we used for this project.

7-inch LCD-Screen - https://www.amazon.com/GeeekPi-1024x600-Capacitive-Display-Raspberry/dp/B074Z6FCFW

Beagle Bone Black - https://www.mouser.com/ProductDetail/BeagleBoard-by-GHI/BBB01-SC-505?qs=sGAEpiMZZMuG6%2fXKM6MUaQUPc9Y91hBEalrDTtma%2fpY%3d

3V Relay - https://www.amazon.com/gp/product/B0798CZDR9/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1

Micro HDMI to HDMI - https://www.amazon.com/gp/product/B01LZL2PAQ/ref=oh_aui_detailpage_o02_s00?ie=UTF8&psc=1

Voltage Regulator 3A - https://www.amazon.com/MP1584EN-Honbay%C3%82-Step-Down-Adjustable-Converter/dp/B018JWCX8M/ref=sr_1_3?s=electronics&ie=UTF8&qid=1541445419&sr=1-3&keywords=MP1584EN+ultra+Small+DC-DC

Development Overview

Hardware built

The very first step was to screw all hardware components on a 6mm acrylic plate with three levels. The bottom layer consists of two relays, step-down converter, two TMP101 sensors and beagle bone black. We are only using one 12 Volt 1.25A power supply input to provide the necessary power for the hole system. The second layer contains two board one for the HDMI converter the other is necessary to interface the touchscreen.


After the prototype was complete we started writing python test scripts to read sensor data and print temperature values on the Screen. RV Timer wide-3.jpg

Temperature test

RV Timer wide-2.jpg

A counter which sets a output led high

RV Output wide.jpg

For demonstration purpose we are powering a 12 Volt car audio transmitter

User Instructions

This are the Schematics for wiring the two TMP101 sensors and the two relays to the bbb. The display is connected through micro HDMI directly to the bone and the touchscreen is connected through USB

Schematics wide.jpg

BBB pins Usage
P9_01 GND
P9_02 GND
P9_03 3.3V
P9_04 3.3V
P9_12 IN relay 1
P9_13 LED
P9_16 IN relay 2
P9_19 I2C2_SCL
P9_20 I2C2_SDA
P8_27 HDMI
-- --
P8_46 HDMI

Highlights

RV Timer wide 1.jpg

The three main functionalities on the GUI (left to right)

  • The black box displays the timer which triggers the Relay remotely at a specific time. One press on the black box opens a menu to set the timer with a visual keyboard on the screen
  • Underneath are the two outdoor and indoor temperature values displayed in Celcius
  • The button block consists of three direct executable buttons which switch the relays

Theory of Operation

For our communication we used slack. slack is a open source cloud-based messenger service. Additional our Milestone plan shows our time

Milestoneplan

Work Breakdown

For our Project, we separated the work-tasks in 3 packages.

Package 1 ( Daniel Patzer)

- Prototype design and Hardware selection 
- relay control with button interface 

Package 2 ( Marius Schwab)

- Software development
  --> clock function, clock alarm
  --> temperature reading of 2 sensors
- implementation in GUI

Package 3 (Vinzenz Felder)

- GUI design
- GUI programming (implementation of GUI function, etc.)
- documentation

Future Work

  • This prototype enables further ioT functionally to get used in your camper. For example by adding a 3G module temperature values could get reported to a google sheet.
  • PID Controller can be implemented to control the heater by setting a specific temperature value.
  • implementing LED dimmer to adjust the brightness of the indoor roof LEDs
  • Controlling the relays through a IOS or android app

Conclusions

This project is still just a prototype. For a real implementation, additional functions should be integrated. However, for the sake of this project we fulfilled our requirements and added additionally timer functionality.




thumb‎ Embedded Linux Class by Mark A. Yoder