传感与检测技术实验指导书附程序.docx
- 文档编号:5919743
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:25
- 大小:2.32MB
传感与检测技术实验指导书附程序.docx
《传感与检测技术实验指导书附程序.docx》由会员分享,可在线阅读,更多相关《传感与检测技术实验指导书附程序.docx(25页珍藏版)》请在冰豆网上搜索。
传感与检测技术实验指导书附程序
《传感与检测技术》实验指导书
电子与电气工程系
前言
传感与检测技术实验包括传感与检测技术的五个试验及课程设计部分,我们利用单片机课程设计制作的开发板作为控制平台,然后在配合我们在本课程设计中发给大家的传感器电路板及A/D、D/A电路板来完成规定的任务,这样既有效利用了我们大家手头上的资源,也对所学的知识达到了系统的实践练习。
系统的架构如图所示。
检测与转换技术课设系统的架构
实验所用到的资料(注:
不再附文字说明,看图名即知)
单片机开发板(见附录)
传感器模块开发板电路原理图及PCB
1、光敏电阻实验
一、实验目的
了解光敏电阻光电特性:
即供电电压一定时,电流—照度的关系。
了解光敏电阻的伏安特性:
即射入照度一定时,电流—偏压的关系。
用万用表测试光敏电阻的亮电阻、暗电阻以及光敏电阻在不同光照度下的阻值,根据这些参数绘制出光敏电阻的光照特性曲线。
二、实验设备及器件
IBMPC机一台
单片机开发板板一台
三、实验内容
基本原理:
光敏电阻是一种当光照射到材料表面上被吸收后,在其中激发载流子,使材料导电性能发生变化的内光电效应器件。
最简单的光敏电阻由一块涂在绝缘基底上的光电导体薄膜和两个电极所构成。
当加上一定电压后,光生载流子在电场的作用下沿一定的方向运动,在电路中产生电流,这就达到了光电转换的目的。
四、实验步骤:
1、
了解实验原理。
2、根据图接线。
3、检查接线是否正确
4、关闭光强开关,记下电流表的读数(暗电流),照度表读数,并将记录分析数据。
5、根据所得结果作出照度-电流曲线。
6、画出参考曲线。
2、红外光电传感器试验
一、实验目的
了解红外通讯知识,能够应用红外进行无线控制设计,了解光电转速传感器测量转速的原理及方法。
二、实验设备及器件
IBMPC机一台
单片机开发板板一台
传感器模块开发板一台
三、实验内容
传感器电路板上的红外光电传感器是反射式发射接收一体化红外光电传感器,当有浅色障碍物遮挡时传感器输出信号会发生变化,可以通过电路板上的LED指示进行观测,可以测量转速、位置等变化量。
试验时可以通过万用表和示波器来测量传感器的参数和性能,记录这些参数并通过分析可以对红外光电器件有一个直观的认识,也可以把它的输出直接送给单片机开发板,通过单片机进行对象的测量和控制。
使用单片机的串口发送并接收数据,TxD接到红外发送管,RxD接到红外接收头,实现无线通讯。
红外收发电路
四、实验要求
通过实验掌握红外通讯的基本原理。
五、实验步骤
1.B2区X2插入20MHz的晶振。
2.将B2区的1/512频率输出端接到D3区的DCLK。
(约为39KHz,用于信号调制)
3.将A2区的RXD、TXD分别连接到D3区的DREC、DSEND。
4.用短路器将D3区JP9短接(D3区电路供电电源)。
5.将A2区的P10连接到D1区的LED1。
6.下载程序并运行,使用较厚的白纸挡住红外发射管红外信号,使其反射到接收头,
观察LED1是否点亮。
红外收发实验示意图
说明:
一般红外接收模块的解调频率为38KHz,当它接收到38KHz左右的红外信号时将输出低电平,但连续输出低电平的时间是有限制的(如100mS),也就是说发送数据的低电平宽度是有限制的。
注意:
发送管应与接收头平行,否则接收头可能接收不到来自发射管的反射光。
七、实验参考程序
/*************************************************************
*文件名:
DP_51PRO_IRDA.C
*功能:
DP_51PRO实验仪红外收发实验。
使用串口发送数据经调制后从红外管输出,
*并通过红外接收模块把接收到的数据返回串口接收端,通过判断接收到的数
*据来控制LED灯的亮或灭。
*************************************************************/
#include
#defineuint8unsignedchar
#defineuint16unsignedint
sbitLED_CON=P1^0;//定义LED控制口
/*************************************************************
*名称:
UART_SendByte()
*功能:
向串口发送一字节数据。
*入口参数:
dat要发送的数据
*出口参数:
无
*************************************************************/
voidUART_SendByte(uint8dat)
{SBUF=dat;//发送数据
while(TI==0);//等待发送完毕
TI=0;//清零TI标志
}
/*************************************************************
*名称:
UART_RcvByte()
*功能:
接收一字节串口数据。
*入口参数:
dat接收变量的地址指针
*出口参数:
返回0表示没有数据,返回1表示接收到数据
*************************************************************/
uint8UART_RcvByte(uint8*dat)
{if(RI==0)return(0);//若没有接收到数据则返回0
*dat=SBUF;//取得接收的数据
RI=0;//清除RI标志
return
(1);
}
/*************************************************************
*名称:
UART_Init()
*功能:
串口初始化。
模式为1位起始位,8位数据位,1位停止位,波特率为9600。
*入口参数:
无
*出口参数:
无
*说明:
晶振为11.0592MHz,使用T1作为波特率发生器。
*************************************************************/
voidUART_Init(void)
{SCON=0x50;
TMOD=0x20;
TH1=0xFD;
TR1=1;
}
/*************************************************************
*名称:
main()
*功能:
主函数,初始化串口后不断地发送及接收数据,若接收到所发送的数据则
*点亮LED。
*************************************************************/
intmain(void)
{uint8i;
uint16j;
uint8rcv_dat;
uint8count;
UART_Init();
while
(1)
{count=0;//计数变量清零
for(i=0;i<50;i++)//发送及接收50个数据
{UART_SendByte(0x5A);
if(UART_RcvByte(&rcv_dat)!
=0)
{if(0x5A==rcv_dat)count++;//若接收的数据为0x5A,则计数变量加1
}
}
if(count>40)LED_CON=0;//若接收到0x5A的个数大于40个时,点亮LED
elseLED_CON=1;//否则熄灭LED
for(j=0;j<500;j++);
}
return(0);
}
3、霍尔传感器试验
一、实验目的
了解磁电式测量转速的原理,通过测量磁场来检测一些物理量,如:
转速,位置等。
实验时通过万用表的测量来记录霍尔传感器的性能参数,也可以把它的输出直接送给单片机开发板,通过单片机进行对象的测量和控制。
二、实验设备及器件
IBMPC机一台
单片机开发板板一台
传感器模块开发板一台
三、实验内容
传感器电路板上的霍尔传感器是美国霍尼韦尔公司的A3144或A44E,属于开光型霍尔传感器,输出为OC形式,和UGC3020结构一样,但驱动电流更大,可以达到200MA可以直接驱动继电器控制大功率负载。
前端主要是通过测量磁场来检测一些物理量,如:
转速,位置等。
实验时通过万用表的测量来记录霍尔传感器的性能参数,也可以把它的输出直接送给单片机开发板,通过单片机进行对象的测量和控制。
基本原理:
基于电磁感应原理,N匝线圈所在磁场的磁通变化时,线圈中感应电势发生变化,因此当转盘上嵌入N个磁棒时,每转一周线圈感应电势产生N次的变化,通过放大、整形和计数等电路即可以测量转速。
四、实验步骤:
1、根据图9将磁电式转速传感器安装于磁电架上,传感器的端面对准转盘上的磁钢并调节升降杆使传感器端面与磁钢之间的间隙大约为2~3mm。
2、首先在接线以前,合上主机箱电源开关,将主机箱中的转速调节电源2—24v旋钮调到最小(逆时针方向转到底)后接入电压表(显示选择打到20v档);然后关闭主机箱电源,将磁电式转速传感器、转动电源按图9所示分别接到主机箱的相应电源和频率/转速表(转速档)上。
磁电转速传感器实验安装、接线示意图
3、合上主机箱电源开关,在小于12V范围内(电压表监测)调节主机箱的转速调节电源(调节电压改变电机电枢电压),观察电机转动及转速表的显示情况。
4、从2V开始记录每增加1V相应电机转速的数据(待电机转速比较稳定后读取数据);画出电机的v—n(电机电枢电压与电机转速的关系)特性曲线。
实验完毕,关闭电源。
4、A/D转换实验
一、实验目的
1.掌握A/D转换与单片机的接口方法。
2.了解A/D芯片ADC0809转换性能及编程。
3.通过实验了解单片机如何进行数据采集。
二、实验设备及器件
IBMPC机一台
单片机开发板板一台
传感器模块开发板一台
数字万用表一台
ADC0809PACK模块一套
三、实验内容
利用实验板上的ADC0809做A/D转换器,实验板上的电位器提供模拟量输入,编制程序,将模拟量转换成二进制数字量,并用发光二极管显示。
四、实验电路连线
A/D,D/A转换模块
PCB图
A/D电路图
五、实验说明
1.A/D转换器大致有三类:
一是双积分A/D转换器,优点是精度高,抗干扰性好,价格便宜,但速度慢;二是逐次逼近A/D转换器,精度、速度、价格适中;三是并行A/D转换器,速度快,价格也昂贵。
2.本实验用的ADC0809属第二类,是八位A/D转换器。
每采集一次一般需100μs,A/D转换结束后会自动产生EOC信号。
本程序是用查询方式读入A/D转换结果。
实验系统具有8路A/D通道(模拟量输入端为IN0、IN1……IN7),地址分别为FF80~FF87H,状态口地址FF91H,FF91H的D0位输入的是EOC信号,D0=0表示未转换完,D0=1表示转换完毕,可以读入转换好的数据了。
实现转换的过程是:
先向某一路通道写入任意数从而启动转换,然后从FF91H读入EOC状态进行判断,若转换完成,则读入数据即可。
A/D转换部分的参考程序如下:
MOVDPTR,#0FF80H;选中通道0(D2D1D0=000)
MOVX@DPTR,A;启动转换
MOVDPTR,#0FF91H
TEST:
MOVXA,@DPTR;读入状态
JNBACC.0,TEST;判断EOC状态,EOC=0继续查询
MOVDPTR,#0FF80H;EOC=1,转换完毕
MOVXA,@DPTR;读入数据
3.转换得到的二进制数字量通过P1口送到发光二极管显示。
六、参考程序框图
否
是
A/D转换参考程序框图
5、D/A转换实验
一、实验目的
1.了解D/A转换的基本原理。
2.了解D/A转换芯片0832的性能及编程方法。
3.了解单片机系统中扩展D/A转换的基本方法。
二、实验设备及器件
IBMPC机一台
DP-51PROC单片机综合仿真实验板一台
DAC0832PACK模块(选配件)一套
三、实验内容
1.利用DAC0832将任意1字节数字量转换成电压模拟量,用电压表测量输出电压。
2.编制程序产生锯齿波、三角波,用示波器观看。
四、实验电路连线
实验板结构及电路图如所示。
五、实验说明
1、D/A转换是把数字量转换成模拟量的变换,实验板上D/A电路输出的是模拟电压信号。
本实验系统具有2路D/A(输出为Vo1、Vo2),采用单缓冲方式,数据口地址FF90H,控制口地址FF91H,其中FF91H的D1位输出正跳变信号控制CH0路D/A,FF91H的D2位输出正跳变信号控制CH1路D/A,实现转换的过程是:
先将要转换的数字量写入FF90H口(用MOVX指令),然后将正跳变控制信号经FF91H口送出(用MOVX指令),使0832缓冲器打开,开始D/A转换。
任意1字节数(如设为7FH)D/A转换的参考程序如下:
MOVDPTR,#0FF90H
MOVA,#7FH;待转换的数字量送A
MOVX@DPTR,A;然后送FF90H口
MOVDPTR,#0FF91H
MOVA,#0FDH;控制位D1=0送A
MOVX@DPTR,A;然后送FF91H口
MOVA,#0FFH;控制位D1=1送A
MOVX@DPTR,A;然后送FF91H口(即D1位得到一个正跳变)
2、要产生锯齿波、三角波,比较简单的方法是表格法:
先产生这二个波形的数据表格,然后依次查表得到波形中一点的数字量,送D/A转换,得到模拟量的电压信号,再送示波器显示。
这种表格法对输出较复杂的波形(如正弦波或其他任意波形)是非常有用的。
产生锯齿波和三角波的表格只需由数字量的增减来控制,同时要注意三角波要分段来产生。
也可用教材中的编程法:
用一段程序来产生锯齿波或三角波,
3、D/A转换取值范围为一个周期,在一个周期数据点越多,精度越高些。
本例采用的数据点为256点/周期,即最小数字量为0,最大为255(FFH)。
4、8位D/A转换器的输入数据N与输出电压Vo1的关系为
Vo1=-Vref*N/256(Vref为参考电压,Vref=-5V)
六、参考程序框图(表格法)
否
是
表格法产生锯齿波、三角波参考程序框图
6、1WIRE总线集成温度传感器—18B20实验
一.实验目的
熟悉数字温度传感器DS18B20的使用方法和工作原理,了解单总线的读写控制方法。
二.实验设备及器件
IBMPC机一台
DP-51PROC单片机综合仿真实验仪一台
18B20及附属芯片一套
三.实验原理及内容
利用导体电阻随温度变化的特性。
热电阻用于测量时,要求其材料电阻温度系数大,稳定性好,电阻率高,电阻与温度之间最好有线性关系。
常用铂电阻和铜电阻,铂电阻在0-630.74ºC以内。
在一些测量精度要求不高且温度较低的场合,一般采用铜电阻,可用来测量-50ºC~+150ºC的温度。
当两种不同的金属组成回路,如两个接点有温度差,就会产生热电势,这就是热电效应。
被测点称工作端,将其置于被测温度场,以相应电路就可间接测得被测温度值,与显示仪表的接点称为冷端(也称自由端),冷端可以是室温值或经补偿后的0ºC、25ºC。
Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线”接口的温度传感器。
适应电压范围更宽,电压范围:
3.0~5.5V,在寄生电源方式下可由数据线供电。
独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通信。
DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。
DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。
温度范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃。
可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温。
在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快。
测量结果直接输出数字温度信号,以"一线总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。
负压特性:
电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。
相关电路:
DS18B20引脚如图所示,1脚为地,2脚为数据输出和命令输入端,3脚为电源。
四.实验要求
熟悉单总线方式的工作原理及应用,初步了解温度传感器的使用技巧。
五.实验步骤
1.18B20单总线数字温度传感器,用户可以在进行单总线和温度采集等相关实验。
电路如图所示,DQ为控制信号输入端,JP12为电源控制。
2.运行编写好的软件程序,完成多次温度采集并记录采集到的温度数据。
3.使用温度计测量环境的实际温度与实验数据相比较,判断采集数据的准确度。
六、实验参考程序
TEMPER_LEQU36H;存放读出温度低位数据
TEMPER_HEQU35H;存放读出温度高位数据
TEMPER_NUMEQU60H;存放转换后的温度值
FLAG1BIT00H
DQBITP3.3;一线总线控制端口
ORG8000H
LJMPMAIN
ORG8100H
MAIN:
MOVSP,#70H
LCALLGET_TEMPER;从DS18B20读出温度数据
LCALLTEMPER_COV;转换读出的温度数据并保存
SJMP$;完成一次数字温度采集
;以下为DS18B20单总线操作子程序
;读出转换后的温度值
GET_TEMPER:
SETBDQ;定时入口
BCD:
LCALLINIT_1820
JBFLAG1,S22
LJMPBCD;若DS18B20不存在则返回
S22:
LCALLDELAY1
MOVA,#0CCH;跳过ROM匹配0CCH
LCALLWRITE_1820
MOVA,#44H;发出温度转换命令
LCALLWRITE_1820
NOP
LCALLDELAY
LCALLDELAY
CBA:
LCALLINIT_1820
JBFLAG1,ABC
LJMPCBA
ABC:
LCALLDELAY1
MOVA,#0CCH;跳过ROM匹配
LCALLWRITE_1820
MOVA,#0BEH;发出读温度命令
LCALLWRITE_1820
LCALLREAD_18200;READ_1820
RET
;读DS18B20的程序,从DS18B20中读出一个字节的数据
READ_1820:
MOVR2,#8;读取8个位,一个字节
RE1:
CLRC
SETBDQ
NOP
NOP
CLRDQ
NOP
NOP
NOP
SETBDQ
MOVR3,#7;延时
DJNZR3,$
MOVC,DQ;读取一个位
MOVR3,#23;延时
DJNZR3,$
RRCA
DJNZR2,RE1
RET
;写DS18B20的程序
WRITE_1820:
MOVR2,#8;读取8个位,一个字节
CLRC
WR1:
CLRDQ
MOVR3,#6;延时
DJNZR3,$
RRCA
MOVDQ,C;发送一个位
MOVR3,#23;延时
DJNZR3,$
SETBDQ
NOP
DJNZR2,WR1
SETBDQ
RET
;读DS18B20的程序,从DS18B20中读出两个字节的温度数据
READ_18200:
MOVR4,#2;将温度高低位从DS18B20中读出
MOVR1,#36H
;低位存入36H(TEMPER_L),高位存入35H(TEMPER_H)
RE00:
MOVR2,#8;读取8个位,一个字节
RE01:
CLRC
SETBDQ
NOP
NOP
CLRDQ
NOP
NOP
NOP
SETBDQ
MOVR3,#7;延时
DJNZR3,$
MOVC,DQ;读取一个位
MOVR3,#23;延时
DJNZR3,$
RRCA
DJNZR2,RE01
MOV@R1,A
DECR1
DJNZR4,RE00
RET
;将从DS18B20中读出的温度数据进行转换
TEMPER_COV:
MOVA,#0F0H
ANLA,TEMPER_L;舍去温度低位中小数点后的四位温度数值
SWAPA
MOVTEMPER_NUM,A
MOVA,TEMPER_L
JNBACC.3,TEMPER_COV1;四舍五入温度值
INCTEMPER_NUM
TEMPER_COV1:
MOVA,TEMPER_H
ANLA,#07H
SWAPA
ADDA,TEMPER_NUM
MOVTEMPER_NUM,A;保存变换后的温度数据
LCALLBIN_BCD
RET
;将16进制的温度数据转换成压缩BCD码
BIN_BCD:
MOVDPTR,#TEMP_TAB
MOVA,TEMPER_NUM
MOVCA,@A+DPTR
MOVTEMPER_NUM,A
RET
TEMP_TAB:
DB00H,01H,02H,03H,04H,05H,06H,07H
DB08H,09H,10H,11H,12H,13H,14H,15H
DB16H,17H,18H,19H,20H,21H,22
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 传感 检测 技术 实验 指导书 程序