莫喜玄,張 娟,高興宇,蔣文彥,梁小歡,龔 平
(1.桂林星漢科技股份有限公司,廣西 桂林 541000;2.桂林醫學院附屬醫院健康體檢中心,廣西 桂林 541000;3.桂林電子科技大學,廣西 桂林 541004)
標簽打印在物流、醫學等方面扮演著重要的作用。人們可以根據標簽上面的信息追蹤到其生產廠家及相關產品等人員的詳細信息,極大提高了安全性、便捷性。但是在貼標簽的過程由于其位置不準確,會造成標簽錯位,對廠家而言會極大提高生產的成本,造成極大浪費[1]。
為了解決在自動標簽打印過程中標簽定位不準確的問題,提出了一種基于粒子群算法來精確計算其位置的方法。由于粒子群算法會造成一定區域內的最優化問題和節點的位置會發生不可預測的變化[2,3],同時因為測量時會有誤差的存在和網絡中節點不合理導致測量精度不高[4]等問題。因此,利用粒子群算法結合其實際的坐標位置來進行實驗分析,通過重復反饋、多方面影響粒子群算法因素從而對位置準確度會有影響進行分析,從而找到條形碼的準確位置。
紅外感應傳感器是通過計算回饋的能量,基本原理:紅外傳感器在遇到不同檢測物的時候會出現不同的能量損耗,根據這一特點進行位置信息的采集。紅外測距傳感器結構:兩個二極管,一個是負責接收信號,另一個作為發射紅外信號,用來判斷接收與發射的頻率是否頻率一致從而判斷有沒有障礙物。因此本課題以紅外感應傳感器作為空間位置信息采集,利用優化算法對空間坐標進行最優化,來確定精確位置。如圖1所示為紅外感應的全自動標簽打印裝置的整體結構。

圖1 紅外感應的全自動標簽打印裝置
基于時間差算法原理的傳感器對貼標機進行定位研究,其定位原理如圖2所示。

圖2 時間差算法定位原理
粒子群算法是一種解決最優化問題的特定算法,通過利用粒子群算法優化空間坐標確定標簽裝置的精確位置,實現全自動標簽打印裝置的精確定位。粒子群算法的基本原理:在一個待測的空間中會存在許多粒子,其中速度和位置會根據最優化的結果進行重新確定,位置的不斷變化會使種群中的粒子趨向于最優化[5]。在粒子群算法中,種群中粒子的速度和位置都是隨機確定的,當粒子在被測區域運動的時候,每個粒子會根據自身的特征從而改變自己在空間域的速度和位置,從而在每一次的反饋的時候找到最優解。每一次反饋時,粒子會根據個體的極值pbest和全局的極值gbest變化自己的速度和位置,對應的算法流程圖如圖3所示,其速度和位置更新公式見式(1)(2)。

圖3 粒子群算法流程圖


其中,學習因子是e,它們都為正常數,正常情況下c1=c2=2;r1,r2為0~1之間均勻分布的隨機數慣性權重因子為ω,其作用為影響粒子的飛行速度從而對種群狀態的影響。
個體極值更新公式:

對于整個種群而言,全局極值的更新公式:

使用MATLAB搭建無線傳感器網絡平臺。對紅外感應貼標裝置應用粒子群優化算法確定其精確位置參數的設置見表1。特定的區域的作用會作為隨機網絡節點的位置,平面結構作為指定區域。

表1 參數設置
圖4描述的是空間中網絡節點的空間位置在紅色點表示實際位置、藍色點表示目標節點評估位置是需要重新進行優化的點,從圖中可以看出實際位置與重新優化的位置基本重合,空間地理坐標[12.5-20]和[30-40]區間中空間點的位置最集中,因此可以確定傳感器的坐標值來對試管進行貼標。

圖4 網絡節點定位
表2是對通信半徑進行誤差分析的結果,可以得知通信半徑數值越大傳感器定位誤差越小,因此在利用算法對貼標機空間位置進行優化過程中,通信半徑在裝置空間允許的范圍內應該盡量選擇大。節點個數對誤差值的影響和通信半徑一致。

表2 通信半徑誤差分析
表3對優化算法中瞄點個數與定位誤差之間的關系進行分析的結果,可知瞄點個數與定位誤差成反比,通過對空間地理位置、通信半徑以及瞄點個數定量化進行分析實現了節點的精確定位,只有極少數粒子出現誤差,但它是由于每一次的反饋使結果進入局部最優解的陷阱成為“偽點”。

表3 錨點個數誤差分析
本課題采用粒子群算法對全自動標簽打印進行準確定位的研究,文中結合標簽打印裝置以選取基于時間到達差算法定位原理的紅外感應傳感器,為提高定位精度提供了基礎。這樣利用優化算法根據裝置空間位置對參數進行設置,通過對影響定位誤差的主要因素進行定量分析,確定最佳的優化區間;通過利用MATLAB對所確定的區間進行仿真驗證,使定位精度進一步提高。