数字化测控技术实验报告.docx
《数字化测控技术实验报告.docx》由会员分享,可在线阅读,更多相关《数字化测控技术实验报告.docx(30页珍藏版)》请在冰豆网上搜索。
数字化测控技术实验报告
数字化测控技术实验报告
课程名称数字化测控技术
实验名称数字化测控技术课程实验
实验日期
学生专业测控技术与仪器
学生学号
学生姓名
实验室名称测控技术实验室
教师姓名周严
成绩
南京理工大学机械工程学院
实验一基于集成锁相环的频率合成器的设计
1、实验目的
本实验旨在使学生深入了解频率合成器的基本概念及基于锁相环的频率合成器的基本原理,学习并掌握复杂数字电路的调试方法。
掌握单片集成锁相环CD4046的技术性能指标及电路设计方法,学会应用CD4046制作数字频率合成器。
2、实验内容
根据设计要求设计基于集成锁相环CD4046的频率合成器电路,确定锁相环的元件参数,搭建并调试电路,使之输出1kHz~1MHz,步进0.5kHz的时钟信号。
3、实验原理及方法
频率合成是用任一指定的基准频率经过一些功能电路的处理,产生一系列需要的稳定的多种基准频率。
利用锁相环实现频率合成,主要是产生可数字或程序控制的基准频率的倍频基准频率。
其原理是在锁相环的反馈回路中插入一N分频的分频电路,形成闭环,此时VCO输出为NfR。
fR是基准频率,改变N值即可改变电路的输出频率,其稳定度与基准频率相同。
原理框图如图1.1所示。
图1.1频率合成器原理框图
设计基于CD4046集成锁相环的频率合成器的主要工作有:
(1)设计调试晶体振荡电路,产生基准频率fR。
(2)设计N分频器,N的调节范围根据合成的频率范围和基准频率的大小确定。
这里设基准频率为0.5kHz,要求合成器输出频率1kHz~1MHz,步进0.5kHz,则N=2~2000。
分频器应根据N的范围设计。
(3)设计锁相环CD4046的相关元件参数,这是本设计的关键及难点所在,需要反复设计、调试及修改确定。
图1.2提供了一基于CD4046的频率合成器的参考性原理电路,其合成频率范围是2kHz~1MHz,步进1kHz。
实验时可参考之进行设计。
图1.2频率合成器参考原理电路
4、实验仪器设备
1)双路直流稳压电源
2)双踪示波器
3)信号发生器
4)41/2位数字万用表
5)面包板
5、实验电路设计及工作原理说明
1)实验电路设计
2)电路的工作原理说明
由晶振电路产生的4.096MHz的基准时钟,经
分频后得到0.5Hz的信号输出,通过Q13输入到CD4046作为基准频率。
此输入信号从14脚输入后,经过放大器放大加至相位比较器2的输入端,然后从13脚输出误差电压,并将低通滤波器接至13脚。
滤波器的输出为压控振荡器VCO的控制电压,用于调整VCO的振荡频率,此振荡频率经由三个74161组成的计数器进行N分频后输入给相位比较器,使VCO的振荡频率迅速接近N倍的基准频率,锁相环锁定。
其中,采用74161芯片构成的12位加法式分频器,通过置数法实现计数。
从CD4046的4脚输出的频率即为所求的频率。
锁相环CD4046的相关元件参数是本设计的关键及难点所在,经过反复设计、调试及修改,最终确定电容C2的值为22
,电容C1的值为
。
6、实验步骤说明
1) 根据输出频率的要求设计电路参数,试验中取C1为15pF,C2为22pF。
电路参数如原理图
中所示;
2) 按照设计图在面包板上搭建线路;
3) 认真仔细检查线路是否连接正确,如有错误及时修正;
4) 关闭电源,将电路的电源和地线接到三路稳压电源的5V输出端和地端。
在打开电源前,检
查电源线和地线是否连接正确,确认无误后打开电源;
5) 调试基准频率产生电路,确保4060的2脚输出电压频率为0.5Hz;
6) 在锁相环4046的1脚和地端接入LED灯,通过查看灯的明灭情况来检验锁相环是否入锁。
如果LED灯闪烁不定,则说明锁相环不稳定,需重新连接电路;
7) 分级检查74161芯片是否能够正常工作,确保三个芯片都没有问题;
8)进行整体调试,调试时先使分频系数N=2,此时合成频率输出应为1kHz,再使分频系数N=2000,此时合成频率输出应为1MHz。
如果正确,则说明设计正确,否则应重新选择参数C1。
重新调试,直至成功。
7、实验结果记录及分析
实验数据填入表1.1中,对照频率合成器输出频率的理论值与实际测试值,分析说明两者不一致的原因。
①实验数据
表1.1实验数据记录表
N
fout理论值
fout实测值
2
1KHz
1KHz
100
50KHz
50KHz
500
250KHz
250KHz
1000
500KHz
500KHz
1500
750KHz
800KHz
2000
1MHz
1.1MHz
②实验数据不一致原因:
输出频率的实测值与理论值存在较小的误差,可以认为是系统误差,可能是由芯片或者电线之间的相互干扰和示波器本身存在的示数误差造成的。
8、思考题
1)说明分频系数N的确定依据。
答:
实验中采用的是12位加法器,需要N分频时应将加法器的数值置为
。
电路中,将作为高位的74161芯片的进位端作为反馈信号输入4064的3脚,例如,若N=2,其初值置为
=(1111 1111 1110),则计数两次产生进位输出,并实现各个计数器的并行置数,从而实现分频系数N=2。
2)不测量fout如何判定锁相环是否入锁?
答:
在4046的1脚接入一个LED,若LED亮且不闪烁,则说明入锁,若LED不亮,则不入锁,若LED闪烁不定,则锁相环不稳定。
实验二占空比的数字化测量
1、实验目的
本实验的目的是使学生在掌握占空比数字化测量的基本原理及方法的基础上,学习占空比/电压转换电路的设计与调试,切实掌握占空比的测量技术。
2、实验内容
根据占空比的数字化测量原理自行设计占空比测量的占空比-电压转换电路,采用数字电压表测量转换得到的与占空成正比的电压值,根据电压计算出被测量的占空比,将测量值与采用示波器测量的占空比值进行比较,计算出测量误差。
3、实验仪器设备
1)直流稳压电源;
2)双踪示波器;
3)信号发生器;
4)41/2位数字万用表;
5)面包板。
4、实验电路设计及工作原理说明
1)实验电路设计
2)电路的工作原理说明
输入TLL电平信号
经过非门后,得到一幅度为
=2.8V的信号,
经
和
分压后,得到一
=1V的电压,
经低通滤波后所得到的即为
的平均值。
根据定义,设
的周期为T,高电平的宽度为
,则:
由于
所以万用表测值即为占空比数值。
5、实验步骤说明
1 )依照设计电路图完成电路连接 ;
2 )用示波器测量
的大小,通过调节
的大小,使
的大小保持1V ;
3 )用信号发生器输出TTL电平连接至电路输入端 ;
4 )将信号发生器的占空比调至50% ;
5 )用万用表测量电容两端的电压值,即为占空比数值,记录下数据;
6 )依次改变信号发生器的占空比,记录万用表的数据 ;
7 )整理数据,计算相对误差,分析结果 。
6、实验结果记录
按表格2.1中的内容记录对应的测试结果,实验数据填入表2.1中。
表2.1占空比测量实验结果记录表
数字示波器测量的占空比
实验电路测量的占空比
测量相对误差
20%
21.6%
8%
30%
32%
6.7%
40%
42%
5%
50%
52%
4%
60%
63%
5%
70%
73%
4.2%
7、实验结果处理与分析
1 )实验测量相对误差如表2.1所示。
占空比为50%时,相对误差最小,占空比最小时的相对误差较大;
2 )非门电路有延迟,故会导致测量结果有误差 ;
3 )此设计利用低通滤波器充当平均值电路,故所得平均值可能存在误差,导致占空比测量结果有误;
4 )电路连接可能不稳定,存在干扰,引起误差。
8、思考题
1)输入整形电路中采用放大器,则放大器应选用何种类型放大器?
答:
用非门74LS04做放大器。
2)整形电路的输出为何要接低通滤波器?
答:
因为此测量占空比方法的原理是利用平均值来转换的,所以为得到平均值,需要接低通滤波器,在电路中实现对电压取平均值。
3)可否用万用表直读测量值?
要求说明原因。
答:
可以,由于 Vb=1V,
,所以可以。
实验三数据采集系统的集成及程序设计
1、实验目的
本实验的目的是使学生在学习数据采集系统理论课的基础上,通过对数据采集系统安装、连接和编程,掌握数据采集系统的使用方法,加深对数据采集系统原理、用途的了解。
2、实验内容
1)学习并掌握基于ISA总线的数据采集卡的安装,在此基础上学习输入与输出通道的连接方法。
2)对数据采集系统进行汇编语言及VC++编程,使之能够在程序控制下进行数据采集。
3)对数据分配系统进行汇编语言及VC++编程,使之能够在程序控制下输出模拟电压信号。
3、实验原理及方法
实验的基本方法是将数据采集卡插入计算机的ISA插槽内,将配接电缆与采集卡连接好,在输入通道施加输入电压,之后即可开始编程。
1)采集卡输入/输出连接器引脚定义图见图3.1。
电缆中各颜色导线与输入输出通道的关系如下:
红色对应ch0,黄色对应ch1,绿色对应ch2,兰色对应ch3,白色对应D/A输出,黑色对应GND。
图3.1数据采集卡输入/输出连接器引脚定义图
2)数据采集卡的接口地址
实验用数据采集卡是基于PC机ISA总线的多路数据采集卡,该卡具有8路模拟输入和1路模拟输出。
控制方式采用查询方式,模拟输入通道的电压输入范围是±5V,模拟输出通道的电压输出范围是0~10V,该卡的所用的A/D转换器是AD574,D/A转换器是DAC0832。
相关控制口的地址如表3.1。
表3.1数据采集卡的相关口地址
控制口名称
口地址
控制口名称
口地址
选择通道口
03ACH
读转换状态口
03A8H
启动采样口
03AFH
读转换结果高8位口
03A1H
启动保持口
03AEH
读转换结果低4位口
03A0H
启动A/D转换口
03ABH
启动D/A转换口
03A3H
3)数据采集程序设计流程
(1)选择通道:
向03AC口写入通道号。
(2)启动采样保持器采样:
向03AF口写入任意数。
(3)延时程序。
(4)启动采样保持器保持:
向03AE口写入任意数。
(5)启动A/D转换:
向03AB口写入任意数。
(6)判断A/D转换是否结束:
读03A8口,判断最低位是否为“0”,为“0”表示转换完毕,程序转入(7)。
为“1”表示转换仍在进行,程序返回(5)。
(7)取A/D转换结果:
分两次读取,先从03A1口取高8位,然后从03A0口取低4位,取出的数16位,低4位为0。
4)D/A输出控制程序设计流程
先向03A3H写入数据,然后再向03A2H写入任意数即可输出与写入03A3H口的数对应的模拟电压。
4、实验仪器设备
1)三路直流稳压电源
2)数字万用表
3)安装有Windows98操作系统及WindowsXP双系统的的工业控制计算机或带有ISA插槽的PC电脑。
5、数据采集硬件集成及程序设计
1)硬件集成
(1)在确保断电的前提下,打开计算机的机箱盖,将数据采集卡插入主机板的ISA总线扩展槽内,用螺丝刀及固定螺钉将采集卡固定。
检查安装无误后将机箱盖盖好。
(2)将连接电缆的针状DB15连接器与数据采集卡的孔状DB15连接器对接,并拧紧螺钉,到此数据采集卡安装完毕。
2)汇编语言程序设计
(1)首先进行模拟输出控制的程序设计,编写程序并运行程序使模拟输出通道输出0~10V按一定间隔幅度增加的模拟电压,并将根据电压控制码计算的理论值与实际测量值对比记录在表3.2中。
D/A输出控制汇编语言程序如下:
MOV DX, 03A3H
MOV AL, 00H
OUT DX, AL ;向03A3H中写入数据
MOV DX, 03A2H
OUT DX, AL ;向03A2H写入任意数即可输出与写入03A3H口的数对应的模拟电压
(或O 03A3H, 00H
O 03A2H, 00H)
并对程序进行存盘,运行,并修改AL的值得到的输出结果如下表所示:
表3.2模拟输出电压与理论值的对比记录
电压控制码
输出电压理论值(V)
输出电压实际值(V)
输出电压误差
00H
0
0AH
1
15H
2
1FH
3
2AH
4
34H
5
3FH
6
49H
7
53H
8
5EH
9
66H
10
(2)将电压源的输出作为模拟输入通道的输入信号分别接至各通道,编写控制程序对输入信号进行数据收集,将转换结果填入表3.3中
数据采集汇编语言程序如下:
MOV DX, 03ACH MOV AL, 00H
OUT DX, AL ;选择通道:
向03AC口写入通道号
MOV DX, 03AFH
OUT DX, AL ;启动采样保持器采样:
向03AF口写入任意数
MOV BX, 0FFFFH
MOV CX, 0FFFFH
DELAY1:
DEC CX
JNZ DELAY1
DELAY2:
DEC BX
JNZ DELAY2 ;延时等待确保采样完成 D
EC DX
OUT DX, AL ;启动采样保持器保持:
向03AE口写入任意数
MOV DX, 03ABH
OUT DX, AL ;启动A/D转换:
向03AB口写入任意数
MOV DX, 0348H
STATUS:
IN AL, DX
AND AL, 01H
JNZ STATUS ;判断A/D转换是否结束:
读03A8口,判断最低位
是否为“0”,为“0”表示转换完毕;为“1”则表示转换仍在进行。
MOV DX, 03A1H
IN AL, DX
MOV AH, AL
MOV DX, 03A0H
IN AL, DX ;取A/D转换结果:
分两次读取,先从03A1口取高
8位,然后从03A0口取低4位,取出的数16位,低4位为0。
输入程序,存盘,运行并改变输入电压之后得到的结果记录如下表:
表3.3数据采集记录
模拟输入信号(V)
转换结果的实际数字码
转换结果的理论数字码
-5
0000
-3.75
2000
-2.5
4000
-1.25
6000
0
8000
1.25
A000
2.5
C000
3.75
E000
5
FFF0
3)VC++程序设计
(1)编程演示
程序界面如图3.2所示,在采集数据前需进行波形选择,包括正弦信号,锯齿信号,方波信号。
并设置信号频率和幅值,若选择方波信号,还需设置占空比。
设置好采样频率之后可单击“开始”按钮,开始采样。
再单击“停止”按钮即可结束。
通过单击“左移”“游移”“停”“前帧”“后帧”几个按钮可实现波形的左右移动和前后帧切换。
单击“幅值测量”,在单击波形上某一点,可对获取的波形的进行幅值测量。
图3.2程序界面图
(2)自行程序设计
①自行设计的程序界面如图3.3所示,在DAC按钮左侧的编辑框中输入D/A输出的电压值(0-10V),按下DAC按钮,执行DA程序。
按下ADC按钮,执行AD程序,得到的结果在ADC左侧的编辑框中显示。
图3.4分别为ADC代码、DAC代码编写位置(在caijiDlg.cpp文件中)。
图3.5为所用到的具体函数的声明(在device.h文件中),其中设备的初始化,打开和关闭已经在程序中写好,无需再写。
函数中需要的设备句柄也已获取,为hDev,在编写ADC和DAC函数时直接调用即可。
图3.3自行设计程序界面图
图3.4DAC与ADC函数添加代码区域图
图3.5函数图
①首先进行模拟输出控制的程序设计,在添加DAC函数位置处编写程序并运行程序使模拟输出通道输出0~10V按一定间隔幅度增加的模拟电压,并将根据输出电压的理论值与实际测量值对比记录在表3.4中。
添加DAC函数程序如下:
BYTE q;
UPdata(TRUE);
Q=m_DACdata*128/10;
StarDAC(hDev,q); ;启动DA
OutDACData; ;DAC数据输出
表3.4模拟输出电压与理论值的对比记录
拟输出电压值(V)
输出电压理论值(V)
输出电压实际值(V)
输出电压误差
0
0
1
1
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
②将电压源的输出作为模拟输入通道的输入信号分别接至各通道,在添加ADC读取函数处编写控制程序对输入信号进行数据收集,将转换结果填入表3.5中
添加ADC函数程序如下:
ChooseChannel(hDev,0x00); //选择通道
StartSampling(hDev,0x10); //采样保持器采样
int i=200000; //循环次数200000 while(i>0) i--;
HoldData(hDev,0x20); //采样保持器保持
StartADC(hDev,0x30); //启动AD BYTE b,c,d,e;
b=DataReady(hDev); //判断AD是否转换完毕
c=0x01;
while((b&c)!
=0x00)
b=DataReady(hDev);
d=ReadDataHigh(hDev); //读取AD转换的高8位
e=ReadDataLow(hDev); //读取AD转换的低4位
data=(int)d*16+(int)e/16;
表3.5数据采集记录
模拟输入信号(V)
实际转换结果
理论转换结果
-5
000
-3.75
200
-2.5
400
-1.25
600
0
800
1.25
A00
2.5
C00
3.75
E00
5
FFF
6、实验结果分析
采集卡内可能存在系统误差,导致转换总是存在误差。
7、思考题
1)若实测转换结果与理论值不一样是什么原因?
答:
电压波动、A/D转换器分辨率可能造成的
1LSB的误差,A/D的电源电压抑制比,失调温度系数和增益温度系数以等因素造成的。
2)A/D转换结果是什么码制?
答:
十六进制
3)电路设计将12位的转换结果分为高8位和低4位输出,如果要求12位并行输出,应如何改变电路设计,请提出设想。
答:
由A/D转换器AD574的工作原理知:
要12位并行输出,则引脚12/8应该接高电平,4引脚AO/SC应该接低电平。
此外还要加一个74LS245,用于输出低4位。
实验四集散测控系统的集成及应用
1、实验目的
本实验的目的是使学生在学习集散测控系统理论课的基础上,通过对集散测控系统的组建和编程调试,掌握集散测控系统的集成方法,加深对集散测控系统原理、应用的了解。
2、实验内容
1)学习并掌握分布式监控模块的使用方法及编程技术。
2)学习并掌握基于分布式监控模块及RS-485总线的集散测控系统的系统构成及集成方法。
3)构建基于分布式监控模块、RS-485总线和上位机的集散测控系统。
编写上位机监控程序并调试系统。
(1)采用VC++编写串口通讯程序,实现分布式模块与上位机的通讯。
(2)实现模拟电压的分布式测量。
(3)实现频率的分布式测量。
(4)实现分布式模拟输出模块的控制,输出模拟电压。
3、实验原理及方法
系统的基本构成见图4.1。
图4.1集散测控系统的基本构成
系统由上位主控计算机、接口模块、分布式模块及电源构成,接口模块将RS232逻辑转换成RS485逻辑,分布式模块通过RS485总线连接成串行网络,并通过接口模块与上位主控计算机连接,主控软件控制整个系统的运行。
其中分布式模块有数据采集模块、模拟输出模块、频率计数模块。
按照以上结构将数据采集模块、模拟输出模块、频率计数模块连接成分布式系统,并通过RS232/RS485转换模块与主控上位计算机连接。
4、实验仪器设备
1)工业控制计算机或PC机。
2)RS232C-RS485转换接口模块。
3)数据采集模块、频率计数模块、模拟输出模块等分布式模块。
4)电压源、万用表、信号发生器和频率计。
5、实验步骤
1)将方波发生器的输出与频率计数模块的输入连接。
2)模拟输出模块作为电压信号源使用,其输出接数据采集模块的输入。
3)利用模块配套的调试软件调试系统。
4)若调试正确可以进入上位机主控程序的编制,若不正确检查系统硬件连接,直到调试正确为止。
6、程序设计
1)演示程序
运行API_smp文件夹下API_smp.exe程序,出现程序主界面如图4.2所示。
图4.2程序主界面
先选择正确的串口号,否则程序将报错,如图4.3所示。
频率测量:
点击7080模块部分的“开始”按钮,程序连续测量方波的频率,在文本框中显示测量值。
图4.3串口错误
电压输出:
先在7012模块部分的文本框中键入要输出的电压值(精确到小数点后的三位),按“输出”按钮。
数据采集:
先在7017模块部分的下拉选框中选择模块的输入通道号(默认为“通道一”),点击“开始”按钮,将在文本框中显示即时输入值,并绘出输入曲线。
程序运行前,请确保各模块的输入在量程范围之内,否则程序报错,如图4.4所示。
图4.4模块输入错误
单击“数据库”按钮,将出现数据库界面,在下拉菜单中选择查询的模块号,查看之前运行的数据。
以“7017模块数据”为例,查询结果如图4.5所示。
图4.5“7017模块数据”查询结果
2)自行设计的串口通讯程序及注解
请对照演示程序编写串口部分函数。
首先,在串口选择下拉菜单(IDC_chcom)的选择响应函数OnSelchangechcom()中添加打开串口并初始化语句,(模块设置为:
波特率为9600,每个字节8位,无奇偶校验位,两个停止位)。
添加位置已标出,如图4.6所示,请在添加完之后删除报错函数ex_error;
图4.6IDC_chcom的选择响应函数
添加的程序代码及说明:
hCom=CreateFile(para, GENERIC