工程案例(六)-青岛大学.ppt

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
工程案例(六)-青岛大学.ppt

案例分析与设计 于海生 丁军航 戈海龙 青岛大学自动化工程学院 计算机控制工程案例 ----基于研华PCI板卡的数据采集与控制 内 容 概 要 1.引言 2.系统设计方案 3.系统设计步骤 4.调试运行结果 5. 结束语 引言 温度的检测和控制在理论上发展比较成熟, 但在实际测量和控制中, 如何保证快速实时地对温度进行采样, 确保数据的正确传输, 并能对所测温度场进行较精确的控制, 仍然是目前需要解决的问题。 本系统利用研华PCI板卡采集数据并输出控制量,根据PID算法控制炉温,在Visual C++平台下开发了人机界面,得到了良好的控制效果。 1.系统设计方案 以管式电阻炉作为被控对象,温度变送器把炉温信号转化为0-10V电压信号,由PCI-1713U采集进计算机,计算机经PCI-1720U卡输出,控制炉温稳定在设定值。 软件采用Visual C++ 6.0软件来设计,系统控制规律采用比较成熟的PID算法。 左图所示为研华PCI-1713模拟量输入卡。该板卡具有32 路单端或16 路差分模拟量输入,或组合输入方式,12位A/D转换分辨率,A/D转换器的采样速率可达100 kHz,每个输入通道的增益可编程,卡上有4K采样FIFO缓冲器,2500VDC 隔离保护,支持软件、内部定时器触发或外部触发。 右图为研华PCI-1720U模拟量输出卡。该板卡具有四路12 位D/A 输出通道,多种输出范围。由于能够在输出和PCI总线之间提供2500VDC的隔离保护,PCI-1720非常适合需要高电压保护的工业场合。 2.系统设计步骤 ① ActiveDAQ控件的安装 研华公司提供的ActiveDAQ控件是一套高效数据采集开发组件,可以方便的应用于Visual C++、Visual Basic以及支持Active控件的组态软件中,通过控件的属性、事件、方法可以很方便的对控件进行编程,用来开发数据采集的各种功能,包括模拟量输入输出(软件/中断/DMA)、数字量输入输出、脉冲量输入输出等。 ② 启动Visual C++ 6.0,单击“文件”菜单中的“新建”命令,以显示新建对话框,如图5所示,然后选择“MFC AppWizard(exe)”类型,输入需要创建的工程名称“SJCJ”,并设置好存放目录。 ③ 按照弹出的应用向导对话框依次填写,第1步选择基于对话框,其他均采用默认。 ④ 单击“完成”按钮,将会弹出一个关于新工程信息的对话框。单击“确定”按钮,这样MFC向导便自动生成一个名称为“SJCJ”的工程。 ⑤ 为了实现温度采集与控制输出,添加DAQAI和DAQDO控件。“工程”菜单的“增加到工程”的“Components and Controls”选项,在弹出的对话框中单击“确定”按钮,再在弹出的对话框中单击“确定”按钮关闭对话框,所选择的控件就会出现在“控件工具栏”中,然后将其添加到对话框中相应位置。 ⑥ 用编辑器为对话框添加其他控件并设置相关属性 ⑦ 设置好的程序界面如图所示 ⑧ 添加成员变量,在“查看”菜单中或在对话框上单击鼠标右键,打开“建立类向导”中的Member Variables标签,选中所需的空间ID号,双击鼠标左键或单击Add Variables按钮,依次为控件增加成员变量。 ⑨ 切换到“建立类向导”的Message Maps标签页或在对话框中双击每一个按钮,为控件添加消息响应函数 void CSJCJDlg::OnButton8() //输入板卡选择 { // TODO: Add your control notification handler code here m_daqai.SelectDevice();//选择模拟量输入设备 m_daqai.SetStartChannel(0);//通道号0 m_daqai.SetSampleRate(500);//采样频率 m_daqai.OpenDevice(); } ? void CSJCJDlg::OnButton9()//输出板卡选择 { // TODO: Add your control notification handler code here m_daqao.SelectDevice();//选择模拟量输出设备 m_daqao.SetChannel(0);//通道号0 m_daqao.SetOutputRate(500);//输出频率 } ? void CSJCJDlg::OnCancel() //关闭程序按钮设置 { // TODO: Add extra cleanup here m_daqai.CloseDevice();//关闭板卡模拟量输入端口 m_d

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档