熱門文章
淺談:智能停車系統(tǒng)設(shè)計是什么
發(fā)布時間:2017-09-12 分類:交通百科
目前,隨著我國經(jīng)濟的高速發(fā)展,大家的生活水平都有所提升,而汽車市場的繁榮也引發(fā)出停車的難題。據(jù)了解,根據(jù)我國機動車數(shù)量與停車位之比,以及國外發(fā)達國家停車產(chǎn)業(yè)的發(fā)展來看,停車難問題催生出了一個巨大的智能停車場管理設(shè)備市場。因此新型的智能停車系統(tǒng)作為停車場管理系統(tǒng)的有力補充,從而形成了智能化更高的停車場管理系統(tǒng)。那這個智能停車系統(tǒng)設(shè)計是什么呢?下面,小編簡單介紹整個系統(tǒng)設(shè)計組成部分,具體如下:
一、單片機軟件設(shè)計
單片機系統(tǒng)的軟件設(shè)計主要采用C語言,對單片機進行編程實現(xiàn)各項功能。
紅外傳感器檢測
實現(xiàn)停車場智能引導(dǎo)的前提是如何準(zhǔn)確的把車位信息通過有效的方式檢測出來。根據(jù)電路原理,紅外傳感器檢測主要通過檢測反射紅外線的強弱,輸出相應(yīng)的電壓,通過A/D轉(zhuǎn)換輸出數(shù)字信號,從而進行判斷。
紅外傳感器電壓數(shù)據(jù)的采集是通過AD轉(zhuǎn)換器TLC549來完成的。每次要采集A/D上元件的電壓值時,先選中TLC549的片選信號線,使其進行轉(zhuǎn)換工作,然后進過一定的延時后,依照TLC549的數(shù)據(jù)手冊上的時序圖,從數(shù)據(jù)口讀取數(shù)據(jù)。
無線模塊軟件設(shè)計
為保證單片機與上位機之間串行通信的準(zhǔn)確率,需要雙方約定一定的協(xié)議,但考慮到傳輸?shù)臄?shù)據(jù)幀比較小而且傳輸?shù)木嚯x不遠(yuǎn),因此采用較為簡單的數(shù)據(jù)檢錯格式。雙方傳輸?shù)囊粋€數(shù)據(jù)幀為兩個字節(jié),第一個字節(jié)為信息字節(jié),即所有信息都包含在這以一字節(jié)內(nèi)。第二個字節(jié)為檢錯字節(jié),檢錯的方法是:兩個字節(jié)相加為0XFF(十進制255)為準(zhǔn)確信息,其它為錯誤信息。程序開始時雙方的握手信號為0XFF,0XFF。單片機使用定時器1作為波特率發(fā)生器,串行發(fā)送使用查詢方式,接收使用終端方式。
二、上位機顯示程序軟件設(shè)計
串行通信函數(shù)模塊
上位機串行通信的協(xié)議與單片機串行協(xié)議相同,具體通信流程如下:
Spcomm串口通信控件的基本屬性、方法和事件說明如下:
CommName屬性:計算機串口端口號的名字,COM1、COM2……,在打開串口前,必須填寫好此值。
Parity屬性:校驗位 None、Odd、Even、Mark、Space等。
BaudRate:設(shè)定支持串口通信用的波特率9600,4800等,根據(jù)實際需要來定,在串口打開后也可更改波特率,實際波特率隨之更改。
ByteSize屬性:表示一個字節(jié)中,使用多少個數(shù)據(jù)位收發(fā)數(shù)據(jù),根據(jù)具體情況設(shè)定5、6、7、8等。
StopBits屬性:表示一個字節(jié)中,使用停止位的位數(shù),根據(jù)具體情況設(shè)定1、1.5、2等。
SendDataEmpty屬性:布爾屬性,為True時表示發(fā)送緩存為空,或者發(fā)送隊列里沒有信息;為False時表示表示發(fā)送緩存不為空,或者發(fā)送隊列里有信息。
StartComm方法:用來打開通信串口,開始通信。如果失敗,則會導(dǎo)致串行口錯誤。錯誤類型大致分為串行口己處于打開狀態(tài),所以不能打開串行口,不能創(chuàng)建讀寫進程,不能建立串行口緩沖區(qū)等。
StopComm方法:用來停止通信串行口的所有進程,關(guān)閉串口。
WriteCommData方法是帶有布爾型返回值的函數(shù),其中參量pszStr-ingToWrite是要寫入串行口的字符串DwSizeaf- DataToWrite是要寫入的字符串的長度。該函數(shù)通過一個寫線程向串行口輸出緩沖區(qū)發(fā)送數(shù)據(jù)。發(fā)送操作將在后臺默認(rèn)執(zhí)行。如果寫線程PostMessage成功,則返回值是True,若寫線程失敗,返回值是False。
OnReceiveData,其中Buffer是指向輸入緩沖區(qū)的指針。BufferLength是從緩沖區(qū)收到的數(shù)據(jù)長度。當(dāng)輸入緩沖區(qū)收到數(shù)據(jù)時,該事件被觸發(fā)。當(dāng)輸入緩存有數(shù)據(jù)時將觸發(fā)該事件,對從串口收到的數(shù)據(jù)進行處理。
附加功能模塊
附加功能模塊主要是VIP的設(shè)定,當(dāng)然這只是一個簡單的VIP設(shè)定,并沒有連接數(shù)據(jù)庫,因此只能在程序運行時作一個簡單的演示,一旦程序關(guān)閉將不能保存VIP信息。設(shè)定VIP車位之后,在此車位顯示不能???,在車位引導(dǎo)時不作為空車位引導(dǎo)。附加功能模塊還包括幫助模塊和關(guān)于我們模塊,這兩模塊不做實際作用。