Hit-and-Run Detection Camera Group #25: Nick Prozorovsky, Eric Stiles, and Wilson Wang.

Slides:



Advertisements
Similar presentations
سیستم آلارم دیجیتالی مجهز به ثبات خطا
Advertisements

Lab7: Introduction to Arduino
CS0004: Introduction to Programming Visual Studio 2010 and Controls.
What is Arduino?  Arduino is a ATMEL 168 micro-controller kit designed specially for small projects  User friendly IDE(Integrated Development Environment)
Taylor Holmes, Jason Partin, William Rody, Malcolm Stagg.
Microprocessor Motor Control Spring Introduction  Stamp projects Robots  Sensors  Motor control  Logic Rocketry  Reading acceleration (“g”
Electronic and Computer Engineering Colin Grogan Final Year Project: Design and Build an Air Mouse for people with lower mobility.
Living with the Lab Using Your Arduino, Breadboard and Multimeter EAS 199A Fall 2011 Work in teams of two!
Copyright 2014 Kenneth M. Chipps Ph.D. Network Management Using Sensors to Monitor Network Equipment Rooms Last Update
Solar Car Data Collection System Matt Boyden Rene Dupuis Ryan Lavallee 4/23/08.
The Alix.1c microcontroller on board the vehicle runs Fluxbuntu Linux and is connected to a g wireless card and a USB web camera. A background process.
The sequence of folders to a file or folder is called a(n) ________.
ECE 265 – LECTURE 13 Interface to switches and LEDs 7/3/ ECE265.
University of Pennsylvania Department of Electrical and Systems Engineering ABSTRACT: Quantifying and measuring certain aspects of a golf swing is a helpful.
E102 LAB Temperature Control of Heated Block. Temperature Controller Specifications Design, simulate and test a control system for temperature control.
Embedded Programming and Robotics
Senior Project – Computer Engineering Integrated Workout Shoe Peter Katlic Advisor – Prof. Cotter Development: Consisting of an 8051 microcontroller.
Part 1 Using the ARM board And start working with C Tutorial 5 and 6
Critical Design Review 27 February 2007 Black Box Car System (BBCS) ctrl + z: Benjamin Baker, Lisa Furnish, Chris Klepac, Benjamin Mauser, Zachary Miers.
Group Members: Brad Cox Kevin Burkett Tera Cline Arthur Perkins CS10 Battery Management System.
Chapter Seven Advanced Shell Programming. 2 Lesson A Developing a Fully Featured Program.
TA: Chris Reilly Group 5: Benjamin, Ramie, Zachary, Dinal.
Software Overview The software that controls the Place n’ Paste is designed to be robust and error proof. With minimal intervention from the user, the.
Traumatic Brain Injury Eyewear “TB-Eye” Todd Biesiadecki, Matthew Campbell, Matthew Vildzius ECE4007 L03 EM1 Advisor: Erick Maxwell December 14, 2011.
Gauge Operation and Software by Scott A. Ager. Computer Recommendations 750 MHz Pentium III 64 Meg SRAM 40 Gig Hard Drive 1024 x 768 graphics CD Writer.
By: Khalid Hawari Muath Nijim Thaer shaikh Ibrahim Supervisor: Dr. Jamal Kharousheh Dr. Nasser Hamad 27 December 2010.
Hybrid Power Controller (HPC) Final Presentation Senior Design II.
Team 9 - Scribacious Rabble Safety and Reliability Analysis Mitchell Erdbruegger (presenting) Paul Rosswurm William Hess Ben Kobin.
Final Year Project(EPT4046) Development of an internet controlled Surveillance Mobile Robot By Mimi Madihah Bt Mohd Idris Id: BACHELOR OF ENGINEERING.
InnoSys Park Brake Tool Master Control Panel Screens Revision A, 12Dec /12/20071.
An introduction to PIC’s for KS3 and KS4. Mr Rooks Hetton School.
Group #15 Matt Frank Russell Geschrey.  This project was chosen because of an interest in wireless communication systems, namely BAN's (body area networks)
Automatic Hotel Check-in and out System PROJECT #31 Tingting Dang, Tianyuan Feng, Yuncong Hao.
Self Switching Power Supply. Introduction Self Switching Power Supply  Embedded system requires a regulated power supply.
Solar Powered LED Blinds Group 28: Austin Estes and Kerr Oliva TA: Katherine O’Kane.
Auto turn off battery charger Auto turn off battery charger.
Simple Water Level Controller Circuit with Microcontroller and Alarm.
Multipurpose Keychain ECE 445 Senior Design Junting Lou Yaming Tang Lida Zhu TA: Rajarshi Roy Project No. 11 Fall 2012.
Smart Streetlight Proof of Concept Group 3 03/26/16 Tucker Russ Thor Cutler Brandon Berry Anthony Giordano.
ISA CLICK CONTROL #38 – FALL 2014 ERIC BRUNNGRABER DRAKE ISABIRYE.
Refrigerator Diagnostics Group #14 Jacob Belica Bradley Snyder Darwin Walters.
Wireless Bluetooth Controller For DC Motor. Introduction Wireless becoming more and more available and widely used Bluetooth is one of the major players.
Deep Touch Pressure Abdomen Belt Group 32 Kevin Rathbun & Luke Fleming & Chang-O Pyo ECE 445 Senior Design April 28, 2015.
WATER LEVEL INDICATOR AND AUTOMATIC MOTOR SWITCHING SYSTEM
Prototyping with Microcontrollers and Sensors. Overview Objective Background Information Problem Statement Materials Procedure Assignment Closing.
RASPBERRY PI WORKSHOP.
Prototyping with Microcontrollers and Sensors
Computer System Laboratory
ECE 445 Smart Window Responding System
Microcontroller basics
Microprocessors Tutorial 1: Arduino Basics
Textbook Detection System With Radio-Frequency Identification
Refer to Chapter 5 in the reference book
Chapter 2: System Structures
SUN SET TO SUN RISE LIGHTING SWITCH (EVENING ON TO MORNING OFF)
Automated Ticket to Ride
Remote Controlled Smart Socket
Classroom Digital Camera
Comprehensive Design Review
How to avoid catching things on fire.
SDP17 SmartWheel Abstract System Overview Results Block Diagram
Automatic Cloth Folding Machine
Internet-of-Things (IoT)
Real-Time Free Throw Feedback Device
Digital Chart Recorder Operation
Electrical traditional Chinese Instrument - Xun
Wavewin Sniffer 24 Configuration & Polling Software
ECE 477 Final Presentation Team 13  Spring 2011
Interactive Mirror Display
I/O Experiments Assignment 1.
Presentation transcript:

Hit-and-Run Detection Camera Group #25: Nick Prozorovsky, Eric Stiles, and Wilson Wang

Introduction  Hit-and-run incidents are common and frustrating  This camera provides proof of the incident  Mounted in rear window of car  Automatically detects accidents  Decreases storage requirement

Features  Automatic detection of an accident using accelerometer  Microcontroller interaction with all hardware  Low car battery detection and product shutdown  User interface with LED’s and buttons  Voltage regulation from car battery to microcontroller

System Overview  Hardware:  Accelerometer  Microcontroller (Raspberry Pi)  Camera  Voltage Regulator  Voltage Comparator  Buttons/LED interface  Software:  Main python script  Accelerometer polling python script  Startup bash script

3. Camera 7. Button/LED Interface 6. Voltage Comparator (PCB) 1. Accelerometer 2. Microcontroller (Raspberry Pi) 4. Voltage Regulator Components

= Signal = Power Block Diagram Data Collection A. Execution B. Accelerometer 1. Microcontroller 2. Camera v Car Battery 5. Voltage Regulator (*v->5v) 4. Voltage Comparator (PCB) 6. Buttons/LED interface 7. = Power = Signal

Accelerometer  Inputs: 3.3V, GND  Outputs: SDA and SCL Data Lines  ADXL 326  ADC  ADXL 345  ± 16 g  2,4,8,16  3.3 V

Microcontroller  Inputs: Power, accelerometer data lines, camera data, buttons, PCB shutdown  Outputs: Accelerometer power, camera data/power, LEDs  Raspberry Pi Model B+  512MB SDRAM  Micro SD GPIO Pins Accelerometer data 5V Input Pin

Camera  Inputs: 3.3v, data control  Outputs: Video data  Continuously running  Up to 1080p30

Voltage Regulator  Inputs: Car Battery  Outputs: 5V  12.6 V to 5 V  V  Original circuit  Voltage Regulator – LM 7805A TO-220  5 mA to 1 A, up to 15W  Rpi draws around.5 A, averaging 2.5W

Car Battery  Inputs: None  Outputs: Approximately 12.6 V DC  Actual amount will vary  Uncontrollable variable  Should not drop below 12 V

Voltage Comparator LM339N Comparator Chip Output Resistor divider circuit regulates output to 3.3V when V+ is above V- LM339N Chip grounds its output when V+ drops below V- Diode holds V- at a constant 6.8V Resistor divider circuit drops 12 V down to 6.8V IN4736A Zener Diode

V- = 6.67 Volts V+ = Vin [R2/(R1+R2)] V+ = 12 [10/(8+10)] = 6.67 Examples: Vin = 13  V+ = 7.22 > 6.67 Vin = 11.9  V+ = 6.61 < 6.67 Vin V+ V- Voltage Comparator Calculations

Conditions: Vin = 11 V V+ = 6.11 V V- = 6.67 V Output should have been grounded, but wasn’t Vin = 7.2 V V+ = 4 V V- = 6.67 Output became grounded Vin V+ V- Voltage Comparator Issue

Voltage Comparator Issue (Cont.) Breadboard circuit conditions: Vin = 12 V V+ = 6.68 V- = 6.67 Output was not grounded Vin = V V+ = 6.66 V V- = 6.67 V Output was grounded Deduction: LM339 Chip on PCB was faulty

PCB Design Voltage Regulator Output V+ V-

Button/LED Interface Volt connection from Raspberry Pi 2.GPIO Output connection 3.GPIO Input connection 4.Ground connection

Button/LED Interface Volt power from Raspberry Pi 2.GPIO output connection 3.Push button 4.GPIO input connection Output Voltage: 5*[9.92/( )] = 3.2 Volts

Software Function Overview (hitNrun.py) def log(string)  Inputs: String to log to USB.  Outputs: None.  Purpose: Log strings to USB for debugging and event timestamps.  Description:  Helper function for debugging.  Logs events to USB.  Helpful when no monitor is attached to Raspberry Pi.

Software Function Overview (hitNrun.py) def moveFiles()  Inputs: None.  Outputs: None.  Purpose: Save files in a folder so they cannot be overwritten.  Description:  Creates new directory with timestamp.  Moves all video files to new directory.  Attempts to copy entire folder to USB.

Software Function Overview (hitNrun.py) def deleteFiles(clipsToKeep)  Inputs: Integer representing the number of looping clips to keep.  Outputs: None.  Purpose: Deletes oldest clips to save storage space.  Description:  Ensures less than ‘clipsToKeep’ total video clips.  If more, deletes oldest video clip.

Software Function Overview (hitNrun.py) def deleteDirectories(direcsToKeep)  Inputs: Integer representing the number of saved directories to keep.  Outputs: None.  Purpose: Deletes oldest saved directories to save storage space.  Description:  Ensures less than ‘direcsToKeep’ total saved directories.  If more, deletes oldest saved directory.  Reduces false-positive saves.

Software Function Overview (hitNrun.py) def check_accel()  Inputs: None.  Outputs: Character in the signal text file.  0 – Accelerometer is not triggered.  1 – Accelerometer has been triggered.  2 – Accelerometer is disconnected.  Purpose: Communicates with accelerometer script to determine when to save files.  Description:  Reads from signal file to determine accelerometer status.  Returns code to main function to determine appropriate action.

Software Function Overview (hitNrun.py) def check_buttons()  Inputs: None.  Outputs: Whether or not files need to be moved.  0 – No buttons are pressed.  1 – Manual save button pressed.  Shutdown – Reset button pressed or input voltage too low, shuts down Raspberry Pi immediately.  Purpose: Interfaces with buttons and PCB directly to receive user-inputs.  Description:  Buttons have to be held down for >3 seconds so buttons are not accidentally pressed.  If manual save button held, return 1 to main file to indicate file save.  If PCB outputs voltage high or reset button held, powers down Raspberry Pi.

Software Function Overview (hitNrun.py) def powerdown(option=0)  Inputs: Optional integer value to indicate power down or restart  Outputs: None  Purpose: Helper function to power down the Raspberry Pi.  Description:  Shuts down Raspberry Pi by default.  If ‘option’ specified, attempt to restart Raspberry Pi.

Software Function Overview (hitNrun.py) def main()  Inputs: None.  Outputs: None.  Purpose: Initializes variables, starts camera recording, calls all helper functions and takes appropriate actions.  Description:  Initializes variables, turns red LED on to indicate power.  Camera started, constantly checks accelerometer and buttons.  If accelerometer triggered or manual save button, sleep for ‘clipLength’ time and save all video files.  If accelerometer error, save video files and blink red LED, wait for reset.  Call deleteFiles and deleteDirectories functions to clean up old files.

Software Function Overview (accel.py) def writeToFile(option)  Inputs: Character to write to signal file.  Outputs: None.  Purpose: Writes signal character to signal file to communicate with main script.  Description:  Opens up signal file.  Writes accelerometer status to file.  Closes file pointer.

Software Function Overview (accel.py) def main()  Inputs: None.  Outputs: None.  Purpose: Reads accelerometer axes to determine if threshold is exceeded or if an error is present.  Description:  Infinite loop to get data from accelerometer, writes data to USB file for graphing.  If accelerometer values exceed threshold, alert main script.  If accelerometer error, alert main script.  If trigger or error, wait for 5 seconds so main script has time to acknowledge.

Software Function Overview (start.sh) None  Inputs: None.  Outputs: None.  Purpose: Bash script to launch on startup and start both python scripts.  Description:  Starts both python scripts in background.  Attempts to copy new USB scripts to update scripts for next bootup.

Software Flowchart

Accelerometer Verification -Rotation of device on all three axes -Shows 1g on each axis when rotated -1g = 9.8 m/s 2  Accelerometer is functioning properly

Accelerometer Data Product run-through in Car 1. Slamming car door (.5g) 2. Slamming car trunk (.8g) 3. Hitting a pothole (.65g) 4. Slamming on brakes while traveling 30mph (1.25g) Results: Normal activity will not cause false positives if tripping value is 2g’s

Accelerometer Data (Cont.) -Data collected from shaking device -Triggers at magnitude of 3g’s -Offset of 1g due to gravity

Rear End Collision Acceleration -Acceleration from collisions are all 3g’s or greater -Set tripping value to 2g’s -False positives ignored -Accidents will be captured Table taken from “Real World and Vehicle Test Data” from the Motor Insurance Repair Research Centre Rear End Collision Data

Requirements and Verifications  Product powers on from voltage regulator  Accelerometer triggers at correct values  Footage is saved and events are logged on USB  Device shuts down with low voltage volts instead of 12)  Buttons and LED interface properly interact with software

Current Limitations/Future Work  Replace faulty comparator chip  Replace voltage regulator/heat sink with one rated for higher power  Send data to cloud storage  From lab to car:  Way to mount system down so camera and accelerometer are stable  Way to wire/power it up throughout the car  Car batteries are not all same, they won’t all be in 12.6v-12v range  Raspberry Pi still draws a very small amount of current even when powered down

Thanks!