亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        船舶柴油機主動隔振監(jiān)控系統(tǒng)設(shè)計

        2019-03-30 02:53:34陳智君王元真雷本鑫
        艦船科學(xué)技術(shù) 2019年3期
        關(guān)鍵詞:下位結(jié)點字節(jié)

        陳智君,王元真,雷本鑫,高 超

        (武漢理工大學(xué) 能源與動力工程學(xué)院,湖北 武漢 430063)

        0 引 言

        由于我國主動隔振系統(tǒng)的研究起步較晚,技術(shù)并不成熟,較多主動隔振控制算法仍在仿真實驗階段,很少有在實際應(yīng)用中的案例[1]。而對于實驗階段的主動隔振來說,為驗證控制算法的控制效果,往往希望能夠?qū)崟r觀察被控對象的振動情況,并通過對比參數(shù)調(diào)整前后被控對象的振動曲線,來判斷控制算法在不同條件下控制效果的好壞。因此,擁有1個配套上位機監(jiān)控系統(tǒng)對于隔振實驗來說很有必要。本文作者以某型柴油機為對象,開發(fā)了1套主動隔振系統(tǒng)上位機監(jiān)測軟件,并對自適應(yīng)主動隔振算法進行研究。

        1 主動隔振系統(tǒng)總體框架

        主動隔振系統(tǒng)是指能夠?qū)崿F(xiàn)對被控對象的振動實時監(jiān)測,并根據(jù)所監(jiān)測的振動信息利用自適應(yīng)算法得出實時的控制規(guī)律,最終控制作動器產(chǎn)生反振力從而抑制其振動的1套完整系統(tǒng)。系統(tǒng)主要由上、下位機2部分組成。

        下位機是系統(tǒng)硬件部分,主要功能是實時采集被控區(qū)域的振動信號,并根據(jù)所采集的振動信號進行次級通道辨識,再由自適應(yīng)算法得出實時的控制規(guī)律,經(jīng)由功率放大器輸出給作動器,控制作動器產(chǎn)生相應(yīng)頻率的反振力。上位機是系統(tǒng)PC端顯示系統(tǒng),主要功能是通過以太網(wǎng)接收下位機辨識結(jié)果以及采集的實時加速度信號,并在顯示軟件中繪制成曲線。本文上、下位機之間的通訊連接采用C/S模式,即客戶端/服務(wù)器模式[2]。下位機為系統(tǒng)服務(wù)器,上位機顯示系統(tǒng)為客戶端。系統(tǒng)具體結(jié)構(gòu)如圖1所示。

        2 監(jiān)控系統(tǒng)軟件具體實現(xiàn)

        2.1 通信設(shè)計

        圖 1 主動隔振系統(tǒng)整體框架Fig. 1 Active vibration isolation system overall frame

        本文中上位機的主要功能是接收并顯示下位機加速度傳感器采集的實時振動信息,以及讀取、存儲并修改下位機的重要參數(shù),本文采用UDP協(xié)議發(fā)送和接收數(shù)據(jù)。

        為保證數(shù)據(jù)傳輸?shù)某晒β?,在設(shè)計過程中應(yīng)避免數(shù)據(jù)報發(fā)生分片。對UDP數(shù)據(jù)報來說,需要在應(yīng)用層限制每個UDP數(shù)據(jù)報的大小,一般不超過1 472個字節(jié)[6]。本文采樣頻率為4 K,每個通道的單個數(shù)據(jù)為2個字節(jié),總的通道數(shù)為12個,則每秒采集96 KB大小的數(shù)據(jù)。為方便編程及數(shù)據(jù)的解析同時避免IP分片,本文將每次采集的12個通道的數(shù)據(jù)組合為一個數(shù)據(jù)結(jié)構(gòu)體作為最小的數(shù)據(jù)單元,每個數(shù)據(jù)包中均包含50個這樣的數(shù)據(jù)單元,即總的用戶數(shù)據(jù)大小為1 200字節(jié),上位機每秒將接收到80個這樣的數(shù)據(jù)包。

        此外,UDP協(xié)議在通信過程中發(fā)送端可于任意時刻自由發(fā)送數(shù)據(jù),接收端無法確認(rèn)何時接收到來自何地的數(shù)據(jù),且接收到數(shù)據(jù)后也不會有任何確認(rèn)信息。因此,本文在UDP協(xié)議的基礎(chǔ)上,在應(yīng)用層協(xié)議中引入了數(shù)據(jù)包確認(rèn)、掉包重發(fā)以及排序機制。為此本協(xié)議自定義了一個長度為5個字節(jié)的應(yīng)用層協(xié)議頭,協(xié)議頭的組成為1個字節(jié)的數(shù)據(jù)包類型標(biāo)識、2個字節(jié)的數(shù)據(jù)包序號(包括1個字節(jié)的前序號和1個字節(jié)的后序號)以及2個字節(jié)的數(shù)據(jù)長度標(biāo)識,使通訊在不占用太多系統(tǒng)資源的條件下滿足一定的傳輸可靠性。此外,在模擬量通道數(shù)據(jù)之前為3個字節(jié)的數(shù)字量通道數(shù)據(jù),用于標(biāo)識下位機的重要報警信息。因此,一個UDP數(shù)據(jù)報的大小應(yīng)為協(xié)議頭大小加上用戶數(shù)據(jù)大小,總共為1 208個字節(jié),遠(yuǎn)小于1 472個字節(jié),不會發(fā)生IP分片。自定義用戶協(xié)議頭結(jié)構(gòu)如圖2所示。

        圖 2 自定義用戶協(xié)議頭結(jié)構(gòu)Fig. 2 Custom user protocol header structure

        數(shù)據(jù)包的確認(rèn)機制主要通過自定義協(xié)議頭中的數(shù)據(jù)包序號來實現(xiàn),數(shù)據(jù)包序號包含前序號和后序號2個信息。前序號為當(dāng)前數(shù)據(jù)包的序號,后序號為期望下一個數(shù)據(jù)包的序號。為保證確認(rèn)機制的實現(xiàn),在客戶端引入接收緩沖區(qū),用于存放驗證后的數(shù)據(jù)??蛻舳舜_認(rèn)機制的流程圖如圖3所示。其中VeriFied和LastVerif分別為保存當(dāng)前接收到數(shù)據(jù)包序號和前一個接收到的數(shù)據(jù)包序號的數(shù)組,Count為接收到數(shù)據(jù)包的次數(shù)。

        圖 3 客戶端確認(rèn)機制流程圖Fig. 3 Client confirmation mechanism flow chart

        在服務(wù)器與客戶端進行通信的過程中,當(dāng)數(shù)據(jù)傳輸過程中發(fā)生了掉包或者是發(fā)送的數(shù)據(jù)出現(xiàn)了錯誤,就需要對丟掉的以及發(fā)生錯誤的數(shù)據(jù)包進行重新發(fā)送,并在客戶端對重發(fā)的數(shù)據(jù)進行排序,以確保接收數(shù)據(jù)的正確性。為實現(xiàn)重發(fā)以及數(shù)據(jù)包的排序,在服務(wù)器引入2個發(fā)送緩沖區(qū),一個用于存放已發(fā)送的數(shù)據(jù)包,一個用于向上位機發(fā)送數(shù)據(jù);在客戶端引入一個接收隊列,用于存放驗證后的數(shù)據(jù)包。服務(wù)器采用2個緩沖區(qū)的目的是存放發(fā)送后的數(shù)據(jù)包,用于客戶端驗證掉包后的重發(fā)。重發(fā)機制如圖4所示。

        對于客戶端,為保證顯示數(shù)據(jù)的實時性,本文使用多線程技術(shù),將接收數(shù)據(jù)以及驗證過程放在一個線程中,將解碼數(shù)據(jù)包的過程放在另一個線程中,2個線程同步運行從而保證接收數(shù)據(jù)與解碼顯示數(shù)據(jù)的同步性。為給重發(fā)及排序過程留出一定的時間,且保證接收數(shù)據(jù)的實時性,規(guī)定上位機在接收到10個數(shù)據(jù)包之后再開啟解碼線程??蛻舳私邮贞犃腥鐖D5所示。

        圖 4 重發(fā)機制流程圖Fig. 4 Retransmission mechanism flow chart

        圖 5 客戶端接收隊列Fig. 5 Client receive queue

        對于服務(wù)器,為保證數(shù)據(jù)包重發(fā)的實現(xiàn),服務(wù)器需要緩存部分已發(fā)送的數(shù)據(jù)包。為此,在服務(wù)器引入了2個緩沖區(qū),一個用于發(fā)送實時的數(shù)據(jù),另一個用于緩存部分已發(fā)送的數(shù)據(jù)包。服務(wù)器的2個緩沖區(qū)及工作模式如圖6所示。

        圖 6 服務(wù)器緩存區(qū)工作模式圖Fig. 6 Server cache area working mode diagram

        本文中上位機使用Socket以簡化編程。為減小數(shù)據(jù)通信過程中出錯的可能性,在進行參數(shù)配置時,選用與實時數(shù)據(jù)不同的Socket進行通信。這里將實時數(shù)據(jù)通信所用Socket命名為Socket1,而將參數(shù)配置所使用的Socket命名為Socket2。由于在進行參數(shù)設(shè)置時,并不是每次都需要配置所有參數(shù),大多數(shù)情況下僅需要修改個別參數(shù)。因此在本設(shè)計中,將所有參數(shù)分別通過不同的數(shù)據(jù)包進行發(fā)送,且只有當(dāng)界面上發(fā)生更改后,才將更改的參數(shù)數(shù)據(jù)發(fā)送至下位機,沒有更改的參數(shù)不做處理。

        2.2 參數(shù)配置及儲存

        參數(shù)配置界面的主要功能是對下位機某些重要參數(shù)的值進行修改,同時具有從下位機中讀取出這些參數(shù)值的功能。此外,還可將修改后的參數(shù)值或者從下位機中讀取出來的參數(shù)值保存至計算機本地文件中,也可從本地文件中讀取參數(shù)信息并下載至下位機。本文使用XML文檔來存儲用戶配置信息,包括下位機配置參數(shù)以及通道辨識數(shù)據(jù)。下面將對操作XML文件的具體方法進行說明。

        1)創(chuàng)建XML文件

        這里首先聲明一個XmlDocument對象命名為xml-Doc,隨后創(chuàng)建XML文檔的文件頭,創(chuàng)建完文件頭后,需要創(chuàng)建文件的根元素,即根結(jié)點。這里創(chuàng)建一個名稱為Settings的根結(jié)點,根結(jié)點創(chuàng)建完成后,通過xml-Doc.Save方法將該XML文件保存至本地文件夾中。

        2)讀取XML文件

        讀取XML文件信息之前,首先聲明一個XmlDocument對象,再調(diào)用該對象的Load方法,從指定的路徑中加載XML文件。加載完XML文件后,即可通過調(diào)用對象的SelectSingleNode以及GetAttribute方法來獲取該XML文件指定的結(jié)點和屬性值。這樣就可根據(jù)該元素的屬性名稱得到該結(jié)點的屬性以及所包含的子結(jié)點信息。

        3)向XML文件中添加數(shù)據(jù)

        在向XML文檔中添加新數(shù)據(jù)的時候,也必須先通過XmlDocument對象加載整個XML文檔。然后調(diào)用SelectSingleNode方法來獲取根結(jié)點,通過CreateElement方法創(chuàng)建新的元素,使用CreateAttribute方法創(chuàng)建屬性,用AppendChild將新建的結(jié)點掛接在其他結(jié)點上,通過SetAttributeNode來設(shè)置結(jié)點的屬性。完成后,再創(chuàng)建該結(jié)點的子結(jié)點,最后將新創(chuàng)建的結(jié)點掛接到根結(jié)點上,并保存文件,這樣即可向已有的XML文件中加入新的結(jié)點。

        2.3 程序界面設(shè)計

        結(jié)合用戶對監(jiān)測系統(tǒng)界面的要求可將界面劃分如下:

        1)通道辨識界面,主要用于顯示接收下位機通道辨識得到的濾波器系數(shù),并以曲線的形式顯示在界面上,并且軟件提供了辨識系數(shù)保存至本地和本地辨識系數(shù)下載的功能。此外,界面上留有指定區(qū)域用以顯示下位機的報警信息,當(dāng)下位機出現(xiàn)報警時,會在界面上以紅色標(biāo)出。

        2)實時曲線界面,用于顯示各個通道的實時數(shù)據(jù),并可選擇將其中4個通道的數(shù)據(jù)以曲線的形式顯示在界面上,并且軟件提供了數(shù)據(jù)保存功能,可以一次保存1 000個數(shù)據(jù)點,用于進一步的數(shù)據(jù)分析。此外,該界面也留有指定的報警顯示區(qū)域。

        3)參數(shù)配置界面,用于完成下位機配置信息的下載。打開該界面時,軟件會讀取下位機當(dāng)前的配置信息并顯示,辨識濾波器系數(shù)也會被讀取,并以曲線的形式顯示在通道辨識界面上。此外,軟件提供了配置信息保存至本地和本地配置信息下載功能。設(shè)計好的系統(tǒng)界面主要功能模塊如圖7所示。

        圖 7 系統(tǒng)界面功能模塊圖Fig. 7 System interface function block diagram

        3 自適應(yīng)控制算法

        圖 8 次級通道估計模型計算流程圖Fig. 8 Secondary channel estimation model calculation flow chart

        假定次級通道的估計模型為M階的橫向濾波器,即

        則該時刻的誤差信號為:

        則可將誤差信號表示為:

        根據(jù)梯度下降法,可知控制濾波器權(quán)向量的遞推方程為:

        將式(10)代入式(9)得到濾波器權(quán)向量的遞推公式為:

        以上即為FxLMS算法,F(xiàn)xLMS算法與LMS算法最大的區(qū)別在于增加了一個次級通道來減小甚至消除功率放放大器、作動器等設(shè)備形成的誤差通道所造成的影響。

        4 主動隔振系統(tǒng)驗證

        4.1 通信功能驗證

        在該驗證環(huán)節(jié)中,首先配置下位機,使下位機共上傳4 800個數(shù)據(jù)包,且每上傳5個數(shù)據(jù)包便丟失一個數(shù)據(jù)包,之后通過修改數(shù)據(jù)包的上傳時間間隔,觀察上位機記錄的丟包次數(shù)和接收到的重發(fā)數(shù)據(jù)包數(shù),以檢測通信協(xié)議的可靠性。經(jīng)驗證,當(dāng)下位機上傳時間間隔在4 ms及以上時,上位機收到的總包數(shù)為4 800,記錄的丟包次數(shù)和重發(fā)包數(shù)均為960,此時協(xié)議可靠。而當(dāng)時間間隔約為2.6 ms時,上位機收到的總包數(shù)為4 607,丟包次數(shù)為1 003,重發(fā)包數(shù)為910,此時協(xié)議丟包率達(dá)到4%。而下位機在實際控制過程中數(shù)據(jù)包的上傳時間間隔約為20 ms,因此可以認(rèn)為該通信協(xié)議可靠。

        4.2 主動隔振系統(tǒng)效果驗證

        在本驗證環(huán)節(jié)中,以控制器輸出的白噪聲作為次級通道的輸入,利用LMS算法對次級通道估計模型的橫向濾波器權(quán)向量進行更新。并將辨識得到的次級通道的估計模型應(yīng)用到主動控制上,進行主動控制的臺架試驗。首先打開功放對4個通道依次進行辨識,穩(wěn)定后所得的4個次級通道估計模型的權(quán)向量系數(shù)如圖9所示。

        圖 9 次級通道辨識結(jié)果Fig. 9 Secondary channel identification results

        可以看出辨識數(shù)據(jù)均逐漸趨于收斂,適合用于主動隔振控制。將該組辨識結(jié)果應(yīng)用于主動隔振,所得到的控制數(shù)據(jù)如圖10所示??梢钥闯隹刂茢?shù)據(jù)平穩(wěn)且峰值適當(dāng)??烧J(rèn)為主動隔振監(jiān)控系統(tǒng)運作良好,無嚴(yán)重丟包現(xiàn)象,且達(dá)到隔振目的。

        5 結(jié) 語

        圖 10 控制數(shù)據(jù)Fig. 10 Control data

        本文在分析主動隔振系統(tǒng)對于振動監(jiān)測顯示需求的基礎(chǔ)上,運用C#語言進行上位機系統(tǒng)軟件的開發(fā),實現(xiàn)上、下位機之間的實時、可靠的傳輸數(shù)據(jù),對自適應(yīng)主動隔振算法進行了研究。并在臺架試驗中,上位機軟件實現(xiàn)了對柴油機振動狀態(tài)的實時監(jiān)測,監(jiān)測精度較高,同時取得了較好的主動隔振效果。通過使用此上位機軟件對柴油機進行實時監(jiān)測,一方面有助于柴油機主動隔振系統(tǒng)的開發(fā),另一方面通過觀察和分析柴油機運行過程中振動狀態(tài)的變化,能夠及時發(fā)現(xiàn)甚至預(yù)測柴油機可能出現(xiàn)的故障,提高柴油機運行的安全性,同時也符合智能船舶的發(fā)展理念。本監(jiān)控系統(tǒng)軟件的設(shè)計思路和實現(xiàn)方法,可為國內(nèi)柴油機主動隔振系統(tǒng)開發(fā)等領(lǐng)域提供一定的參考。

        此監(jiān)控軟件還有些需要改進的方面,例如目前該軟件只能導(dǎo)出短時間內(nèi)的振動數(shù)據(jù),因此在后續(xù)的開發(fā)過程中可通過使用數(shù)據(jù)庫等技術(shù)進行優(yōu)化等。

        猜你喜歡
        下位結(jié)點字節(jié)
        No.8 字節(jié)跳動將推出獨立出口電商APP
        No.10 “字節(jié)跳動手機”要來了?
        發(fā)射機房監(jiān)控系統(tǒng)之下位機
        Ladyzhenskaya流體力學(xué)方程組的確定模與確定結(jié)點個數(shù)估計
        簡談MC7字節(jié)碼
        景洪電廠監(jiān)控系統(tǒng)下位機數(shù)據(jù)傳輸網(wǎng)絡(luò)改造
        圍觀黨“下位”,吐槽帝“登基”
        CAN總線并發(fā)通信時下位機應(yīng)用軟件設(shè)計
        基于Raspberry PI為結(jié)點的天氣云測量網(wǎng)絡(luò)實現(xiàn)
        人類進入“澤它時代”
        成人免费xxxxx在线观看| 中文字幕在线观看乱码一区| 日本精品一区二区在线看| 久久网站在线免费观看| 亚洲av第一区国产精品| 亚洲欧美中文日韩在线v日本| 日韩亚洲中文有码视频| 亚洲男同gay在线观看| 无码人妻精品一区二区三区不卡 | 无码国产69精品久久久孕妇| 精品人妻少妇一区二区不卡| 人妻无码Aⅴ中文系列| 午夜av内射一区二区三区红桃视| 亚洲黄色官网在线观看| 日韩中文字幕久久久老色批| 亚洲码欧美码一区二区三区| 97久久超碰国产精品旧版| 久久欧美与黑人双交男男| 亚洲国产麻豆综合一区| 亲少妇摸少妇和少妇啪啪| 精品国产中文久久久免费| 国产人妖乱国产精品人妖| 成人性生交大片免费| 欧美国产成人精品一区二区三区| 国内精品大秀视频日韩精品| 亚洲AV无码日韩综合欧亚 | 国产精品露脸视频观看| 亚洲男人天堂av在线| 久久精品亚洲乱码伦伦中文| 午夜精品免费视频一区二区三区 | 精品久久人妻av中文字幕| 四川丰满少妇被弄到高潮| 日韩亚洲制服丝袜中文字幕| 亚洲国产色图在线视频| 人妻精品久久一区二区三区| 小妖精又紧又湿高潮h视频69| 色一情一乱一伦| 国产精品入口牛牛影视| 白白青青视频在线免费观看| 手机在线播放成人av| 欧美性猛交aaaa片黑人|