agilent VISA项目开发小记

本文讲述了作者在国庆期间开发针对Agilent 8003/8013卡应用程序的过程,详细描述了8003/8013卡的功能和资源地址。开发初期误以为可通过IP和端口直接操作,后来发现需安装VXI-11 compliant VISA Library。经过环境配置和错误调试,最终在VC++环境下使用VISA库成功实现通信。文章还简要提及了数据库操作的相关内容。
摘要由CSDN通过智能技术生成

2011年10月4日 20:03

整个国庆节一直都在搞这个东西,就是编写一个针对8003/8013卡的应用程序。到现在为止,程序基本将近完成,功能尚待完善,调试和维护工作也会很麻烦。

首先,介绍一下8003/8013卡,其英文全名是“MODEl  8003/8013 Ethernet---Parallel Interface”,可译为“8003/8013 以太网板卡---并行接口”。 8003/8013是Agilen公司的一个最新产品,用户相对还是比较陌生,所以在这方面搞点开发,还是很有必要。8003/8013卡上有接线头,通过导线连接到电源表上,通过电源表供电。通过以太网,用网线使之连接至电脑网口或者局域网内,在windows下可对其进行开发。板卡上有8个提示灯,功能分别如下 PWR:Indicates power on ;LAN :Indicates tht the unit isready and is connected to an active LAN; ACT:Indicates message are beingtransferred between unit and LAN;RDY:Indicate the unit has passed selftest;Talk:indicates the unit was send a device_read command;LSTN: indicates theunit was send a device_write command.

8003/8013的VISA ResourceStrings are :

 TCPIP::ip::insto::INSTR  forcommands and data transfer

  TCPIP::ip::inst1::INSTR  for transparent data transfer

开发中使用第一个工具资源地址。

在后来,进入了一个误区,我一直以为通过IP地址和端口就可以运用套接字对卡进行操作,于是花了大部分时间在套接字上,而且把套接字的客户端额服务器端都写好了,当调试时发现,数据无法发送到8003/8013里,后来我以为insto应该是有一个初始化命令,于是就把TCPIP::ip::insto::INSTR当做一个命令发送给卡,结果卡片仍然没有数据回复,经检测发现数据在网线上传输了,但是没有到达板卡,既然没有到达板上,当然是不可能受到任何回复的。

8003/8013的使用说明是厚厚的一本全英文,网上没有关于8003/8013的中文介绍,于是就上了Angilen的网站,硬着头皮在上面看了一遍又一遍,发现要想开发8003/8013,必须安装接口驱动,这个驱动就是VXI-11compliantVISA Library ,庆幸的是一个师兄那里恰好有安捷伦的库,于是就安装好了,并add interface,add instruments,修改了部分配置后,才发现久违的8003/8013终于有反应了。

虽然现在写VISA程序的不少,但是大部分还停留在VB和C++上,在.net环境下要想配置好VISA,真是难上加难,配了好几天,没有成功,果断放弃了开发应用程序界面最方便的C#.net,转向了vc++。MFC,看来还是要重新好好搞搞了。从安捷伦库安装目录下找到了最为关键的 VISA32.lib,visa.h,和visatype.h。后来师兄帮忙,把三个文件考进工程文件中,并添加到了环境中,并修改了一些参数配置,终于结束。当然代码编写过程中也存在不少郁闷的地方,总是出错,不过后来在师兄帮助下,算是都还得到了解决。

界面和后台代码写毕,输入8003/8013的Ip地址,8003/8013的IP地址是可以修改的,并得到了资源地址的字符串即 TCPIP0::10.10.150.254::inst0::INSTR,通过 viopen()函数,打开地址和接口,并开始向卡发送ViString格式的命令,发送代码之后紧接着就要进行接收。连接调试发送命令是:*IDN?,*esr?*clr?,之后都得到了正确的设备信息。

接下来就该进行设备信息读出并重新写入了,发送和读操作已经完成,至于写操作明天再说吧。

 

 

 

人生总有很多不情愿的事情。但是,你却深陷其中。真的不知道生活本来就应该是这样,如果生活本来是去改变的,那么脱离了天道自然的本质,那还是我自己吗?也许是,衣暖饭饱之后的无聊打发吧,总是在做一些无聊。每天看到好友状态里同学的说说,我就感觉热心沸腾,敬佩你们。

百无聊赖之中还算是做了一些有点意思的事情。深知,苦海中寻觅的痛苦,点点滴滴都是汗水。

关于8013/8003衰减矩阵硬件控制程序。

1、 Visual c++下的环境配置:

Linking to VISALibraries

Your applicationmust link to the VISA import library as follows,

assuming defaultinstallation directories and Microsoft compilers:

    C:\VXIPNP\WinNT\lib\msc\visa32.lib

Agilent Visa (Virtual Instrument Software Architecture)是一种通用的设备控制和数据采集编程接口,主要用于从计算机控制和监测科学仪器的操作。这个用户指南是为了帮助使用Agilent Visa进行仪器控制的人们。 在Agilent Visa用户指南中,你会找到关于安装、配置和使用Agilent Visa的详细说明。它提供了一步步的指导,帮助用户从零开始,使他们能够迅速掌握如何使用Agilent Visa进行设备控制和数据采集。 该用户指南首先介绍了Agilent Visa的基本概念和工作原理。它解释了Visa作为一种软件工具,如何与硬件设备进行通信,并提供了一些示例,说明如何编写程序来控制和监测设备。 接下来,用户指南详细介绍了Agilent Visa的安装和配置过程。它解释了如何下载和安装Visa软件包以及所需的驱动程序。然后,它教授用户如何在计算机上创建Visa资源,并配置Visa共享库以进行设备访问。 用户指南的下一部分重点介绍了Visa编程。它提供了一些常见的编程示例和代码段,让用户了解如何编写Visa程序来控制和监测设备。此外,用户指南还解释了Visa的基本命令和函数,以及如何使用Visa进行数据采集和分析。 最后,该用户指南还提供了一些常见问题和故障排除指南,以帮助用户解决在使用Agilent Visa过程中可能遇到的问题。 总之,Agilent Visa用户指南是一个非常有用的资源,它提供了关于使用Agilent Visa进行设备控制和数据采集的详细说明。无论是初学者还是有经验的用户,都可以从这个指南中获得帮助,以便更好地使用Agilent Visa。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值