基于单片机的电子秤的设计.docx
《基于单片机的电子秤的设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子秤的设计.docx(10页珍藏版)》请在冰豆网上搜索。
基于单片机的电子秤的设计
单片机技术及其应用原理
课程设计报告
【设计题目】电子称的设计
【设计要求】
(1)设计一款电子秤,用LED液晶显示器显示被称物体的质量
(2)可以设定该秤所称的上限
(3)当物体超重时,能自动报警
【设计过程】
1.【方案设计】
在设计系统时,针对各个模块实现的功能来设计电子秤的方案有以下几种:
方案一
结构简图如下图所示:
图1带有键盘输入的结构简图
此方案设计的电子秤,可以实现称物计价功能,但是局限于数码管的功能,在显示时只能显示单价、购物总额以及简单的货物代码等。
在显示重量时,如果数码管没有足够的位数,那么称量物体重量的精度必受到限制,所以此方案需要较多的数码管接入电路中。
这样在处理输入输出接口时需要另行扩展足够多的I/O接口供数码管使用,比较麻烦。
方案二前端信号处理时,选用放大、信号转换等措施,尤其在显示方面采用具有字符图文显示功能的LCD显示器。
这种方案不仅加强了人机交换的能力,而且满足设计要求,可以显示购物清单、所称量的物体信息等相关内容。
结构简图如下图所示:
图2LCD显示的方案
目前单片机技术比较成熟,功能也比较强大,被测信号经放大整形后送入单片机,由单片机对测量信号进行处理并根据相应的数据关系译码显示出被测物体的重量。
单片机控制适合于功能比较简单的控制系统,而且其具有成本低,功耗低,体积小算术运算功能强,技术成熟等优点。
但其缺点是外围电路比较复杂,编程复杂。
使用这种方案会给系统设计带来一定的难度。
方案三采用现场可编程门阵列(FPGA)为控制核心
采用现场可编程门阵列(FPGA)为控制核心,利用EDA软件编程,下载烧制实现。
系统集成于一片Xilinx公司的SpartanⅡ系列XC2S100E芯片上,体积大大减小、逻辑单元灵活、集成度高以及适用范围广等特点,可实现大规模和超大规模的集成电路。
采用FPGA测频测量精度高,测量频率范围大,而且编程灵活、调试方便,设计要求的精度较高,所以要求系统的稳定性要好,抗干扰能力要强。
从下图中可以看到系统的基本工作流程和各单元电路所用到的核心器件。
其中控制器采用Xilinx公司可编程器件FPGA为核心,基于ISE软件平台,采用VHDL编程实现数据处理、LED和LCD驱动、时钟芯片的I2C通讯、键盘控制等模块。
结构简图如下图所示:
图2.4电子称系统的组成结构图
FPGA的逻辑容量密度大,集成度高,可大大减少印刷电路板的空间,减低系统功耗,同时还可以提高设计的工艺性和产品的可靠性。
虽然以FPGA为核心的电子称系统很优化,但只有在大规模和超大规模集成电路中其高集成度才能更好得以体现。
其主要在PC机接口卡的总线接口、程控交换机的信号处理与接口、雷达声纳系统的成像控制与数字处理、数控机床的测试系统等方面有广泛应用。
鉴于本电子称的设计并不太复杂,单片机完全能实现所需功能,所以在具体设计时,采用了第三种设计方案
1.12.【器件选择】显示器的选择方案
方案一:
采用LED(数码管)显示。
LED(数码管)是light-emittingdiode的缩写,它经过合理的设置可以完成显示被测物质量、单价、总价以及可测上限值的任务,并且经济耐用。
同时LED具有高亮度,高刷新率的优点,能提供宽达160°的视角,可以在较远的距离上看清楚。
但是它的显示存在信息量少,显示不直观,不易理解,连线复杂等缺点。
方案二:
采用LCD(液晶屏)显示。
LCD(液晶屏)是LiquidCrystalDisplay的缩写,它具有字符显示的功能,不但可以同时显示被测物质量、单价、总价以及可测上限值,还可以同时显示相应的控制命令、指示符号及单位等,信息量丰富且直观易懂。
另外,液晶显示有功耗低,体积小,质量轻,寿命长,不产生电磁辐射污染等优点。
综合比较二者的优缺点,本设计最终采用LCD1602作为显示器。
1.2AD芯片的选择方案
方案一:
采用AD7810作为A/D转换器件。
AD7810是美国模拟器件公司(AnalogDevices)生产的一种低功耗10位高速串行A/D转换器。
该产品有8脚DIP和SOIC两种封装形式,并带有内部时钟。
它的外围接线极其简单,AD7810的转换时间为2μs,采用标准SPI同步串行接口输出和单一电源(2.7V~5.5V)供电。
在自动低功耗模式下,该器件在转换吞吐率为1kSPS时的功耗仅为27μW,因此特点适合于便携式仪表及各种电池供电的应用场合使用。
方案二:
采用ADC0809作为A/D转换器件。
ADC0809是采样分辨率为8位的、微处理机兼容的控制逻辑的CMOS组件。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
它是逐次逼近式A/D转换器,可以和单片机直接接口。
综上所述,由于考虑到8位模数转换已经满足本次设计要求,而且ADC0809的价格相对较低,所以本设计采用ADC0809作为模数转换器件。
1.3CPU的选择方案
方案一:
采用传统的8位的51系列单片机作为系统控制器。
AT89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可以提供许多较复杂系统控制应用场合。
而且我们做的很多产品都是在51的基础上完成,对51系列的单片机相对来说较为熟悉。
方案二:
采用32位的ARM2138作为系统控制器。
ARM2138具有强大的存储空间,内嵌32K片内静态RAM和512K的flash存储器,可以实现在系统可编程(ISP)、在应用可编程(IAP),2个8路10位A/D转换器,1个D/A转换器,转换迅速准确,引脚资源丰富,多达47个可承受5V电压的通用I/O口,多个串行接口,包括2个16C550工业标准UART、2个高速I2C接口(400Kb/s)、SPI和具有缓冲作用和数据长度可变功能的SSP。
但价格相对较高。
综上分析,由于考虑到器件的价格、现有资源和对器件的掌握程度,控制器模块选择方案一。
3.【系统电路设计】综合考虑本次设计要求、现有元器件资源、元器件价格和对元器件的熟悉掌握程度,本次设计选用AT89C52作为CPU控制器,ADC0809作为模数转换器件,LCD1602作为显示器件,再配以其他相关元器件来实现硬件电路的设计。
图2-1基于单片机控制的电子秤的基本组成框图
传感器的测量电路选用全桥电路,由四个电阻应变计组成。
无外力作用时,桥路平衡,输出电压为零;有外力作用时,电阻应变计的阻值发生变化,桥路失去平衡,有相应的电压输出。
但是由于此电压信号过于微弱,难以被ADC0809采集,则需经过放大电路放大才能经ADC0809进行模数转换。
转换后的数字信号经单片机处理后送显示器显示。
本设计还增加了键盘和报警电路,键盘的功能是调节满量程的上限值和当前的单价,如果被测量的物质重量超出所设定的满量程上限值,则蜂鸣器报警,否则显示当前的重量、单价和相对应的总价。
1.44.【软件设计主程序的设计
主程序设计的流程如下图所示,开机后先对LCD1602进行初始化,并显示单价及上限阈值,接下去则循环采集AD数据及键盘程序。
图4-1主程序流程图
1.5AD数据采集及处理子程序的设计
数据采集由ADC0809芯片来完成,主要分为启动、读取数据、等待转换结束、读出转换结果、采集的数据求和、取平均(退出)几个步骤。
ADC0809初始化后,就具有了将某一通道输入的0~5V模拟信号转换成对应的数字量0x00~0xff,然后再存入指定缓冲单元中。
其转换方式可以采用程序查询方式,延时等待方式和中断方式三种。
本设计采用的是延时等待方式,具体程序流程图如图4-2所示。
图4-2AD数据采集及处理子程序流程图
数据处理子程序是整个程序的核心。
主要用来调整输入值系数,使输出满足量程要求。
另外完成A/D的采样结果从二进制数向BCD码转化[14]。
在硬件调试过程中重量与电压的关系如表一所示:
表4-1重量与电压的关系表
质量/g
20
40
60
80
100
120
140
160
180
200
220
240
电压/V
0.39
0.78
1.16
1.56
1.94
2.34
2.73
3.12
3.50
3.89
4.28
4.67
线性符合设计要求,且每个砝码对应的电压值转BCD码后正好近似20,则无需其他处理。
1.6键盘处理程序的设计
在本次设计中,总共用到三个按键。
按键0是切换键,按一次切换键进入单价修改状态,按两次进入上限阈值修改状态,按三次进入电子称去皮处理状态,再按一次则返回正常显示状态。
按键1实现对单价或上限阈值加一的功能。
按键2实现对单价或上限阈值减一的功能。
每个按键对应的流程图如下所示。
图4-3按键0的子程序流程图
图4-4按键1的子程序流程图
图4-5按键2的子程序流程图
】
1.7【结果分析】设计结果
本设计成功实现了电子称量功能,在原始电子称的基础上还增加了单价调节、阈值报警和去皮称重功能。
利用LCD1602同时显示当前重量值、当前重量所对应的单价、总价以及可测重量的上限值,如图5-1所示。
其中“P”表示当前的单价,“M”表示当前重量值,“$”表示当前物质的总价,“max”表示当前设定的承载上限值。
“P”、“max”和“M”(可以去皮称重)的调整操作如下:
①单价调节功能操作:
先按一下切换键当液晶屏上的“P”后面显示“?
”时,在按加一减一键调整价格值,调整好后在按切换键退出;
②测量上限调节功能操作:
先按两下切换键,当液晶屏上的“max”后面显示“?
”时,在按加一减一键调整上限值,调整好后在按切换键退出;
③去皮功能操作:
先按三下切换键,直到显示屏上的“M”值显示“000g”,再按一下切换键则显示去皮前重量值。
本产品总体实现智能电子称的功能。
但是由于本次毕业设计由于传感器发出的信号不是很稳定,所以称重时误差很大。
如果使用精密度较高的传感器,效果会好很多。
其次是数据采集处理阶段,此阶段是对传感器发出的信号进行量化、采集,主要分为信号放大、采集,然后进行A/D转换。
该阶段需注意的地方是对传感器输出的信号进行放大时,应选取合适的运算放大电路。
最好是预先计算好应放大的倍数,以便选取。
还有就是进行数据处理时,选取适当的数据转换系数,使输出满足量程要求。
【设计总结】
1.设计中出现的问题和相应的解决方案。
2.个人体会。
【参考文献】参考文献
[1]刘敏,张强,郝树虹,王艳芬.称重传感器的选用原则[A].电子科学,2009,01:
39.
[2]谢惠玲.应变式称重传感器技术动向和发展趋势[J].科技创新导报,2009,14:
114-116.
[3]田佳琳,郑宾,姜华.称重传感器测量单元的研究与设计[M].电脑知识与技术,2009,5(33):
9503-9505.
[4]张景元李业德.一种基于单片机的多功能电子称[J].微计算机信息,2006,4:
52-53.
[5]王华.数.模称重传感器的应用[C].江苏现代计量,2009,4:
35-36.
[6]王艳春,何鹏,李会.智能电子称重系统的设计[J].微计算机信息,2007,04:
111-112
5篇以上,五号宋体前面加[1]、[2]、[3]、[4]、[5],五年以内