一種物聯(lián)網(wǎng)云服務平臺的設計與實現(xiàn)
引 言
從我國 2009 年提出物聯(lián)網(wǎng)發(fā)展戰(zhàn)略以來,物聯(lián)網(wǎng)在工業(yè)監(jiān)控、城市管理、智能家居、智能交通等多個領域發(fā)展迅速。云計算是物聯(lián)網(wǎng)發(fā)展的基石,也是實現(xiàn)物聯(lián)網(wǎng)的核心,使物聯(lián)網(wǎng)中以兆計算的各類物品的實時動態(tài)管理和智能分析變得可能,也促進了物聯(lián)網(wǎng)和互聯(lián)網(wǎng)的智能融合。云計算使傳統(tǒng)IT 產業(yè)格局在技術、商業(yè)模式及服務等方面得到明顯改變[1]。服務提供商利用云服務將信息技術服務提供給用戶,使得用戶通過網(wǎng)絡能夠隨時隨地得到自己想要的資源及服務,對傳統(tǒng)制造業(yè)產生了巨大的沖擊。各制造商紛紛對產品進行產業(yè)升級與改造,同時讓其下所有產品組成一個能為用戶提供完整服務的有機組合,而非單一的產品,大力建立自己的移動互聯(lián)網(wǎng)生態(tài)系統(tǒng)。對于很多由硬件制造起家的公司來說,部署和運維互聯(lián)網(wǎng)應用無疑是一個噩夢,缺乏專業(yè)研發(fā)團隊,平臺運維費錢費心,安全問題難以得到保障。因此,建立一個專業(yè)的物聯(lián)網(wǎng)云服務平臺,可以解決這些硬件制造商的困擾,不但讓制造商能夠簡單地低成本改造原先的產品,還可利用云服務平臺提供的定制服務增強用戶體驗,既不用擔心未來產品的升級換代和架構升級,也有利于快速搶占市場份額。
1 系統(tǒng)總體方案
物聯(lián)網(wǎng)云服務平臺由手機 App、云服務器、終端組成, 如圖 1 所示。終端由控制器、以太網(wǎng)模塊、輸出接口和傳感器接口組成。
遠程監(jiān)測傳感器數(shù)值的過程如下所示:
(1) 用戶在云服務器建立傳感器的云端服務;
(2) 控制器通過傳感器接口采集傳感器的數(shù)據(jù),通過以太網(wǎng)模塊發(fā)送給云服務器;
(3) 云服務器將消息推送到手機 App,以曲線形式查看傳感器的數(shù)值。
遠程控制輸出機構的過程如下所示:
(1) 用戶在云服務器建立屬于輸出機構的云端服務;
(2) 利用手機 App連接云服務器,發(fā)出改變輸出機構狀態(tài)的指令;
(3) 云服務器將指令推送到終端,控制器改變輸出機構的狀態(tài)。
在實際應用過程中,在傳感器接口連接溫度傳感器,實現(xiàn)溫度的遠程測量、分析和顯示;在輸出機構接口連接繼電器, 實現(xiàn)門禁的遠程開關。
2 系統(tǒng)硬件設計
2.1 控制器
系統(tǒng)選用基于ARMCortex-M3內核的 32位微控制器STM32F103RBT。它運行速度快,工作頻率可達 72MHz;內置高速存儲器(128KBFlash和 20KBSRAM);2個可工作在主從模式的SPI串行接口、7通道 DMA控制器、51個通用IO口。豐富的外圍配置與開發(fā)資料可大大降低系統(tǒng)開發(fā)成本并縮短開發(fā)時間[2,3]。
2.2 以太網(wǎng)模塊
系統(tǒng)選用 WIZnet 公司生產的 W5500。W5500 有 8 個獨立端口Socket 同時通訊, 集成了 TCP/IP 協(xié)議棧, 支持TCP、UDP、IPv4、ICMP、ARP、IGMP 及 PPPoE 協(xié) 議, 內嵌 32 KB 片上緩存以供以太網(wǎng)包處理,支持 10/100 M 以太網(wǎng)數(shù)據(jù)鏈路層(MAC) 及物聯(lián)層(PHY)。W5500 支持高達 80 MHz 的SPI 接口,更容易與外設 MCU 整合,更好地調整網(wǎng)絡通訊。為減少系統(tǒng)能耗,W5500 提供了網(wǎng)絡喚醒模式以及掉電模式供客戶選擇使用[4,5]。
3 系統(tǒng)軟件設計
3.1 控制器主程序設計
控制器主要實現(xiàn)傳感器采集、輸出機構控制和以太網(wǎng)通信功能,其主程序的流程決定了終端的功能,其運行效率決定了終端的整體性能。圖 2 所示為將溫度采集和遠程門禁集成在一起的控制器主程序流程圖。首先,控制器對以太網(wǎng)模塊進行硬件初始化。然后從DHCP 服務器獲取IP 地址。終端IP 地址無效分為兩種情況,即終端剛上電與DHCP 服務器分配的IP 地址超過租期時間。當終端IP 地址無效時,控制器需要利用W5500 其中 1 個Socket 進行 DHCP 協(xié)議通信(UDP 協(xié)議通信),才能從 DHCP 服務器分配到有效IP 地址。最后,實現(xiàn)應用功能。由于W5500 有 8 個獨立網(wǎng)絡通信線程,其中1 個用于DHCP 通訊,因此還有 7 個可用于上述事例。文中采
用 2 個獨立網(wǎng)絡通信線程分別實現(xiàn)溫度采集和遠程門禁。
3.2 手機 App的軟件設計
手機 App 軟件包括公開設備、關注設備、我的設備及設置。
(1) 公開設備是指各用戶共享自己的設備和傳感器,其他用戶能夠直接查看其傳感器的數(shù)值。
(2) 關注設備是將公開設備關聯(lián)為常用設備,是一種快速鏈接方式。
(3) 我的設備是指用戶創(chuàng)建的全部設備和傳感器,包括公開和私有兩種。
(4) 設置包括自己的帳號、密碼、驗證碼、是否記住賬號密碼、自動登錄以及App信息。
在Android 系統(tǒng)中,公開設備、關注設備、我的設備以及設置四大功能分為四個UI 界面(Activity)進行獨立管理,常用方案為Fragments。Fragments 是為解決不同屏幕分辨率的動態(tài)和靈活UI 設計。每一個 Fragments 都有一套自己的生命周期回調方法和處理用戶輸入事件。
4 物聯(lián)網(wǎng)云服務平臺的測試
物聯(lián)網(wǎng)云服務平臺的測試包括網(wǎng)站、手機 App 軟件以及終端設備。網(wǎng)站首頁以地圖形式顯示各地區(qū)公開設備的 GPS 位置、傳感器列表及最后一次數(shù)值,如圖 3 所示。結合地圖的滾動和移動操作,地圖上更新最新的公開設備情況,方便用戶查找自己附近的公開設備。手機 App 啟動后,在右上角利用圖標顯示當前與云服務器之間的網(wǎng)絡連接狀態(tài)。點擊 公開設備 ,顯示圖 4 所示公開的設備列表。點擊設備,進入圖 5 所示設備包含的傳感器列表。點擊傳感器,查看該傳感器的歷史記錄數(shù)據(jù),并以曲線形式顯示,如圖 6 和圖 7 所示。圖 6 所示為溫度傳感器最近一年的歷史數(shù)據(jù),其中A 點(2016 年11月11 日)的溫度突然下降約 7℃,接著回暖,我們將這種現(xiàn)象稱為 入冬失敗 。圖 7 所示為門禁最近一年的歷史數(shù)據(jù)。
圖 3 以地圖形式顯示設備數(shù)值
圖4 手機App 界面中設備列表 圖5 手機App 界面中傳感器列表
圖 6 最近1 年的溫度曲線
圖 7 最近1 年的門禁曲線 (下轉第 46 頁)
5 結 語
基于本物聯(lián)網(wǎng)云服務平臺,可實現(xiàn)遠程采集、分析和顯 示溫度與遠程開門。結果表明,該平臺運行效果良好,可靠性 高,擴展性強,滿足設計要求,為后續(xù)的決策系統(tǒng)與用戶定制 服務等功能提供了一個良好的平臺。