高柔性

灵活组合,自由变换

强兼容

多类型产品兼容生产

高效率

快速换产,提高效率

全国咨询热线

173-6821-6270

柔性振动盘_柔性供料器厂家_柔性震动盘生产公司_柔性上料工作站

自动化设备定制:西门子工业控制软件CEMAT在水泥厂的应用

发布时间:2024-11-18 17:29人气:
1 引言   labview(laboratory virtual instrument engineering workbench,实验室虚拟仪器工程平台)是美国ni公司(national instrument pany)推出的一种基于g语言(graphics language,图形化编程语言)的虚拟仪器开发平台。labview以其在数据采集、信号处理等方面的突出优势已经在测控领域获得了广泛应用。虚拟仪器系统的硬件平台由i/o接口设备和计算机构成(如图1所示),i/o接口设备是对外获取信号的通道,为了能使计算机能够对i/o接口设备有效地进行控制,就要考虑系统中i/o接口设备的驱动问题。

图1 虚拟仪器的硬件构成
  在labview中,用软件驱动i/o接口设备,可分以下两种情况:   (1) labview支持的io设备的驱动   ni公司是以研制开发先进的i/o产品起家的,因此,ni在推出labview时已经考虑到了自家产品在labview中的的驱动问题,提供了专用的子vi形式的驱动程序库,图2是用作模拟输入的驱动程序。

图2 模拟输入驱动程序
  labview提供了max(measurem -ent & automation)软件,只要计算机中安装了device driver,当i/o设备插入计算机时就能够被自动识别,并且可以用max工具对其进行配置。图3是在计算机中插入ni公司的板卡pci-6527后启动max的画面。

图3 max自动识别ni的i/o设备
  对于这类labview直接支持的i/o设备,调用labview中的相应驱动程序模块就可以实现板卡的所有功能。   (2) labview不支持的io设备的驱动   ni的io产品由于有现成的驱动可供开发者使用,在使用中具有驱动方便的优势,但是价格昂贵,实际系统中很可能选择使用非ni的io设备,这类设备在ni提供的驱动程序库中没有相应的驱动程序。对于这类labview不直接支持的i/o设备,我们该如何实现对其驱动呢?   一般i/o设备都带有dll驱动函数库以及相应的lib文件和.h头文件,而labview恰好提供了调用动态链接库的手段——clf节点(call library function,位于labview功能模板中的advanced子模板中)。基于这种状况,使用clf节点便是我们驱动此类设备的首选方法。下面以北京迪阳公司的任意波形发生卡lai200a2为例来说明clf在仪器驱动中的使用。
2 举例   lai200a2是一款任意波形发生卡,该卡有一路波形输出,可实现正弦波、方波、三角波、锯齿波、ttl、白噪声、高斯噪声、梯形、指数、扫频等常规波形,用户可以设置波形的幅度、频率、偏置量等参数。lai200a2提供lai200.dll、lai200.lib、lai200.h文件供用户进行二次开发。以下简单介绍lai200.dll中的主要函数:   (1) 板卡自检函数   int lai200_autocheck(unsigned char *numbers,unsigned short int cardname); 功能描述:初始化板卡 入口参数:cardname: 卡地址 出口参数:numbers isa卡保留,无用。 函数返回:1,自检成功 2,自检失败   (2) 计算规则波形数据函数
void lai200_cacuwavepara( int wavetype, int cycles, double frequency, double amplitude, double offset, int duty, unsigned int *mdots, double *mdacclk, double *mwavedata ); 功能描述:计算规则波形数据函数 入口参数:wavetype: 波形类型 1正弦; 2方波 3 ttl 4锯齿 5三角 6白噪声 7高斯噪声 8直流。 frequency:波形频率 amplitude:幅度,0-10vpp offset: 波形偏置量 0-2.0v duty: 方波的占空比1~99 (%) 出口参数: mdots:波形时钟 mdacclk:波形时钟 mwavedata:波形数据 范围:–5.0v---+5.0v   (3) 产生波形
int lai200_genwave( int base, int loopmode, unsigned int dots, double dacclk, double *mwavedata, int fcidx ); 功能描述:生成自定义波形。 入口参数: base 板卡的基地址 loopmode 0,循环 1,单次 dots: 波形的点数,0-32760点。 dacclk: 刷新率,0.5hz-10mhz *mwavedata:波形数据 fcidx 低通滤波,0=>1mhz 1=>100khz 2=>10khz 3=>1khz    出口参数:无   象上面这些函数声明我们可以在设备提供的.h文件中找到,这些信息对于我们正确配置clf是至关重要的,而对clf进行正确配置是使用clf的关键。下面以波形发生卡的初始化为例详细介绍clf节点的配置过程及注意事项。 3 clf节点的配置过程及注意事项   配置步骤:(须先添加clf节点)   (1)在clf节点的右键菜单中选择“configure…”或直接双击节点,弹出clf节点配置对话框。点击“browse…”按钮找到动态链接库文件lai200.dll,选定后,labview会自动装载选定的dll文件,并检测dll文件中所包含的函数。按“function name”框的下拉按钮可以看到dll中所有的函数。但是labview不会自动检测函数中的参数和参数的数据类型,这需要用户根据函数的输入、输出参数手动设置。所以在调用dll文件时,要求用户对dll文件中的函数参数类型做到心中有数。   (2) 在“function name”下拉框中选择初始化函数lai200_autocheck   (3) “calling conventions”指的是调用dll遵从的规范,有stdcall和c两个选项,若所选函数是windows api函数,则选用stdcall;否则选用c选项。
根据.h文件中的函数声明中各参数的形态按顺序依次添加参数并进行配置。配置完成后再根据clf节点的端子在前面板上添加控制型和指示型控件。完成的虚拟波形发生器前面板和框图程序分别如图4、5所示。

图4 波形发生器前面板

图5 波形发生器程序框图
4 结束语   一般,i/o设备厂商都会为自己的产品提供dll形式的驱动库。通过clf节点在labview中调用动态链接库函数可以顺利解决非ni公司daq产品的驱动问题。



我们公司主营柔性振动盘、柔性供料器、非标自动化设备、柔性振动盘、柔性生产线、柔性自动上料系统、并联机器人摆盘机、视觉自动分拣设备、柔性上料工作站、视觉检测机等业务,厂家直营,支持定制,免费获取全套方案。

本文来源于互联网,我们本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供,并以尽力标明作者与出处,如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

服务区域: 广东 上海 江苏 北京 重庆 浙江 云南 新疆 西藏 天津 台湾 四川 陕西 山西 山东 青海 宁夏 内蒙古 辽宁 江西 吉林 湖南 湖北 黑龙江 河南 河北 海南 贵州 广西 甘肃 福建 安徽

推荐资讯