[导读] 根据磁阻传感器的角位移测量原理。提出智能金属管浮子流量计的设计方案.该方案采用低功耗MCU和高精度ADC实现对流量的数字化采集和智能控制.应用LMBP算法实现高精度的静态特征曲线拟合;通过裁减TCP/IP协议,在以太网上实现了流量计与用户的数据通信。实际运行表明,设计的流量计系统运行稳定可靠。
金属管浮子流量计具有耐高温、耐高压、耐腐蚀等特点,在中低流速、流量的工业计量中得到了广泛应用。目前采用电远传方式的流量计多以霍尔元件或电容式角位移作为传感器,不但结构复杂、精度较低,而且不具备以太网接口功能。本文中作者应用各向异性磁阻的传感原理设计了一种能与以太网通信的智能金属管浮子流量计。该流量计具有精度高、功耗低、设计简单等特点,可广泛应用于工业计量,特别是适应了工业以太网的发展需求。
1 总体设计
金属管浮子流量计由锥形管、内置磁钢的浮子以及外置嵌有磁钢的机械连杆等构件组成。当流量变化时,浮子在锥形管内上下移动,并由磁钢耦合带动机械连杆旋转一定角度。此角度与流量的大小存在着一一对应的关系,只要测出角度便可通过对应关系求出流量。因此,对角度的精确测量是流量计设计的关键。具体设计时采用Honeywell公司生产的磁阻传感器HMC1501实现对机械连杆角位移的精确测量,选择MSP430F449单片机作为MCU,采用CirrusLogic公司生产的以太网控制芯片CS8900A实现网络互联。系统的总体设计框图如图1所示。
2 HMC1501磁阻传感器的应用
2.1 磁阻传感器的测量原理和工作特性
铁磁性材料通常为各向异性材料,当采用特殊工艺将其制成薄膜状的电阻元件后,便可用于感测周围磁场的变化。HMC1501传感器是一种工作在磁饱和状态下的变换器件,在此状态下电阻对磁场的大小不敏感,仅与磁场的方向有关,利用此原理就可以感测周围磁场相对于传感器的角度变化[1]。图2显示了HMC1501的磁场角度和输出电压之间的对应关系,当磁场角度为-45o~+45o时输出电压递减且单调性好,因此将HMC1501的有效角度范围定义为±45o,在此范围内分辨率小于0.07o。典型桥路的电阻和输出电压分别为33kΩ和-60~60mV,桥路供电电压较宽(1~24 V),当以5V供电时功耗仅为0.76mW,由此可见功耗低是该传感器的优势之一。该传感器存在零点偏置电压,需进行补偿,一般补偿的方法可分为硬件补偿和软件补偿。但硬件补偿需设计复杂的电路,成本较高,而软件补偿随着MCU处理能力的提高得到了广泛应用,本设计中采用软件补偿。
2.2 传感器检测电路设计
为简化传感器检测电路设计,采用了依靠单电源供电的放大器TLC27L2。这就要求OUT+点的电位大于OUT-点的电位。否则放大器的输出就会失真。但HMC1501的典型输出信号在-60~60mV之间,因此必须在含OUT+的支路的节点2和模拟地之间串接一阻值大于243Ω的电阻。为保证一定的冗余度,该电阻取300Ω,图3为简化后的传感器检测电路。
2.3 LMBP算法及应用
智能金属管浮子流量计采用2个HMC1501传感器和1个温度传感器,其中2个HMC1501一个用于感测连杆磁钢的方向变化,另一个用于补偿浮子磁钢上下移动所形成的复合磁场的影响,温度传感器感测HMC1501周围的温度并予以温度补偿,温度传感器的数学模型很难用解析式描述,传统的做法是在不同温度下进行标定,这种做法不但计算量大、占用存储空间多,而且计算精度不高。鉴于人工神经网络能够完成任意的非线性映射。其中BP算法(Back Propagation)具有以任意精度逼近任何非线性函数的能力,而且无需事先确定函数形式。因此,利用BP神经网络处理传感器静态特性的非线性是一种较好的方法[2],但实际应用时BP算法存在收敛速度慢和目标函数存在局部极小等不足之处。为此,采用基于误差平方和最小化的权值调整算法即Levenberg-Marquart算法作为对BP算法的改进,称之为LMBP算法。BP算法以均方误差作为性能函数,其表达式为:
(1)
式中,W为网络的权值向量,t为期望输出向量(标定值),y为实际输出向量,e为误差向量。LM算法结合了梯度法和高斯-牛顿法的优点。具有全局性和收敛速度快的优势,并可通过对BP算法的修正,避免高斯-牛顿法中求解Hessian矩阵的问题。减少了网络训练中的计算量和内存需求量,权值的调整公式为:
式中,μ为正常数,1为单位矩阵,en为网络的误差向量,J为以网络误差对权值的一阶导数为元素的Jacobian矩阵,△w每次迭代时都对μ进行自适应调整,当网络误差减小时减小μ的值,反之增加μ的值。一般情况下Jacobian矩阵的计算量较大,因此该算法比较适合网络规模不大、网络参数较少的应用场合,本设计中使用的是典型的3层网络结构,如图4所示。从图中可以看出该网络输入层、输出层、隐层的节点分别为3个、1个、4个,网络规模较小,因此使用LM算法可以取得较好的效果[3]。
3 以太网结构的实现
3.1 TCP/IP协议的裁减
以太网中的TCP/IP协议数以百计,而嵌入式系统的资源有限,没有必要实现全部TCP/IP协议。裁减TCP/IP协议以适应工业以太网应用的要求是当前的一个研究热点,但目前尚无统一的裁减标准[4]。在本应用中,由于网络的连接数和数据的传输量较少,因此以“够用即可”为原则,对TCP/IP协议进行合理裁减。裁减后的协议包括链路层中的CSMA/CD、ARP协议,网络层中的IP协议,ICMP中的Ping协议,传输层中的TCP、UDP协议以及应用层中的H TTP协议。
数据链路层的主要作用是为其上层协议发送和接收数据帧,采用IEEE802.3规定的CSMA/CD协议,可使同一局域网上的多台计算机共享同一物理传输介质,只要采用通用的网络接口控制芯片CS8900A就可实现该协议。以太网上数据的传输是通过网络的MAC地址进行识别的,这就要求系统具有从IP地址转换到MAC地址的功能,即ARP(地址解析)协议。网络层中的IP协议是TCP/IP协议族的核心协议,它使异构网络之间的通信成为可能。ICMP实现与其他主机或路由器交换错误报文和其他重要信息,由于本设计只需测试网络联通情况,因此只保留了其中的Ping协议。传输层中的TCP协议和UDP协议为2台主机上的应用程序提供端到端的通信,应用层中的HTTP协议实现以浏览器访问的方式,在以上诸多协议中以实现TCP协议最为困难。受运算资源限制,只能实现简化的有限状态机和滑动窗口确认机制以及单TCP连接。另外,为过滤来访信息。确保数据安全还实现了简易网络防火墙功能。只允许某些事先设置好的IP地址对流量计进行访问,有效减轻了流量计的工作负荷。
3.2 以太网控制芯片CS8900A的应用
CS8900A是一款高性能、低功耗的以太网控制芯片,内部含有802.3介质访问控制块(MAC),支持全双工操作,具有自动处理冲突检测、报头生成、CRC校验码生成及其验证等功能;同时通过对发送控制寄存器(TCMD)的配置,MAC可以完成帧的自动重传[5]。设计时选择3V供电的CS8900A-CQ3,同时为了便于和MSP430F449之间的电平匹配,在MSP430F449与CS8900A之间采用图5所示的硬件接口[6]。通过将管脚/MEMW和/MEMR置高,使CS8900A工作在简单的I/O模式,该模式占用端口资源较少。MSP430F449通过对/SBHE、/IOW和/IOR等控制信号线实现对CS8900A工作方式的控制和读写操作。
在设计中考虑到CS8900A芯片采用的是16位数据传输模式,因此在访问之前必须为总线的高位使能管脚(/SBHE)提供一个由高到低,再由低到高变化的电平信号。CS8900A通过网络隔离变压器TRC2023以1:2.5的电压比将数据发送到网络。以1:1的电压比从网络接收数据。CS8900A芯片的初始化操作主要包括:软件复位并检查标志位、设定16位工作模式、设定临时以太网物理地址、设定接收帧类型、确定数据传送方向、中断使能以及数据收发使能等。
4 结束语
利用磁阻传感器HMC1501实现了流量计机械连杆在±45o范围内角度的精确测量,并将流量计接人以太网,实现了流量测量的智能化和网络化,实际运行表明该系统工作稳定、可靠。