基于物聯(lián)網(wǎng)的城市停車(chē)位管理系統
圖2 MC13213功能框圖
車(chē)載電子標簽及停車(chē)位測控節點(diǎn)均采用Freescale公司的MC13213芯片,標簽采用2.4G ZigBee無(wú)線(xiàn)協(xié)議傳輸數據,平常處于低功耗休眠狀態(tài),只有當被喚醒之后才無(wú)線(xiàn)發(fā)送用戶(hù)的ID數據,之后立即進(jìn)入休眠狀態(tài),電子標簽工作電壓范圍20~33 V,休眠電流在10 μA以下。使用440 mAh電池,可正常工作一年以上。當停車(chē)位測控節點(diǎn)接收到從電子標簽發(fā)來(lái)的用戶(hù)ID信息時(shí),停車(chē)位測控節點(diǎn)打開(kāi)車(chē)位上的擋車(chē)器,并將用戶(hù)ID信息無(wú)線(xiàn)發(fā)送至停車(chē)場(chǎng)主控節點(diǎn),停車(chē)場(chǎng)主控節點(diǎn)再通過(guò)25 G或3 G模塊將用戶(hù)ID信息發(fā)送至監控中心服務(wù)器,實(shí)時(shí)更新停車(chē)位的使用信息。每個(gè)用戶(hù)可隨時(shí)通過(guò)電腦或手機登錄服務(wù)器的網(wǎng)頁(yè),查詢(xún)該城市的所有停車(chē)位的空閑和占用情況。當用戶(hù)通過(guò)網(wǎng)絡(luò )預訂某停車(chē)位時(shí),監控中心將該用戶(hù)ID逐步傳遞至停車(chē)位測控節點(diǎn),則在預訂有效時(shí)間內,只有擁有該ID的用戶(hù)到達時(shí),停車(chē)位測控節點(diǎn)才打開(kāi)停車(chē)位上的擋車(chē)器。若預訂車(chē)位時(shí)尚無(wú)空位,則當有空位時(shí),停車(chē)位測控器可即時(shí)將空位信息傳至停車(chē)場(chǎng)主控節點(diǎn),停車(chē)場(chǎng)主控節點(diǎn)即時(shí)通過(guò)GPRS短信通知用戶(hù)。
2.2 停車(chē)場(chǎng)主控節點(diǎn)
停車(chē)場(chǎng)主控節點(diǎn)作為一個(gè)停車(chē)場(chǎng)網(wǎng)絡(luò )的路由節點(diǎn)和主控節點(diǎn),是Internet和停車(chē)場(chǎng)網(wǎng)絡(luò )的接口網(wǎng)關(guān)。停車(chē)場(chǎng)主控節點(diǎn)主要由2個(gè)MCU控制器和兩個(gè)遠距離無(wú)線(xiàn)通信模塊GTM900B(華為GPRS通信模塊)和EM770W(華為WCDMA 3G通信模塊)組成。以MC13213無(wú)線(xiàn)傳感網(wǎng)絡(luò )微控制器為核心的停車(chē)場(chǎng)網(wǎng)絡(luò )主控節點(diǎn)負責和停車(chē)位無(wú)線(xiàn)傳感網(wǎng)絡(luò )通信,將相關(guān)數據幀信息通過(guò)同步信號和SCI接口發(fā)送到2.5G/3G數據收發(fā)處理模塊,該模塊以32位ColdFire系列芯片MCF52223為核心(MCF52223芯片具有1個(gè)USB2.0通信和3個(gè)UART接口[10],和3G模塊/2.5G模塊接口比較容易),接收數據后經(jīng)處理后封幀,然后通過(guò)2.5G/3G發(fā)送到監控中心的服務(wù)器中。MCF52223可以通過(guò)SCI接口和GPRS模塊GTM900B進(jìn)行數據通信,也可以通過(guò)USB接口和WCDMA模塊EM770W通信。同時(shí)2.5G/3G模塊接收到監控中心的命令數據后,交由MCF52223解析,然后將解析后的命令發(fā)送到停車(chē)位網(wǎng)絡(luò )的主控節點(diǎn)。主控節點(diǎn)將數據發(fā)送到停車(chē)位網(wǎng)絡(luò )中傳輸。
3 軟件設計
3.1 停車(chē)位測控節點(diǎn)主程序設計
主函數流程主要有三部分,有一個(gè)網(wǎng)絡(luò )數據幀處理隊列。第一個(gè)部分主要是系統的初始化和相關(guān)變量的設置;第二個(gè)部分主要是獲取車(chē)載標簽信息;第三個(gè)部分查看網(wǎng)絡(luò )數據幀處理隊列中是否有數據幀需要處理,如果有則將幀送給網(wǎng)絡(luò )數據幀處理和轉發(fā)模塊來(lái)進(jìn)行相關(guān)操作。
3.2 停車(chē)場(chǎng)主控節點(diǎn)軟件設計
3.2.1 RFZigBee接收數據模塊
該部分負責接收從停車(chē)位傳感網(wǎng)絡(luò )接收相關(guān)數據,判斷該數據幀的正確性和合法性,然后對數據幀進(jìn)行處理,之后經(jīng)SCI模塊發(fā)送至2.5G/3G數據收發(fā)處理模塊。
每當RFZigBee接收模塊收到一個(gè)IRQ中斷,中斷處理程序接收數據幀,在接收數據的過(guò)程中將數據放入緩存。應用程序循環(huán)掃描緩存區,一旦發(fā)現有數據,就取出數據并進(jìn)行有效性驗證,然后做相應處理之后轉發(fā)數據,轉發(fā)數據前要先發(fā)送同步信號,保持通信的同步和穩定。已發(fā)送數據幀緩存區定時(shí)清除。
3.2.2 RFZigBee發(fā)送數據模塊
該部分主要負責偵聽(tīng)串口數據,然后解析數據幀,同時(shí)判斷數據的有效性,判斷是否為2.5G/3G數據收發(fā)處理模塊發(fā)送來(lái)的命令。如果數據幀合法,那么對數據幀做一定的處理,然后發(fā)送給停車(chē)位傳感網(wǎng)絡(luò )。
所以MC13213無(wú)線(xiàn)傳感網(wǎng)絡(luò )主控節點(diǎn)主要是作為停車(chē)位傳感網(wǎng)絡(luò )的路由,將停車(chē)位傳感網(wǎng)絡(luò )中需要傳輸的數據發(fā)送給2.5G/3G的數據收發(fā)處理模塊去處理,同時(shí)將有意義的數據幀傳輸給對應的停車(chē)位傳感網(wǎng)絡(luò )。
(1) 中斷處理函數流程
中斷流程主要包括IRQ中斷和UART的中斷。使用了IRQ3和UART0/USB中斷。通過(guò)IRQ3來(lái)同步接收串口的數據。每次IRQ3中斷來(lái)時(shí)清接收計數標志為0,同時(shí)使能UART0/USB接收中斷。然后UART0/USB接收中斷開(kāi)始接收數據,每接收一個(gè)接收計數標志就要加1,直到達到數據幀的長(cháng)度之后,作對應的校驗,如果正確將置對應的標志位。
評論