![Page 1: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/1.jpg)
The Digital DoormanThe Digital Doorman
ECE 511, Group 5
Jeremy TrimbleRussell LovellRussell Lovell
Douglass GliddenMahmoud El Ali
![Page 2: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/2.jpg)
The Digital Doorman
• Allows user to unlock a door with a
Never again be locked out of your home!
• Allows user to unlock a door with a special "knock rhythm."• Keeps door locked otherwise.
• System is invisible from the outside.• Alerts after three failed entry attempts. • User programmable knock pattern
• Echoes knock pattern after programming
• Inside:o Microphone detects knockso Solenoid deadbolt secures door
![Page 3: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/3.jpg)
Block Diagram
Wall WartWart
![Page 4: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/4.jpg)
![Page 5: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/5.jpg)
SchematicPower Regulation
Signal Conditioning
Output
![Page 6: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/6.jpg)
Test Platform
![Page 7: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/7.jpg)
PCB Layout Fit Check
![Page 8: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/8.jpg)
Printed Circuit Board
![Page 9: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/9.jpg)
Final Design
![Page 10: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/10.jpg)
Final Design
![Page 11: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/11.jpg)
Firmware (Timers)
• Written in C• Timer A0• Timer A0
• delay_microseconds(unsigned int duration_usec)– Block code execution for input duration
• delay_milliseconds(unsigned int duration_milliseconds)– Calls above function repeatedly if necessary
• Watchdog timer• Interval mode
– Used for the delayed alarm– Used for the delayed alarm– Used to reset recognition after a period of silence
![Page 12: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/12.jpg)
Firmware (Detection)
• Detection algorithmo Receives ADC interrupts with microphone voltage o Receives ADC interrupts with microphone voltage
samples at a constant frequency (based on the ADC clock)
o Determines when an actual knock has occurredo Compares against threshold
o Knock de-bounce is implemented in softwareo Notifies recognition algorithm of each knock and its timingo Notifies recognition algorithm of each knock and its timing
o Between ADC samples the microcontroller goes into low power mode 0o CPU is disabledo Clocks are enabled
![Page 13: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/13.jpg)
Firmware (Recognition)
• Recognition algorithmo Determines if each detected knock matches the knock
pattern, within tolerance (Delta)pattern, within tolerance (Delta)o Provides feedback outputs
o Pattern Acceptance: Door unlocks, happy sound playso Pattern Denial: Red LED lights, Alarm sounds after three failures
o Provides lock control outputs
o Tempo independence o Measure the time between the first two knocks and compute a
fixed-point scaling factor which we apply to subsequent knocks
![Page 14: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/14.jpg)
![Page 15: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/15.jpg)
Firmware (Pattern Learning)
• Learning Mode• External toggle switch places microcontroller in a “learning mode”• External toggle switch places microcontroller in a “learning mode”
– Used edge triggered port interrupts to detect switch – #include “skynet.h”
• Knock pattern can consist of up to 64 knocks– Allows creation of very complex patterns.
• Buzzer plays programmed knock pattern when exiting programming mode.– Allows user to confirm intended pattern
![Page 16: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/16.jpg)
Firmware (Diagnostics/Outputs)• Back Channel UART
• Implemented in software• 9600 8-N-1 • Outputs status and debugging information to virtual COM port• Outputs status and debugging information to virtual COM port• bc_printf();
– Prints text and simple integers (decimal or hex)• bc_getchar();
– Allows reception of characters from attached PC (unused, but works)
• Buzzer• Interfaced to GPIO• Implemented in software• Implemented in software
– Run_buzzer()» Specify the half-period in microseconds» Specify the duration in half-periods» Toggles the output once per half-period» Utilizes delay functions
![Page 17: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/17.jpg)
Software Development
• Subversion.• Is a revision control system used to maintain current and
historical versions of Digital Doorman source code.historical versions of Digital Doorman source code.• Kept a track record of versions and bugs.• Current revision is #83• 1158 lines
• Google's Repository and file sharing.• http://code.google.com/p/ece511-fall2011-group5/
• Divided project into tasks and assigned them to members.• Determined issues and assigned them to members.
– 14 issues/enhancements defined in the tracker (all resolved)
![Page 18: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/18.jpg)
Questions?
![Page 19: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/19.jpg)
Demonstration
![Page 20: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/20.jpg)
![Page 21: The Digital Doorman - Welcome to the GMU ECE Departmentjkaps/courses/ece511-f11/project/Team5-Final.pdf · The Digital Doorman ... special "knock rhythm." • Keeps door locked otherwise](https://reader031.vdocuments.us/reader031/viewer/2022022005/5ab4de737f8b9ab47e8c50f5/html5/thumbnails/21.jpg)