1、传感器与检测技术综合训练报告第 1 页 共 17 页应变式称重系统学院名称: xxxx 工程学院 专 业: 电气工程及其自动化 班 级: xxxxxx 姓 名: xx 学 号: xxxxxx 指导教师: xxx 20xx 年 xx 月单 片 机 原 理 与 应 用文传感器与检测技术综合训练报告第 1 页 共 17 页目录1 概述 -11.1 引言 -11.2 采用应变片称重的基本原理 -11.3 组成及框图 1.4 电路原理图 -12 硬件电路设计 -22.1 应变电桥电路 -22.2 仪表放大器电路 -32.3 A/D转换电路 -52.4 显示电路 -63 软件设计 -73.1 程序流程图
2、-73.2 源程序清单 -74 系统调试与分析 -94.1 硬件调试 -94.2 软件调试 -104.3 综合调试 -104.4 故障分析与解决方案 -105 功能测试及结果分析 -115.1 测试仪器 -115.2 测试结果与分析 -116 体会与建议 -11 参考文献 -12传感器与检测技术综合训练报告第 3 页 共 20 页附 录 -13附录一:Multisim7 软件仿真图-附录二:实验数据拟合曲线图-附录三:CSY9.0 测量结果图 - 附录四:实验硬件连接图-附录五:源程序清单-传感器与检测技术综合训练报告第 1 页 共 20 页1概 述1.1.前 言在现在的日常生活中,电子称的应
3、用领域非常广泛。与传统的机械称重相比,其具有很大的优势。传统的机械称在称重的时候由于人为因素,误差很大。而此次传感器实训,使用的是精度高,智能化程度高的应变片称重传感器。由于应变片的体积小,商品化的形势以适应各种应用场合,所以用应变片制造的应变片压力传感器在测量力,力矩、压力、加速度、重量等参数中仍有非常广泛的应用。1.2.应变称重系统基本原理利用传感器与检测技术实验室已有的应变式称重台,将四片应变片此采用全桥形式接入测量电路,经过运放 OP07 组成仪表放大器放大,再由串行模数转换芯片 TLC549 进行 A/D 转换,转换结果送入单片机 At89C51,通过同向门 7407 驱动四位数码管
4、显示。仪表放大器的输出需经采集卡采集,经 CSY9.0 虚拟仪器软件分析,得到较好的线性度和灵敏度后,再送入 AD 芯片进行转换。1.3.组成及框图应变电桥 仪表放大器 A / D 转化A T 8 9 C 5 17 4 0 7 驱动数码管数码管显示数据采集C S Y 虚拟仪器数据分析1 5 V 供电图 1 系统框图1.4 电路原理图传感器与检测技术综合训练报告第 2 页 共 20 页2硬件电路设计2.1 应变电桥电路电阻应变式传感器是利用电阻应变片将应变转换为电阻变化的传感器,传感器由在弹性元件上粘贴电阻应变敏感元件构成。当被测物理量作用在弹性元件上时,弹性元件的变形引起应变敏感元件的阻值变化
5、,通过转换电路转换成电量输出,电量变化的大小反映了被测物理量的大小。应变片是最常用的测力传感元件。当用应变片测试时,应变片要牢固地粘贴在测试体表面,测件受力发生形变,应变片的敏感栅随同变形,其电阻值也随之发生相应的变化。通过测量电路,转换成电信号输出显示。当具有初始电阻值 R 的应变片粘贴于试件表面时,试件受力引起的表面应变,将传递给应变片的敏感栅,使其产生电阻相对变化 。在一定应变范围内 与/R/R的关系满足下式:K式中, 为应变片的轴向应变。 定义 为应变片的灵敏系数。它表示安装在被测试件上的应变在其轴(/)KR向受到单向应力时,引起的电阻相对变化 与其单向应力引起的试件表面轴向应/R变
6、之比。 电阻应变片计把机械应变转换成 后,应变电阻变化一般都很微小,例如传/感器的应变片电阻值 120,灵敏系数 K=2,弹性体在额定载荷作用下产生的应变 1000,应变电阻相对变化量为: 6/*210.02RK可以看出电阻变化只有 120*0.002=0.24,其电阻变化率只有 0.2%。这样小的电阻变化既难以直接精确测量,又不便直接处理。因此,必须采用转换电路,把应变片计的 变化转换成电压或电流变化。通常采用惠斯登电桥电路实现这种转换。/R若将电桥四臂接入四片应变片,如图 2 所示,即两个受拉应变,两个受压应变,将两个应变符号相同的接入相对桥臂上,构成全桥差动电路。传感器与检测技术综合训练
7、报告第 3 页 共 20 页图 2 全桥电路在接入四片应变片时,需满足以下条件:相邻桥臂应变片应变状态应相反,相对桥臂应变片应变状态应相同。可简称为:“相邻相反,相对相同”。 此时 ()()2oERRUE全桥差动电路不仅没有非线性误差,而且电压灵敏度是图 2 全桥电路为单片工作时的 4 倍,同时具有温度补偿作用。当 E 和电阻相对变化一定时,电桥的输出电压及其电压灵敏度与各桥臂阻值的大小无关。2.2仪表放大器电路2.2.1仪表放大器工作原理由于传感器的输出信号往往较小,必须经过放大电路进行调理放大,再进行测量。常用的放大电路可以由单运放放大器、双运放放大器、三运放放大器或直接由集成仪表放大器(
8、如 AD620、AD623)等构成。下面以三运放构成的仪表放大器为例说明仪表放大器的工作原理及性能指标,运算放大器选择高精度运放 OP07。图 3 OP07 管脚功能图2.2.3仪表放大器工作电路传感器与检测技术综合训练报告第 4 页 共 20 页图 4、图 5 是压力传感器的测量电路,并在 Multisim7 仿真软件仿真测试(见附录一),由两个部分组成。前一部分是采用三个运放构成的仪表放大器,后面的放大器将仪表放大器的输出电压进一步放大。R8 是电桥的调零电阻,R17 是整个放大电路的调零电阻,R8,R19 调整运放增益。仪表放大器因为输入阻抗高,共模抑制能力好而作为电桥的接口电路。其增益
9、可用下式表示: 2718RA反相放大器部分的增益可用下式表示: 49215R图 4 仪表放大器传感器与检测技术综合训练报告第 5 页 共 20 页图 5 反向放大器2.3.A/D 转换电路一般电子秤的 A/D 转换精度越高越好,A/D 精度越高,电子秤的灵敏度越高。但12 位的 A/D 芯片价格比较贵,考虑到实验室条件,本次设计采用 8 位串行 A/D 芯片TLC549。TLC549 是美国德州仪器公司生产的 8 位串行 A/D 转换器芯片,可与通用微处理器通过 SDO、SCLK、CS 三条口线进行串行接口 “具有 4MHz 片内系统时钟和软硬件控制电路,转换时间最长 17 微秒。允许的最高转
10、换速率为 40000 次/秒。总失调误差最大为0.5LSB(最低有效位)。可用于较小信号的采样。与 AT89C51 的具体连接线路如图6 所示。REF+接 5V 电源,REF-接地, TLC549 的 AIN 引脚接仪表放大器的输出端。SDO、CS 、SCLK 分别接 AT89C51 的 P1.0、P1.1、P1.2 引脚。传感器与检测技术综合训练报告第 6 页 共 20 页图 6 TLC549 电路连接TLC549 在读出前一次数据后,马上进行电压采样,ADC 转换,转换完后就进入HOLD 模式,直到再次读取数据时,芯片才会进行下一次 A/D 转换。也就是说,本次读出的数据是前一次转换的值,
11、读操作后就会再启动一次转换,一次转换所用的时间最长为 17uS。2.4.显示电路采用 4 个共阴数码管,以动态扫描方式显示电压值,如下图示。传感器与检测技术综合训练报告第 7 页 共 20 页图 6 显示电路3.软件设计3.1 程序流程图初始化函数开始A / D 转换 2 0次取平均值数据转换成毫伏级电压及 B C D 码转换动态显示电压值传感器与检测技术综合训练报告第 8 页 共 20 页3.2 源程序清单 (见附录六)4.系统调试与分析4.1 硬件调试硬件调试是整个调试步骤中第一步,硬件电路的正确性,是其它各部分正常工作的先决条件。(1) 首先判断购买的各个元器件本身是否已经损坏,再则根据
12、电路原理图仔细检查元器件是否有组装上的错误,诸如极性电容、集成块安装方向错误等。再利用万用表检测各个焊点是否存在虚焊等问题,并且按照原理图一部分一部分的检测,着重注意走线、接点之间是否存在相互间的短路、开路或接错等。(2) 根据图 10 所示,应变式传感器已经装在传感器试验台上。传感器中各应变片上的 R1、R2、R3、R4 接线颜色分别为黄色、蓝色、红色、白色,可用万用表测量同一种颜色的两端判别,R1=R2=R3=R4=350。图 10 应变式传感器安装示意图(3) 接入电源,拨通电源开关,将实验板调节增益电位器 R8(参考图 7 和图 8)顺时针调节大致到中间位置,再进行仪表放大器调零,方法
13、为将仪表放大器的正、负输入端(在做板时要预留插孔)与地短接,调节电路板上调零电位器 R17,输出的电压读数为零,关闭电源。(注意:当 R8、R17 的位置一旦确定,就不能改变)(4) 电路板上的 R1、R2、R4 和 R5 接入电桥,接成直流全桥。检查接线无误后,接通电源。调节电桥调零电位器 R3,使电路板的输出电压压降为零。传感器与检测技术综合训练报告第 10 页 共 20 页4.2 软件调试软件调试主要应用 Keil 软件进行程序的调试,Keil 软件全面支持汇编语言,C51语言的编译/连接、调试。(1) 显示程序的调试:编写显示程序,在数码管上显示 1,2,3,4 或其它已知信息。当数码
14、管能够正常显示则显示程序及硬件部分正确。(2) A/D 转换程序的调试:参照 TLC549 的数据手册,根据数据手册上的时序图编写程序,在 TLC549 的模拟输入端输入已知电压,经转换在数码管上显示电压值。4.3 综合调试在完成了硬件和软件调试工作以后,便可进行系统的综合调试。综合调试一般采用全速断点调试运行方式,在这个阶段的主要工作是排除系统中遗留的错误以提高系统的动态性能和精度。4.4.故障分析与解决方案4.4.1 故障出现情况(1)在调节应边桥的调零电阻时,电路输出电压不为零;(2) 四个数码管显示的数字显示不正确。4.4.2 解决方案(针对上述故障一一对应的解决方案)(1) 重新接入
15、应变桥的八根线路。根据:相邻桥臂应变片应变状态应相反,相对桥臂应变片应变状态应相同。即简称为:“相邻相反,相对相同”的原理,发现应变桥的接线接反了。(2)起初怀疑是虚短的问题。因为我的板子上八个段选线靠的很近。但是用万用表检查后,排除以上可能。再次检查程序。发现硬件连接的四根位选信号跟程序中定义的信号没有对应。5.功能测试及结果分析5.1 测试仪器传感器与检测技术综合训练报告第 11 页 共 20 页(1) 应变式称重台(2) 直流稳压电源(3) 数字万用表5.2 测试结果在托盘上放置一只砝码,读取电压数值,依次增加砝码和读取相应的电压值。记下实验结果填入表 1 中。表 1 测试数据重量 60
16、 80 100 120 140 160 180 200 220电压 42 92.5 142 188 236 285 324 373 429从表中的数据可以看出,每增加20g的砝码,电压就增大55mv左右,线性度较好,测量效果较好。6.结束语本次试验结束之后我对传感器有了更进一步的了解。应变片传感器反应不时很灵敏,所以在取数据的时候还要稍微等一会,而我做出来的电子称精度也达到107.85mv/g,这个精度已经相当好了,可以测出很小的重量变化。同时我在调试电路时发现一个问题就是,这次我做的系统结果会产生很大的漂移,这对测量结果又很大的影响,这就是电路中需要改进的地方。附录一:附录二:传感器与检测技
17、术综合训练报告第 12 页 共 20 页附录三:附录四:附录:附录一:Multisim7 软件仿真图传感器与检测技术综合训练报告第 13 页 共 20 页附录五: 源程序清单#include传感器与检测技术综合训练报告第 14 页 共 20 页#include#define led P0#define uchar unsigned char#define uint unsigned intuint Volt; /电压换算并扩大 1000 倍uchar num;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/
18、* 0 1 2 3 4 5 6 7 8 9 */* TLC549 和数码管为选声明 */sbit CLK = P10; /时钟sbit DO = P11; /数据输出sbit CS = P12; /片选sbit w1 = P20;sbit w2 = P21;sbit w3 = P22;sbit w4 = P23;/* 延时 1ms 函数 */void delay(uint z) / 延时函数uint x,y;for(x = z; x 0; x-)for(y = 110; y 0; y-);/* 串口初始化函数 */void init() TMOD=0x01; /设置定时器 0 为工作方式 1(
19、0000 0001)TH0=(65536-45872)/256; /装初值 50ms 一次中断传感器与检测技术综合训练报告第 15 页 共 20 页TL0=(65536-45872)%256;EA=1; /开总中断ET0=1; /开定时器 0 中断TR0=1; /启动定时器 0 /* TLC549 芯片 AD 转换模块 */uchar TLC549_ADC(void) /TLC549 转换函数uchar i, tmp;CS = 1; /CS 置高,片选无效CLK = 0;CS = 0; /CS 置低,片选有效 ,同时 DO 输出最高位_nop_();_nop_(); /适当延迟时间 1.4us
20、 等待启动(大概需要内部系统时钟的两个上升沿和其后的下降沿)for(i = 0; i 8; i+) /串行数据移位输入 tmp = 1;tmp |= DO;CLK = 1; /在 CLK 的下降沿读取数据_nop_(); /CLK 保持低电平一段时间等待数据读出CLK = 0;CS = 1; /CS 置高,DO 处于高阻状态,且 CLK 禁止 (转换完成系统必须马上把 CS 置高for(i = 17; i != 0; i-) _nop_(); /转换周期最大 17usreturn (tmp);/* AD 读数转十进制函数 */传感器与检测技术综合训练报告第 16 页 共 20 页void Da
21、ta_Conversion(void)uchar AD_Data;AD_Data = TLC549_ADC();Volt = 5.0 / 256 * AD_Data * 1000; /扩大 1000 倍以输出小数/* 数码管显示函数 */void display()uchar i,j,k,l;i = Volt / 1000 ; /个位加小数点j = Volt / 100 % 10; /十分位k = Volt / 10 % 10; /百分位l = Volt % 10; /个位w1=0;w2=1;led=tablei;delay(1);w1=1;w2=0;led=tablej;delay(1);w
22、2=1;w3=0;led=tablek;delay(1);w3=1;w4=0;led=tablel; /V 符号,电压单位传感器与检测技术综合训练报告第 17 页 共 20 页delay(1);w4=1;/* 主函数 */void main()unsigned char i=0;for(i=0;i=9;i+)w1 = 0;w2 = 0;w3 = 0;w4 = 0;P0=tablei; /扫频显示 09delay(200);delay(200);delay(200);init();while(1)display();/* 定时器 0 服务函数 */void T0_time() interrupt 1TH0=(65536-45872)/256; /重装初值TL0=(65536-45872)%256; 传感器与检测技术综合训练报告第 18 页 共 20 页num+; if(num=10) /0.5 进行一次采样num=0; /然后把 num 清 0 重新计时Data_Conversion();