★北京廣利核系統工程有限公司趙偉雄,程康,史雄偉,王家興,王賀
★中廣核數字科技有限公司鄒文斌
關(guān)鍵詞:PLC;模擬量;輸入模塊;線(xiàn)性擬合;自動(dòng)校準;最小二乘法
1 引言
隨著(zhù)工業(yè)自動(dòng)化技術(shù)的不斷發(fā)展,PLC(可編程控制器)在工業(yè)控制領(lǐng)域中的應用日益廣泛[1]。模擬量輸入模塊是PLC系統中的重要組成部分,它能夠將外部模擬信號轉換為PLC能夠識別的數字信號。這些數字信號可以被PLC系統進(jìn)一步處理,從而控制各種工業(yè)設備。
然而,在模擬量模塊生產(chǎn)、使用過(guò)程中,由于各種PCB布線(xiàn)、元器件精度、溫度等因素的影響,模擬量輸入模塊會(huì )出現精度不夠高的情況,不能滿(mǎn)足工業(yè)現場(chǎng)使用要求[2]。這種情況下,就需要進(jìn)行校準來(lái)提高模擬量輸入模塊的精度。傳統的校準方法通常需要人工干預,且耗時(shí)較長(cháng)。因此,本文設計了采用PLC控制器和改良后的模擬量輸出塊作為信號源,利用電腦的強大運行能力和直觀(guān)的圖形界面顯示,使用線(xiàn)性擬合方法對PLC模擬量輸入模塊進(jìn)行自動(dòng)校準。該方案能夠準確、快速地校準模擬量輸入模塊。
2 傳統校準方法
通常,模擬量輸入模塊包括多種類(lèi)型,如(-10V~10V、-1~1V等)電壓輸入,(0~20mA,4~20mA等)電流輸入等[3],并且每個(gè)模擬量輸入模塊包含多個(gè)輸入通道。這意味著(zhù)在校準過(guò)程中,需要對每種類(lèi)型、每個(gè)通道都進(jìn)行校準。
傳統的校準方法采用手動(dòng)調節的校準方法[4],這種方法需要專(zhuān)業(yè)技術(shù)人員使用專(zhuān)門(mén)的校準設備產(chǎn)生標準電壓或電流信號作為輸入源測量記錄PLC模擬量輸入模塊的采集值。然后,通過(guò)對比采集值與標準信號的差異,反復調整偏置值和校準值來(lái)完成校準。最后,重復相同步驟完成所有通道的校準。
雖然這種方法在一定程度上可以提高PLC模擬量輸入模塊的精度,但是有幾個(gè)明顯的缺點(diǎn)。首先,它依賴(lài)于專(zhuān)業(yè)技術(shù)人員對模塊的所有通道逐個(gè)進(jìn)行校準,對每個(gè)通道校準的步驟也非常復雜,校準過(guò)程相對耗費人工,不利于批量校準測試,生產(chǎn)效率低[5]。其次,容易出現人為因素造成的誤差,因為校準過(guò)程需要人工干預,不同的人有可能會(huì )出現不同的誤差。最后,標準設備電壓、電流信號的方法雖然精度高,但需要購買(mǎi)昂貴的校準設備,不夠經(jīng)濟實(shí)用。
3 基于線(xiàn)性擬合的自動(dòng)校準法
線(xiàn)性擬合的自動(dòng)校準法是一種高效、精度高的校準方法[6],能夠解決傳統校準方法存在的問(wèn)題,如高人工成本、精度低、時(shí)間長(cháng)等。它的原理很簡(jiǎn)單,主要就是使用線(xiàn)性擬合算法來(lái)計算標準值和測量值之間的線(xiàn)性關(guān)系,然后通過(guò)計算機自動(dòng)控制校準過(guò)程,使用PLC輸出模塊作為信號源。這樣就可以快速、精確地完成校準,無(wú)需人工干預。
在這種方法中,使用PLC模擬量輸出模塊替代了標準電壓源和電流源。作為模擬量輸入模塊的輸入源,為了滿(mǎn)足校準要求,對PLC輸出模塊進(jìn)行了優(yōu)化,采用高精度的DAC芯片,其輸出精度比模擬量輸入模塊的精度高一個(gè)數量級,并經(jīng)過(guò)了預先校準。PLC輸出模塊通常也包含電壓輸入(例如-10V~10V,-1V~1V)和電流輸入(例如0~20mA,4~20mA)等多種類(lèi)型和多個(gè)通道,并且其輸出穩定、可編程自動(dòng)調節輸出,這樣就可以避免手動(dòng)調節輸入源的繁瑣,并且減少了反復調整的次數,一次校準多個(gè)通道,大大縮短了校準時(shí)間。
下面,我們以風(fēng)機控制PLC的模擬量輸入模塊AI8(-10V~10V)電壓輸入校準為例來(lái)詳細介紹這種自動(dòng)校準方法的具體流程。
3.1 硬件連接
硬件連接如圖1所示,其中AI08是8通道模擬量輸入模塊,AO08是8通道模擬量輸出模塊,MPC7000是風(fēng)機PLC主控制器模塊。
圖1 硬件連接圖
將AO08模塊的輸出電壓接到AI08模塊的輸入端,并將兩個(gè)模塊的GND連接在一起。電腦通過(guò)網(wǎng)線(xiàn)連接PLC的主控模塊MPC7000,電腦上運行校準軟件。校準軟件采用C#語(yǔ)言編寫(xiě),通過(guò)以太網(wǎng)和PLC進(jìn)行通信。校準軟件界面如圖2所示。
圖2 電腦校準工具
3.2 校準過(guò)程
PLC模塊提供了兩個(gè)功能接口來(lái)滿(mǎn)足用戶(hù)的校準要求,分別是AI_Calibrate_Set和AI_Mode_Set。前者用于設置模擬量模塊的校準值,參數包括CardID、Channel、Gain和offset;后者用于設置模塊的工作模式,參數包括CardID、Channel和mode。這些功能接口可以通過(guò)在PLC上編寫(xiě)ST語(yǔ)言進(jìn)行調用。
電腦自動(dòng)校準軟件為了使校準工作盡可能準確,通常會(huì )設計一系列步驟來(lái)進(jìn)行校準。
(1)首先軟件會(huì )設置校準模式,例如設定校準模式為(-10V~10V)的電壓輸入模式。
(2)軟件會(huì )發(fā)送AO輸出電壓值,輸出值的大小和范圍可以根據輸入模式動(dòng)態(tài)調整。例如,如果范圍是(-10V~10V),那么就可以從-10V開(kāi)始作為輸出值。
(3)軟件會(huì )延遲100ms,等待數據穩定后再讀取對應的AI輸入電壓值。將AI輸入電壓值和AO輸出值記錄到Excel文件中,便于用戶(hù)查看。
(4)最后,軟件會(huì )修改AO輸出值,然后重復上述步驟,直到記錄完成-10V~10V范圍內多組不同的AO輸出值和AI輸入值。為了提高校準精度,軟件需要盡可能多地采集測量值和實(shí)際值。
當軟件完成了對多組值的采集后,就可以使用線(xiàn)性擬合算法來(lái)計算出偏差和增益值,然后調用AI_Calibrate_Set函數設置AI校準值。在設置完校準值后,軟件還需要進(jìn)行校驗,以確保校準工作的準確性。為此,軟件會(huì )隨機從(-10V~10V)范圍內選擇幾組值,并設置AO輸出值,同時(shí)記錄AI采集值。然后,軟件會(huì )判斷誤差是否滿(mǎn)足要求,如果不滿(mǎn)足,則重復上述步驟,直到連續3次誤差都滿(mǎn)足要求為止。如果連續3次誤差都不滿(mǎn)足要求,則軟件會(huì )報警提示操作人員。
通過(guò)使用PLC模塊的AI_Calibrate_Set和AI_Mode_Set功能接口,電腦自動(dòng)校準軟件可以自動(dòng)完成多組測量值和實(shí)際值的采集,并使用線(xiàn)性擬合算法計算出偏差和增益值,最終使得校準工作更加精確。在校準過(guò)程中,軟件還提供了記錄、顯示和檢測的功能,使得校準過(guò)程更加透明和可控。
電腦自動(dòng)校準軟件的校準功能可以應用于多種工業(yè)場(chǎng)景,例如用于自動(dòng)化測量設備的校準,或者用于工廠(chǎng)生產(chǎn)線(xiàn)上的自動(dòng)化設備校準。通過(guò)使用軟件自動(dòng)完成校準工作,可以大大提高工作效率,并減少了人為操作的誤差。此外,電腦自動(dòng)校準軟件還可以提供多種定制功能,例如可以根據用戶(hù)的特定要求來(lái)設計校準流程,或者提供多種數據輸出格式,使得校準工作更加靈活。
3.3 線(xiàn)性擬合校準算法
線(xiàn)性擬合算法校準模擬量輸入是一種常用的校準方法[7],它通過(guò)對數據進(jìn)行線(xiàn)性擬合來(lái)校準模擬量輸入的值。這種方法可以用來(lái)確定模擬量輸入值與實(shí)際輸出電壓值之間的關(guān)系。例如本文使用AI08模塊的1通道來(lái)收集模擬量輸入的數據,并記錄下來(lái),同時(shí)通過(guò)電腦記錄下AO08模塊的1通道的實(shí)際輸出電壓值。我們可以使用線(xiàn)性擬合算法來(lái)對這些數據進(jìn)行分析,從而確定模擬量輸入值與AO81通道輸出電壓值之間的關(guān)系。表1是校準前AO08模塊1通道的實(shí)際輸出電壓值對應的AI08模塊1通道的測量電壓值。
表1 模擬電壓測量值和實(shí)際值
為了更好地看出測量電壓值和實(shí)際電壓值的對應關(guān)系,在Matlab中用曲線(xiàn)表示出來(lái),如圖3所示。
圖3 實(shí)際電壓和測量電壓的對應關(guān)系圖
從圖3中可以看出實(shí)際電壓值和測量電壓值之間呈現良好的線(xiàn)性關(guān)系,這意味著(zhù)可以將測量值和實(shí)際值之間的關(guān)系抽象為線(xiàn)性關(guān)系方程。為了更好地表示這種關(guān)系,可以設定一個(gè)變量x表示測量電壓值,并設定一個(gè)變量y表示實(shí)際電壓值。然后,通過(guò)使用線(xiàn)性方程y=ax+b來(lái)模擬測量值和實(shí)際值之間的關(guān)系。在這個(gè)方程中,參數a表示斜率,也就是增益值;參數b則是方程的常數項,也就是偏置值。
為了精確地計算參數a、b,采用線(xiàn)性擬合中常用的最小二乘法[8][9],它是一種數學(xué)方法,可以幫助我們確定模型參數,使得模型在預測值和實(shí)際值之間的差距最小。圖4所示的是最小二乘法的c語(yǔ)言實(shí)現。
圖4 c程序最小二乘法
把測量值作為x,實(shí)際輸出值作為y,代入根據上面計算,可以得到以下結果:
a=1.046,b=569。
即可得到校準曲線(xiàn)為:y=1.046x+569。然后把校準參數通過(guò)AI_Calibrate_Set更新到AI08模塊中,重新測量模擬電壓輸入值,可得到如表2所示的數據。
表2 模擬電壓測量值和實(shí)際值
在分析表1和表2的數據后,可以發(fā)現:表1中的最大誤差為988mV,測量結果與實(shí)際電壓值之間的差距較大,而在經(jīng)過(guò)線(xiàn)性擬合校準之后,表2中的最大誤差降至了9mV。這表明,線(xiàn)性擬合校準技術(shù)能夠有效地提高測量精度,使得誤差小于最大量程的0.1%。測量結果已經(jīng)達到了設計要求的精度水平。
綜上所述,通過(guò)對測量結果進(jìn)行線(xiàn)性擬合校準,可以大幅度地提高測量的準確性,從而滿(mǎn)足設計要求。
4 結論
在進(jìn)行PLC模擬量輸入模塊的校準工作時(shí),本文所提出的方法顯得尤為有效。實(shí)驗結果表明,該方法不僅具有較高的精度,而且能夠自動(dòng)完成校準過(guò)程,避免了人為因素造成的誤差。與傳統的校準方法相比,這點(diǎn)顯得更加優(yōu)越。除了精度和自動(dòng)化程度方面的優(yōu)勢之外,該方法還具有較低的計算復雜度。使用線(xiàn)性擬合方法進(jìn)行校準時(shí),計算量并不大,且采用計算機自動(dòng)控制,節省人力,因此該方法在實(shí)際應用中具有較好的實(shí)用性。
在后續工作中,如果想進(jìn)一步提升校準精度,也可以考慮分區間校準的方式[10]。根據模擬量輸入信號的曲線(xiàn),可以將其劃分為可近似認為線(xiàn)性的多個(gè)區間[11]。對于不同的區間,可以采用不同的校準曲線(xiàn)[12]。這樣,就可以更加精確地校準模擬量輸入信號,從而提高校準精度。
總之,本文所提出的校準方法在精度、自動(dòng)化程度和實(shí)用性方面都具有很大的優(yōu)勢。在實(shí)際應用中,可以根據需要進(jìn)一步提升校準精度,使校準工作更加高效、精確。
作者簡(jiǎn)介:
趙偉雄(1990-),男,河北邯鄲人,高級工程師,碩士,現就職于北京廣利核系統工程有限公司,主要從事廣利核嵌入式軟件開(kāi)發(fā)方面的研究。
參考文獻:
[1] 劉濤. 一種用于模擬量校準的校準函數關(guān)系獲取方法及裝置: CN110968833A[P]. 2020.
[2] 田垅, 劉宗田. 最小二乘法分段直線(xiàn)擬合[J]. 計算機科學(xué), 2012, 39(B06): 3.
[3] 肖貝. 數字系統中模擬量的線(xiàn)性擬合校準[J]. 現代商貿工業(yè), 2018, 39(5): 3.
[4] 黃中玉, 黃衛紅. 使用PLC模擬量輸出模塊對輸入模塊進(jìn)行偏置增益校準的方法研究[J]. 電氣開(kāi)關(guān), 2010, 48(4): 3.
[5] 龐偉, 龍辛, 黃波, 等. 風(fēng)機PLC內部通信系統的分析與設計[J]. 機械工程與自動(dòng)化, 2013(5): 3.
[6] Yidan B, Yanping W U, Yong H E, et al. A New Forecasting Model Based on the Combination of GM (1,1) Model and Linear Regression [J]. 系統工程理論與實(shí)踐, 2004, 24(3): 95-98.
[7] 黃富貴, 崔長(cháng)彩. 評定直線(xiàn)度誤差的最小二乘法與最小包容區域法精度之比較[J]. 光學(xué)精密工程, 2007.
[8] 廖常初. PLC模擬量輸入模塊的使用方法[J]. 電工技術(shù), 2003(10): 2.
[9] 李金城. PLC模擬量與通信控制應用實(shí)踐[M]. 北京: 電子工業(yè)出版社, 2011.
[10] 趙德政, 張帥, 張彪, 等. 一種基于改善PLC模擬量輸入模塊通道校準效果的方法: CN112165330A[P]. 2021.
[11] 劉巧珍, 欒松, 陳燕光. 最小二乘法在PLC模擬量測量系統標定中的應用[J]. 測控技術(shù), 2007, 26(5): 3.
[12] 趙金榮. PLC模擬量輸入通道及其在數據采集處理中的應用[J]. 上海應用技術(shù)學(xué)院學(xué)報: 自然科學(xué)版, 2003, 3(4): 4.
摘自《自動(dòng)化博覽》2023年12月刊