基于A(yíng)RM系統的 IoT 停車(chē)場(chǎng)系統演示

發(fā)布時(shí)間:2016-7-25 10:56    發(fā)布者:designapp
關(guān)鍵詞: ARM , IoT , 停車(chē)場(chǎng)
  1). 簡(jiǎn)介
  在這篇博文中,我將介紹 IoT 停車(chē)演示系統以及其所用到的技術(shù)。我會(huì )闡述如何使用 Azure IoT Hub 在 Azure服務(wù)和設備之間發(fā)送消息,就像我們的演示系統那樣。針對演示中用到的ARM系統模塊,我也會(huì )做簡(jiǎn)單的介紹,但是主要還是專(zhuān)注于 Azure IoT Hub 以及如何方便地收發(fā)消息。
  在我們的演示系統有多個(gè)設備,例如:
  ./ 停車(chē)場(chǎng) 1(名為 Stretnor)
  ./ 停車(chē)場(chǎng) 2(名為 heater Parkhouse)
  ./ 公告顯示(每個(gè)停車(chē)場(chǎng)獨立設備)
  每個(gè)停車(chē)場(chǎng)包含以下多個(gè)設備:
  ./ 閘門(mén)控制器(Toradex Colibri T30 ARM計算機模塊系統(基于nVidia Tegra 3)運行 Win10 IoT)
  ./ 停車(chē)控制器(Toradex Colibri VF50 運行ARM計算機模塊系統(基于NXP Vybrid)Windows Embedded Compact 2013)
  ./ 支付終端(Apalis iMX6 ARM計算機模塊系統(基于NXP iMX6)運行 Linux 和 Qt)
  ./ 公告顯示(Colibri iMX6 ARM計算機模塊系統(基于NXP iMX6)運行 Windows Embedded Compact 2013)
  


  正如你在上面圖片中看到的,所有的通信消息通過(guò) Azure IoT Hub 發(fā)送至應用服務(wù)進(jìn)行處理。你也注意到我們在 Azure 運行了網(wǎng)頁(yè)和數據庫,但是這個(gè)篇博文只介紹 Azure IoT Hub 部分。
  2). IoT 停車(chē)場(chǎng)演示系統消息流
  由兩個(gè)基本的事件會(huì )觸發(fā)設備和 IoT Hub 之間的消息流。
  a). 第一個(gè)事件是當有車(chē)輛抵達閘門(mén)(參考下圖):
  


  當車(chē)輛抵達閘門(mén)時(shí),閘門(mén)控制器會(huì )掃描車(chē)牌,向 IoT Hub(1)發(fā)送消息。在應用服務(wù)確認數據后,會(huì )向閘門(mén)控制器發(fā)送消息,開(kāi)啟閘門(mén)(2)。與此同時(shí),指示停車(chē)位的消息也會(huì )發(fā)送至停車(chē)控制器(3)。停車(chē)控制器會(huì )開(kāi)啟紅色 LED 燈閃爍,表示該停車(chē)位即將被占用。支付終端也將會(huì )收到消息。這個(gè)消息包括車(chē)牌號和抵達時(shí)間(4)。同時(shí),公告顯示器收到關(guān)于該區域里所有停車(chē)位的信息(5)。
  當車(chē)輛停在停車(chē)位時(shí),停車(chē)控制器停止紅色 LED 燈閃爍,向 IoT Hub 發(fā)送車(chē)輛已經(jīng)?康南(6)。此時(shí),閘門(mén)控制器被告知關(guān)閉閘門(mén)(7)。
  b). 第二種事件是車(chē)輛離開(kāi)停車(chē)位:
  


  當車(chē)輛離開(kāi)停車(chē)場(chǎng)的時(shí)候,司機首先需要支付停車(chē)費。在支付終端上,司機選擇他自己車(chē)輛的車(chē)牌后支付。請求支付的消息發(fā)送至 IoT Hub(1)。應用服務(wù)計算價(jià)格,并發(fā)送到支付終端(2)。當支付終端接收付款后,發(fā)送支付成功的消息至 IoT Hub(3)。應用服務(wù)把車(chē)輛即將離開(kāi)停車(chē)場(chǎng)的送消息發(fā)送到停車(chē)控制器(4)。停車(chē)控制器開(kāi)始閃爍綠色 LED 燈。當車(chē)輛從停車(chē)位上離開(kāi)后,IoT Hub 收到車(chē)輛已經(jīng)離開(kāi)的消息(5)。停車(chē)控制器打開(kāi)出口閘門(mén)。在一段時(shí)間后,閘門(mén)關(guān)閉,一個(gè)指示停車(chē)位空閑的消息發(fā)送到 IoT Hub。之后,公告顯示上也更新所有停車(chē)位的信息(6)。
  3). 例程應用
  在下面的例程中,我將向你演示如何方便地于 Azure IoT Hub 通信。你需要基本的 C# 知識來(lái)理解這個(gè)例程。如果你想要編譯應用,請使用 Visual Studio 2015。
  你同樣也需要 Azure 賬戶(hù)來(lái)運行例程。你可以創(chuàng )建一個(gè)免費的 Azure IoT Hub,并在你的 Azure IoT Hub 上創(chuàng )建設備。使用 device explorer 完成這些任務(wù)。在 這里查看 device explorer 文檔。
  這里我將演示一個(gè)小的服務(wù)器應用,從 IoT Hub 獲取消息并處理。代碼是很簡(jiǎn)單的,并不適用于生產(chǎn)環(huán)境。這僅僅是向你介紹如何方便地同 Azure IoT Hub 通信。在這個(gè)代碼里,我們只接收來(lái)自設備的信息,并將新的消息發(fā)送至同一個(gè)設備。
  你需要使用你的連接字符串來(lái)修改服務(wù)器端的代碼。
  -----------------------
  private const string CONNECTION_STRING = "";
  -----------------------
  正如你在代碼中看到的一樣,我只調用了 TDXServerEmulator 類(lèi)中的 connect 方法
  -----------------------
  TDXServerEmulator ServerEmulator = new TDXServerEmulator();
  ServerEmulator.Connect();
  -----------------------
  這會(huì )處理接收和響應消息。
  為了使用客戶(hù)端,你需要 Azure IoT 的 URL 替換成你自己的。Device.cs.
  -----------------------
  const string iotHubUrl = "";
  -----------------------
  在客戶(hù)端代碼中,創(chuàng )建新的 Device 對象,注冊 OnMessageReceived 事件。這能夠使你的設備收到來(lái)自 Azure IoT Hub 的所有消息。
  -----------------------
  Device client1 = new Device("", "");
  client1.OnMessageReceived += Client1_OnMessageReceived;
  client1.Start();
  -----------------------
  接下來(lái),你可以運行例程。兩個(gè)終端串口會(huì )在程序執行之后出現。你需要等待服務(wù)器應用連接。
  


  在服務(wù)器連接后,你可以在應用中選擇 “Send Hi” 。
  


  在上面的圖片中,你可以看到客戶(hù)端發(fā)送“Hi”。服務(wù)器接收到來(lái)自客戶(hù)端的消息后,用“Hi from IoT Hub” 消息作為響應。
  就像你在代碼中看到的一樣,同 Azure IoT Hub 通信和發(fā)送消息是很容易的。對于復雜的應用,還有許多可以改進(jìn)的地方,這當然也會(huì )使得代碼變得更加復雜。
  通過(guò)以上的代碼和解釋?zhuān)銘摽梢允褂?Azure IoT Hub 開(kāi)發(fā)簡(jiǎn)單的應用。所有 Toradex ARM計算機模塊 均支持 Azure IoT Hub。你可以在 這里了解 Toradex 模塊的支持類(lèi)型。你也可以下載 WinCE 和 Linux SDK。
                                
                                                               
                                
               
本文地址:http://selenalain.com/thread-171097-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页