电子称设计方案Word格式.docx
《电子称设计方案Word格式.docx》由会员分享,可在线阅读,更多相关《电子称设计方案Word格式.docx(11页珍藏版)》请在冰豆网上搜索。
2.1电阻应变传感器硬件设计
电阻应变式传感器是将被测量的力,通过它产生的金属弹性变形转换成电阻变化的元件。
由电阻应变片和测量线路两部分组成。
电阻应变片产生的误差,主要来源于温度的影响,本设计主要在实验室内进行,温度的影响暂不处理。
电阻应变式传感器结构图如图2所示。
图2电阻应变式传感器结构图
在电桥测量电路中,将一对变化相反的应变片接入电桥一臂,另一臂接两个相同的阻值作为基准值;
当桥臂电阻初始值R1=R2=R3=R4=350时平衡,其变化值为ΔR1=ΔR2=ΔR3=ΔR4=d时,其桥路输出电压Uout与d成正比。
2.2放大电路硬件设计
由于传感器输出的信号比较微弱,必须通过一个放大器对其进行放大,才能满足A/D转换器对输入信号电平的要求。
本设计中选用由三运放构成的具有高输入阻抗,高共模抑制比的仪表放大器作为前级,再接一个反相比例放大器作为后级输出。
另外,仪表放大电路中电阻Rw1可用于微调放大倍数;
而后级放大器原接地端现在通过Rw2接入一电压值,可以对输出电平进行平移。
放大电路图如图3所示。
图3传感器输出信号放大电路图
2.3单片机硬件设计
1.单片机最小系统
对51系列单片机来说,最小系统一般应该包括单片机、晶振电路和复位电路。
单片机的最小系统电路图如图4所示。
图4单片机最小系统电路图
复位电路:
由电容串联电阻构成,一般C
取10u,R取8.2K.当然也有其他取法的,原则就是要让RC组合可以在RST脚上产生不少于2个机周期的高电平。
晶振电路:
典型的晶振取11.0592MHz(因为可以准确地得到9600波特率和19200波特率,用于有串口通讯的场合)/12MHz(产生精确的us级时歇,方便定时操作)。
2.模数转换与单片机接口
ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。
它是逐次逼近式A/D转换器,可以和单片机直接接口。
(1)引脚说明:
ADC0809的引脚图如图5所示。
图5ADC0809引脚图
IN0-IN7:
8条模拟量输入通道,要求信号单极性,电压范围是0-5V;
地址输入和控制线:
4条
数字量输出及控制线:
11条
CLK为时钟输入信号线:
所需时钟信号必须由外界提供;
VREF(+),VREF(-):
参考电压输入。
(2)工作过程:
ST为转换启动信号,当ST上跳沿时,所有内部寄存器清零;
下跳沿时,开始进行A/D转换;
在转换期间,ST应保持低电平。
EOC为转换结束信号。
当EOC为高电平时,表明转换结束。
OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。
OE=1,输出转换得到的数据;
OE=0,输出数据线呈高阻状态。
D7-D0为数字量输出线。
(3)接口电路:
接口电路电路图如图6所示。
图6接口电路图
ADC0809的时钟由51ALE信号给出;
数字量输出和51P0口直接相接;
地址控制线同样使用P0口,用一片74373锁存地址,然后连入ADDA~ADDC,373的使能由51ALE控制;
ADC0809各个使能端们由P2.0和读写标志口共同控制,任意写一个数时允许ADALE并启动转换(ADSTART端);
读入时应该使AD读端口使能(ADENABLE端);
数字量传输使用中断方式,将ADEOC接入51INT0,转换完成后可以触发51执行中断程序。
这样连接的ADC由于使用51P2.0口和ADIN0,地址应该是0xFEF8;
实际使用的实验箱中有唯一地址译码器,地址为0xcfa0;
另外,实验箱部分电路已经连好,包括51最小系统和AD、显示输出的必要连线,Vref也已经连为5V不能改变。
ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。
多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。
三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。
ADC0809对输入模拟量要求:
信号单极性,电压范围是0-5V,若信号太小,必须进行放大;
输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。
3.显示输出单元与单片机接口
利用8279键盘显示接口电路和实验箱上提供的数码显示,可以完成该功能。
利用8279可实现对键盘/显示器的自动扫描,以减轻CPU的负担,且具有显示稳定、程序简单、不会出现误动作等特点。
8279操作命令字较多,根据需要来灵活使用。
实验箱中数码显示地址为0xcfe8,将七段显示编码送入即可;
显示控制单元地址为0xcfe9,可以控制输出到哪一位数码显示块上。
在单片机应用系统中使用LED显示块构成N位LED显示器。
N位LED显示器有N根位选线和8*N根段选线。
根据显示方式不同,位选线与段选线的连接方法不同。
段选线控制字符选择,位选线控制显示位的亮,暗。
LED显示器有静态显示与动态显示两种方式。
我们使用的为动态显示LED动态显示方式。
4.去皮/清零键与单片机的接口
将一手动控制的高低电平信号(手动单脉冲)送入单片机P1.0口,通知单片机进行去皮操作。
2.4总体硬件原理图
1.总体硬件原理图如图7所示。
图7总体硬件原理图
3软件设计
3.1数据采集与放大倍数
传感器输入:
选择一个合适的电桥基准电压,传感器电桥输出电压为300.50mV~301.45mV,对应0~20g重物,平均每克变动不到0.1mV;
由于它的变动范围很小,因而设计300mV的偏移量,不让其在0mV上下变动,以减少运放零漂的影响。
输出到AD:
ADC0809的Vref在实验箱内已经设定为5V,因而其分辨率约为5V/256=20mV。
这样,信号的放大倍数应该在200~400左右。
为了使输出更准确,使用+/-15V电源给集成运放供电,最后采用分压电阻使其符合0~5V的AD输入。
根据选取的参数值以及Rw1所调的阻值1k,总的放大倍数为25/1*47/5.1*33/10*1/3=253。
3.2数字量的处理
放上秤盘,调节Rw2,使放大器输出约为0.5V。
这时放上重物200g,放大器输出约2.7V左右。
根据放大器输出电压对应的数字值,以及重物重量(输出显示值),可以确定它们的关系。
如表1所示。
表1数字量值和重量显示的关系表
砝码个数
1
2
3
4
5
6
7
8
9
10
数字量值
31
43
55
59
71
88
104
112
119
131
139
重量显示
20
40
60
80
100
120
140
160
180
200
4源程序
单片机程序主要是输出显示和去皮清零两大部分。
输出显示时需要做乘法运算,同时换成相应的十进制数;
去皮/清零时需要根据操作者的指示预存一个数字信号。
设计的程序如下。
#include<
reg51.h>
absacc.h>
#defineLed_datXBYTE[0xcfe8]
#defineLed_ctlXBYTE[0xcfe9]
#definead_portXBYTE[0xcfa0]
Unsignedchartable1[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
/*0-9*/
unsignedcharresig=0,renow=0,vbase=0;
voidDisplay_byte(unsignedcharloc,unsignedchardat)
/*将ad转换的数字值处理并显示为十进制*/
{
unsignedintm;
unsignedchartab[3];
loc&
=0xf;
m=dat*1.75;
/*换算倍数关系,根据3.2节中p1=1.784*/
tab[0]=m/100;
//计算各位
tab[1]=m/10;
tab[1]=tab[1]%10;
tab[2]=m%10;
Led_ctl=loc|0x80;
Led_dat=table1[tab[0]];
/*显示由ad转换得到数(对应的十进制数)的高位*/
loc++;
Led_dat=table1[tab[1]];
/*显示由ad转换得到数(对应的十进制数)的中位*/
Led_dat=table1[tab[2]];
}
voiddelay(unsignedintt)
for(;
t>
0;
t--);
voidmain(void)
Led_ctl=0xd1;
//init
while((Led_ctl&
0x80)==0x80);
Led_ctl=0x31;
while
(1)
ad_port=0;
//准备读ad
while(INT0);
while(!
INT0);
renow=P1;
if(renow!
=resig)
//清零按键
{
vbase=ad_port;
resig=renow;
}
else{//输出显示
Display_byte(0,ad_port-vbase);
delay(20000);
5结论
本课程设计制作的电子秤,集传感器技术、微机技术于一体,实现了基本的秤重显示功能,稍加扩展,还可与其他生产质量管理系统相连接,实现数据交换记录分析等功能,具有推广应用价值。
课程设计过程中,将课上学习的理论知识加以运用,锻炼了自主学习能力,遇到不懂的查资料,出现问题相互讨论,实际操作中锻炼的动手能力。
老师的指导和帮助功不可没,还学会了使用Protel软件的方法,从而学会了更多的知识和提高了自主学习的能力。
在实际操作中,放大器部分遇到的问题最大。
由于传感器输出电压较小,使得放大电路的调适任务比较困难。
对此,先是选用合适的电路形式,即仪表放大接一级可调电平高低的比例放大;
接下来给放大器各级输入一个容易实现的电压,看看各级放大倍数是否与理论相符;
这之后再使传感器输出在一个基准值上下变化,如300mV,而不是在0上下变化,这样放大出的电压较为稳定;
增加的基准电压由第三级调到0左右,不能准确调零的部分再由单片机去皮/清零。
6课程设计体会
上传感器也有几个月了,在设计之初并没象想象的那么简单,因为平时总是学的理论,而这次是亲手的动手操作,虽然说很累,但感觉收获却特别大。
同时也学会了很多传感器的应用,因此对很多传感器都有了初步的了解。
传感器在平常学习时并不清楚它的具体功能,通过这几天的课程设计,我们查资料,仔细研究它们的逻辑功能,用途,要求等,终于基本完成了我设计。
这激发了我们学习专业知识的兴趣,也增强了我们的动手能力。
但同时,由于掌握的知识有限,在设计过程中我们遇到一些问题我们暂时还没有能力去解决。
因此,在以后的学习中,尽可能地扩大自己的知识面,不能仅仅只局限课本,要更加刻苦地努力地去学习专业知识,充分利用图书馆和网络资源,多查多学多练,打好扎实功底,为以后的更好的发展奠定一个坚实的基础。
通过此次课程设计也更加坚定了我们学好后续课程和温习学过的知识还有利用课余时间拓展自己知识面的决心!
相信在老师的指导下,再加上自己不懈努力,我们一定不会成功。