基于单片机的数字电子称设计
2017-04-01汪小涵
摘要:秤是一种常用的测量器具。随着电子技术的发展,数字电子式称量装置,具有准确、快速、显示直观等诸多优点受到人们的青睐,传统纯机械结构的杆秤、台秤、磅秤等称量装置逐步被淘汰。数字电子秤利用MCU单片机、传感器、AD转换器件、实现,具有精度高、功能强。本文对10Kg,重量误差不大于+0.005Kg的电子称的设计过程进行了详细的说明,该电子秤具有基本检测重量、计算物品价格、键盘输入物品单价、显示物品重量和总金额、物品超重报警功能。
关键词:电子称 电阻应变传感器 AD转换
中图分类号:TH715.193 文献标识码:A 文章编号:1007-9416(2016)10-0175-01
1 电子称的功能
数字电子称重系统的核心控制部件是单片机,控制过程是首先是通过传感器采集到被测物体的重量压力,并将该非电量转换成微弱的电压信号。电压信号经过处理电路进行适度的线性放大,放大后的电压模拟信号需要通过 A/D 转换电路转换成数字量并传送入到主控单片机中。单片机对重量数字信号进行运算处理控制,计算通过液晶显示器显示被测物体的重量。物体重量测量完成后,用户可以通过系统键盘输入物品单价,系统根据重量和单价自动计算总金额并显示。
2 称重传感器
在数字电子称的设计中,传感器的精度在系统中起着决定性作用。电阻应变传感器由电阻应变片和信号测量线路两部分组成。目前使用最广的电阻应变片电阻丝应变片和半导体应变片两种。本文中选用的是电阻丝应变片型传感器。结合设计要求的称重范围,重量误差,同时还要考虑到秤台自身重量、振动的影响和冲击分量的影响,还要避免因为超重而损坏传感器,所以传感器量程必须大于额定称重的重量。我们选择的是L-PSIII型传感器,量程10Kg,精度为0.01%,满量程时误差0.002Kg。可以满足本系统的精度要求。
本设计中选用的是测量电路最常用电阻应变传感器桥式测量电路来进行信号测量。它共用两只电阻和两只应变片,分别贴在弹性粱上,通过导线连接为电桥,就可以测量电桥中电阻随重力变化导致弹性梁应变而产生的变化。应变片电阻的变化通过桥式测量电路输出电压表现出来。即桥式输出电压的变化表现出被测物体重力的变化。
3 AD转换芯片HX711
电阻应变传感器感应被测重力,输出微弱的毫伏级电压信号。该电压信号需要进行放大和转换。在设计中,选择了电子秤专用的A/D转换器芯片hx711对传感器的输出电压进行放大和A/D转换。HX711是一款高精度电子秤专用的的24 位A/D 转换器芯片,芯片内集成了稳压电源、片内时钟振荡器电路,所以HX711芯片具有集成度高、芯片的响应速度快、抗干扰性强等优点。该芯片与后端MCU 芯片的接口和编程非常简单,HX711芯片通过2线串行方式与单片机通信,HX711芯片内的所有控制信号由管脚驱动,无需对片内部的寄存器进行编程。
4 重量转换计算
4.1 传感器将重力转换为电压
传感器将重力转换为微弱电压,转换关系是满量程输出电压=激励电压乘以灵敏度2.0mv/v。比如供电电压是4.5v,乘以灵敏度2.0mv可得满量程输出9mv,即量程最大10kg重力产生9mv电压。
4.2 hx711对采集电压处理
hx711模块具有128倍信号增益,可以将电压放大128倍,然后采样输出24位的AD转换值,单片机通过指定的时序将24位的数字量数据读出。HX711的供电电压是4.5V。在4.5V的供电电压下10Kg的传感器满量程的输出电压9mV。经过放大后,最大输出电压是 576mV(4.5mV*128),经过AD转换后输出的最大数字值为是 2147483(576mV*224/4.5V)。
4.3 重量计算
单片机获取当前AD值并进行处理,需要存放在long型变量中。 因long型变量计算速率慢和存放空间多,所以可以进行处理,除以1000,缩放为int型,便于后续计算。weight=FullScale-AdVal/1000。
重量计算过程如下,假设重力为xKg(x<10Kg),测量出来的AD值为y,采样值为A,10Kg传感器输出,发送给AD模块儿的电压为0.9x mV。经过128倍增益后为57.6x mV。转换为24bit数字信号为2147483.648x,所以y=2147483.648x/1000=429.4967296A。因此得出A≈y/4.50g。所以得出重量计算weight=10000*weight/FullScale;最终重量需要用RATIO参数进行精度调节是 weight=weight*RATIO。RATIO=1690/1000,作为精度调节,由于单片机计算能力所限,这里RATIO只能用 整数/整数 的形式,建议除数和被除数都使用4位数以保证精度。
5 系统软件设计
系统软件设计主要包括AD采样、LCD12864显示、计算重量、判断是否超重、校准函数等几部分模块。
在系统通电后,主程序首先完成系统初始化,然后获取当前采样的AD值,并对AD值进行处理,计算出被测物体的重量,接着进行调零和定标,同时判断是否超重,超重蜂鸣器报警。最后调用液晶显示函数,计算重量进行显示。
6 结语
本文介绍了基于单片机的电子称的设计过程,并详细说明了测量信号的转换过程和处理方法,通过实践调试,能够达到预定的设计目标。但是测量的过程容易受到外界的干扰,测量中也会输出偏差较大的值,可以在软件部分采用软件滤波的方法,来补偿系统误差,从而达到系统设计精度要求。
参考文献
[1]王建华.敬大德,曹少飞.基于双悬臂梁结构的应变测量传感器研究[J].传感技术学报,2005,18(3):5-8.
[2]张毅刚.单片机原理及应用[M].北京:高等教育出版社,2003.
[3]周荷琴.微型计算机原理与接口技术[M].合肥:中国科学技术大学出版社,2008.
[4]陈杰,陈绿深.传感器与检测技术[M].北京:北京理工大学出版社,1987.
[5]王洪业,传感器技术[M].长沙:湖南科学出版社,1985.
收稿日期:2016-09-20
作者簡介:汪小涵 (1982—),女,四川乐山人,讲师,本科,研究方向:EDA技术,嵌入式技术。