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

        ?

        面向海量數據的全船振動分析管理系統研究

        2022-10-27 02:44:32杜德鋒周文進何江賢孟凡凱
        計算機測量與控制 2022年10期
        關鍵詞:烈度測點加速度

        杜德鋒,周文進,何江賢,孟凡凱

        (1.中國人民解放軍91388部隊,廣東 湛江 524002; 2.海軍工程大學,武漢 430033)

        0 引言

        隨著人類對海洋資源的開發(fā)利用不斷深入,大型船舶數量井噴式增長。振動的評價與控制是大型船舶日常管理的重要方面。機械設備的振動噪聲過大,不僅影響其使用壽命,且易對船體結構造成損壞,還會對船舶的遠洋航行安全造成危害[1-2]。船員長期處于嘈雜的艙室環(huán)境中,也易對身心造成損害,引發(fā)健康問題[2]。隨著振動噪聲測試系統的不斷發(fā)展、對設備振動噪聲的認識不斷提高,在整個船舶上布設振動噪聲測試系統越來越受到重視。但因大型船舶船體結構龐大、機械設備繁多、管路復雜[3-5],對全船的振動噪聲測試系統的數據融合性提出了較高要求[6]。

        現行的船舶振動測試標準對機械設備、船體結構、推進裝置等振動測試分別做出了具體規(guī)定。機械設備的振動評價需要在機腳、基座、管路、隔振裝置、設備與船體連接處上布設振動測點[7-8];船體結構振動評價需要在沿船體方向在船殼上布設振動測點;船舶推進裝置的振動評價需要在動力裝置、軸系、以及各種支撐軸承上布設振動測點。安裝于船舶不同艙室、隸屬于不同類型設備的振動測點,又因其安裝空間位置、隔振層級、以及不同的測試時間與組合工況的不同,具有復雜的多重屬性[9-14]??梢钥闯?,全船的振動測試評價數據量巨大、振動測點屬性多,在不同的應用場景下,一方面需要利用數據冗余形成結構性數據塊進行批量分析;另一方面需要根據測點屬性內在的聯系,將測試數據與測點屬性解耦剝離開來分別形成易擴展維護的數據模塊,進行深度的數學挖掘。

        Brüel & Kj?r(BK)測試系統[15-16]和LMS測試系統[17-21]都是國際領先、被廣泛應用于大型船舶振動噪聲測試的主流代表,均具有一定的智能化管理數據能力,可以進行初步的過濾和排序,對于簡單的振動測試分析可以勝任。但對于大型船舶海量振動測試,因設備間復雜的耦合關系、隔振方式的多樣性及傳遞路徑的復雜性,這些系統能夠開放給用戶的數據管理功能還很有限,不能實現歷史數據工程化的查詢與調用,還無法滿足全系統、全周期管理。本文聚焦BK振聲測試系統的數據分類、可視化及運行效率問題,為有效控制振聲數據顆粒度,基于MySQL關系型數據庫和Python混合編程[22],分別設計面向查詢結果的數據庫和面向數據解耦的數據庫交互平臺。著力解決數據顆粒度低、交互性弱、提取效率不足等問題,為后續(xù)海量數據特征的深度挖掘打下基礎。

        1 振聲數據庫的設計

        MySQL由瑞典MySQL AB公司開發(fā)以來,目前已成長為最流行的關系型數據庫管理系統,有著體積小、速度快、支持跨平臺、開源、數據存儲量大(支持TB級數據)等優(yōu)點,可以稱得上是目前運行速度最快的SQL語言數據庫之一。在工程領域得到廣泛應用。因此以MySQL作為船舶測試系統振聲數據庫的開發(fā)平臺。

        在大型船舶振聲測試中主要以壓電加速度傳感器來測量旋轉機械及船體的振動沖擊[23-24],以傳聲器(麥克風)來測量艙室的空氣噪聲,這兩種測量元件所采集的數據經各種預處理會得到多樣的數據類型。

        下面以BK測試系統為例來闡明整個數據采集及預處理的主要過程:1)采集階段,按照艙室分布采集前端,各艙室傳感器匯總連接至所在艙室的采集前端(具體數量由該艙室的傳感器數量和采集前端的容量決定),利用網絡交換機將各艙室的采集前端匯總至終端采集軟件,并進行前端配置以便數據錄取,每單次采集的數據以單個二進制文件格式存儲于硬盤介質上,每單次采集即是一個工況下一個單程的總數據,這樣在多次不同工況的測試下,便得到多個二進制文件,其文件總數等于各工況乘以其單程數并求和;2)預處理階段,根據振動噪聲評價標準需要:針對壓電加速度傳感器獲取的數據,需要根據不同的Reflex數據處理鏈對二進制原始數據在振動加速度、振動烈度上進行預處理,振動加速度預處理數據包含振動加速度功率線譜(FFT)、振動加速度特征線譜(CLS,characteristic line spectrum,)、三分之一倍頻程加速度級(CPB)、振動加速度總級(OVERALL)、振動加速度頻域提取(RMS);振動烈度預處理數據包含振動烈度功率線譜(FFT)、振動烈度特征線譜(CLS)、振動烈度頻域提取(RMS);針對傳聲器獲取的數據,需要根據Reflex數據處理鏈在空氣噪聲上進行預處理,空氣噪聲預處理數據包含空氣噪聲三分之一倍頻程聲壓級(CPB)、空氣噪聲A計權聲壓級、空氣噪聲總聲級[15, 25-27],以上共計11種數據類型。除振動加速度、烈度的特征線譜數據(CLS)需要根據功率譜(FFT)計算人工干預分析獲得以外,其他9種數據類型存儲在不同的預處理結果文本中,各文本文件依靠文件夾系統分類管理,每個數據文本都有其獨特的格式,如圖1所示。通常在進行振聲數據處理過程中,以非標準數據格式實現調用,數據抽取效率低,給后續(xù)的機械振動、船體振聲特性、振動能量傳遞特性的標準化分析帶來困難。

        圖1 振動測試系統數據預處理流程框架圖

        從數據邏輯屬性和后續(xù)分析來看,這11種數據類型附屬于某個工況下某個單程的某個測點上,記做數據元(工況,單程,測點)。當數據元三要素確定了,數據也就唯一確定。數據元與這11種數據類型的對應關系可劃分為兩類,一類是一對一關系:振動加速度總級、振動加速度頻域提取、振動烈度頻域提取、空氣噪聲A計權聲壓級、空氣噪聲總聲級;另一類是一對多關系:振動加速度功率線譜、振動加速度特征線譜、三分之一倍頻程振動加速度級、振動烈度功率線譜、振動烈度特征線譜、三分之一倍頻程聲壓級。

        一對一對應是一個數據元確定了一個一維數據;一對多對應是一個數據元確定了一個二維數據。以某空調系統測試為例,額定工況下測得該空調左側機腳測點原始數據、空調機體烈度數據、空調開啟時周圍空氣噪聲,經BK處理鏈分析得11種數據類型,其中一維數據為:該左側機腳的振動加速度總級(OVERALL)、振動頻域提取(RMS)、機體烈度測點頻域提取(RMS)、設備空氣噪聲A聲級、總聲級;二維數據為:該左側機腳的振動加速度功率譜(FFT)、振動加速度特征譜線(CLS)、振動加速度三分之一倍頻程加速度級、機體烈度功率譜、機體烈度特征譜線(CLS)、設備空氣噪聲三分之一倍頻程聲壓級。

        為有效管理數據,本文面向查詢結果和數據解耦設計了兩種數據庫系統。

        1.1 面向查詢結果的關系型數據庫

        在多次測試并存儲全船振動數據信息時,可將每次測試結果信息解構為三大層面:船舶層面信息、測點屬性層面信息、測試數據層面信息。其中船舶層面信息查詢變化最少,測點屬性層面查詢變化居中,測試數據層面信息查詢變化最大。

        船舶層面信息包含:測試船型(posship)(便于同類型船舶橫向比較)、測試等級(posstate)(便于船舶修理前后縱向比較),屬于一維數據。

        測點屬性層面信息包含:測點名稱(posname)、測點所屬工況(poscondition_name)、測點所屬單程編號(pos_single-passnnumber)、測點所處艙室(poscabine)、測點所處方位(posorientation)、測點所處振動傳遞級別(posposition_level)、測點所屬設備(posequipment)、測點在空間的三維坐標分量(poscoordinate_x、poscoordinate_y、poscoordinate_z)(便于抽取振動空間分布特性),屬于一維數據。

        測試數據層面信息包含:測點數據ID(posid)、測點數據單位(posunit)、測試原始數據選取時間起點(posstarttime)、測試原始數據選取時間終點(posendtime)、測試處理對應的文件名稱(posfilename)(便于后續(xù)復查)、測點數據,其中測點數據就是文中前述的11種數據類型,既有一維數據,也有二維數據。

        從數據元三要素來看,工況、單程、測點所涉及的外延信息主要是船舶層面信息、測點屬性層面信息兩部分構成,數據涉及的外延信息主要來自測試數據層面信息。從數據物理屬性來看,數據可以分為振動加速度數據、振動烈度(速度)數據、空氣噪聲數據;從數據元與數據對應關系來看,數據又可分為一維數據(振動加速度OVERALL、振動加速度RMS、空氣噪聲A計權聲壓級、空氣噪聲總聲級)、二維數據(振動加速度FFT、CPB、CLS;振動烈度FFT、CLS;空氣噪聲三分之一倍頻程聲壓級)。

        根據振聲數據常規(guī)分析方法,結合預處理數據文本各自特點,利用數據的物理屬性和維度屬性交叉組合,可以建立9個自完備的數據關系表,每張表信息都是可以獨立檢索,不涉及關系表之間的交叉查詢。以加速度信息為例,其關系表包含:1)振動加速度一維總表(其中測點數據分解為兩個字段posoverall、posrms),如表1所示;2)振動加速度功率線譜二維表(其中測點數據分解為兩個字段posx、posy),如表2所示。只需要將測點數據分解為對應的字段,同時調整一下測點屬性層面的字段,就可以建立其他7個數據關系表:3)振動三分之一倍頻程加速度級二維表(其中測點數據分解為兩個字段poscpbx、poscpby);4)振動加速度特征線譜二維表(其中測點數據分解為兩個字段pos_peakx、pos_peaky);5)振動烈度功率線譜二維表(其中測點數據分解為兩個字段posx、posy);6)振動烈度功率特征線譜二維表(其中測點數據分解為兩個字段pos_peakx、pos_peaky);7)振動烈度頻域提取一維表(其中測點數據字段為posrms);8)振動空氣噪聲一維表(其中測點數據字段可分解為兩個字段pos_a_weighted_level和pos_totalsound_level);9)振動空氣噪聲三分之一倍頻程頻帶聲壓級表(其中測點數據分解為兩個字段poscpbx、poscpby)。

        表1 加速度單值總表

        表2 加速度功率線譜表

        該架構數據庫采用InnoDB存儲引擎,各表信息是自完備的,沒有利用到多表查詢,因而存在數據冗余,但是在撰寫振動圖譜報告時,查詢邏輯簡單。也正是因為數據冗余,所占硬盤空間大,在實際測試中,隨著測試數據的累積,數據庫越來越大,查詢速度變得越來越慢,已經不再適合快速給出查詢結果。為此需要建立數據解耦的關系表,將數據元信息與數據剝離開來,分別建表存儲,利用表的主外鍵關聯,建立多表查詢,這樣一來,這些與測試數據本身關聯的測試變量可以獨立維護,可擴充新的需求變量字段,數據庫靈活性更高。

        1.2 面向數據解耦的關系型數據庫

        在數據分析處理過程中,所有需要檢索的數據條目都建立在測點基礎上,當被測船舶、測試工況、測點3個因素明確時,被檢索的數據內容即被鎖定。

        圖2 被測船舶信息表、測試工況信息表、測點信息表三表之間的關系

        被測船舶信息表的固有屬性字段包含:對象名稱、測試等級(狀態(tài)分類)、船舶類型、管理單位、測試水文條件、振聲數據采集時間等。測試工況信息表的固有屬性字段包含:工況名稱、原始采集數據名稱、預處理數據名稱、工況實施時間等。測點信息表的固有屬性字段包含:測點名稱、測點所屬艙室、測點所屬設備、測點方位、測點級別等。被測船舶信息表、測試工況信息表、測點信息表三表之間的關系如圖所示,3個表之間信息是獨立的,用主外鍵形式將三表固連在一起,被測船舶信息表中字段shipID分別對應測試工況信息表的字段condi_shipID和測點信息表的字段pos_shipID。

        建立的面向數據解耦的關系型數據庫也采用InnoDB存儲引擎,所有關系表總計7個,如圖 3所示,相較于面向查詢結果的關系型數據庫(如表1和表2所示),數據結構進一步優(yōu)化、單表字段明顯減少、表與表之間的關系更加緊密。測點固有屬性字段歸納到Table_Ship、Table_Condition、Table_Pos三個關系表中,通過關系表中主外鍵約束關系,把測點數據特征映射到Table_singlevalue、Table_fft、Table_cpb、Table_peak中去,實現測點名稱固有屬性和測點數據的分離。

        圖3 面向數據解耦的關系型數據庫表

        在設計面向查詢結果的關系型數據庫時,主要考慮用戶查詢、分析時,SQL語言編寫簡單直觀,因此采用反范式化的schema,讓參與分析的所有數據都在一張表中,很好地避免關聯,如果不需要關聯,即使表中沒有使用索引,當數據比內存大時這可能比關聯要快得多[28]。但其弱點是:在數據入庫時要插入大量重復的信息,入庫時間慢,修改測點信息時需要修改大量數據。為此,面向數據解耦的關系型數據庫采用范式化的schema,將重復的信息抽離出來單獨建表,利用表之間的關聯查詢信息,數據冗余小,磁盤占用空間小,更新數據比反范式要快。但這樣存儲和查詢邏輯復雜,不按既定規(guī)則來存儲就會混亂。兩種數據庫各有優(yōu)點,完全的范式化和完全的反范式化都不是必須追求的,根據用戶的需要進行選擇。

        2 數據入庫

        為保證振動數據能高效自動入庫,數據庫要同時滿足測點名稱規(guī)范、入庫數據格式統一兩個要素,具體步驟如下:

        2.1 規(guī)范測點名稱

        在進行首次測試或增加測點時,先依次讀取各數據類文本文件進行測點名稱遍歷匯總,去重得到測點名稱集,進行同一測點的不同名稱數據清洗,確保各測點都有規(guī)范唯一的名稱,形成標準測點名稱字典,實現各測點名稱變量到名稱字典間的標準化映射。

        2.2 統一入庫數據格式

        振聲測試系統預處理后的類文本數據文件的通常格式較為單一,但未能按圖 1中數據類型區(qū)分,比如:加速度類文本文件包含頻帶加速度級和總級,空氣噪聲聲壓頻帶級類文本文件包含頻帶聲壓級、A計權聲壓級、聲壓總級。因此需要從類文本數據格式中抽取特征數據,轉化標準格式。針對面向查詢結果的關系型數據庫,不同數據類型分別隸屬不同關系表中,標準格式入庫數據分別對應不同關系表,因此數據類型間不存在約束關系,見圖4(a)所示。

        圖4 數據入庫示意圖

        在以上標準入庫數據格式轉化基礎上,基于Python與MySQL混合編程[8],實現數據的智能入庫,利用Python庫包pandas,將預處理數據按照預先指定的字典格式加載到DataFrame后,再使用DataFrame屬性和方法與MySQL進行交互,偽代碼如下:

        import pandas as pd

        from sqlalchemy import create_engine

        sql_link = ‘MySQL+pyMySQL://root:password@localhost:3306/database?charset=utf8’

        engine = create_engine(sql_link)

        循環(huán)遍歷插入標準入庫數據格式

        table_insert= pd.DataFrame(標準入庫數據格式字典)

        table_insert.to_sql(name=‘table_fft’, con=engine, if_exists=‘append’, index=False)

        在BK產生的結果文件中,可通過文件中標記位置信息自動識別數據文件類型如圖4所示。

        利用pandas庫中的數據結構DataFrame與關系型數據庫進行數據交互。首先將數據按照數據庫中關系表形式轉化為字典,后寫入到數據結構中DataFrame去形成數據集。這樣數據入庫要比傳統的單條數據逐一入庫效率要高很多。

        3 數據快速查詢

        為實現數據的可視化及快速調用,需要在數據庫中進行數據查詢。

        以加速度功率譜為例,查詢”XXX號”船舶,在“YYYY年-MM月-DD日”時“XXX等級修理前”,工況”Condi_01”下,”01艙”艙室內”1#空調風機”設備上“左前”“機腳”上振動測點的功率譜。其中,面向查詢結果的關系型數據庫的查詢語句為:

        Sql=“SELECT posname, posx as ‘f/(Hz)’, posy as ‘a/(m/s2)’ FROM Database1.Table_vibration_acceleration_fft_manytoone where posship=‘XXX號’ and posstate=‘XXX等級修理前’ and convert(char(10),posstarttime,120)=‘YYYY-MM-DD’ and poscondition_name = ‘Condi_01’ and poscabin=‘01艙’ and posequipment = ‘1#空調風機’ and posorientation = ‘左前’ and pospositon_level = ‘機腳’”

        面向數據解耦的數據庫的查詢SQL語句為:

        SELECT shipID into @shipid from Database2.table_ship where ship_num = ‘YYY號’ and ship_state=‘XXX等級修理前’;

        SELECT condi_id into @conid from Database2.table_condition WHERE condi_shipID = @shipid and condi_name=‘Condi_01’ and STR_TO_DATE(condi_time,‘%m/%d/%Y’)= STR_TO_DATE(‘YYYY-MM-DD’,‘%Y-%m-%d’);

        SELECT pos_id,pos_name into @posid, @posname from Database2.table_pos WHERE pos_shipID = @shipid and pos_cabin=‘01艙’ and pos_equipment= ‘1#空調風機’ and pos_orient = ‘左前’ and pos_pospositon_level =‘機腳’;

        SELECT @posname as ‘測點名稱’ ,fft_freq as ‘f/(Hz)’,fft_amp as ‘a/(m/s2)’ from Database2.table_fft where fft_posID=@posid and fft_conID=@conid

        頻帶加速度級、頻帶聲壓級、總級、頻域提取等數據提取方法與上述查詢語句類似。

        在振動測試中,常見的分析有設備振動隔振效果計算、設備烈度計算,以及沿船體的振動分布曲線繪制。隔振效果、烈度可依據計算相關公式進行SQL語句的編寫,對于批量設備的隔振效果排序、烈度排序能夠快速得出結果。對于沿船體的振動分布曲線,既可以在數據入庫后,按照物理位置排序的測點集合依次查詢提取數據繪圖,也可以在table_pos關系表中增加測點三維物理位置字段,在執(zhí)行查詢時,任意選取一維坐標進行排序后數據提取繪制,用來觀測船體振動狀態(tài),快速定位異常振動源。

        4 實例分析

        以某型船舶全船振動噪聲分析為例,該型船舶共分兩個型號,共測得6艘該型船舶、9個條次的振動噪聲測試歷史數據,數據量累積達15Tb。利用建立的上述分析管理系統建立數據庫。由于振動數據庫中各個振動測點不是嚴格按照設備、艙室分類依次出現,無法直接從工況提取數據集進行圖譜分析,不便于進行查閱。在撰寫分析結果報告之前,應預先給定一個設備測點的順序,按照這個順序依次查詢相關數據進行編寫,如圖 5所示。

        圖5 數據分析報告撰寫示意圖

        針對常見的分析所需結果,例如設備振動隔振效果計算、設備烈度計算,以及沿船體的振動分布曲線繪制等要素,都可以根據上述所建數據庫進行數據提取分析。隔振效果、烈度可依據計算相關公式進行SQL語句的編寫,結果顯示:對于批量設備的隔振效果排序、烈度排序能夠快速得出結果。對于沿船體的振動分布曲線,既可以在數據入庫后,按照物理位置排序的測點集合依次查詢提取數據繪圖,也可以在table_pos關系表中增加測點三維物理位置字段,在執(zhí)行查詢時,任意選取一維坐標進行排序后數據提取繪制,結果顯示:該系統可以用來觀測船體振動狀態(tài),快速定位異常振動源。

        5 結束語

        本文根據大型船舶振動噪聲測試海量數據分析的實際需要,將基于MySQL和BK-Reflex預處理數據文件,按照直接面向查詢結果和數據耦合關系分別設計了兩套振動噪聲數據庫,在Python環(huán)境下與MySQL進行交互,完成了數據庫的智能入庫、快速查詢和批量分析。在此基礎上,還可以按照分析意圖,進行數據挖掘,利用SQL靈活編寫查詢語句用于輔助分析,輔助發(fā)現船體振動狀態(tài),快速定位異常振動噪聲源。

        經過實際的應用檢驗,兩套數據庫均能達到預期效果,對比發(fā)現:1)面向查詢結果的關系型數據庫,在數據查詢分析時更加友好,sql語句相對簡單、好理解,缺點是數據冗余信息多,占用空間大;2)面向數據解耦的關系型數據庫,各表之間交互緊密,附加信息字段容易擴展,因邏輯復雜編寫的sql語句較復雜,但擴展性好,適合更加復雜的分析,同樣的測試數據,數據庫所占空間相是前者的1/10。這兩套數據庫的優(yōu)缺點在實際運用也充分展現,可以根據不同需要進行選擇。結合故障診斷學,本文的數據庫也可為故障機器學習奠定基礎。

        猜你喜歡
        烈度測點加速度
        液壓支架整機靜強度試驗及等效應力分析
        “鱉”不住了!從26元/斤飆至38元/斤,2022年甲魚能否再跑出“加速度”?
        當代水產(2022年6期)2022-06-29 01:12:20
        高烈度區(qū)域深基坑基坑支護設計
        基于CATIA的汽車測點批量開發(fā)的研究與應用
        高烈度地震區(qū)非規(guī)則多跨長聯連續(xù)梁抗震分析
        天際加速度
        汽車觀察(2018年12期)2018-12-26 01:05:42
        創(chuàng)新,動能轉換的“加速度”
        金橋(2018年4期)2018-09-26 02:24:46
        死亡加速度
        勞動保護(2018年8期)2018-09-12 01:16:14
        拱壩結構損傷的多測點R/S分析
        318國道沿線蘆山地震的震害特征與烈度區(qū)劃探討
        災害學(2014年1期)2014-03-01 02:25:58
        久久久久九九精品影院| 99精品国产高清一区二区麻豆| 午夜亚洲www湿好大| 99精品一区二区三区免费视频| 中日韩字幕中文字幕一区| 日本精品av中文字幕| 国产在线视频一区二区天美蜜桃| 久久精品国产亚洲av麻豆图片| 朝鲜女子内射杂交bbw| 人妻被猛烈进入中文字幕| 亚洲国产日韩综合天堂| 粉嫩小泬无遮挡久久久久久| 国产熟妇高潮呻吟喷水| 国产最新网站| 一区二区三区内射视频在线观看| 日本av在线精品视频| 美女丝袜诱惑在线播放蜜桃| 久久中文骚妇内射| 日本高清aⅴ毛片免费| 欧美a级在线现免费观看| 中文字幕亚洲精品一二三区| 一本久久精品久久综合| 吃奶呻吟打开双腿做受视频 | 久久av一区二区三区下| 久久国产成人午夜av免费影院| 乱色欧美激惰| 日韩a毛片免费观看| 爱v天堂在线观看| 国产三级av在线精品| 厨房人妻hd中文字幕| 日日噜噜夜夜狠狠久久无码区 | 亚洲成av人片一区二区密柚| 日日噜噜噜夜夜爽爽狠狠视频| 精品久久久久久电影院| 伊人久久大香线蕉av不变影院| 日本xxxx色视频在线观看| 四虎国产精品永久在线国在线| 久久久久99精品国产片| 极品美女尤物嫩模啪啪| 手机av在线中文字幕| 女女女女女裸体处开bbb|