一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法及系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法及系統(tǒng),該方法包括:讀取獲得預(yù)存的通信配置參數(shù),按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù),根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾,然后根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,最后將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端口。本發(fā)明無(wú)需更改現(xiàn)有傳感器的軟件或硬件配置,就可以實(shí)現(xiàn)傳感器和各種用戶(hù)終端的數(shù)據(jù)互聯(lián)互通,使用方便,成本低,效率高且靈活性高可廣泛應(yīng)用于傳感器數(shù)據(jù)傳輸領(lǐng)域中。
【專(zhuān)利說(shuō)明】一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及傳感數(shù)據(jù)傳輸領(lǐng)域,特別是涉及一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法及系統(tǒng)?!颈尘凹夹g(shù)】
[0002]目前,不同類(lèi)型、不同廠(chǎng)家的傳感器沒(méi)有統(tǒng)一的接口標(biāo)準(zhǔn),由于接口不統(tǒng)一,使用的配套軟件也互不兼容,對(duì)于使用者來(lái)說(shuō),如果要獲取傳感器數(shù)據(jù),需要使用指定的軟件來(lái)獲取,或者需要專(zhuān)門(mén)進(jìn)行相應(yīng)的軟件開(kāi)發(fā),這兩種方法中,使用傳感器指定的軟件來(lái)獲取傳感器數(shù)據(jù)在使用上極為不便,而專(zhuān)門(mén)進(jìn)行軟件開(kāi)發(fā)的工作量很大,耗費(fèi)人力物力;并且因?yàn)椴煌瑥S(chǎng)家的傳感器返回的數(shù)據(jù)接口差別非常大,一旦更換硬件設(shè)備的型號(hào)或者硬件升級(jí)換代,與傳感器配套的軟件可能又將需要重新開(kāi)發(fā),導(dǎo)致數(shù)據(jù)傳輸穩(wěn)定性較差。另外,目前還有一種方法,是在PC端開(kāi)發(fā)通信中間件接口,適配各種不同傳感器,但是這種方法開(kāi)發(fā)中間件的成本較高,而且中間件比較龐大,不適合中小型桌面操作系統(tǒng)的應(yīng)用,而且加入任何一個(gè)新的傳感設(shè)備都要依賴(lài)中間件,開(kāi)發(fā)難度大,使用不方便,針對(duì)不同的桌面操作系統(tǒng)都需要重新開(kāi)發(fā)中間件,另外不同廠(chǎng)家開(kāi)發(fā)的中間件接口不一樣,不同中間件之間接口效率不高,此外,這種方法還無(wú)法適應(yīng)嵌入式設(shè)備和傳感器的互聯(lián)互通。
【發(fā)明內(nèi)容】
[0003]為了解決上述的技術(shù)問(wèn)題,本發(fā)明的目的是提供一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,本發(fā)明的另一目的是提供一種傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng)。
[0004]本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:
一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,包括:
51、讀取獲得預(yù)存的通信配置參數(shù),所述通信配置參數(shù)包括自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式;
52、按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù);
53、根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行步驟S4,否則,直接執(zhí)行步驟S4 ;
54、根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換;
55、將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端口。
[0005]進(jìn)一步,還包括以下步驟:
SO、對(duì)通信配置參數(shù)進(jìn)行初始化:根據(jù)傳感器的類(lèi)型和傳感器數(shù)據(jù)的數(shù)據(jù)幀類(lèi)型,初始化通信配置參數(shù)的協(xié)議解析方式,同時(shí)對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、輸出模式和輸出格式進(jìn)行定義。
[0006]進(jìn)一步,所述傳感器的數(shù)據(jù)幀類(lèi)型為固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述步驟S2包括: 對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,執(zhí)行以下步驟:
S201、獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)
置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則繼續(xù)接收下一個(gè)數(shù)據(jù)幀頭并繼續(xù)判斷,直到完成所有數(shù)據(jù)幀頭的接收;
S202、批量接收完整的數(shù)據(jù)幀,并實(shí)時(shí)判斷接收到的數(shù)據(jù)幀的長(zhǎng)度是否符合該固定數(shù)據(jù)長(zhǎng)度,若是,則將接收到的固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
[0007]進(jìn)一步,所述傳感器的數(shù)據(jù)幀類(lèi)型為通過(guò)數(shù)據(jù)幀頭和數(shù)據(jù)幀尾確定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述步驟S2包括:
對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,執(zhí)行以下步驟:
5211、獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則將數(shù)據(jù)幀頭后面的數(shù)據(jù)存儲(chǔ)到緩沖區(qū);
5212、實(shí)時(shí)判斷是否接收到數(shù)據(jù)幀尾,若接收到數(shù)據(jù)幀尾,則將緩沖區(qū)中存儲(chǔ)的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
[0008]進(jìn)一步,所述步驟S4,其具體為:
根據(jù)獲得的輸出格式,對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,將傳感器數(shù)據(jù)由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文、由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼,或者在傳感器數(shù)據(jù)中添加附加信肩、O
[0009]本發(fā)明解決其技術(shù)問(wèn)題所采用的另一技術(shù)方案是:
一種傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng),包括:
第一模塊,用于讀取獲得預(yù)存的通信配置參數(shù),所述通信配置參數(shù)包括自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式;
第二模塊,用于按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù);
第三模塊,用于根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行第四模塊,否則,直接執(zhí)行第四模塊;
第四模塊,用于根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換;
第五模塊,用于將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端□。
[0010]進(jìn)一步,還包括:
初始化模塊,用于對(duì)通信配置參數(shù)進(jìn)行初始化:根據(jù)傳感器的類(lèi)型和傳感器數(shù)據(jù)的數(shù)據(jù)幀類(lèi)型,初始化通信配置參數(shù)的協(xié)議解析方式,同時(shí)對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、輸出模式和輸出格式進(jìn)行定義。
[0011]進(jìn)一步,所述傳感器的數(shù)據(jù)幀類(lèi)型為固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述第二模塊用于對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,第二模塊包括:
第一子模塊,用于獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則繼續(xù)接收下一個(gè)數(shù)據(jù)幀頭并繼續(xù)判斷,直到完成所有數(shù)據(jù)幀頭的接收;
第二子模塊,用于批量接收完整的數(shù)據(jù)幀,并實(shí)時(shí)判斷接收到的數(shù)據(jù)幀的長(zhǎng)度是否符合該固定數(shù)據(jù)長(zhǎng)度,若是,則將接收到的固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。[0012]進(jìn)一步,所述傳感器的數(shù)據(jù)幀類(lèi)型為通過(guò)數(shù)據(jù)幀頭和數(shù)據(jù)幀尾確定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述第二模塊用于對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,第二模塊包括:
第三子模塊,用于獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則將數(shù)據(jù)幀頭后面的數(shù)據(jù)存儲(chǔ)到緩沖區(qū);
第四子模塊,用于實(shí)時(shí)判斷是否接收到數(shù)據(jù)幀尾,若接收到數(shù)據(jù)幀尾,則將緩沖區(qū)中存儲(chǔ)的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
[0013]進(jìn)一步,所述第四模塊具體用于:
根據(jù)獲得的輸出格式,對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,將傳感器數(shù)據(jù)由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文、由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼,或者在傳感器數(shù)據(jù)中添加附加信肩、O
[0014]本發(fā)明的有益效果是:本發(fā)明的一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,包括:讀取獲得預(yù)存的通信配置參數(shù),按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù),根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾,然后根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,最后將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端口,本方法獲取預(yù)存的通信配置參數(shù),即自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式后,即可自動(dòng)讀取傳感器數(shù)據(jù)并根據(jù)通信配置參數(shù)執(zhí)行相應(yīng)的處理后輸出到用戶(hù)指定的輸出端口,無(wú)需更改現(xiàn)有傳感器的軟件或硬件配置,就可以實(shí)現(xiàn)傳感器和各種用戶(hù)終端的數(shù)據(jù)互聯(lián)互通,使用方便,成本低,效率高且靈活性高。
[0015]本發(fā)明的另一有益效果是:本發(fā)明的一種傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng),包括:第一模塊,用于讀取獲得預(yù)存的通信配置參數(shù);第二模塊,用于按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù);第三模塊,用于根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行第四模塊,否則,直接執(zhí)行第四模塊;第四模塊,用于根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換;第五模塊,用于將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端口。本系統(tǒng)通過(guò)第一模塊獲取預(yù)存的通信配置參數(shù),即自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式后,即可自動(dòng)讀取傳感器數(shù)據(jù)并根據(jù)通信配置參數(shù)執(zhí)行相應(yīng)的處理后輸出到用戶(hù)指定的輸出端口,無(wú)需更改現(xiàn)有傳感器的軟件或硬件配置,就可以實(shí)現(xiàn)傳感器和各種用戶(hù)終端的數(shù)據(jù)互聯(lián)互通,使用方便,成本低,效率高且靈活性高。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0016]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
[0017]圖1是本發(fā)明的一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法的流程圖;
圖2是用于實(shí)現(xiàn)發(fā)明技術(shù)方案的硬件結(jié)構(gòu)框圖;
圖3是本發(fā)明的實(shí)施例一中的步驟S2的詳細(xì)的流程示意圖;
圖4是本發(fā)明的實(shí)施例二中的步驟S2的詳細(xì)的流程示意圖。【具體實(shí)施方式】
[0018]參照?qǐng)D1,本發(fā)明提供了一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,包括:
51、讀取獲得預(yù)存的通信配置參數(shù),所述通信配置參數(shù)包括自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式;
52、按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù);
53、根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行步驟S4,否則,直接執(zhí)行步驟S4 ;
54、根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換;
55、將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端口。
[0019]進(jìn)一步作為優(yōu)選的實(shí)施方式,還包括以下步驟:
so、對(duì)通信配置參數(shù)進(jìn)行初始化:根據(jù)傳感器的類(lèi)型和傳感器數(shù)據(jù)的數(shù)據(jù)幀類(lèi)型,初始化通信配置參數(shù)的協(xié)議解析方式,同時(shí)對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、輸出模式和輸出格式進(jìn)行定義。
[0020]進(jìn)一步作為優(yōu)選的實(shí)施方式,所述傳感器的數(shù)據(jù)幀類(lèi)型為固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述步驟S2包括:
對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,執(zhí)行以下步驟:
5201、獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則繼續(xù)接收下一個(gè)數(shù)據(jù)幀頭并繼續(xù)判斷,直到完成所有數(shù)據(jù)幀頭的接收;
5202、批量接收完整的數(shù)據(jù)幀,并實(shí)時(shí)判斷接收到的數(shù)據(jù)幀的長(zhǎng)度是否符合該固定數(shù)據(jù)長(zhǎng)度,若是,則將接收到的固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
[0021]進(jìn)一步作為優(yōu)選的實(shí)施方式,所述傳感器的數(shù)據(jù)幀類(lèi)型為通過(guò)數(shù)據(jù)幀頭和數(shù)據(jù)幀尾確定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述步驟S2包括:
對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,執(zhí)行以下步驟:
5211、獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則將數(shù)據(jù)幀頭后面的數(shù)據(jù)存儲(chǔ)到緩沖區(qū);
5212、實(shí)時(shí)判斷是否接收到數(shù)據(jù)幀尾,若接收到數(shù)據(jù)幀尾,則將緩沖區(qū)中存儲(chǔ)的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
[0022]進(jìn)一步作為優(yōu)選的實(shí)施方式,所述步驟S4,其具體為:
根據(jù)獲得的輸出格式,對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,將傳感器數(shù)據(jù)由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文、由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼,或者在傳感器數(shù)據(jù)中添加附加信
肩、O
[0023]本發(fā)明還提供了一種傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng),包括:
第一模塊,用于讀取獲得預(yù)存的通信配置參數(shù),所述通信配置參數(shù)包括自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式;
第二模塊,用于按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù); 第三模塊,用于根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行第四模塊,否則,直接執(zhí)行第四模塊;
第四模塊,用于根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換;
第五模塊,用于將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端□。
[0024]進(jìn)一步作為優(yōu)選的實(shí)施方式,還包括:
初始化模塊,用于對(duì)通信配置參數(shù)進(jìn)行初始化:根據(jù)傳感器的類(lèi)型和傳感器數(shù)據(jù)的數(shù)據(jù)幀類(lèi)型,初始化通信配置參數(shù)的協(xié)議解析方式,同時(shí)對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、輸出模式和輸出格式進(jìn)行定義。
[0025]進(jìn)一步作為優(yōu)選的實(shí)施方式,所述傳感器的數(shù)據(jù)幀類(lèi)型為固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述第二模塊用于對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,第二模塊包括:
第一子模塊,用于獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則繼續(xù)接收下一個(gè)數(shù)據(jù)幀頭并繼續(xù)判斷,直到完成所有數(shù)據(jù)幀頭的接收;
第二子模塊,用于批量接收完整的數(shù)據(jù)幀,并實(shí)時(shí)判斷接收到的數(shù)據(jù)幀的長(zhǎng)度是否符合該固定數(shù)據(jù)長(zhǎng)度,若是,則將接收到的固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
[0026]進(jìn)一步作為優(yōu)選的實(shí)施方式,所述傳感器的數(shù)據(jù)幀類(lèi)型為通過(guò)數(shù)據(jù)幀頭和數(shù)據(jù)幀尾確定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述第二模塊用于對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,第二模塊包括:
第三子模塊,用于獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則將數(shù)據(jù)幀頭后面的數(shù)據(jù)存儲(chǔ)到緩沖區(qū);
第四子模塊,用于實(shí)時(shí)判斷是否接收到數(shù)據(jù)幀尾,若接收到數(shù)據(jù)幀尾,則將緩沖區(qū)中存儲(chǔ)的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
[0027]進(jìn)一步作為優(yōu)選的實(shí)施方式,所述第四模塊具體用于:
根據(jù)獲得的輸出格式,對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,將傳感器數(shù)據(jù)由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文、由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼,或者在傳感器數(shù)據(jù)中添加附加信肩、O
[0028]下面結(jié)合【具體實(shí)施方式】對(duì)本發(fā)明做進(jìn)一步說(shuō)明。
[0029]首先進(jìn)行說(shuō)明,實(shí)現(xiàn)本發(fā)明技術(shù)方案的硬件結(jié)構(gòu)框圖如圖2所示,該硬件結(jié)構(gòu)包括數(shù)據(jù)采集設(shè)備、微處理器及用戶(hù)終端,數(shù)據(jù)采集設(shè)備包括傳感器、RFID設(shè)備等,用戶(hù)終端可采用計(jì)算機(jī)、平板電腦等,微處理器包括數(shù)據(jù)接收端口、控制模塊、通信配置模塊及輸出端口,本發(fā)明提到的傳感數(shù)據(jù)包括傳感器采集的數(shù)據(jù)、RFID數(shù)據(jù)等。
[0030]微處理器通過(guò)數(shù)據(jù)接收端口接收傳感器數(shù)據(jù)后,通過(guò)控制模塊進(jìn)行數(shù)據(jù)轉(zhuǎn)換,然后通過(guò)輸出端口輸出,并通過(guò)用戶(hù)終端的USB端口或其它通信端口輸出到用戶(hù)終端,用戶(hù)可以通過(guò)用戶(hù)終端的應(yīng)用程序?qū)M(jìn)行數(shù)據(jù)轉(zhuǎn)換后的傳感器數(shù)據(jù)進(jìn)行操作。
[0031]通信配置模塊實(shí)際上相當(dāng)于本發(fā)明的傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng)中的初始化模塊,執(zhí)行本發(fā)明的傳感數(shù)據(jù)接收轉(zhuǎn)換方法的初始化步驟。控制模塊相當(dāng)于本發(fā)明的傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng)的第一模塊至第五模塊,用于執(zhí)行本發(fā)明的傳感數(shù)據(jù)接收轉(zhuǎn)換方法的步驟Si至S5。
[0032]實(shí)施例一
一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,包括:
so、對(duì)通信配置參數(shù)進(jìn)行初始化:根據(jù)傳感器的類(lèi)型和傳感器數(shù)據(jù)的數(shù)據(jù)幀類(lèi)型,初始化通信配置參數(shù)的協(xié)議解析方式,同時(shí)對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、輸出模式和輸出格式進(jìn)行定義;
協(xié)議解析方式被初始化為傳感器的數(shù)據(jù)幀類(lèi)型,自動(dòng)收發(fā)數(shù)據(jù)模式被初始化為要獲取的傳感器數(shù)據(jù)的類(lèi)型,例如傳感器數(shù)據(jù)有5個(gè)不同的傳感器數(shù)據(jù),自動(dòng)收發(fā)數(shù)據(jù)模式可以初始化為要獲取這5個(gè)傳感器數(shù)據(jù)中的某2個(gè)或3個(gè)等,輸出模式被初始化為輸出傳感器數(shù)據(jù)的端口例如USB接口、I/O端口等,輸出格式被初始化為輸出傳感器數(shù)據(jù)的數(shù)據(jù)格式,例如二進(jìn)制、十六進(jìn)制、ASCII碼、加密后的數(shù)據(jù)、解密后的數(shù)據(jù)等。
[0033]S1、讀取獲得預(yù)存的通信配置參數(shù),所述通信配置參數(shù)包括自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式。
[0034]S2、按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù);
傳感器的數(shù)據(jù)幀類(lèi)型分為兩種,一種是固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,另一種是通過(guò)數(shù)據(jù)幀頭和數(shù)據(jù)幀尾確定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,對(duì)不同數(shù)據(jù)幀類(lèi)型的傳感器,需要采取不同的方法讀取其傳感器數(shù)據(jù),本實(shí)施例中傳感器的數(shù)據(jù)幀類(lèi)型為固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,步驟S2包括:
參照?qǐng)D3,對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,執(zhí)行以下步
驟:
5201、獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則繼續(xù)接收下一個(gè)數(shù)據(jù)幀頭并繼續(xù)判斷,直到完成所有數(shù)據(jù)幀頭的接收,此時(shí)將工作狀態(tài)設(shè)置為批量接收狀態(tài);這里,判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求實(shí)際上指對(duì)數(shù)據(jù)幀頭的校驗(yàn);
5202、批量接收完整的數(shù)據(jù)幀,并實(shí)時(shí)判斷接收到的數(shù)據(jù)幀的長(zhǎng)度是否符合該固定數(shù)據(jù)長(zhǎng)度,若是,則將接收到的固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理;
圖3是步驟S201和S202執(zhí)行時(shí)的詳細(xì)的流程示意圖,圖3中在批量接收后續(xù)數(shù)據(jù)并判斷數(shù)據(jù)接收完整實(shí)質(zhì)上為判斷接收到的數(shù)據(jù)幀的長(zhǎng)度是否符合該固定數(shù)據(jù)長(zhǎng)度,因此,截取數(shù)據(jù)幀,即將接收到的固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù),然后將工作狀態(tài)設(shè)置為初始狀態(tài),并處理下一個(gè)字節(jié)數(shù)據(jù),實(shí)際上是解析完成后,處理下一個(gè)數(shù)據(jù)流。
[0035]S3、根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行步驟S4,否則,直接執(zhí)行步驟S4。
[0036]S4、根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,其具體為: 根據(jù)獲得的輸出格式,對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,將傳感器數(shù)據(jù)由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文或由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼;根據(jù)前面的描述,輸出格式可按照用戶(hù)需求初始化為二進(jìn)制、十六進(jìn)制、ASCII碼、加密后的數(shù)據(jù)、解密后的數(shù)據(jù)等,因此,這里可以將傳感器數(shù)據(jù)進(jìn)行由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文或由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼等數(shù)據(jù)格式轉(zhuǎn)換操作,或者在傳感器數(shù)據(jù)中添加附加信息,例如時(shí)間信息、校驗(yàn)信息等,或按用戶(hù)初始化所配置的其它自定義格式進(jìn)行轉(zhuǎn)換。
[0037]S5、將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端口。
[0038]本實(shí)施例中,只要使用傳感器之前,對(duì)通信配置參數(shù)進(jìn)行初始化,即根據(jù)傳感器類(lèi)型以及用戶(hù)需求對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式進(jìn)行初始化后,即可自動(dòng)讀取傳感器數(shù)據(jù)并輸出到用戶(hù)指定的輸出端口,無(wú)需進(jìn)行其它操作。
[0039]實(shí)施例二
一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,包括:
so、對(duì)通信配置參數(shù)進(jìn)行初始化:根據(jù)傳感器的類(lèi)型和傳感器數(shù)據(jù)的數(shù)據(jù)幀類(lèi)型,初始化通信配置參數(shù)的協(xié)議解析方式,同時(shí)對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、輸出模式和輸出格式進(jìn)行定義;
協(xié)議解析方式被初始化為傳感器的數(shù)據(jù)幀類(lèi)型,自動(dòng)收發(fā)數(shù)據(jù)模式被初始化為要獲取的傳感器數(shù)據(jù)的類(lèi)型,例如傳感器數(shù)據(jù)有5個(gè)不同的傳感器數(shù)據(jù),自動(dòng)收發(fā)數(shù)據(jù)模式可以初始化為要獲取這5個(gè)傳感器數(shù)據(jù)中的某2個(gè)或3個(gè)等,輸出模式被初始化為輸出傳感器數(shù)據(jù)的端口,輸出格式被初始化為輸出傳感器數(shù)據(jù)的數(shù)據(jù)格式,例如二進(jìn)制、十六進(jìn)制、ASCII碼、加密后的數(shù)據(jù)、解密后的數(shù)據(jù)等。
[0040]S1、讀取獲得預(yù)存的通信配置參數(shù),所述通信配置參數(shù)包括自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式。
[0041]S2、按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù);
傳感器的數(shù)據(jù)幀類(lèi)型分為兩種,一種是固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,另一種是通過(guò)數(shù)據(jù)幀頭和數(shù)據(jù)幀尾確定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,對(duì)不同數(shù)據(jù)幀類(lèi)型的傳感器,需要采取不同的方法讀取其傳感器數(shù)據(jù),本實(shí)施例中傳感器的數(shù)據(jù)幀類(lèi)型為通過(guò)數(shù)據(jù)幀頭和數(shù)據(jù)幀尾確定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,步驟S2包括:
參照?qǐng)D4,對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,執(zhí)行以下步
驟:
5211、獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則將工作狀態(tài)設(shè)置為接收數(shù)據(jù)狀態(tài),并將數(shù)據(jù)幀頭后面的數(shù)據(jù)存儲(chǔ)到緩沖區(qū);
5212、實(shí)時(shí)判斷是否接收到數(shù)據(jù)幀尾,若接收到數(shù)據(jù)幀尾,則將緩沖區(qū)中存儲(chǔ)的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理;
圖4是步驟S211和S212執(zhí)行時(shí)的詳細(xì)的流程示意圖,由圖4中可看出,本實(shí)施例接收傳感器數(shù)據(jù)并存儲(chǔ)到緩沖區(qū),直到接收到數(shù)據(jù)幀尾為結(jié)束符時(shí),停止接收,同時(shí),對(duì)接收的字符數(shù)進(jìn)行計(jì)數(shù),接收完畢后也可獲得傳感器數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度。
[0042]S3、根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行步驟S4,否則,直接執(zhí)行步驟S4。
[0043]S4、根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,其具體為:
根據(jù)獲得的輸出格式,對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,將傳感器數(shù)據(jù)由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文或由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼;根據(jù)前面的描述,輸出格式可按照用戶(hù)需求初始化為二進(jìn)制、十六進(jìn)制、ASCII碼、加密后的數(shù)據(jù)、解密后的數(shù)據(jù)等,因此,這里可以將傳感器數(shù)據(jù)進(jìn)行由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文或由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼等數(shù)據(jù)格式轉(zhuǎn)換操作,或者在傳感器數(shù)據(jù)中添加附加信息,例如時(shí)間信息、校驗(yàn)信息等,或按用戶(hù)初始化所配置的其它自定義格式進(jìn)行轉(zhuǎn)換。
[0044]S5、將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端口。
[0045]本實(shí)施例與實(shí)施例一的區(qū)別僅在于步驟S2的區(qū)別,因此,同樣本實(shí)施例中,只要使用傳感器之前,對(duì)通信配置參數(shù)進(jìn)行初始化,即根據(jù)傳感器類(lèi)型以及用戶(hù)需求對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式進(jìn)行初始化后,即可自動(dòng)讀取傳感器數(shù)據(jù)并輸出到用戶(hù)指定的輸出端口,無(wú)需進(jìn)行其它操作。
[0046]實(shí)施例三
初始化模塊,用于對(duì)通信配置參數(shù)進(jìn)行初始化:根據(jù)傳感器的類(lèi)型和傳感器數(shù)據(jù)的數(shù)據(jù)幀類(lèi)型,初始化通信配置參數(shù)的協(xié)議解析方式,同時(shí)對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、輸出模式和輸出格式進(jìn)行定義;
第一模塊,用于讀取獲得預(yù)存的通信配置參數(shù),所述通信配置參數(shù)包括自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式;
第二模塊,用于按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù);傳感器的數(shù)據(jù)幀類(lèi)型為固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,第二模塊用于對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,包括:
第一子模塊,用于獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則繼續(xù)接收下一個(gè)數(shù)據(jù)幀頭并繼續(xù)判斷,直到完成所有數(shù)據(jù)幀頭的接收;
第二子模塊,用于批量接收完整的數(shù)據(jù)幀,并實(shí)時(shí)判斷接收到的數(shù)據(jù)幀的長(zhǎng)度是否符合該固定數(shù)據(jù)長(zhǎng)度,若是,則將接收到的固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理;
第三模塊,用于根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行第四模塊,否則,直接執(zhí)行第四模塊;
第四模塊,用于根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,具體用于根據(jù)獲得的輸出格式,對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,將傳感器數(shù)據(jù)由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文或由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼;
第五模塊,用于將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端□。
[0047]本實(shí)施例是與實(shí)施例---對(duì)應(yīng)的軟系統(tǒng),技術(shù)細(xì)節(jié)的描述可參照實(shí)施例一。
[0048]實(shí)施例四
初始化模塊,用于對(duì)通信配置參數(shù)進(jìn)行初始化:根據(jù)傳感器的類(lèi)型和傳感器數(shù)據(jù)的數(shù)據(jù)幀類(lèi)型,初始化通信配置參數(shù)的協(xié)議解析方式,同時(shí)對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、輸出模式和輸出格式進(jìn)行定義;
第一模塊,用于讀取獲得預(yù)存的通信配置參數(shù),所述通信配置參數(shù)包括自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式;
第二模塊,用于按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù);傳感器的數(shù)據(jù)幀類(lèi)型為通過(guò)數(shù)據(jù)幀頭和數(shù)據(jù)幀尾確定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,第二模塊用于對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,包括:
第三子模塊,用于獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則將數(shù)據(jù)幀頭后面的數(shù)據(jù)存儲(chǔ)到緩沖區(qū);
第四子模塊,用于實(shí)時(shí)判斷是否接收到數(shù)據(jù)幀尾,若接收到數(shù)據(jù)幀尾,則將緩沖區(qū)中存儲(chǔ)的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理;
第三模塊,用于根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行第四模塊,否則,直接執(zhí)行第四模塊;
第四模塊,用于根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,具體用于根據(jù)獲得的輸出格式,對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,將傳感器數(shù)據(jù)由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文或由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼;
第五模塊,用于將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端□。
[0049]本實(shí)施例是與實(shí)施例二——對(duì)應(yīng)的軟系統(tǒng),技術(shù)細(xì)節(jié)的描述可參照實(shí)施例二。
[0050]以上是對(duì)本發(fā)明的較佳實(shí)施進(jìn)行了具體說(shuō)明,但本發(fā)明創(chuàng)造并不限于所述實(shí)施例,熟悉本領(lǐng)域的技術(shù)人員在不違背本發(fā)明精神的前提下還可做出種種的等同變形或替換,這些等同的變型或替換均包含在本申請(qǐng)權(quán)利要求所限定的范圍內(nèi)。
【權(quán)利要求】
1.一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,其特征在于,包括: 51、讀取獲得預(yù)存的通信配置參數(shù),所述通信配置參數(shù)包括自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式; 52、按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù); 53、根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行步驟S4,否則,直接執(zhí)行步驟S4 ; 54、根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換; 55、將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端口。
2.根據(jù)權(quán)利要求1所述的一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,其特征在于,還包括以下步驟: SO、對(duì)通信配置參數(shù)進(jìn)行初始化:根據(jù)傳感器的類(lèi)型和傳感器數(shù)據(jù)的數(shù)據(jù)幀類(lèi)型,初始化通信配置參數(shù)的協(xié)議解析方式,同時(shí)對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、輸出模式和輸出格式進(jìn)行定義。
3.根據(jù)權(quán)利要求2所述的一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,其特征在于,所述傳感器的數(shù)據(jù)幀類(lèi)型為固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述步驟S2包括: 對(duì)串行數(shù)據(jù)返回的數(shù) 據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,執(zhí)行以下步驟: 5201、獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則繼續(xù)接收下一個(gè)數(shù)據(jù)幀頭并繼續(xù)判斷,直到完成所有數(shù)據(jù)幀頭的接收; 5202、批量接收完整的數(shù)據(jù)幀,并實(shí)時(shí)判斷接收到的數(shù)據(jù)幀的長(zhǎng)度是否符合該固定數(shù)據(jù)長(zhǎng)度,若是,則將接收到的固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
4.根據(jù)權(quán)利要求2所述的一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,其特征在于,所述傳感器的數(shù)據(jù)幀類(lèi)型為通過(guò)數(shù)據(jù)幀頭和數(shù)據(jù)幀尾確定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述步驟S2包括: 對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,執(zhí)行以下步驟: 5211、獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則將數(shù)據(jù)幀頭后面的數(shù)據(jù)存儲(chǔ)到緩沖區(qū); 5212、實(shí)時(shí)判斷是否接收到數(shù)據(jù)幀尾,若接收到數(shù)據(jù)幀尾,則將緩沖區(qū)中存儲(chǔ)的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
5.根據(jù)權(quán)利要求1所述的一種傳感數(shù)據(jù)接收轉(zhuǎn)換方法,其特征在于,所述步驟S4,其具體為: 根據(jù)獲得的輸出格式,對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,將傳感器數(shù)據(jù)由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文、由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼,或者在傳感器數(shù)據(jù)中添加附加信肩、O
6.一種傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng),其特征在于,包括: 第一模塊,用于讀取獲得預(yù)存的通信配置參數(shù),所述通信配置參數(shù)包括自動(dòng)收發(fā)數(shù)據(jù)模式、協(xié)議解析方式、輸出模式和輸出格式; 第二模塊,用于按照獲得的協(xié)議解析方式,自動(dòng)獲取傳感器數(shù)據(jù); 第三模塊,用于根據(jù)獲得的自動(dòng)收發(fā)數(shù)據(jù)模式判斷是否要對(duì)獲取的傳感器數(shù)據(jù)進(jìn)行處理,若是,則對(duì)傳感器數(shù)據(jù)進(jìn)行過(guò)濾后執(zhí)行第四模塊,否則,直接執(zhí)行第四模塊; 第四模塊,用于根據(jù)獲得的輸出格式對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換; 第五模塊,用于將進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換后的傳感器數(shù)據(jù)輸出到輸出模式中預(yù)設(shè)的對(duì)應(yīng)端□。
7.根據(jù)權(quán)利要求6所述的一種傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng),其特征在于,還包括: 初始化模塊,用于對(duì)通信配置參數(shù)進(jìn)行初始化:根據(jù)傳感器的類(lèi)型和傳感器數(shù)據(jù)的數(shù)據(jù)幀類(lèi)型,初始化通信配置參數(shù)的協(xié)議解析方式,同時(shí)對(duì)自動(dòng)收發(fā)數(shù)據(jù)模式、輸出模式和輸出格式進(jìn)行定義。
8.根據(jù)權(quán)利要求7所述的一種傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng),其特征在于,所述傳感器的數(shù)據(jù)幀類(lèi)型為固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述第二模塊用于對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,第二模塊包括: 第一子模塊,用于獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則繼續(xù)接收下一個(gè)數(shù)據(jù)幀頭并繼續(xù)判斷,直到完成所有數(shù)據(jù)幀頭的接收; 第二子模塊,用于批量 接收完整的數(shù)據(jù)幀,并實(shí)時(shí)判斷接收到的數(shù)據(jù)幀的長(zhǎng)度是否符合該固定數(shù)據(jù)長(zhǎng)度,若是,則將接收到的固定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
9.根據(jù)權(quán)利要求7所述的一種傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng),其特征在于,所述傳感器的數(shù)據(jù)幀類(lèi)型為通過(guò)數(shù)據(jù)幀頭和數(shù)據(jù)幀尾確定數(shù)據(jù)長(zhǎng)度的數(shù)據(jù)幀,所述第二模塊用于對(duì)串行數(shù)據(jù)返回的數(shù)據(jù)流,按照單個(gè)字節(jié)依次地進(jìn)行數(shù)據(jù)解析,第二模塊包括: 第三子模塊,用于獲取數(shù)據(jù)幀頭并判斷獲取的數(shù)據(jù)幀頭是否符合協(xié)議要求,若否,則將工作狀態(tài)設(shè)置為初始狀態(tài)并重新嘗試接收數(shù)據(jù)幀頭,反之則將數(shù)據(jù)幀頭后面的數(shù)據(jù)存儲(chǔ)到緩沖區(qū); 第四子模塊,用于實(shí)時(shí)判斷是否接收到數(shù)據(jù)幀尾,若接收到數(shù)據(jù)幀尾,則將緩沖區(qū)中存儲(chǔ)的數(shù)據(jù)作為本次解析得到的傳感器數(shù)據(jù)后,完成本次串行數(shù)據(jù)幀解析,同時(shí),將工作狀態(tài)設(shè)置為初始狀態(tài),并繼續(xù)下一個(gè)數(shù)據(jù)流的處理。
10.根據(jù)權(quán)利要求6所述的一種傳感數(shù)據(jù)接收轉(zhuǎn)換系統(tǒng),其特征在于,所述第四模塊具體用于: 根據(jù)獲得的輸出格式,對(duì)傳感器數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,將傳感器數(shù)據(jù)由明文轉(zhuǎn)換為密文、由密文轉(zhuǎn)換為明文、由二進(jìn)制編碼轉(zhuǎn)換為ASCII碼,或者在傳感器數(shù)據(jù)中添加附加信肩、O
【文檔編號(hào)】H04L29/06GK103957198SQ201410151502
【公開(kāi)日】2014年7月30日 申請(qǐng)日期:2014年4月15日 優(yōu)先權(quán)日:2014年4月15日
【發(fā)明者】張景達(dá) 申請(qǐng)人:深圳市玖坤信息技術(shù)有限公司