智能秤设计课件.docx

上传人:b****1 文档编号:374769 上传时间:2022-10-09 格式:DOCX 页数:24 大小:719.02KB
下载 相关 举报
智能秤设计课件.docx_第1页
第1页 / 共24页
智能秤设计课件.docx_第2页
第2页 / 共24页
智能秤设计课件.docx_第3页
第3页 / 共24页
智能秤设计课件.docx_第4页
第4页 / 共24页
智能秤设计课件.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

智能秤设计课件.docx

《智能秤设计课件.docx》由会员分享,可在线阅读,更多相关《智能秤设计课件.docx(24页珍藏版)》请在冰豆网上搜索。

智能秤设计课件.docx

智能秤设计课件

单片机课程设计报告

 

题目:

基于单片机的智能电子秤设计

 

院(系)工学院

专业电子信息工程

年级12—1班

姓名….学号12043117

指导教师…

 

2015年12月4日

 

基于单片机的智能电子秤设计

摘要:

电子秤主要以单片机作为中心控制单元,通过称重传感器进行模数转换单元,在配以键盘、显示电路及强大软件来组成。

电子称不但计量准确、快速方便,更重要的自动称重、数字显示,对人们生活的影响越来越大,广受欢迎。

一、设计任务与要求

(1)采用单片机设计的智能电子秤

(2)对被称量物重量进行显示

(3)通过键盘输入被称量物单价电子秤自动计算总金额并在液晶屏显示

(4)当测量重量超过量程时能通过蜂鸣器和灯进行报警

二、方案设计与论证

2.1电子秤硬件设计方案

单片机电子秤硬件设计方案如图1所示:

图1单片机电子秤硬件方案

称重传感器感应被测重力,输出微弱的毫伏级电压信号。

该电压信号经过电子秤专用模拟/数字(A/D)转换器芯片hx711对传感器信号进行调理转换。

HX711采用了海芯科技集成电路专利技术,是一款专为高精度电子秤而设计的24位A/D转换器芯片,内置增益控制,精度高,性能稳定。

HX711芯片通过2线串行方式与单片机通信。

单片机读取被测数据,进行计算转换,再液晶屏上显示出来。

矩阵键盘主要用于计算金额。

当被测物体重量得到后,用户可以通过矩阵键盘输入单价,电子秤自动计算总金额并在液晶屏显示。

电源系统给单片机、HX711电路及传感器供电。

2.2称重传感器的选择及测量原理

传感器是测量机构最重要的部件。

称重传感器本身具有单调性,其主要参数指标是灵敏度、总误差和温度漂移

2.2.1灵敏度

称重传感器的电灵敏度为满负荷输出电压与激励电压的比值,典型值是2mV/V。

当使用2mV/V灵敏度和5V激励电压的传感器时,其满度输出电压为10mV。

通常,为了使用称重传感器线性度最好的一段称重范围,应当仅使用满度范围的三分之二。

因此满度输出电压应当大约为6mV。

当电子秤应用于工业环境时,在6mV满度范围内测量微小的信号变化并非易事。

2.2.2总误差

总误差是指输出误差和额定误差的比值。

典型电子秤的总误差指标大约是0.02%,这一技术指标相当重要,它限制了使用理想信号调节电路所能达到的精确度,决定了ADC分辨率的选择以及放大电路和滤波器的设计。

2.2.3漂移

称重传感器也产生与时间相关的漂移。

目前常用的称重传感器有电阻应变式压力传感器、电容压力传感器、压电式压力传感器。

选用时应按稳定行、精度登记、寿命和安装环境要求考虑,其主要特点如下:

(1)电容式压力传感器稳定性较差,精度和灵敏度较高,寿命较短,对环境要求苛刻,不易长距离传输。

(2)压电式压力传感器稳定性好,精度和灵敏度高,寿命长,但大量程的压力传感器尚待进一步研究。

(3)电阻应变式压力传感器稳定性较好,精度和灵敏度较高,寿命较长,对测量环境要求不太严格。

综上所述,选用电阻应变式压力传感器作为电子秤称重传感器是最为合适的。

三、电路设计

3.1称重传感器电路

电阻应变式传感器测量原理如图2所示:

图2电阻应变式传感器测量原理

当垂直正压力P作用于梁上时,梁产生形变,电阻应变片R1、R3受压弯拉伸,阻值增加;R2、R4受压缩,阻值减小。

电桥失去平衡,产生不平衡电压,不平衡电压与作用在传感器上的载菏P成正比,从而将非电量转化成电量输出。

R1、R2、R3和R4组成惠更斯电桥,将2对电阻应变片的阻值变化转变成输出电压工作原理如图3所示:

图3测量电桥原理

3.2HX711电路

HX711采用了海芯科技集成电路专利技术,是一款专为高精度电子秤而设计的24位A/D转换器芯片。

与同类型其它芯片相比,该芯片集成了包括稳压电源、片内时钟振荡器等其它同类型芯片所需要的外围电路,具有集成度高、响应速度快、抗干扰性强等优点。

降低了电子秤的整机成本,提高了整机的性能和可靠性。

该芯片与后端MCU芯片的接口和编程非常简单,所有控制信号由管脚驱动,无需对芯片内部的寄存器编程。

输入选择开关可任意选取通道A或通道B,与其内部的低噪声可编程放大器相连。

通道A的可编程增益为128或64,对应的满额度差分输入信号幅值分别为±20mV或±40mV。

通道B则为固定的32增益,用于系统参数检测。

芯片内提供的稳压电源可以直接向外部传感器和芯片内的A/D转换器提供电源,系统板上无需另外的模拟电源。

芯片内的时钟振荡器不需要任何外接器件。

上电自动复位功能简化了开机的初始化过程。

HX711内部方框图如图4所示。

其外部管脚如图5所示

图4HX711内部方框图

图5HX711外部管脚图

图5为HX711芯片应用于计价秤的一个参考电路图。

该方案使用内部时钟振荡器(XI=0),10Hz的输出数据速率(RATE=0)。

电源(2.7~5.5V)直接取用与MCU芯片相同的供电电源。

通道A与传感器相连,通道B通过片外分压电阻与电池相连,用于检测电池电压。

本课题设计的HX711电路如图6所示:

图6HX711电路

3.3单片机电路

本课题设计的电子秤的单片机应用电路如图7所示:

图7STC89C52单片机电路

图中DOUT和PDSCK为单片机与HX711的AD转换电路交换数据的通信线。

beep为蜂鸣器报警信号线,alert为报警灯信号线,RXD和TXD为串口通信线,也可以用于单片机程序的串行ISP下载。

3.4显示电路

液晶屏电路如图8所示:

图8LCD显示电路

LCD_CS、LCD_RES、LCD_RS、LCD_SDA、LCD_SCK为液晶模块与单片机接口的控制线。

CS_ZK、SCK_ZK、SO_ZK和SI_ZK为字库和单片机接口的控制线。

该液晶为晶讯联公司的128*64汉字屏JLX12864G-086-PC显示信息。

该显示模块既可以当成普通的图像型液晶显示模块使用(即显示普通图像型的单色图片功能),又含有JLX-GB2312字库IC,可以从字库IC中读出内置的字库的点阵数据写入到LCD驱动IC中,以达到显示汉字的目的。

3.5电源电路

本设计采用USB接口供电,电源电压5V。

同时,USB接口通过内含PL2303芯片的转换电路对单片机进行程序编写。

其电路原理如图9所示:

图9供电及程序下载电路

3.6矩阵键盘电路

矩阵键盘电路如图10所示:

图10矩阵键盘电路

图中4*4矩阵键盘可以显示0-9数字、小数点和五个功能键。

键盘行扫描信号为ROW1—ROW4,列扫描信号为COL1—COL4。

行信号为输入信号,低电平有效;列信号为输出信号。

当没有键按下时,即使行扫描输入低电平信号,列信号仍为高电平;当行扫描为低电平并且有键按下时,相应的列输出低电平。

该低电平信

号可以定位至按下键的位置。

3.7声光报警器电路

声光报警电路如图11所示。

图11声光报警电路

当测量重量超过量程时,beep和alert给出低电平信号,驱动蜂鸣器鸣响,报警灯亮。

四、软件编程

4.1软件流程图

本设计主程序使用了定时器,用来实现每0.5秒称重一次的功能,流程图如图12所示。

键盘扫描程序如图13所示:

图12时钟中断

图13键盘扫描程序流程图

4.2总原理图五、程序分析

主程序软件流程如图14所示:

图14主程序流程图

五、结论与心得

对于此次设计,我学到了很多平时难得的东西,首先是团队协作,在这次设计当中,难免产生观点和意见的分歧,以及分工明细、时间安排等不合理,通过这次设计,我们体会到了团结合作的重要性及力量之强大,还有让我们处理事情更加有条理,思路更加清晰明了了,发现、提出、分析、解决问题和实践能力的提高都将受益于我在以后的学习、工作和生活中。

 

此次的设计,其实也是我们所学知识的一次综合运用,让我深深的认识到了学习单片机要有一定的基础,要有电子技术方面的数字电路和模拟电路等方面的理论基础,特别是数字电路;也要有编程语言的汇编语言或C语言。

要想成为单片机高手,我们首先要学好汇编语言,然后转入C语言学习,所以我们不能学到后面就忘了前面的知识,更应该将所学的知识紧紧的结合在一起,综合运用,所谓设计,就是要求创新,只有将知识综合运用起来才能真正的设计好。

六参考文献

[1]高峰,《单片微型应用系统设计及实用技术》北京机械工业出版社,2004

[2]李朝清,《单片机原理及接口技术》北京:

北京航空航天大学出版社,2010

[3]刘守义,《单片机应用技术》西安电子科技大学出版社,2008

[4]任元,吴勇,《常用电子元器件简明手册》北京:

工业出版社,2000

附件

主程序

#include

#include

#include

#include"lcd.h"

#include"hx711.h"

#include"keyboard.h"//定义量程系数

#defineRATIO1287/1000//1574/1000//2114/1623//定义标识

volatilebitFlagTest=0;//定时测试标志,每0.5秒置位,测完清0

volatilebitFlagKeyPress=0;//有键按下标志,处理完毕清0

volatilebitFlagSetPrice=0;//价格设置状态标志,设置好为1。

sbitLedA=P2^2;//管脚定义

sbitbeep=P1^0;

sbitalert=P1^1;

intCounter;//显示用变量

ucharidatastr1[6]="000000";

inti,iTemp;//称重用变量

unsignedlongidataFullScale;//满量程AD值/1000

unsignedlongAdVal;//AD采样值

unsignedlongweight;//重量值,单位g

unsignedlongidataprice;//单价,长整型值,单位为分

unsignedlongidatamoney;//总价,长整型值,单位为分

ucharkeycode;//键盘处理变量

ucharDotPos;//小数点标志及位置

voidint2str(int,char*);

voidData_Init();

voidPort_Init();

voidTimer0_Init();

voidTimer0_ISR();

voidINT1_Init();

voidKeyPress(uchar);

voidTo_Zero();

voidDisplay_Price();

voidDisplay_Weight();

voidDisplay_Money();

voidint2str(intx,char*str)//整型转字符串的函数,转换范围0--65536

{

inti=1;

inttmp=10;

while(x/tmp!

=0)

{

i++;

tmp*=10;

}

tmp=x;

str[i]='\0';

while(i>1)

{

str[--i]='0'+(tmp%10);

tmp/=10;

}

str[0]=tmp+'0';

}

voidTo_Zero()

{

Full

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

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1