• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Linux系統(tǒng)的智慧路燈網(wǎng)關(guān)設(shè)計

      2020-12-26 11:25:42李正杰
      企業(yè)科技與發(fā)展 2020年7期
      關(guān)鍵詞:路燈網(wǎng)關(guān)服務(wù)器

      李正杰

      【摘 要】隨著智慧城市的建設(shè)和發(fā)展,智慧路燈作為智慧城市建設(shè)中不可或缺的組成部分,在城市建設(shè)中發(fā)揮著越來越大的作用。智慧路燈作為智慧城市的數(shù)據(jù)采集器,承載著照明設(shè)備、傳感器設(shè)備、視頻設(shè)備等多種功能設(shè)備,但是這些設(shè)備之間又相互獨立,數(shù)據(jù)不能夠互聯(lián)互通,需要有一個設(shè)備將這些功能部件黏合成一個整體,因此智慧路燈網(wǎng)關(guān)應(yīng)運而生,它作為智慧路燈系統(tǒng)的中樞,通過多種總線協(xié)議將各個功能部件的數(shù)據(jù)匯聚在網(wǎng)關(guān)內(nèi),再通過統(tǒng)一的接口傳輸給服務(wù)器,實現(xiàn)了智慧路燈功能的整體化。

      【關(guān)鍵詞】智慧路燈網(wǎng)關(guān);傳感器;以太網(wǎng);4G;智慧城市

      【中圖分類號】TU113.66 【文獻標識碼】A 【文章編號】1674-0688(2020)07-0070-03

      近年來,隨著物聯(lián)網(wǎng)技術(shù)、傳感器技術(shù)的發(fā)展,現(xiàn)代城市在發(fā)展的過程中提出了越來越多數(shù)字化、信息化的需求,智慧城市的概念深入人心。智慧城市的建設(shè)需要大量城市基礎(chǔ)數(shù)據(jù)的支撐,沒有這些基礎(chǔ)數(shù)據(jù)的支撐智慧城市的概念就是空中樓閣,因此如何獲取這些基礎(chǔ)數(shù)據(jù)成為建設(shè)智慧城市的關(guān)鍵問題之一。目前,很多智慧城市的建設(shè)中都使用路燈作為載體來為智慧城市的建設(shè)提供基礎(chǔ)數(shù)據(jù),原因有兩點:一是路燈作為城市的公共基礎(chǔ)設(shè)施分布在城市的各個角落,分布范圍廣,可以涵蓋城市的范圍。二是路燈本身具備良好的承載能力,燈桿上可以部署多種傳感設(shè)備。但是路燈上部署的充電樁、攝像頭、報警器、氣象站等設(shè)備分別屬于不同的廠家,這些設(shè)備之間數(shù)據(jù)不能互通、接口也各不相同,不能形成一個整體,因此在管理這些設(shè)備時,管理者往往需要操作多個管理平臺,效率低,增加了管理成本。對此,智慧路燈網(wǎng)關(guān)可以解決這個問題,智慧路燈網(wǎng)關(guān)在系統(tǒng)拓撲中是一個中間件,位于服務(wù)器平臺與傳感器之間,對上提供統(tǒng)一的管理接口,管理者只需要訪問網(wǎng)關(guān)設(shè)備就可以管理到各個傳感器,對下搜集和整理各個傳感器的數(shù)據(jù)按統(tǒng)一格式傳遞給服務(wù)器,啟動承上啟下的作用(如圖1所示)。

      智慧路燈網(wǎng)關(guān)的主控芯片使用的是“德州儀器”的AM3352芯片,使用的是Cortex-A8內(nèi)核,主頻為600 MHz,基于Linux系統(tǒng)進行開發(fā)。智慧路燈網(wǎng)關(guān)在功能上分為通信模塊、協(xié)議處理模塊、存儲模塊、外圍設(shè)備管理模塊4個部分。

      1 通信模塊

      通信模塊具備3個主要的功能,第一個主要功能是對通信接口進行管理,網(wǎng)關(guān)設(shè)備在硬件上提供了兩種不同的方式接入互聯(lián)網(wǎng),一是通過RJ45接口使用有線網(wǎng)絡(luò)接入互聯(lián)網(wǎng),二是通過4G模塊撥號上網(wǎng),以無線的方式接入互聯(lián)網(wǎng)。通信模塊對這兩種通信接口的管理方式如下:網(wǎng)關(guān)的Linux系統(tǒng)啟動完成初始化后,有線接口因為是零配置設(shè)備,所以首先配置為網(wǎng)關(guān)設(shè)備的默認通信接口,緊接著通信模塊會檢查Linux系統(tǒng)中是否注冊了4G模塊,以及是否插入了4G數(shù)據(jù)流量卡,如果兩個條件同時滿足通信模塊則啟動撥號流程,撥號成功后將4G模塊設(shè)置為系統(tǒng)默認的通信網(wǎng)卡,所有與外界的數(shù)據(jù)交互都通過4G網(wǎng)絡(luò)來實現(xiàn)。在網(wǎng)關(guān)設(shè)備運行的過程中,通信模塊還需要時刻監(jiān)控4G模塊的工作情況,因為4G模塊會因為一些情況而導(dǎo)致掉線,例如通信網(wǎng)絡(luò)的信號質(zhì)量差、欠費等。當(dāng)出現(xiàn)掉線的情況時,通信模塊應(yīng)當(dāng)及時重新?lián)芴?,以保證網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)通暢(如圖2所示)。

      通信模塊的第二個主要功能是實現(xiàn)網(wǎng)關(guān)設(shè)備與服務(wù)器之間的鏈路連接。網(wǎng)關(guān)與服務(wù)器之間采用MQTT協(xié)議進行通信,MQTT協(xié)議是一種由IBM公司提出的,基于發(fā)布/訂閱模型的通信協(xié)議。MQTT協(xié)議的設(shè)計精簡,可以提供實時可靠的通信服務(wù),并且針對資源有限的嵌入式設(shè)備及高延時、低吞吐量的網(wǎng)絡(luò)狀況做了優(yōu)化,因此非常適合于物聯(lián)網(wǎng)應(yīng)用,事實上目前很多物聯(lián)網(wǎng)設(shè)備、平臺都使用MQTT作為接入?yún)f(xié)議,比如阿里巴巴的物聯(lián)網(wǎng)平臺,百度的物聯(lián)網(wǎng)平臺、機智云,中國移動的物聯(lián)網(wǎng)平臺onenet等。此外,MQTT協(xié)議在Linux平臺下有很多開源的中間件,通過交叉編譯后就可以使用這些中間件,而不需要再做MQTT協(xié)議實現(xiàn),這樣在系統(tǒng)開發(fā)中可以把更多的時間和資源投入到業(yè)務(wù)處理中,節(jié)省了開發(fā)時間和資源。在網(wǎng)關(guān)設(shè)備的開發(fā)中,我們使用Mosquitto庫作為MQTT協(xié)議的中間件。在運行的過程中,我們會對4種MQTT事件提供回調(diào)函數(shù)以進行相應(yīng)的事件處理。一是連接成功事件,當(dāng)網(wǎng)關(guān)與服務(wù)器的MQTT服務(wù)程序成功連接后會觸發(fā)連接成功回調(diào)函數(shù),在回調(diào)函數(shù)中,程序首先會將網(wǎng)絡(luò)狀態(tài)置為連接,然后再訂閱相關(guān)的MQTT話題以接收服務(wù)器下發(fā)的指令。二是斷開連接事件,當(dāng)網(wǎng)關(guān)與服務(wù)器之間的狀態(tài)由連接變?yōu)閿嚅_時會觸發(fā)斷開連接回調(diào)函數(shù),在回調(diào)函數(shù)中,程序首先會將網(wǎng)絡(luò)狀態(tài)置為斷開,然后再發(fā)出連接請求。三是連接請求失敗事件,當(dāng)網(wǎng)關(guān)發(fā)出連接請求后,請求返回超時或者被服務(wù)器拒絕后會觸發(fā)連接請求失敗回調(diào)函數(shù),在回調(diào)函數(shù)中,程序會再次進行連接請求。四是收到訂閱數(shù)據(jù)事件,當(dāng)網(wǎng)關(guān)從訂閱的話題中收到數(shù)據(jù)時會觸發(fā)收到訂閱數(shù)據(jù)回調(diào)函數(shù),在回調(diào)函數(shù)中,程序會將收到的數(shù)據(jù)發(fā)送給協(xié)議處理模塊進行處理,并將協(xié)議處理模塊的處理結(jié)果返回給服務(wù)器。

      通信模塊的第三個主要功能是提供接口給其他的功能模塊,以實現(xiàn)其他功能模塊與服務(wù)器之間的數(shù)據(jù)交互。通信模塊對Mosquitto庫的原生API進行封裝,將MQTT協(xié)議的一些細節(jié)進行屏蔽,使得其他模塊在使用接口進行通信時只需要關(guān)心數(shù)據(jù)本身,提高了效率。

      2 協(xié)議處理模塊

      協(xié)議處理模塊是網(wǎng)關(guān)設(shè)備的核心模塊之一,用于處理網(wǎng)關(guān)與服務(wù)器之間的通信協(xié)議。網(wǎng)關(guān)與服務(wù)器之間的通信協(xié)議使用的是json格式,json是一種輕量級的數(shù)據(jù)交換格式,獨立于任何編程語言,采用文本格式存儲和表示數(shù)據(jù)。采用json格式作為通信協(xié)議的載體有以下幾個優(yōu)勢:①json格式的表示形式簡潔、可讀性強、邏輯層次清晰,類似于自然語言,便于開發(fā)人員閱讀和理解,具備自解釋的特質(zhì)。②json格式的擴展性強,便于后期對協(xié)議進行擴展。③json格式作為一種在計算機領(lǐng)域大量被應(yīng)用的格式,有很多開源編解碼庫,例如cJSON、fastjson、jansson、libjson等,這些開源庫有各自特點,比如cJSON是針對資源有限的嵌入式設(shè)備使用,資源占用少,可以使用在單片機平臺上,fastjson的解析速度快大多使用在服務(wù)器端。網(wǎng)關(guān)的json編解碼庫使用的是jansson。

      協(xié)議處理模塊收取從通信模塊發(fā)出的數(shù)據(jù)幀,首先對數(shù)據(jù)幀進行json格式的解碼,如果解析失敗則認為數(shù)據(jù)非法,退出協(xié)議處理流程,重新等待從通信模塊發(fā)出下一幀數(shù)據(jù),反之則從解析成功的json對象中提取如消息編碼、UUID碼、命令字等信息進行處理。協(xié)議處理模塊執(zhí)行完指令操作后會將相應(yīng)的執(zhí)行結(jié)果組織成json對象,再通過json編解碼庫解碼成字符串,發(fā)送給通信模塊,最終通過通信模塊將數(shù)據(jù)發(fā)送到服務(wù)器端。

      3 存儲模塊

      嵌入式設(shè)備在啟動時通常會需要一些參數(shù)進行初始化操作,同時在運行的過程中也經(jīng)常需要保存一些數(shù)據(jù)來記錄設(shè)備工作的狀態(tài)、發(fā)生的事件等,這些參數(shù)和數(shù)據(jù)都需要能做到掉電不丟失,因此會使用到存儲模塊。

      嵌入式設(shè)備在做數(shù)據(jù)存儲時,可以采用文件保存的方式,也可以使用數(shù)據(jù)庫的方式保存。使用文件保存方式時,操作簡單,但是可靠性不如數(shù)據(jù)庫,且數(shù)據(jù)的檢索、過濾、組織不如數(shù)據(jù)庫高效,適用于數(shù)據(jù)量不大、不多、不復(fù)雜的情況。

      智慧燈桿系統(tǒng)的網(wǎng)關(guān)使用sqlite3數(shù)據(jù)庫保存運行過程中需要使用到的參數(shù),以及在運行過程中產(chǎn)生的臨時數(shù)據(jù)。sqlite3數(shù)據(jù)庫是一種開源的、針對嵌入式設(shè)備的關(guān)系型數(shù)據(jù)庫,具有資源占用少、無服務(wù)器、支持Linux/Unix/Windows等多種主流操作系統(tǒng)的特點。在很多知名的嵌入式軟件中都使用到sqlite3數(shù)據(jù)庫,例如微信等。相較于使用文件存儲參數(shù)和臨時數(shù)據(jù)的方式,使用數(shù)據(jù)庫存儲具有數(shù)據(jù)存儲、刪除方便、可靠,數(shù)據(jù)檢索的功能強大、速度快等優(yōu)勢。sqlite3數(shù)據(jù)庫提供了C、java、python、PHP、Lua等多種語言的綁定,網(wǎng)關(guān)的程序開發(fā)使用的是C語言,因此選擇使用sqlite3的C語言綁定版本。存儲模塊作為一個通用基礎(chǔ)模塊會被通信模塊、協(xié)議處理模塊、外圍設(shè)備管理模塊調(diào)用。存儲模塊通過對sqlite3原生的API函數(shù)進行封裝,實現(xiàn)對數(shù)據(jù)庫增、刪、改、查的操作,并將屏蔽了sqlite3數(shù)據(jù)庫操作細節(jié)的接口提供給其他模塊使用,減少了其他模塊的工作量。

      4 外圍設(shè)備管理模塊

      智慧燈桿系統(tǒng)中部署有很多的傳感器外圍設(shè)備,例如微型環(huán)境氣象站用于采集環(huán)境的溫度、相對濕度、氣壓、PM2.5、風(fēng)向、紫外線、降雨量等氣象參數(shù),智能電表模塊用于采集當(dāng)前供電電網(wǎng)的電壓、電流、瞬時功率、電量等信息。這些外圍設(shè)備的特點為功能比較單一,只能夠采集特定參數(shù)信息,不具備主動將采集的信息上傳服務(wù)器的能力,在整體系統(tǒng)中只能作為從設(shè)備存在,這些外圍設(shè)備都配備了通信串口,支持通過Modbus協(xié)議進行采集數(shù)據(jù)的讀取及設(shè)備參數(shù)的設(shè)置。網(wǎng)關(guān)設(shè)備在整個智慧燈桿系統(tǒng)中是主設(shè)備,是管理者的角色。網(wǎng)關(guān)提供4路RS485總線接口和1路以太網(wǎng)接口用于連接外圍設(shè)備,并且通過Modbus協(xié)議對外圍設(shè)備進行管理。Modbus協(xié)議是一種工業(yè)上常用的串行通信協(xié)議,由施耐德公司于1979年提出,目的是為可編程邏輯控制器(PLC)提供可靠的通信服務(wù),目前已經(jīng)成為工業(yè)通信領(lǐng)域的業(yè)界標準。Modbus協(xié)議包含RTU、ASCII、TCP 3個子集,RTU、ASCII這兩個子集基本都使用在串口設(shè)備上,兩者的區(qū)別為RTU使用的是二進制通信,ASCII使用ASCII碼字符通信。TCP子集則使用在具備以太網(wǎng)通信能力的設(shè)備上。網(wǎng)關(guān)支持RTU、ASCII、TCP 3種Modbus協(xié)議子集的設(shè)備管理。環(huán)境傳感器示意圖如圖3所示。

      外圍設(shè)備管理模塊的工作流程如下:首先根據(jù)外圍設(shè)備的部署情況在網(wǎng)關(guān)中進行設(shè)備注冊,注冊時需要提供設(shè)備的型號、支持的協(xié)議類型(Modbus-RTU、Modbus-ASCII、Modbus-TCP)。如果設(shè)備是Modbus-RTU、Modbus-ASCII協(xié)議類型,需要提供設(shè)備串口的波特率、數(shù)據(jù)位寬、結(jié)束位寬、奇偶校驗類型等參數(shù)。如果設(shè)備是Modbus-TCP協(xié)議類型,需要提供設(shè)備的IP地址、端口號等信息。完成設(shè)備注冊后,網(wǎng)關(guān)會根據(jù)各個外圍設(shè)備的型號、協(xié)議類型、通信參數(shù)按照預(yù)設(shè)的輪詢周期去獲取各個外圍設(shè)備的采集數(shù)據(jù),并將獲取到的數(shù)據(jù)根據(jù)通信協(xié)議的要求進行打包封裝。封裝后的數(shù)據(jù)傳遞給通信模塊,通信模塊接收到數(shù)據(jù)后,會根據(jù)當(dāng)前的聯(lián)網(wǎng)狀態(tài)進行不同的處理措施,如果網(wǎng)關(guān)與服務(wù)器當(dāng)前處于連接狀態(tài)則直接將封裝好的數(shù)據(jù)發(fā)送給服務(wù)器;如果網(wǎng)關(guān)與服務(wù)器當(dāng)前處于斷開連接的狀態(tài)則將數(shù)據(jù)暫存在數(shù)據(jù)庫中,等待網(wǎng)關(guān)與服務(wù)器聯(lián)網(wǎng)后再將所有的暫存數(shù)據(jù)發(fā)送給服務(wù)器。

      外圍設(shè)備管理模塊除具備設(shè)備管理、設(shè)備數(shù)據(jù)讀取、設(shè)備數(shù)據(jù)上傳功能外,還具備數(shù)據(jù)的分析處理能力。外圍設(shè)備中有一些設(shè)備采集到的數(shù)據(jù)信息關(guān)系到智慧燈桿系統(tǒng)本身的運行穩(wěn)定性,如電網(wǎng)電壓的超壓、低壓信息、供電電流的過流信息等,有一些則關(guān)系到燈桿周圍人民群眾的人身安全,如水浸信息、漏電信息等。對于這些重要數(shù)據(jù),管理模塊會進行數(shù)據(jù)的分析比對,如果出現(xiàn)數(shù)據(jù)超過警告閾值的情況,則生成報警信息發(fā)送給服務(wù)器,提醒管理人員進行危險情況的處理和排查。

      通過智慧路燈網(wǎng)關(guān)系統(tǒng),我們成功地將智慧燈桿上的各個功能部件、傳感器結(jié)合成一個良好的整體,為智慧城市的管理者獲取城市的傳感數(shù)據(jù)、管理城市的智慧路燈提供了一個統(tǒng)一的管理接口,提高了效率,減少了管理成本,讓智慧路燈這些信息化設(shè)備更好地為智慧城市提供數(shù)據(jù)和服務(wù)。

      參 考 文 獻

      [1]黃貞升.百色市城市照明路燈現(xiàn)狀分析[J].企業(yè)科技與發(fā)展,2017(5):166-168.

      [2]吳超華,李云飛,嚴建峰.基于NB-IoT的路燈控制系統(tǒng)設(shè)計[J].現(xiàn)代電子技術(shù),2018(24):5-9.

      [3]張群.基于物聯(lián)網(wǎng)的智能路燈控制系統(tǒng)研究[J].建筑工程技術(shù)與設(shè)計,2018(5):22.

      猜你喜歡
      路燈網(wǎng)關(guān)服務(wù)器
      基于改進RPS技術(shù)的IPSEC VPN網(wǎng)關(guān)設(shè)計
      通信控制服務(wù)器(CCS)維護終端的設(shè)計與實現(xiàn)
      路燈
      啟蒙(3-7歲)(2018年12期)2018-12-13 02:03:48
      為什么高速公路上不用路燈照明
      得形忘意的服務(wù)器標準
      計算機網(wǎng)絡(luò)安全服務(wù)器入侵與防御
      LTE Small Cell網(wǎng)關(guān)及虛擬網(wǎng)關(guān)技術(shù)研究
      移動通信(2015年18期)2015-08-24 07:45:08
      應(yīng)對氣候變化需要打通“網(wǎng)關(guān)”
      太陽能(2015年7期)2015-04-12 06:49:50
      月亮和路燈
      一種實時高效的伺服控制網(wǎng)關(guān)設(shè)計
      常熟市| 寿阳县| 资兴市| 洪洞县| 边坝县| 开化县| 桓台县| 西盟| 罗江县| 遂昌县| 曲阜市| 教育| 博湖县| 新巴尔虎左旗| 屏边| 图们市| 五台县| 舞钢市| 沙坪坝区| 宜丰县| 郴州市| 清原| 横山县| 洪雅县| 留坝县| 安仁县| 陇南市| 璧山县| 塔城市| 湟中县| 临潭县| 措勤县| 翁牛特旗| 滦平县| 罗江县| 呼玛县| 恩平市| 紫云| 云浮市| 丹棱县| 佛教|