东南大学计算机控制实验报告一
东南大学自动化学院实 验 报 告
课程名称: 计算机控制技术实验
第 一 次实验
实验一:
院 (系): 自动化 专 业: 自动化 姓 名: 学 号: 实 验 室: 机械动力楼 实验组别: 同组人员: 实验时间:2016 年 4 月 1日评定成绩: 审阅教师: 一、实验目的1、通过编程熟悉VC++的Win32 Console Application的编程环境;2、通过编程熟悉PCI-1711数据采集卡的数据输入输出;3、了解采集卡AD转换芯片的转换性能;4、通过实验了解字节数与二进制数的转换。
二、实验设备1.THBDC-1型 控制理论·计算机控制技术实验平台2.PCI-1711数据采集卡一块3.PC机1台(安装软件“VC++”及“THJK_Server”)
三、实验原理1.数据采集卡PCI-1711是输入功能强大的低成本多功能PCI总线卡。 特点:16路单端模拟量输入 12位A/D转换器,采样速率可达100KHz 每个输入通道的增益可编程 自动通道/增益扫描 卡上1K采样FIFO缓冲器 2路12位模拟量输出(仅PCI-1711) 16路数字量输入及16路数字量输出 可编程触发器/定时器
图1-1 PCI-1711卡管脚图
2. ADDA转换原理该卡在进行A/D转换实验时,输入电压与二进制的对应关系为:-10~10V对应为0~4095(A/D转换精度为12位)。
输入A/D数据编码正满度1111 1111 1111正满度-1LSB1111 1111 1110中间值(零点)0111 1111 1111负满度+1LSB0000 0000 0001负满度0000 0000 0000D/A通道输出范围为0~10V。详细编程说明见“PCI-1711数据采集卡驱动函数说明.doc”文档。
四、实验步骤1、仔细阅读“PCI-1711数据采集卡驱动函数说明.doc”文档。2、将实验台上的“阶跃信号发生器”的输出端通过导线与PCI-1711数据采集接口的AD1通道输入端相连,同时将PCI-1711数据采集接口的AD1通道通过导线与实验平台上的交直流数字电压表(选取直流档)的输入端相连;3、打开ADDA实验VC++程序文件夹,打开.dsw工程文件,添加缺少的main函数(主程序),编程实现以下功能: 在运行程序后的DOS界面上应显示AD第一通道输入值,同时并显示出转换后对应的以十进制存放的二进制码,并将其转换为二进制码; 在程序中使用输出函数通过DA1通道输出一个0~10V的电压(PCI-1711卡无法输出负电压),然后使用THBDC-1型实验平台上的直流数字电压表进行测量,并确认输出值是否正确。
五、实验记录(1)系统的主要程序void main() //主程序{ init_1711();for(;;){ADinput(0); //读取AD1通道的电压值printf("AD1通道输入值:%.3f\n",fVoltage);ADbinaryIn(0); //读取AD1通道的二进制电压值 printf("AD1通道的二进制值为(以十进制数存放): //-10V~10V对应为(0~4095) //AD数据转换为二进制char *temp = new char[NUM+1];Convert(bin,temp,NUM); //十进制数转换为二进制数的转换函数printf("AD1通道数据转换为二进制为:%s\n",temp); delete temp; DAoutput(0,3.2); //从DA1通道输出3.2V的电压值 printf("DA1通道输出值:%.3f\n",ptAOVoltageOut.OutputValue); printf(" \n");Sleep(1000);}expexit();}
void Convert(USHORT data,ch