行业动态

当前位置:首页>>新闻中心>>行业动态 发布时间:2017-07-06 06:42:34

基于单片机的简易电子秤设计与实现

时间:2017-07-06 06:42:34 来源:本站 点击数:689

智能电子秤给人们的经济生活带来了极大的便利,受到广大用户的青睐。木文以MSP430单片机为核心,通过一系 列软硬件设计,实现了小重量物体的称重功能,并通过液晶显示模块和基于ISD1760的语音模块实现称重数字化显示并精 确语音播报功能。系统以编程后的单片机为控制核心,物体的重量通过HX711传感器称重模块转化为电信号,并经由AD 转换,将信号输送给LCD液晶显示模块和ISD1760语音播报模块,从而将实际称得的重量实时通过LCD显示并语音播报。

智能电子秤按照设计要求,应分为数据采集模块、控制器 模块、人机交互液晶显示界面三大模块。在功能扩展上,还可 以增加一个语音播报功能使电子秤的设计更人性化智能化。 基于此,木系统的实现包含硬件和软件设计两大部分,具体以 MSP430单片机为核心控制器,以电阻应变式压力传感器后接 HX711模块实现信号转换、采集和放大,从而将物体重量转换 成单片机可处理的电压信号。将处理好的电压信号送到LCD 显示模块和基于ISD1760的语音播报模块,在这之前需要先将 合成的语音片段按地址存人到ISD1760芯片中,记录每一个语 音片段的地址,从而通过程序调用,实现按照实际称重值进行 语音播报。

1.系统硬件设计方案

1.1系统硬件工作原理

该系统硬件主要包括单片机最小系统、基于HX711传感器 称重模块、LCD显示模块和基于ISD1760的语音播报模块,其 中,单片机最小系统板是M430G2553开发板,传感器称重模块 采用双孔悬臂平行梁应变式称重传感器。显示模块采用IN- EX-GLCD5110语音模块采用ISD1760芯片加外围扩展构成。 系统硬件控制电路总体框图如下图1所示:

云网客1.jpg

系统的工作原理为:首先通过USB线给整个系统供电,然 后将写好的程序写人M430单片机中,将单片机的引脚信号加 载到称重模块、LCD显示模块和语音播报模块,从而使整个系 统工作起来。当有物体放到秤台上时,即可显示并播报重量。

1.2系统硬件设计

1.2.1单片机最小系统模块

MSP430系列单片机是一个16位的单片机,采用了精简指 令集(RISC )结构,具有丰富的寻址方式(7种源操作数寻址、4 种目的操作数寻址;大量的寄存器、片内数据存储器及高效的 査表处理指令使其具有较高的处理速度,在8MHz晶体驱动下 指令周期为125 nS,这些特点保证了可编制出高效率的源程 序。

1.2.2基于HX711的传感器称重模块

1)基本器件介绍

HX711传感器模块由带128倍增益的24bit AD模块、20Kg

压力传感器组成,通过对应端口连接到单片机的控制端,实现 对物体重量的测量。各模块与HX711连接示意图如下图2所 示:

 云网客2.jpg

2各模块与HX711连接示意图

 

2)基木原理讲解

①20kg传感器

满量程输出电压=激励电压*灵敏度2.0mv/v

②HX711模块对产生的5mV电压进行采样。

步骤1:如何计算传感器供电电压

HX711可以在产生VAVDD和AGND电压,即HX711模块 上的E+和E-电压。

该电压通过VAVDD=VBG(R1 +R2 )/R2计算。

步骤2:如何计算AD输出最大值

在4.3V的供电电压下20Kg的传感器最大输出电压是 4.3v*2mv/V = 8.6mV

经过128倍放大后,最大电压为8.6mV*128 = 1100.8mV 经过AD转换后输出的24bit数字值最大为:550.4mV*224/ 4.3V 疋 4294967步骤3:程序中数据如何转换

程序中通过HX711_Buffer = HX711_Read();获取当前采样 AD值,最大4294967,存放在long型变量HX711_Bfer中, long型变量计算速率和存放空间占用资源太多,固除以 100,缩放为int型,便于后续计算。

Weight_Shiwu = HX711_Buffer/100;Weight_Shiwu 最大为 42949。

步骤4:如何将AD值反向转换为重力值。

假设重力为xKgx<20Kg),测量出来的AD值为y 20Kg传感器输出,发送给AD模块儿的电压为AKg * 8.6mV / 20Kg = 0.43A mV

经过128倍增益后为128 * 0.43A = 55.04AmV 转换为24bit数字信号为55.04 A mV * 224 / 4.3V = 214748.3648A

所以 y = 214748.3648A /100 = 2147.483648 A 因此得出 A = y/ 2147.483648 Kg-y/2.15g 连接好的称重模块如下图3所示。

1.2.3基于ISD1760的语音播报模块

ISD1700系列芯片内部包括:麦克风前置扩大器、自动增 益控制、扬声器驱动线路、振荡器与内存等全方位整合系统功 肯巨。

在木设计中,为实现语音播报功能须事先将需要的声音

通过线录的方式存人芯片内,当将此模块连进系统后则可直接 通过程序调用语音。连接好的语音播报模块实物图如下图4 所示。

云网客3.jpg

2.系统软件设计方案

2.1软件功能设计目标

称重是系统的核心,语音播报是亮点。因此木次软件开发 Windows系统TI CCS平台下采用模块化设计,包括主程序 传感器处理子程序,LCD液晶显示子程序及ISD1760语音芯片 驱动子程序等。

称重传感器数据处理子程序是通过称重传感器的模拟信 号进行放大,AD转换来读取称重值。LCD显示子程序主要用 来直观显示称重值。语音播报程序是在获得称重值之后将称 重值报读出来,主要是通过SPI总线对语音芯片ISD1760进行 操作。程序流程结构如上图5所示。

2.2系统软件设计

2.2.1 Altium Designer 软件使用

使用Altium Designer绘制单片机最小系统、称重模块、LCD 显示模块电路原理图PCB图:

如图7、8所示。

云网客4.jpg

2.2.2CCS软件编写单片机控制程序

{ Weight_Shiwu=0;

HX711_Buffer = HX711_Read();

HX711_Buffer= HX711_Buffer/100;

Weight_Shiwu = HX711_Buffer;

//获取实物的AD米样数值Weight_Shiwu=(un- signed int)((float)Weight_Shiwu/2.15+0.5);}

//芯片IO初始化 voidI0_initial(void)

{ P2DIR &=~ BIT2;//设置为输入 P2DIR |= BIT0+BIT1;

P1DIRI=BIT5;//设置为输出 DISENISD1760_SS;

ISD1760_SCLK_H;

ISD1760_M0SI_L;

}

3.系统测试及总结

3.1系统测试方案

msp430采用TI MSP430 LunchPad最小系统板,不必进行 测试。对ISD1760语音模块测试,焊接了由STC89C51RC(调试 及录音用)与ISD1760芯片组成的语音板,利用上位机软件进行 了 ISD1760器件复位,上电,录音,获取录音地址,播放录音等 调试,以便将SPI通信移植到MSP430上。系统整体硬件连接 实物图如上图6所示。

3.2项目总结

经过多次20kg以下重物称重测试,该系统重复称重精度能 达到III类标准,液晶显示功能正常,语音播报及时准确,较好 的达到了预期效果。存在的不足是传感器有时信号传递不稳定,称重误差较大。如果改用高精密度的传感器,效果定会明 显改善。

该系统操作简单,性能稳定,硬件选配合理,价格低廉,且 易于扩展。软件部分加人了人性化设计,如超重报警,语音播 报等特色功能,智能化、自动化程度较高。同时该系统可扩展 性较强,通过对软硬件的修改或扩展,如添加键盘等,即能设计 出富有特色的计价秤、电子台秤等,因此具备一定的工业应用 价值。