AD与DA转换及数字PID调节器算法的研究实验报告.pdf
《AD与DA转换及数字PID调节器算法的研究实验报告.pdf》由会员分享,可在线阅读,更多相关《AD与DA转换及数字PID调节器算法的研究实验报告.pdf(12页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、东南大学自动化学院东南大学自动化学院实实 验验 报报 告告课程名称:课程名称:计算机控制技术计算机控制技术第第1 1次实验次实验实验名称:实验名称:A/DA/D 与与 D/AD/A 转换转换&数字数字 PIDPID 调节器算法的研究调节器算法的研究院院(系)(系):自动化学院自动化学院专专业:业:自动化自动化姓姓名:名:学学号:号:实实 验验 室:室:416416实验组别:实验组别:同组人员:同组人员:实验时间:实验时间:20142014 年年 3 3 月月 2020 日日评定成绩:评定成绩:审阅教师:审阅教师:第一部分第一部分实验一实验一 A/DA/D 与与 D/AD/A 转换转换一、实验目
2、的一、实验目的1、通过编程熟悉 VC+的 Win32 Console Application的编程环境;2、通过编程熟悉 PCI-1711 数据采集卡的数据输入输出;3、了解采集卡 AD 转换芯片的转换性能;4、通过实验了解字节数与二进制数的转换。二、实验设备二、实验设备1THBDC-1 型控制理论计算机控制技术实验平台2PCI-1711 数据采集卡一块3PC 机 1 台(安装软件“VC+”及“THJK_Server”)三、实验原理三、实验原理1 1数据采集卡数据采集卡PCI-1711 是输入功能强大的低成本多功能PCI 总线卡。特点:16 路单端模拟量输入 12 位 A/D 转换器,采样速率
3、可达100KHz每个输入通道的增益可编程自动通道/增益扫描卡上 1K 采样 FIFO 缓冲器 2 路 12 位模拟量输出(仅 PCI-1711)16 路数字量输入及 16 路数字量输出可编程触发器/定时器图1-1 PCI-1711卡管脚图2.AD/DA2.AD/DA 转换原理转换原理该卡在进行 A/D 转换实验时,输入电压与二进制的对应关系为:-1010V 对应为 04095(A/D 转换精度为 12 位)。输入正满度正满度1LSB中间值(零点)负满度+1LSB负满度D/A 通道输出范围为 010V。A/D数据编码1111 1111 11111111 1111 11100111 1111 11
4、11 0000 0000 00010000 0000 0000四、实验步骤四、实验步骤1、仔细阅读“PCI-1711 数据采集卡驱动函数说明.doc”文档。2、将实验台上的“阶跃信号发生器”的输出端通过导线与 PCI-1711 数据采集接口的 AD1通道输入端相连,同时将 PCI-1711 数据采集接口的 AD1 通道通过导线与实验平台上的交直流数字电压表(选取直流档)的输入端相连;3、打开ADDA 实验 VC+程序文件夹,打开.dsw 工程文件,添加缺少的 main 函数(主程序),编程实现以下功能:在运行程序后的 DOS 界面上应显示 AD 第一通道输入值,同时并显示出转换后对应的以十进制
5、存放的二进制码,并将其转换为二进制码;在程序中使用输出函数通过 DA1 通道输出一个 010V 的电压(PCI-1711 卡无法输出负电压),然后使用 THBDC-1 型实验平台上的直流数字电压表进行测量,并确认输出值是否正确。五、实验记录五、实验记录1.系统 main 函数如下:void main()/主程序init_1711();for(;)ADinput(0);/读取AD1通道的电压值printf(AD1通道输入值:%.3fn,fVoltage);ADbinaryIn(0);/读取AD1通道的二进制电压值/-10V10V对应为(04095)printf(AD1通道的二进制值为(以十进制数
6、存放):%dn,bin);/AD数据转换为二进制char*temp=new charNUM+1;Convert(bin,temp,NUM);/十进制数转换为二进制数的转换函数printf(AD1通道数据转换为二进制为:%sn,temp);DAoutput(0,3.2);/从DA1通道输出3.2V的电压值delete temp;printf(DA1通道输出值:%.3fn,ptAOVoltageOut.OutputValue);expexit();DABinaryout(1,4095);printf(DA1通道输出值:%dn,ptAOBinaryOut.BinData);Sleep(1000);p
7、rintf(n);2.程序的主要函数:void Convert(USHORT data,char*temp,long Dim);void ErrorHandler(DWORD dwErrCde);void ErrorStop(long*,DWORD);bool init_1711();void expexit();/十进制数转换为二进制数/出错处理函数/初始化设备/关闭设备/通过错误代码来获取相应的错误信息函数float ADinput(unsigned char chan);/模拟量输入函数/模拟量输出函数bool DAoutput(unsigned char chan,float DAda
8、ta);USHORT ADbinaryIn(unsigned char chan);/模拟量输入函数(二进制形式)3.由于是验证性实验,以下为我们记录的两组数据:A/D 转换通过改变滑动变阻器的阻值,改变 AD1 输入端输入电压的大小,用电压表测出实际输入的电压值,并记录通过 A/D 转换计算机采集的十进制与二进制值,程序运行结果见下表中,在变化过程中实际输入与计算机采集的数据的对应关系如表:程序运行后 DOS 界面显示结果直流电压表(v)AD1 通道输入值0.0004.9829.985-4.932AD1 通道数据转化为十进制2047306840921037AD1 通道数据转化为二进制码011
9、1111111111011111111001111111111000100000011010.005.0010.00-5.00程序将外界输入电压通过A/D 转换得到与原输入值大致相等的电压,输入电压与二进制的对应关系为:-1010V 对应为 04095,采用“除二取余”法计算相应的二进制码,验证发现结果是比较准确的,误差较小。D/A 转换在程序中多次改变输出电压的大小(通过改变主程序中 DAoutput(0,x)中的函数),利用电压表测量实际 DA1 输出的电压值,运行程序后,得到的具体的 D/A 转换的对应关系如表:程序设定值(V)2.53.0电压表输出电压值(V)2.503.00由表中数据
10、可以看出,DA1 通道的输出电压值与程序中设定的值十分接近(相等),在误差允许的范围内认为输出值正确。六、实验总结六、实验总结1.此次实验比较简单,通过简单地连线验证实验结果的正确性,由实验结果可以看出程序可以将外界输入电压通过A/D 以及 D/A 转换,得到与原输入值大致相等的电压。2.输入电压与二进制的对应关系为:-1010V 对应为 04095(程序设定 A/D 转换精度为 12位),相当于每 1V 对应十进制为 204.8;通过“除二取余”法,假定 data 为待转换数据,temp 为转化后数据,Dim 为转换精度,通过循环:for(int i=0;iDim;i+)tempDim-1-
11、i=data%2+48;/(程序中加 48 是将二进制数转换为 ASCII 码)data/=2;tempDim=0;将十进制数转化为二进制码。第二部分第二部分实验二数字实验二数字 PIDPID 调节器算法的研究调节器算法的研究一、实验目的一、实验目的1、通过编程熟悉 VC+的 Win32 Console Application的编程环境;2、通过编程熟悉 PCI-1711 数据采集卡的数据输入输出;3、掌握 PID 控制器的编程方法;4、了解闭环控制系统的概念与控制方法;5、熟悉定时器及显示界面的使用方法;二、实验设备二、实验设备1THBDC-1 型 控制理论计算机控制技术实验平台2PCI-1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AD DA 转换 数字 PID 调节器 算法 研究 实验 报告
限制150内