莫喜玄,張 娟,高興宇,蔣文彥,梁小歡,龔 平
(1.桂林星漢科技股份有限公司,廣西 桂林 541000;2.桂林醫(yī)學(xué)院附屬醫(yī)院健康體檢中心,廣西 桂林 541000;3.桂林電子科技大學(xué),廣西 桂林 541004)
標(biāo)簽打印在物流、醫(yī)學(xué)等方面扮演著重要的作用。人們可以根據(jù)標(biāo)簽上面的信息追蹤到其生產(chǎn)廠家及相關(guān)產(chǎn)品等人員的詳細(xì)信息,極大提高了安全性、便捷性。但是在貼標(biāo)簽的過(guò)程由于其位置不準(zhǔn)確,會(huì)造成標(biāo)簽錯(cuò)位,對(duì)廠家而言會(huì)極大提高生產(chǎn)的成本,造成極大浪費(fèi)[1]。
為了解決在自動(dòng)標(biāo)簽打印過(guò)程中標(biāo)簽定位不準(zhǔn)確的問(wèn)題,提出了一種基于粒子群算法來(lái)精確計(jì)算其位置的方法。由于粒子群算法會(huì)造成一定區(qū)域內(nèi)的最優(yōu)化問(wèn)題和節(jié)點(diǎn)的位置會(huì)發(fā)生不可預(yù)測(cè)的變化[2,3],同時(shí)因?yàn)闇y(cè)量時(shí)會(huì)有誤差的存在和網(wǎng)絡(luò)中節(jié)點(diǎn)不合理導(dǎo)致測(cè)量精度不高[4]等問(wèn)題。因此,利用粒子群算法結(jié)合其實(shí)際的坐標(biāo)位置來(lái)進(jìn)行實(shí)驗(yàn)分析,通過(guò)重復(fù)反饋、多方面影響粒子群算法因素從而對(duì)位置準(zhǔn)確度會(huì)有影響進(jìn)行分析,從而找到條形碼的準(zhǔn)確位置。
紅外感應(yīng)傳感器是通過(guò)計(jì)算回饋的能量,基本原理:紅外傳感器在遇到不同檢測(cè)物的時(shí)候會(huì)出現(xiàn)不同的能量損耗,根據(jù)這一特點(diǎn)進(jìn)行位置信息的采集。紅外測(cè)距傳感器結(jié)構(gòu):兩個(gè)二極管,一個(gè)是負(fù)責(zé)接收信號(hào),另一個(gè)作為發(fā)射紅外信號(hào),用來(lái)判斷接收與發(fā)射的頻率是否頻率一致從而判斷有沒(méi)有障礙物。因此本課題以紅外感應(yīng)傳感器作為空間位置信息采集,利用優(yōu)化算法對(duì)空間坐標(biāo)進(jìn)行最優(yōu)化,來(lái)確定精確位置。如圖1所示為紅外感應(yīng)的全自動(dòng)標(biāo)簽打印裝置的整體結(jié)構(gòu)。
圖1 紅外感應(yīng)的全自動(dòng)標(biāo)簽打印裝置
基于時(shí)間差算法原理的傳感器對(duì)貼標(biāo)機(jī)進(jìn)行定位研究,其定位原理如圖2所示。
圖2 時(shí)間差算法定位原理
粒子群算法是一種解決最優(yōu)化問(wèn)題的特定算法,通過(guò)利用粒子群算法優(yōu)化空間坐標(biāo)確定標(biāo)簽裝置的精確位置,實(shí)現(xiàn)全自動(dòng)標(biāo)簽打印裝置的精確定位。粒子群算法的基本原理:在一個(gè)待測(cè)的空間中會(huì)存在許多粒子,其中速度和位置會(huì)根據(jù)最優(yōu)化的結(jié)果進(jìn)行重新確定,位置的不斷變化會(huì)使種群中的粒子趨向于最優(yōu)化[5]。在粒子群算法中,種群中粒子的速度和位置都是隨機(jī)確定的,當(dāng)粒子在被測(cè)區(qū)域運(yùn)動(dòng)的時(shí)候,每個(gè)粒子會(huì)根據(jù)自身的特征從而改變自己在空間域的速度和位置,從而在每一次的反饋的時(shí)候找到最優(yōu)解。每一次反饋時(shí),粒子會(huì)根據(jù)個(gè)體的極值pbest和全局的極值gbest變化自己的速度和位置,對(duì)應(yīng)的算法流程圖如圖3所示,其速度和位置更新公式見(jiàn)式(1)(2)。
圖3 粒子群算法流程圖
其中,學(xué)習(xí)因子是e,它們都為正常數(shù),正常情況下c1=c2=2;r1,r2為0~1之間均勻分布的隨機(jī)數(shù)慣性權(quán)重因子為ω,其作用為影響粒子的飛行速度從而對(duì)種群狀態(tài)的影響。
個(gè)體極值更新公式:
對(duì)于整個(gè)種群而言,全局極值的更新公式:
使用MATLAB搭建無(wú)線傳感器網(wǎng)絡(luò)平臺(tái)。對(duì)紅外感應(yīng)貼標(biāo)裝置應(yīng)用粒子群優(yōu)化算法確定其精確位置參數(shù)的設(shè)置見(jiàn)表1。特定的區(qū)域的作用會(huì)作為隨機(jī)網(wǎng)絡(luò)節(jié)點(diǎn)的位置,平面結(jié)構(gòu)作為指定區(qū)域。
表1 參數(shù)設(shè)置
圖4描述的是空間中網(wǎng)絡(luò)節(jié)點(diǎn)的空間位置在紅色點(diǎn)表示實(shí)際位置、藍(lán)色點(diǎn)表示目標(biāo)節(jié)點(diǎn)評(píng)估位置是需要重新進(jìn)行優(yōu)化的點(diǎn),從圖中可以看出實(shí)際位置與重新優(yōu)化的位置基本重合,空間地理坐標(biāo)[12.5-20]和[30-40]區(qū)間中空間點(diǎn)的位置最集中,因此可以確定傳感器的坐標(biāo)值來(lái)對(duì)試管進(jìn)行貼標(biāo)。
圖4 網(wǎng)絡(luò)節(jié)點(diǎn)定位
表2是對(duì)通信半徑進(jìn)行誤差分析的結(jié)果,可以得知通信半徑數(shù)值越大傳感器定位誤差越小,因此在利用算法對(duì)貼標(biāo)機(jī)空間位置進(jìn)行優(yōu)化過(guò)程中,通信半徑在裝置空間允許的范圍內(nèi)應(yīng)該盡量選擇大。節(jié)點(diǎn)個(gè)數(shù)對(duì)誤差值的影響和通信半徑一致。
表2 通信半徑誤差分析
表3對(duì)優(yōu)化算法中瞄點(diǎn)個(gè)數(shù)與定位誤差之間的關(guān)系進(jìn)行分析的結(jié)果,可知瞄點(diǎn)個(gè)數(shù)與定位誤差成反比,通過(guò)對(duì)空間地理位置、通信半徑以及瞄點(diǎn)個(gè)數(shù)定量化進(jìn)行分析實(shí)現(xiàn)了節(jié)點(diǎn)的精確定位,只有極少數(shù)粒子出現(xiàn)誤差,但它是由于每一次的反饋使結(jié)果進(jìn)入局部最優(yōu)解的陷阱成為“偽點(diǎn)”。
表3 錨點(diǎn)個(gè)數(shù)誤差分析
本課題采用粒子群算法對(duì)全自動(dòng)標(biāo)簽打印進(jìn)行準(zhǔn)確定位的研究,文中結(jié)合標(biāo)簽打印裝置以選取基于時(shí)間到達(dá)差算法定位原理的紅外感應(yīng)傳感器,為提高定位精度提供了基礎(chǔ)。這樣利用優(yōu)化算法根據(jù)裝置空間位置對(duì)參數(shù)進(jìn)行設(shè)置,通過(guò)對(duì)影響定位誤差的主要因素進(jìn)行定量分析,確定最佳的優(yōu)化區(qū)間;通過(guò)利用MATLAB對(duì)所確定的區(qū)間進(jìn)行仿真驗(yàn)證,使定位精度進(jìn)一步提高。