两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

用于靠港船舶接用岸電技術(shù)的數(shù)據(jù)采集與規(guī)約轉(zhuǎn)換方法與流程

文檔序號:11144414閱讀:500來源:國知局
用于靠港船舶接用岸電技術(shù)的數(shù)據(jù)采集與規(guī)約轉(zhuǎn)換方法與制造工藝

本發(fā)明涉及靠港船舶接用岸電技術(shù)的數(shù)據(jù)處理,尤其是涉及一種用于靠港船舶接用岸電技術(shù)的數(shù)據(jù)采集與規(guī)約轉(zhuǎn)換方法。



背景技術(shù):

靠港船舶接用岸電技術(shù)是指船舶泊靠碼頭時,停止所有的船舶柴油機電站運行,采用陸地電源對靠港船舶供電的技術(shù)。通過岸電電源對船舶供電,可降低港口區(qū)污染廢氣的排放量。岸電技術(shù)是在國家推行“綠色港口”的背景下產(chǎn)生的,是港口解決噪聲、降低環(huán)境污染的有效手段。船舶岸電系統(tǒng)能對靠港船舶提供可靠供電,以達到節(jié)能減排的目的,這是港口和船舶供電領(lǐng)域的一大進步。因此,靠港船舶使用岸電技術(shù),對靠港船舶降低用電成本、提高供電效率和減少環(huán)境污染具有重大意義。但是在現(xiàn)有的岸電系統(tǒng)中具有多種岸電設(shè)備,難以同一時間對岸電系統(tǒng)中所有的設(shè)備進行監(jiān)控和信息采集,因此,若可同時解決采集通訊設(shè)備與岸電設(shè)備及與遠端服務(wù)器之間的有效通訊,將會提高監(jiān)控系統(tǒng)的可操作性,并有效地提高工作效率。



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

本發(fā)明的目的就是為了克服上述現(xiàn)有技術(shù)存在的缺陷而提供一種降低成本、提高監(jiān)測可操作性的用于靠港船舶接用岸電技術(shù)的數(shù)據(jù)采集與規(guī)約轉(zhuǎn)換方法。

本發(fā)明的目的可以通過以下技術(shù)方案來實現(xiàn):

一種用于靠港船舶接用岸電技術(shù)的數(shù)據(jù)采集與規(guī)約轉(zhuǎn)換方法,包括:

對被動岸電設(shè)備的運行數(shù)據(jù)進行主動采集,寫入到相應(yīng)的全局變量;

對主動岸電設(shè)備的運行數(shù)據(jù)進行偵聽采集,寫入到相應(yīng)的全局變量;

將所述主動采集和偵聽采集的所有運行數(shù)據(jù)進行規(guī)約轉(zhuǎn)換,并發(fā)送至通訊前置機。

所述被動岸電設(shè)備包括高壓柜、變壓器柜和變頻器柜。

所述主動岸電設(shè)備包括遠程終端單元。

所述主動采集具體為:

101)依次初始化系統(tǒng)時鐘、串口和IO口;

102)生成召測報文指令加入到任務(wù)隊列;

103)從所述任務(wù)隊列中讀取一召測報文指令,將該召測報文指令通過串口發(fā)送給被動岸電設(shè)備;

104)讀取串口緩沖區(qū)中的返回數(shù)據(jù);

105)對所述返回數(shù)據(jù)進行處理,寫入到相應(yīng)的全局變量;

106)檢測是否有退出指令,若是,則關(guān)閉串口,釋放串口占用的資源,若否,則返回步驟103),繼續(xù)采集數(shù)據(jù)。

所述召測報文指令包括遙測指令和遙信指令。

所述偵聽采集具體為:

201)初始化統(tǒng)時鐘和串口,清空IO緩沖區(qū);

202)串口依次讀取字節(jié)數(shù)據(jù),判斷字節(jié)數(shù)據(jù)的值,并根據(jù)所述字節(jié)數(shù)據(jù)的值執(zhí)行相應(yīng)讀取操作,獲取主動岸電設(shè)備上傳的數(shù)據(jù)報文;

203)處理所述數(shù)據(jù)報文;

204)檢測是否有退出指令,若是,則關(guān)閉串口,釋放串口占用的資源,若否,則返回步驟202),開始下一輪數(shù)據(jù)采集過程。

所述步驟203)中,處理所述數(shù)據(jù)報文具體為:

讀取數(shù)據(jù)報文字符串,將字符串轉(zhuǎn)換成字符數(shù)組,所述字符數(shù)組包括功能碼;

讀取所述功能碼并根據(jù)功能碼進行數(shù)據(jù)報文的分類;

對分類后的數(shù)據(jù)報文進行校驗碼驗證,若校驗碼正確,則記錄所讀取的數(shù)據(jù),進行下一數(shù)據(jù)報文的處理,若不正確,則直接進行下一數(shù)據(jù)報文的處理。

所述數(shù)據(jù)報文的分類包括事件報文、遙測數(shù)據(jù)報文和遙信數(shù)據(jù)報文。

所述規(guī)約轉(zhuǎn)換具體為:

301)創(chuàng)建一TCP偵聽,通過該偵聽器判斷是否有通訊前置機連接;

302)在有通訊前置機連接時,讀取設(shè)定字節(jié)的TCP數(shù)據(jù),識別所讀取的TCP數(shù)據(jù),根據(jù)識別結(jié)果執(zhí)行相應(yīng)操作,所述相應(yīng)操作包括激活數(shù)據(jù)傳輸、接收測試命令、向岸電設(shè)備發(fā)送單點遙控命令、向岸電設(shè)備發(fā)送雙點遙控命令以及分批發(fā)送采集的所有運行數(shù)據(jù)。

所述步驟302)包括:

321)讀取2字節(jié)的TCP數(shù)據(jù),判斷是否有誤,若是,則執(zhí)行步驟322),若否,則執(zhí)行所述讀取設(shè)定字節(jié)的TCP數(shù)據(jù)的操作;

322)判斷全局變量的數(shù)據(jù)是否發(fā)生變化,若是,則將發(fā)生變化的數(shù)據(jù)上傳至通訊前置機,若否,則返回步驟321)。

與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點:

1)本發(fā)明可方便地實現(xiàn)數(shù)據(jù)采集和規(guī)約轉(zhuǎn)換,把不同廠家、不同規(guī)約的設(shè)備連接到一個通訊管理裝置,再通過以太網(wǎng)接口上傳到通訊前置機,降低了監(jiān)控系統(tǒng)的硬件成本,同時也提高了監(jiān)控系統(tǒng)的可操作性,利于監(jiān)控系統(tǒng)今后功能擴展與應(yīng)用推廣。

2)本發(fā)明有利于監(jiān)控系統(tǒng)今后功能擴展與應(yīng)用推廣。

3)數(shù)據(jù)傳輸方面,可只上傳發(fā)生變化的數(shù)據(jù),由此可節(jié)省網(wǎng)絡(luò)資源,并能夠及時更新發(fā)生變化的信息量。

4)系統(tǒng)的硬件采用當(dāng)前流行的STM32嵌入式平臺,價格只有之前外購的產(chǎn)品的三十分之一,開發(fā)軟件采用LabVIEW圖形化開發(fā)平臺,可根據(jù)工程需要,快速搭建系統(tǒng)框架,大幅提高開發(fā)效率。

5)自主研發(fā)的系統(tǒng)可接入標準規(guī)約的數(shù)據(jù)采集設(shè)備,也可以自主開發(fā)程序,接入非標準規(guī)約的采集設(shè)備,擴大了系統(tǒng)的使用范圍。

6)系統(tǒng)硬件體積小,功耗低,可以集成到大的數(shù)據(jù)采集系統(tǒng)中,不占用過多的空間和電源功耗。

附圖說明

圖1為岸電信息管理與監(jiān)控系統(tǒng)總體框架圖;

圖2為實施例中數(shù)據(jù)采集卡硬件結(jié)構(gòu)示意圖;

圖3為本發(fā)明主動采集數(shù)據(jù)的流程圖;

圖4為本發(fā)明偵聽采集數(shù)據(jù)的流程圖;

圖5為RTU通訊報文的處理流程圖;

圖6為本發(fā)明的規(guī)約轉(zhuǎn)換流程圖。

具體實施方式

下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細說明。本實施例以本發(fā)明技術(shù)方案為前提進行實施,給出了詳細的實施方式和具體的操作過程,但本發(fā)明的保護范圍不限于下述的實施例。

據(jù)工程項目的功能要求,信息管理與監(jiān)控總體架構(gòu)可以分為四層:上層系統(tǒng)(港區(qū)電力監(jiān)控系統(tǒng))、管理與監(jiān)控層、通訊與就地監(jiān)控層和設(shè)備層,如圖1所示。其中,港區(qū)電力監(jiān)控系統(tǒng)實現(xiàn)對整個港區(qū)用電信息的監(jiān)視和控制。通訊與就地監(jiān)控層主要是完成岸電系統(tǒng)各電氣設(shè)備的信息集成和運行控制管理,各電氣柜和數(shù)據(jù)采集設(shè)備之間通過工業(yè)數(shù)據(jù)總線連接,各設(shè)備相互配合共同完成岸電信息管理與監(jiān)控的任務(wù)。管理與監(jiān)控層是根據(jù)港口電力監(jiān)控的業(yè)務(wù)流程對岸電設(shè)備所采集到的數(shù)據(jù)進行整合,實現(xiàn)遠程的信息管理、運行監(jiān)視、控制、數(shù)據(jù)存儲、視頻監(jiān)控與歷史數(shù)據(jù)的查詢、報表生成、打印和Web發(fā)布功能,并提供給相應(yīng)數(shù)據(jù)到各個業(yè)務(wù)部門。設(shè)備層有岸電電源的主要設(shè)備,實現(xiàn)電網(wǎng)10kV/50Hz到船上用電460V/60Hz的變換。

本發(fā)明的數(shù)據(jù)采集與規(guī)約轉(zhuǎn)換方法實現(xiàn)于圖1所示的通訊與就地監(jiān)控層,該方法主要是對高壓柜、變壓器柜、變頻器柜、RTU(遠程終端單元)柜等設(shè)備通過RS485和RS232進行實時數(shù)據(jù)采集,并與通訊前置機實現(xiàn)以太網(wǎng)通訊。該方法包括以下步驟:

對被動岸電設(shè)備的運行數(shù)據(jù)進行主動采集,寫入到相應(yīng)的全局變量,所述被動岸電設(shè)備包括高壓柜、變壓器柜和變頻器柜;

對主動岸電設(shè)備的運行數(shù)據(jù)進行偵聽采集,寫入到相應(yīng)的全局變量,所述主動岸電設(shè)備包括遠程終端單元;

將所述主動采集和偵聽采集的所有運行數(shù)據(jù)進行規(guī)約轉(zhuǎn)換,并發(fā)送至通訊前置機。

如圖2所示,本實施例中,對被動岸電設(shè)備的運行數(shù)據(jù)進行主動采集具體包括:

101:系統(tǒng)時鐘初始化,為了保證串口初始化后的波特率是正確的,需要對STM32系統(tǒng)時鐘進行倍頻操作,初始化系統(tǒng)時鐘。

102:串口初始化,串口初始化的參數(shù)比較多,除了基本的串口名(COM1~COM5)、波特率(4800~115200)、數(shù)據(jù)位(8~9bits)、校驗(無、奇偶校驗)、停止位(1.0、1.5、2.0bit)之外,還有兩個比較重要的參數(shù):“讀取終止符”和“是否啟用終止符”。

103:IO初始化,選擇通訊所需要的IO口、設(shè)置輸入模式、開啟IO時鐘。

104:數(shù)據(jù)采集,為每一個通信端口中接入的設(shè)備設(shè)置一個唯一的地址,根據(jù)廠家提供的通訊協(xié)議,生成召測報文指令到任務(wù)隊列,召測報文指令包括遙測指令和遙信指令。

105:從遙測指令隊列讀取召測命令,進入步驟107和108。

106:從遙信指令隊列讀取召測命令,進入步驟107和108。

107:使能RS485為發(fā)送模式。

108:發(fā)送指令到串口。

109:使能RS485為讀取模式,準備讀取串口緩沖區(qū)中的數(shù)據(jù)。

110:獲取串口緩沖區(qū)的字節(jié)數(shù)。

111:根據(jù)步驟110獲取的字節(jié)數(shù),讀取串口緩沖區(qū)中的數(shù)據(jù)報文。

112:數(shù)據(jù)處理,寫入數(shù)據(jù)到全局變量,對接收到的數(shù)據(jù)報文,先要轉(zhuǎn)換為字節(jié)數(shù)組,對數(shù)據(jù)報文校驗無錯誤后,再根據(jù)通訊協(xié)議中的設(shè)備地址、功能碼和寄存器地址,對遙測量、遙信量進行分類,寫入到相應(yīng)的全局變量。

113:檢測系統(tǒng)是否有退出指令,若沒有,則返回步驟104,開始下一輪的數(shù)據(jù)采集過程。若有退出指令,則進入步驟114。

114:關(guān)閉串口,若收到退出指令,關(guān)閉串口,釋放串口占用的資源。

如圖3所示,本實施例中,對主動岸電設(shè)備的運行數(shù)據(jù)進行偵聽采集具體包括:

201:STM32系統(tǒng)時鐘初始化,為了保證串口初始化后的波特率是正確的,需要對STM32系統(tǒng)時鐘進行倍頻操作,初始化系統(tǒng)時鐘。

202:串口初始化,初始化串口名、波特率、數(shù)據(jù)位、校驗位、停止位、讀取終止符和是否啟用終止符。

203:清空IO緩沖區(qū),與主動召測方式不同,RTU會主動上傳運行數(shù)據(jù)到所接的通訊端口,所以,在數(shù)據(jù)采集與規(guī)約轉(zhuǎn)換軟件開啟后,緩沖區(qū)就有可能已經(jīng)有運行的數(shù)據(jù),為保通訊數(shù)據(jù)的實時性,對原有的數(shù)據(jù)要先清除。

204:串口讀取1字節(jié)數(shù)據(jù),首先讀取1個字節(jié)數(shù)據(jù),然后到步驟205,判斷讀到的是否為協(xié)議傳輸?shù)牡谝粋€字節(jié)EB。

205:若讀到的字符串不是EB,則繼續(xù)讀取下一個字節(jié)數(shù)據(jù),直到找到字符串EB.

206:若讀到的第一個字節(jié)是EB,則再從串口緩沖區(qū)讀取一個字節(jié)數(shù)據(jù)。

207:判斷讀到的第二個字節(jié)字符串是否為90,若不是,返回步驟204繼續(xù)讀取下一字節(jié),若是,則轉(zhuǎn)到步驟208。

208:從串口一次讀取10字節(jié)數(shù)據(jù),然后截取前4個字節(jié)。

209:判斷字符串的值是否等于EB90EB90,若不是,返回步驟204繼續(xù)讀取下一字節(jié),若是,則轉(zhuǎn)到步驟210。

210:根據(jù)步驟208中讀取的10個字節(jié)中的第7個字節(jié)值,確定下一次讀取的字節(jié)數(shù)。

211:根據(jù)步驟210中計算的報文長度,從串口緩沖區(qū)讀取剩余的數(shù)據(jù)報文。

212:遠程終端單元報文處理過程。

213:檢測系統(tǒng)是否有退出指令,若無退出指令,返回步驟204,開始下一輪數(shù)據(jù)采集過程,若有退出指令,則進入步驟214。

214:關(guān)閉串口,若收到退出指令,關(guān)閉串口,釋放串口占用的資源。

如圖4所示,遠程終端單元報文處理過程具體包括:

221:讀取數(shù)據(jù)報文字符串,程序?qū)η懊鎺讉€步驟中讀到的數(shù)據(jù)字符串重新連接,組成一條完整的數(shù)據(jù)報文。

222:把步驟221中讀到的數(shù)據(jù)報文字符串轉(zhuǎn)化為字節(jié)數(shù)組,方便后續(xù)步驟中的數(shù)據(jù)處理。

223:讀取功能碼,數(shù)據(jù)數(shù)組中,第7、8字節(jié)是功能碼,功能碼表明了本組數(shù)據(jù)的數(shù)據(jù)類型,根據(jù)不同的功能碼,對數(shù)據(jù)進行分類。

224:若在步驟223中讀到的功能碼是E幀,則為事件記錄幀。

225:根據(jù)校驗碼算法對數(shù)據(jù)中的校驗位進行比較,判斷數(shù)據(jù)在傳輸過程中有無誤碼,若校驗位錯誤,則丟棄數(shù)據(jù),返回步驟221,繼續(xù)讀取下一組數(shù)據(jù)。

226:若校驗位正確,則將收到的事件記錄寫入到事件隊列,繼續(xù)讀取下一組數(shù)據(jù)。

227:若在步驟223中讀到的功能碼是A幀、B幀、C幀,則為遙測幀,進入到遙測幀處理分支。

228:根據(jù)校驗碼算法對數(shù)據(jù)中的校驗位進行比較,判斷數(shù)據(jù)在傳輸過程中有無誤碼,若校驗位錯誤,則丟棄數(shù)據(jù),返回步驟221,繼續(xù)讀取下一組數(shù)據(jù)。

229:若校驗位正確,則把收到的遙測幀根據(jù)數(shù)據(jù)中的遙測序號,寫入相應(yīng)的遙測點全局變量,繼續(xù)讀取下一組數(shù)據(jù)。

230:若在步驟223中讀到的功能碼是遙信幀,進入到遙信幀處理分支。

231:根據(jù)校驗碼算法對數(shù)據(jù)中的校驗位進行比較,判斷數(shù)據(jù)在傳輸過程中有無誤碼,若校驗位錯誤,則丟棄數(shù)據(jù),返回步驟221,繼續(xù)讀取下一組數(shù)據(jù)。

232:若校驗位正確,則把收到的遙信幀根據(jù)數(shù)據(jù)中的遙信序號,寫入相應(yīng)的遙信點全局變量,繼續(xù)讀取下一組數(shù)據(jù)。

如圖5所示,本實施例中,規(guī)約轉(zhuǎn)換具體包括:

301:創(chuàng)建TCP偵聽,為TCP網(wǎng)絡(luò)連接創(chuàng)建偵聽器。

302:等待TCP偵聽,等待已接受的TCP網(wǎng)絡(luò)連接。

303:判斷是否有客戶端連接,若沒有,返回步驟302繼續(xù)等待TCP偵聽。

304:若有客戶端連接,則讀取2字節(jié)的TCP數(shù)據(jù)。

305:判斷接收緩沖區(qū)是否有數(shù)據(jù),若緩沖區(qū)存在2字節(jié)的數(shù)據(jù),轉(zhuǎn)到步驟306,若沒有,則轉(zhuǎn)到步驟320。

306:字符串?dāng)?shù)組轉(zhuǎn)換為字節(jié)數(shù)組,方便后續(xù)步驟對數(shù)據(jù)的處理。

307:判斷字節(jié)數(shù)據(jù)的第一個字節(jié)是否等于68H(H表示16進制格式,下同),若不是,轉(zhuǎn)到步驟304,若是,則根據(jù)數(shù)據(jù)單元長度,轉(zhuǎn)到步驟308和步驟313。

308:若數(shù)據(jù)單元長度為04H,則分析數(shù)組中控制域的值。

309:若控制域的值為07H,則表明這條使命是激活數(shù)據(jù)傳輸。

310:此時服務(wù)端會發(fā)送確認激活數(shù)據(jù)傳輸?shù)膱笪拿罱o客戶端。

311:若控制域的值為43H,則表明這條使命是測試命令。

312:此時服務(wù)端會發(fā)送確認測試的報文命令給客戶端。

313:若數(shù)據(jù)單元長度為0EH,則分析數(shù)組中控制域的值。

314:若類型標識為2DH,則表明這條使命是單點遙控命令。

315:根據(jù)命令中的控制點號,發(fā)送單點遙控命令到相應(yīng)岸電設(shè)備。

316:若類型標識為2EH,則表明這條使命是雙點遙控命令。

317:根據(jù)命令中的控制點號,發(fā)送雙點遙控命令到相應(yīng)岸電設(shè)備。

318:若類型標識為64H,則表明這條指令是總召喚命令。

319:發(fā)送總召喚數(shù)據(jù),服務(wù)端會把所有的遙測量和遙信量分批發(fā)送給客戶端。

320:判斷全局變量中的數(shù)據(jù)有無發(fā)生變化,若沒有變化,會返回步驟304,繼續(xù)讀取2字節(jié)的數(shù)據(jù),若有數(shù)據(jù)發(fā)生了變化,則轉(zhuǎn)到步驟321。

321:上傳變化的遙測、遙信量。

上述數(shù)據(jù)采集與規(guī)約轉(zhuǎn)換方法可在一個硬件數(shù)據(jù)采集板中實現(xiàn),數(shù)據(jù)采集板的結(jié)構(gòu)如圖6所示。該數(shù)據(jù)采集板的處理器采用STM32F407,該處理器具有168MHz主頻、128KB RAM、1M Flash、14個定時器,該處理器擁有更強勁的性能、更高的代碼密度、位帶操作、可嵌套中斷、低成本、低功耗等眾多優(yōu)勢,是行業(yè)領(lǐng)先的32位處理器,適用于具有高確定性的實時應(yīng)用。該處理器本身具有1M Flash,可通過SD卡接口外接SD卡,用于存放程序和數(shù)據(jù),Jlink下載調(diào)試USB口用于下載程序和在線調(diào)試,以太網(wǎng)接口用于連接管理與監(jiān)控層的通訊前置機。數(shù)據(jù)采集板中具有1路485總線接口,一路RS232總線接口,一路CAN接口總線,分別用于連接不同通訊口的監(jiān)控設(shè)備。數(shù)據(jù)采集板的開發(fā)軟件支持LabVIEW圖形化開發(fā),利用開發(fā)平臺所帶的開發(fā)工具包,可為嵌入式32位精簡指令集運算和微控制器提供圖形化編程,開發(fā)平臺為用戶提供了1000多種底層的函數(shù),可以方便、快速使用數(shù)據(jù)采集板上提供的硬件資源,實現(xiàn)系統(tǒng)的高效、快速開發(fā)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
仪陇县| 宜阳县| 清远市| 会泽县| 顺平县| 宝应县| 沁源县| 虹口区| 卫辉市| 东光县| 贡嘎县| 菏泽市| 富川| 东源县| 安阳县| 呼玛县| 北安市| 临朐县| 桑日县| 阿克苏市| 托克逊县| 乾安县| 花莲市| 长顺县| 游戏| 城口县| 江油市| 仁布县| 海晏县| 甘泉县| 白河县| 色达县| 安康市| 玉树县| 台安县| 奉贤区| 南川市| 枝江市| 乾安县| 江阴市| 宝应县|