沈炎松
(漳州职业技术学院 电子工程系,福建 漳州 363000)
电子称重器因操作简单、快速、功能多样等特点,在人们生活、工业生产等领域均有广泛应用,与传统机械秤相比更符合计量管理和工业生产过程控制要求[1]。传统电子秤存在精度不够高、不能对称重数据进行记录、回放、筛选等问题,当前,随着工业制造智能化发展,结合工业机器人的普及应用,在产品预包装、产品重量筛查等生产线上已由机器人代替人工实现物品拾取、称重、放回等动作,工人只需监控并记录称重过程。为此本文设计一种无线称重装置并结合微机监控的称重系统,安装在生产线上的终端控制器可以采集称重信息经无线传输给线下的协调器,协调器将数据显示在液晶屏上并将数据上传到微机监测端,用户可以在线下实现对称重过程的监控和记录。
该系统使用电阻应变片组成应变电桥作为称重传感器,利用高精度的HX711芯片采集数据并对数据进行均值滤波、卡尔曼滤波相结合的算法,并通过软件仿真,使测量数据更加稳定、精确。
图1 无线电子称重系统总体结构框图
本文研究的无线电子称重系统包括采集控制节点、协调器节点和上位机三个部分,系统结构框图如图1所示,其中采集控制节点和协调器节点通过ZigBee组成无线网络。当采集节点的称重托盘有物体放入时,传感器电路将重量信息转换为微弱电信号并通过放大电路放大,采集节点处理器通过AD转换电路读取数据,并按一定算法进行数据处理再还原成重量值。采集节点将采集的重量数据通过ZigBee网络传给协调器,用户可以通过协调器键盘输入设置信息,协调器将接收到的数据及其他指示信息显示在12864液晶屏上,同时将数据通过串口送给上位机。
本系统控制终端称重传感器选用电阻应变式压力传感器,传感器内部包括电阻应变片、弹性体和检测电路等几部分。正常使用时,使用粘性物质将电阻应变片粘贴在感压装置上,当有外力作用时,电阻应变片会产生变形导致阻值发生变化(增大或减小),测量电路中的桥式电路把这一电阻变化转换为与负载成正比的电信号输出,从而完成将外力转化为电信号的过程[2]。
图2 电阻应变片组成的全桥电路原理图
(1)
若R1=R2=R3=R4,ΔR1=ΔR2=ΔR3=ΔR4,则
(2)
上式(2)可见,输出电压与电阻变化值成线性关系,国家标准中电阻应变片的阻值规定为60、120、200、350、500、1000,考虑到大阻值应变片具有通过电流小、自热引起的温升低、持续运行周期长、动态测量信噪比高等优点,本例中选用1K欧的电阻应变片。
HX711是一款专为高精度电子秤设计的 24 位 A/D 转换器芯片。芯片内部集成可编程放大器、稳压电源、片内时钟振荡器及其他外围电路,具有集成度高、响应速度快、抗干扰性强等优点。
图3 A/D转换模块原理图
本例中,AD采集使用通道A,通道A有较大的可编程设置增益,为128和64,使用时,传感器组成的全桥电路差分输出端接到A通道输入端即7、8端口,芯片后端处理器可以通过DOUT、PD_SCK端口对数据进行读取、处理后转换为重量值,再经过ZigBee网络发送给后级协调器进行显示及后续操作。
无线节点包括ZigBee控制终端、ZigBee协调器两个部分,终端节点与协调器节点均选用CC2530作为核心处理器。CC2530是TI公司在2.4 GHz频段推出的第2代支持IEEE 802.15.4/ZigBee协议的片上系统(SoC)芯片。内部集成高性能RF收发器、增强型8051CPU,256 KB可编程闪存,8KB RAM,具有较低的功耗要求,它能够以非常低的总的材料成本建立强大的网络节点[3]。
终端节点电路包括CC2530核心电路、压力传感器电路及HX711 AD转换电路,协调器节点由CC2530核心电路、液晶显示电路、键盘电路及指示灯电路等部分组成,终端节点电路安装在称重生产线上,协调器节点通过串口线与上位机连接,终端节点实时采集线上物体压力信息,经过数据处理转换为重量信息通过ZigBee网络发送给协调器,协调器将接收到的称重数据显示在LCD12864上,并根据接收到的数据控制指示灯闪烁,同时将接收到的数据通过串口线发送到上位机,方便监控人员实时监控。
系统软件设计包括ZigBee无线网络组建、终端节点信号采集及处理、协调器节点数据收发及设置与显示等操作。ZigBee是基于IEEE802.15.4标准的低功耗局域网协议,是一种短距离、低功耗的无线通信技术[4],ZigBee通信协议中,能够组成的网络拓扑结构有星状网、树状网和网状网[5],本系统无线网络设计使用星形网络拓扑结构与节点间实现通信,以协调器为中心,进行向上向下数据通信,并维护局网络稳定。
终端节点的功能包括网络接入、数据采集、数据处理及发送,终端设备与协调器进行网络连接成功后采集传感器数据,按照指定算法将数据进行均值滤波及卡尔曼滤波处理,并重复执行数据采集、处理等操作,直到数据发送窗口周期(调试时以50次卡尔曼滤波为一周期)到来再把处理完的最终数据转化为重量值后经过ZigBee网络发送给协调器。终端节点程序设计流程图如图4所示。
图4 终端节点软件设计流程图
协调器节点是整个无线网络的枢纽,负责给各节点分配地址,并协调节点间的通信[6]。本例以一个终端节点为例,协调器与终端节点网络连接成功后接收用户设置的控制信息,并进入数据收发状态。包括接收无线终端节点发送过来的数据并在12864液晶屏上显示,以及向上位机传送接收到的数据,读取用户输入的控制信息等,并根据数据控制指示灯进行闪烁指示。协调器节点控制流程图如图5所示。
图5 协调器节点软件设计流程图
在系统测试时,如果直接采集传感器节点数据而不做其他处理, 受组件结构和自身条件的制约, 读取的数据误差大、稳定性较差,数据波动明显,为了去除可能误差使得数据更加准确可靠, 系统采用卡尔曼滤波算法进行数据拟合[7]。
如果一个系统是线性随机微分系统,且系统过程和测量的噪声都是高斯白噪声,则可以使用卡尔曼滤波器来对数据进行最优预测。当使用传感器进行数据采集时,由于本身或环境变化造成采集误差时,卡尔曼能够根据当前估计值修正未来估计值的误差,提高数据稳定性[8]。
标准卡尔曼滤波器主要包含两个步骤:预估和测量修正。预估过程是利用预估更新方程及前一时刻变量估计值(后验估计值)计算得出当前状态变量和误差协方差估计值(先验估计值)。测量修正则主要负责反馈环节,根据测量更新方程使用当前测量值及先验估计值来更正上一过程中的先验估计值,并作为下一状态预测的后验估计值[9-10]。其预估更新方程及测量更新方程如下所示:
预估更新方程:
X(t|t-1)=A·X(t-1|t-1)
(3)
P(t|t-1)=A·P(t-1|t-1)·A′+Q
(4)
测量更新方程:
X(t|t)=X(t|t-1)+K(t)·(Z(t)-H·X(t|t-1))
(5)
K(t)=Pt|t-1·H′·(H·P(t|t-1)·H′+R)
(6)
P(t|t)=(1-K(t)·H)·P(t|t-1)
(7)
其中,X(t|t-1)是利用上一状态预测的结果值,X(t-1|t-1)是上一状态最优的估算值,P(t|t-1)和P(t-1|t-1)分别是X(t|t-1)和X(t-1|t-1)对应的协方差。Z(t)为t时刻实测值,K(t)为滤波器增益系数即卡尔曼增益,X(t|t)表示t状态下最优估算值,P(t|t)表示t状态下X(t|t)的协方差,A、H为系统参数,Q、R分别为状态方程和测量方程的方差,当系统进入t+1状态,P(t|t)即替换(4)式中的P(t-1|t-1),使整个算法逐步递归运算下去。
在本例测试过程中,采集数据输出波动明显,如果直接将每次读取的数据作为测量数据进行卡尔曼滤波,由于数据噪声比较大会使得卡尔曼滤波收敛速度变慢,且数据稳定性也较差。针对此问题,结合系统响应速度,在数据处理时,将连续3次采集的数据作为一组,先进行均值滤波,以消除干扰幅度较大的、瞬时的脉冲信号,即:
(8)
以均值滤波后数据作为一次测量值再利用卡尔曼滤波进行递归运算,有效抑制信号干扰,输出更为稳定、平滑。
由于系统只测量物体重量一个参数,且无控制量,在建立卡尔曼模型时选择A=1,H=1,以测量物体重量80克为例进行仿真,图6是使用卡尔曼滤波输出仿真效果图、图7是使用均值滤波+卡尔曼滤波相结合的输出仿真图(经过多次仿真实验选择Q=1e-6,R=0.05),比较图6、7可见使用均值滤波+卡尔曼滤波有较快的数据收敛和较好的数据稳定度。
图6 卡尔曼滤波输出仿真图
图7 均值滤波+卡尔曼滤波输出仿真图
实物测试调试中,该系统协调器与检测终端在50米范围内能有效数据采集及发送,测量数据与实际数据误差在1g以内,系统在制作调试时要注意一下几个问题:①AD采集模块HX711在读取数据时,PD_SCK 的输入时钟脉冲数应根据使用端口及增益要求不应少于 25 或大于 27,否则会通信出错,且读取的数据是补码,应转化为原码;②本系统在调零及调试时使用有标称值的砝码,在调试时发现,传感器在不同测量区间其线性度有所差别,为此可以在各个测量区间(如0-50g、50-100g等)修正并使用各自线性关系式进行数据转换,这样测量结果更为精确;③在工业应用环境下,为减少信号干扰,传感器与AD模块间的电线应使用带电磁屏蔽的双绞线,提高信号传输稳定性。
本文介绍了一种无线称重监测系统的基本原理及软件、硬件设计方法,采用ZigBee近距离无线通信技术进行数据传输,综合使用高精度AD转换器、改进的均值滤波+卡尔曼滤波算法软硬件相结合的方法,提高数据的精度和稳定性,并进行仿真测试和分析,仿真测试结果表明系统信号传输稳定,数据采集精度高。下一步研究可以增加多个终端节点,同时可以考虑协调器数据接入路由器通过网络进行数据收发,一方面可以增加称重监测节点,另一方面可以实现远程监控。
[参考文献]
[1]甘慧娟.基于HX710A的高精度电子秤的设计与实现[A].中国职协2015年度优秀科研成果获奖论文集(中册)[C].2015:6.
[2]张超洋,周启忠,张龙江,等.基于ARM单片机的高精度电子秤设计与实现[J].电子技术与软件工程,2017(06):254-255.
[3]Texas Instrument.CC2530 Datasheet [S],2009.
[4]宋丽伟. 基于CC2530的智能家居内部网络ZigBee协议栈的设计与实现[D].哈尔滨:哈尔滨工业大学,2013.
[5]蔡卓淮,万玲玉.基于ZigBee技术的多信号源控制系统[J].计算机应用,2015,35(S1):11-13+17.
[6]邓然,朱勇,詹念,等.基于ZigBee技术的温湿度数据采集系统设计[J].无线电通信技术,2017,43(03):81-84.
[7]郭国法,王宁,张开生.基于ZigBee的高速公路限速系统研究[J].微电子学与计算机,2014,31(05):147-150.
[8]陶红波,方勇,许广宏,等.基于卡尔曼滤波的车内空气质量远程实时监测系统[J].电子测量技术,2016,39(11):126-130.
[9]刘勤,严昌荣,何文清.黄河流域干旱时空变化特征及其气候要素敏感性分析[J].中国农业气象,2016,37(06):623-632.
[10]马艳菊,杨成忠,王廷宇.卡尔曼滤波在电动助力车力矩检测系统中的应用[J].工业控制计算机,2017,30(03):74-75.