本發(fā)明涉及通信領(lǐng)域,特別涉及一種通信協(xié)議適配方法、裝置、電子設(shè)備及介質(zhì)。
背景技術(shù):
1、電化學(xué)儲(chǔ)能系統(tǒng)由電池組、bms(battery?management?system,電池管理系統(tǒng))、pcs(power?conversion?system,儲(chǔ)能逆變器)、ems(energy?management?system,能量管理系統(tǒng))和動(dòng)環(huán)設(shè)備等構(gòu)成,其中bms是整個(gè)電化學(xué)儲(chǔ)能系統(tǒng)的大腦也是整個(gè)電化學(xué)儲(chǔ)能系統(tǒng)的數(shù)據(jù)交互樞紐,bms通常需要接入消防、液冷、空調(diào)、門禁、水浸等各種動(dòng)環(huán)設(shè)備,進(jìn)而采集和控制儲(chǔ)能系統(tǒng)的溫度、濕度以及消防探測(cè)與消防動(dòng)作執(zhí)行,并將數(shù)據(jù)轉(zhuǎn)發(fā)給場(chǎng)站數(shù)據(jù)中心ems。
2、現(xiàn)有的動(dòng)環(huán)設(shè)備的通信協(xié)議多種多樣且內(nèi)容繁瑣,為了讓bms能夠接入多種動(dòng)環(huán)設(shè)備,目前大多采用手寫(xiě)代碼的方式,即通過(guò)人工的方式根據(jù)多種動(dòng)環(huán)設(shè)備的通信協(xié)議撰寫(xiě)可供bms識(shí)別的多種不同代碼,且這部分代碼一部分用于bms向動(dòng)環(huán)設(shè)備傳輸信號(hào),另一部分用于動(dòng)環(huán)設(shè)備向bms傳輸信號(hào),所以手寫(xiě)代碼的方式工作量極大且極容易出錯(cuò)。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于提供一種通信協(xié)議適配方法、裝置、電子設(shè)備及介質(zhì),考慮到動(dòng)環(huán)設(shè)備的通信協(xié)議與電池管理系統(tǒng)的目標(biāo)內(nèi)部數(shù)據(jù)存在對(duì)應(yīng)關(guān)系,即兩者之間是通過(guò)對(duì)應(yīng)關(guān)系接收對(duì)方發(fā)送的數(shù)據(jù)并向?qū)Ψ絺鬏敂?shù)據(jù),所以本方案采用自動(dòng)抓取通信協(xié)議以及目標(biāo)內(nèi)部數(shù)據(jù)的方式生成對(duì)應(yīng)的通信參數(shù)配置文件、通信協(xié)議組包配置文件及通信協(xié)議解包配置文件,以使電池管理系統(tǒng)按照通信參數(shù)配置文件配置與動(dòng)環(huán)設(shè)備之間的通信接口的參數(shù);同理,并可以向動(dòng)環(huán)設(shè)備發(fā)送數(shù)據(jù)以及解析動(dòng)環(huán)設(shè)備發(fā)送的數(shù)據(jù),進(jìn)而與動(dòng)環(huán)設(shè)備建立通信聯(lián)系,相比于手寫(xiě)代碼的方式,大大降低了工作量,并大大提高動(dòng)環(huán)設(shè)備與電池管理系統(tǒng)之間通信的準(zhǔn)確性。
2、為解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種通信協(xié)議適配方法,包括:
3、獲取動(dòng)環(huán)設(shè)備的通信協(xié)議中的協(xié)議數(shù)據(jù)、協(xié)議數(shù)據(jù)與電池管理系統(tǒng)的目標(biāo)內(nèi)部數(shù)據(jù)的對(duì)應(yīng)關(guān)系及轉(zhuǎn)換關(guān)系、所述動(dòng)環(huán)設(shè)備與所述電池管理系統(tǒng)的通信方式、所述動(dòng)環(huán)設(shè)備與所述電池管理系統(tǒng)的物理通道、所述動(dòng)環(huán)設(shè)備與所述電池管理系統(tǒng)之間通信的波特率、所述動(dòng)環(huán)設(shè)備與所述電池管理系統(tǒng)之間的通信周期;
4、根據(jù)所述協(xié)議數(shù)據(jù)、所述目標(biāo)內(nèi)部數(shù)據(jù)、所述協(xié)議數(shù)據(jù)與目標(biāo)內(nèi)部數(shù)據(jù)的對(duì)應(yīng)關(guān)系及轉(zhuǎn)換關(guān)系、所述通信方式、所述物理通道、所述波特率及所述通信周期生成對(duì)應(yīng)的通信協(xié)議組包配置文件、通信協(xié)議解包配置文件及通信參數(shù)配置文件;
5、通過(guò)所述電池管理系統(tǒng)識(shí)別所述通信參數(shù)配置文件,以使所述電池管理系統(tǒng)按照所述通信參數(shù)配置文件配置與所述動(dòng)環(huán)設(shè)備之間的通信接口的參數(shù);
6、通過(guò)所述電池管理系統(tǒng)識(shí)別所述通信協(xié)議組包配置文件,以使所述電池管理系統(tǒng)按照所述通信協(xié)議組包配置文件向所述動(dòng)環(huán)設(shè)備發(fā)送數(shù)據(jù);
7、通過(guò)所述電池管理系統(tǒng)識(shí)別所述通信協(xié)議解包配置文件,以使所述電池管理系統(tǒng)按照所述通信協(xié)議解包配置文件解析所述動(dòng)環(huán)設(shè)備發(fā)送的數(shù)據(jù)。
8、可選的,根據(jù)所述協(xié)議數(shù)據(jù)、所述目標(biāo)內(nèi)部數(shù)據(jù)、所述協(xié)議數(shù)據(jù)與目標(biāo)內(nèi)部數(shù)據(jù)的對(duì)應(yīng)關(guān)系及轉(zhuǎn)換關(guān)系、所述通信方式、所述物理通道、所述波特率及所述通信周期生成對(duì)應(yīng)的通信協(xié)議組包配置文件、通信協(xié)議解包配置文件及通信參數(shù)配置文件,包括:
9、將所述協(xié)議數(shù)據(jù)、所述目標(biāo)內(nèi)部數(shù)據(jù)、所述協(xié)議數(shù)據(jù)與目標(biāo)內(nèi)部數(shù)據(jù)的對(duì)應(yīng)關(guān)系及轉(zhuǎn)換關(guān)系填充進(jìn)第一預(yù)設(shè)空白模板中,得到填充后的第一預(yù)設(shè)空白模板;
10、將所述填充后的第一預(yù)設(shè)空白模板轉(zhuǎn)換為對(duì)應(yīng)的通信協(xié)議組包配置文件及通信協(xié)議解包配置文件;
11、將所述通信方式、所述物理通道、所述波特率、所述通信周期填充進(jìn)第二預(yù)設(shè)空白模板中,得到填充后的第二預(yù)設(shè)空白模板;
12、將所述填充后的第二預(yù)設(shè)空白模板轉(zhuǎn)換為對(duì)應(yīng)的通信參數(shù)配置文件。
13、可選的,在通過(guò)所述電池管理系統(tǒng)識(shí)別所述通信協(xié)議解包配置文件之后,還包括:
14、判斷所述電池管理系統(tǒng)向所述動(dòng)環(huán)設(shè)備發(fā)送的通信數(shù)據(jù)是否準(zhǔn)確;
15、若所述電池管理系統(tǒng)向所述動(dòng)環(huán)設(shè)備發(fā)送的通信數(shù)據(jù)不準(zhǔn)確,則發(fā)出相應(yīng)告警。
16、可選的,判斷所述電池管理系統(tǒng)向所述動(dòng)環(huán)設(shè)備發(fā)送的通信數(shù)據(jù)是否準(zhǔn)確,包括:
17、獲取通信協(xié)議中的協(xié)議數(shù)據(jù)與目標(biāo)內(nèi)部數(shù)據(jù)的對(duì)應(yīng)關(guān)系及轉(zhuǎn)換關(guān)系;
18、將預(yù)設(shè)測(cè)試數(shù)據(jù)、所述協(xié)議數(shù)據(jù)與目標(biāo)內(nèi)部數(shù)據(jù)的對(duì)應(yīng)關(guān)系及轉(zhuǎn)換關(guān)系填充進(jìn)第三預(yù)設(shè)空白模板中,得到填充后的第三預(yù)設(shè)空白模板;
19、將所述填充后的第三預(yù)設(shè)空白模板轉(zhuǎn)換為對(duì)應(yīng)的測(cè)試配置文件;
20、通過(guò)所述電池管理系統(tǒng)識(shí)別所述測(cè)試配置文件,并根據(jù)所述測(cè)試配置文件對(duì)應(yīng)的識(shí)別結(jié)果判斷所述電池管理系統(tǒng)向所述動(dòng)環(huán)設(shè)備發(fā)送的通信數(shù)據(jù)是否準(zhǔn)確。
21、可選的,通過(guò)所述電池管理系統(tǒng)識(shí)別所述測(cè)試配置文件,并根據(jù)所述測(cè)試配置文件對(duì)應(yīng)的識(shí)別結(jié)果判斷所述電池管理系統(tǒng)向所述動(dòng)環(huán)設(shè)備發(fā)送的通信數(shù)據(jù)是否準(zhǔn)確,包括:
22、所述電池管理系統(tǒng)在識(shí)別所述測(cè)試配置文件后獲取所述預(yù)設(shè)測(cè)試數(shù)據(jù)在發(fā)送至總線后轉(zhuǎn)換成的總線數(shù)據(jù),所述電池管理系統(tǒng)與所述動(dòng)環(huán)設(shè)備通過(guò)所述總線進(jìn)行數(shù)據(jù)傳輸;
23、判斷所述預(yù)設(shè)測(cè)試數(shù)據(jù)與所述總線數(shù)據(jù)是否相等;
24、若所述預(yù)設(shè)測(cè)試數(shù)據(jù)與所述總線數(shù)據(jù)相等,則判定所述電池管理系統(tǒng)向所述動(dòng)環(huán)設(shè)備發(fā)送的通信數(shù)據(jù)準(zhǔn)確;
25、若所述預(yù)設(shè)測(cè)試數(shù)據(jù)與所述總線數(shù)據(jù)不相等,則判定所述電池管理系統(tǒng)向所述動(dòng)環(huán)設(shè)備發(fā)送的通信數(shù)據(jù)不準(zhǔn)確。
26、可選的,在根據(jù)所述協(xié)議數(shù)據(jù)、所述目標(biāo)內(nèi)部數(shù)據(jù)、所述協(xié)議數(shù)據(jù)與目標(biāo)內(nèi)部數(shù)據(jù)的對(duì)應(yīng)關(guān)系及轉(zhuǎn)換關(guān)系、所述通信方式、所述物理通道、所述波特率及所述通信周期生成對(duì)應(yīng)的通信協(xié)議組包配置文件、通信協(xié)議解包配置文件及通信參數(shù)配置文件之后,還包括:
27、獲取所述電池管理系統(tǒng)的控制屏幕或終端設(shè)備的更新指令;
28、按照所述更新指令更新所述通信協(xié)議組包配置文件、所述通信協(xié)議解包配置文件及所述通信參數(shù)配置文件,以得到更新后的所述通信協(xié)議組包配置文件、所述通信協(xié)議解包配置文件及所述通信參數(shù)配置文件,并保存更新后的所述通信協(xié)議組包配置文件、所述通信協(xié)議解包配置文件及所述通信參數(shù)配置文件;
29、相應(yīng)的,通過(guò)所述電池管理系統(tǒng)識(shí)別所述通信參數(shù)配置文件,以使所述電池管理系統(tǒng)按照所述通信參數(shù)配置文件配置與所述動(dòng)環(huán)設(shè)備之間的通信接口的參數(shù),包括:
30、通過(guò)所述電池管理系統(tǒng)識(shí)別更新后的所述通信參數(shù)配置文件,以使所述電池管理系統(tǒng)按照更新后的所述通信參數(shù)配置文件配置與所述動(dòng)環(huán)設(shè)備之間的通信接口的參數(shù);
31、相應(yīng)的,通過(guò)所述電池管理系統(tǒng)識(shí)別所述通信協(xié)議組包配置文件,以使所述電池管理系統(tǒng)按照所述通信協(xié)議組包配置文件向所述動(dòng)環(huán)設(shè)備發(fā)送數(shù)據(jù),包括:
32、通過(guò)更新后的所述電池管理系統(tǒng)識(shí)別所述通信協(xié)議組包配置文件,以使所述電池管理系統(tǒng)按照更新后的所述通信協(xié)議組包配置文件向所述動(dòng)環(huán)設(shè)備發(fā)送數(shù)據(jù);
33、相應(yīng)的,通過(guò)所述電池管理系統(tǒng)識(shí)別所述通信協(xié)議解包配置文件,以使所述電池管理系統(tǒng)按照所述通信協(xié)議解包配置文件解析所述動(dòng)環(huán)設(shè)備發(fā)送的數(shù)據(jù),包括:
34、通過(guò)所述電池管理系統(tǒng)識(shí)別更新后的所述通信協(xié)議解包配置文件,以使所述電池管理系統(tǒng)按照更新后的所述通信協(xié)議解包配置文件解析所述動(dòng)環(huán)設(shè)備發(fā)送的數(shù)據(jù)。
35、為解決上述技術(shù)問(wèn)題,本發(fā)明還提供了一種通信協(xié)議適配裝置,包括:
36、第一獲取模塊,用于獲取動(dòng)環(huán)設(shè)備的通信協(xié)議中的協(xié)議數(shù)據(jù)、協(xié)議數(shù)據(jù)與電池管理系統(tǒng)的目標(biāo)內(nèi)部數(shù)據(jù)的對(duì)應(yīng)關(guān)系及轉(zhuǎn)換關(guān)系、所述動(dòng)環(huán)設(shè)備與所述電池管理系統(tǒng)的通信方式、所述動(dòng)環(huán)設(shè)備與所述電池管理系統(tǒng)的物理通道、所述動(dòng)環(huán)設(shè)備與所述電池管理系統(tǒng)之間通信的波特率、所述動(dòng)環(huán)設(shè)備與所述電池管理系統(tǒng)之間的通信周期;
37、配置文件生成模塊,用于根據(jù)所述協(xié)議數(shù)據(jù)、所述目標(biāo)內(nèi)部數(shù)據(jù)、所述協(xié)議數(shù)據(jù)與目標(biāo)內(nèi)部數(shù)據(jù)的對(duì)應(yīng)關(guān)系及轉(zhuǎn)換關(guān)系、所述通信方式、所述物理通道、所述波特率及所述通信周期生成對(duì)應(yīng)的通信協(xié)議組包配置文件、通信協(xié)議解包配置文件及通信參數(shù)配置文件;
38、第一識(shí)別模塊,用于通過(guò)所述電池管理系統(tǒng)識(shí)別所述通信參數(shù)配置文件,以使所述電池管理系統(tǒng)按照所述通信參數(shù)配置文件配置與所述動(dòng)環(huán)設(shè)備之間的通信接口的參數(shù);
39、第二識(shí)別模塊,用于通過(guò)所述電池管理系統(tǒng)識(shí)別所述通信協(xié)議組包配置文件,以使所述電池管理系統(tǒng)按照所述通信協(xié)議組包配置文件向所述動(dòng)環(huán)設(shè)備發(fā)送數(shù)據(jù);
40、第三識(shí)別模塊,用于通過(guò)所述電池管理系統(tǒng)識(shí)別所述通信協(xié)議解包配置文件,以使所述電池管理系統(tǒng)按照所述通信協(xié)議解包配置文件解析所述動(dòng)環(huán)設(shè)備發(fā)送的數(shù)據(jù)。
41、可選的,還包括:
42、第二獲取模塊,用于獲取所述電池管理系統(tǒng)的控制屏幕或終端設(shè)備的更新指令;
43、更新模塊,用于按照所述更新指令更新所述通信協(xié)議組包配置文件、所述通信協(xié)議解包配置文件及所述通信參數(shù)配置文件,以得到更新后的所述通信協(xié)議組包配置文件、所述通信協(xié)議解包配置文件及所述通信參數(shù)配置文件,并保存更新后的所述通信協(xié)議組包配置文件、所述通信協(xié)議解包配置文件及所述通信參數(shù)配置文件;
44、所述第一識(shí)別模塊,具體用于:
45、通過(guò)所述電池管理系統(tǒng)識(shí)別更新后的所述通信參數(shù)配置文件,以使所述電池管理系統(tǒng)按照更新后的所述通信參數(shù)配置文件配置與所述動(dòng)環(huán)設(shè)備之間的通信接口的參數(shù);
46、所述第二識(shí)別模塊,具體用于:
47、通過(guò)更新后的所述電池管理系統(tǒng)識(shí)別所述通信協(xié)議組包配置文件,以使所述電池管理系統(tǒng)按照更新后的所述通信協(xié)議組包配置文件向所述動(dòng)環(huán)設(shè)備發(fā)送數(shù)據(jù);
48、所述第三識(shí)別模塊,具體用于:
49、通過(guò)所述電池管理系統(tǒng)識(shí)別更新后的所述通信協(xié)議解包配置文件,以使所述電池管理系統(tǒng)按照更新后的所述通信協(xié)議解包配置文件解析所述動(dòng)環(huán)設(shè)備發(fā)送的數(shù)據(jù)。
50、為解決上述技術(shù)問(wèn)題,本發(fā)明還提供了一種電子設(shè)備,包括:
51、存儲(chǔ)器,用于存儲(chǔ)計(jì)算機(jī)程序;
52、處理器,用于執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)如上述所述通信協(xié)議適配方法的步驟。
53、為解決上述技術(shù)問(wèn)題,本發(fā)明還提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上述所述通信協(xié)議適配方法的步驟。
54、本發(fā)明的目的是提供一種通信協(xié)議適配方法、裝置、電子設(shè)備及介質(zhì),考慮到動(dòng)環(huán)設(shè)備的通信協(xié)議與電池管理系統(tǒng)的目標(biāo)內(nèi)部數(shù)據(jù)存在對(duì)應(yīng)關(guān)系,即兩者之間是通過(guò)對(duì)應(yīng)關(guān)系接收對(duì)方發(fā)送的數(shù)據(jù)并向?qū)Ψ絺鬏敂?shù)據(jù),所以本方案采用自動(dòng)抓取通信協(xié)議以及目標(biāo)內(nèi)部數(shù)據(jù)的方式生成對(duì)應(yīng)的通信參數(shù)配置文件、通信協(xié)議組包配置文件及通信協(xié)議解包配置文件,以使電池管理系統(tǒng)按照通信參數(shù)配置文件配置與動(dòng)環(huán)設(shè)備之間的通信接口的參數(shù);同理,并可以向動(dòng)環(huán)設(shè)備發(fā)送數(shù)據(jù)以及解析動(dòng)環(huán)設(shè)備發(fā)送的數(shù)據(jù),進(jìn)而與動(dòng)環(huán)設(shè)備建立通信聯(lián)系,相比于手寫(xiě)代碼的方式,大大降低了工作量,并大大提高動(dòng)環(huán)設(shè)備與電池管理系統(tǒng)之間通信的準(zhǔn)確性。