毕业设计(论文)基于AT89C52单片机的电子秤设计.doc

上传人:文库蛋蛋多 文档编号:3978798 上传时间:2023-03-30 格式:DOC 页数:24 大小:552KB
返回 下载 相关 举报
毕业设计(论文)基于AT89C52单片机的电子秤设计.doc_第1页
第1页 / 共24页
毕业设计(论文)基于AT89C52单片机的电子秤设计.doc_第2页
第2页 / 共24页
毕业设计(论文)基于AT89C52单片机的电子秤设计.doc_第3页
第3页 / 共24页
毕业设计(论文)基于AT89C52单片机的电子秤设计.doc_第4页
第4页 / 共24页
毕业设计(论文)基于AT89C52单片机的电子秤设计.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《毕业设计(论文)基于AT89C52单片机的电子秤设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于AT89C52单片机的电子秤设计.doc(24页珍藏版)》请在三一办公上搜索。

1、 目录摘 要IABSTRACTII1 设计任务与要求11.1设计任务11.2设计思路11.3技术指标12 方案设计与论证22.1 方案一22.2方案二23 电子元器件的选取33.1传感器的选择33.2运算放大器的选择33.3模数转换(A/D)芯片的选取33.4显示器的选择34 各硬件模块的具体实现方案44.1电源模块44.2传感器模块44.3差动放大电路74.4 A/D转换84.5显示电路104.6工作电路115 系统软件设计115.1电子秤的信号处理流程125.2 软件流程图126 系统功能13总 结14参 考 文 献15致 谢16附 录17摘 要本文描述了基于AT89C52单片机设计的电子

2、秤原理及实现方法。该系统由51单片机的改良版52单片机控制,通过液晶屏自动显示所称物体的重量。其电路构成主要有测量电路,差动放大电路,A/D转换,单片机控制电路、显示电路。测量电路利用电阻式应变器件将物体的重量信号转化成相应大小的电信号,通过差动放大电路将电信号放大到AD芯片能够识别的范围内从而能将电信号转换成对应的数字信号送给单片机处理,最终在液晶上显示所称物体的重量,系统通过软件实现自动换挡。经调试和测试,系统各项性能参数基本达到设计要求。关键词:称重传感器;差分放大器;A/D转换器;AT89C52单片机;1602液晶;自动换挡ABSTRACTThis article describes

3、the design of AT89C52 microcontroller based on electronic scale theory and implementation methods. The system consists of 51 single-chip microprocessor control improved version 52, the LCD displays that object automatically. Its components are measuring circuit, differential amplifiers, A/d conversi

4、on, the microcomputer control circuit, show circuit. The measuring circuit using resistance strain the weight of the device object into the appropriate signals to the size of the electrical signals through the differential amplifier will signal amplification to AD chip can identify scope so that the

5、y could be an electrical signal into a digital signal corresponding to the handle to the SCM in the LCD display that the weight of the object, the system automatically by software implementation. Through debugging, and testing, system performance parameters basic design index.Keywords: Weighing sens

6、ors; differential amplifier Module; A/D converter ;AT89C52; 1602 LCD ; Automatic shift1 设计任务与要求1.1设计任务1设计一个数字电子秤,测量范围分成四档,01.999Kg、019.99Kg、0199.9Kg、01999Kg。2用数字显示被测重量,小数点位置对应不同的量程显示。3具有量程自动切换功能。1.2设计思路用电子秤称重的过程是把被测物体的重量通过传感器转换成电压信号。由于这一信号通常都很小,需要进行放大,放大后的模拟信号经模/数变换转换成数字量,再通过显示器显示出重量。由于被测物体的重量相差较大,根

7、据不同的测量范围要求,可由电路自动切换量程,同时显示器的小数点数位对应不同量程而变化,即可实现电子秤的要求。1.3技术指标1.3.1电子秤工作原理当被称物体放置在秤体的秤台上时,其重量便通过秤体传递到称重传感器,传感器随之产生力电效应,将物体的重量转换成与被称物体重量成一定函数关系(一般成正比关系)的电信号(电压或电流等)。此信号由放大电路进行放大、经滤波后再由模/数(A/D)转换器进行转换,单片机对转换后的数字信号进行必要的判断、分析,再送到显示电路。1.3.2电子秤的计量性能 电子秤的计量性能涉及的主要技术指标有:量程、分度值、分度数、准确度等级等。 (1)量程:电子衡器的最大称量Max,

8、即电子秤在正常工作情况下,所能称量的最大值。 (2)分度值:电子秤的测量范围被分成若干等份,每份值即为分度值,用e或d来表示。 (3)分度数:衡器的测量范围被分成若干等份,总份数即为分度数用n表示, 电子衡器的最大称量Max可以用总分度数n与分度值d的乘积来表示,即:Max=n d。2 方案设计与论证2.1 方案一方案一方框图如图2.1所示通过秤重电桥产生电压信号,经放大电路把信号放大后输入A/D转换芯片TCL2543进行A/D转换,由于此芯片可直接用于数字显示,故转换后的数字量直接用数码显示器进行显示。此方案的优点是外部电路非常简单,能实现较高的精度。缺点是无法对A/D转换进行控制。显示电路

9、A/D转换电路放大电路数据采集图1 方案一方框图2.2方案二通过称重电桥产生电压信号,经放大电路把信号放大后输入A/D转换芯片进行数据转换,再将得到的数字信号送至单片机进行处理并送入液晶显示。此方案的优点是可控制性好,电路简单,原理思路清晰,液晶的硬件电路也比数码管简单,且技术领先于数码管,能提高产品档次,采用单片机对采集的数据稍加处理,能通过软件在一定程度上弥补与调试硬件所无法避免的数据抖动,使最终所测得的数据更可靠、参考性更强,而且单片机的价钱也不算昂贵,在设计组所能承受的范围之内。所以综合各方面条件我们选择方案二作为最终设计方案。其中自动换挡部分采用软件实现。AD转换数据采集电路放大电路

10、自动换挡电路显示电路单片机图2 方案二方框图3 电子元器件的选取3.1传感器的选择基于原理上的考虑,四级换挡每一级别的换挡原理完全一样,加之能承受大重量的传感器价格过高无法承受,所以我们选用量程为3kg的小型称重传感器以实现一二级别档位的自动转换,另两档位在传感器满足条件的情况下可按同样的方式实现,所以该改动对设计的考察范围影响不大。3.2运算放大器的选择市场上有已成形的集成运算放大器,如AD620仪用放大器能直接用于该设计的放大部分,且集成芯片相对于自己用单运放搭接的运放电路具有更稳定的性能,误差更小;但集成运算放大器价格相对较高,而且自己搭接的运放电路其误差范围已经基本满足本设计的要求,所

11、以我们选取OP07单运放搭接差分运算放大器的方式,同时一定程度上锻炼了模拟电路的实践能力。3.3模数转换(A/D)芯片的选取根据本课题的要求,要满足最低档位的分辨率,必须选取位数较高的A/D芯片,串行的TLC2543芯片驱动程序相对并行A/D复杂一点,但根据市场零售价格比较,该芯片是满足要求的最便宜的芯片,本着开发项目尽量缩减成本的原则我们最终选取了该芯片。3.4显示器的选择 选取smc1602a LCD点阵型液晶对单片机处理过后的数据进行显示。4 各硬件模块的具体实现方案系统硬件以OP07为核心,包括电源模块、数据采集模块、A/D转换模块、自动换档模块、液晶显示模块。4.1电源模块3kg称重

12、传感器能承受的激励电压为510V,运放电路要求正负9V电源。4.1.1电源原理稳压电源由电源变压器、整流电路、滤波电路和稳压电路组成,如图3电源变压器整流电路滤 波 电路稳 压电 路 U1U2 U3 U4 U5 图3 电源方框及波形图整流和滤波电路:整流作用是将交流电压U2变换成脉动电压U3。滤波电路一般由电容组成,其作用是脉动电压U3中的大部分纹波加以滤除,以得到较平滑的直流电压U4。稳压电路:由于得到的输出电压U4受负载、输入电压和温度的影响不稳定,为了得到更为稳定电压添加了稳压电路,从而得到稳定的电压U0。4.2传感器模块电阻应变式传感器就是将被测物理量的变化转换成电阻值的变化 , 再经

13、相应的测量电路而最后显示或记录被测量值的变化。在这里,我们用电阻应变式传感器作为测量电路的核心。并应根据测量对象的要求,恰当地选择精度和范围度1。电阻应变式称重传感器是把电阻应变计粘贴在弹性敏感元件上,然后以适当方式组成电桥的一种将力(重量)转换成电信号的传感器。电阻应变式称重传感器包括两个主要部分,一个是弹性敏感元件:利用它将被测的重量转换为弹性体的应变值;另一个是电阻应变计:它作为传感元件将弹性体的应变,同步地转换为电阻值的变化。电阻应变片所感受的机械应变量一般为 ,随之而生的电阻变化率也大约在10-610-7数量级之间。这样小的电阻变化用一般测量电阻的仪表很难测出,必须采用一定形式的测量

14、电路将微小的电阻变化率转变成电压或电流的变化,才能用二次仪表显示出来。在电阻应变式称重传感器中通过桥式电路将电阻的变化转换为电压变化。电阻应变式称重传感器工作原理框图如图5所示: 应变输出测量电桥电阻变化R应变片电压载荷P敏感元件图4电阻应变式称重传感器工作原理框图当传感器不受载荷时,弹性敏感元件不产生应变,粘贴在其上的应变片不发生变形,阻值不变,电桥平衡,输出电压为零;当传感器受力时,即弹性敏感元件受载荷P时,应变片就会发生变形,阻值发生变化,电桥失去平衡,有输出电压2。 电阻应变式称重传感器桥式测量电路如图6所示: 图5 桥式测量电路 R1、R2、R3、R4为4个应变片电阻,组成了桥式测量

15、电路,Rm为温度补偿电阻,e 为激励电压,V为输出电压。若不考虑Rm,在应变片电阻变化以前,电桥的输出电压为:由于桥臂的起始电阻全等,即R1 = R2 = R3 = R4 = R,所以V=0 。 当应变片的电阻R1、R2、R3、R4变成R+R1、R+R2、R+R3、R+R4时,电桥的输 出电压变为: 通过化简,上式则变为:也就是说,电桥输出电压的变化与各臂电阻变化率的代数和成正比。 如果四个桥臂应变片的灵敏系数相同,且,则上式又可写成:式中K为应变片灵敏系数,为应变量。 上式表明,电桥的输出电压和四个轿臂的应变片所感受的应变量的代数和成正比。在电阻应变式称重传感器中,4个应变片分别贴在弹性梁的

16、4个敏感部位,传感器受力作用后发生变形。在力的作用下,R1、R3被拉伸,阻值增大,R1、R3正值,R2、R4被压缩,阻值减小,R2、R4为负值。再加之应变片阻值变化的绝对值相同,即: R1 = R3 = + R或1 = 3 = + R2 = R4= - R或2 = 4 = - 因此:令,则,Su称为传感器系数或传感器输出灵敏度。图6应变式传感器安装示意图4.3差动放大电路 目前的电子称重装置大都使用电阻应变桥式传感器,其核心是由电阻应变计(应变片)构成的电桥电路,这类传感器具有成本低、精度高且温度稳定性好的特点。但其检测原理决定该类传感器输出电压低,要经过差分放大电路放大数百倍才能用于A/D转

17、换。一般说来,传感器输出的电压值都非常小,基本上都是毫伏级甚至微伏级。在设计高精度电子秤时,需要外部放大电路来获得足够的增益。4.3.1.仪表仪器放大器的选择仪表仪器放大器的选型很多,我们这里介绍一种用途非常广泛的仪表放大器,就是典型的差动放大器。它只需高精度OP07和几只电阻器,即可构成性能优越的仪表用放大器。广泛应用于工业自动控制、仪器仪表、电气测量等数字采集的系统中3。OP07参数:低的输入噪声电压幅度0.35 VP-P (0.1Hz 10Hz)极低的输入失调电压10 V极低的输入失调电压温漂0.2 V/ 具有长期的稳定性0.2 V/MO低的输入偏置电流 1nA高的共模抑制比126dB宽

18、的共模输入电压范围14V宽的电源电压范围 3V 22VOP07芯片是一种低噪声,非斩波稳零的双极性运算放大器集成电路。由于OP07具有非常低的输入失调电压,所以OP07在很多应用场合不需要额外的调零措施。OP07同时具有输入偏置电流低和开环增益高的特点,这种低失调、高开环增益的特性使得OP07特别适用于高增益的测量设备和放大传感器的微弱信号等方面4。 芯片封装如下图:+8 Offset Null25 N.C.6 Output7 Vcc+Vcc- 4Inverting Input 2Non-inverting Inpute 3Offset Null 1 图7 芯片封装图OP07芯片引脚功能说明:

19、1和8为偏置平衡(调零端),2为反向输入端,3为正向输入端,4接地,5空脚 6为输出,7接电源+ 。4.4 A/D转换在实际的测量和控制系统中检测到的常是时间、数值都连续变化的物理量,这种连续变化的物理量称之为模拟量,与此对应的电信号是模拟电信号。模拟量要输入到单片机中进行处理,首先要经过模拟量到数字量的转换,单片机才能接收、处理。实现模/数转换的部件称A/D转换器或ADC。随着大规模集成电路技术的飞速发展和电子计算机技术在工程领域的广泛应用,为满足各种不同的检测及控制任务的需要,大量结构不同、性能各异的A/D转换电路不断产生5。4.4.1A/D转换器的选择常用的几种A/D类型:积分型、逐次逼

20、近型、并行比较型/串并行型、-调制型、电容阵列逐次比较型及压频变换型。本次设计使用的A/D为TLC2543串行逐次比较型AD,逐次比较型的具体原理图如下: 图8 A/D转换逐次比较型原理图4.4.2TLC2543主要性能参数12位分辨率、10s转换时间、11个模拟输入通道、采样率为66kbps;4.4.3 TLC2543封装形式及各管脚功能其封装形式如下图:图9 TLC封装形式图电源引脚:VCC,20脚:为电源正,一般接+5V;GND,10脚:为电源地。REF+,14脚:正基准点压端,一般接+5V。REF-,13脚:负基准电压端,一般接地。控制引脚CS ,15引脚:片选端,低电平有效,由外部输

21、入。EOC,19脚:转换结束端,向外部输出,数据转换结束硬件自动置低该管脚。I/O CLOCK,18脚:控制输入输出的时钟,由外部输入。模拟输入引脚AIN0AIN10,19脚、1112脚:11路模拟输入端,输入电压范围:0.3V +0.3V。控制字输入引脚DATE TNPUT,17脚:控制字输入端,选择通道及输出数据格式的控制字由此输入。转换数据输出引脚DATE OUT,16脚:A/D转换结果输出的3态串行输出端。4.4.4.实际硬件电路连接图(AIN0为信号模拟信号接收端) 图10 硬件连接图4.5显示电路1602液晶显示模块可以和单片机AT89C51直接接口,电路图如图4.7 图11 16

22、02LCD与51单片机接口电路4.6工作电路 图12 工作原理电路图工作原理电路图如图12其主要部分为电阻应变式传感器R1及IC2、IC3组成的测量放大电路,和IC1及外围元件组成的液晶显示面表。测量电路将R1产生的电阻应变量转换成电压信号输出。IC3将经转换后的弱电压信号进行放大,作为AD转换器的模拟电压输入。IC4提供l22V基准电压,它同时经R5、R6及RP2分压后作为A/D转换器的参考电压。A/D转换器TCL2543参考电压输人正端,由RP2中间触头引入,负端则由RP3的中间触头引入。两端参考电压可对传感器非线性误差进行适量补偿。5 系统软件设计软件设计需要有一个细致全面的过程,一般须

23、先清楚的列出电子秤各部分电路与软件设计的有关特点,并进行定义说明,以作为软件设计的根据。在此基础上画出软件的功 能流程图,程序流程图,再根据程序流程图用汇编语言或高级语言写出。本次设计采用C语言编写。5.1电子秤的信号处理流程 电子秤要求有及时数据采集、处理、存结果、送显示的运行过程。根据这一要求,电子秤的信息测量与处理分三个阶段: 1.在微处理器的控制下,经传感器转换的电压信号通过输入电路送A/D转换器处理, 变为相应的数字量,存入到数据存储器中。 2.微处理器对采集的测量数据进行必要的数据处理。 3.显示处理结果,把数据信号处理为显示及记录所要求的信号格式,通过输出接口电路输出并显示与记录

24、。其信息处理的流程图如下图:输出接口(驱动显示)记录显示用数据数据处理数据存储输入接口数据采集 图13 信息处理流程图5.2 软件流程图为了方便程序调试和提高可靠性,程序设计采用自上而下、模块化、结构化的程序设计方法,把总的编程过程逐步细分,分解成一个个功能模块,每个功能模块相互独立,每个模块都能完成一个明确的任务,实现某个具体的功能。本设计按任务模块划分的程序主要有初始化程序、主程序, A/D转换子程序、显示子程序。5.2.1.初始化程序设计单片机系统上电后,进入初始化程序,完成单片机片内各模块的设置和A/D转换器的功能设置初始化,然后进入主程序。5.2.2.主程序设计 单片机完成初始化程序

25、后进入主程序,主程序主要完成对存储参数的读取,对检测到的数据进行数据处理,显示处理等。开 始液晶初始化判断单片机是否处理完Y 送入液晶显示N 显示无称重状态 图14 主程序流程图5.2.3.信号采样与A/D转换子程序的设计信号采样与A/D转换子程序流程见图155.2.4.具体程序见附录6 系统功能该数字电子秤,测量范围分成四档,01.999Kg、019.99Kg0199.9Kg、01999Kg。用数字显示被测重量,小数点位置对应不同的量程显示,且具有量程自动切换功能。 图15 子程序设计流程图 总 结本课程设计制作的电子秤,集传感器技术、微机技术于一体,实现了基本的秤重显示功能,稍加扩展,还可

26、与其他生产质量管理系统相连接,实现数据交换记录分析等功能,具有推广应用价值。在实际操作中,放大器部分遇到的问题最大。由于传感器输出电压较小,使得放大电路的调适任务比较困难。对此,我们先是选用合适的电路形式,即仪表放大接一级可调电平高低的比例放大;接下来给放大器各级输入一个容易实现的电压,看看各级放大倍数是否与理论相符;这之后再使传感器输出在一个基准值上下变化,如300mV,而不是在0上下变化,这样放大出的电压较为稳定;增加的基准电压由第三级调到0左右,不能准确调零的部分再由单片机去皮调零。参 考 文 献1 张毅坤. 微型计算机原理及应用M. 西安:西安电子科技大学出版社,1998.2 余锡存

27、曹国华. 单片机原理及接口技术M.陕西:西安电子科技大学出版社,2000.3 雷丽文 等. 微机原理与接口技术M.北京:电子工业出版社.,1997.4 薛晓书. 单片微机原理及接口技术M.陕西:西安石油大学出版社,2002.5康华光. 电子技术基础模拟部分M.北京:高等教育出版社,20066 黄智伟 朱卫华. 单片机与嵌入式系统应用M.衡阳:南华大学出版社,2005.7 马忠梅. 单片机的C语言应用程序设计M.北京:北京航空航天大学出版社,1996.8 何立民. 单片机应用系统设计M.北京:北京航空航天大学出版社,1996.9 李 华. MCS-51系列单片实用接口技术M.北京:北京航空航天大

28、学出版社,1993.10 何立民. 单片机应用技术选编(一)M.北京:北京航空航天大学出版社,1993.11 梁钥 李爱齐. C语言程序设计实用技术与程序实例M.上海:上海科普出版社,1996.致 谢本文是在谭乔来老师的精心指导下完成的.论文从选题到完成的整个过程中,得到了谭老师的热情帮助和精心指导.谭老师严谨的治学态度,渊博的专业知识,敏锐的学术眼光,精益求精的精神给我留下了深刻的印象,并对我的学习和工作产生极大的促进作用.在论文完成之际,我要感谢谭老师对我在四年学习上的关心和教诲,特向谭老师表示深深的敬意和感谢!本文在写作过程中参考了大量的文献资料,主要文献资料已开列出来,本文的有些句子或

29、段落引自这些参考文献.在此向所有的作者表示深深的感谢!在本科学习的四年中,我与同学建立了深厚的友谊,他们在我遇到困难时无私地伸出援助之手,对他们的帮助我特别感谢.最后,对关心,支持我的亲人和老师致以最衷心的感谢!附 录程序清单:#include #include#define uchar unsigned char #define uint unsigned intsbit rs=P00;sbit lcdrw=P01;sbit lcden=P02;sbit clock=P10;sbit DI=P11;sbit DO=P12;sbit cs=P13;uchar l,m,n,o,p,num;uch

30、ar code table=0,1,2,3,4,5,6,7,8,9;void display();/1602液晶显示函数void fenwei();数据处理函数unsigned long jiafa();多次采样求平均值uint read_AD(uchar port);12位AD 2543采样控制函数void init();1602液晶初始化函数void write_date(uchar date);/1602液晶写数据函数void write_com(uchar com);1602液晶写指令函数void delay(uint z);/延时函数void delay1(uint z);/延时函数

31、void main()/主函数init();while(1)fenwei();display();delay1(10);/延时函数void delay1(uint z) uint x,y;for(x=100;x0;x-)for(y=z;y0;y-);/延时函数void delay(uint z)uint x;for(x=0;xz;x+)_nop_();/1602写指令函数void write_com(uchar com)rs=0; lcdrw=0; lcden=0; delay1(1); P2=com; delay1(5);lcden=1; delay1(5); lcden=0;/1602写数

32、据函数void write_date(uchar date) rs=1; P2=date; delay1(5); lcden=1; delay1(5); lcden=0;/1602液晶初始化void init() lcden=0; write_com(0x38); write_com(0x0f); write_com(0x04); write_com(0x01);/* 数据指针清零,所有显示清零*/ write_com(0x80+0x01); /设置数据地址指针,自身算写了一位/AD2543驱动函数uint read_AD(uchar port)uint ad=0,i;clock=0;cs=0

33、;port=4;port|=0x08;for(i=0;i12;i+)if(DO)ad|=0x01;DI=(bit)(port&0x80);clock=1;delay(3);clock=0;delay(3);port=1;ad=1;delay(3);return(ad);/采样多次求平均值unsigned long jiafa()uint i;unsigned long I=0;for(i=0;i200;i+)I+=read_AD(0);delay(3);I=I/200;if(I=295)I=0;return(I);/数据处理函数void fenwei()float AD;uint ad;ad=

34、jiafa();if(ad=0)l=0;m=0;n=0;o=0;p=0;elseAD=(ad-292)*0.6601*100+5;ad=AD/10;l=ad/10000;m=ad%10000/1000;n=ad%1000/100;o=ad/100%10;p=ad%10;void display()/1602液晶显示函数write_com(0x80+0x00);write_date(table0);write_date(table1);write_date(tablel+2);delay(20);write_date(tablem+2);delay(20);write_date(tablen+2);delay(20);write_date(tableo+2);delay(20);write_date(.);delay(20);write_date(tablep+2);delay(20);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号