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