毕业设计论文基于单片机的多功能电子秤的设计与实现.docx
《毕业设计论文基于单片机的多功能电子秤的设计与实现.docx》由会员分享,可在线阅读,更多相关《毕业设计论文基于单片机的多功能电子秤的设计与实现.docx(21页珍藏版)》请在冰豆网上搜索。
毕业设计论文基于单片机的多功能电子秤的设计与实现
基于单片机的多功能电子秤的设计与实现
摘要
随着时期科技的迅猛进展,微电子学和运算机等现代电子技术的成绩给传统的电子测量与仪器带来了庞大的冲击和革命性的阻碍。
常规的测试仪器仪表和操纵装置被更先进的智能仪器所取代,使得传统的电子测量仪器在远离、功能、精度及自动化水平定方面发生了庞大转变,并相应的显现了各类各样的智能仪器操纵系统,使得科学实验和应用工程的自动化程度得以显著提高。
做为重量测量仪器,智能电子秤在各行各业开始显现其测量准确,测量速度快,易于实时测量和监控的庞大优势,并开始慢慢取代传统型的机械杠杆测量称,成为测量领域的主流产品。
本文设计的电子秤以单片机为要紧部件,用汇编语言进行软件设计,硬件则以半桥传感器为主,测量0~500g电子秤,随时可改变上限阈值,并达到阈值报警的功能。
称重传感器输出的电量是模拟量,数值比较小达不到A/D转换接收的电压范围。
因此送A/D转换之前要对其进行前端放大、整形滤波等处置。
然后,A/D转换的结果才能送单片机进行数据处置并显示。
其数据显示部份采纳LCD显示,本钱低且能专门好地实现所要求的功能。
关键词:
单片机,电子秤,A/D,LCD
Abstract
Withtheeraofrapiddevelopmentofscienceandtechnology,microelectronicsandcomputersandotherachievementsofmodernelectronictechnologytothetraditionalelectronicmeasurementandinstrumenttremendousimpactandrevolutionarytestinstrumentationandcontroldevicesweremoreadvancedintelligentinstrumentsreplacedthetraditionalelectronicmeasuringinstrumentsfarawayfrom,function,determinedthelevelofprecisionandautomationtremendouschangeshavetakenplace,andthecorrespondingemergenceofavarietyofintelligentinstrumentcontrolsystem,makingscientificexperimentsandapplicationsengineeringtosignificantlyimprovethedegreeofautomation.
Asaweightmeasurementapparatus,intelligentelectronicscaleindustriesbegantoappearinthemeasurementaccuracy,highspeed,easy-to-real-timemeasurementandmonitoringofthegreatadvantages,andbegantograduallyreplacethetraditionalmechanicalmeasurementofsaidlevertobecomeamainstreamproductmeasurement.
ThiselectronicscaledesignedtoMCUasthemainparts,assemblylanguageforsoftwaredesign,hardware-basedZeyihalf-bridgesensors,electronicscalesmeasuring0~500g,upperthresholdvaluecanbechangedatanytimeandtoreachthethresholdalarmcelloutputpowerisanalog,notreachtherelativelysmallvalueofA/Dconverterreceivesthevoltagerange..ThedatashowthatpartoftheuseofLCDdisplays,lowcost,andcanwellrealizetherequiredfunctions.
Keywords:
microcontroller,electronicscale,A/D,LCD
1本设计的任务和要紧内容
设计的要紧内容如下
(1)设计一款电子秤,用LED液晶显示器显示被称物体的质量
(2)能够设定该秤所称的上限
(3)当物体超重时,能自动报警
(4)写出详细的实验报告
2.电子秤的硬件设计
传感器的选择
应变式电阻传感器的测量原理
应变式电阻传感器的工作原理:
当导体或半导体受到外力作历时,会产生机械变形,从而致使阻值转变。
导体与半导体的电阻与电阻率及其几何尺寸有关。
当导体受外力作历时,电阻率及几何尺寸的转变会引发电阻的转变。
因此,通过测量电阻值的大小,就能够够反映外界力的大小。
电阻型应变片传感器的测量电路可采纳桥式测量电路。
桥式测量电路有四个电阻,其中任何一个电阻均能够是应变片。
图桥式测量电路图
如能适当的选择个桥臂的电阻,能够排除电桥的恒定输出,使输出电压只与应变片的电阻有关。
传感器的分类和选择
应变片式电阻传感器按其测量电路(桥式)可分为单臂式、半桥式、全桥式三种。
所谓半桥,即将电桥的四臂接入四应变片。
其中:
一片受拉,一片受压,另外两应变片不受力。
全桥是两片受拉,两片受压,故灵敏度比半桥式的大一倍。
本方案采纳半桥式传感器。
放大电路的设计
传感器输出电压为毫伏级,而A/D转换器所能处置的电压是0~5V,因此必需在A/D转换器前加入一个前置差动放大电路以实现电压的放大,放大倍数为100~200倍,使输出电压为0~5V。
由于单运放在应用中要求外围电路匹配精度高、增益调整不便、差动输入阻抗低,故采纳三运放结构。
三运放结构具有差动输入阻抗高、共膜抑制比高、偏置电流低等优势,且有良好的温度稳固性,低噪单端输出和和增益调整方便,适于在传感器电路中应用。
如图3-2所示,图中为增益调剂电阻,整个芯片仅为外接电阻,而运放为增益为1的差动输入放大器。
图放大电路硬件原理图
搜集电路的设计
数据搜集系统的组成
数据搜集系统的核心是运算机,他对整个系统进行操纵和数据处置,他由采样/维持器,放大器,A/D转换器,运算机组成。
数据采样系统框图
数据采样维持器
进行模数变换时,从启动变换到变换终止的数字量输出,需要必然的时刻,即A/D转换的孔径时刻。
当输入信号频率较高,由于孔径时刻的存在,会造成较大的转换误差;为了避免误差需在中间加一个功能器件采样/维持器,进行有效、正确的数据搜集。
采样/维持器通常由维持电容器、模拟开关和运算放大器组成。
其中关于低速场合能够采纳继电器作为开关以减小开关漏电流的阻碍;在高速场合也能够用晶体管、场效应管来作为开关。
采样维持器的原理:
如图,当开关闭合时,V1通过限电流电阻向电容C充电,在电容值合理的情形下,V0随Vi的转变而转变;当K断开时,由于电容C有必然的容量,现在输出V0维持输入信号再开断开刹时的电平值。
图采样维持原理图
在模拟信号输入通道中,是不是需要加采样/维持器,取决于模拟信号的转变频率和A/D转换器的孔径时刻;对快速进程信号,当最大孔径误差超过许诺值时,必需在A/D转换器前加采样/维持器。
但如果是输入模拟量是直流量或被测信号模拟量随时刻转变超级缓慢,采样/维持(S/H)电路能够省去。
A/D转换器
设计中A/D转换器用的是ADC0809A/D转换器,它是8路8位逐次逼近式转换器,结果为8位二进制数据,转换时刻短(一样在级),知足题目要求的“实时采样”,而且它的转换精度在%上下,比较适中,适用于一样场合。
由图可见,单片机通过读操纵线WR和0809片选线操纵启动A/D转换及输入通道地址锁存,写操纵线WR与ADC0809片选线操纵输出许诺。
由于ADC0809具有通道地址锁存功能,通道选择、、直接接单片机的数据口。
模拟电压由IN0通道输入,A/D采样电压在0~5v之间转变。
所模拟通道IN0地址口为0AOOOH,可是ADC0809无内置时钟,因此CLOCK由外部时钟信号操纵。
图A/D转换器和单片机的接口电路
显示电路的设计
显示部份能够将处置得出的信号在显示器上显示,让人们直观的看到被测体的质量,也能够进行报警提示。
LCD液晶显示器是一种极低功耗显示器,从电子表到计算器,从袖珍时仪表到便携式微型运算机和一些文字处置机都普遍利用了液晶显示器。
本设计采纳的显示模块是128×64点阵的汉字图形型液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。
可与CPU直接接口,提供两种界面来连接微处置机:
8-位并行及串行两种连接方式。
具有多种功能:
光标显示、画面移位、睡眠模式等。
键盘电路的设计
利用键盘可选择电子秤工作模式、设定测量上限等。
键盘部份采纳矩阵式的键盘,采纳这种结构的特点是把检测线分为两组,一组为行线,一组为列线,按键放在行线和列线的交叉点上。
矩阵式的键盘的优势是需要的测试线的数量少,关于一个M×N的矩阵键盘与主机连接只需要M+N条测试线,如此键盘的规模越大,矩阵时键盘的有点越显著,当需要的按键数量大于8时,一样都采纳矩阵式键盘。
图矩阵式键盘结构图
报警电路的设计
报警电路是超过设定的范围,单片机输出信号驱动蜂鸣器发声警报,如图所示,当BDLL端为低电平常,有电流通过蜂鸣器,蜂鸣器报警,反之不报警,那个地址设定当超过质量的上限时通过软件使8031的口清零,再过口出来的低电平信号连接到BELL端蜂鸣器发声报警。
图报警电路
3.电子秤的软件设计
监控程序的设计
智能仪器的设计既要知足设定的功能的完成如计算等功能的任务功能程序,也要有能够监控仪器仪表正工作,保证其靠得住性方面的监控程序。
整个智能仪器的测量都是智能仪器自动完成的,因此设计一套功能完备的监控程序是必需的也是必要的。
监控程序的要紧作用是实时的响应来自系统的各类信息,按信息的类别进行处置;当系统显现故障时,能自动的采取有效的方法,排除故障,保证系统能够继续进行正常工作。
数据处置子程序的设计
数据处置子程序是整个程序的核心。
要紧用来调整输入值系数,使输出知足量程要求。
另外完成A/D的采样结果从十六进制数向十进制数形式转化。
3.2.1系数调整
在IN0输入的数最大为5V,要求的质量500g对应的是,为十六进制向十进制转换方便,将系数放大100倍。
并用小数点位置的转变表现这一进程。
因此系数为:
3.2.2数制转换
数制之间的转换:
在二进制数制中,每向左移一名表示数乘二倍。
以每四位作为一组对数分组,当第四位向第五位进位时,数由8变到16,若按十进制数制规则读数,则丢失6,因此应进行加六调整。
DA指令可完成这一调整。
可见数制之间的转换能够通过移位的方式实现。
其中,移出数据的保留能够通过自乘再加进位的方式实现,因为乘二表示左移一名,左移后,低位进一,则需加一。
不然,加零。
而通过移位已将要移入的尾数保留在了进位位中,因此能实现。
图数据处置原理框图
数据搜集子程序的设计
数据搜集用A/D0809芯片来完成,要紧分为启动、读取数据、延时等待转换终止、读出转换结果、存入指定内存单元、继续转换(退出)几个步骤。
ADC0809初始化后,就具有了将某一通道输入的0~5模拟信号转换成对应的数字量00H—FFH,然后再存入8031内部RAM的指定单元中。
在操纵方面有所区别。
能够采纳程序查询方式,延时等待方式和中断方式。
图数据采样原理框图
显示子程序的设计
显示子程序是字符显示,第一挪用事前编好的8279的键盘显示子程序。
挪用8279初始化命令,然后输出写显示命令。
在显示进程中必然要挪用延时子程序。
当输入通道搜集了一个新的进程参数,或仪表操作人员键入一个参数,或仪表与系统显现异样情形时显示治理软件应及时挪用显示驱动程序模块,以更新当前的显示数据显示符号。
图显示原理框图
键盘扫描子程序的设计
如图所示:
键盘电路设计成4X4矩阵式,由键盘编码方式能够得出0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F各键对应的键值:
0D8H,0D0H,0D1H,0D2H,0C8H,0C9H,0CAH,0C0H,0C1H,0C2H,0C3H,0CBH,0D3H,0DBH,0DAH,0D9H。
在程序中能够先判定按键编码,然后依照编码将键盘代表的数值送到相应的存储单元,再进行功能选择或数据处置。
图键盘扫描原理框图
报警子程序的设计
由于要求要键盘设定阈值,因此要求有报警电路,报警电路能够有声报警也可有光报警,将设定的阈值与实时显示的值进行比较,若是设定值小于实时显示的值,则将置为1,将发光二极管点亮,或使蜂鸣器发作声音。
这就需要一段比较程序和一小段置1清0程序。
图报警原理框图
4.设计总结
随着集成电路和运算机技术的迅速进展,使电子仪器的整体水平发生庞大转变,传统的仪器慢慢的被智能仪器所取代。
智能仪器的核心部件是单片机,因其极高的性价比取得普遍的应用与进展,从而加速了智能仪器的进展。
而传感器作为测控系统中对象信息的入口,愈来愈受到人们的关注。
传感器比如人体“五官”的工程模拟物,它是一种能将特定的被测量信息(物理量、化学量、生物量等)按必然规律转换成某种可用信号输出的器件或装置本次课设中的半桥电子秤确实是在以上仪器的基础上设计而成的。
因此,只有充分了解有关智能仪器、单片机、传感器和各部份之间的关系才能达到要求。
第一是传感器的周密度,它将直接阻碍电子秤的称重准确度。
课设时由于传感器发出的信号不是很稳固,因此称重时误差专门大。
若是利用周密度较高的传感器,成效会好的多。
第二是数据搜集处置时期,现在期是对传感器发出的信号进行量化、搜集,要紧分为信号放大、搜集,然后进行A/D转换。
该时期需注意的地址是对传感器输出的信号进行放大时,应选取适合的运算放大电路。
最好是预先计算好应放大的倍数,以便选取。
还有确实是进行数据处置时,选取适当的数据转换系数,使输出知足量程要求。
参考文献
1.赵茂泰.智能仪器原理及应用.电子工业出版社,2004:
2.张毅刚.MCS-51单片机应用设计.哈尔滨工业大学出版社,2003:
3.贾伯年,俞朴.传感器技术.东南大学出版社,2000:
4.单成祥.传感器理论设计基础及其应用.国防工业出版社,1999:
5.李道华,李玲,朱艳.传感器电路分析与设计.武汉大学出版社,2000:
附录
程序附图
概念中文LCD液晶128X64的地址
W_C_GLCDXDATA0E000H
W_D_GLCDXDATA0E001H
R_B_GLCDXDATA0E002H
R_D_GLCDXDATA0E003H
;-------------------------------------------------------
TIMER0DATA30H;延不时刻的初值
TIMER1DATA31H;挪用延时子程序的次数
DATA1DATA32H;点阵显示的变量1
DATA2DATA33H;点阵显示的变量2
XDATA34H;X方向的位置
YDATA35H;Y方向的位置
COUNTERDATA36H;计数器
NDATA37H;行数变量
D1DATA38H;点变量1
D2DATA39H;点变量1
ADDRDATA3AH;起始的显示位置
ADDR1DATA3BH;起始的显示位置临时变量
N1DATA3CH;行数的临时变量
;*******************************************************
;*主程序开始
;*******************************************************
ORG0000H
AJMPSTART
ORG0030H
START:
CLR
SETB
MOVSP,#60H
LCALLINITIAL_GLCD;挪用LCD初始化
LCALLKAIJI;显示开机画面
LCALLDELAY500
LCALLDELAY500
LCALLDELAY500
LCALLTISHI;显示主界面
LCALLINI_8279
------------------------------------------------
;判定是不是继续
------------------------------------------------------------------
KEY-A:
MOVDPTR,#8101H
MOVXA,@DPTR
ANLA,#07H
CJNEA,#00H,LP1
SJMPKEY-A
MOVDPTR,@8100H
MOVXA,DPTR
CJNEA,0DBH,KEY-A
AJMPK1
LCALLYUZHI
LCALcelianjieguo
LCALLCELINGJIEGUO
AJMP$
各界面显示内容
DHTABLE1:
DB"欢迎利用"
DHTABLE2:
DB"半桥电子秤"
DHTABLE3:
DB"*********"
DHTABLE4:
DB"*********"
DHTABLE5:
DB"***********"
DHTABLE6:
DB"设置警报上限"
DHTABLE7:
DB"确信"
DHTABLE8:
DB"请按D键"
DHTABLE9:
DB""
DHTABLE10:
DB"报警上限重量:
"
DHTABLE11:
DB".g"
DHTABLE12:
DB"确信(E)"
CELIANG1:
DB"电子秤"
CELIANG2:
DB"重量是:
"
CELIANG3:
DB"
CELIANG4:
DB"返回(F)"
;=======================================================
;开机界体面程序
;=======================================================
KAIJI:
MOVADDR1,#00H;第一行显示
MOVN1,#08H;数量8个
MOVDPTR,#DHTABLE1;需要显示的汉字位置
CALLDHZ;挪用汉字子序
MOVADDR1,#10H;第二行显示
MOVN1,#08H
MOVDPTR,#DHTABLE2
CALLDHZ
MOVADDR1,#08H;第三行显示
MOVN1,#08H
MOVDPTR,#DHTABLE3
CALLDHZ
MOVADDR1,#18H;第四行显示
MOVN1,#08H
MOVDPTR,#DHTABLE4
CALLDHZ
RET
;=======================================================
;提示界体面程序
;=======================================================
TISHI:
LCALLCLEAR_GLCD;清除LCD显示屏幕
MOVADDR1,#00H
MOVN1,#08H
MOVDPTR,#DHTABLE5
CALLDHZ
MOVADDR1,#10H
MOVN1,#08H
MOVDPTR,#DHTABLE6
CALLDHZ
MOVADDR1,#08H
MOVN1,#08H
MOVDPTR,#DHTABLE7
CALLDHZ
MOVADDR1,#18H
MOVN1,#08H
MOVDPTR,#DHTABLE8
CALLDHZ
RET
SHEDING:
LCALLCLEAR-GLCD
MOVADDR1,#00H
MOVN1,08H
MOVDPTR,#DHTALBE9
CALLDHZ
MOVADDR1,#10H
MOVN1,08H
MOVDPTR,#DHTALBE10
CALLDHZ
MOVADDR1,#08H
MOVN1,08H
MOVDPTR,#DHTALBE11
CALLDHZ
MOVADDR1,#18H
MOVN1,08H
MOVDPTR,#DHTALBE12
CALLDHZ
RET
测量界体面程序
Celiangjieguo:
LCALLCLEAR_GLCD;清除LCD显示屏幕
MOVADDR1,#00H
MOVN1,#08H
MOVDPTR,#DHTABLE1
CALLDHZ
MOVADDR1,#10H
MOVN1,#08H
MOVDPTR,#DHTABLE2
CALLDHZ
MOVADDR1,#08H
MOVN1,#08H
MOVDPTR,#DHTABLE3
CALLDHZ
MOVADDR1,#18H
MOVN1,#08H
MOVDPTR,#DHTABLE4
CALLDHZ
END