摘要:根據(jù)磁阻傳感器的角位移測量原理,提出智能金屬管浮子流量計(jì)的設(shè)計(jì)方案.該方案采用低功耗MCU和精度高ADC實(shí)現(xiàn)對流量的數(shù)字化采集和智能控制,應(yīng)用LMBP算法實(shí)現(xiàn)精度高的靜態(tài)特征曲線擬合;通過裁減TCP1IP協(xié)議,在以太網(wǎng)上實(shí)現(xiàn)了流量計(jì)與用戶的數(shù)據(jù)通信.實(shí)際運(yùn)行表明,設(shè)計(jì)的流量計(jì)系統(tǒng)運(yùn)行穩(wěn)定可靠.
金屬管浮子流量計(jì)具有耐高溫耐高壓、耐腐蝕等特點(diǎn),在中低流速、流量的工業(yè)計(jì)量中得到了廣泛應(yīng)用.目前采用電遠(yuǎn)傳方式的流量計(jì)多以霍爾元件或電容式角位移作為傳感器,不但結(jié)構(gòu)復(fù)雜、精度較低,而且不具備以太網(wǎng)接口功能.本文中作者應(yīng)用各向異性磁阻的傳感原理設(shè)計(jì)了一種能與以太網(wǎng)通信的智能金屬管浮子流量計(jì).該流量計(jì)具有精度高、功耗低、設(shè)計(jì)簡單等特點(diǎn),可廣泛應(yīng)用于工業(yè)計(jì)量,特別是適應(yīng)了工業(yè)以太網(wǎng)的發(fā)展需求.
1總體設(shè)計(jì)
金屬管浮子流量計(jì)由錐形管、內(nèi)置磁鋼的浮子以及外置嵌有磁鋼的機(jī)械連桿等構(gòu)件組成.當(dāng)流量變化時(shí),浮子在錐形管內(nèi)上下移動,并由磁鋼耦合帶動機(jī)械連桿旋轉(zhuǎn)-定角度.此角度與流量的大小存在著一對應(yīng)的關(guān)系,只要測出角度便可通過對應(yīng)關(guān)系求出流量,因此對角度的正確測量是流量計(jì)設(shè)計(jì)的關(guān)鍵.具體設(shè)計(jì)時(shí)采用Honeywell公司生產(chǎn)的磁阻傳感器HMC1501實(shí)現(xiàn)對機(jī)械連桿角位移的正確測量,選擇MSP430F449單片機(jī)作為MCU,采用CirrusLogic公司生產(chǎn)的以太網(wǎng)控制芯片CS8900A實(shí)現(xiàn)網(wǎng)絡(luò)互聯(lián).系統(tǒng)的總體設(shè)計(jì)框圖如圖1所示.
2HMC1501磁阻傳感器的應(yīng)用
2.1磁阻傳感器的測量原理和工作特性
鐵磁性材料通常為各向異性材料,當(dāng)采用特殊工藝將其制成薄膜狀的電阻元件后,便可用于感測周圍磁場的變化.HMC1501傳感器是一種工作在磁飽和狀態(tài)下的變換器件,在此狀態(tài)下電阻對磁場的大小不敏感,僅與磁場的方向有關(guān),利用此原理就可以感測周圍磁場相對于傳感器的角度變化4.圖2顯示了HMC1501的磁場角度和輸出電壓之間的對應(yīng)關(guān)系,當(dāng)磁場角度為-45°~+45°時(shí)輸出電壓遞減且單調(diào)性好,因此將HMC1501的有效角度范圍定義為±45°,在此范圍內(nèi)分辨率小于0.07°.典型橋路的電阻和輸出電壓分別為33kQ和-60~60mV,橋路供電電壓較寬(1~24V),當(dāng)以5V供電時(shí)功耗僅為0.76mW,由此可見功耗低是該傳感器的優(yōu)勢之一.該傳感器存在零點(diǎn)偏置電壓,需進(jìn)行補(bǔ)償.一般補(bǔ)償?shù)姆椒ǹ煞譃橛布a(bǔ)償和軟件補(bǔ)償,但硬件補(bǔ)償需設(shè)計(jì)復(fù)雜的電路,成本較高,而軟件補(bǔ)償隨著MCU處理能力的提高得到了廣泛應(yīng)用,本設(shè)計(jì)中采用軟件補(bǔ)償.
2.2傳感器檢測電路設(shè)計(jì)
為簡化傳感器檢測電路設(shè)計(jì),采用了依靠單電源供電的放大器TLC27L2,這就要求OUT+點(diǎn)的電位大于OUT-點(diǎn)的電位,否則放大器的輸出就會失真.但HMC1501的典型輸出信號在.60~60mV之間,因此必須在含OUT+的支路的節(jié)點(diǎn)2和模擬地之間串接一阻值大于243Ω的電阻,為保證一定的冗余度,該電阻取300Ω,圖3為簡化后的傳感器檢測電路.
2.3LMBP算法及應(yīng)用
智能金屬管浮子流量計(jì)采用2個(gè)HMC1501傳感器和1個(gè)溫度傳感器,其中2個(gè)HMC1501一個(gè)用于感測連桿磁鋼的方向變化,另一個(gè)用于補(bǔ)償浮子磁鋼上下移動所形成的復(fù)合磁場的影響,溫度傳感器感測HMC1501周圍的溫度并予以溫度補(bǔ)償.溫度傳感器的數(shù)學(xué)模型很難用解析式描述,傳統(tǒng)的做法是在不同溫度下進(jìn)行標(biāo)定,這種做法不但計(jì)算量大、占用存儲空間多,而且計(jì)算精度不高.鑒于人工神經(jīng)網(wǎng)絡(luò)能夠完成任意的非線性映射,其中BP算法(BackPropagation)具有以任意精度逼近任何非線性函數(shù)的能力,而且無需事先確定函數(shù)形式,因此利用BP神經(jīng)網(wǎng)絡(luò)處理傳感器靜態(tài)特性的非線性是一種較好的方法網(wǎng).但實(shí)際應(yīng)用時(shí)BP算法存在收斂速度慢和目標(biāo)函數(shù)存在局部極小等不足之處.為此采用基于誤差平方和最小化的權(quán)值調(diào)整算法即Levenberg-Marquart算法作為對BP算法的改進(jìn),稱之為LMBP算法.BP算法以均方誤差作為性能函數(shù),其表達(dá)式為
式中,w為網(wǎng)絡(luò)的權(quán)值向量,t為期望輸出向量(標(biāo)定值),y為實(shí)際輸出向量,e為誤差向量.LM算法結(jié)合了梯度法和高斯-牛頓法的優(yōu)點(diǎn),具有全局性和收斂速度快的優(yōu)勢,并可通過對BP算法的修正,避免高斯-牛頓法中求解Hessian矩陣的問題,減少了網(wǎng)絡(luò)訓(xùn)練中的計(jì)算量和內(nèi)存需求量.權(quán)值的調(diào)整公式為
式中,μ為正常數(shù),I為單位矩陣,e。為網(wǎng)絡(luò)的誤差向量,J為以網(wǎng)絡(luò)誤差對權(quán)值的一階導(dǎo)數(shù)為元素的Jacobian矩陣.△w每次迭代時(shí)都對μ進(jìn)行自適應(yīng)調(diào)整,當(dāng)網(wǎng)絡(luò)誤差減小時(shí)減小μ的值,反之增加μ的值.-般情況下Jacobian矩陣的計(jì)算量較大,因此該算法比較適合網(wǎng)絡(luò)規(guī)模不大、網(wǎng)絡(luò)參數(shù)較少的應(yīng)用場合,本設(shè)計(jì)中使用的是典型的3層網(wǎng)絡(luò)結(jié)構(gòu),如圖4所示.從圖中可以看出該網(wǎng)絡(luò)輸入層、輸出層、隱層的節(jié)點(diǎn)分別為3個(gè)、1個(gè)、4個(gè),網(wǎng)絡(luò)規(guī)模較小,因此使用LM算法可以取得較好的效果.
3以太網(wǎng)結(jié)構(gòu)的實(shí)現(xiàn)
3.1TCP/IP協(xié)議的裁減
以太網(wǎng)中的TCP/IP協(xié)議數(shù)以百計(jì),而嵌入式系統(tǒng)的資源有限,沒有必要實(shí)現(xiàn)全部TCP/IP協(xié)議.裁減TCP/IP協(xié)議以適應(yīng)工業(yè)以太網(wǎng)應(yīng)用的要求是當(dāng)前的一個(gè)研究熱點(diǎn),但目前尚無統(tǒng)一的裁減標(biāo)準(zhǔn)4.在本應(yīng)用中由于網(wǎng)絡(luò)的連接數(shù)和數(shù)據(jù)的傳輸量較少,因此以夠用即可”為原則,對TCP/IP協(xié)議進(jìn)行合理裁減.裁減后的協(xié)議包括鏈路層中的CSMA/CD.ARP協(xié)議,網(wǎng)絡(luò)層中的IP協(xié)議,ICMP中的Ping協(xié)議,傳輸層中的TCP、UDP協(xié)議以及應(yīng)用層中的HTTP協(xié)議.
數(shù)據(jù)鏈路層的主要作用是為其上層協(xié)議發(fā)送和接收數(shù)據(jù)幀,采用IEEE802.3規(guī)定的CSMA/CD協(xié)議,可使同一局域網(wǎng)上的多臺計(jì)算機(jī)共享同一物理傳輸介質(zhì),只要采用通用的網(wǎng)絡(luò)接口控制芯片CS8900A就可實(shí)現(xiàn)該協(xié)議.以太網(wǎng).上數(shù)據(jù)的傳輸是通過網(wǎng)絡(luò)的MAC地址進(jìn)行識別的,這就要求系統(tǒng)具有從IP地址轉(zhuǎn)換到MAC地址的功能,即ARP(地址解析)協(xié)議.網(wǎng)絡(luò)層中的IP協(xié)議是TCP/IP協(xié)議族的核心協(xié)議,它使異構(gòu)網(wǎng)絡(luò)之間的通信成為可能.ICMP實(shí)現(xiàn)與其他主機(jī)或路由器交換錯(cuò)誤報(bào)文和其他重要信息,由于本設(shè)計(jì)只需測試網(wǎng)絡(luò)聯(lián)通情況,因此只保留了其中的Ping協(xié)議.傳輸層中的TCP協(xié)議和UDP協(xié)議為2臺主機(jī)上的應(yīng)用程序提供端到端的通信.應(yīng)用層中的HTTP協(xié)議實(shí)現(xiàn)以瀏覽器訪問的方式.在以,上諸多協(xié)議中以實(shí)現(xiàn)TCP協(xié)議最為困難,受運(yùn)算資源限制,只能實(shí)現(xiàn)簡化的有限狀態(tài)機(jī)和滑動窗口確認(rèn)機(jī)制以及單TCP連接.另外,為過濾來訪信息,確保數(shù)據(jù)安全還實(shí)現(xiàn)了簡易網(wǎng)絡(luò)防火墻功能,只允許某些事先設(shè)置好的IP地址對流量計(jì)進(jìn)行訪問,有效減輕了流量計(jì)的工作負(fù)荷.
3.2以太網(wǎng)控制芯片CS8900A的應(yīng)用
CS8900A是一款性能好、低功耗的以太網(wǎng)控制芯片,內(nèi)部含有802.3介質(zhì)訪問控制塊(MAC),支持全雙工操作,具有自動處理沖突檢測、報(bào)頭生成、CRC校驗(yàn)碼生成及其驗(yàn)證等功能;同時(shí)通過對發(fā)送控制寄存器(TCMD)的配置,MAC可以完成幀的自動重傳51.設(shè)計(jì)時(shí)選擇3V供電的CS8900A-CQ3,同時(shí)為了便于和MSP430F449之間的電平匹配,在MSP430F449與CS8900A之間采用圖5所示的硬件接口0.通過將管腳/MEMW和/MEMR置高,使CS8900A工作在簡單的1/0模式,該模式占用端口資源較少.MSP430F449通過對/SBHE、/IOW和/IOR等控制信號線實(shí)現(xiàn)對CS8900A工作方式的控制和讀寫操作.
在設(shè)計(jì)中考慮到CS8900A芯片采用的是16位數(shù)據(jù)傳輸模式,因此在訪問之前必須為總線的高位使能管腳(1SBHE)提供--個(gè)由高到低,再由低到高變化的電平信號.CS8900A通過網(wǎng)絡(luò)隔離變壓器TRC2023以12.5的電壓比將數(shù)據(jù)發(fā)送到網(wǎng)絡(luò),以11的電壓比從網(wǎng)絡(luò)接收數(shù)據(jù).CS8900A芯片的初始化操作主要包括:軟件復(fù)位并檢查標(biāo)志位、設(shè)定16位工作模式、設(shè)定臨時(shí)以太網(wǎng)物理地址、設(shè)定接收幀類型、確定數(shù)據(jù)傳送方向、中斷使能以及數(shù)據(jù)收發(fā)使能等.
4結(jié)束語
利用磁阻傳感器HMC1501實(shí)現(xiàn)了流量計(jì)機(jī)械連桿在士45°范圍內(nèi)角度的正確測量,并將流量計(jì)接入以太網(wǎng),實(shí)現(xiàn)了流量測量的智能化和網(wǎng)絡(luò)化,實(shí)際運(yùn)行表明該系統(tǒng)工作穩(wěn)定、可靠.
本文來源于網(wǎng)絡(luò),如有侵權(quán)聯(lián)系即刪除!