欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于協(xié)議配置的通訊方法與流程

文檔序號:11263550閱讀:344來源:國知局
一種基于協(xié)議配置的通訊方法與流程

本發(fā)明屬于工業(yè)自動化領(lǐng)域,為一種通訊方法,尤其涉及一種基于協(xié)議配置的通訊方法。



背景技術(shù):

在工業(yè)自動化領(lǐng)域,由于現(xiàn)場使用的儀表/控制器的品牌型號各不相同,使得在對儀表/控制器參數(shù)的讀取時需要匹配不同的總線或者協(xié)議。傳統(tǒng)的儀表/控制器數(shù)據(jù)監(jiān)測或采集系統(tǒng)數(shù)據(jù)時,為了適應(yīng)各種類型的總線或者協(xié)議,需要定制不同的固件。此情況不僅提高了開發(fā)的復(fù)雜度,增加了維護(hù)成本,同時也加大了現(xiàn)場數(shù)據(jù)采集器的難度。同樣對于工業(yè)自動化以外的其他領(lǐng)域,也會存在千差萬別的通訊協(xié)議。

專利申請?zhí)枮閏n201510476097.8的“一種基于協(xié)議配置的機(jī)車顯示設(shè)備數(shù)據(jù)通信方法”,公開了一種通信方法:1)獲取當(dāng)前數(shù)據(jù)通信協(xié)議格式進(jìn)行協(xié)議配置,即將當(dāng)前數(shù)據(jù)通信協(xié)議格式中接收數(shù)據(jù)、發(fā)送數(shù)據(jù)所對應(yīng)的協(xié)議信息作為配置信息,并分別存儲至輸入配置文件、輸出配置文件中;2)當(dāng)機(jī)車顯示設(shè)備接收到數(shù)據(jù)時,根據(jù)輸入配置文件將接收到的數(shù)據(jù)進(jìn)行數(shù)據(jù)解析,輸出解析后的數(shù)據(jù);當(dāng)機(jī)車顯示設(shè)備發(fā)送數(shù)據(jù)時,根據(jù)輸出配置文件進(jìn)行數(shù)據(jù)發(fā)送;專利申請?zhí)枮閏n201510735688.2的“一種基于協(xié)議配置的通用測試系統(tǒng)及測試方法”,公開了一種測試系統(tǒng):包含有對所有被測產(chǎn)品的測試用例通用測試環(huán)境、與被測產(chǎn)品進(jìn)行數(shù)據(jù)通信的發(fā)送數(shù)據(jù)協(xié)議和接收數(shù)據(jù)協(xié)議、以及定義環(huán)境參數(shù)與數(shù)據(jù)名稱這間對應(yīng)關(guān)系的信號映射表;還公開了一種測試方法:根據(jù)被測產(chǎn)品配置發(fā)送數(shù)據(jù)協(xié)議、接收數(shù)據(jù)協(xié)議及信號映射表過程;通用測試環(huán)境根據(jù)發(fā)送數(shù)據(jù)協(xié)議及信號映射表生成固定格式發(fā)送數(shù)據(jù)包,發(fā)送至被測產(chǎn)品的過程;以及通用測試環(huán)境根據(jù)接收數(shù)據(jù)協(xié)議和信號映射表,讀取接收數(shù)據(jù)包的過程,兩者均未在不更新固件的情況下實現(xiàn)對不同協(xié)議的數(shù)據(jù)采集以解決現(xiàn)場協(xié)議不匹配的問題,無法保證配置方式的通用性。

目前,尚未見到一種基于協(xié)議配置的通訊方法,不更新固件,來解決與各種不同協(xié)議現(xiàn)場設(shè)備的通訊問題。



技術(shù)實現(xiàn)要素:

本發(fā)明的目的在于克服現(xiàn)有技術(shù)存在的以上問題,提供一種基于協(xié)議配置的通訊方法,可適用于對不同的協(xié)議儀表進(jìn)行數(shù)據(jù)采集,而無需修改其固件,即可實現(xiàn)通訊,提高了產(chǎn)品的適應(yīng)性,解決了現(xiàn)場協(xié)議不匹配的問題。

為實現(xiàn)上述技術(shù)目的,達(dá)到上述技術(shù)效果,本發(fā)明通過以下技術(shù)方案實現(xiàn):

一種基于協(xié)議配置的通訊方法,所述方法包括以下步驟:

步驟一:服務(wù)器端將命令配置消息發(fā)送至設(shè)備端,該命令配置消息包括命令號、協(xié)議名稱、命令屬性、解析屬性和命令消息;

步驟二:設(shè)備端接收到命令配置消息后,形成配置應(yīng)答消息反饋至服務(wù)器端;

步驟三:設(shè)備端將交互設(shè)備的返回消息進(jìn)行組裝并將組裝后的數(shù)據(jù)包發(fā)送給服務(wù)器端;

步驟四:服務(wù)器端接收到組裝后的數(shù)據(jù)包后進(jìn)行解析,解析完成后形成應(yīng)答消息反饋至設(shè)備端。

進(jìn)一步地,所述步驟二的具體步驟如下:

s201:設(shè)備端接收到命令配置消息后,首先判斷數(shù)據(jù)是否發(fā)送完成,如果發(fā)送完成則進(jìn)入步驟三,否則進(jìn)入步驟s202;

s202:保存命令配置消息中的協(xié)議名稱;

s203:保存命令配置消息中的解析屬性;

s204:根據(jù)命令配置消息中的命令屬性執(zhí)行相應(yīng)操作;

s205:返回步驟s201。

進(jìn)一步地,所述步驟s204具體包括以下步驟:

s2041:若命令屬性為讀寫,則發(fā)送命令消息給需要進(jìn)行交互的設(shè)備,否則進(jìn)入步驟2042;

s2042:若命令屬性為刪除,則刪除命令消息,否則進(jìn)入步驟s2043;

s2043:返回步驟s201。

進(jìn)一步地,所述步驟三的具體步驟如下:

s301:首先判斷是否組裝結(jié)束,如果組裝結(jié)束則進(jìn)入步驟四,否則進(jìn)入步驟s302;

s302:繼續(xù)接收交互設(shè)備的返回消息,依據(jù)協(xié)議名稱的類型判斷是否需要對數(shù)據(jù)進(jìn)行檢查,如果需要則進(jìn)入步驟s303,否則進(jìn)入步驟s304;

s303:根據(jù)解析屬性進(jìn)行校驗,如果校驗通過則進(jìn)入步驟s304,否則返回步驟s301;

s304:將返回消息的組裝數(shù)據(jù)保存到緩存區(qū);

s305:返回步驟s301。

進(jìn)一步地,所述步驟四的具體步驟如下:

s401:首先判斷服務(wù)器端是否解析完成,如果解析完成,則形成應(yīng)答消息反饋至設(shè)備端,否則進(jìn)入步驟s402;

s402:根據(jù)協(xié)議名稱的類型執(zhí)行數(shù)據(jù)完整性校驗,如果校驗通過則進(jìn)入步驟s403,否則返回步驟s401;

s403:根據(jù)協(xié)議對命令消息的內(nèi)容進(jìn)行解析;

s404:將解析后的結(jié)果保存到數(shù)據(jù)庫中;

s405:返回步驟s401。

本發(fā)明的有益效果是:

1、本發(fā)明保證了服務(wù)器配置方式的通用性,支持任何類型命令的配置;

2、本發(fā)明保證了底層設(shè)備固件的單一性,底層設(shè)備的具體執(zhí)行方式、執(zhí)行內(nèi)容由服務(wù)器配置決定;

3、本發(fā)明為現(xiàn)場調(diào)試提供接口,只需要將解析屬性設(shè)置為直接返回便可以觀察分析現(xiàn)場原始數(shù)據(jù)內(nèi)容;

4、本發(fā)明的配置方法不僅僅可以應(yīng)用于工業(yè)自動化行業(yè),適用于任何需要讀寫交互的行業(yè)。

附圖說明

此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:

圖1是本發(fā)明中服務(wù)器端與設(shè)備端的交互示意圖;

圖2是本發(fā)明中命令幀結(jié)構(gòu)示意圖;

圖3是本發(fā)明中步驟二流程示意圖;

圖4是本發(fā)明中步驟三流程示意圖;

圖5是本發(fā)明中步驟四流程示意圖。

具體實施方式

下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護(hù)的范圍。

如圖1所示,當(dāng)設(shè)備安裝到現(xiàn)場時,根據(jù)現(xiàn)場情況進(jìn)行協(xié)議配置,首先服務(wù)器端將命令配置信息發(fā)送給設(shè)備端進(jìn)行協(xié)議配置,在協(xié)議配置完成后,設(shè)備端返回配置成功或者失敗的狀態(tài),當(dāng)配置成功后,設(shè)備端主動將交互設(shè)備的數(shù)據(jù)上報給服務(wù)器,服務(wù)器端再對數(shù)據(jù)進(jìn)行解析,并返回應(yīng)答消息,只有當(dāng)現(xiàn)場交互設(shè)備發(fā)生改變后,才會進(jìn)行重新配置。

服務(wù)器端負(fù)責(zé)將命令組裝成命令幀結(jié)構(gòu)下發(fā)給設(shè)備端,并對設(shè)備返回的數(shù)據(jù)解析,解析后返回接收數(shù)據(jù)應(yīng)答,并對接收到的消息進(jìn)行展示;設(shè)備端負(fù)責(zé)對來自服務(wù)器端的配置信息進(jìn)行解析并將命令內(nèi)容發(fā)送給需要進(jìn)行交互的設(shè)備,以及對交互設(shè)備的返回消息進(jìn)行組裝并發(fā)送給服務(wù)器端。

一種基于協(xié)議配置的通訊方法,具體包括以下步驟:

步驟一:服務(wù)器端將命令配置消息發(fā)送至設(shè)備端,如圖2所示,該命令配置消息為定義的命令幀結(jié)構(gòu),主要包括命令號、協(xié)議名稱、命令屬性、解析屬性和命令消息,其中命令號指明當(dāng)前消息為哪條命令,用于支持多條命令的下發(fā),協(xié)議名稱可以為已知的或者未知的通訊協(xié)議,如modbus-rtu,tcp/ip,儀表自定義命令等等,命令屬性可以為讀操作、寫操作、刪除操作等,解析屬性可以為crc-16檢查等,命令消息的內(nèi)容為具體的通訊數(shù)據(jù)幀;

步驟二:設(shè)備端接收到命令配置消息后,形成配置應(yīng)答消息反饋至服務(wù)器端,如圖3所示,具體步驟如下:

s201:設(shè)備端接收到命令配置消息后,首先判斷數(shù)據(jù)是否發(fā)送完成,如果發(fā)送完成則進(jìn)入步驟三,否則進(jìn)入步驟s202;

s202:保存命令配置消息中的協(xié)議名稱;

s203:保存命令配置消息中的解析屬性;

s204:根據(jù)命令配置消息中的命令屬性執(zhí)行相應(yīng)操作;

步驟s204具體包括以下步驟:

s2041:若命令屬性為讀寫,則發(fā)送命令消息給需要進(jìn)行交互的設(shè)備,否則進(jìn)入步驟2042;

s2042:若命令屬性為刪除,則刪除命令消息,否則進(jìn)入步驟s2043;

s2043:返回步驟s201;

s205:返回步驟s201;

步驟三:設(shè)備端依據(jù)接收的命令消息與現(xiàn)場設(shè)備進(jìn)行通訊,將交互設(shè)備的返回消息進(jìn)行組裝并將組裝后的數(shù)據(jù)包發(fā)送給服務(wù)器端,如圖4所示,具體步驟如下:

s301:首先判斷是否組裝結(jié)束,如果組裝結(jié)束則進(jìn)入步驟四,否則進(jìn)入步驟s302;

s302:繼續(xù)接收交互設(shè)備的返回消息,依據(jù)協(xié)議名稱的類型判斷是否需要對數(shù)據(jù)進(jìn)行檢查,如果需要則進(jìn)入步驟s303,否則進(jìn)入步驟s304;

s303:根據(jù)解析屬性進(jìn)行校驗,如果校驗通過則進(jìn)入步驟s304,否則返回步驟s301;

s304:將返回消息的組裝數(shù)據(jù)保存到緩存區(qū);

s305:返回步驟s301;

步驟四:服務(wù)器端接收到組裝后的數(shù)據(jù)包后進(jìn)行解析,解析完成后形成應(yīng)答消息反饋至設(shè)備端,服務(wù)器端對接收的消息進(jìn)行展示,如圖5所示,具體步驟如下:

s401:首先判斷服務(wù)器端是否解析完成,如果解析完成,則形成應(yīng)答消息反饋至設(shè)備端,否則進(jìn)入步驟s402;

s402:根據(jù)協(xié)議名稱的類型執(zhí)行數(shù)據(jù)完整性校驗,如果校驗通過則進(jìn)入步驟s403,否則返回步驟s401;

s403:根據(jù)協(xié)議對命令消息的內(nèi)容進(jìn)行解析;

s404:將解析后的結(jié)果保存到數(shù)據(jù)庫中;

s405:返回步驟s401。

下面以壽力supervisorii控制器具體說明命令的組裝配置下發(fā)以及解析。

壽力supervisorii控制器的通訊協(xié)議為非標(biāo)準(zhǔn)型的ascii碼數(shù)據(jù)格式,并且校驗方式采用縱向冗余校驗(lrc),該協(xié)議內(nèi)容可以通過rs485差分鏈路發(fā)送。已知需要發(fā)送的數(shù)據(jù)內(nèi)容和接收的數(shù)據(jù)內(nèi)容如下:

發(fā)送(16進(jìn)制):0230314935360d0a

接收(16進(jìn)制):0230316930312c35352c35392c38322c35302c37352c35302c33342c313232342c313232342c303030462c43302c30342c353432382c343030342c452c4334350d0a

通過本發(fā)明實施的服務(wù)器配置消息如下:

001601001002000000140100080230344935330d0aa08e

其中0016表示該數(shù)據(jù)包的完整長度,01表示為第一條命令號,0010表示第一條命令號的總長度,02表示協(xié)議為壽力非標(biāo)準(zhǔn)型,02后面的第一個00表示該命令為讀取屬性,再后面的一個00為解析屬性,表示底層設(shè)備直接上報讀取到的消息,0014表示讀取的時間間隔,01表示發(fā)送標(biāo)識符,0008表示發(fā)送數(shù)據(jù)內(nèi)容的長度,0230344935330d0a為具體的發(fā)送內(nèi)容,a08e為校驗碼。

通過本發(fā)明實施的設(shè)備端發(fā)送給服務(wù)器的消息如下:

004b01000000420230316930312c35352c35392c38322c35302c37352c35302c33342c313232342c313232342c303030462c43302c30342c353432382c343030342c452c4334350d0a800d

其中004b表示該數(shù)據(jù)包的完整長度,01表示第一個命令號,01后面的第一個00表示該條報文為非標(biāo)準(zhǔn)型,再后面的00表示返回的數(shù)據(jù)是讀取到的,0042表示返回內(nèi)容的長度,從后面的02開始一直到0d0a均為報文內(nèi)容,800d為校驗碼。服務(wù)器根據(jù)定義的返回數(shù)據(jù)格式即可知道真實的有效數(shù)據(jù),對數(shù)據(jù)進(jìn)行校驗通過后,再對有效數(shù)據(jù)進(jìn)行對應(yīng)的解析。

以上顯示和描述了本發(fā)明的基本原理、主要特征和本發(fā)明的優(yōu)點。本行業(yè)的技術(shù)人員應(yīng)該了解,本發(fā)明不受上述實施例的限制,上述實施例和說明書中描述的只是說明本發(fā)明的原理,在不脫離本發(fā)明精神和范圍的前提下,本發(fā)明還會有各種變化和改進(jìn),這些變化和改進(jìn)都落入要求保護(hù)的本發(fā)明范圍內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
措勤县| 昌平区| 天柱县| 章丘市| 津南区| 西平县| 南部县| 宁德市| 永平县| 花垣县| 泽库县| 诸城市| 黄浦区| 巴青县| 洞口县| 阿拉善右旗| 仁布县| 洛浦县| 瓦房店市| 辽宁省| 旬邑县| 唐山市| 海阳市| 济南市| 南昌县| 都昌县| 乌鲁木齐县| 阿拉善左旗| 苗栗县| 商都县| 濉溪县| 合川市| 丹棱县| 娄底市| 宁波市| 札达县| 佛山市| 保康县| 惠州市| 深圳市| 黄大仙区|