电子秤的设计--毕业论文

上传人:gbs****77 文档编号:10127060 上传时间:2020-04-10 格式:DOC 页数:44 大小:6.30MB
返回 下载 相关 举报
电子秤的设计--毕业论文_第1页
第1页 / 共44页
电子秤的设计--毕业论文_第2页
第2页 / 共44页
电子秤的设计--毕业论文_第3页
第3页 / 共44页
点击查看更多>>
资源描述
届毕业设计(论文)题 目: 电子秤的设计 学 院: 电子与信息工程学院 专 业: 电子信息工程 学 号: 姓 名: 指导老师: 起讫日期: 2014 年 06 月电子秤的设计摘 要智能电子秤是日常生活中经常使用的一种测重装置,它采用了电子技术、传感器技术等,测量的误差小,可以将“精确、快速、自动”的要求很好的满足。现实生活中,在学校、市场、工厂、医院等地方都得到了广泛的推广和应用。本设计主要以单片机为中心模块,针对电子秤的自动称重、自动处理数据、自动显示来进行设计。本系统中的数据采集模块主要负责将压力这个非电量转化为电量;信号处理模块主要负责对信号的放大和模/数转换;单片机控制模块主要负责数据的进一步处理、控制端口的输出等;显示模块主要负责显示重量、单价、总价;程序设计方面采用的模块化的设计思想。通过对这些模块的方案选择以及硬件设计,详细的介绍了本系统是如何进行数据采集、数据处理以及显示的。关键词:电子秤 变阻式压力传感器 单片机 A/D转换器The design of electronic scalesAbstractIntelligent electronic scale is one of the weighing device that we are frequently used in daily life, which uses electronic technology, sensor technology with a small measurement error. And it can be nice to meet the requirements-precisely, quickly and automatically. In real life, it has been widely promoted and applied in schools, markets, factories, hospitals and other places.The system uses the single-chip as central module,being designed for automatically scales for weighing, automatic data processing, automatic display. Data acquisition module is mainly responsible for the pressure of the non-power into electricity; The signal processing module is mainly responsible for signal amplification and A / D converter ; SCM control module is mainly responsible for the further processing of data, the control output port, etc.; The display module is mainly responsible for displaying the weight, unit price, total price; modular design concept adopted in the design process.Through selecting the scheme of these modules and designing hardware, describes in detail how the system for data acquisition, data processing and display.Key Words:Electronic scales; variable resistance type pressure sensor; microcontroller; A/D converter目 录摘 要Abstract第一章 绪论11.1引言11.2 国内外的发展现状11.3 研究的目的和意义11.4 总体设计思路21.5 论文结构2第二章 系统方案设计32.1系统整体设计方案比较32.2 系统各模块电路设计方案比较42.2.1 单片机处理模块42.2.2 数据采集模块52.2.3 信号处理模块62.2.4 显示模块72.2.5 按键电路72.3 具体实施方案简介8第三章 系统硬件设计93.1 基于STC89C52的单片机控制模块93.1.1 STC89C52简介93.1.2 STC89C52引脚说明93.1.3 STC89C52具体电路设计103.2 数据采集模块113.3 信号处理模块123.3.1 HX711简介123.3.2 HX711引脚图133.3.3 信号处理模块电路设计143.4 显示模块143.4.1 LCD1602简介143.4.2 LCD1602引脚图153.4.3 显示模块电路设计153.5 按键电路163.5.1 4*4按键简介163.5.2 按键电路设计173.6 报警模块173.6.1 报警模块介绍173.6.2报警模块电路设计173.7 总结18第四章 系统软件设计194.1 软件开发环境194.2 系统软件设计流程图194.2.1 主程序设计流程图194.2.2 系统显示部分流程图204.2.3 信号处理模块流程图214.3 总结22第五章 系统仿真及硬件调试235.1系统仿真235.1.1系统仿真图235.1.2 系统仿真结果235.1.3 系统仿真误差分析255.2 系统整体调试255.2.1 系统实物调试结果图255.2.2 系统实物调试误差分析:27总 结28参考文献29致 谢30附 录31南京工业大学本科生毕业设计(论文)第一章 绪论1.1引言电子秤是日常生活当中经常会用到的一款衡器装置,它不仅体积小、读数方便,而且精确度高,操作十分简单方便。正因为上面这些优点,才能够被广泛应用与商场、医院、工厂等地方。相对于应用普通杠杆原理的衡器而言,电子秤有着很大的优点,它的精度比杠杆称重精度高的多,应用受限较少,所以应用非常广泛。为了使生活变得更加方便,研究和制作各种不同规格的电子秤有着非常重要的意义。1.2 国内外的发展现状现今社会,无论是在企业、医院交易市场、交易市场,还是小到每个家庭,电子秤可以说是随处可见。它不仅拥有很多种类,而且拥有巨大的市场占有量。从日常生活中的简单的测量重量到工厂里产品的重量的检测,电子秤在越来越多的方面得到应用。随着市场需求的不断变化以及测重技术的飞跃发展,电子秤的技术性能趋向于高可靠性、高效率、高精确度。总的来说,电子秤技术正越来越模块化、集成化以及智能化。国际社会上,很多西方发达国家研制出的电子秤准确度高,可靠性高,可以说已经达到了很高的水平。他们已经研制了具有较高准确度、防水、耐腐蚀以及在高气压下正常工作的电子秤。目前,我国在电子秤称重技术上虽然与西方发达国家仍有一些差距,但是研究专家们正在不断努力,也取得了不少理论成果。我们国家已经成功研制出了省电、功耗小以及能够利用光能的电子秤,不仅精度高,而且节能环保。1.3 研究的目的和意义电子秤的设计包括很多方面,不仅需要了解电子秤的各个组成部件,而且需要了解电子秤实际生活中的应用情况。要顺利的完成电子秤的设计,需要去了解传感器的原理、A/D转换器的原理及应用、单片机的应用以及完成程序算法的设计,这些方面需要我们运用所学的各种软件以及硬件方面的知识,可以巩固我们对于专业知识,以及其他相关知识的了解。1.4 总体设计思路根据本课题的背景以及设计要求,要实现称重功能,首先要将物体重量这个非电量转化为电量,因此需要传感器模块,传感器输出的的电量与物体的重量有一定的对应关系;但是只依靠这一关系推算出的重量不精确,而且不直观,所以需要对传感器输出的数据进行处理;信号的处理一般选用单片机来进行,但是单片机输入的是数字信号,而传感器的输出是模拟信号,因此在此之前还要对信号进行模/数转换,再输入单片机进行处理;单片机输出的信号可以采用数码管显示,或者是LCD显示,这样得到的结果不仅准确性得到提高,而且比较直观,给用户更好的体验。除了以上功能模块,本设计还加入了报警模块。1.5 论文结构本论文包括中外文摘要、目录、正文、总结、参考文献、致谢、附录几大方面。正文部分第一章为绪论,第二章为系统方案设计,第三章为系统硬件设计,第四章为系统软件设计,第五章为系统仿真及硬件调试。1南京工业大学本科生毕业设计(论文)第二章 系统方案设计2.1系统整体设计方案比较根据上面的设计思路,可以衍生出很多的设计方案,现列出三种方案如下:数据采集万用表方案一 简单的输入输出方案,如图2-1:图2-1 方案一这个方案是通过直接将物体放到传感器上,然后将传感器的输出接到万用表,再根据传感器特性推算出物体的重量,操作起来十分方便。但是也有很多的局限,这种方案的电子秤只能实现基本的秤重功能,而不能实现外部数据的输入,因此无法实现手动输入一些参数;而且得出物体重量非常麻烦,不能直接看出重量是多少,所以人机交换界面不理想,达不到购物清单的要求。 数据采集AD转换单片机处理显示模块按键处理信号放大方案二在方案一的基础上,可以通过将信号放大以及进行模/数转换来提高结果的精确度,并使用显示模块可以使系统显示字符,使界面更直观,而且加入键盘模块,实现人机交互功能如图2-2:图2-2方案二信号处理单片机处理显示模块按键处理数据采集报警模块这种方案设计的电子秤不仅有了信号处理这一环节,使精度得到了很大的提高,而且可以通过键盘手动输入物品的单价,并能够显示出物品的重量、单价以及总价,拥有很好的人机交互界面。通过对比上述三种方案的优缺点,在考虑到设计的成本以及可行性前提下,本次设计选择使用第三种方案设计完成了最终的电子秤方案、最终的硬件设计方案图。除上面这些功能模块外,本设计还加入了报警模块作为扩展功能,方案图2-3如下: 图2-3 系统整体方案图2.2 系统各模块电路设计方案比较2.2.1 单片机处理模块本系统的中心控制模块即单片机控制模块,它在整个系统中负责数据的处理、交换等作用。本次设计中的键盘输入信号、信号处理模块的输入信号,都将被输入到中心模块中进行数据的进一步处理。不仅如此,此中心控制模块还要能够输出显示控制信号、信号处理控制信号、报警信号等等。显然,作为整个系统的中心控制芯片,单片机扮演着一个中心枢纽的角色,不仅有信号的输入,也有信号的输出,具有十分重要的地位。因此,在选用这种中心控制芯片的时候,最好能够选用内存大,可靠性高,速度快而且价格便宜的芯片。在对比市场上众多的单片机芯片后发现,STC89C52相对于其他芯片可以很好的完成上面的功能,并且拥有许多自身的优点。STC89C52是一种8位微控制器,采用串口直接下载,抗干扰能力相对更好一点,兼容性也不错,而且成本不高。因此,本次设计的中心控制芯片选用的是STC89C52。2.2.2 数据采集模块数据采集模块电路的作用是将物体的重量这个非电量,转换为电压或者电流这些电量形式,以便后续的处理、输出,因此需要用到压力传感器。方案一 采用压电式压力传感器晶体的正压电效应是压电式压力传感器的主要工作原理。正压电效应是指当改变外力的大小时,晶体内部的电极性发生改变,所带的电荷量也发生改变。因此,可以通过测得改变的电荷量的大小,来得到施加的外力的大小。市场上的压电式传感器种类很多,它们都有体积小,动态性好等优点。但是该传感器的弱点也比较明显:内阻较大、功率偏小,防噪声性能不是很突出,输出特性被严重影响,因此由它输出的能量比较薄弱,需要设计复杂的外接电路进行矫正。方案二 采用电容式压力传感器电容式传感器是一种可以将压力、位移等非电量的变化转换为电容量的变化的传感器装置。它的优点是灵敏度高、简单、动态响应良好、测量可以不用接触等。一般我们借助平行电容器来解释说明电容式传感器的工作原理,两块平行的金属板上面的电容量(不考虑边缘效应)为:(2-1)其中:介质的相对介电常数;真空中的介电常数;A平行板覆盖的有效面积;d平行板间的距离。当被测量物体的重量发生改变,并进而改变等式中、A、d的大小时,电容量都会改变,从而将变化量转化为电量的输出。然而,电容式压力传感器也有一些不足的地方:(1) 初始时的电容比较小,因此会在杂散电路中产生较大的寄生电容。(2) 功率小、阻抗高。由于平行板的尺寸较小,电容式传感器的电容量都比较小,因此它的容抗=1/C很大,属于高阻抗的元件,所以负载能力不行;同时,由于P=C,则当电容C很小时,功率P也就比较小。因此,电容式传感器外界干扰的抵抗能力较弱,需要采取必要的抗干扰措施。方案三 采用电阻式压力传感器电阻应变式传感器能够将各种力学物理量转换为电信号,主要是利用电阻应变效应制成的。电阻式压力传感器以电阻应变片为主要部件,这种电阻应变片不仅可以单独用来充当传感器,而且能作为敏感元件构成力学量传感器。 电阻式压力传感器是一款常用的传感器,拥有很多的优点。使用比较灵敏,测量精度高,稳定性较好,分辨力高;应用领域比较广泛,许多机械量传感器都可以使用应变片制作而成;体积小,结构简单;操作简单方便,用户体验较好,便于远距离测量和商品化发展;对环境要求不高,可以在恶劣情况下正常工作,适应能力出色,在频率响应方面性能优越。综合对比分析以上三种传感器的优缺点,再考虑到本次设计的要求为称重范围05Kg,误差不大于2g。因此,为了提高设计准确性、精确度以及可靠性,本次设计选用的是第三种方案,即采用电阻式压力传感器。2.2.3 信号处理模块信号处理模块在本系统中包括信号放大与信号转换两个功能,所以应该包括信号放大模块与A/D转换模块。方案一 信号放大器采用AD620,A/D转换器芯片采用ADC0832信号处理的两个部分可以分别由两个模块单独来完成。信号放大部分一般可以使用AD620。AD620是通过外接电阻来达到放大的效果,增益范围可调,且精度高,成本低。模/数转换部分可采用较为常用的ADC0832。ADC0832是一款双通道,8位分辨率的A/D转换器,采用的是逐次逼近式的转换方法。它的兼容性高,体积小,因此经常被大家使用。将这两个模块连接形成电路,可以完成设计的指标,但是由于需要电路间的连接,所以会产生一些不可避免的误差和干扰,因此不是特别完美。而且ADC0832的精度不算太高,对于需要高精度的电子秤来说,不是最好的选择。方案二 采用集成的高精度A/D转换器HX711HX711内部不仅集成了信号放大模块,而且包含了一款高精度的24位A/D转换器。 不仅如此,HX711内部还集成了完成放大和转换功能所需要一些外围电路,比如稳压电源,时钟振荡器等。它的优点是精确度高,成本低,抗干扰能力强卓越且响应迅速。此外,HX711与单片机之间主要是通过管脚来驱动的,接口电路简单,不需要对芯片内的寄存器进行编程。对比分析以上两种方案的优缺点,可以发现第二种方案更有优势,所以选择使用HX711作为信号处理模块的主要芯片。这样不仅能够节省成本,而且可以大大的提高设计的准确性和可靠性。2.2.4 显示模块本系统中显示模块应该主要用于显示物体的重量、单价、总价,设计主要是力求使人机交换界面美观,因此选用合适的显示模块非常重要。方案一 LED数码管显示LED数码管是一款常用的显示器件,它内部由8个发光二极管组成,其中有7个组成“8”字形,还有一个用来显示小数点。LED内部的发光二极管已经都连接了导线,只需要引出它们的公共电极就可以使用。但是数码管可以显示的信息有限,当需要显示的信息较多时,就用需要将多个数码管级联,这样会导致硬件连接复杂,成本也会相应增加;此外,数码管对大部分字符不能很好的显示,容易出现闪烁现象。方案二 采用LCD液晶显示液晶显示模块可以显示出字符,因此经常用来作为字符显示模块,在单片机应用中使用较多。它不仅显示内容丰富,还拥有很多数码管不具备的优点。LCD1602不仅功耗低、驱动电压小、显示信息量大,而且使用周期长,不会产生辐射与污染。LCD1602属于液晶显示器件中最为常用的一种。它的工作电压为5V,拥有8 位数据总线和三个控制端口,并且还可以调节显示器的亮度,可以显示2行 16 个字符,并且具备液晶显示模块的所有优点。对比分析以上两种方案的优缺点,虽然都能成功显示数据,但是考虑到设计精确度,以及人机交换界面的美观,本设计选用的是第二种方案,即利用LCD1602来做显示模块。2.2.5 按键电路按键电路模块主要用来手动输入物品的单价,实现人机交互的功能。方案一 专用键盘接口芯片式专用键盘芯片内部不仅集成了接收键盘输入数据的模块,还带有显示接口,可以独立的处理对键盘的扫描、消除抖动以及编码问题。因此,对于提高准确度和可靠性很有帮助,而且接口电路简单,使用起来十分方便,但是成本一般比较高。方案二 4*4矩阵薄膜键盘4*4矩阵薄膜键盘属于薄膜开关的一种,由上电路、面板、下电路、隔离层四个部分组成,内部集成了16个小的按键开关,并且按照矩阵式的排列着。它是一种近来非常流行的集功能性与装饰性于一体操作系统,不仅外形美观、体积小,而且密封性强,具有防尘、防潮等优点。对比分析以上两种方案的优缺点,虽然都能实现按键输入的功能,但是考虑到成本的因素,而且第二种方案的可靠性相对也不低,并且还有很多其他优点,因此本设计选择第二种方案作为按键模块。2.3 具体实施方案简介根据上述各个模块方案的对比介绍,以及考虑到本次设计的要求,本次设计的硬件部分的中心控制芯片采用STC89C52。由于电子秤设计的功能不是很多,所需要编写的程序量也就不大,因此不需要对STC89C52外扩其他的程序存储器,这样可以避免硬件的浪费。除了单片机的最小系统,硬件部分还应该包括数据采集电路、信号处理电路以及数据显示电路。数据采集模块内部最主要的器件是变阻式压力传感器。为了尽量满足高精度的要求,选择的传感器必须要满足测得重量的误差在一定的范围之内。但是由于传感器输出的信号一般比较微弱,因此需要对输出的信号进行信号的放大,这样就可以保证结果的可靠性。不仅如此,由于单片接收到的信号必须是数字信号,因此还需要对数据进行模/数转换。为了提高设计的精确度以及可靠性,减少不必要的误差,本设计选用专为电子秤设计的高精度的转换器HX711,不仅可以进行信号的放大,而且可以实现信号的模数转换。在人机交互方面,主要通过键盘来实现,可以手动输入数字和已经设置好的控制命令等,来实现一些特定的功能。本设计中,按键控制模块采用的是44矩阵薄膜键盘。显示电路部分,本设计选择使用字符点阵式液晶显示器LCD1602,不仅人机交换界面较美观,而且可以一次满屏幕显示2行16个字符,可以实现购物清单的要求。在扩展功能上,本设计添加了报警电路,当物品重量超过量程时,蜂鸣器就会发出警报声。9南京工业大学本科生毕业设计(论文)第三章 系统硬件设计根据设计的要求和指标,本设计应该包括以下模块(如图2-4):中心控制模块、数据采集模块、信号处理模块、显示模块、按键模块以及报警模块。3.1 基于STC89C52的单片机控制模块3.1.1 STC89C52简介STC89C52是一种低电压,高性能COMS 8位微处理器,它的程序存储空间为8K字节,数据存储空间为512字节,内带EEPROM存储空间为4K字节,I/O接口线为32位。3.1.2 STC89C52引脚说明STC89C52引脚图如下图3-1:图3-1 STC89C52引脚图STC89C52 引脚功能说明,如表3-1:表3-1 STC89C52引脚说明图3.1.3 STC89C52具体电路设计在本设计中,STC89C52作为主控芯片,它应该包括振荡电路、复位电路、端口连接。振荡电路由一个晶体振荡器和两个电容并接到XTAL1和XTAL2引脚。由电容和石英晶体构成的振荡回路,构成了一个稳定的自激振荡器,为单片机内部的放大器提供振荡以及正反馈所需的相移条件。电路中电容的作用是起振,一般情况下,电容值偏大虽然有利于振荡器的稳定,但是同时也会增加起振时间,所以电容值在许可范围内越低越好。一般较常使用的电容值为15pf-30pf,本设计中采用的是30pf。为保证较高的精确度,晶振频率则选用11.0592MHz。具体电路图如图3-2:图3-2 振荡电路图本设计中复位电路采用的是上电复位的方式,通过电容充放电来实现,使用起来简单方便,只要接通电源就可以完成系统的复位初始化。由上面晶振频率的选择可知,本设计的机器周期约为1us,为了保证复位信号高电平持续时间大于2个机器周期,上电复位电路中电阻与电容的选择由t=(35)RC来确定,因此可以选用电容为10uf,电阻为10K。具体电路图如图3-3:图3-3 复位电路图端口的连接用于与其他模块进行数据交换。P0端口以及P2.0-P2.3端口被定义为LCD1602功能控制端,分别与LCD1602显示器的相应功能管脚连接。P1端口被定义为按键功能控制端,当某一个功能将键被按下时,相应的P1口将工作。P3口接信号处理模块,P3.0口接报警模块。因此,本设计的单片机模块端口连接图如下图3-4所示:图3-4 STC89C52单片机端口连接图3.2 数据采集模块数据处理模块的主要器件为变阻式压力传感器。变阻式压力传感器是根据电阻应变效应原理制成的。电阻应变效应是指当导体受力的作用,外部形状发生机械形变时,内部电阻也发生相应变化的现象。电阻应变片把导体形变的信号转换电阻变化的信号,但是由于变化的电阻值一般都比较小,直接测量得到的结果不精确。因此,一般使用特定的转换电路将电阻的变化转化为电压或者电流的变化。这种转换电路经常采用直流电桥。图3-5为一个由直流供电的电阻电桥。本设计中采用的是压力变化转化为电压变化的输出,即把此电桥当做电压桥。由电路的分压原理可以得到(不计电源内阻):Eout=UBC=UBD-UCD (3-1)当满足条件R1R3=R2R4时,即(3-2)Eout =0,即电桥平衡。式(3-2)秤平衡条件。在测量之前,为了保证电桥的输出电压只跟电阻的变化有关,都要先使电桥保持平衡。如果出现差动工作,即出现R1=R-R,R2=R+R,R3=R-R,R4=R+R,按式(3-1),则电桥输出为 (3-3)压力与电压的关系与传感器的灵敏度、测重范围和电路的激励电压有关。本设计中采用的传感器的灵敏度为2.01mv/v0.01,量程为0-5kg,电路中的激励电压为5v,所以可以得到传感器的输出电压范围为0-10mv,还可以得到也就是说,当压力改变1g时,电压的输出变化为0.002v。R1-RR2+RR4+RR3-R电阻桥 输入Ein输出Eout-BACDINA+INA-+式3-3中的Eout为变化的电压值,输出到信号处理模块中进行进一步的处理。传感器两个输出端接在HX711上的INA-、INA+端。因此,可以得到下面的电路连接图3-5:图3-5 数据采集模块连接图3.3 信号处理模块信号处理模块采用的是高精度的A/D转换器HX711。3.3.1 HX711简介HX711是一款专为电子秤设计A/D转换器,是一个24位的A/D转换器。它将一个放大倍数可调的信号放大模块与一个A/D转换模块集成在内部,功能十分强大。芯片有两个通道A、B,由输入开关与内部的可编程放大器相连接来进行选择。通道A 的可编程增益为128 或64。通道B 的可编程增益为32。HX711内部还集成了完成放大和转换功能所需要一些外围电路,比如稳压电源,时钟振荡器等。为简化开机的初始化过程,HX711采用的是上电自动复位。3.3.2 HX711引脚图HX711引脚功能说明,如图3-6:图3-6 HX711引脚图模拟输入通道A一般用作传感器的接入端口,考虑到传感器的输出信号较小,因此此通道采用较大的增益,为64或128.通道B为固定的32增益。 供电电源数字电源(DVDD)使用的供电电源与单片机的电源应该一致。HX711芯片内部含有稳压电源,可以直接向芯片内的A/D 转换器和外部传感器提供电源,因此不需要其他的模拟电源。串口通讯HX711的管脚 DOUT 和 PD_SCK 主要用来输出数据,选择输入通道和增益。当输出端口DOUT是高电平状态时,就表明HX711没有准备好开始输出数据,此时端口PD_SCK应保持低电平状态。当DOUT由高电平变为低电平后,表明已经准备好输出数据,此时向PD_SCK输入2527个时钟脉冲。通过第一个脉冲的上升沿可以读出输出数据的最高位,然后依次读出24位数据,直到第24个时钟脉冲完成。第2527个时钟脉冲用来选择下一次数据转换的输入通道和增益,参见表3-2。表3-2 输入通道和增益选择PD_SCK脉冲数输入通道增益25A12826B3227A64一般情况下,为了避免造成串口通信的错误,PD_SCK 的输入时钟脉冲数应在25到27之间,否则无法得到正确的输出增益。3.3.3 信号处理模块电路设计由于本设计中采用的HX711模块内部功能强大,已经集成了信号放大与处理模块,因此只需要对其外部电路进行正确的连接,即可实现信号处理功能。由上面的介绍可得,将HX711的DOUT端口接在P2.4口,PD_SCK端口接P2.3口。又因为传感器的输出电压为几毫伏,所以需要信号放大模块,且放大倍数尽可能大,所以将传感器的输出接在HX711的A口,并且使P2.3口的输入脉冲数为25,即保证放大增益为128。信号经过放大处理后,再经过后半部分的模/数转换模块将得到的数字信号通过P2.4口输入到单片机中,进行进一步的数据处理。具体的电路图如图3-7所示:传感器输出+传感器输出-P2.3P2.4图3-7 HX711内部结构图及电路连接图3.4 显示模块3.4.1 LCD1602简介LCD1602是一种点阵型液晶模块,可以用来显示字母、数字或符号。LCD1602表示液晶显示器上可以显示两行字符(或数字),且每行的字符(或数字)有16个。3.4.2 LCD1602引脚图图3-8 LCD1602引脚图LCD1602管脚说明如表3-3所示:表3-3 管脚定义3.4.3 显示模块电路设计根据设计的要求,以及上面关于LCD1602的介绍。可以将Vss接地,VDD接电源正极,RS端接P2.0口,R/W端接P2.1口,E端接P2.2口,数据端口D0-D7口与单片机的P0口连接,用来控制显示器的显示。这样,通过单片机给出指令0或1,来控制显示器的输出。具体电路如图3-9:图3-9 LCD1602电路连接图3.5 按键电路3.5.1 4*4按键简介矩阵键盘一般作为单片机的外部设备使用,一般情况下将按键排列成矩阵形式。在矩阵式键盘中,每条垂直线和水平线在交叉处都用一个按键来连接,不能直接连通。水平线和垂直线交叉后伸出8根导线,连接到单片机的一个端口,可以构成16个按键功能,相比于直接将按键与端口连接多了一倍。因此,当需要的按键较多时,使用矩阵法来做键盘是十分合理的。矩阵式键盘比直接键盘的连接要复杂一些,因此识别也相对复杂一些。如图3-10,将垂直线接电源正极,并将其与单片机的I/O接口作为输入,水平线所接的单片机I/O口作为输出。根据单片机的输出特性可知,当按键没有按下时,所有的输入端都是高电平,水平线输出是低电平。当有按键被按下时,输入线上电压就会被拉低。因此,可以通过输入线上电压的状态来判断是否有按键被按下。图3-10 矩阵式键盘内部电路图电子秤键盘功能分配如表3-4所示:表3-4 按键功能分配表123去皮456清零789撤销*0#总价如表3-5,本设计中1-9是数字键,用来输入单价;去皮键用来去除由于环境因素导致的重量;清零键用来进行二次测量,即当一次测量完成后可用其清零,并再次测量;撤销键是用来当输入单价有误时,删去错误的数据,重新输入的;总价键即用来控制计算总价的;*、#键是预留功能键。计算功能:在正确输入了单价之后,按下计算按键,将会计算出金额,并在液晶显示器上显示出重量、单价、总价。3.5.2 按键电路设计根据上面的介绍,按键电路有8个端口,依次连接单片机的P1口,通过按不同的键,输入不同的指令,实现输入单价、清除、计算总价等功能,实现人机交互功能。具体电路图如图3-11:图3.11 按键电路连接图3.6 报警模块3.6.1 报警模块介绍报警模块主要由蜂鸣器构成,当物品的重量超出电子秤的量程是蜂鸣器将发出警报声,以防止器件受到损坏。3.6.2报警模块电路设计根据设计的要求,报警电路应该串联接到单片机的一个端口。但是单片机输出高电平时的电压相当于Vcc,蜂鸣器的额定电压小于5V,为了保护电路可以加入电阻,蜂鸣器的内阻为几百欧姆,所以本设计中选用R=1000欧姆。另外为了更好的保护电路,一般还加入NPN型三极管。利用三极管饱和、截止时的特性来当做开关使用。本设计中超出量程时,单片机输出高电平,此时三极管导通,蜂鸣器发出警报,反之,不发出警报。因此,可以得到电路图3-12:图3-12 报警电路设计3.7 总结硬件电路部分涉及到电路设计的方方面面,不仅要考虑每个模块内部的电路如何搭建,器件如何选择,还要考虑到各模块之间的连接关系,选择最优的布线方式。只有将各个方面都考虑周全,电子秤的精度和可靠性才能够得到保证。19南京工业大学本科生毕业设计(论文)第四章 系统软件设计4.1 软件开发环境本系统的软件设计采用C语言来编程,在可读性、功能都上有明显的优势,所以比较容易上手,且编译易实现。编译环境为keil UV4,是一个兼容单片机C语言的开发系统。Keil C51 软件拥有功能强大的集成开发调试工具以及丰富的库函数。不仅如此,Keil C51 在生成目标代码方面的效率非常高,并且多数语句生成的目标代码十分容易理解。Keil C51 工作的整个流程编辑、编译、连接、调试、仿真等。开发人员可以使用自己的编辑软件或使用Keil,编辑出C程序或汇编程序,再用Keil生成单片机可以执行的.HEX文件,再用烧录软件将.HEX文件烧进单片机中,这样就可以执行功能了。编写程序时主要从三个方面入手:一是将系统初始化;二是按键检测;三是采集数据、处理数据并显示出来。程序编写采用模块化的结构,这样编写的程序不仅结构清楚,可读性高,而且也便于调试和修改。4.2 系统软件设计流程图系统软件设计分为主程序、LCD1602显示电路程序、信号处理模块程序。4.2.1 主程序设计流程图本设计中,主程序的功能应该包括初始化整个系统,检测输入信号,调用函数来执行数据处理、数据显示、数据判断,控制信号的输出等。为了更好的显示,其中还应该延时程序。因此,可以得到主程序的流程图4-1:开始置零键按下显示数据处理信号放大、转换初始化调零程序启动报警超重判断功能键按下按键扫描程序超重不超重图4-1 主程序流程图如图4-1,程序开始执行以后,首先对各个端口,功能键进行初始化;接着当置零键按下后,一边进行调零使输出排除环境的干扰,另一边启动HX711转换器,对信号进行放大并进行模/数转换;转换后在单片机内进行数据判断,若超重则启动报警电路,并置零,若没有超重,则可以按下功能键,并用LCD1602显示程序,使重量、总价的显示出来。一轮结束以后,在此按下置零键,进行第二次测量,重复上述的操作。4.2.2 系统显示部分流程图本设计中,显示部分程序要执行的功能模块包括初始化界面、接收单片机输出的指令、调用显示函数显示出内容等,其中也要加入延时程序。因此,可得流程图4-2:开始显示初始化界面检测重物有无按键显示总价信息显示按键功能结束NoYesNoYes图4-2 显示程序流程图如图4-2,当程序开始运行后,LCD1602首先显示初始化界面,然后判断有无按键输入单价,若无输入则继续显示初始化界面,若有输入则显示按键输入的数据,再经过数据处理计算出总价,并显示出总价为多少。4.2.3 信号处理模块流程图本设计中,信号处理模块的程序包括的功能包括初始化模块、接收传感器的信号、选择放大增益、启动模/数转换等,其中也要加入必要的延时程序。因此,可得流程图4-3:开始模/数转换信号放大启动信号处理置零键按下初始化图4-3 信号处理流程图如图4-3,当程序开始工作时,首先对HX711的端口进行初始化,然后当有物体放在称重盘上,而且置零键按下后,HX711则开始工作,先对信号进行128倍增益的放大,然后再对放大后的模拟信号进行模/数转换。转换后的信号送给单片机,等待下一次的置零键按下,开始下一轮的信号处理。4.3 总结软件设计部分一定要灵活运用好模块化的编程思想,本设计中把一个大的程序拆分主程序部分、显示程序部分、信号处理程序部分,并把这三部分程序进一步拆分为各个小功能部分。这样不断拆分,不仅编程的时候结构清楚,而且可读性高,比较有利于后期的检查。23南京工业大学本科生毕业设计(论文)第五章 系统仿真及硬件调试5.1系统仿真5.1.1系统仿真图本仿真设计中,当系统开始工作时,先经过数据采集模块,获取信号。再经过A/D转换模块将模拟信号转换为数字信号。所得的数字信号输入单片机中,进行数据判断,如果重量不在量程内,则启动报警电路开始报警,否则开始数据处理。然后再将处理好的数据输入到显示模块中,显示出重量。接着再按下按键模块,输入单价。输入完毕后,按“=”键,则单片机中开始计算总价,并输送到显示模块中显示出来。具体的仿真电路图如图5-1:图5-1 系统整体仿真图5.1.2 系统仿真结果仿真过程中,由于protues元件库中没有压力传感器,信号采集模块是使用的滑动变阻器来代替的。也就是说,改变仿真图中的滑动变阻器的大小,相当于改变称重物体的重量。实际仿真中,通过改变滑动变阻器的大小,来改变输入电压的大小。通过测量不同电阻值下的输入与输出的值,来分析实验的结果。 图5-2 仿真一 输入为0.05V时的输入与输出图当输入为0.05V时,相当于物体重量50g,此时输出重量显示为0.051kg,输入价格为20,再按下“=”,则可显示出总价,总价为1.0元。 图5-3 仿真二 输入为0.10V时的输入与输出图当输入为0.1V时,相当于物体重量100g,此时输出重量显示为0.102kg,输入价格为20,再按下“=”,则可显示出总价,总价为2.0元。多次改变滑动变阻器的电阻值,并测得仿真结果如下表5-1:表5-1 系统仿真结果输入、输出及误差对照表数据序列输入电压值仿真输出值输出误差相对误差一0.10V0.116V0.016V16%二0.35V0.348V-0.002V0.57%三0.45V0.445V0.005V1.1%四0.50V0.503V0.003V0.6%五0.60V0.599V-0.001V0.17%5.1.3 系统仿真误差分析本设计中的仿真结果如上所示,当测量输入较大时,输出数据误差在理想范围内,但是当测量的输入数据较小时,输出的误差就偏大,脱离了理想的误差范围。产生这样的误差的原因分析如下:1) 仿真电路中使用的A/D转换器是ADC0832,属于8位转换器,可能精度没有达到要求的那么高;2) 使用滑动变阻器做信号的输入,可能对信号输入的可靠性有影响;3) 单片机处理数据时,数据处理的公式不准确,没有达到精度要求。5.2 系统整体调试5.2.1 系统实物调试结果图实物调试过程中,先接通电源,显示器显示开始界面“Welcome to use!”,然后显示初始化界面“+WEI |PRI | MON”,“0.000| . | . ”。在按下“A”键,完成“去皮”功能后,将要测量的物体放到托盘上,随后单片机进行数据判断,如果重量不在量程内,则启动报警电路开始报警,否则开始数据处理。处理好的数据就在显示器上显示出来。再通过键盘输入单价,按下“D”键,计算总价,并在显示器上显示。 图5-4 系统开机界面 图5-5 系统初始化图实物测量使用的是怡宝555ml纯净水来做参照物的,瓶身重量为16克左右,理论重量为571g,实际测得重量为573g,在误差范围之内。实物测量图如图5-6:图5-6 系统调试结果图多次放不同重量的物体,并测得结果如表5-2:数据序列表5-2 实物调试结果输入、输出及误差对照表理论值实际值误差相对误差一13g0.012kg-1g7.6%二121g0.121kg0g0.0%三242g0.241kg-1g0.4%四363g0.361kg-2g0.55%五993g1.004kg11g1.1%5.2.2 系统实物调试误差分析:本设计中的实物测量结果如上所示,与仿真结果相似,当测量输入较大时,输出数据误差在理想范围内,但是当测量的输入数据较小时,输出的误差就偏大,脱离了理想的误差范围。产生这样的误差的原因分析如下:1) 实物上使用的托盘,使测量不稳定,对测量有一定的影响;2) 单片机在数据处理时,没有达到指定的精度,还需不断的调试;3) 实物中导线使用过多,对信号产生干扰;4) 校准调试时,选取的参照物存在重量不准确。27南京工业大学本科生毕业设计(论文)总 结现在社会们随着传感器技术、电子技术的不断发展,电子秤技术也随之发生着巨大的变化,传统的称重仪器将渐渐的被这些智能的。仪器所取代。智能仪器的飞速发展,主要得益于单片机,它可以执行很多的功能。其中另一个不容忽视的部件是传感器,它相当于人的“五官”,可以采集一些普通仪器无法测量到的信号,并将其转换为可用的信号,它的作用越来越重要。因此,要想很好的完成本次设计的各项指标要求,必须先对单片机、传感器等模块的知识进行详细的学习了解。最终经过不断的查阅资料,多方面的了解关于本次设计的一些知识,成功的完成了本设计的硬件及软件调试任务,并且能够满足设计的各项指标要求。通过本次设计,我收获到了很多知识。熟悉了STC89C52单片机的工作原理、功能特性以及接口电路的使用方法;通过分析数据采集模块,能够对A/D转换模块、传感器模块在数据转换、传输方面有了一定的认识;详细了解了键盘及显示器电路的功能特性,能够知晓相关器件的优劣情况;能够独立的完成程序的设计,学会了分模块、分层次的设计思路。但是同时,也发现了本次设计及自身还存在一些缺点:1、系统设计没有完善,有待优化。电路中一些模块没有设置保护电路;2、电路设计过程中没有对各种因素考虑周全。比如传感器的自重、振动、参考物的重量是否准确等;3、电路扩展功能较少。只扩展了报警电路,还可以扩展类似语音播报、日历等模块;4、自己动手操作能力有待加强,电子秤的精度有待提高。几个月的努力,我不仅收获了知识、能力,也发现了缺点,这些都是我挥之不去的财富,对我今后的工作和学习都将会起着积极的影响。29参考文献参考文献:1 康华光.电子技术基础模拟部分M. 北京:高等教育出版社,2006.2 康华光.电子技术基础数字部分M. 北京:高等教育出版社,2006.3 邱关源.电路(第四版)M.北京:高等教育出版社,2010 .4 李广弟 朱月秀 冷祖祁.单片机基础 (第3版)M.北京:北京航天航空大学出版社,2007.5 凌志浩.智能仪表原理与设计技术M.上海:华东理工大学出版社,2003.86 孟立凡,郑宾.传感器原理及技术M.北京:国防工业出版社,2005.7 韩九强,周杏鹏. 传感器与检测技术M. 北京:清华大学出版社 2010.8 刘鲲,孙春亮. 单片机C语言入门M. 北京: 人民邮电出版社,2008.9 杨欣、莱诺克斯(Len D M Nokes)、王玉凤.电子设计从零开始(第2版) M 清华大学出版社 2010.10 程林. 超省电型电子秤的设计方案J. 福建省计量科学技术研究所. 2008,(3):49 11 郭丹.电子秤的发展动态与鉴定排障J.科技风 2013,(17):24512 白云飞.电子秤的发展现状和趋势J.管理观察 2010,(5):25613 戴夫马修(美国).衡器的发展J.衡器,2013,(8):535514 孙希.基于单片机控制的电子秤J.网络财富,2010,(19):757615 林志航. 太阳能电子秤设计N. 仲恺农业工程学院学报,2013,26(2):535516 杨柯. 智能网络电子计价秤P. 中国专利:CN201795848U,2011.17 罗及红. 高精度电子秤的设计J. 计算机测量与控制,2010, 18(8):566418 潘奇浩. 电子秤的电路板防水结构 P. 中国专利:CN200986465,200719 Lou E,Raso V J,Durdle N G,et al.An electronically integrated load cellIEEE Transactions on Instrumentation and Measurement,2011,9(2):23224020 Weiss R,Fong AKH,Kretsch MJ.Adapting ProNutra to interactivey track food weights from an electronic scale using ProNEssyJ.Journul of food composition and analysis.2009.16(3):157165.31致谢致 谢经过一学期左右的时间,我的毕业设计终于顺利完成。通过这次毕业设计,我收获颇多。不仅对我大学四年学习的知识做了一次回顾,更加深了对传感器模块、单片机处理系统等方面的理解。此外,还提高了我的动手实践能力,能够自己动手焊接电路板。不仅如此,我还在其中学会了一些做人的道理,那就是不管以后做什么工作,只有全身心的投入,才能把这件事做好。这些种种的收获,对我日后的工作和学习都将产生极大的作用。因此,在此我要特别的感谢我的学校,感谢她四年来对我的栽培,是她给我一个这么好的锻炼机会和平台。此外,我还要特别的感谢我的指导老师张畅老师。从拿到课题开始,到最后完成毕业设计,张畅老师都非常的热情、认真负责,经常找我们讨论课题内容,帮我们解除疑惑。在此,我衷心的感谢张畅老师的支持和帮助。最后,我要感谢大学四年陪伴我的老师和同学们,他们也经常在我需要帮助的时候,伸出援助之手。我还要感谢我的父母,感谢他们这么多年含辛茹苦的把我培养长大,谢谢你们!31附录附 录主程序:#include main.h#include LCD1602.h#include HX711.hunsigned long HX711_Buffer = 0;unsigned int Weight_Maopi = 0,Weight_Shiwu = 0;char Price_Count = 0;unsigned char KEY_NUM = 0;unsigned char Price_Buffer3 = 0x00,0x00,0x00;unsigned long Money = 0;bit Flag_OK = 0;/*/主函数/*void main()Init_LCD1602();/初始化LCD1602LCD1602_write_com(0x80);/指针设置LCD1602_write_word(Welcome to use! );/开机画面第一行Delay_ms(2000); /延时2sloop:Price_Count = 0;Price_Buffer0 = 0;Price_Buffer1 = 0;Price_Buffer2 = 0;Flag_OK = 0;LCD1602_write_co
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!