基于单片机的电子秤设计.doc_第1页
基于单片机的电子秤设计.doc_第2页
基于单片机的电子秤设计.doc_第3页
基于单片机的电子秤设计.doc_第4页
基于单片机的电子秤设计.doc_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 毕业设计论文基于单片机的电子秤设计基于单片机的电子秤设计系 别: 机电工程系专业名称: 自动化学 号: 学生姓名: 黄金榕指导教师: 刘保军指导单位: 电子科技大学中山学院机电工程系完成时间: 2010 年 5 月 8 日电子科技大学中山学院教务处制发电子科技大学中山学院毕业设计(论文)任务书题目名称基于单片机的电子秤设计设计(撰写)内容基于某种型号的单片机,设计制作一款电子秤。设计要求如下:(1)进行功能需求分析,提出多种方案,并确定合理可行的方案;(2)选择单片机,并设计以单片机为核心的控制模块;(3)设计控制系统电源模块;(4)选用显示方案,设计显示系统及键盘电路,完成人机交互界面;(

2、5)选用合适的传感器,设计采样网络;(7)设计合适的算法,对采集到的数据进行噪声过滤(8)加入调零功能。(9)校准电子称。(10)控制方案合理、设计图纸及文字资料应规范,结论简练准确,系统应具备便携性性、可靠性和经济性。预期目标设计目的是为了学习和巩固知识,提高对所学应用基本理论分析和解决实际问题的能力,应设计并制作实际的模型实现电子秤要求的功能,从而达到并熟悉一个产品完整的开发流程和具体内容, 提高实践应用能力。成果形式1、毕业设计论文;2、实物模型;3、C 语言软件程序;设计(撰写)地点电子科技大学中山学院起止时间2009 年 10 月 20 日至 2010 年 5 月 8 日指导单位电子

3、科技大学中山学院机电工程系指导教师年 月 日审核意见审核签名年 月 日电子科技大学中山学院毕业设计(论文)成绩评定表设计(撰写)过程成绩评语:【填写说明】:要求在学生答辩前完成,要实事求是的准确评价学生在毕业设计(论文)过程中充分理解题目内容,提出、论证、实施、总结问题解决方案的工作量、学术水平和成果价值。指导教师评分满分 50 分,占毕业设计(论文)总成绩的 50。 指导教师: 年 月 日论文评阅成绩评语:【填写说明】:要求在学生答辩前完成,要准确的基于设计内容评价论文工作量、学术水平、成果价值,对论文撰写的规范性予以评述。评阅教师评分满分 20 分,占毕业设计(论文)总成绩的 20。 评阅

4、教师: 年 月 日论文答辩成绩评语:【填写说明】:本栏目由答辩委员会(小组)认真阅读论文的基础上,考察学生在答辩现场的表现,对其掌握“基础理论和技能” 、 “新技术” 、 “新方法” 、 “论文报告水平” 、 “快速理解问题实质” 、 “简明准确回答问题”等予以评价,并给出成绩。答辩成绩满分 30 分,占毕业设计(论文)总成绩的 30。 答辩组长: 年 月 日总分审核人: 年 月 日基于单片机的电子秤设计基于单片机的电子秤设计摘 要电子秤是将检测与转换技术、计算机技术、信息处理、数字技术等技术综合一体的现代新型称重仪器。它与我们日常生活紧密结合成为一种方便、快捷、称量精确的工具,广泛应用于商业

5、、工厂生厂、集贸市场、超市、大型商场、及零售业等公共场所的信息显示和重量计算。电子称主要以单片机作为中心控制单元,通过称重传感器进行模数转换单元,在配以键盘、显示电路及强大软件来组成。电子称不但计量准确、快速方便,更重要的自动称重、数字显示,对人们生活的影响越来越大,广受欢迎。本系统针对电子称的自动称重、数据处理等进行了设计和制作。为了阐明用单片机是如何对采样数据进行处理,对数据的采集和转换、计算问题进行了研究,讨论了单片机控制系统中关键的计算问题。本文在给出智能电子称硬件设计的基础上,详细分析了电子称的软件控制方法。单片机控制的电子称结构简单,成本低廉,深受人们的喜爱,本文将对此进行详细讨论

6、。关键词:电子称;单片机;称重传感器 Electrnoic Scale Design Based on MCUAbstractIntelligent electronic scale is the detection and conversion technology, computer technology, information processing, digital technology, an integrated modern technology of new weighing equipment. It is closely integrated with our daily

7、lives into a convenient, fast, precision weighing instrument, widely used in commercial, plant health plant, country markets, supermarkets, shopping malls, and retail and other public places, information display and weight. Intelligent Electronics said the key to SCM as the central control unit, thr

8、ough the weighing sensor analog-digital conversion unit, in the accompanied keyboard, display circuit and powerful software to component. Said not only accurate measurement of the electronic, fast and convenient, more importantly, automatic weighing, statistics show that by the majority of users. In

9、telligent Electronics said that as easy to carry, easy to use, the impact on peoples lives more and more. This system is known for the electronic automatic weighing and data processing of research. To illustrate how to use the MCU is sampling data processing, data acquisition and conversion, computa

10、tional problems studied. Discuss the key SCM system calculation. This paper presented the hardware design of intelligent electronics that, based on detailed analysis of the electronic control, said the software. As the structure of microprocessor controlled electronics that simple, low cost and very

11、 popular, this will be discussed in detail. Keywords: electronic scale; MCU; Load sensor 目录1 绪 论 .11.1 称重技术和衡器的发展.11.2 电子秤的组成.21.2.1 电子秤的基本结构 .21.2.2 电子秤的工作原理 .21.2.3 电子秤的计量性能 .21.3 本设计思路 .32 系统方案论证与选型.52.1 控制器部分 .52.2 数据采集部分 .72.2.1 传感器的选择 .72.2.2 放大电路选择 .83 硬件设计.103.1 总体规划.103.2 主控制器电路.103.3 传感器放大

12、电路.113.4 显示电路.114 软件设计 .144.1 系统应用程序组成.144.2 主程序流程图.154.3 AD 采样程序块 .154.4 液晶显示程序块.164.5 称重数据处理技术.215 总结与展望 .23致 谢 .25参考文献 .26附录一 电路原理图 .27附录二 系统实物图 .281 1 绪绪 论论1.1 称重技术和衡器的发展称重技术自古以来就被人们所重视,作为一种计量手段,广泛应用于工农业、科研、交通、内外贸易等各个领域,与人民的生活紧密相连。电子秤是电子衡器中的一种,衡器是国家法定计量器具,是国计民生、国防建设、科学研究、内外贸易不可缺少的计量设备,衡器产品技术水平的高

13、低,将直接影响各行各业的现代化水平和社会经济效益的提高。电子秤的发展过程与其它事物一样,也经历了由简单到复杂,由粗糙到精密、由机械到机电结合再到全电子化、由单一功能到多功能的过程。特别是近 30 年以来,工艺流程中的现场称重、配料定量称重、以及产品质量的监测等工作,都离不开能输出电信号的电子衡器。这是由于电子衡器不仅能给出质量或重量信号,而且也能作为总系统中的一个单元承担着控制和检验功能,从而推进工业生产和贸易交往的自动化和合理化。近年来,电子秤已愈来愈多地参与到数据处理和过程控制中。现代称重技术和数据系统已经成为工艺技术、储运技术、预包装技术、收货业务及商业销售领域中不可缺少的组成部分。随着

14、称重传感器各项性能的不断突破,为电子秤的发展奠定了其础,国外如美国、西欧等一些国家在 2 0 世纪 6 0 年代就出现了 0 .1%称量准确度的电子秤,并在 7 0 年代中期约对 75%的机械秤进行了机电结合式的电子化改造。称重装置不仪是提供重量数据的单体仪表,而且作为工业控制系统和商业管理系统的一个组成部分,推进了工业生产的自动化和管理的现代化,它起到了缩短作业时间、改善操作条件、降低能源和材料的消耗、提高产品质量以及加强企业管理、改善经营管理等多方面的作用。称重装置的应用已遍及到围民经济各领域,取得了显著的经济效益。因此,称重技术的研究和衡器工业的发展各国都非常重视。50 年代中期电子技术

15、的渗入推动了衡器制造业的发展。60 年代初期出现机电结合式电了衡器以来,经过 40 多年的不断改进与完善,我国电子衡器从最初的机电结合型发展到现在的全电子型和数字智能型。现今电子衡器制造技术及应用得到了新发展。电子称重技术从静态称重向动态称重发展:计量方法从模拟测量向数字测量发展;测量特点从单参数测量向多参数测量发展,特别是对快速称重和动态称重的研究与应用。通过分析近年来电子衡器产品的发展情况及国内外市场的需求,电子衡器总的发展趋势是小型化、模块化、集成化、智能化;其技术性能趋向是速率高、准确度高、稳定性高、可靠性高;其功能趋向是称重计量的控制信息和非控制信息并重的“智能化”功能;其应用性能趋

16、向于综合性和组合性。电子秤是电了衡器中的一种,衡器是国家法定计量器具,是围计民生、国防建设、科学研究、内外贸易不可缺少的计量设备,衡器产品技术水平的高低,将直接影响各行各业的现代化水平和社会经济效益的提高。1.2 电子秤的组成1.2.1 电子秤的基本结构 电子秤是利用物体的重力作用来确定物体质量(重量)的测量仪器,也可用来确定与质量相关的其它量大小、参数、或特性。不管根据什么原理制成的电了秤均由以下三部分组成:(1) 承重、传力复位系统 它是被称物体与转换元件之间的机械、传力复位系统,又称电子秤的秤体,一般包括接受被称物体载荷的承载器、秤桥结构、吊挂连接部件和限位减振机构等。(2) 称重传感器

17、 即由非电量(质量或重量)转换成电量的转换元件,它是把支承力变换成电的或其它形式的适合于计量求值的信号所用的一种辅助手段。 按照称重传感器的结构型式不同,可以分直接位移传感器(电容式、电感式、电位计式、振弦式、空腔谐振器式等)和应变传感器(电阻应变式、卢表面谐振式)或是利用磁弹性、压电和压阻等物理效应的传感器。 对称重传感器的基本要求是:输出电量与输入重量保持单值对应,并有良好的线性关系;有较高的灵敏度;对被称物体的状态的影响要小;能在较差的工作条件下工作;有较好的频响特性;稳定可靠。 (3) 测量显示和数据输出的载荷测量装置 即处理称重传感器信号的电子线路(包括放人器、模数转换、电流源或电压

18、源、调节器、补尝元件、保护线路等)和指示部件(如显示、打印、数据传输和存贮器件等) 。这部分习惯上称载荷测量装置或二次仪表。在数字式的测量电路中,通常包括前置放大、滤滤、运算、变换、计数、寄存、控制和驱动显示等环节。1.2.2 电子秤的工作原理 当被称物体放置在秤体的秤台上时,其重量便通过秤体传递到称重传感器,传感器随之产生力一电效应,将物体的重量转换成与被称物体重量成一定函数关系(一般成正比关系)的电信号(电压或电流等) 。此信号由放大电路进行放大、经滤波后再由模数( A/D)器进行转换,数字信号再送到微处器的 CPU 处理,CPU 不断扫描键盘和各功能开关,根据键盘输入内容和各种功能开关的

19、状态进行必要的判断、分析、由仪表的软件来控制各种运算。运算结果送到内存贮器,需要显示时,CPU 发出指令,从内存贮器中读出送到显示器显示,或送打印机打印。一般地信号的放大、滤波、A/D 转换以及信号各种运算处理都在仪表中完成。1.2.3 电子秤的计量性能 电子秤的计量性能涉及的主要技术指标有:量程、分度值、分度数、准确度等级等。 (1) 量程:电子衡器的最大称量 Max,即电子秤在正常工作情况下,所能称量的最大值。 (2) 分度值:电子秤的测量范围被分成若干等份,每份值即为分度值。用 e 或 d 来表示。 (3) 分度数:衡器的测量范围被分成若干等份,总份数即为分度数用 n 表示。 电子衡器的

20、最大称量 Max 可以用总分度数 n 与分度值 d 的乘积来表示,即Max=nd (4) 准确度等级国际法制计量组织把电子秤按不同的分度数分成 T、II、III、四类等级,分别对应不同准确度的电子秤和分度数 n 的范围,如表 1 所示:表 1 不同准确度的电子秤和分度数1.3 本设计思路目前,台式电子秤在商业贸易中的使用已相当普遍,但存在较大的局限性:体积大、成本高、携带不便、应用场所受到制约。现有的便携秤为杆秤或以弹簧、拉伸变形来实现计量的弹簧秤,居民用户使用的基本是杆秤。弹簧盘秤制造工艺要求较高,弹簧的疲劳问题无法彻底解决,一旦超过弹簧弹性限度,弹簧秤就会产生很大误差,以至损坏,影响到称重

21、的准确性和可靠性,只是一种暂时的代用品,也被列入逐渐取消的行列。微控制器技术、传感器技术的发展和计算机技术的广泛应用,电子产品的更新速度达到了日新月异的地步。本系统在设计过程中,除了能实现系统的基本功能外,还增加了打印和通讯功能,可以实现和其他机器或设备(包括上位 PC 机和数据存储设备)交换数据,除此之外,系统的微控制器部分选择了兼容性比较好的 51 系列单片机,在系统更新换代的时候,只需要增加很少的硬件电路,甚至仅仅删改系统控制程序就能够实现。另外由于实际应用当中,称可以有一定量的过载,但不能超出要求的范围,为此还设计了过载提示。综上所述,本设计的主要思路是:利用压力传感器采集因压力变化产

22、生的电压信号,标志及等级电子秤分类分度数范围特种准确度基准衡器n 100000高准确度精密衡器10000 n100000中准确度商业衡器1000 n10000普通准确度粗衡器100n1000经过电压放大电路放大,然后再经过模数转换器转换为数字信号,最后把数字信号送入单片机。单片机经过相应的处理后,得出当前所称物品的重量及总额,然后再显示出来。主要技术指标为:称量范围 0600g,分度值 1kg,精度等级 III 级,电源 AC220V。这种高精度智能电子秤体积小、计量准确、携带方便,能够满足商业贸易和居民家庭的使用需求。2 2 系统方案论证与选型系统方案论证与选型按照本设计功能的要求,系统由

23、5 个部分组成:控制器部分、测量部分、数据显示部分、键盘部分、和电路电源部分,系统设计总体方案框图如图 1 所示。图 1 设计思路框图测量部分是利用称重传感器检测压力信号,得到微弱的电信号(本设计为电压信号) ,而后经处理电路(如滤波电路,差动放大电路, )处理后,送单片机中的 A/D 转换器,将模拟量转化为数字量输出,控制器接受来自 A/D 转换器输出的数字信号,经过复杂的运算,将数宁信号转换为物体的实际重量信号,并将其送到显示单元中。2.1 控制器部分本设计由于要求必须使用单片机作为系统的主控制器,而且以单片机为主控制器的设计,可以容易地将计算机技术和测量控制技术结合在一起,组成新型的只需

24、要改变软件程序就可以更新换代的“智能化测量控制系统” 。这种新型的智能仪表在测量过程自动化、测量结果的数据处理以及功能的多样化方面,都取得了巨大的进展。再则由于系统没有其它高标准的要求,又考虑到本设计中程序部分比较大,根据总体方案设计的分析,设计这样一个简单的的系统,可以选用带 A/D 转换器的单片机,由于应用程序不大,应用程序直接存储存片内,不用在外部扩展存储器,这样电路也可简化。STC 公司的 12 系列的单片机都可使用,在这里选用 STC 生产的 STC12C5A60S2 单片机。STC12C5A60S2 与MCS-51 相比有如下优势:第一, 指令集与 MCS-51 系列单片机完全兼容

25、第二, 片内存储器采用闪速存储器,并且支持 SPI-ISP 在线编程,使程序写入更加方便,提高了调试效率,缩短了开发周期;第三, 提供了更小尺寸的芯片,使整个硬件电路体积更小。此外价格低廉、性能比较稳定的 MPU,具有 64K8ROM、1RAM、2 个 16 位定时计数器、5 个 8 位 I/O 接口。这些配置能够很好地实现本仪器的测量和控制要求。第四, 单指令周期,运行速度高。第五, 自带上电复位电路,可减低单片机外围电路的复杂程度。第六, 内置 8 路 10 位高速 A/D 转换,转换速度 25 万次/秒。经过放大电路的信号是模拟信号即模拟量,需要把它变成数字量才能送入单片机控制系统受理,

26、所以需要有 A/D 转换电路。考虑到其他部分所带来的干扰 ,8 位 A/D 无法满足系统精度要求。作为一般小商品称重需求,我们只需要选择 10 位的 A/D 转换器就可以了。 最后我选择了 STC12C5A60S2 这个比较常用的单片机来实现系统的功能要求。STC12C5A60S2 内部带有 60KB 的程序存储器,并且带有 8 路 10 位精度的 A/D 转换器,基本上已经能够满足我们的需要。STC12C5A60S2 单片机的引脚图如图 2 所示。图 2 STC12C5A60S2 单片机的引脚图2.2 数据采集部分电子秤的数据采集部分主要包括称重传感器、处理电路电路,因此对于这部分的论证主要

27、分两方面。2.2.1 传感器的选择在设计中,传感器是一个十分重要的元件,因此对传感器的选择也显的特别的重要,不仅要注意其量程和参数,还有考虑到与其相配置的各种电路的设计的难以程度和设计性价比等等。传感器量程的选择可依据秤的最大称量值、选用传感器的个数、秤体的自重、可能产生的最人偏载及动载等因素综合评价来确定。一般来说,传感器的量程越接近分配到每个传感器的载荷,其称量的准确度就越高。但在实际使用时,由于加在传感器上的载荷除被称物体外,还存在秤体自重、皮重、偏载及振动冲击等载荷,因此选用传感器量程时,要考虑诸多方面的因素,保证传感器的安全和寿命。传感器量程的计算公式是在充分考虑到影响秤体的各个因素

28、后,经过大量的实验而确定的。本设计要求称重范围 0-600g,重量误差不大于 0.1kg。为保证电子秤称量结果的准确度,克服传感器在低量程段线性度差的缺点。传感器的量程应根据皮带秤的最大流量来选择。在实际工作中,要求称重传感器的有效量程在20%80%之间线性好,精度高。重量误差应控制存0.OIKg,又考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,根据设计需要,确定传感器的额定载荷为1Kg,允许过载为 150%F.S,精度为 0.05%,最大量程时误差0.1kg,可以满足本系统的精度要求。综合考虑,本设计采用 SP20C-G501 电阻应变式传感器,其最人量程为 1Kg.称重传感器由组

29、合式 S 型梁结构及金属箔式应变计构成,具有过载保护装置。由于惠斯登电桥具诸如抑制温度变化的影响,抑制干扰,补偿方便等优点,所以该传感器测量精度高、温度特性好、工作稳定等优点,广泛用于各种结构的动、静态测量及各种电子秆的一次仪表。该称重传感器主要由弹性体、电阻应变片电缆线等组成,其工作原理如图 3 所示。RdRaRcRbRes Bridge EinEout图 3 称重传感器原理图本设计的测量电路采用最常见的桥式测量电路,用到的是电阻应变传感器半桥式测量电路。它的两只应变片和两只电阻贴在弹性梁上,测量电阻随重力变化导致弹性梁应变而产生的变化。其测量原理:用应变片测量时,将其粘贴在弹性体上。当弹性

30、体受力变形时,应变片的敏感栅也随同变形,其电阻值发生相应变化,通过转换电路转换为电压或电流的变化。由于内部线路采用惠更斯电桥,当弹性体承受载荷产生变形时,输出信号电压可由下式给出:上式说明电桥的输出电压 V 和四个桥臂的应变片感受的应变量的代数和成正比。2.2.2 放大电路选择 称重传感器输出电压振幅范围 020mV。而 A/D 转换的输入电压要求为 02V,因此放大环节要有 100 倍左右的增益。对放大环节的要求是增益可调的(70150 倍) ,根据本设计的实际情况增益设为 100 倍即可,零点和增益的温度漂移和时间漂移极小。按照输入电压 20mV,分辨率 20000 码的情况,漂移要小于

31、1 旧。由于其具有极低的失调电压的温漂和时漂(lI.LV) ,从而保证了放大环节对零点漂移的要求。残余的一点漂移依靠软件的自动零点跟踪来彻底解决。稳定的增益量可以保证其负反馈回路的稳定性,并且最好选用高阻值的电阻和多圈电位器。 由称重传感器的称量原理可知,电阻应变片组成的传感器是把机械应变转换成R/R,而应变电阻的变化一般都很微小,例如传感器的应变片电阻值 120,灵敏系数K=2,弹性体存额定载荷作用下产生的应变为 l000,应变电阻相对变化量为:R/R=K=2100010-6 =0. 002 由上式可以看出电阻变化只有 0.24,其电阻变化率只有 0.2%。这样小的电阻变化既难以直接精确测量

32、,又不便直接处理。因此,必须采用转换电路,把应变计的R/R 变化转换成电压或电流变化,但是这个电压或电流信号很小,需要增加增益放大电路来把这个电压或电流信号转换成可以被 A/D 转换器接收的信号。在前级处理电路部分,我们考虑可以采用以下几种方案: 方案一:利用普通低温漂运算放大器构成前级处理电路; 普通低温漂运算放大器构成多级放大器会引入大量噪声。由于 A/D 转换器需要很高的精度,所以几毫伏的干扰信号就会直接影响最后的测量精度。所以,此种方案不宜采用。方案二:主要由高精度低漂移运算放大器构成差动放大器,而构成的前级处理电路;差动放人器具有高输入阻抗,增益高的特点,可以利用普通运放(如 OP0

33、7)做成一个差动放大器。一般说来,集成化仪用放大器具有很高的共模抑制比和输入阻抗,因而在传统的电路设计中都是把集成化仪器放人器作为前置放人器。然而,绝人多数的集成化仪器放大器,特别是集成化仪器放大器,它们的共模抑制比与增益相关:增益越高,共模抑制比越大。而集成化仪器放大器作为心电前置放大器时,由于极化电压的存在,前置放大器的增益只能在几十倍以内,这就使得集成化仪器放大器作为前置放大器时的共模抑制比不可能很高。有同学试图在前置放大器的输入端加上隔直电容(高通网络)来避免极化电压使高增益的前置放大器进入饱和状态,但由于信号源的内阻高,且两输入端不平衡,隔直电容(高通网络)使等共模干扰转变为差模干扰

34、,结果适得其反,严重地损害了放人器的性能。 为了实现信号的放人,其设计电路如图 4 所示:图 4 利用高精度低漂移运放设计的差动放大器1 前级采用运放 Al 和 A2 组成并联型差动放大器。理论上不难证明,存运算放大器为理想的情况下,并联型差动放人器的输入阻抗为无穷人,共模抑制比也为无穷人。更值得一提的是,在理论上并联型差动放人器的共模抑制比与电路的外围电阻的精度和阻值无关。2 阻容耦合电路放存由并联型差动放大器构成的前级放大器和由仪器放大器构成的后级放大器之间,这样可为后级仪器放大器提高增益,进而提高电路的共模抑制比提供了条件。同时,南于前置放大器的输出阻抗很低,同时又采用共模驱动技术,避免

35、了阻容耦合电路中的阻、容元件参数不对称(匹配)导致的共模干扰转换成差模干扰的情况发生。3 后级电路采用廉价的仪器放大器,将双端信号转换为单端信号输出。由于阻容耦合电路的隔直作用,后级的仪器放大器可以做到很高的增益,进而得到很高的共模抑制比。3 3 硬件设计硬件设计3.1 总体规划该系统采用应变片式传感器进行测量,得出模拟信号;再进行放大,然后送入单片机进行模数转换处理和数据处理。由传感器模块、主机接口模块、按键与显示模块组成。3.2 主控制器电路主控制器是 STC12C5A60S2 单片机,其外围电路简单,只需要加上晶振电路和电源就可以工作。主控制器电路如图 5 所示。图 5 主控制系统3.3

36、 传感器放大电路传感器放大电路由两级组成,前级由两个同相比例运算电路组成,后级是一个差动比例运算电路。传感器信号首先进过前级进行初步放大,接着进入后级。由于前级的对称性直接影响后级的共模抑制比,考虑到元件阻值的误差,R2,R4 选用多圈精密可调电阻。为了提高后级对共模信号的抑制,反馈电阻 R3 也采用精密多圈可调电阻。传感器放大电路如图 6 所示。图 6 传感器放大电路3.4 显示电路1602 液晶模块的引脚连线如图 7。其中,第 1、2 脚为液晶的驱动电源;第三脚 VL为液晶的对比度调节,通过在 VCC 和 GND 之间接一个 10K 多圈可调电阻,中间抽头接VL,可实现液晶对比度的调节;液

37、晶的控制线 RS、R/W、E 分别接单片机的P0.5、P0.6、P0.7;数据口接在单片机的 P2 口;BL+、BL-为液晶背光电源。图 7 1602 液晶模块的接线图1602 液晶模块的初始化过程:延迟 15ms写指令 38H(不检测忙信号)延迟 5ms写指令 38H(不检测忙信号)延迟 5ms写指令 38H(不检测忙信号)(以后每次写指令、读/写数据操作之前均需检测忙信号)写指令 38H:显示模式设置写指令 08H:显示关闭写指令 01H:显示清屏写指令 06H:显示光标移动设置写指令 0CH:显示开及光标设置1602 液晶模块的读操作时序如图 8 所示。图 8 1602 液晶模块的读操作

38、时序1602 液晶模块的写操作时序如图 9 所示。图 9 1602 液晶模块的写操作时序4 4 软件设计软件设计4.1 系统应用程序组成本设计采用 C 语言编程,编译环境为 keil UV3。keil c51 是美国Keil Software 公司出品的51 系列兼容单片机C 语言软件开发系统,和汇编相比,C 在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil c51 软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows 界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到keil c51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑

39、,容易理解。在开发大型软件时更能体现高级语言的优势。Keil C51 可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE 本身或其它编辑器编辑C 或汇编源文件,然后分别有C51 及A51 编辑器编译连接生成单片机可执行的二进制文件(.HEX),然后通过单片机的烧写软件将HEX 文件烧入单片机内。软件主要三个方面:一是初始化系统;二是按键检测;三是数据采集、数据处理并进行显示。这三个方面的操作分别在主程序中来进行。程序采用模块化的结构,这样程序结构清楚,易编程和易读性好,也便于调试和修改。程序结构如图10所示。图 10 程序结构4.2 主程序流程图系统程序固化在STC12C5

40、A60S2内部的flash存储器中,分为主程序和若干子程序。主程序的功能是系统初始化,管理和调用各个子程序。本设计的程序流程图如图11所示。图 11 程序流程图4.3 AD 采样程序块本文设计的 STC12C5A60S2 片内 AD 程序如下:#include config.h/- / SPEED1 SPEED0 A/D 转换所需时间#define AD_SPEED 0 x60 / 0110,0000 1 1 90 个时钟周期转换一次, / CPU 工作频率 21MHz 时 A/D 转换速度约 300KHz/#define AD_SPEED 0 x40 /0100,0000 1 0 140 个

41、时钟周期转换一次/#define AD_SPEED 0 x20 /0010,0000 0 1 280 个时钟周期转换一次/#define AD_SPEED 0 x00 /0000,0000 0 0 420 个时钟周期转换一次/-unsigned int get_AD_result(unsigned char channel) unsigned char AD_finished=0; /存储 A/D 转换标志 ADC_RES = 0; /A/D 转换结果高 8 位 ADC_RESL = 0; /A/D 转换结果低 2 位 channel &= 0 x07; /0000,0111 清 0

42、高 5 位 ADC_CONTR = AD_SPEED; _nop_();ADC_CONTR|=0 xE0; /1110,0000 清 ADC_FLAG,ADC_START 位和低三位 ADC_CONTR |= channel; /选择 A/D 当前通道 _nop_(); ADC_CONTR |= 0 x80; /启动 A/D 电源 delay(1); /使输入电压达到稳定 ADC_CONTR |= 0 x08; /0000,1000 令 ADCS = 1, 启动 A/D 转换 AD_finished = 0; while (AD_finished = 0 ) /等待 A/D 转换结束 AD_f

43、inished = (ADC_CONTR & 0 x10); /0001,0000 测试 A/D 转换结束否 ADC_CONTR &= 0 xE7; /1111,0111 清 ADC_FLAG 位, 关闭 A/D 转换 return (ADC_RES2|ADC_RESL);/返回转换后的结果4.4 液晶显示程序块本文设计的 1602 液晶操作程序如下:/* 函 数 名:WriteDataLCD() 功 能:向 1602 写数据 说 明: 入口参数:WDLCD 返 回 值:无 */void WriteDataLCD(unsigned char WDLCD)ReadStatusLC

44、D(); /检测忙LCD_Data = WDLCD;LCD_RS = 1;LCD_RW = 0;LCD_E = 0; /若晶振速度太高可以在这后加小的延时LCD_E = 0;LCD_E = 0; /延时LCD_E = 1;/* 函 数 名:WriteCommandLCD() 功 能:向 1602 写指令 说 明: 入口参数:WDLCD,BuysC 返 回 值:无 */void WriteCommandLCD(unsigned char WCLCD,BuysC) /BuysC 为 0 时忽略忙检测if (BuysC) ReadStatusLCD(); /根据需要检测忙LCD_Data = WCL

45、CD;LCD_RS = 0;LCD_RW = 0; LCD_E = 0;LCD_E = 0;LCD_E = 0;LCD_E = 1; /* 函 数 名:ReadDataLCD() 功 能:从 1602 读数据 说 明: 入口参数:无 返 回 值:LCD_Data */unsigned char ReadDataLCD(void)LCD_RS = 1; LCD_RW = 1;LCD_E = 0;LCD_E = 0;LCD_E = 0;LCD_E = 1;return(LCD_Data);/* 函 数 名:ReadStatusLCD() 功 能:读取 1602 状态 说 明:如果为忙,则一直等到非

46、忙为止 入口参数:无 返 回 值:LCD_Data */unsigned char ReadStatusLCD(void)LCD_Data = 0 xFF; LCD_RS = 0;LCD_RW = 1;LCD_E = 0;LCD_E = 0;LCD_E = 0;LCD_E = 1;delay_18B20(200); / Delay5Ms(); /检测忙信号 proteus 仿真时,延迟 5MS,关闭 while 循环while (LCD_Data&Busy) /硬件使用时,不延迟,打开 while 循环return(LCD_Data);/* 函 数 名:LCDInit() 功 能:16

47、02 初始化 说 明: 入口参数:无 返 回 值:无 */void LCDInit(void)LCD_Data = 0;WriteCommandLCD(0 x38,0); /三次显示模式设置,不检测忙信号Delay5Ms(); WriteCommandLCD(0 x38,0);Delay5Ms(); WriteCommandLCD(0 x38,0);Delay5Ms(); WriteCommandLCD(0 x38,1); /显示模式设置,开始要求每次检测忙信号WriteCommandLCD(0 x08,1); /关闭显示WriteCommandLCD(0 x01,1); /显示清屏Write

48、CommandLCD(0 x06,1); / 显示光标移动设置WriteCommandLCD(0 x0C,1); / 显示开及光标设置/* 函 数 名:DisplayOneChar() 功 能:按指定位置在 1602 显示一个字符 说 明:X 为列,Y 为行,DData 为字符 入口参数:X,Y,DData 返 回 值:无 */按指定位置显示一个字符void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData)Y &= 0 x1;X &= 0 xF; /限制 X 不能大于 15,Y 不能大于

49、1if (Y) X |= 0 x40; /当要显示第二行时地址码+0 x40;X |= 0 x80; /算出指令码WriteCommandLCD(X, 0); /这里不检测忙信号,发送地址码WriteDataLCD(DData);/* 函 数 名:DisplayListChar() 功 能:按指定位置在 1602 显示一串字符 说 明:X 为列,Y 为行,*DData 为字符串 入口参数:X,Y,DData 返 回 值:无 */void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData)uns

50、igned char ListLength;ListLength = 0;Y &= 0 x1;X &= 0 xF; /限制 X 不能大于 15,Y 不能大于 1while (DDataListLength!=0) /若到达字串尾则退出if (X = 0 xF) /X 坐标应小于 0 xFDisplayOneChar(X, Y, DDataListLength); /显示单个字符ListLength+;X+;/* 函 数 名:Delay5Ms() 功 能:5ms 延时 说 明: 入口参数:无 返 回 值:无 */void Delay5Ms(void)unsigned int Te

51、mpCyc = 5552;while(TempCyc-);/* 函 数 名:Delay400Ms() 功 能:400ms 延时 说 明: 入口参数:无 返 回 值:无 */void Delay400Ms(void)unsigned char TempCycA = 5;unsigned int TempCycB;while(TempCycA-)TempCycB=7269;while(TempCycB-);4.5 称重数据处理技术测量精度和可靠性是电子秤设计的关键,引入软件数据处理技术,可以克服或弥补包括传感器在内的各测量环节硬件本身的缺陷或弱点,使原来靠硬件电路难以实现的信号处理可以得到解决,提

52、高电子秤的综合性能。在电子称重系统中,主要的数据处理技术有:无效物理量的消除、零漂处理、标度变换技术、非线性补偿技术、数字滤波技术等。(1)无效物理量的消除在称重系统中,称重传感器输出的信号是秤台、支架和被测物之和的转换信号,实际所要测的是被测物的重量,因此,秤台、支架等是无效的物理量,在信号处理过程中要用软件方法来消除。(2)零漂处理零位稳定是影响电子秤精度非常重要的因素,因受温度或其它因素影响将引起零位不稳定,这种现象称为零漂。由于零漂的影响,零输入信号时,输出可能不为零,为消除这个零位漂移值,采用零位补偿技术,零位补偿就是把这个零位漂移值储存起来,每一数据采集时减去这个数值,得到的数值就

53、是消除零漂的有效信号。(3)标度变换在实际测量中,被测模拟信号被检测出来并转换成数字量后,需要转换成操作人员所熟悉的工程量。因为,被测对象经传感器、A/D 转换后得到的数字量是一系列的数码,这些数码值并不等于原来带有量纲的参数值,它仅仅对应于参数的大小,因此,必须把它转换成带有量纲的数值后才能显示或打印输出,这种转换就是工程量变换,又称标度变换。(4)非线性补偿在检测中,由于检测传感器的输入输出特性往往只在一定范围内近似呈线性,而在某些范围内则明显呈非线性,同时,传感器具有离散性,还可能有温漂、滞后等。在信号处理过程中也常用软件处理方法来补偿和校正以上误差。常用的非线性补偿处理的方法有三种:分

54、段线性插值法、曲线拟合法、查表法。对于不太弯曲的输入输出曲线,可采用线性插值法,对于很弯曲的输入输出曲线,可采用二次抛物线插值法,对于不规则的输入输出曲线,可采用分段曲线拟合法。对于用应变称重传感器的称重系统来说,由于其非线性度不是很大,所以常采用分段线性插值法。(5)数字滤波技术实际测量中,由于被测对象的环境比较恶劣,干扰源比较多,各种电子秤在称量过程中,来自传感器的有用信号往往混杂有各种频率的干扰信号。为了抑制某些干扰信号,通常在称重仪表的信号入口处采用 RC 低通滤波器,该种滤波器能抵制高频干扰信号,但对低频干扰信号的滤波效果差,而数字滤波却可以对极低频率的干扰信号迸行滤波。数字滤波就是

55、在软件设计时采用一定的计算方法对输入的信号进行数学处理,减少干扰信号在有用信号中的比重,提高信号的真实性,它不需要增加硬件,只需根据预定的滤波算法编制相应的程序,即可达到信号滤波的目的。数字滤波可以对各种干扰信号进行滤波,其稳定性高,滤波参数修改方便,一种滤波程序可供多个通道共用。在称重系统中常用的数滤波技术有:程序判断滤波法、平滑滤波法、中位值滤波法等。实际应用中可根据情况选择其中一种或几种滤波方法的组合,对采集信号实现数字滤波。本设计对五种数据处理技术进行了结合运用。5 5 总结与展望总结与展望智能电子秤以具有良好的可靠性、准确性、技术先进性和结构简单等特点,受到广大用户的青睐。在商业活动

56、中用途越来越广,给人们的经济生活带来了便利。本文采用 STC12C5A60S2 单片机计的电子计重秤, 无论是计量精度, 还是稳定性都满足国家对 A 级电子秤的要求, 它具有较好的标定校准方法, 性能稳定, 操作简单, 价格低廉。该电子秤集传感器技术、微计算机技术、数字显示技术于一体、其反应灵敏、准确度高、显示直观,便于使用。通过硬件的少量扩展和软件的修改, 能设计出性能优越的计价秤、电子台秤等, 满足各行各业对现代电子衡器的需求。另外稍加扩展,该电子秤还可与其它生产质量管理系统项连接,具有推广应用价值。电子秤不仅要向高精度、高可靠方向发展, 而且更需向多种功能的方向发展。据悉, 目前电子秤的

57、附加功能主要有以下几种:(1) 电子秤附加了处理机构计算机信息补偿装置, 可以进行自诊断、自校正和多种补偿计算和处理。(2)具有皮重、净重显示等特种功能。电子秤有些已具备了动物称量模式, 即通过进行算术平均、积分处理和自动调零等方法, 消除上述的误差。(3)附加特殊的数据处理功能。目前的电子秤有附加多种计算和数据处理功能, 以满足多种使用的要求。下面就电子秤软件组成部分展望一下它的发展:(1) 智能化:本系统中虽然利用单片软件实现一些简单的功能,我们可以将其与电子计算机组合,开发称重用计算机,利用计算机功能使电子秤具有推理、判断、自诊断、自适应、自组织等功能。(2) 综合性:本系统中虽然利用软件实现称重显示,但远远不够,电子称重技术发展规律就是不断的加强基础扩大应用,扩展新技术领域,向相邻学科和行业渗透,综合各种技术去解决称重计量、自

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论