蓝奇 吴奕 李林政 邱欣怡 翟文博 苏文锦 余倩倩
摘要:该文通过应变片称重传感器采集物品重量信号,由HX711前级电路对传感器发出的信号经基于ATmage328的Arduino UNO为核心的控制单元对数据进行处理,并传输到OLED屏显示和语音模块播报,通过编写程序和硬件设备的结合,实现量程为0~1 000g的电子秤。系统还搭配有HC_05蓝牙模块,以实现手机与Arduino UNO之间的通信。
关键词:Arduino;
电子秤;
应变片称重传感器;
语音播报;
蓝牙
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2023)13-0096-03
开放科学(资源服务)标识码(OSID)
称重技术是一项重要的计量方法, 普遍应用于工农业、科研、贸易等领域,与人民的商贸往来密不可分。随着国内电子技术的水平不断提升,我国电子秤的开发和制造得以飞速发展,小体积、模块化、集成化、智能化已然是电子秤的主流导向[1]。单一的机械秤已经不能满足人们在科技生活中的需求,基于现今科技的飞速发展,智能电子秤随之诞生,智能电子秤的发展缩短了市场经济交易的时间,极大促进经济生活的便捷,因此得到众多用户的认可和喜爱[2]。智能电子秤是检测与转换技术、信号处理和计算机技术结合为一体的仪器[3]。在保证系统的测量精确度和实用性情况下,本文以基于ATmage328的Arduino UNO为核心,通过编写程序和硬件设备的结合,实现量程为0g~10 000g的电子秤。其中ATmage328为核心控制单元实现对数据的处理,外围设备使用称重传感器对物体重量进行采集,由24位 A/D转换芯片—HX711,将传感器模拟信号转为数字信号,通过ATmage328接收处理并输出到OLED屏和语音模块,物体重量通过OLED显示和语音模块的播报。系统还使用HC_08蓝牙模块进行通信,可以实现手机与Arduino UNO之间的通信和控制。
1 系统设计方案
系统使用直流5V为主要供电电源,向处理器、OLED屏、语音模块等提供工作电压,其中称重传感器的工作电压是由HX711芯片提供的模拟电压。当称重传感器上的秤盘有物品放下时,粘贴在悬臂梁上的电阻应变片随同悬臂梁一起发生形变,传感器的平衡态被打破,使其输出信号发生改变,经HX711芯片为主的前级处理电路进行滤波、放大、A/D转换,得到的一定线性关系的数字信号,将信号输送至ATmage328处理器进行处理,进而实现OLED屏显示重量、语音播报重量、连接手机蓝牙、去皮和重量校准功能。系统框架如图1所示。
系统本着低功耗和高性能以及实用性出发,以电阻应变式传感器为基础设计,其主要实现功能如下:
1) 重量检测功能,对秤盘上的物品进行重量测量,量程为0~10 000g,误差为±1g;
2) 显示功能,通过OLED屏显示物品重量;
3) 语音播报功能,实现对物品重量进行播报;
4) 报警功能,当物品重量大于10 000g,其通过蜂鸣器发出报警声,并且红色LED灯亮起;
5) 按键功能,通过按键可实现切换单位,包含的单位有斤、g、Kg;
6) 具备去皮和重量校准功能;
7) 实现电子秤与手机之间进行蓝牙通信功能。
2 系统硬件设计
本设计所接的外围设备较多,主控芯片要满足内存容量大、高速运行、低功耗及价格合理等要求,所以采用基于ATmage328芯片的MCU(Microcontroller Unit) ,ATmage328是一款8位二进制数的微控制器,拥有2048字节的静态随机存储器,对固定地址编程可做到程序的加密;
1024字节的EEPROM存储器,其擦写次数不少于100 000次[4]。根据设计的要求,整个系统可以分为以下几个部分:系统电源模块、应变片称重传感器模块、显示模块、串口烧录模块、语音播报模块、蓝牙模块等。
2.1 系统电源的设计
系统中的中控芯片、HX711模块、语音播报模块,液晶显示器正常工作电压都为5V,为了保证电子秤运行的稳定性和可靠性,需要电路稳定输出5V的电压。此次设计采用双电源提供5V的工作电压,USB TO TTL烧录模块中的CH340芯片可提供5V电压。也可以使用外接电源作为系统的供电电源,外接电源情况下采用LM7805芯片将外置高于5V的电源电压压降至5V输出,同时LM7805要加上两个滤波电容保证电压输出的稳定性,此外电路搭配一个LED灯,保证电源电路的正常工作。
2.2 系统串口程序烧录设计
使用带有DTR的USB串口模块,该模块使用CH340E為主控芯片,实现USB转TTL,DTR引脚在烧录程序时,需要通过一个0.1uF的电容连接到ATmage328P的RESET。使用该模块可直接使用Arduino IDE烧录程序,无须像KELI软件生成HEX文件再借于ISP软件烧录程序,使程序调试更加方便快捷。
2.3 称重传感器设计
称重传感器是整个系统研究过程中的重要部分,传感器性能对整个测量电路的设计以及测试的精度和好坏有着重要的影响[5]。常见的称重传感器(又称压力传感器)有电阻应变片式传感器、电容式压力传感器和压电式压力传感器[6]。系统采用电阻式应变式压力传感器,由弹性元件、电阻应变片、电桥电路和传输线四部分组成[7]。本设计选择65Mn高碳钢作为弹性体,使用BFH120-10AA-D-D300型应变片,为了消除温度误差和侧向力等干扰误差,采用惠斯通电桥全桥连接方法,将四组电阻应变片粘贴在悬臂梁中间上下表面,处于同一个温度场中,构成四个臂阻,当传感器没有压力作用时,调整电桥参数,使之达到平衡,消除温度误差和侧向力等干扰误差。当传感器受到压力作用时,通过惠斯通电桥将应变片电阻值细微的变化转换成电压值输出,经HX711芯片为主的前级信号处理电路,把电桥输出的信号进行放大、滤波、A/D转换,输送至Arduino处理,Arduino将从传感器得到的数字信号进行处理,把具体的数值和质量输送至OLED屏,完成对重量的显示[8]。OLED主要由SSH1106芯片驱动。前级信号处理原理如图3所示。
2.4 语音播报、超重报警和蓝牙模块
TTS模块采用URAT通信协议,在数据传输上只需占用总控芯片的TX,RX两个引脚,其内部原理图如下图所示。其中8002B为功放芯片,将接收的信号进行放大,JQ8400芯片将信号转换为不同频率的高低电平传输到扬声器,实现对重量和单位的语音播报。电路如图4所示。
超重报警电路用于当物体重量超出电子秤的最大量程时发出警报声,提醒使用者,以免造成电子秤损坏。报警电路由NPN型的9013B三极管、蜂鸣器和LED灯组成。三极管基极串联一个10K的电阻,电阻一端接至Atmage328的17引脚,当物品重量大于额定值时,Arduino的17引脚输出高电平时,三极管导通,蜂鸣器的负极与GND得以接通,蜂鸣器响起,LED灯点亮;
当Arduino引脚为低电平时,三极管截止,蜂鸣器和LED灯停止工作。
设计系统时,将HC_05蓝牙模块连接至开发板预留的排针接口,安装对应软件并打开手机蓝牙,稍等几秒钟,即可找到对应蓝牙模块的设备名称和通信地址,点击就可与蓝牙模块的连接,进而实现手机移动设备与HC_05蓝牙模块之间的无线通信,通过串口引脚的数据传输或者高低电平变化,实现与单片机的通信,然后通过蓝牙模块作为桥梁实现手机设备对单片机系统的控制。蓝牙连接电路由HC_05蓝牙模块和AMS1117等组成,AMS1117芯片与电容的结合5V电源压降至3.3V,实现对蓝牙模块的稳定供电。
3 程序设计
本设计使用的编程语言为C语言,编译环境为Arduino IDE 1.8.16,编译系统Window 10 ×64。编译完成后Arduino IDE无须生成HEX文件,使用USB线即可完成程序的烧录。根据系统设计要求,系统程序主框架如图5所示。
3.1 重量采集子程序
重量采集程序是获取HX711芯片从重量传感器上得到的24位数字信号,对其进行移位寄存,获得一个长整形数据[9]。
3.2 显示、语音播报和蓝牙连接子程序
本次设计使用的OLED屏通信协议为IIC。显示程序在秤盘没有重物时,显示时间和日期。当有物体放在秤盘上时,MCU根据得到的重量数据进行处理,将结果传送给OLED屏显示物体的重量内容。使用的语音播报模块支持中文 GBK 编码集,在传送数据前需将MCU得到的16进制数转码成GBK码,最后由语音合成芯片合成文本播放。因语音播报模块已将ATmage328芯片原有的RXD、TXD引脚占用,蓝牙模块与ATmage328芯片的通讯,将借助Arduino库中的SoftwareSerial函数库,将芯片的8、9引脚作为RXD、TXD引脚,设置波特率为9600 Mpbs,在void setup程序中配mySerial.begin(9600)。在该库的支持下,通过程序模拟将Atmage328p芯片的数字I/O引脚转为串口通信引脚,实现通信功能。手机端软件界面如图6所示。
4 电路实物和重量采集测试结果
系统实物图如图7所示,当没有物体放在秤盘上时,OLED屏显示0.000Kg;
当有物体放下时,屏幕显示对应的数值。
放上标准砝码测量,砝码重量分别为5g、20g、50g、100g、150g、200g、500g、800g、1000g,重复测量三次,计算实际数据和标准砝码之间的重量误差,根据结果得出电子秤的称重精度,实验测试结果如表1所示。由实验数据可知,电子秤的测量误差仅为±1g,达到本次设计要求。
5 结束语
本文基于ATmage328的Arduino UNO单片机,以电阻应变式压力传感器为应用研究对象,进行智能电子秤系统的研究和设计。主要完成了对1 000g重量以下物品的精准测量,同时将重量数据以多种形式向外传送:1) OLED屏显示物体重量;
2) 语音播报物体重量;
3) 手机移动设备实时接收重量数据。本次设计主要借用XH711芯片为主的前级处理电路,将压力传感器的模拟信号转换成稳定准确数字信号,基于ATmage328芯片的性能和功能特点,令电子秤系统得以正常运行。
参考文献:
[1] 尹雪,郝世豪,陈楠.电子秤检定与称量误差补偿方法的分析[J].设备管理与维修,2021(2):23-24.
[2] 王俊芳,王海斌,倪曉昌,等.基于电阻应变片式传感器的电子秤设计与实现[J].智能计算机与应用,2016,6(6):121-123,126.
[3] 麦伟添,高宁,姚家前.基于称重技术在蒸烤箱产品的应用研究[C]//2021年中国家用电器技术大会论文集.合肥,2021:1443-1447.
[4] 孙建来,付攀.基于Arduino Uno嵌入式系统的某型机起落架舱水平测量技术研究[J].电子设计工程,2021,29(7):143-146,151.
[5] 赵芳,赵子雯.称重传感器的基本原理及非线性误差补偿方法[J].农机使用与维修,2019(2):16-17.
[6] 赵洪葳,张雪娇.压力传感器在可计算价格电子秤中的应用[J].数码世界,2019(1):219.
[7] 唐朝栋.单片机技术视角下智能电子秤的设计[J].电子技术与软件工程,2021(22):91-93.
[8] 何华平,徐伟,何立蜓,等.一种基于运算放大器的高灵敏度惠斯通电桥[J].物理通报,2022(3):121-126.
[9] 梁芳芳.基于HX711多功能的智能电子秤的设计[J].工程技术研究,2021,6(15):136-140.
【通联编辑:梁书】
猜你喜欢电子秤蓝牙电子秤小猕猴学习画刊(2022年9期)2022-11-04蓝牙音箱的直线之美工业设计(2022年7期)2022-08-12简单、易用,可玩性强Q AcousticsBT3蓝牙音箱家庭影院技术(2018年10期)2018-11-02适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器家庭影院技术(2018年3期)2018-05-09关于电子秤的设计电子制作(2018年2期)2018-04-18紧急:蓝牙指尖陀螺自燃!安全隐患频出玩具世界(2017年8期)2017-02-06基于STM32的高精度电子秤设计电子制作(2016年21期)2016-05-17