超市智能电子秤设计信息工程专业.docx
《超市智能电子秤设计信息工程专业.docx》由会员分享,可在线阅读,更多相关《超市智能电子秤设计信息工程专业.docx(44页珍藏版)》请在冰豆网上搜索。
![超市智能电子秤设计信息工程专业.docx](https://file1.bdocx.com/fileroot1/2023-1/26/220c1d80-0c03-4712-808c-67b26cadb0c4/220c1d80-0c03-4712-808c-67b26cadb0c41.gif)
超市智能电子秤设计信息工程专业
超市智能电子秤设计
摘要
随着社会科学的不断发展,我国电子产业正在蓬勃的发展,单片机的各种应用已经走进了千家万户,本设计的目的在于利用单片机技术,实现低成本高性能的智能电子秤设计,能在此产品在实际生活中的可用性和提高方向。
本设计在单片机设计中使用控制方法较简单的STC89C52芯片为内核,搭配专为高精度电子称而设计的HX711式A/D转换器芯片,利用压力导致的电压、电流等模拟量的变化以及数字信号和模拟信号之间相互转换的经典传感器原理,实现高精度的称重功能,这个工艺制作的单片机不仅精度高,还具有极强的抗干扰功能。
硬件方面包括数据采集系统,最小电路系统以及输入和显示系统。
称重传感器和HX711的数据采集模块实现了高精度的电压信号变化测量(与压力相关),并通过放大电路实现信号放大,最小系统在确保本设计在最低耗能下处理采集的信号并且能平稳运行的同时,也减少了硬件手工操作的难度。
此外,人机交互功能和各类人性化设计也是本设计的重点,输入和显示系统让这个系统显得更加智能化并具有实时性。
为了实现单价输入,金额计算,去皮(去除称重玻璃板或其他物品的重量)等功能,本设计使用了经典4乘4薄膜键盘实现人为控制电子秤基本功能,并对各个按键通过软件设定具体的控制功能,具体的实时信息显示通过LCD12864液晶显示屏实现。
关键词:
STC89C52;A/D转换器;液晶显示屏;薄膜键盘;最小系统;
Supermarketintelligentelectronicscaledesign
Abstract
Withthecontinuousdevelopmentofsocialscience,China'selectronicindustryisbooming,thevariousapplicationsofsingle-chipmicrocomputerhasbeenintothousandsofhouseholds,thepurposeofthedesignistousesingle-chipmicrocomputertechnology,toachievelowcostandhighperformanceintelligentelectronicscaledesign,canintheactuallifeofthisproductintheavailabilityandimprovethedirection.
Thisdesignusedinthesingle-chipmicrocomputercontrolmethodisrelativelysimpleSTC89C52chipaskernel,collocationisspeciallydesignedforhighprecisionelectronicsaidHX711typeA/Dconversionchip,usingthepressurecausedbythechangeoftheanalogquantitiessuchasvoltage,currentandclassictransformationbetweendigitalsignalandanalogsignalsensorprinciple,realizationofhighprecisionweighingfunction,thetechnologyofsinglechipmicrocomputerisnotonlyhighprecision,butalsohasstronganti-interferencecapability.
Hardwareaspectsincludedataacquisitionsystems,minimumcircuitsystems,andinputanddisplaysystems.TheweighingsensorandthedataacquisitionmoduleofHX711realizethehigh-precisionmeasurementofvoltagesignalchange(relatedtopressure),andthesignalamplificationisrealizedthroughtheamplificationcircuit.Theminimumsystemnotonlyensuresthatthecollectedsignalcanbeprocessedunderthelowestenergyconsumptionandrunsmoothly,butalsoreducesthedifficultyofhardwaremanualoperation.
Inaddition,man-machineinteractionfunctionandallkindsofhumanizeddesignarealsothefocusofthisdesign,theinputanddisplaysystemmakesthesystemappearmoreintelligentandreal-time.Inputinordertoachievetheunitprice,amountofcomputation,peel(removalofweighingtheweightoftheglassorotheritems),andotherfunctions,thisdesignUSEStheclassic4x4membranekeyboardartificialcontrolelectronicscalebasicfunctions,andthevariousbuttonscontrolfunctionissetbythesoftware,theconcretethroughreal-timeinformationdisplayLCD12864LCDscreen.
Keywords:
STC89C52;A/Dconverter;Liquidcrystaldisplay;Filmkeyboard;Minimumsystem;
1前言
1.1本设计的目的与意义和应该实现的技术要求
当今世界的发展,已经离不开电子,离不开电子信息化带来的智能生活,在日常的生产活动之中,有许许多多需要使用重量测量工具的商品,因此,一个高性能低成本,智能化程度高的智能电子称在市场显得尤为重要,此次毕业设计的目的就在于研究如何生产出物美价廉的智能电子称。
大学生对于此类研究具有深远的影响,能在研究中发现问题并进行改进和创新。
本次设计中以实现尽可能的高效和低成本设计智能电子秤,研究电子秤具有很强的现实意义,在本次设计中,可以了解社会产品的实现原理,能利用自己所学的专业技能对这些电子产品进行定向的功能设计,了解当下社会产品有哪些缺陷和技术难点,思考改进的方向,这不仅仅是在本设计,所有的大学生设计都应该有这样的效能,这既是提高自己的专业水平,也是在为国家的创新政策做贡献。
在本次设计中我对设计提出了几点技术要求,第一、用较为便宜的元器件完成毕业设计,模拟市场中产品的成本控制。
第二:
具有一定高度智能化的功能,比如:
输入物品单价,计算总价,能够实时显示数据等。
第三:
具有高精度的测量,能够手动去除物体容器重量等,第四:
在设计完成之后,根据自身设计能力,尽量实现更多智能化,人性化的设计功能。
图1.1一般超市智能电子秤
1.2本设计在国内外的发展趋势以及目前存在的问题
智能电子称无论是在国内还是国外都发展的相当好,国内的电子秤设计水平逐渐追赶上国外的水平,在某些领域中国甚至进行了改良,使其部分功能强于国际平均水平。
国内外都在积极进行智能电子秤的发展和改良,主要在于它的精确度和抗干扰能力上,总而言之,此项产品的技术功能都在进步,适用的工作环境也越来也多,甚至能在许多大型工厂使用一般电子秤[1]。
现在智能电子称还存在许许多多的问题,比如:
1.很多时候电子秤过于巨大,不便于携带
2.模块有时候还不分明,不利于添加和移植此类产品的功能
3.在低成本的状态下,人机交互功能往往很难达到人们心里的期待
4.功能过于单在日常生活中,此类设备常常面临很多综合性的难题
5.模块的不分明也导致了硬件之间难以组合,不利于对新功能的研发
1.3设计目标
综合上文的分析,要解决的问题也十分明显,综上所述,本设计的目标应该达到以下要求:
1.使用价格低廉,本设计应该市场上大量生产的元器件实现基本功能,这样能使自己的设计更加和社会接轨,存在大量生产的可能。
2.要具有很强的组合性,什么叫组合性,就是把本设计的某一方面功能尽量独立起来,让自己的作品便于别人利用和改造,可以随时去掉某一功能或添加某一功能,而在硬件方面并不受到太大制约,有利于开发出一款使用简单,改造简单,相对独立的高性能电子秤
3.作为电子秤,精确度和强稳定性是必不可少的,如果没有这些,这个设计无疑是失败的,因为它失去了最基本的功能
4.此外,人机交互功能也是本设计非常重要的一点,智能化离不开人机交互,设计要让机器和人之间顺利交流,让机器能读懂人让他干的事,显示部分也必须十分的清晰,这样使用者才能清楚快速的获得实时信息,这同样也是人机交互功能的重要部分。
5.在保证设计合理的情况下,本设计必然要进行大胆的创新,创新的主要方面在于实现更多智能化功能,尤其是人机交互方面,切不可认为这是普通的产品设计,要认为自己在研究新事物。
2整体设计方案选择
根据1.3中的设计目标,本电子秤包含有主控模块,重量测试模块,显示模块,键盘输入模块,以及可能有的报警检测模块等,系统的工作原理如下图所示:
图2.1系统简易工作原理图
2.1硬件选择及其功能设计思路
2.1.1单片机主控芯片的选择
在单片机的主控芯片使用上我选择的是STC89C52,这是一款STC公司出产的芯片,以8051为内核,内部含有FlashEPROM存储器,是一种非常出色的CMOS产品,内部存储空间达到2KB,价格和存储空间都处在相对适中的区间内,符合一般市场使用的情况[2],,它的低耗能是这款芯片的大优势,具有很多普通单片机所不具有的特殊附加功能,这款芯片能让我们灵活的处理问题,创造各种行之有效的处理方法。
除了这款芯片优秀的性能之外,选择它的原因还在于熟悉度,本人在大学的学过郭天祥先生写的51单片机C语言教程一书,这本书配套的51单片机开发实验板用的正是我在本次设计中选择的来自STC公司生产的89C52芯片,较长时间的使用让我对于这款芯片的引脚功能已经相当了解,非常有利于本次设计的顺利进行。
图2.2STC89C52实物图
2.1.2称重传感器A/D转换使用芯片选择
称重传感器是智能电子秤的灵魂,称重传感器使用的原理是对于不同重量的物体,它能测试出不同的压力,把压力代表的非电量用测量模拟量的方法收集起来,用模拟量和数字量相互转换的方法,把模拟量分成若干个区间,每一个区间压力数据转化而来的平均值,就近似的看作此次测量物体的重量,所以称重传感器A/D转换器芯片的位数越多,把最大量程分的区间越多,测量也就相对更准确。
在本设计之中,我们使用了HX711为我们的称重传感器转换芯片,这是一款专门为高精度电子秤而设计的24位AD转换芯片。
选择它的原因主要有以下几个。
1.精度高:
他是24位A/D转换器,精度达最大量程的几百万分之一
2.成本低廉,很符合日常设计中使用
3.集成度高:
在极小的芯片内聚集了所有需要的外围电路
4.具有强大的稳定性和反应速度
图2.3HX711实物图
2.1.3LCD液晶显示屏幕的选择
液晶屏幕的使用也多种多样,在选择本次设计的LCD液晶显示屏之中,主要考虑国1602,12864和12232[2]三种类型的液晶显示屏,最终选择了12864这款,这款液晶对比其他两款显示屏最大的外观区别在于,其他两款液晶屏幕是扁长型,而12864是近似于长方形,跟适合用于需要显示多种液晶屏幕的智能电子秤。
而在三款操纵难度类似,功能上各有千秋的液晶显示屏中,自然选择了这款。
12864是也是一款图形型液晶,它名字的意思是由128列64行组成,利用行线与列线之间复杂交错的高低电平来显示复杂的字体,虽然对比其它类液晶不算小,但已十分轻便,而且操作较为简单,对能耗的需求也不高。
图2.4LCD12864实物图
2.1.4压力传感器的选择
称重传感器的选择重在抗稳定性强,并且能准确感受压力,在市面上的压力传感器都比较能符合要求,小的有量程为1kg,5kg以及10kg的压力传感器,大的能达到800kg甚至更大,但是考虑到成本和样本性,我们在本次智能电子秤的设计之中使用10kg量程的压力传感器。
图2.510kg压力传感器实物图
2.1.5外接扩展键盘的选择
在人机交互功能以及智能化的实现之中,键盘是必不可少的,他是人机交流的桥梁,在一开始的选择之中我们有以下两种选择。
1.传统镶嵌式按键式键盘
2.薄膜键盘
最终我们选择了后者,一个4乘4的薄膜键盘,其实两者的实现原理非常相似,都是用四条行线和四条列线配合管脚的功能,通过一定的软件功能设置,最终能通过按键让键盘执行固定的命令。
而薄膜键盘拥有焊接简单,结构性强,在电路设计中添加和去除都是非常简便的,这对于我们把整个单片机系统进行高分离度的模块化是非常有利的,有助于在设计中添加或者移除硬件,辅助设计者设计和改良设计功能。
图2.64乘4薄膜键盘实物图
2.2系统总体方案
有了硬件的选择,系统总体方案也十分清晰,首先以STC89C52为内核设计一个单片机最小系统,让整个单片机能够顺利的运行,再加上设计来专门为智能电子秤服务的HX711通过A/D转换测量出经过运行放大电路处理过的电信号配合主芯片转换为高精度的物体重量数据。
人机交互和智能化的处理方面主要使用薄膜键盘来连接,通过软件设计和按键实现一些智能化的功能,让使用者随时随地可以让这个产品执行希望的功能,最后把想要得到的结果及时用液晶显示屏。
最后,在合理的情况下扩展一些有希望实现的添加功能:
比如语音报警,去皮功能等,实现一定的创新,增加非基本任务功能。
3系统硬件电路设计
3.1STC89C52单片机最小系统设计
单片机拥有很高的性价比,使用这款芯片设计一个最小系统既方便又实惠,能以极低的能耗,支持单片机系统的实现,单片机的最小系统需要的部分包括复位电路,晶振,洞洞板,电容,电阻,时钟(振荡电路的输入和输出端等等)[3]
首先将STC89C52系统运行所需最基本的元件焊接好备用,此单片机系统的的管脚如下:
图3.1本设计所需单片机部分电路图
首先是电源的部分VCC,在此我们接入5V的电源,在第十九和第二十个管脚分别连接晶振的输入端和输出端,单片机的其他控制功能,如复位引脚,内外部存储器的选通信号,连接复位功能的引脚等等不一一介绍,连接即可。
最小系统最终会把所有的管脚全部向外连接,首先最重要的是电源部分,从第四十的管脚流入,他供电部分的内部原理图如下:
图3.2单片机最小系统电源部分电路图
双电容的设置,使电压稳定之后才向前供给,再加上一个电源指示灯,在有外接电源的时候,能让LED灯亮起,方便我们判断焊接之后整个电路是不是处于一个导通的状态。
除此之外单片机最小系统还需要一个复位电路,通过设置把电路的整体状态确定到一个空状态,相当于恢复出厂设置,本电路系统采取的按键复位,原理是通过连接开关,控制开关相控制的电容,让RST成高电平,并保持一段时间,由于此系统的特性,电路自然恢复了原来的配置,按键复位电路如下图所示。
图3.3按键复位电路电路图
其他由单片机外扩的功能,在下面分别一一介绍。
3.2LCD12864液晶显示电路设计
数据打开口RW,状态口RS和的读读出口E分别接在P2.5,P2.6和P2.7,控制具体显示内容的DB0到DB7在本设计之中连接至单片机芯片管脚的P0的8个口,具体的液晶显示屏电路原理图如下图所示。
图3.4LCD12864电路图
在图中我们可以清楚的看到,数据的输入输出控制和点阵式图形显示器能通过计算机软件的的烧录轻松实现功能控制,图形的显示主要通过DB0到DB7八个管脚高低电平的改变实现图形的显示。
3.3信号采集电路设计
3.3.1 称重传感器的电路设计
称重传感器主要的的原理是,电子金属应变片的受到压力变大时,电阻丝会变短,电阻横截面积会变大,最终让压力和电阻阻值成线性变化,这就是称重传感器实现称重功能的的基本原理[4]。
图3.5称重传感器原理图
如图可示四个金属变电阻需要四条外接线控制,由于称重传感器需要的工业流程比较复杂,所以在本设计中选择了一款性价比较高,功能较为齐全的称重传感器,它的四条控制线,已经提前封装好,在我们的视觉状态上呈现出呈现出黑,白,红,绿四种颜色的线,在本次设计中这四条线依次接入HX711的A-,A+,E-和E+四个接口,由于称重传感器经过统一的设计,四条线连成同一个插口,我们只需要在底座对应焊接之后,直接插入即可。
3.3.2信号放大整形电路
将采集到的信号连接运行放大电路,放大电路自行已经连接在hx711芯片上的,hx711内部的放大器会自动把采集到的电信号放大128倍或64倍(取决于所选择的通道,本设计选择了128倍的通道),计算出的重量数据通过24位的高精度A/D转换器,经过单片机进行处理得出准确的结果,放大器使用差分电路放大器,它的芯片内部差分放大电路图如下。
图3.6差分电路放大器电路图
3.3.3 24位A/D转换器HX711电路设计
在连接好hx711的其中一边之后,开始连接另一边,首先先正面朝上进行操作方便焊接,在9脚和10脚分别连接100微F电容的,起到一种过滤电波和去耦的作用,另一边的四个角,需要连接电源正极和地线,DK和SCK分别连接3脚和4脚这两个管脚和设计者编译的烧录软件共同作用,对整个电路起到一定功能方面的监控作用,和连接主单片机时钟的作用,最终hx711需要进行的电路连接如下图所示。
图3.7HX711电路图
3.4外接扩展矩阵键盘的电路设计
4乘4矩阵键盘需要由八条线控制,在本设计中我们把它连接送至单片机的主控的p1.0脚到p1.7脚,配合软件设计烧录至单片机主控芯片实现具体薄膜键盘各个按键中所需要的功能,矩阵键盘的电路图如下。
图3.8薄膜键盘电路图
3.5原理图绘制软件的介绍
我们的原理图绘制软件用的是proteldxp2004这款十分经典的原理图绘制软件,历经十几年,依然十分流行,是一款让单片机综合设计完全合于同一个软件的综合性电子设计开发环境。
3.6本设计硬件整体电路图与PCB图的介绍说明
图3.9硬件整体电路原理图
依照前面所描述的所有的组成的总原理图如上图所示,图中未出现的蜂鸣器报警功能的电路图部分是开题报告中提到的力所能及能添加的情况,现在首先预留第21管脚给蜂鸣报警器,力争在实际设计中实现。
根据上述电路图,并根据电路图使用protelDXP2004软件设计生成一个PCB图,并依据所设计出的PCB图通过洞洞板经过仿真模拟之后完成所有焊接,制作完成之后的PCB图如下图所示。
图3.10本设计PCB图
4系统软件部分设计
4.1软件开发环境和开发软件的介绍
软件的主要用keil4软件在C语言下的开发环境下进行软件开发,通过软件改变硬件的运行方式从而实现的特定的设计功能,keil是单片机开发中最为成熟的开发软件,在开发完成后HEX软件并烧录进单片机芯片,烧录使用的是STC烧录软件,该软件简洁实用,功能庞大。
4.2系统软件的具体设计
4.2.1主函数的设计思路
首先,需要将在软件中设置硬件,软件单片机各个管脚,薄膜键盘和的初始状态,其次,使用单片机定时器实现普通物体称重,输入,显示,以及按键中对应特殊功能的作用,按键采用无限循环检测的方式检测是否有按键按下,当有按键按下时,实现按键对应的功能,按键检测的方法使用查询检测来完成,主程序所有内容详见附录。
图4.1设计主函数的流程图
4.2.2LCD12864液晶显示屏的软件设计思路
LCD液晶显示屏的设计通过8加3条线,控制液晶显示屏幕数据的读入和读出,通过查询该方式,检查三个键控制屏幕数据的输入和输出,控制屏幕的8个接口无限循环检测高低电平,依照高低电平显示已计算的数字和中文字符。
图4.2LCD12864软件设计流程图
4.2.3扩展键盘的软件设计思路
扩展键盘首要是判断是否接通允许输入输出,然后分别判断对应被按下的行线和列线,他们之间的交叉点正是被按下的按钮,然后设计不同的按键对应的要实现的功能,同样的,判断行线和列线的方法依旧是查询方式,然后用设计中断的方法进入实际功能。
图4.3键盘输入软件流程图
4.2.4称重传感器相关的A/D软件设计思路
设计的软件功能能感受放入重物和没放入重物两种不同的情况,首先用中断来设计当感受到重量时,对于物体重量的计算,当放开重物的时候回归原来的状态,此方面的软件设计流程图如下。
图4.4称重传感器软件设计流程图[5]
5测试与总结
设计了所有的硬件和软件,下面开始具体的操作,首先具体设计的第一步是设计需要烧录的软件,首先打开keil4软件,开始设计主控芯片的软件,我们首先把烧录的软件部分编写出来,首先我们编写的主程序分成两部分,一部分是主控连接hx711传感器的部分,一部分是传感器的部分,程序构造如下。
图5.1软件代码结构构造
其中A51是启动代码,REG52.H和intrins.h是为了编写单片机自带的配置以及循环移位功能和空指令空指令功能导入软件中自带的头文件。
其中hx711的编写较为简单,已无需编写内部的程序,只需声明这个AD转换器与主芯片引脚的关系即可。
主程序中12864的书写之中,编写12864的方法很简单,采用串行驱动方法
定义好管脚的对应和行列,以及显示功能,编写发送字符串的功能,然后开始编写发送接收数据并实时显示的功能。
将不同模块编写到主函数里面,键盘自动扫描模块,称重模块,特殊功能模块(去皮功能和报警功能等),键盘输入功能悉数写入主函数之中,功能对应输入值悉数输入,具体思路在上文已经一一介绍。
本文不再说明。
最后通过使用keil4软件的编译功能,把写好的软件编译成HEX,在安装了下载驱动之后,使用STC软件,调整好参数之后把文件烧录进去。
图5.2STC软件烧录环境图
经过人工检查和软件仿真,在烧入之后发现和硬件并不产生误差,现在要将硬件完全焊接完成,检查是否存在功能错误。
首先要把电路焊接好,在洞洞板上由小到大,由横放的原件到竖放的原件一一焊接好,焊接好的实物图如下所示。
首先是最简单的液晶显示屏,底线和数据允许口等都是固定好的,只需要在电路板上焊接好底座,以及行列线对应的管脚就好。
图5.3液晶显示屏12864焊接图
紧接着,将设计好的电路包含的主控芯片和电路原件焊