A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 2019mulu 初级黑马   /  2019-11-1 10:19  /  1550 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

很偶然的机会,在毕业了8年之久,竟然重启了在学校时的IVI-COM驱动开发,并有机会将这些积累重新推广。

在研究生阶段,由于研究方向,对测试测量行业的标准化研究很多。而在工作之后发现,这方面极其小众,很多国内的仪器厂商对标准的概念也不深刻;系统开发工程师来说也很难兼顾到标准化。工作中所涉及的标准也是以应用为主,而没有深入到这些标准的由来、相互关系、作用,从我这些年的面试就能感受出来,如果在学校阶段没有系统性学过这方面知识,在工作中对这类标准理解的积累程度通常是很功利而薄弱的。

而IVI-COM的困难之处在于,他融合了多种知识:

1)IVI/VISA/SCPI等标准的背景知识

2)C++编程,COM组件编程

这两点相当于以下两点进阶:

1)对测试测量行业ATS发展历程及各阶段标准、各类仪器使用。

2)COM编程要求高于普通文本编程,在于需要懂得COM编程规范,再用对应的语言实现(比如COM实现最常用的C++)。尽管windows服务很多通过COM形式供上层调用,但程序员有COM开发经验的却少之又少。(搜索这些方面的信息,大多都在2000年左右)

因此,这种技术因为架构层级的复杂性和背景知识的交叠冷门而很少被人提及。

对于IVI-COM来说,分为两种应用场景:

1)使用IVI-COM驱动

2)开发IVI-COM驱动

01

使用IVI-COM驱动

对应于使用来说,需要有IVI-COM的环境。

1)IVI组件。这个可以通过NI和Keysight的安装包顺便装上。NI和Keysight几乎涵盖了所有使用环境(使用其他厂商仪器一般情况下也是兼容的)有各自VISA,所以安装哪个取决于你要使用哪个VISA,www.1000bibles.com当然两个都安装也是可以的,因为VISA的使用有主从配置可以兼容。

IVI组件从IVI官网也是可以下载的,只是NI和Keysight将其顺便集成到了自己的IDE中。需要注意它的版本号。IVI和VISA版本都在不断更新,

在一些变量类型的定义上有些不同。

IVI和VISA规定了接口定义,而具体的驱动函数的调用,分别在IVI驱动和VISA实现的dll中。

2)需要使用的IVI驱动。要在IVI组件之后安装,因为安装包内检测环境,需要往IVI配置库中填入驱动对应的信息。

3)IVI库配置工具(可选)。NI在MAX里集成了IVI的配置界面,IVI配置库是xml形式的,完全可以通过手动修改,但不熟悉IVI配置库的同学慎重操作,容易出错。

我目前打算重写这部分功能,打算做一个开源版供大家使用。使大家不必被工具所绑架。

4)应用环境:LabVIEW、VS都是支持COM形式的接口的。

02

开发IVI-COM驱动

1)VS环境安装ATL组件——生成驱动dll

2)使用IVI-COM驱动所需环境——调试dll

3)安装包制作——dll拷贝注册和IVI配置库信息添加

关于IVI的知识,IVI官网提供的规范和网上的论文已经很详细,耐心看一定可以有所收获。我绘制了一个思维导图,描述了IVI-COM开发流程相关技术。

可以通过后台回复“IVI-COM开发技术”获取思维导图原文件和其他相关资料。

03

一个小行动

因为这件事情结识了一个很努力的小师妹和她同事一个很能干的小兄弟。

我们聊到为什么这方面的共享资料和信息这么匮乏,网上的相关资料,都是多年前的。

那是因为这个技术已经过时,还是因为太小众?

尽管网上确实能看到很多关于COM技术过时的讨论,www.jqsrf.com但随着编程技术向应用层业务层靠拢,工程师越来越难以体会到他们所依赖到的OFFICE接口、设备通讯接口很多都是COM形式的,很多平台级软件产品,灵活扩展的模块也都是通过COM形式整合的。

尽管IVI确实涵盖范围有限,但不可否认它对推进了仪器标准化的贡献,构建大的体系架构时,它的优势是很明显的。这种业务和实现分层的体系架构和设计模式也是系统集成达到一定体量时可以借鉴的,对于仪器厂商来说也是对产品线技术路线规划有很大帮助。

我和他们提了一件想了很久但很担心做不起来的事:做一些共享。互联网发展得益于社区的繁荣,贡献一份力量,收获的是整个社区的支持。

我们这个行业的萧条也是这样,技术越落后,越不敢分享技术,越守着自己这个没有迭代进化的技术,带不起人来,人才就会流失,这个行业就更萎缩了。

我讲了这个想法,大家都觉得很有意义,在之后某一天,师妹发给我一份她对某类仪器的IVI规范的翻译。哈工大的老师们曾经做过IVI规范操作规程和体系结构相关的翻译工作,这套文件圈里的人大多都知道。www.gqhcm.cn但具体的仪器类规范还没有翻译,师妹补充了这部分。

就是这样的呀,不需要想得太完美,先做就好了!分享不是一个人奶全队,有了一次正向反馈之后,大家都会爱上它!

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马