龐乃貞,黃盼,陳守強,劉華林
(西華大學機械工程與自動化學院數(shù)控研究所,四川成都 610039)
靜重式力基準機是利用力學傳遞效應,將標準砝碼的力值直接復現(xiàn)在被測傳感器上,通過與傳感器的示值進行對比和標定的基準機。靜重式力基準機的工作原理如圖1所示。
圖1 靜重式力基準機工作原理圖
從靜重式力基準機的工作原理可以看到,靜重式力基準機的砝碼數(shù)量是有限的,根據(jù)測試的要求,需要把不同大小的力值加載到被測傳感器上,就必需在有限數(shù)量的砝碼中選擇一定數(shù)量的砝碼進行組合,而進行砝碼組合時,不同的砝碼組合出來的力值可能相同,那么反過來相同的組合力值也可能對應不同的砝碼組合。因此,當同一個力值會有不同幾種砝碼組合的時候,應該建立一種標準來判斷使得最終只得出一種最優(yōu)的組合,便于計算機明確地對相應的砝碼進行控制。這種最優(yōu)組合應該滿足對加載速度最快、對精確度的影響最低同時對加載穩(wěn)定影響最小。為此研究砝碼組合算法和最優(yōu)組合在重式力基準機測試中具有重要意義。
從n個砝碼中取出m個來組合成力值,而且m從1到n變化,這類似于“背包問題”,在此采用一種基于二進制編碼的組合力值算法。其思路是將各個砝碼的重力值按從第1號砝碼到第n號砝碼的順序放在一個數(shù)組w中,對應砝碼的個數(shù)建立一個n維數(shù)組wi,數(shù)組w中的元素只能取0和1,其中1代表砝碼取出來進行組合,0則代表不取出來組合[1]。例如wi(i)=1,那么就是第i號砝碼要被取出來進行組合。例如在100 kN靜重式力基準機中砝碼中心桿吊掛裝置[2](0#砝碼)和各個砝碼的力值如表1所示,假設現(xiàn)在wi=[1 0 1 0 1 0 0 0 1],則代表1號砝碼、3號砝碼、5號砝碼和9號砝碼被取出來組成集合,而組成的其組合力值為:
表1 100 kN靜重式力基準機砝碼力值表
為此得出關(guān)于砝碼組合的二進制算法,其程序算法框圖如圖2所示。
圖2 砝碼組合的二進制算法
通過二進制編碼的方式,可從n個砝碼中把所有的砝碼的組合形式組成的力值全部找出來并存放在數(shù)組aw中。通過上面的分析知道數(shù)組aw中存放著2n-1個力值,而這2n-1個力值存在重復,因為不同的組合情況也可能得出相同的力值,這就要求對aw中的數(shù)據(jù)進行篩選,將相同的力值只保留一個,其余相同的濾掉,最后得出一個擁有所有不同力值的集合,為此首先得知道整個砝碼可以組合出多少個不同的力值。
根據(jù)分析,砝碼組合力值的篩選算法分為以下兩步來做:首先從1到2n-1逐個取組合力值數(shù)組aw中的力值,對于每次取到的砝碼組合力值aw(i),都將它和后面2n-1-i個力逐個進行比較當發(fā)現(xiàn)后面的2n-1-i個數(shù)中某個力值aw(k)和aw(i)相同的時候?qū)w(k)置為0,這樣在aw中每個力值都取出來和后面的數(shù)進行比對之后再統(tǒng)計aw中為零的值的個數(shù)c,然后非零值的個數(shù)就等于2n-1-c,這樣我們就可以建立一個大小為2n-1-c的一維數(shù)組uniqaw來專門存放aw中篩選出來的所有不同的組合力值。
通過力值的比較和篩選得出了砝碼組合出來的所有不同的力值,從而實現(xiàn)了在給定力基準機每個砝碼的重力值的情況下獲得基準機能夠組合出來的所有力值,明確了基準機的檢測范圍。但是為了在后續(xù)工作中能夠方便力值的查詢和調(diào)用,需要對所有的力值進行排序,在此選擇從小到大排序的方式。文中基于冒泡法的算法原理,采用改進的冒泡法,在要比較的數(shù)據(jù)范圍內(nèi)找出最小值,就將比較范圍內(nèi)的第一個數(shù)賦值給臨時變量temp,再利用temp的值和每一個數(shù)據(jù)都比較一次,在比較過程中如果有力值比temp的值還要小,則把這個值賦給temp變量覆蓋原來的值,記錄下最小值的位置,對比完后temp的值就是這個范圍內(nèi)的最小值,而最后一次記錄的位置就是最小力值在數(shù)組uniqaw中的位置,將第一個值賦給最后記錄的位置的數(shù),再將temp值賦給第一個值實現(xiàn)了最小值的交換。關(guān)于改進冒泡法的算法原理如圖3所示。
圖3 改進冒泡法的算法原理
上面已經(jīng)通過組合、篩選、排序和根據(jù)組合出來的力值反算對應砝碼的最優(yōu)組合得到了所有組合的Excel表格,利用這樣的表格,可以判斷出基準機在確定砝碼數(shù)量和對應的重力值后,就可以明確基準機力值的檢測范圍和對應力值的組合[3]。同樣,采用二進制編碼相減的算法,對應要加載的力值,設要加載的砝碼其對應編號為1,無需加載的砝碼對應0,這樣可以將下一個力值對應的編碼和當前力值對應的編碼進行相減,得出的編碼如果是1,則代表該砝碼需要加載;如果為0,則不需要改變砝碼狀態(tài);如果是-1,則意味著該砝碼需要卸載。以當前力值85 kN加載到下一時刻90 kN為例進行說明,其交換算法示意如圖4。
圖4 砝碼交換算法原理圖
可以找出其中的二進制編碼對應72 kN和85 kN的編碼方式。通過分析算法,得出從72 kN加載到85 kN只需要3號砝碼卸載和6號砝碼加載,這與實際應用相符合,從而說明算法的可行性。
由前面的分析得知,不同的砝碼組合出來的力值也可能相同,那么,反過來相同的組合力值也可能對應不同的砝碼組合。因此,當同一個力值會有不同幾種砝碼組合的時候,應該建立一種標準來判斷,使得計算程序最終只得出一種最優(yōu)的組合,便于計算機明確地對相應的砝碼進行控制。這種最優(yōu)組合應該對加載速度最快、對精確度的影響最低,同時對加載穩(wěn)定影響最小。砝碼在加載過程中不可避免地產(chǎn)生位置的微小偏移,進而出現(xiàn)輕微的擺動現(xiàn)象[4],其簡化模型可以簡化成如圖5所示。
圖5 砝碼擺動分析簡圖
假設某一時刻加載砝碼的組合情況如圖5中左邊的圖所示,簡化擺動模型后把加載上去的幾個砝碼組成的質(zhì)點系的質(zhì)心等效于圖5中的右圖所示黑點,。砝碼在擺動過程中會受到空氣等阻力,所以砝碼屬于欠阻尼運動。根據(jù)D'Alembert原理建立砝碼擺動的微分方程如下:
式中:φ代表中心吊桿的擺動角度;μ表示阻尼系數(shù);g為砝碼所在地的重力加速度;m和l分別代表等效質(zhì)量和等效擺長。通過求解式 (2)中的微分方程,可得出其解為:
則根據(jù)式 (3)可以得出砝碼擺動的周期曲線圖大致如圖6所示。
從圖6中可以看出擺動角度隨時間的變化不斷衰減。事實上每個周期振幅的衰減是成等比級數(shù)衰減的,其比例系數(shù)計算如下:
圖6 砝碼擺動曲線圖
要提高加載時的穩(wěn)定性,則擺動的次數(shù)越少越好,即每擺動一個周期,振幅衰減越多越好。由式(4)可知,增加周期可以減少擺長次數(shù),減小振動頻率可以增大周期。則由g/L=ω2可知,只有減小等效擺長L才可以使得ω的值減小,從而縮短砝碼擺動的周期,減少擺動次數(shù)。
通過分析等效擺長的計算公式,找出了同一個加載力值可以有幾種砝碼組合情況與之對應的時候,選擇最優(yōu)砝碼組合的原則,那就是選擇一種砝碼組合,使砝碼組成的質(zhì)點系的質(zhì)心到傳感器頂端的距離最?。?]。也就是說對應某一個加載力值,從上到下選擇砝碼來組合起來,首先看加載的力值是否大于或者等于第n號砝碼的重力值,如果是大于或者等于,那么先把第n號砝碼選擇上,然后再看剩下的力值是否大于第n-2號砝碼的重力值,大于則選上,如果小于,那么再判斷第n-3號砝碼,以此類推直到最終剩下的力值為0。
通過對有限個砝碼力值組合、篩選、排序和交換的理論分析,得出了其各自算法流程圖;根據(jù)具體力值反算出砝碼的不同組合;利用改進冒泡法確定了最優(yōu)砝碼組合的方法,實現(xiàn)了計算機更明確地對相應的砝碼進行控制,并通過重式力基準機的砝碼加載具體的實例分析,驗證了該砝碼組合算法的可行性。實際使用證明,這種砝碼組合算法和最優(yōu)組合能夠達到測試過程加載速度最快、對精確度的影響最低,對加載穩(wěn)定影響最小的實際效果,在重式力基準機測試中具有重要的應用價值。
[1]于立娟,張學成,馬雁,等.靜重式力標準機控制系統(tǒng)的設計[J].儀表技術(shù)與傳感器,2005(3):31-33.
[2]興佰明.力標準機平滑加載系統(tǒng)應用研究[D].成都:西華大學,2009.
[3]唐純謙.力值計量標準現(xiàn)狀及研究進展[J].中國測試,2009(5):11-16.
[4]康博.力基準機獨立連續(xù)加碼方法及裝置的研究[D].成都:西華大學,2010.
[5] SHA Shujing,ZHANG Xuecheng.Research on the Value Control of Norm Force Machine Based on Fuzzy Control[C] .2011 International Conference on Mechatronic Science,Electric Engineering and Computer,2011:232-234.