重力感應(yīng)式智能便攜鬧鐘的軟硬件實現(xiàn)
一、項目概述
1.1 引言
普通的鬧鐘只具有時間顯示和語音提醒功能,若設(shè)想一種鬧鐘不僅可以進行時間顯示,而且到達設(shè)定的鬧鐘時間時可以在表盤上顯示相關(guān)的事務(wù)提醒,那么鬧鐘的功能可以得以極大的豐富。
1.2 項目背景/選題動機
第一,參照PSoC Rocks例程所演示的效果,拓展到可以用一系列的LED燈來進行文字顯示;
第二,曾看過有人用一個馬達帶動一系列LED燈,并施以一定的控制來完成表盤時鐘的顯示,覺得既有趣又具有觀賞性,所以會想到將其功能復(fù)雜化,嘗試完成文字顯示;
第三,考慮到PSoC開發(fā)板集成有重力感應(yīng)器,可以用來對鬧鐘的功能進行擴展,當(dāng)器件處于不同的放置狀態(tài)時進行不同的內(nèi)容顯示;
二、需求分析
2.1 功能要求
1、時鐘顯示功能:這是系統(tǒng)最基本的功能,通過控制器控制LED燈的點亮與熄滅,在人的視覺暫留效應(yīng)下,就會在視線里出現(xiàn)表盤和走動的指針;該功能比普通時鐘更具觀賞性和趣味性。
2、溫度顯示功能:這是時鐘系統(tǒng)的一個附加功能,主要是為了擴展時鐘功能并進一步利用PSoC芯片的資源。
3、鬧鐘功能:這是該系統(tǒng)較大的亮點所在,將鬧鐘的語音提醒與文字提醒相結(jié)合,從更好更準(zhǔn)確地完成提醒功能。
2.2 性能要求
1、時鐘的準(zhǔn)確度要求:這是時鐘必須具備的性能之一,不準(zhǔn)確的時鐘基本沒用。
2、溫度的精度要求:溫度檢測允許存在一定的誤差,由于不涉及高精度測量,所以1~2度以內(nèi)的誤差都是可以接受的。
3、顯示系統(tǒng)的清晰度要求:LED顯示系統(tǒng)的視覺效果應(yīng)足夠清晰易于辨認。
三、方案設(shè)計
3.1 系統(tǒng)功能實現(xiàn)原理(除圖片外需有文字介紹)
系統(tǒng)硬件結(jié)構(gòu)框圖
系統(tǒng)功能說明:該系統(tǒng)通過馬達帶動一系列的LED燈旋轉(zhuǎn),加之人的視覺暫留效應(yīng)從而完成一個簡單的顯示系統(tǒng)。重力感應(yīng)傳感器用以檢測鬧鐘放置狀態(tài),并反饋給控制器從而控制LED顯示系統(tǒng)進行不同模式下的內(nèi)容顯示(時鐘模式、溫度模式、設(shè)置模式);溫度傳感器只在溫度模式下啟用,用來檢測環(huán)境溫度,繼而通過 LED顯示系統(tǒng)顯示;時鐘模式時,在控制器作用下,控制各LED燈的閃爍從而實現(xiàn)表盤時鐘的顯示。
3.2 硬件平臺選用及資源配置
硬件平臺選用基于PSoC的自制平臺,因為考慮到系統(tǒng)功能的實現(xiàn)原理,無法采用大賽提供的開發(fā)板來完成,且開發(fā)板所集成的各模塊并未全部用上,所以我們選擇自主設(shè)計硬件結(jié)構(gòu)。簡單來說,硬件主要包括有PSoC芯片、加速度感應(yīng)器、溫度感應(yīng)器及數(shù)十個LED燈外加一個直流馬達(需配備減速器),硬件結(jié)構(gòu)選用易于做旋轉(zhuǎn)運動的長條狀結(jié)構(gòu),如下圖所示。
簡易的硬件結(jié)構(gòu)示意圖
3.3系統(tǒng)軟件架構(gòu)
構(gòu)建系統(tǒng)的元件主要有檢測元件、控制器和顯示元件,這些元件搭建的系統(tǒng)架構(gòu)可用下圖進行簡單的說明。
系統(tǒng)軟件架構(gòu)
由于構(gòu)建的系統(tǒng)并不復(fù)雜,故其架構(gòu)相對簡單明了,下面對各模塊進行簡單的介紹。檢測元件:相當(dāng)于是信號采集元件,負責(zé)搜集周圍環(huán)境的信息并反饋給控制器分析,繼而是控制器發(fā)出相應(yīng)指令控制其他元件。信號采集階段的關(guān)鍵是對采集信號的處理,如AD轉(zhuǎn)換,PSoC所集成的Delta-Sigma ADC完全能夠滿足我們的高精度信號采集的需求。
控制器:是系統(tǒng)的核心部分,外圍設(shè)備所有的功能實現(xiàn)基本上都由控制器發(fā)出指令并加以控制,系統(tǒng)的功能實現(xiàn)關(guān)鍵在于控制器能夠正確控制LED燈的閃爍,從而完成顯示。
顯示系統(tǒng):由馬達和一系列LED燈組成,顯示功能的實現(xiàn)主要依賴于控制器的控制指令及馬達的轉(zhuǎn)動。
3.4 系統(tǒng)軟件流程(除圖片外需有文字介紹)
主程序流程圖
中斷服務(wù)程序流程圖
3.5 系統(tǒng)預(yù)計實現(xiàn)結(jié)果
時鐘模式下,LED顯示系統(tǒng)顯示表盤式時鐘,即帶有轉(zhuǎn)動時針、分針、秒針的時鐘,到達設(shè)定的鬧鐘時間,如早上7點時發(fā)出聲音且表盤顯示“get up”,提示起床;下午1點時表盤上發(fā)出聲音顯示“rest”提示午休等;將鬧鐘旋轉(zhuǎn)90度放置進入溫度顯示模式,根據(jù)溫度傳感器的測量值顯示環(huán)境的溫度;繼續(xù)將鬧鐘旋轉(zhuǎn)90度放置進入設(shè)置模式,可用來設(shè)置鬧鐘時間。