- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机控制技术
实验指导书
班级:
姓名:
学号:
2016年10月14日
实验一 A/D和D/A转换实验
一、实验目的:
1、本实验说明A/D和D/A的工作原理。
2、掌握原理的基础上用编程方法实现A/D和D/A转换。
3、掌握编程及实际调试的方法。
二、实验所需部件:
x86系列兼容计算机,MATLAB软件。
三、实验要求:
1、弄清A/D,D/A转换的工作原理。
2、输入数字量,进行D/A、A/D转换,记录输出转换后的模拟量值。
3、记录实验曲线,观察结果。
四、实验步骤:
1、根据实验原理对D/A、A/D转换进行软件仿真。
2、编写转换程序,实验过程中进行调试。
3、观察记录输出的结果,与理论计算值相比较。
五、实验过程
1、根据实验原理对D/A、A/D转换进行软件仿真。
根据实验要求设计的A/D和D/A转换的仿真框图。A/D转换器是以ADC0809为模型设计的,有八路模拟信号通道选择开关,内部有抽样、量化和编码器。D/A转换器是以DAC0832为模型设计的。
工作过程为:八路模拟信号源通过选择开关,选择其中的一路模拟信号进入A/D转换器,在A/D转换器中对模拟信号进行抽样、量化和编码处理,输出数字信号。数字信号再进入D/A转换器中,输出模拟信号。A/D和D/A转换的仿真框图如图1所示。
图1 A/D和D/A转换的仿真框图
整个系统使用Simulink进行仿真,仿真模型如下,具体的部件后面介绍。
图2 A/D和D/A转换的Simulink系统仿真模型
图3 基准电压为5V的ADC0809的Simulink仿真模型
图4 基准电压为5V的DAC0832的Simulink仿真模型
2、A/D和D/A转化中的主要功能模块
① 模型中实现A/D转换的功能模块:
图5 A/D转换中主要功能模块
Zero-Order Hold模块完成的是对模拟信号的抽样:抽样定理指出:设一个连续模拟信号m(t)中的最高频率≤fH ,则以间隔时间T≤1/2 fH 的周期性冲激脉冲对它抽样时,m(t)将被这些抽样值所完全确定。恢复原信号的条件是:f >2 fH。
Quantizer模块的作用是对抽样信号进行量化。
Integer to Bit Converter模块的作用是进行二进制编码。
已知转换器的基准电压为5V,位数为8位。将模拟电压信号为0.421V抽样、量化、编码成二进制数据,由于存在量化误差,故 A/D转换得到的二进制
② 模型中实现A/D转换的功能模块:
图6 D/A转换中主要功能模块
Bit Integer to Converter模块的作用是将二进制码转换为模拟量。
将上诉A/D转换得到的二进制行模拟化。输出的模拟量为0.4118V。
3、8位和12位转换器比较
与输入的0.421V进行对比发现有了误差,该误差是量化引起的,如果A/D和D/A均采用12位则误差会大大降低。将Constant8和Constant10中的数据量改为819,并将Integer to Bit Converter模块和Bit Integer to Converter模块改为12位。则同样的0.421V输入,数字量输出为0001 0101 1001,模拟量输出为0.4212,精确度现在提高。
图7 12位转换输出结果
4、输入为正弦波时候的输出结果
同样转换器的位数为8位,图8为输入正弦波,图9为输出正弦波。可见输入输出有明显的误差,就是上述所讲的量化引起的。
图8 输入正弦波
图9 输出正弦波
5、模块参数设置
Constant模块1:Constan value设为1~8中的任意数字,开关信号通道作用;
Constant模块2~7:Constan value设为0~5V中的任意数字,作为模拟量输入;
Constant模块8、10:Constan value设为51。若设置转换器为12位时,该值应设为819;
Zero-Order Hold模块:Sample Time为1
Quantizer模块:Quantization interval为1;Treat as gain when linearizing使能;
Integer to Bit Converter模块:Number of bits per integer设为8;
Buffer模块:Output buffer size设为1;Buffer overlap设为0;Initial conditions设为0;
Buffer1模块:Output buffer size设为8;Buffer overlap设为0;Initial conditions设为0;
Reshape模块:Output dimensionality设为1-D ar
文档评论(0)