董福香
摘要 伴隨著社會(huì)經(jīng)濟(jì)快速進(jìn)步,我國(guó)市場(chǎng)經(jīng)濟(jì)不斷發(fā)展,人們的平均生活水平也隨之明顯提高,而汽車也演變成了日常出行的重要交通工具。而汽車的行駛速度與行車安全、運(yùn)輸效率密切相關(guān),就相關(guān)資料顯示,在發(fā)生重大交通事故的時(shí)候,大約有2/5是因?yàn)轳{駛員超速行駛所導(dǎo)致的。據(jù)此,本文為了確保行車安全做了一項(xiàng)設(shè)計(jì),基于駕駛員自身的安全,進(jìn)行檢測(cè)車輛超速的報(bào)警系統(tǒng)設(shè)計(jì)。報(bào)警系統(tǒng)允許駕駛員通過(guò)自帶按鍵設(shè)置車輛的安全行駛最高速。在車輛行駛過(guò)程中,報(bào)警系統(tǒng)利用速度傳感器對(duì)車輛的行駛速度進(jìn)行實(shí)時(shí)監(jiān)控,并根據(jù)所設(shè)置的安全參數(shù)進(jìn)行對(duì)比分析,一旦發(fā)現(xiàn)車輛超出安全參數(shù),蜂鳴器即可便開(kāi)始報(bào)警,警告燈也一直處于閃爍狀態(tài),直到駕駛員減速,以此從根本上確保行車安全。此外,本設(shè)計(jì)在超速報(bào)警的功能上還增加了其它功能,比如溫度顯示、時(shí)間顯示、鬧鐘等功能。
【關(guān)鍵詞】STC單片機(jī) 傳感器 超速報(bào)警
1 前言
在汽車工業(yè)和高速公路建設(shè)不斷優(yōu)化發(fā)展的進(jìn)程中,由于交通事故所造成的人員傷亡數(shù)量并未有所緩解,還在很大程度上導(dǎo)致了嚴(yán)重的經(jīng)濟(jì)損失。就統(tǒng)計(jì)顯示,導(dǎo)致交通事故的原因主要是車輛超載與超速行駛,其中超速行駛存在較大的隨機(jī)性,控制難度較大,再加上我國(guó)地質(zhì)復(fù)雜,公路條件繁瑣,各種等級(jí)公路所允許的最高速存在一定差異,既有限速裝置根本無(wú)法適應(yīng)目前這種現(xiàn)狀。因此,開(kāi)發(fā)具備智能決策模塊的汽車行駛速度報(bào)警控制系統(tǒng)勢(shì)在必行。
2 工作原理
為了保障行車安全,基于駕駛員自身安全,設(shè)計(jì)了可以對(duì)車輛行駛速度進(jìn)行檢測(cè)的報(bào)警系統(tǒng)。此報(bào)警系統(tǒng)允許駕駛員利用自帶按鍵,進(jìn)行車輛安全行駛的最高速度進(jìn)行合理設(shè)置,在車輛行駛過(guò)程中,報(bào)警系統(tǒng)通過(guò)傳感器,對(duì)機(jī)動(dòng)車輛的行車速度進(jìn)行全過(guò)程監(jiān)測(cè),并和駕駛員設(shè)置的安全參數(shù)做對(duì)比,如果發(fā)現(xiàn)車輛速度超出安全參數(shù)最高值的時(shí)候,蜂鳴器開(kāi)始報(bào)警,警告燈開(kāi)始閃爍,以此警示駕駛員,適當(dāng)降低行駛速度,確保行車足夠安全。同時(shí),本設(shè)計(jì)中還可以實(shí)時(shí)顯示時(shí)間以及顯示當(dāng)前車內(nèi)的溫度。
2.1 電路框圖
如圖1所示。
2.2 各模塊電路原理
2.2.1 報(bào)警原理
當(dāng)測(cè)量數(shù)據(jù)超過(guò)預(yù)設(shè)值或電路工作異常時(shí),單片機(jī)驅(qū)動(dòng)蜂鳴器發(fā)出IKHz訊響,同時(shí)LED2紅色燈亮。
2.2.2 顯示原理
顯示部分采用6個(gè)1位共陰紅色數(shù)碼管,位驅(qū)動(dòng)采用NPN型三極管驅(qū)動(dòng),占用P2.2-P2.7端口,采用動(dòng)態(tài)掃描方式。段碼為DO-D7,占用PO的8個(gè)端口,端口配置為推挽輸出,所以無(wú)需上拉電阻,數(shù)碼管各端口配有限流電阻。
2.2.3 按鍵原理
按鍵K1-K4采用獨(dú)立按鍵的方式,當(dāng)按鍵按下時(shí),單片機(jī)的相應(yīng)的端口由高電平變?yōu)榈碗娖?,單片機(jī)得到鍵值進(jìn)入相應(yīng)的程序處理。
2.2.4 訊響電路原理
所謂訊響電路主要包含兩大組成部分,即源蜂鳴器與PNP型三極管。訊響電路的工作原理是在PNP型三極管導(dǎo)通之后,源蜂鳴器及時(shí)發(fā)出定頻聲音。而驅(qū)動(dòng)主要利用獨(dú)立端口驅(qū)動(dòng)的方式,占據(jù)P3.6端口。
2.2.5 測(cè)溫原理
DS18820與單片機(jī)通信進(jìn)行數(shù)字測(cè)溫,R3是上拉電阻,不接電路不能工作。
2.2.6 實(shí)時(shí)時(shí)鐘原理
DS1302芯片產(chǎn)生精確的實(shí)時(shí)時(shí)鐘,然后把數(shù)據(jù)傳遞給單片機(jī)驅(qū)動(dòng)數(shù)碼管顯示。
3 系統(tǒng)硬件設(shè)計(jì)
3.1 顯示電路的設(shè)計(jì)
顯示電路由NPN型三極管和六個(gè)共陰極數(shù)碼管共同完成。每個(gè)NPN型三極管可驅(qū)動(dòng)一個(gè)共陰極數(shù)碼管。DIG7-DIGO:八位數(shù)值驅(qū)動(dòng)線。輸出位選信號(hào)從LED的公共陰極中吸收電流,以及顯示器共陰極電流的位驅(qū)動(dòng)線,最大值幾乎可以高達(dá)500mA,而處于關(guān)閉狀態(tài)的時(shí)候,輸出+VCC。如圖2所示。
3.2 按鍵電路的設(shè)計(jì)
該系統(tǒng)的按鍵電路由四個(gè)開(kāi)關(guān)加上拉電阻構(gòu)成,并且與LED報(bào)警指示二極管相連接。四個(gè)開(kāi)關(guān)則分別對(duì)應(yīng)著K1功能鍵、K2選擇鍵、K3數(shù)值減、K4數(shù)值加等功能,以操作開(kāi)關(guān)的方式,設(shè)定速度的上限,而且還具備增加或減小速度的按鍵,便于以駕駛員的實(shí)時(shí)實(shí)地需求為依據(jù),變更速度,以此實(shí)現(xiàn)報(bào)警目的,同時(shí)操作的靈活性也十分突出。
每按一次Kl鍵,可在下面幾個(gè)功能模式中連續(xù)循環(huán)轉(zhuǎn)換-a:時(shí)鐘及調(diào)整模式(數(shù)碼管不顯示a),b:測(cè)量溫度模式,C:測(cè)量電源電壓模式,d:報(bào)警模式。注意:長(zhǎng)按按鍵可以快速連續(xù)調(diào)整。如圖3所示。
3.3 報(bào)警電路的設(shè)計(jì)
報(bào)警模塊所負(fù)責(zé)的主要部分是聲音報(bào)警,電路都相對(duì)簡(jiǎn)捷,聲音報(bào)警主要是由單片機(jī)引腳與拉電阻相連接,以及晶體管、蜂鳴器所構(gòu)成的。如圖4所示。
3.4 時(shí)鐘電路的設(shè)計(jì)
單片機(jī)運(yùn)轉(zhuǎn)的時(shí)間基準(zhǔn)與其工作速度密切相關(guān)。時(shí)鐘電路就是所謂的振蕩電路,為單片機(jī)提供正弦波信號(hào),以此作為時(shí)間基準(zhǔn),從而對(duì)單片機(jī)的執(zhí)行運(yùn)轉(zhuǎn)速度起著決定性作用。本文用的是DS1302實(shí)時(shí)時(shí)鐘芯片。
原理:DS1302芯片產(chǎn)生精確的實(shí)時(shí)時(shí)鐘,然后把數(shù)據(jù)傳遞給單片機(jī)驅(qū)動(dòng)數(shù)碼管顯示,R4、R5、R6是3個(gè)上拉電阻。上電后即顯示時(shí)分秒。按K2鍵“時(shí)”閃爍,此時(shí)按K3鍵閃爍的小時(shí)數(shù)字減1;按K4鍵閃爍的小時(shí)數(shù)字加1。再按K2鍵”分“閃爍,再按K2鍵“秒”閃爍,“分”“秒”的調(diào)整與上相同,再按K2鍵數(shù)碼管不閃爍,退出調(diào)整狀態(tài)。
鬧鈴模式:當(dāng)時(shí)鐘的時(shí)和分和設(shè)定值一致時(shí),鬧鈴響。如圖5所示。
3.5 測(cè)溫電路的設(shè)計(jì)
測(cè)溫原理:DS18820與單片機(jī)通信進(jìn)行數(shù)字測(cè)溫,R3是上拉電阻,不接電路不能工作。按K1進(jìn)入測(cè)溫模式,數(shù)碼管首位顯示c,后四位顯示當(dāng)前溫度,顯示格式為xx.xx。如圖6所示。
4 系統(tǒng)軟件設(shè)計(jì)
4.1 系統(tǒng)流程圖
汽車超速報(bào)警器的設(shè)計(jì)流程如圖7所示。軟件編程利用C語(yǔ)言,單片機(jī)的T1為定時(shí)器,定時(shí)時(shí)間是Is。TO定時(shí)時(shí)間設(shè)置成50ms,到了時(shí)間,溢出便及時(shí)停止。在停止服務(wù)程序的時(shí)候,中斷次數(shù)寄存器添加l,重復(fù)定時(shí)中斷20次,時(shí)間是Is。時(shí)間一到,及時(shí)獲取定時(shí)器T1輸入的脈沖數(shù),即實(shí)時(shí)行車速度的頻率。對(duì)比分析頻率與單片機(jī)內(nèi)部設(shè)定閡值,以此對(duì)行車速度是否超速進(jìn)行判斷。
主程序具備硬件初始化、子程序調(diào)用、報(bào)警等相關(guān)功能。數(shù)據(jù)處理子程序主要是對(duì)行駛速度進(jìn)行監(jiān)測(cè),就是對(duì)車輛時(shí)速進(jìn)行計(jì)算,以此為報(bào)警子程序提供參數(shù)依據(jù)。按鍵終端子程序功能是輸入正確的、合法的參數(shù)信息。報(bào)警子程序則在超速行駛時(shí),及時(shí)發(fā)出警報(bào)。顯示子程序設(shè)計(jì)主要利用數(shù)字化,將駕駛員設(shè)置的最高速度和車輛實(shí)際速度顯示出來(lái),通過(guò)NPN型三極管促使LED實(shí)時(shí)展示。
4.2 主程序
系統(tǒng)的組成單元非常繁雜,為了方便更改,應(yīng)采取模塊化分層管理模式。在主程序中,主要包括單片機(jī)初始化、顯示測(cè)量速度、地址傳入模塊、顯示設(shè)定速度、報(bào)警等部分。如圖8所示。
測(cè)速程序:
//Dis Speed0;
LED2-1;
LED3-I;
if(Key Val--Ox30)//key34set
{
if(++Set times>-3)
{Set times=0;
)
)
else if(Key Val--OxlO)//key3-
{
if(Set times--l)
{if(--speed Max--O)speed Max-1 27;}
else if(Set times--2)
{if(--speed Min--O)speed Min-80;}
)
else if(Key Val--Ox20)//key4+
{
if(Set times-l)
{if(++speed Max--12 8)speed Max-81;)
Else if(Set times--2)
{if(++speed Min-80)speed Min-0;)
)
)
報(bào)警程序:
main0
{
TimerOlnit0;
POMO-Oxff;
PO-Ox00;
PIMI-Oxl0;
P3MO-Ox40; //P3 6輸出
P3-Ox3f;
ITO-1:
EXO-I;//enableINTOinterrupt
EA-1:
while(l)
{
if(flag2ms)
{ flag2ms-O;count2ms-O;Key3Process STCO;)
Beep Di0;
DisplayLed20;
}
參考文獻(xiàn)
[1]張俊謨.單片機(jī)的發(fā)展與應(yīng)用[J].電子制作,2007 (08):31.
[2]周旭艷,彭宣戈,朱兵.8051在車輛超速報(bào)警系統(tǒng)中的應(yīng)用[J].井岡山學(xué)院學(xué)報(bào),2006 (07).
[3]任國(guó)峰,李軍偉,張雨.單片機(jī)在發(fā)動(dòng)機(jī)轉(zhuǎn)速測(cè)量中的應(yīng)用[J],汽車科技,2006 (01):38-40.
[4]魏勛.單片機(jī)車速數(shù)顯及報(bào)警系統(tǒng)設(shè)計(jì)[J].電子制作,2007 (12).