于 浩 劉寶華
(燕山大學(xué)機(jī)械電子工程系 河北 秦皇島 066004)
軋機(jī)剛度是指軋機(jī)在軋制過(guò)程中機(jī)架所能承受軋制力的最大限度[1],是反映軋機(jī)在工作狀態(tài)下抵抗變形的能力[2]。計(jì)算剛度的數(shù)據(jù)來(lái)源于軋機(jī)輥縫標(biāo)定過(guò)程。鋼廠人員通過(guò)分析軋機(jī)的剛度數(shù)據(jù),可以及時(shí)找到生產(chǎn)線由于處于長(zhǎng)期工作狀態(tài)下所造成的故障隱患,從而避免引發(fā)安全事故。當(dāng)下,我國(guó)軋鋼廠軋機(jī)剛度的研究主要集中在兩個(gè)方面。一是計(jì)算剛度的方式。目前軋鋼廠采用人工計(jì)算的方式得到剛度數(shù)據(jù)。首先,通過(guò)軋鋼廠數(shù)據(jù)機(jī)房中的PDA軟件導(dǎo)出軋機(jī)所連接的壓力與位移傳感器在輥縫標(biāo)定過(guò)程中所測(cè)得的數(shù)據(jù)。然后通過(guò)Excel軟件進(jìn)行人工線性擬合得到剛度值。手工計(jì)算方式的問(wèn)題主要體現(xiàn)為:純手工、耗時(shí)長(zhǎng)、誤差大。二是剛度的精度。計(jì)算軋機(jī)剛度的數(shù)據(jù)來(lái)自于軋機(jī)所連接的壓力與位移傳感器。由于軋鋼廠的環(huán)境因素,傳感器的采樣信號(hào)經(jīng)常會(huì)受到現(xiàn)場(chǎng)各種噪聲的污染與干擾,對(duì)于剛度的精度具有一定的影響。綜上所述,如何實(shí)現(xiàn)輥縫標(biāo)定數(shù)據(jù)的自動(dòng)化采集與計(jì)算并提高剛度精度是目前面臨的主要問(wèn)題。
隨著工業(yè)4.0的穩(wěn)步推進(jìn),我國(guó)工業(yè)控制系統(tǒng)亟需邁向更高的臺(tái)階。OPC技術(shù)在軋鋼廠中的應(yīng)用解決了不同的總線標(biāo)準(zhǔn)帶來(lái)的數(shù)據(jù)訪問(wèn)困難的問(wèn)題,可以將不同的軟硬件接口按照統(tǒng)一的工業(yè)接口規(guī)范統(tǒng)一起來(lái),實(shí)現(xiàn)了無(wú)須重復(fù)開發(fā)硬件驅(qū)動(dòng)即可采用統(tǒng)一方式對(duì)不同種類硬件進(jìn)行數(shù)據(jù)存取[3]。PDA是德國(guó)iba公司開發(fā)的一款高速實(shí)時(shí)采集數(shù)據(jù)軟件,在我國(guó)軋鋼廠得到普遍應(yīng)用,解決了重要數(shù)據(jù)的高速采集及存儲(chǔ)問(wèn)題。通過(guò)利用PDA軟件中的OPC服務(wù)器接口,可以實(shí)現(xiàn)軋機(jī)輥縫標(biāo)定過(guò)程數(shù)據(jù)的自動(dòng)化采集與計(jì)算。OPC服務(wù)器接口分為兩種:OPC DA與OPC UA。我國(guó)的軋鋼廠存在著多操作系統(tǒng)交叉共同作業(yè)的現(xiàn)狀,而OPC DA是基于微軟的COM/DCOM技術(shù)下的產(chǎn)物,并不支持跨平臺(tái),因此需要采用一種支持跨平臺(tái)的技術(shù)實(shí)現(xiàn)數(shù)據(jù)的采集與處理。OPC UA是OPC基金會(huì)2008年發(fā)布的新規(guī)范,在功能上繼承了OPC DA的所有功能,并且支持跨平臺(tái),在安全性方面它可以通過(guò)電腦的任意端口進(jìn)行通信,將不受電腦防火墻的攔截。文章設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)以open62541庫(kù)為依賴,搭建了OPC UA客戶端軟件,實(shí)現(xiàn)與PDA軟件OPC服務(wù)器之間的數(shù)據(jù)交互,自動(dòng)化采集與計(jì)算輥縫標(biāo)定過(guò)程數(shù)據(jù)[4]。
輥縫標(biāo)定過(guò)程數(shù)據(jù)并不能直接用于剛度的計(jì)算。OPC服務(wù)器中的數(shù)據(jù)來(lái)自于與軋機(jī)相連的傳感器。傳感器在惡劣環(huán)境下工作會(huì)受到熱噪聲、晶體管噪聲、低頻噪聲等影響。這對(duì)于剛度的計(jì)算工作具有一定的影響[5]。根據(jù)對(duì)傳感器的波形數(shù)據(jù)分析,對(duì)數(shù)據(jù)采集系統(tǒng)采集到軋機(jī)輥縫標(biāo)定過(guò)程數(shù)據(jù)進(jìn)行降噪處理??紤]到Linux-Ubuntu的運(yùn)行平臺(tái)以及Python強(qiáng)大的數(shù)據(jù)處理能力,數(shù)據(jù)采集系統(tǒng)通過(guò)Qt調(diào)用Python腳本的方式對(duì)數(shù)據(jù)進(jìn)行小波分析降噪處理,最終達(dá)到提高軋機(jī)剛度的目的。
數(shù)據(jù)采集系統(tǒng)硬件環(huán)境主要基于四部分:壓力與位置傳感器、PDA服務(wù)器、Linux系統(tǒng)環(huán)境下的嵌入式工控機(jī),GPRS模塊。圖1所示為數(shù)據(jù)采集系統(tǒng)硬件框圖。
圖1 數(shù)據(jù)采集系統(tǒng)流程框圖
1) 壓力與位置傳感器:壓力傳感器主要采集輥縫標(biāo)定過(guò)程中兩個(gè)軋輥壓下的壓力大小。位置傳感器與液壓缸中的標(biāo)尺相連,采集標(biāo)定過(guò)程中軋輥的位置信息。
2) PDA服務(wù)器:PDA服務(wù)器實(shí)時(shí)顯示與存儲(chǔ)壓力與位置傳感器采集的數(shù)值。數(shù)據(jù)保存格式被加密,因此只能依賴專用的PDA軟件解析歷史數(shù)據(jù)。PDA服務(wù)器中集成了OPC服務(wù)器,實(shí)時(shí)記錄傳感器中的數(shù)值。
3) Linux系統(tǒng)環(huán)境下的嵌入式工控機(jī):工控機(jī)采用Exynos 4 Quad(Exynos 4412)處理器,搭建了Linux-Ubuntu系統(tǒng),主要擁有六個(gè)接口:搭配LVDS-HDMI接口可以與HDMI接口的高清顯示器連接、通過(guò)RS232串口可以連接GPRS模塊發(fā)送剛度數(shù)據(jù)、電源接口可以給核心板提供電源功耗,相比臺(tái)式計(jì)算機(jī)功耗大大減少、USB接口可以外接鼠標(biāo)與鍵盤,方便工廠人員實(shí)時(shí)查看相關(guān)信息、TF卡接口可以擴(kuò)展工控機(jī)內(nèi)存,方便增加數(shù)據(jù)存儲(chǔ)容量、GPIO接口(通用I/O端口)方便CPU直接控制簡(jiǎn)單的外部設(shè)備。
數(shù)據(jù)采集系統(tǒng)通過(guò)open62541庫(kù)實(shí)現(xiàn)與軋鋼廠PDA軟件上OPC服務(wù)器的連接,實(shí)現(xiàn)采集輥縫標(biāo)定過(guò)程數(shù)據(jù)的功能。通過(guò)小波分析中的小波閾值去噪實(shí)現(xiàn)對(duì)采集到數(shù)據(jù)的降噪處理,最終計(jì)算出軋機(jī)剛度。
由于數(shù)據(jù)采集軟件需要在Linux-Ubuntu操作系統(tǒng)上運(yùn)行,因此選取具有跨平臺(tái)特性的Qt軟件作為開發(fā)工具。課題在Linux環(huán)境下安裝Qt SDK作為Qt類庫(kù)工具箱,在Windows環(huán)境下進(jìn)行源代碼編寫后移植到Linux環(huán)境下運(yùn)行[6]。Qt開發(fā)與編譯框架如圖2所示。
圖2 Qt開發(fā)與編譯框架
數(shù)據(jù)采集系統(tǒng)運(yùn)用到的Qt主要關(guān)鍵技術(shù):
1) 信號(hào)與槽的機(jī)制:信號(hào)與槽由元對(duì)象系統(tǒng)實(shí)現(xiàn),需要在項(xiàng)目工程文件中添加Qt Core模塊。信號(hào)與槽繼承于基類QObject,在子類的入口處必須聲明O_OBJECT宏。信號(hào)與槽機(jī)制包含兩個(gè)主要的函數(shù):信號(hào)函數(shù)(signals)和槽函數(shù)(slots)。信號(hào)與槽均需要在子類中聲明,分別用Q_SIGNALS和Q_SLOTS表示。信號(hào)不僅可以與槽,還可以和信號(hào)實(shí)現(xiàn)信息交互,兩者通過(guò)connect()函數(shù)實(shí)現(xiàn)連接過(guò)程[7]。
2) Qt繪制系統(tǒng):Qt5相較于Qt4版本做了很大改動(dòng)。其中最大的改動(dòng)在于模塊的庫(kù)的定義。在Qt4的版本中Qt GUI包含了用戶界面設(shè)計(jì)的所有庫(kù)函數(shù)。Qt5版本重新定義了新的模塊Qt Widgets,其Qt Gui模塊不再包含界面有關(guān)的所有類。
3) 事件:事件是Qt的核心組件之一,區(qū)別于信號(hào)。信號(hào)是由對(duì)象產(chǎn)生的,而事件大多是由底層的事務(wù)產(chǎn)生。事件不同于信號(hào)的另一個(gè)重要區(qū)別在于事件是異步的,可以進(jìn)行忽略,而信號(hào)的使用必然伴隨著槽函數(shù)的使用[8]。事件的傳遞框架如圖3所示。
圖3 Qt事件的傳遞框架
OPC UA是OPC基金會(huì)于2008年提出的新一代OPC通信技術(shù)規(guī)范,經(jīng)過(guò)數(shù)年不斷地發(fā)展與完善,儼然已經(jīng)成為工業(yè)數(shù)據(jù)應(yīng)用領(lǐng)域的一把利劍。目前市面已知的OPC UA SDK都是收費(fèi)的,open62541基于OPC基金會(huì)發(fā)布的IEC 62541(OPC統(tǒng)一體系結(jié)構(gòu)標(biāo)準(zhǔn)),是一款由C99和C++98編寫的通用庫(kù)。open62541在MPL(Mozilla Public License)協(xié)議下獲得許可,因此它是完全免費(fèi)的。OPC UA開發(fā)者可以自由引用open62541庫(kù)并編譯成適用于任何平臺(tái)的項(xiàng)目文件。本文將open62541庫(kù)編譯到Linux-Ubuntu平臺(tái),實(shí)現(xiàn)與OPC服務(wù)器的通信。
2019年3月,以“融合的工業(yè)-工業(yè)智能”為主題的漢諾威工業(yè)博覽會(huì)上,open62541庫(kù)的出版商發(fā)布了OPC UA的實(shí)時(shí)Pub/Sub(訂閱/發(fā)布)功能,為工業(yè)數(shù)據(jù)信息化發(fā)展提供了強(qiáng)大的助力。數(shù)據(jù)采集系統(tǒng)基于Pub/Sub實(shí)現(xiàn)了輥縫標(biāo)定過(guò)程數(shù)據(jù)的實(shí)時(shí)采集。
open62541庫(kù)可以實(shí)現(xiàn)OPC UA發(fā)布的所有功能,主要有:查詢OPC UA服務(wù)器、客戶端與服務(wù)器的連接、瀏覽地址空間與節(jié)點(diǎn)、數(shù)據(jù)訂閱等功能。出版商發(fā)布了open62541(V1.1.0)手冊(cè)供開發(fā)者查詢?nèi)?shí)現(xiàn)上述功能。open62541庫(kù)的功能框圖如圖4所示。
圖4 open62541功能框圖
OPC UA客戶端實(shí)現(xiàn)了查詢OPC UA服務(wù)器、客戶端與服務(wù)器的連接、瀏覽地址空間與節(jié)點(diǎn)、數(shù)據(jù)訂閱、小波分析去噪處理、軋機(jī)剛度計(jì)算等功能。OPC UA客戶端的數(shù)據(jù)訂閱基于open62541庫(kù)的Pub/Sub功能,可以實(shí)時(shí)訂閱處于服務(wù)器上的節(jié)點(diǎn)值。軋機(jī)輥縫標(biāo)定完成后,數(shù)據(jù)采集系統(tǒng)對(duì)采集到的數(shù)據(jù)進(jìn)行去噪處理,去噪完成后通過(guò)將壓力值與位置值線性擬合計(jì)算出軋機(jī)剛度。
OPC UA客戶端與服務(wù)器的連接基于open62541庫(kù)來(lái)實(shí)現(xiàn)。在Github開源平臺(tái)上下載open62541庫(kù)源碼后需要通過(guò)CMake編譯工具將其編譯為適合于Linux-Ubuntu的庫(kù)文件,在Qt軟件中調(diào)用庫(kù)文件實(shí)現(xiàn)OPC UA客戶端與服務(wù)器之間的通信。
軋機(jī)輥縫數(shù)據(jù)采集軟件首先需要與軋鋼廠OPC UA服務(wù)器連接,根據(jù)IP地址、用戶名、密碼獲取到目標(biāo)平臺(tái)上的服務(wù)器目錄。程序?qū)⒛繕?biāo)平臺(tái)上的服務(wù)器以列表的形式展示給用戶,用戶根據(jù)命名空間與標(biāo)志位識(shí)別需要檢測(cè)的數(shù)據(jù)項(xiàng)。數(shù)據(jù)采集系統(tǒng)的OPC UA客戶端采用了open62541的查找功能塊,在程序中通過(guò)設(shè)置超時(shí)時(shí)間進(jìn)行限制查找過(guò)程所耗費(fèi)的時(shí)間??蛻舳耸褂昧瞬檎夷K中的Findservers和GetEndpoint函數(shù)服務(wù),前者用來(lái)查找目標(biāo)IP的服務(wù)器,后者用來(lái)搜尋服務(wù)器的根節(jié)點(diǎn)[9]。圖5所示為客戶端與服務(wù)器之間的連接過(guò)程框圖。
圖5 OPC UA連接過(guò)程框圖
數(shù)據(jù)采集軟件中的OPC UA客戶端通過(guò)目標(biāo)服務(wù)器的IP、用戶名、密碼實(shí)現(xiàn)與OPC UA服務(wù)器的連接。代碼如下:
void clientUa::run()
{
//連接服務(wù)器。
UA_Client*client=UA_Client_new();
UA_ClientConfig_setDefault(UA_Client_getConfig(client));
//建立連接。
UA_StatusCode retval=UA_Client_connect(client,serverIP);
if (retval !=UA_STATUSCODE_GOOD)
{
UA_Client_delete(client);
qDebug()< } //打印連接信息。 emit Log(QString("<已連接>")); //讀取指定節(jié)點(diǎn)的值。 UA_Int32 value=0; UA_Variant*val=UA_Variant_new(); retval=UA_Client_readValueAttribute(client, UA_NODEID_STRING(2,"the.answer"),val); //轉(zhuǎn)換數(shù)據(jù)格式。 if(retval==UA_STATUSCODE_GOOD && UA_Variant_isScalar(val) && val->type== &UA_TYPES[UA_TYPES_INT32]) { value=*(UA_Int32*)val->data; emit Log(QString(value)); } //刪除數(shù)據(jù)緩存 UA_Variant_delete(val); …… } 數(shù)據(jù)采集軟件程序中的OPC UA客戶端與OPC UA服務(wù)器連接成功后,會(huì)查找該服務(wù)器下的節(jié)點(diǎn)信息,并將節(jié)點(diǎn)信息通過(guò)Qt特有的信號(hào)與槽機(jī)制發(fā)送到TableView控件上展示,方便用戶查詢節(jié)點(diǎn)信息。圖6所示為TableView控件顯示的服務(wù)器節(jié)點(diǎn)信息。 圖6 OPC UA服務(wù)器的節(jié)點(diǎn)信息 OPC基金會(huì)在2018年發(fā)布了OPC UA規(guī)范Part14,此規(guī)范定義了OPC UA的Pub/Sub(發(fā)布/訂閱)模式。Part14規(guī)范中的UA Pub/Sub支持四種傳輸模式:使用UDP廣播機(jī)制實(shí)現(xiàn)OPC UA的Pub/Sub、UADP消息直接在Internet上進(jìn)行網(wǎng)上傳輸、通過(guò)MQTT,AMQP的消息代理進(jìn)行消息的交互、利用TSN實(shí)現(xiàn)消息的交互。在open62541現(xiàn)階段上已經(jīng)實(shí)現(xiàn)了OPC UA訂閱消息在UDP廣播機(jī)制的應(yīng)用[10]。由于后三種傳輸方式還不成熟,OPC基金會(huì)目前只是處于試驗(yàn)嘗試階段。圖7所示為訂閱關(guān)系框圖。 圖7 訂閱關(guān)系框圖 程序通過(guò)調(diào)用addMonitoredItemToVariable子函數(shù)先將需要監(jiān)控的子節(jié)點(diǎn)告訴服務(wù)器,然后通過(guò)不斷刷新調(diào)用回調(diào)函數(shù)接受服務(wù)器傳回的子節(jié)點(diǎn)的值。通過(guò)回調(diào)子函數(shù)可以設(shè)置訂閱項(xiàng)目的間隔以及訂閱節(jié)點(diǎn)的優(yōu)先級(jí)。訂閱間隔表示服務(wù)器向客戶端發(fā)送數(shù)據(jù)的頻率。節(jié)點(diǎn)的優(yōu)先級(jí)可以保證傳輸有效的節(jié)點(diǎn)數(shù)據(jù)。子函數(shù)關(guān)鍵代碼如下: void addMonitoredItemToVariable(UA_Client*client, UA_NodeId*target1, UA_NodeId*target2,UA_NodeId*target3, UA_NodeId*target4,UA_NodeId *target5,UA_NodeId*target6) { #ifdef UA_ENABLE_SUBSCRIPTIONS //創(chuàng)建一個(gè)訂閱。 UA_CreateSubscriptionRequest request= UA_CreateSubscriptionRequest_default(); //設(shè)置訂閱間隔。 request.requestedPublishingInterval=10; //設(shè)置訂閱優(yōu)先級(jí)。 request.priority=255; UA_CreateSubscriptionResponse response= UA_Client_Subscriptions_create(client,request, NULL,NULL,NULL); UA_UInt32 subId=response.subscriptionId; //向服務(wù)器寫入日志信息。 if(response.responseHeader.serviceResult== UA_STATUSCODE_GOOD) { UA_LOG_INFO(UA_Log_Stdout, UA_LOGCATEGORY_CLIENT, "Create subscription succeeded, id %u
", subId); } …… } 客戶端連接上服務(wù)器后,會(huì)自行查找服務(wù)器中所包含的節(jié)點(diǎn),進(jìn)而讀取節(jié)點(diǎn)所包含的數(shù)據(jù)。圖8所示為數(shù)據(jù)采集系統(tǒng)主程序界面,展示了客戶端通過(guò)訂閱方式讀取的OPC UA服務(wù)器所包含節(jié)點(diǎn)的數(shù)值。 圖8 數(shù)據(jù)采集系統(tǒng)主程序界面 數(shù)據(jù)采集系統(tǒng)采集的數(shù)據(jù)是來(lái)自軋鋼現(xiàn)場(chǎng)的傳感器的信號(hào),這種信號(hào)屬于時(shí)域上的信號(hào),通過(guò)對(duì)時(shí)域信號(hào)的分析,我們很難得出有價(jià)值的信息。目前,被廣泛采用的去噪方法主要是傅里葉變換與小波閾值去噪的方法。小波閾值去噪是小波分析的一種。本文通過(guò)Python中的pyWavelet模塊實(shí)現(xiàn)利用小波分析對(duì)采集到的數(shù)據(jù)進(jìn)行降噪處理。小波閾值去噪過(guò)程一般分為三步,如圖9所示。首先,用指定層數(shù)的小波基對(duì)原始信號(hào)進(jìn)行分解。然后,選取合適的閾值計(jì)算規(guī)則對(duì)分解后的信號(hào)進(jìn)行處理,通過(guò)閾值計(jì)算函數(shù)對(duì)各層系數(shù)進(jìn)行迭代。最后,將分解后的信號(hào)進(jìn)行重新組合,還原原始信號(hào)。 圖9 小波去噪過(guò)程 小波閾值去噪需要確定兩個(gè)參數(shù):小波基與閾值計(jì)算方式。本節(jié)首先通過(guò)試驗(yàn)44種小波基進(jìn)行模擬去噪,通過(guò)對(duì)比信噪比與均方根誤差確定去噪效果最好的小波基函數(shù)。然后,通過(guò)傅里葉變換與小波閾值去噪的仿真對(duì)比確定閾值計(jì)算方式。最終將兩個(gè)確定好的參數(shù)應(yīng)用于的數(shù)據(jù)采集系統(tǒng)中進(jìn)行去噪。 采用Daubechies、Coiflets、Symlets小波基提取信號(hào)特征進(jìn)行模擬消噪處理。具體由哪一種小波進(jìn)行最終的數(shù)據(jù)去噪處理,需要對(duì)去噪效果進(jìn)行對(duì)比。去噪效果可以用信噪比與均方根誤差兩個(gè)參數(shù)表現(xiàn)出來(lái)。信噪比計(jì)算公式為: (1) 式中:RSN表示原始信號(hào)中所包含外界干擾因素的強(qiáng)度,計(jì)算的值越大,表示所包含的有效信息占比越高。均方差誤差公式為: (2) 式中:RMSE反映了去噪結(jié)果的準(zhǔn)確性,是衡量數(shù)據(jù)序列真實(shí)性的標(biāo)準(zhǔn)。如表1所示為選取的一系列小波基對(duì)采集到的數(shù)據(jù)信號(hào)消噪后的信噪比與均方根誤差。 表1 小波基函數(shù)試驗(yàn)結(jié)果 續(xù)表1 通過(guò)對(duì)比上述實(shí)驗(yàn)所得的信噪比與均方根誤差并結(jié)合經(jīng)過(guò)小波基去噪處理后的數(shù)據(jù)曲線特征,選取db1小波基對(duì)原始數(shù)據(jù)進(jìn)行去噪。 通過(guò)Python軟件中PyWavelets模塊的ecg方法導(dǎo)入其自帶的心電信號(hào)作為原始帶噪信號(hào)。分別通過(guò)傅里葉變換的FFT方法和小波閾值去噪方法對(duì)帶噪信號(hào)進(jìn)行去噪后仿真對(duì)比。為了更好地突出去噪效果,去噪過(guò)程選取的小波基為db1,分解層數(shù)為5。圖10、圖11為基于小波閾值去噪與FFT的仿真結(jié)果。 圖10 基于小波去噪的仿真結(jié)果 圖11 基于FFT去噪的仿真結(jié)果 從以上實(shí)驗(yàn)可以看出,小波閾值去噪方法相較于傅里葉變換的FFT方法對(duì)心電信號(hào)去噪處理效果更好,對(duì)含噪信號(hào)頻域中的突變成分進(jìn)行了有效的處理。傅里葉變換的FFT方法在處理含噪信號(hào)中高頻突變成分時(shí),將信號(hào)做了放大處理,沒有將噪聲信號(hào)完全剔除,因此去噪結(jié)果中依舊存在大量的噪聲信號(hào)。表2展示了小波閾值去噪利用不同閾值選取原則對(duì)采集到的軋機(jī)標(biāo)定過(guò)程數(shù)據(jù)進(jìn)行去噪所得的信噪比與均方根誤差。 表2 閾值試驗(yàn)結(jié)果 由上表信噪比與均方根誤差可以看出,小波閾值去噪后所得信號(hào)的信噪比與均方根誤差要比傅里葉變換的FFT方法更有優(yōu)勢(shì)。利用小波閾值去噪對(duì)信號(hào)進(jìn)行去噪的過(guò)程中,極大極小閾值相較于其他閾值選取法具有更好的去噪效果。因此,文章采用極大極小閾值法對(duì)采集到的數(shù)據(jù)進(jìn)行去噪處理。 如圖12所示為將db1小波基與極大極小閾值應(yīng)用于的數(shù)據(jù)采集系統(tǒng)中進(jìn)行小波閾值去噪的結(jié)果。如表3所示分別為基于FFT去噪與小波閾值去噪的信噪比與均方差誤差。 圖12 采集到的數(shù)據(jù)消噪前后對(duì)比 表3 閾值實(shí)驗(yàn)結(jié)果 由圖12可以看出,染噪信號(hào)中的白噪聲與干擾信號(hào)已經(jīng)基本被濾除。表3結(jié)果表明,小波閾值去噪的信噪比高于傅里葉變換去噪的39.5%,均方差誤差遠(yuǎn)遠(yuǎn)低于傅里葉變換。因此小波閾值去噪的方式達(dá)到了數(shù)據(jù)去噪的目的,可以有效提高軋機(jī)剛度的計(jì)算精度。 軋機(jī)輥縫標(biāo)定過(guò)程數(shù)據(jù)采集系統(tǒng)不僅應(yīng)該滿足現(xiàn)如今工業(yè)控制領(lǐng)域所需要的跨平臺(tái)發(fā)展現(xiàn)狀,還應(yīng)該致力于對(duì)采集到的數(shù)據(jù)進(jìn)行分析去噪。本文以Qt為主要開發(fā)對(duì)象的環(huán)境,采用面向?qū)ο蟮姆绞綄?shí)現(xiàn)編程語(yǔ)言開發(fā)思想,利用開源的open62541庫(kù)開發(fā)可以在Linux系統(tǒng)上運(yùn)行的OPC UA客戶端,設(shè)計(jì)了友好的監(jiān)控頁(yè)面,實(shí)現(xiàn)了運(yùn)行在非Windows平臺(tái)的OPC服務(wù)器與客戶端之間的對(duì)接。然后根據(jù)采集到數(shù)據(jù)的特征規(guī)律利用Python強(qiáng)大的數(shù)據(jù)處理能力篩選計(jì)算剛度的數(shù)據(jù),并對(duì)其進(jìn)行小波分析降噪處理,經(jīng)仿真后達(dá)到了預(yù)期的降噪效果,為軋鋼廠工作人員計(jì)算剛度的方式與提高剛度的準(zhǔn)確度提供了一條可借鑒的途徑。3.3 數(shù)據(jù)訂閱
4 數(shù)據(jù)處理與仿真實(shí)驗(yàn)
4.1 小波閾值去噪
4.2 小波基的選擇
4.3 閾值函數(shù)的選擇與仿真對(duì)比
4.4 結(jié) 論
5 結(jié) 語(yǔ)