目前我國逐步啟動了智能交通系統(Intelligent Transportation Systems ,ITS)的產品開發,以期解決城市交通問題。信息化是ITS 實現的前提,ITS 子系統都離不開實時,豐富,有效的信息。可以說交通信息是ITS 運作的“靈魂”。為了獲得更有效,更詳細,更豐富的交通信息,本文提出了一種基于AT91RM9200 和AMR 磁阻傳感器(HMC1022)的嵌入式前端信息采集設備。 1 AMR 磁阻傳感器技術簡介 異向性磁阻傳感器(AMR),最適于工作在地球磁場范圍,可以檢測直流靜態磁場,也可以檢測磁場的強度和方向。AMR傳感器的制作過程是將鐵-鎳合金(Permalloy)薄膜沉積在硅片上形成電阻條,在磁場中其阻值可變化2-3%。通常,四個這樣的電阻連接成一個惠斯通電橋的形式,可以測出沿著單一軸線的磁場的強度和方向。 本項目采用Honeywell的HMC1022雙軸磁阻傳感器,當HMC1002暴露在變化的磁場中時,其電阻有所改變(△R),從而引起相應的輸出電壓的變化,AMR磁阻傳感器的核心原理將磁場轉換成差分輸出電壓。HMC1022的主要性能指標如表1所示: AMR傳感器檢測原理:地球磁場在很廣闊的區域內(大約幾公里)是一定的。一個鐵磁性物體,如汽車,無論它是運動的還是靜止的,AMR傳感器均可檢測由于車輛干擾而引起的地磁場的變化。車輛檢測可以有幾種應用方式:單軸傳感器可以用來檢測車輛是否存在,根據車輛鐵磁物質含量的不同,傳感器距車輛的檢測距離最遠可達15米。另一種應用是檢測車輛的通過,在這個應用中,可使用雙軸傳感器來判斷車輛的存在、行駛的方向和速度,使操作者獲取足夠的信息。該項目采用雙軸傳感器,通過使用合適的AMR傳感器和放大器,可以通過精確的磁場信息提供磁場強度和方向信息。 2 系統結構設計 整體系統中基于AT91RM9200和AMR磁阻傳感器(HMC1022)的嵌入式前端檢測設備在整個信息系統中作為傳感節點,路口前端管理設備作為路口接入點(通過CAN-Bus得到合理的傳感節點交通流量信息后對路口交通狀況作出響應),傳感節點和接入點均可以通過以太網傳入管理中心。整體系統結構如圖1所示: 將該設備安裝在車道旁,可以提供車輛通過帶來的豐富的磁信號,雙軸AMR磁阻傳感器將得到的原始數據通過運算放大器放大整形后,再通過A/D轉換器,把編碼后的信號輸入到AT91RM9200,AT91RM9200判斷處理采樣得到信號,再把有用信號通過CAN-Bus總線發送給路口前端管理設備或直接通過以太網,光纖傳入管理中心。 3 傳感節點硬件設計 3.1 硬件系統設計 前端信息采集設備主要由置位/復位電流帶電路,信號調理電路,微處理器,10/100MEthernet部分,CAN收發部分,參數備份等部分組成,設備硬件部分的基本組成框圖如圖2所示: AMR磁阻傳感器(HMC1022)輸出的毫伏信號經運算放大器進行差分放大后,進入A/D轉換芯片,經A/D芯片轉換后通過SPI總線發送至AT91RM9200。AT91RM9200對抽樣采集進來的信號進行處理后,通過CAN總線發送給路口前端管理設備或通過以太網傳入管理中心。 3.2 置位/復位電流帶 大多數低磁場傳感器受到大的磁場干擾(>4-20高斯)的影響可能導致輸出信號的衰變,為了減少這種影響和最大化信號輸出,可以在磁阻電橋上應用磁開關切換技術,消除過去磁歷史的影響。置位/復位電流帶的目的就是把磁阻傳感器恢復到測量磁場的高靈敏度狀態,這可以通過將大電流脈動(3.5A,2us)通過S/R電流帶實現。S/R電流帶看起來像加在SR+和SR-引腳之間的一個電阻。S/R電流帶與偏置電流帶不同,因為它是以垂直軸或不敏感的方向磁耦合到磁阻傳感器上的。任何低于額定電的流脈沖信號都會導致無法置位傳感器并且不會得到最佳的靈敏度。設計置位/復位脈沖電路的方法如圖3所示:其中采用MAX662A作為5V至20V的電壓轉換器。 利用S/R電流帶,可以消除或減少許多影響,包括:溫度漂移,非線性錯誤,交叉軸影響和由于高磁場的存在而導致信號輸出的丟失。這可通過下列過程實現: •電流脈沖,I置位,可從S/R+引腳施加到S/R-引腳以實現“置位”條件。電橋輸出作為Vout(置位)儲存起來。 •在S/R引腳內施加相等但相反的另一個脈沖可實現“復位”條件。電橋輸出作為Vout(復位)儲存起來。 •Vout可以表達為Vout=[ Vout(置位)-Vout(復位)]/2。此方法可以消除由電子器件以及電橋溫度漂移導致的偏置和溫度影響。 3.3 信號調理和A/D 轉換電路 信號調理和A/D轉換電路如圖4所示。注意AMP04的1腳8腳之間跨接1K的電阻(調節增益), 8腳和6腳輸出之間跨接1.5nF的電容。 圖4 信號調理和A/D轉換電路 圖4采用ADI公司生產的高精度單電源運算放大器AMP04,通過設置Rgain大小為1 K Ω ,可得Gain = 100 K Ω /Rgain=100;同時使用精密帶隙電壓基準LM4140-2.048為AMP04引腳5(Vref)提供基準電壓,使得AMP04輸出電壓滿足VOUT = (VIN+ – VIN–) × Gain + VREF。 A/D轉換器采用TI公司的單通道16位SAR A/D轉換器TLC4541。當基準電壓為4.096V時,可以直接接收從0~5V的信號,可實現16位無誤碼輸出。本項目使用精密帶隙電壓基準LM4140-4.096為TLC4541 2腳參考電壓輸入端提供外部基準電壓。 對于AMR磁阻傳感器(HMC1022), 在半橋上的2.5伏輸出端子具有從-10mV至+11.25mV(Vo+至Vo-所測定的)的電橋偏置電壓。這一電橋偏置電壓范圍可標準化為-2mV/V至+2.25mV/V。對于車輛檢測應用而言,在任一傳感器電橋上測得的最大地磁場值約為625毫高斯。因此,HMC1022的靈敏度規格為0.8~1.25mV/V/高斯時,當電橋工作電壓為5V時,任一電橋上最大可能的地磁場激勵可能為+/-3.9mV。當把+/-3.9mV加到可能的電橋偏置電壓-10mV至+11.25mV上時,偏置卻變為-13.9mV至+15.15mV。因此要將這個電橋輸出電壓進一 步放大至模擬-數字轉換器(ADC)的0V至4.096V輸入范圍。 綜上所述:2.048+(-13.9mV× 100)~2.048+(15.15× 100) < 0~4.096V;同時分辨率為(4.096V/2 /100)/(5V 1.0mv/V/gauss) = 0.125mgauss 滿足設計條件。 3.4 ARM 微處理器模塊 微處理器采用ATMEL公司針對系統控制,通訊領域推出的基于ARM920T內核的32位RISC處理器AT91RM9200。本項目中AT91RM9200模塊部分如圖5所示: 圖5 AT91RM9200 系統應用框圖 ARM微處理器模塊由AT91RM9200,NorFlash,SDRAM,LDO電源,復位電路共同構建。本系統選用Intel StrataFlash Memory(J3) JS28F128J3D75 (16Mbyte)構建16位FLASH存儲器系統;同時選用兩片Hynix HY57V281620A (16Mbyte)并聯構建32位SDRAM存儲系統。 AT91RM9200對各個模塊的初始化控制是通過底層驅動(Boot部分)來實現的。由于AT91RM9200的內核工作電壓為1.8V,I/O工作電壓為3.3V,同時存儲器部分的電壓為3.3V,但是本設計的供電電壓為5V,所以選用LDO進行電壓變換(LT085CT3.3,AMS1117-1.8);由于AT91RM9200的復位脈沖有一定的時間要求,所以選用IMP811S作為復位器件。 3.5 與路口前端管理設備通信部分 該部分包括10/100M Ethernet部分及CAN-Bus部分。10/100M Ethernet部分如圖6所示: AT91RM9200以太網MAC是OSI參考模型物理層(PHY)與邏輯鏈路層(LLC)間MAC子層的硬件工具。它使用以太網IEEE 802.3u 數據幀格式控制在主機與PHY 層間的數據交換。 它通過與MDIO/MDC 引腳連接來對PHY 層進行管理,在本項目中使用DAVICOM公司的10M/100M PHY層收發芯片DM9161E,需要注意的是Ethernet部分PCB設計中模擬數字電源地分開(模擬數字電源用100uH的電感加上0.1uF電容組成的型濾波器分開π ,特別要注意的是LT1085CT-3.3輸出要用22uF鉭電容濾波給DM9161E部分整體供電)。 CAN總線收發部分如圖7所示: 由于AT91RM9200本身沒有CAN控制單元,所以采用NXP公司的獨立CAN控制器SJA1000T,它支持CAN2.0A的11位ID模式和CAN2.0B的29位ID模式。同時采用致遠電子的CTM1050T作為隔離CAN收發器模塊,它完全符合ISO 11898標準的CAN收發器,隔離電壓DC 2500V。需要注意的是AT91RM9200的地址數據線是分開的(沒有ALE信號),所以針對SJA1000T的應用要注意先產生ALE信號和地址信號,再收發數據。 4 軟件設計 4.1 軟件主要功能 軟件的主要功能如下: (1)系統上電后,Boot它從JS28F128J3D75 Flash啟動,完成ARM微處理器模塊的各個部分的初始化,負責將Flash中的U-Boot.gz解壓到HY57V281620A SDRAM中,然后通過UBoot來引導Linux-2.4.27及Ramdisk。 (2)實時檢測和處理AMR磁阻傳感器(HMC1022)傳入的磁場改變(由于車輛通過)的信息,并通過固定的算法來確定是否有車輛通過,及車輛通過的方向。并且將有關信息通過網絡發送給管理中心或者通過CAN總線發送給路口前端管理設備,以便得到合理的交通信息后對路口交通狀況作出響應; (3)實時接收管理中心網絡發來的命令,在對命令的類型進行自動處理和判斷后實現相應的功能;實時接收路口前端管理設備發來的命令,在對命令的類型進行自動處理和判斷后實現相應的功能; (4)在設備架入點的磁場受到強磁場(大于10高斯)影響時,通過置位/復位電流帶通過大電流脈動(3.5A,2us)來強迫傳感器以高靈敏度模式工作;同時利用Vout=[ Vout(置位)- Vout(復位)]/2此方法可以消除由電子器件以及電橋溫度漂移導致的偏置和溫度影響; (5)由于地球磁場在很廣闊的區域內是一定的,所以利用路口多個檢測設備的CAN總線通信,來判斷某個設備的檢測功能失效,并且通知管理中心和路口前端管理設備; (6)能夠每隔一定的時間把路口的檢測流量信息,備份到Flash存儲器中,以便以后使用;能夠每隔一定的時間檢測設備本身的工作是否正常; 4.2 軟件架構 整個軟件采用嵌入式操作系統Linux作為設備功能實現上的主要載體。Linux是多任務操作系統,在軟件整體劃分上主要分為八個線程,運行時各個線程并行工作。各個線程之間的關系如圖8所示: 這八個線程分別為: ▲ 磁阻傳感器檢測線程,負責將AMR磁阻傳感器(HMC1022)檢測到的數據,通過一定的算法來判斷車輛信息 ▲ 檢測結果傳輸線程,負責將得到的結果通過網絡傳給主控制中心 ▲ 檢測結果交換線程,負責將得到的結果通過CAN網傳給路口前端管理設備,同時接收路口前端管理設備返回的數據 ▲ 網口接收線程,負責接收和處理主控制中心通過網口下發的指令和數據 ▲ 設備工作環境正常監控線程,負責如果發現受到強磁場(大于10高斯)影響,來強迫傳感器以高靈敏度模式工作 ▲ 多個設備交換數據線程,通過CAN網負責多個設備的互相通信,來監控單獨某個設備的工作情況 ▲ 設備自檢線程,負責檢測該設備本身的工作是否正常 ▲ 參數備份線程,負責備份檢測結果,以便以后一次性調用參考 下面主要介紹磁阻傳感器檢測線程的算法。 當雙軸磁傳感器放在距地面1英尺高的位置,X、Y敏感軸方向為北-南和西-東方向。當車輛沿著北-南方向行駛(即傳感器的敏感軸沿著行駛方向),可以檢測出車輛的行駛方向。車輛是由北-南方向行駛,那么磁場計首先“看到”的是減弱的磁場,從傳感器的初始值開始,續之而來的第一個畸變是曲線偏向負方向。當車輛正好與傳感器成一條線時,通過車輛的磁場變化量與開始時類似,傳感器輸出曲線返回到初始值。當車輛繼續向南時,磁力線將沿著敏感軸的正方偏向車輛。所以傳感器的輸出將會在初始值的基礎上增大。當車輛遠離傳感器的時,傳感器輸出恢復到初始值。當車輛倒車開回,從反方向接近傳感器。這部分的曲線正好是第一部分曲線的鏡反射。通過對該曲線進行平滑處理后,可以用來指示車輛的存在。 同時,檢測信號強度衰減得非常快,通過建立合適的閥值,可以濾掉旁邊車道的車輛或遠距離車輛帶來的干擾信號。實際上該設備具有很高的檢測分辨率,能非常詳細的描述出車輛的磁信息,輸出波形會隨車型的不同而不同,對輸出變量進行模式識別和匹配運算,不僅可以判斷出車輛的存在,行駛方向而且可以識別車型。 該算法需要注意的是消除電橋偏置電壓的影響。電橋偏置電壓是輸出節點Vo+和Vo-的電壓差(單位伏特)的結果,主要是由每個傳感器元件的精確電阻值誤差引起的。電橋偏置電壓對AMR傳感器系統的設計具有一定的影響,不僅僅只是偏置了輸出電壓。在傳感器電橋后設計連續的電壓放大級時,必須將該偏置電壓公差,添加到磁場激勵的AMR電橋所期望的輸出電壓范圍中(設計的關鍵是電壓放大級的輸出要在選用ADC的正常輸入范圍之內,如3.3所述)。該線程流程如圖9所示: 設備復位后,首先完成各個硬件模塊的初始化工作;其次完成與路口前端管理設備的通信及與管理中心的通信;當通信正常后設備自身完成HMC1022的置位脈沖和復位脈沖,分別讀取V置位和V復位;計算出V電橋偏置;然后設備正常抽樣,通過算法完成檢測功能;同時設備正常工作期間要完成互相檢測和自我檢測功能,并且把結果反饋給管理中心及路口前端管理設備。需要注意的是,如果電橋偏置檢測不正常或者多個設備環境磁場數據比較不正常,需要與路口前端管理設備和中心管理者通信,然后由它們通知給設備,通過置位/復位電流帶重新讀取磁阻傳感器電橋偏置電壓,如果仍然不正常,由中心通知有關部門來維修設備。 結語 基于AT91RM9200 的AMR 磁阻傳感車輛檢測系統作為交通流量信息發布系統的“眼睛”具有極高的檢測精度,同時該設備本身性能穩定可靠,可擴展性好,資源利用率高。AMR磁阻傳感器是利用地球磁場在鐵磁物體通過時的變化來檢測,所以它不受氣候的影響;非車輛的鐵磁性物體通過時通過對數據庫的查詢可以避免誤檢;容易集成化。 參考文獻 [1] ATMEL AT91RM9200 DataSheet,2002. [2] 杜春雷. ARM體系結構與編程[M].北京:清華大學出版社,2004. [3] Honeywell 控制傳感器電橋偏置Datasheet,2004. [4] 饒運濤,鄒繼軍,鄭勇云.現場總線CAN原理與應用技術[M].北京:北京航空航天大學出版 社,2003. [5] JONATHAN CORBET,ALESSANDRO RUBINI & GREG KROAH-HARTMAN. Linux 設置 驅動程序(第三版) [M].北京:中國電力出版社,2007. [6] Franco,S.基于運算放大器和模擬集成電路的電路設計(第三版)[M].西安:西安交通大學 出版社,2004. 作者:南京萊斯大型電子系統工程有限公司 成晟 史彬嬌 來源:單片機與嵌入式系統應用 2008 (9) |