杜林玉,衛蒙,馬凱
(西安石油大學電子工程學院,陜西 西安 710065)
關鍵字: AGV; 磁帶導航;磁導航傳感器;線圈一維矩陣;偏差數據
AGV是一種新型、高效、準確、靈活、快速、智能的物流搬運手段,具有無需人工參與、單次負載量大、可隨著生產工藝流程的調整而及時調整相應的搬運路線等特點,能夠大大提高企業的生產柔性和競爭力,在制造行業、電子行業、汽車行業、物流行業、煙草行業等領域得到了廣泛應用,目前導航方式以磁帶導航、激光導航、慣性導航等為主[1-2]。其中激光導航方式建設成本高、系統維護較復雜、對環境的要求較高;慣性導航定位準確性高,靈活性強,但其制造成本較高,導引精度和可靠性依賴于陀螺儀的使用壽命。本設計采用磁帶導航方式,是在路面上貼磁條,通過磁帶感應信號實現導引,其定位準確、導航靈活性好、成本低、精度高[3]。
磁帶導航傳感器可以提供232、485、CAN等總線形式的數據接口,也可提供直接對應比特的0C門輸出并口,其中并口方式具有簡單高速等優點,但是并口要求AGV控制器必須提供足夠多的IO口。目前,針對控制器輸入口資源缺乏的情況可以利用并串轉換電路的方法解決,本設計的方案是通過傳感器自身的控制器采集感應矩陣數據并經過運算處理直接向AGV控制器提供偏移數據,AGV小車控制器直接根據它做出糾偏動作[4]。這樣簡化了AGV小車控制器的算法。
磁導航傳感器感應部分有采用霍爾傳感器、磁阻傳感器等,其中霍爾傳感器組成一維陣列將外部的磁場變化直接轉換成電壓形式,采用并口輸出,要實現更佳的檢測精度需要更多的霍爾傳感器和I/O口,并且霍爾傳感器使用過程中會產生溫度漂移,對傳感器的穩定性有一定的影響[5]。本文介紹的磁導航傳感器只需要AGV控制系統提供2個I/0口,并且至少可以檢測5 mm的橫向偏移。本文將從原理,硬件組成、下位機的算法設計三個方面來介紹該磁導航傳感器。
磁信號導航作為AGV主要使用的一種導航技術,具有信號源穩定,導航精度高、功耗低、響應速度快等特點。由于磁信號導航AGV的信號源主要是磁信號源,磁信號傳感器檢測到磁信號對當前的AGV的狀態進行判斷,并計算出AGV的坐標,比較實際軌跡個期望軌跡的偏差。判斷是往左還是往右偏移。磁帶導航中磁條或磁釘正上方對應的磁場強度更強,當其感應到磁場強度最大的點是傳感器的中點時,就證明AGV沒有偏移,其他情況都說明AGV小車發生了偏移[6]。
傳感器感應外磁場的模塊是由28個電感線圈間隔5 mm按行排列組成。當穿過線圈的磁通量發生變化,線圈周圍磁感應強度和磁場強度發生變化,進而導致了線圈磁芯材料磁導率發生變化,產生了公式(1)的可逆磁導率,磁導率與電感值成正比[7],又已知LC振蕩原理中,電感值與振蕩頻率成反比關系,見公式(2)。

根據LC振蕩原理,將感應模塊感應到的磁場強弱轉換成最終正弦波頻率的大小,傳感器控制器經過運算分析通過模擬量輸出表示AGV小車的相對于磁條或磁釘的偏移量。數字量輸出表示傳感器感應到了磁帶或者磁釘的靜磁場。
磁導航傳感器系統框圖如圖1所示,由線圈感應陣列模塊、信號處理模塊、超低功耗的MSP430系列的微處理器、采用RS485的數字通信方式構成微處理器和PC之間的通信模塊。

圖1 磁導航傳感器系統框圖Fig.1 Block diagram of magnetic navigation sensor system
線圈陣列中每個線圈以5 mm的間距排成一行,線圈感應陣列感應由磁條或磁釘產生的弱磁場,其中線圈的選取和線圈排列的方式直接決定了傳感器的穩定性和精度。通過比較市面上的磁芯材料,其中鐵鎳合金其有較高的磁導率、低矯頑力、低損耗等特性,在中高頻頻段時,鐵鎳合金的磁性能更穩定,損耗更小,由于線圈一維陣列依次排列非常緊湊,要求線圈體積小,設計一種工字形線圈,其中磁芯材料選取0.2 mm的鐵鎳合金帶材,比市面上可買到的工字形磁芯體積更小、性能更優,為提高磁導航傳感器的穩定性和感應精度打下了堅實的基礎。
信號處理模塊包括振蕩電路、濾波電路、信號放大電路、自動增益電路等,目的在于將變化的電感量轉換成正弦波的頻率值以供傳感器的控制器運算和處理,其中振蕩電路如圖2 所示,結合計算公式(2)可知電感和頻率成正比,通過測量頻率值的大小來觀察由外磁場強度變化引起的線圈電感值的變化。
在磁釘或者磁條形成的磁場中,利用LC電路的振蕩頻率的變化依據實驗對應關系獲得磁場的相對位置。通過實驗確定最佳的起振頻率和滿足起振條件的各原件的參數范圍和變化規律。通過研究增量電感與外界環境磁場變化的關系,獲得頻率和幅值按一定規律變化的正弦波,用于處理和分析。LC振蕩電路主要有三點電容式、三點電感式等電路,這里選擇三點電容反饋式振蕩電路。振蕩電路如圖2所示,主要參數有Q29、C1、C2、Q1。

圖2 振蕩電路Fig.2 Oscillating circuit
TI公司的低功耗MSP430單片機的CPU采用16位精簡指令系統,集成有16位寄存器和常數發生器可實現最佳的性能,提高了指令執行的速率和效率,增強了單片機的實時處理能力;另外豐富的寄存器資源和內部存儲空間,使CPU可以實時保留更多的有效數據。MSP430單片機不僅可以應用于許多傳統的單片機應用領域,如儀器儀表、自動控制、消費品領域,更適合用于一些電池供電的低功耗產品,如能量表、手持式設備、智能傳感器等[8-10]。
通信模塊采用RS485串口通信[11-12],在磁導航傳感器出廠前和使用時故障檢查時使用,傳感器的兩個關鍵數據,一個是初始頻率,一個是模擬量輸出。由于每個傳感器感應陣列模塊線圈參數會存在不一致性,故而實際的每個傳感器陣列的初始頻率是不同的,為了減少誤差,通信規約里設置頻率校準命令,得到并保存陣列中每個線圈所振蕩的初始頻率值以供下位機軟件分析[13-14];模擬量輸出是直觀反映小車的偏移的關鍵量,所以對傳感器的數模轉換模塊進行校準至關重要,通過最小二乘法等算法校準至輸出電壓誤差在千分之一左右;通訊規約中的運行狀態檢查命令可以在傳感器使用過程中實時檢查傳感器的運行狀態,用于傳感器的故障分析等。通信模塊相當于傳感器的監控模塊。
磁導航傳感器使用MSP430系列微處理器,軟件選用底層匯編語言,軟件設計需要考慮兩點問題[15]:一是測量精度,要求傳感器至少達到5 mm的檢測精度;二是在滿足測量精度要求的前提下降低反應時間,提高靈敏度。
數據處理軟件設計分為兩步介紹。第一步,將磁導航傳感器感應模塊和信號處理模塊得到的標準方波進行測頻法測量,采用TB0捕獲中斷測頻,并且為適應不同頻率波段的測量,添加了頻率分頻器。待測量頻率為中高頻,通過對頻率的分頻,可以測量到更小的頻率變化,經過實驗選用十六分頻的測頻方法比較合適。這樣提高了測頻精度;第二步,將采集到的頻率值進行運算和分析,設計算法得出準確的小車偏移量。利用單片機的DA模塊輸出代表AGV小車偏移的模擬量。輸出對應的數字量表示有無靜磁場。
由于在數據采樣時,傳感器會受到外界磁場等的干擾,數據會出現不必要的波動。采用多次測量求取平均值的方法獲取陣列中每個點的采樣值。但是多次測量考慮到中斷數量增多,反應時間會延長。在頻率的分頻和頻率的采樣方案兩方面得到最優的采樣方案。頻率的分頻雖然可以可以測量到更小的頻率變化量,但是分頻后的正弦波周期隨著分頻倍數越大更長,也延長我們的數據采樣時間,根據設計需要,大量實驗得出采用是十六分頻和就奇偶測量可以滿足要求。下邊介紹三種備選采集數據方案:
通常情況下均采用各個陣列點依次采樣的方法,但有大部分的采樣周期是不必要的,為了減少采樣時間,設計出了奇偶測量和隔三測量。奇偶測量,顧名思義就是每次采樣不是奇數點采樣就是偶數點采樣,比第一種方案節省了一半的時間。設計中采用奇偶采樣方案。隔三測量按照1、4、7、10、13......的采樣點進行采樣,下一次采樣為2、5、8、11......由此遞推,每次采樣結束后找到最大值的采樣點,選取采樣點周邊6個點進行精準測量得到最值點,此方案理論上比前兩個方案更加簡便。但需要大量的實驗驗證。
傳感器輸出的模擬量對應小車的偏移量,模擬量和偏移量曲線圖如圖3所示AGV小車控制器可以根據模擬量進行簡單算法得到小車偏移量并作出相應的糾偏動作。

圖3 輸出曲線圖Fig.3 Output curve
傳感器控制器采集到感應陣列的頻率數據后,先與校準頻率比較,頻率差的大小與感應磁場的大小成正比,磁條/磁中心的磁場強度最大,引起的正弦波頻率的變化也越大。通過尋找頻率變化的最值點來尋找磁釘/磁條的N級點。得到AGV小車的偏移量,其中Y0指數字量輸出。Y0低電平表示傳感器感應到了靜磁場。圖4為傳感器輸出流程圖。

圖4 傳感器輸出流程圖Fig.4 Sensor output flow chart
經過大量的實驗,驗證了磁導航傳感器的感應偏差的能力,基本符合要求的感應精度和反應時間,當傳感器感應到偏移時,傳感器輸出模擬量和數字量表示偏移量,AGV小車控制器僅需采樣兩個I/0口的數據便可獲取小車自身垂直于運行方向的偏移量,進而根據偏移量進行糾偏任務。既避免了傳感器并口輸出對I/0口的占用,也避免了串口輸出導致的低采樣效率。