本發(fā)明涉及一種基于modbus擴展的智能設備和含有該智能設備的物聯(lián)網(wǎng)通信系統(tǒng)及其通信方法。
背景技術:
modbus協(xié)議是目前在工業(yè)控制領域應用非常廣泛的一種標準工業(yè)通信協(xié)議。modbus協(xié)議可以使各種智能設備與云端服務器等監(jiān)控設備之間互聯(lián)形成工業(yè)物聯(lián)網(wǎng),進而實現(xiàn)相互通信,從而實現(xiàn)對智能設備各種數(shù)據(jù)采集和監(jiān)控操作。
在modbus協(xié)議中,通信過程的發(fā)起者都為監(jiān)控設備,即監(jiān)控設備為主站(master),智能設備為從站(slave),主站需要跟從站建立tcp連接,每次操作都要主站發(fā)起詢問,從站才上報信息,從站只能被動的等待主站的指令。例如,當作為主站的監(jiān)控設備需要獲悉工廠中某一個智能設備x的溫度數(shù)據(jù)時,監(jiān)控設備就要發(fā)送指令去輪詢工廠中的智能設備x,智能設備x接收到該指令后將相應的溫度數(shù)據(jù)上報給監(jiān)控設備。
在上述過程中,主站需要知道從站的ip地址,而在物聯(lián)網(wǎng)場景下,從站一般位于內(nèi)部網(wǎng)絡,互聯(lián)網(wǎng)上的主站無法連接從站;同時,由于工業(yè)網(wǎng)絡中智能設備往往數(shù)量眾多,每個設備的數(shù)據(jù)也可能很多,輪詢密度也可能很大,這種輪詢的工作方式,智能設備和監(jiān)控設備的工作負荷很重,需要的很大的網(wǎng)絡帶寬,操作時延很大,導致數(shù)據(jù)上報滯后,影響實時性,降低了監(jiān)控設備接入智能設備的容量,,而這種高負載、高帶寬的工作方式也會影響整個系統(tǒng)通信過程的穩(wěn)定性和可靠性。
modbus協(xié)議原來是工廠內(nèi)部的通信協(xié)議,用于物聯(lián)網(wǎng)中云端通信時,由于modbus協(xié)議傳輸?shù)臄?shù)據(jù)沒有認證和加密,必然帶來安全問題。
技術實現(xiàn)要素:
本發(fā)明是為了解決上述問題而進行的,目的在于提供一種基于modbus擴展的智能設備和含有該智能設備的物聯(lián)網(wǎng)通信系統(tǒng)及其通信方法,能夠簡化數(shù)據(jù)上報過程,保證上報信息的實時性,并使通信過程變得穩(wěn)定和可靠。
本發(fā)明提供了一種基于modbus擴展的智能設備,其特征在于,具有:設備信息獲取部,基于信息獲取規(guī)則至少獲取設備數(shù)據(jù)信息;信息存儲部,存儲設備數(shù)據(jù)信息;上報信息獲取部,基于信息上報規(guī)則,從信息存儲部中獲取相應的設備數(shù)據(jù)信息作為待上報信息;以及通信部,無需根據(jù)監(jiān)控終端的上報指令,主動將待上報信息發(fā)送給監(jiān)控終端。
本發(fā)明提供的基于modbus擴展的智能設備還可以具有這樣的特征:智能設備為設備終端和網(wǎng)關設備中的任意一種。
本發(fā)明提供的基于modbus擴展的智能設備還可以具有:連接部,用于主動發(fā)起和建立到監(jiān)控終端的tcp/ip連接。
本發(fā)明提供的基于modbus擴展的智能設備還可以具有:認證信息存儲部,存儲有智能設備的接入帳號、密碼、以及設備標識,其中,通信部在tcp/ip連接被建立后,將接入帳號、密碼以及設備標識發(fā)送給監(jiān)控終端進行認證和識別。
本發(fā)明提供的基于modbus擴展的智能設備還可以具有:認證信息存儲部,存儲有智能設備的接入帳號和密碼,讓監(jiān)控終端在tcp/ip連接被建立后,由監(jiān)控終端通過modbus協(xié)議從智能設備中讀取接入帳號和密碼。設備標識、接入帳號和密碼、ssl/tls傳輸層加密協(xié)議的引入,解決了監(jiān)控終端和智能設備的標識、認證和數(shù)據(jù)傳輸安全。
本發(fā)明提供的基于modbus擴展的智能設備還可以具有這樣的特征:信息上報規(guī)則為將設備數(shù)據(jù)信息按照設定周期進行上報的周期性上報規(guī)則、按指定時間(如cron表達式)進行上報的定時上報規(guī)則和在設備數(shù)據(jù)信息發(fā)生變化時進行上報的變化上報規(guī)則中的任意一種。
本發(fā)明提供的基于modbus擴展的智能設備,還可以具有:上報規(guī)則設定部,讓操作員設定信息上報規(guī)則;和上報規(guī)則存儲部,對設定好的信息上報規(guī)則進行存儲。
<物聯(lián)網(wǎng)通信系統(tǒng)>
本發(fā)明還提供了一種基于modbus擴展的物聯(lián)網(wǎng)通信系統(tǒng),其特征在于,具有:監(jiān)控終端;至少一個智能設備,基于擴展的modbus協(xié)議與監(jiān)控終端進行通信,其中,智能設備為上述<智能設備>種所描述的智能設備。
<物聯(lián)網(wǎng)通信方法>
本發(fā)明還提供了一種基于modbus擴展的物聯(lián)網(wǎng)通信方法,實現(xiàn)智能設備與監(jiān)控終端進行通信,其特征在于,包括以下步驟:設備數(shù)據(jù)信息獲取步驟,智能設備基于信息獲取規(guī)則至少獲取設備數(shù)據(jù)信息;設備數(shù)據(jù)信息存儲步驟,智能設備對獲取到的設備數(shù)據(jù)信息進行存儲;上報信息獲取步驟,智能設備基于信息上報規(guī)則,獲取相應的設備數(shù)據(jù)信息作為待上報信息;數(shù)據(jù)上報步驟,智能設備將待上報信息作為上報信息主動上報給監(jiān)控終端;以及數(shù)據(jù)接收步驟,監(jiān)控終端接收上報信息,其中,在數(shù)據(jù)上報步驟中,智能設備上報上報信息無需根據(jù)監(jiān)控終端的上報指令。
本發(fā)明提供的基于modbus擴展的物聯(lián)網(wǎng)通信方法還可以具有:連接步驟,智能設備基于主動發(fā)起和建立到監(jiān)控終端的tcp/ip連接;和認證步驟,監(jiān)控終端在tcp/ip連接被建立后,根據(jù)智能設備中存儲的接入帳號、密碼、以及設備標識對該智能設備進行認證和識別。
本發(fā)明提供的基于modbus擴展的物聯(lián)網(wǎng)通信方法,其特征在于:監(jiān)控終端和智能設備之間的數(shù)據(jù)傳輸通過ssl/tls等技術進行加密和數(shù)據(jù)完整性保證,同時,智能設備通過監(jiān)控終端發(fā)送的公鑰可以對監(jiān)控終端進行認證,保證智能設備連接到合法的監(jiān)控終端。
發(fā)明的作用與效果
根據(jù)本發(fā)明對modbus協(xié)議擴展而構(gòu)成的智能設備、物聯(lián)網(wǎng)通信系統(tǒng)及物聯(lián)網(wǎng)通信方法,使得智能設備(從站)可以主動連接位于互聯(lián)網(wǎng)上的監(jiān)控終端(主站),從而讓智能設備可以通過modbus協(xié)議跟監(jiān)控終端連網(wǎng);智能設備主動上報或者監(jiān)控終端通過modbus命令從智能設備查詢的設備標識、接入帳號和密碼解決了監(jiān)控終端對智能設備的識別和認證問題,而ssl/tls鏈路層加密協(xié)議的引入,解決了智能設備對監(jiān)控終端的認證和雙方數(shù)據(jù)傳輸安全;因為上報信息獲取部能夠基于信息上報規(guī)則,從數(shù)據(jù)存儲部中獲取相應的設備數(shù)據(jù)信息作為待上報信息,并且通信部能夠主動將待上報信息發(fā)送給監(jiān)控終端,而無需等待監(jiān)控終端的查詢指令來執(zhí)行上報,智能設備可以主動向監(jiān)控終端通過定時、周期性、數(shù)據(jù)變化時等多種方式主動上報數(shù)據(jù),降低了系統(tǒng)負載、減少了傳輸帶寬占用、縮短數(shù)據(jù)傳輸時延,監(jiān)控數(shù)據(jù)更加實時和準確。
附圖說明
圖1是本發(fā)明的實施例中物聯(lián)網(wǎng)通信系統(tǒng)的結(jié)構(gòu)示意圖;
圖2是本發(fā)明的實施例中智能設備的結(jié)構(gòu)框圖;
圖3是本發(fā)明的實施例中監(jiān)控終端的結(jié)構(gòu)框圖;
圖4是本發(fā)明的實施例中物聯(lián)網(wǎng)通信系統(tǒng)的流程圖一;以及
圖5是本發(fā)明的實施例中物聯(lián)網(wǎng)通信系統(tǒng)的流程圖二。
具體實施方式
為了使本發(fā)明實現(xiàn)的技術手段、創(chuàng)作特征、達成目的與功效易于明白了解,以下實施例結(jié)合附圖對本發(fā)明的基于modbus擴展的智能設備、物聯(lián)網(wǎng)通信系統(tǒng)以及物聯(lián)網(wǎng)通信方法作具體闡述。
<實施例>
圖1是本發(fā)明的實施例中物聯(lián)網(wǎng)通信系統(tǒng)的結(jié)構(gòu)示意圖。
如圖1所示,物聯(lián)網(wǎng)通信系統(tǒng)10包括多個基于擴展的modbus協(xié)議的智能設備20和一個監(jiān)控終端30。
本實施例中,每個智能設備20都可以為工廠中使用的各種生產(chǎn)設備、制造設備、或者加工設備等任意一種設備終端。
圖2是本發(fā)明的實施例中智能設備的結(jié)構(gòu)框圖。
如圖2所示,每個智能設備20具有連接部21、設備側(cè)認證信息存儲部22、設備側(cè)通信部23、設備信息獲取部24、設備側(cè)信息存儲部25、上報規(guī)則設定部26、上報規(guī)則存儲部27、上報信息獲取部28、設備側(cè)暫存部29、設備主體部210以及設備側(cè)控制部211。
又如圖1所示,本實施例中,監(jiān)控終端30為云端服務器,它通過通信網(wǎng)絡40與智能設備20相通信連接,這里,通信網(wǎng)絡40可以采用局域網(wǎng)、城域網(wǎng)、廣域網(wǎng)和互聯(lián)網(wǎng)中的任意一種,本實施例中,采用的是互聯(lián)網(wǎng)。
圖3是本發(fā)明的實施例中監(jiān)控終端的結(jié)構(gòu)框圖。
如圖3所示,監(jiān)控終端30具有監(jiān)控側(cè)認證信息存儲部31、監(jiān)控側(cè)通信部32、檢索獲取部33、判斷部34、監(jiān)控側(cè)數(shù)據(jù)信息存儲部35、監(jiān)控側(cè)暫存部36以及監(jiān)控側(cè)控制部37。
又如圖2所示,連接部21用于主動發(fā)起和建立到監(jiān)控終端30的tcp/ip連接。連接部21包括:地址存儲單元21-1、主動連接單元21-2以及管理維護單元21-3。地址存儲單元21-1存儲有監(jiān)控終端30的ip地址。主動連接單元21-2用于根據(jù)監(jiān)控終端30的ip地址在入網(wǎng)時主動發(fā)起和建立到監(jiān)控終端30的tcp/ip連接。管理維護單元21-3用于對tcp/ip連接進行管理,并在連接中斷時重新發(fā)起和建立tcp/ip連接,從而對該連接進行維護。
設備側(cè)認證信息存儲部22存儲有智能設備20的設備標識、接入帳號和密碼。
設備側(cè)通信部23在tcp/ip連接被建立后,將設備標識、接入帳號和密碼發(fā)送給監(jiān)控終端30進行認證和識別。
監(jiān)控側(cè)認證信息存儲部31存儲有允許進行主動上報的所有智能設備20的設備標識、接入帳號和設備密碼。
監(jiān)控側(cè)通信部32接收發(fā)送來的設備標識、接入帳號和密碼。
檢索獲取部33根據(jù)接收到的設備接入帳號從監(jiān)控側(cè)認證信息存儲部31中檢索出相對應的設備密碼。
判斷部34對設備密碼與接收到的密碼是否一致進行判斷。
在判斷結(jié)果為一致的情況下,智能設備20能夠被監(jiān)控終端30認證,并進一步通過設備標識知道當前接入的是哪一個智能設備20,從而被允許其主動上報信息,即、監(jiān)控終端30能夠?qū)χ悄茉O備20進行識別并接收智能設備20主動上報的數(shù)據(jù);在判斷結(jié)果為不一致的情況下,智能設備20不被監(jiān)控終端30認證,即、監(jiān)控終端30不能夠被監(jiān)控終端30識別,因此監(jiān)控終端30不接收智能設備20主動上報的數(shù)據(jù)。
設備信息獲取部24基于信息獲取規(guī)則獲取設備數(shù)據(jù)信息,這里,設備數(shù)據(jù)信息為采集到的數(shù)據(jù)項的當前值。本實施例中,信息獲取規(guī)則為按照預定周期采集各種數(shù)據(jù)項的當前值,并每個當前值作為一個設備數(shù)據(jù)信息。
設備側(cè)信息存儲部25存儲設備數(shù)據(jù)信息和設備版本信息。
上報規(guī)則設定部26讓操作員設定信息上報規(guī)則。信息上報規(guī)則可以為將設備數(shù)據(jù)信息按照設定周期進行上報的周期性上報規(guī)則和在設備數(shù)據(jù)信息發(fā)生變化時進行上報的變化上報規(guī)則中的至少一種。本實施例中,信息上報規(guī)則為變化上報規(guī)則。
上報規(guī)則存儲部27對設定好的信息上報規(guī)則進行存儲。
上報信息獲取部28基于信息上報規(guī)則,從設備側(cè)信息存儲部25中獲取相應的設備數(shù)據(jù)信息作為待上報信息。例如,信息上報規(guī)則包含有:將當前溫度值與之前上報的溫度值相比較,發(fā)生變化時才進行上報。根據(jù)該規(guī)則,上報信息獲取部28在溫度值一直維持不變的情況下,不獲取任何設備數(shù)據(jù)信息,只在溫度值發(fā)生變化的情況下,獲取變化后的溫度值作為待上報信息。
通信部28在上報信息獲取部28獲取到待上報信息后,主動將待上報信息作為上報信息發(fā)送給監(jiān)控終端30。
監(jiān)控側(cè)通信部32對發(fā)送來的上報信息進行接收。
監(jiān)控側(cè)數(shù)據(jù)信息存儲部24對上報信息和設備標識進行對應存儲。
在本實施例中,為了保證信息能夠被安全可靠地傳輸,是采用ssl/tls協(xié)議對實現(xiàn)上述信息傳輸?shù)膫鬏攲舆M行加密的。
設備側(cè)暫存部29用于暫時儲存智能設備20的各個組成部分之間以及智能設備20與監(jiān)控終端30之間所交換的信息。
控側(cè)暫存部36用于暫時儲存監(jiān)控終端30的各個組成部分之間以及監(jiān)控終端30與智能設備20之間所交換的信息。
用戶側(cè)暫存部43用于暫時儲存用戶終端40的各個組成部分之間以及用戶終端40與云端服務器50之間所交換的信息。
服務側(cè)暫存部59用于暫時儲存服務側(cè)暫存部59的各個組成部分之間以及云端服務器50與設備終端20、商戶終端30以及用戶終端40之間所交換的信息。
連接部21、設備側(cè)認證信息存儲部22、設備側(cè)通信部23、設備信息獲取部24、設備側(cè)信息存儲部25、上報規(guī)則設定部26、上報規(guī)則存儲部27、上報信息獲取部28、設備側(cè)暫存部29、設備側(cè)控制部211都被集成在設備主體部210中。
設備側(cè)控制部211用于控制連接部21、設備側(cè)認證信息存儲部22、設備側(cè)通信部23、設備信息獲取部24、設備側(cè)信息存儲部25、上報規(guī)則設定部26、上報規(guī)則存儲部27、上報信息獲取部28、設備側(cè)暫存部29以及設備主體部210的運行。
監(jiān)控側(cè)控制部37用于控制監(jiān)控側(cè)認證信息存儲部31、監(jiān)控側(cè)通信部32、檢索獲取部33、判斷部34、監(jiān)控側(cè)數(shù)據(jù)信息存儲部35以及監(jiān)控側(cè)暫存部36的運行。下面結(jié)合動作流程圖來詳細闡述物聯(lián)網(wǎng)通信系統(tǒng)的通信方法。
圖4是本發(fā)明的實施例中物聯(lián)網(wǎng)通信系統(tǒng)的流程圖一。
如圖4所示,在本實施例的物聯(lián)網(wǎng)通信系統(tǒng)10中,智能設備20和監(jiān)控終端30的連接及認證過程包括如下步驟:
步驟s1-1:
連接部21主動發(fā)起和建立到監(jiān)控終端30的tcp/ip連接,然后進入步驟s1-2;
步驟s1-2:
設備側(cè)通信部23將設備標識、接入帳號和密碼發(fā)送給監(jiān)控終端30,然后進入步驟s1-3;
步驟s1-3:
監(jiān)控側(cè)通信部32接收發(fā)送來的設備接入帳號和密碼,然后進入步驟s1-4;
步驟s1-4:
檢索獲取部33根據(jù)接收到的設備接入帳號從監(jiān)控側(cè)認證信息存儲部31中檢索出相對應的設備密碼,然后進入步驟s1-5;
步驟s1-5:
判斷部34對設備密碼與接收到的密碼是否一致進行判斷,并在判斷結(jié)果為是的情況下進入步驟s1-6,否則進入步驟7;
步驟s1-6:
智能設備20被監(jiān)控終端30認證,通過設備標識知道當前接入的是哪一個設備,并將設備標識和tcp連接做對應存儲,然后進入結(jié)束狀態(tài);
步驟s1-7:
智能設備20不被監(jiān)控終端30認證,然后進入結(jié)束狀態(tài)。
至此,完成一次連接及認證流程。
圖5是本發(fā)明的實施例中物聯(lián)網(wǎng)通信系統(tǒng)的流程圖二。
如圖5所示,在本實施例的物聯(lián)網(wǎng)通信系統(tǒng)10中,數(shù)據(jù)上報的過程包括如下步驟:
步驟s2-1:
設備信息獲取部24基于信息獲取規(guī)則獲取設備數(shù)據(jù)信息項的當前值作為設備數(shù)據(jù)信息,然后進入步驟s2-2;
步驟s2-2:
上報信息獲取部28基于信息上報規(guī)則,從設備側(cè)信息存儲部25中獲取相應的設備數(shù)據(jù)信息作為待上報信息,然后進入步驟s2-3;
步驟s2-3:
通信部28主動將待上報信息作為上報信息發(fā)送給監(jiān)控終端30,然后進入步驟s2-4;
步驟s2-4:
監(jiān)控側(cè)通信部32對發(fā)送來的上報信息進行接收,然后進入步驟s2-5;
步驟s2-5:
監(jiān)控側(cè)數(shù)據(jù)信息存儲部24對上報信息進行對應存儲,然后進入結(jié)束狀態(tài)。
至此,完成一次數(shù)據(jù)上報流程。
實施例的作用與效果
根據(jù)本實施例的對modbus協(xié)議擴展而構(gòu)成的智能設備、物聯(lián)網(wǎng)通信系統(tǒng)以及物聯(lián)網(wǎng)通信方法,因為上報信息獲取部能夠基于信息上報規(guī)則,從數(shù)據(jù)存儲部中獲取相應的設備數(shù)據(jù)信息作為待上報信息,并且通信部能夠主動將待上報信息發(fā)送給監(jiān)控終端,而無需等待監(jiān)控終端的上報指令來執(zhí)行上報,讓智能設備也能夠主動上報數(shù)據(jù),從而簡化了整個數(shù)據(jù)上報過程,減少了監(jiān)控終端的操作,使得數(shù)據(jù)能夠更加實時和高效的到達監(jiān)控終端,也節(jié)省了網(wǎng)絡帶寬,減輕監(jiān)控終端運行壓力,擴大監(jiān)控終端接入能力。并且降低資源消耗,減輕系統(tǒng)負荷,充分提高通訊的穩(wěn)定性和可靠性。本方案實現(xiàn)了監(jiān)控終端和智能設備之間的雙向操作,從而也進一步增強了modbus協(xié)議。
另外,由于本實施例中,信息上報規(guī)則為在設備數(shù)據(jù)信息發(fā)生變化時進行上報的變化上報規(guī)則,因此能夠進一步降低資源消耗,減輕系統(tǒng)負荷。
綜上,本實施例所提供的方案,擴展了modbus通信協(xié)議,讓從站主動跟主站建立tcp/ip連接,解決從站沒有互聯(lián)網(wǎng)ip地址,主站無法跟從站連立tcp/ip連接的問題;引入ssl/tls傳輸層加密協(xié)議,讓從站可以認證主站,避免從站連接到不正確的主站,引起安全問題,同時對傳輸?shù)臄?shù)據(jù)進行加密和完整性保證;為從站分配設備標識、接入帳號和密碼,從站在連接建立后向主站發(fā)送設備標識、接入帳號和密碼,或者由主站通過modbus協(xié)議主動從從站中查詢設備標識、接入帳號和密碼,完成主站對從站的標識和認證,防止非法從站接入到主站;增加從站主動上報數(shù)據(jù)到主站的命令接口,除主站可以輪詢從站數(shù)據(jù)外,從站也可以主動向主站上報數(shù)據(jù),周期上報、定時上報或者變化上報,解決輪詢帶來的高時延、低吞吐量、高帶寬問題。
上述實施例為本發(fā)明的優(yōu)選案例,并不用來限制本發(fā)明的保護范圍。
在上實施例中,智能設備僅對設備數(shù)據(jù)信息進行獲取和主動上報,在本發(fā)明中,根據(jù)實際情況的需要,還可以對其它設備信息進行獲取和主動上報,例如,設備版本信息,可以每隔一個月檢查一次智能設備所使用的軟件的當前版本,并將當前版本和要求更新的請求作為設備版本信息主動上報給監(jiān)控終端,從而實現(xiàn)主動升級?;蛘咧鲃釉儐栔髡咀钚碌陌姹臼嵌嗌?,然后要求把最新版本發(fā)來,然后進行主動升級。
另外,在上述實施例中,是以設備終端為例來對智能設備進行說明的。本發(fā)明中,網(wǎng)關設備作為智能設備也能夠?qū)崿F(xiàn)主動將設備終端發(fā)送來的例如設備數(shù)據(jù)信息上報給監(jiān)控終端,在這種情況下,網(wǎng)關設備中的設備信息獲取部就是直接獲取設備終端發(fā)送來的設備數(shù)據(jù)信息。
另外,在上述實施例中,監(jiān)控終端是云端處理器,本發(fā)明中,監(jiān)控終端還可以是監(jiān)控員所使用的pc機等監(jiān)控設備。另外,在上述實施例中,是采用ssl/tls協(xié)議來對傳輸層進行加密的,本發(fā)明中,還可以采用其它加密方法,只要能確保信息傳輸過程的安全性和可靠性,并且不改變modbus應用層協(xié)議即可。
另外,在上述實施例中,智能設備是在tcp/ip連接被建立后,將設備標識、接入帳號和密碼發(fā)送給監(jiān)控終端進行識別和認證的。本發(fā)明的認證方式還可以為:讓監(jiān)控終端在tcp/ip連接被建立后,直接從智能設備中讀取存儲好的設備標識、接入帳號和密碼,然后再進行檢索和判斷,從而完成識別和認證過程。例如,在智能設備的寄存器中存入設備標識、接入帳號和密碼,連接建立后監(jiān)控終端主動從智能設備中指定的寄存器中讀取,完成智能設備的識別和認證。
另外,在上述實施例中,設備終端作為智能設備,能夠基于擴展的modbus通信協(xié)議與監(jiān)控終端進行通信。本發(fā)明中,還可以采用網(wǎng)關設備作為智能設備,其它外接設備(例如,生產(chǎn)設備、制造設備、或者加工設備等)通過標準的modbus協(xié)議(未擴展)與網(wǎng)關設備相通信,再由網(wǎng)關設備通過擴展的modbus協(xié)議與監(jiān)控終端相通信,這樣也可以獲得以上實施例的作用與效果。