labview的visa设置上限问题及解决办法
labview中的visa用法

在LabVIEW中使用VISA在LabVIEW中使用VISA VISA是仪器编程的标准I/O API。
VISA的多种用途VISA可控制GPIB、串口、USB、以太网、PXI或VXI仪器,并根据使用仪器的类型调用相应的驱动程序,用户无需学习各种仪器的通信协议。
VISA独立于操作系统、总线和编程环境。
换言之,无论使用何种设备、操作系统和编程语言,均使用相同的API。
开始使用VISA之前,应确保选择合适的仪器控制方法。
GPIB、串口、USB、以太网和某些VXI仪器使用基于消息的通信方式。
对基于消息的仪器进行编程,使用的是高层的ASCII字符串。
仪器使用本地处理器解析命令字符串,设置合适的寄存器位,进行用户期望的操作。
SCPI(可编程仪器标准命令)是用于仪器编程的ASCII命令字符串的标准。
相似的仪器通常使用相似的命令。
用户只需学习一组命令,而无需学习各个仪器生产厂商各种仪器的不同命令消息。
最常用的基于消息的函数是:VISA读取、VISA写入、VISA置触发有效、VISA清空和VISA读取STB。
PXI和许多VXI仪器使用基于寄存器的通信方式。
对基于寄存器的仪器进行编程,使用的是将直接写入仪器控制寄存器的底层二进制信息。
该通信方式的优点是速度快,因为仪器不需解析命令字符串,并将信息转换为寄存器层次的程序。
基于寄存器的仪器实际上是在直接硬件操作层上进行通信。
最常用的基于寄存器的函数是:VISA输入、VISA 输出、VISA转入和VISA转出LabVIEW VISA与串口通讯的编程实现(2013-05-25 11:25:52)VISA是虚拟仪器软件体系结构的缩写(即Virtual Instruments Software Architecture),实质上是一个I/O口软件库及其规范的总称。
VISA是应用于仪器编程的标准I/0应用程序接口,是工业界通用的仪器驱动器标准API(应用程序接口),采用面向对象编程,具有很好的兼容性、扩展性和独立性。
LabVIEW代码中常见的错误

LabVIEW代码中常见的错误发现了程序的问题再回头去调试,在查找程序错误时就不可避免地要花⼤量时间。
要调⾼开发效率,最好是在编写代码时就避免⼀些常见的低级错误,这样可以节约⼤量的调试时间。
有些编程错误差不多是每个LabVIEW 程序员都曾遇到过的。
在编写相关代码的时候,对这些问题多留⼼⼀下,就可以⼤⼤减少调试时间。
1. 数值溢出图1:数值溢出错误图1 中的VI 只做了⼀个简单乘法300*300 ,不加思索就应该知道答案是90000,但程序中乘法节点给出的结果却是24464。
乘法节点是不会错的,错误是由于程序中使⽤的数据类型是I16。
I16 能表⽰的最⼤数⽬只有32767,所以在乘法计算中出现了溢出。
避免此类错误的⽅法是,在程序中使⽤短数据类型时,⼀定要确认程序中的数据绝不会超出该类型可以表⽰的范围。
2. For 循环的隧道循环相关的介绍可以参考《循环结构》。
数据传⼊传出循环结构可以通过移位寄存器(Shift Register)和隧道(Tunnel)两种⽅式。
隧道⼜有两种类型:带索引的和不带索引的。
移位寄存器⼀般⽤在需要局部变量的情况下,循环运⾏⼀次的输出数据要作为下次运⾏的输⼊数据使⽤;循环外的数组数据通过带索引的隧道在循环体内就可以直接得到数组元素;除此之外,简单地在循环内外传递数据,使⽤⼀般的隧道就可以了。
值得⼀提的是,如果⼀个数据传⼊循环体,⼜传出来,那么就应该使⽤移位寄存器或带索引的隧道来传递这个数据,尽量不要使⽤不带索引的隧道。
因为For 循环在运⾏时,循环次数有可能为0。
在循环次数为0时,⼤多数情况,⽤户还是希望传出循环的数据就是传⼊值,但使⽤不带索引隧道时,输⼊值有时会被丢失的。
如果使⽤移位寄存器,即使循环次数为0,也不会丢失传⼊的数据。
因为移位寄存器在循环上的两个接线柱指向的实际是同⼀块内存(参考:LabVIEW 程序的内存优化),⽽输⼊输出两个隧道指向的是不同的内存,数据不⼀定相同。
LabVIEW编程中常见问题与解决方法

LabVIEW编程中常见问题与解决方法LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一款广泛应用于科学与工程领域的视觉化编程环境。
它的独特之处在于,使用者可以通过拖拽和连接图形化编程元素来构建程序,而无需编写传统的文本代码。
然而,由于其特殊的编程方式和复杂的功能,LabVIEW编程过程中常常会遇到各种问题。
本文将介绍LabVIEW编程中常见问题,并提供相应的解决方法。
一、VI无法运行1. 问题描述:当尝试运行一个VI(Virtual Instrument)时,LabVIEW出现错误或者无响应。
解决方法:- 检查是否安装了适当的软件环境(如运行时引擎或特定模块)。
- 检查VI中使用的所有子VI或函数是否被正确地调用或配置。
- 检查是否有硬件设备连接问题或者相关设备驱动是否正确安装。
二、数据处理错误1. 问题描述:LabVIEW在执行数据处理操作时,产生了错误的结果或者没有得到期望的结果。
解决方法:- 检查数据的输入是否正确,并确保正确配置了对应的数据类型。
- 检查数据处理模块的参数设置,例如滤波器的截止频率或者函数的操作参数。
- 使用适当的数据结构和算法,以确保正确的数据处理过程。
- 进行调试,并通过添加数据显示或打印变量值等方式进行验证。
三、界面设计问题1. 问题描述:LabVIEW的用户界面显示效果不如期望的那样美观或者布局混乱。
解决方法:- 使用合适的面板布局工具和控件,确保界面的整洁美观。
- 使用适当的颜色和字体,以提高界面的可读性和用户体验。
- 充分利用丰富的LabVIEW组件库,添加图标、按钮和指示器等交互元素。
- 进行界面的测试和优化,以提高界面的响应速度和用户友好性。
四、性能问题1. 问题描述:LabVIEW程序在运行过程中出现了延迟、卡顿或者响应速度较慢的情况。
解决方法:- 尽量使用并行编程技术,以提高程序的性能和效率。
安装Agilent的VISA驱动需要注意的问题

较早以前的方法,刚找了找,你试试吧在LabVIEW中使用Agilent的GPIB卡方法如下:1.不安装NI-VISA, 只安装HP-VISA,使用LabVIEW中的VISA函数操作该卡。
使用HP-VISA,Resource Name常数和控制量不会出现在MAX中,也不会出现在LabVIEW中,因此需要在LabVIEW中的Resource Name常数和控制量上点击右键,然后选择"Allow Undefined Names",对于这个名字的命名规则是GPIBx::y::INSTR,其中x表示的是GPIB 控制卡的地址,通常为0,y表示的是仪器的地址。
2.不安装HP-VISA.,安装HP-SICL和NI-VISA 2.60或以上版本。
NI-VISA 2.60 或以上版本可用于HP的GPIB卡。
在MAX2.0以上的版本配置VISA Passport。
选择T ools » NI-VISA » Passport Editor,使能NiVisaTulip.dll Passport。
NI-VISA 可以自动检测到GPIB和VXI设备。
但是NI-VISA 不能对HP GPIB设备进行配置,必须要使用HP的配置软件对其卡进行配置。
3.在NI的LaVIEW中使用Agilent的GPIB卡,需要在MAX中进行设置。
方法是通过菜单:Tools->NI VISA->VISA Options,选择Passports,在NiVisaTulip.dll前面打勾。
然后Save,按F5刷新,在Devices and Interfaces中可以见到一个Misc....,这就是Agilent的GPIB,接下来的其它操作和NI的GPIB卡一样。
要用GPIB卡在LABVIEW的控制下实现通信,不光要设置GPIB卡,还要在LABVIEW中的MAX里添加才行,具体方法是:打开MAX--〉tools-->NI-VISA-->VISAoptions-->passports然后把那个唯一没画上勾的画上,在REFRESH一下,就可以在左边的栏里看到devicesand interfeces里有你连接的硬件了。
基于LabVIEW-VISA方式的串口通信研究

基于LabVIEW-VISA方式的串口通信研究魏义虎;陈雷【摘要】针对使用LabVIEW的VISA函数编写串口通信程序出现数据丢失问题,本文在介绍串口通信的基础上,详细说明了LabVIEW使用VISA方式实现串口通信的一般编程方法、以及需要注意的问题,特别对丢失数据现象进行了原因分析,采用设置延时和设置流控制方式加以解决。
实际应用表明,该方法简单有效,满足串口通信要求。
%Aiming at data losing in writing serial port communication programme by using VISA in LabVIEW,On the base of introduction of serial port communication, illustrates the basic way to program via using VISA, as well as the points needed to be noted, analyses the phenomenon of data losing,takes steps of seting time delay and seting flow control to resolve the problem. The application show that this method is simple and effective, achieves the requirement of serial port communication.【期刊名称】《电子设计工程》【年(卷),期】2015(000)024【总页数】3页(P129-131)【关键词】LabVIEW;VISA;串口通信;数据丢失【作者】魏义虎;陈雷【作者单位】军械工程学院弹药工程系,河北石家庄 050003;军械工程学院弹药工程系,河北石家庄 050003【正文语种】中文【中图分类】TN0串口通信作为串行通信的一种实现方式,其历史可追溯到1969 年。
NI-VISA

我现在想实现Labview跟USB的数据通信。
关于VISA的资源名称,我找到如下信息:配置NI-VISA的步骤 ①使用Driver Development wizard(驱动程序开发向导)创建INF文档; ②安装INF文档,并安装使用INF文档的USB设备; ③使用NI-VISA Interactive Control(NI-VISA互动控制工具)对设备进行测试,以证实USB设备已正确安装,并获得USB设备的各属性值。
我用自己的一个4G的U盘做试验,严格按照这个程序来的,将生成的prefix.inf文件复制到c:/windows/inf下并进行安装,但第三步还是说:unnable to find the resources。
是不能用U盘做实验么? 现在的情况是我的U盘现在在我机子上完全识别不了.... 1、怎样将Labview跟USB联系起来 2、怎样恢复我U盘的功能(估计就是那个prefix.inf文件的关系) 那位大虾提携一下小弟。
如果可以的话,留一个联系方式,请教关于Labview的问题。
不甚感激! 问题补充:驱动更新不了,现在U盘还是没法用......不过还是挺感激你的,看来关于LABVIEW方面还是得再学学啊提问者: sukong123 - 二级最佳答案你这个问题比较复杂,如果你要想完全弄明白,需要看相对多的技术资料。
我简单的说一下吧。
1.是不能用U盘做实验么?VISA是个通用的仪器驱动标准,国际上有专门的联盟,制定这个标准,很多大型的仪器厂商的产品都遵循这个标准,无论是USB、串口、GPIB或是以太网。
NI-VISA就是使用这个标准开发出的一套软件,或者叫做驱动也行。
就是根据这个标准,NI公司又进行了一次封装,并且提供了Driver wizard这个驱动向导软件。
使用Driver wizard开发USB驱动时,实际上底层的驱动是VISA。
你在使用Driver wizard配置USB时,应该有步是设置Vendor ID和Product ID,我不知道这两个号你是怎么添的,这两个配置数字必须和你U盘上的配置芯片中的数字吻合才能真正形成你的USB驱动。
labview使用技巧

本文为LabVIEW内部交流资料,来自网络,特此说明开发机上激活以后,如果开发机升级了或者换了或者增加新的配置了等等,难道要重新购买一套8.2吗?回答=更改了配置,那么lisence manager里的机器码肯定会变,所以需要重新向NI申请激活码激活.NI的IVI驱动的来源?回答=由于NI开发的IVI驱动程序库已经包含了仪器的Class Driver,因此,程序员只要按照IVI的规范开发自己仪器的Specific Driver,就可以实现仪器的互换性。
LV和CVI的专用驱动可以从NI的网站下载,源代码是用c编写的32位的DLL形式,这就保证驱动可以直接在你的开发环境中使用(LV,CVI,VC等)。
在运行过程中LabVIEW能否添加控件?回答=不能,只能在编辑状态是做。
不过可以事先多创建几个控件,然后隐藏。
再需要使用的时候使用属性节点来操作。
编写的LV的GPIB通讯程序,从示波器读取数据。
单独可以正常执行,但放置在一个事件结构的一个WHILE循环里时,运行程序后,程序会变得不相应,而且前面板不可控制。
回答=查看客户程序,GPIB程序并没什么问题,但是作为一个子程序放在事件结构里就会存在问题,而且子程序运行时,主界面默认的是不响应的。
如果要解决这个问题,需要选择事件结构编辑面板最下方有一个默认选项,用于设置是否在事件结构执行完成之前锁定前面板,默认为锁定,取消即可。
IVI的分类。
回答=因为所有的仪器不可能具有相同的功能,因此不可能建立一个单一的编程接口。
因此,IVI的驱动分为两类。
(1) 类驱动程序(Class Drive):它们是在特定类中编写仪器软件的标准接口。
这意味着软件开发者能重复使用他们的软件系统而不会由于低层硬件更改而被迫重新测试软件系统。
目前,IVI驱动程序库可用于下列几类仪器:示波器数字化仪表、开关多路复用器、数字万用表、任意波形发生器函数发生器等。
(2) 设备类驱动程序(Specific Drive):每种牌号和类型的仪器均有相应的专用驱动程序。
ic技术资料NI-VISA及LabVIEW USB接口使用设计方案

ic技术资料:NI-VISA及LabVIEW USB接口使用设计方案富电电子发布了cem9435a,数量16000 厂商cem 批号00+ 封装soic-8/3.9mm ,购买cem9435a请来这里咨询cem9435a价格引言usb(universal serial bus)接口是近年来使用在pc领域新品接口技术信息。
它单一总线接口技术信息来足够几种使用领域需求;它即插即用,支持热插拔,易于扩展等特征极大地方便了用户运用,已逐渐成为现代数据输出发展趋势。
传统研发usb使用系统步骤是,先用windowsddk(设备软件驱动程序研发包)或第三方研发工具(如driverst ljdic))研发ljsb软件驱动程序,然后用visual c++编写dll(动态连接库),最后再调有dll来研发应用程序软件。
显然,这对windows编程代码不熟悉人来说有一定难度,何况usb 软件驱动程序研发难度很大。
本文说明一种简单,迅速研发usb接口使用系统方法。
它直接在labview环境下通过ni-visa研发能软件驱动用户usb系统应用程序软件,完全避开了对前研发usb软件驱动程序复杂性,大大缩短了研发周期。
1 n1-visa介绍ni-visa(virtual instrument software architecture,对下简称为"visa")是美国国家仪器ni(national1nstrllrnent)公司研发一种用来及各种仪器总线进行通信高级使用编程代码接口。
visa总线1/()软件是一个综合软件包,不受平台,总线与环境限制,可用来对usb,gpib,串口,vxi,pxi与对太网系统进行设置,编程代码与调试。
visa是虚拟仪器系统i/o接口软件。
自底向上构造模型visa创造了一个统一形式i/o控制函数集。
一方面,对初学者或是简单任务设计方案者来说, visa供应了简单易用控制函数集,在使用形式上相当简单;另一方面,对复杂系统组建者来说,visa供应了非常强大仪器控制功能及资源管理。
LabView 常见问题及解答

LabView常见问题及解答1、如何用LabView与可编程仪器通信,该仪器没有GPIB接口,但有COM口,能否用LabView操作?A:可以通过LV的串口通信来解决仪器控制问题,参看FIND EXAMPLE的BASIC2PORT SERIAL WRITE AND READ.VI2、如何将EVENTSTRUCT中捕获的时间传递到STATE DIAGRAM?A:使用VENTSTRUCT捕获面板事件后,将不同的事件对应于不同的字符串和其他,再通过QUEUE将VENTSTRUCT中的字符串传递到STATEDIAGRAM中,再根据得到的字符串进行相应的处理。
3、使用WRITE TO BINARY FILE函数向二进制文件中写入一个1D数组,为什么在READ FROM BIANRY FILE读取时,会多出4个字节数据呢?A:写入时加入了头信息,多出的4个字节就是头信息,代表了数组或字符串的长度。
在WRITE TO BINARY FILE中的APPEND ARRAY OR STING SIZE这个输入端口中设置,其默认值为T,代表加入头信息;如果将其改为F,就不会多出4个字节了。
4、卸载LabView7.1时出现错误1603,接着出现错误1722和1721,程序询问是否继续卸载操作,怎样消除该错误并正确卸载7.1?A:该错误通常出现在试图卸载某些共享组件的时候。
按照以下步骤可以解决该问题。
1)注意当错误发生时是在卸载哪一部分组件。
一般讲在卸载LV核心部分或LV RUNTIME ENGINE的时候容易出现。
2)当出现错误代码1603,弹出对话框提示继续卸载操作时候,点击YES3)如果卸载完成之后提示需要重新启动计算机,点击NO。
4)对于卸载过程中产生的错误,从CD相应的文件夹中手动运行相应的组件,路经如下:\components\lvcorefull\lvcorefull.msi或components\lvruntimeeng\lvruntimeeng.msi点击修复按钮。
LabView常见问题及解答

LabView常见问题及解答LabView常见问题及解答1、如何用LabView与可编程仪器通信,该仪器没有GPIB接口,但有COM口,能否用LabView操作?A:可以通过LV的串口通信来解决仪器控制问题,参看FIND EXAMPLE的BASIC2PORT SERIAL WRITE AND READ.VI2、如何将EVENTSTRUCT中捕获的时间传递到STATE DIAGRAM?A:使用VENTSTRUCT捕获面板事件后,将不同的事件对应于不同的字符串和其他,再通过QUEUE将VENTSTRUCT中的字符串传递到STATEDIAGRAM中,再根据得到的字符串进行相应的处理。
3、使用WRITE TO BINARY FILE函数向二进制文件中写入一个1D数组,为什么在READ FROM BIANRY FILE读取时,会多出4个字节数据呢?A:写入时加入了头信息,多出的4个字节就是头信息,代表了数组或字符串的长度。
在WRITE TO BINARY FILE中的APPEND ARRAY OR STING SIZE这个输入端口中设置,其默认值为T,代表加入头信息;如果将其改为F,就不会多出4个字节了。
4、卸载LabView7.1时出现错误1603,接着出现错误1722和1721,程序询问是否继续卸载操作,怎样消除该错误并正确卸载7.1?A:该错误通常出现在试图卸载某些共享组件的时候。
按照以下步骤可以解决该问题。
1)注意当错误发生时是在卸载哪一部分组件。
一般讲在卸载LV 核心部分或LV RUNTIME ENGINE的时候容易出现。
2)当出现错误代码1603,弹出对话框提示继续卸载操作时候,点击YES3)如果卸载完成之后提示需要重新启动计算机,点击NO。
4)对于卸载过程中产生的错误,从CD相应的文件夹中手动运行相应的组件,路经如下:\components\lvcorefull\lvcorefull.msi或components\lvruntimeeng\lvruntimeeng.msi点击修复按钮。
LABVIEW学习中常遇到的50个问题及解答

Labview初学者常见问题以及解答1、Labview如何实现由一个事件引发其他三个事件的顺序发生,且这三次事件间的时间间隔为50ms?回答:可以引用状态机来设计程序,将触发事件作为状态机的状态控制参数,后面发生的三个事件依次作为状态机的三个顺序状态,设置状态切换时间间隔为500ms.2、labview在主程序通过局部变量不能实时看子vi的参数回答:通过局部变量只能得到子vi运行完之后的结果。
可以用control reference 方式,在子vi加一个属性节点引出一个reference。
主程序里把需要显示的控件创建一个reference连到子vi的reference输入端口。
另外也可以用vi server方式实现。
3、如何在一个graph或chart显示多个Y轴刻度,并且使每个通道对应每个刻度?回答:在前面板上,右键点击刻度,然后选择duplicate scales,就会创建一个新的刻度。
然后再点击右键,选择swap sides,就可以让刻度显示在图的左边或右边。
然后右键右上角的plot legend上的曲线plot,选择Y scales然后就可以选择与该曲线相应的Y轴SCALES。
多条曲线对应多条Y轴的刻度时,是同样的方法。
4、如何从labview中打开一个pdf文件?回答:最简单的方法:用system exec.vi实现,在system exec.vi的command line 端口创建一个常量,输入adobe reader 的路径,再加上文件名等几个参数就可以实现上述要求。
举例如下:如果要拉开位于c盘的1234.pdf文件可以这样写“C:\Program files\Acrobt 7.0\Acrobat\Acrobat.exe”/t“C:\1234.pdf” “username”其中C:\Program files\Adobe\Acrobt7.0\Acrobat\Acrobat.exe是Adobe Reader 的安装路径,/t是命令参数,C:\1234.pdf则是要打开的文件名,最后的username是用户的名字5、采集数据在graph如何显示系统时间,并且随着采集点数时间不断刷新。
VISA错误代码

指定对象引用已反初始化。
1073676420
虽然属性的指定状态合法,但当前资源应用不支持该状态。
1073676421
无法解析传递至该操作的状态代码。
1073676424
不支持指定的I/O缓冲区。
1073676440
成功处理事件。在本会话中不要调用其它事件处理器。
1073676441
0
操作完成。
1073676290
指定事件已为至少一个特定机制启用。
1073676291
指定事件已为至少一个特定机制禁用。
1073676292
操作成功完成,但队列已经为空。
1073676293
已读取指定的结束字符。
1073676294
传输的字符数量与所要求的输入计数相同。可能可使用更多数据。
1073676300
VISA接收指定类型的事件信息已超出配置队列大小。
1073676407
指定的配置不存在或无法加载。将使用VISA默认设置。
1073676413
成功打开会话,但指定地址的设备未响应。
1073676414
从触发源至触发目标的路径已被映射。
1073676416
等待接收事件通知已成功中止。至少存在一个或多个由inEventType指定的事件发生类型可用于本会话。
VISA错误代码
»目录
LabVIEW2011帮助
版本日期:June 2011
产品编号:371361H-0118
»查看产品信息
VISA函数和VI服务器属性及方法可返回下列错误代码。关于解决LabVIEW错误的更多信息见知识库。
代码
说明
−1073807360
未知系统错误(其它错误)。
Labview错误调试与处理:详细说明

错误调试与处理:详细说明运行箭头变为断线图标就表明LabVIEW不能运行VI,错误列表窗口中会列出VI断开的具体原因。
第二种类型错误通常难以辨别原因,但LabVIEW拥有多种工具可监视执行的代码,使得过程变得更为容易。
修正断开的VI如一个VI无法执行,则表示该VI是断开的或不可执行的。
如正在创建或编辑VI出现错误时,运行按钮会显示为断开。
通常,这是由于需要连线的输入没有连线,或者连线是断开的。
单击断开的运行按钮,打开错误列表窗口。
错误列表对话框列出了所有错误,并且描述了错误的原因。
双击错误可直接找到错误的出处。
查找VI断开的原因警告并不阻碍VI的运行。
警告仅帮助用户避免VI中的潜在问题。
而错误会使VI断开。
VI在运行前须排除任何错误。
单击断开的运行按钮,或选择查看»错误列表,可查看VI断开的原因。
Error List列出了所有的错误。
错误项列出了内存中所有含有错误的项的名称,如VI和项目库。
如果两个或多个项目具有相同的名称,该部分会显示每一项目的特定应用程序实例。
错误和警告部分列出了在存在错误的项目部分选中的VI的错误和警告信息。
详细情况(Details)部分描述了错误信息,有时还会建议如何纠正错误。
单击帮助(Help)按钮,显示LabVIEW帮助(LabVIEW Help)中详细描述错误并包含纠正错误的分步指令的主题。
单击显示错误(Show Error)按钮或双击错误描述,可以高亮显示程序框图或前面板包含错误的区域。
图1.错误列表对话框的范例VI断开的常见原因下表包含了一些在编辑VI时导致VI断开的常见原因:-由于数据类型不匹配或存在未连接的接线端,导致程序框图含有断线。
关于纠正断线的更多信息见LabVIEW帮助中的纠正断线。
-必需连接的程序框图接线端没有连线关于设定必需连接的输入端和输出端的更多信息见LabVIEW帮助中的使用连线连接程序框图各对象。
-子VI是断开的或将其放置到程序框图上后对其连接器进行了编辑。
Labview相关驱动插件的卸载安装——以VISA驱动为例

Labview相关驱动插件的卸载安装——以VISA驱动为例有时不免⼿贱不⼩⼼把程序搞坏。
怎么办?重装!
可有时候安来安去⼀直没反应,怎么回事呢?对于⼀款成熟的商业软件,该是什么功能就是什么功能,点了什么是什么现象那就是什么现象,有的时候也需要检查我们安装的版本是否正确、是否重装之前卸载⼲净了。
这⾥以VISA驱动的卸载、安装为例说明。
笔者的VISA驱动被⼿贱了⼀下,在360软件卸载中找到了⼀个【VISA 64BIT】这么个玩意,欣喜不已卸载掉之后重装了⼀下,不好使。
反复数遍还是不好使,⼼中不免万马奔腾,我去年买了个⼤⽔表。
后来突然想,那我把labview卸载重装吧,折腾了半天⽆意之间点开了这货让我想起了NI有⾃⼰装⽤的卸载器
因此在重装之前,⼀定要⽤NI专⽤的卸载器卸载掉相关的程序/插件,然后重装,不然重装了也会冲突,不好使!这个东西在哪呢?【D:\EProgram Files\National Instruments\Shared\NIUninstaller\uninst.exe】前⾯的部分你就⽆视吧,你看你⾃⼰的NI 软件装在哪,就去那⾥找。
或者你也可以去WINDOWS⾃带的软件卸载⼯具⾥⾯或者360软件卸载⾥找到【NI软件】这⼀项,双击运⾏或是打开安装⽬录运⾏uninst.exe
360双击打开安装⽬录
windows⾃带的是双击直接运⾏。
visa 命令使用手册

visa 命令使用手册Visa 是一种用于控制测试和测量仪器的通信协议。
它提供了一种标准化的方式来与各种设备进行数据交换、配置设置和远程控制。
本手册将向您介绍 Visa 命令的基本使用方法和常见示例。
一、Visa 命令简介Visa 命令是通过计算机与设备之间的通信来进行控制和配置的。
Visa 命令包括两个主要部分:命令字符串和命令参数。
命令字符串用于指定要执行的特定命令,而命令参数则用于设置命令的选项和参数。
Visa 命令通常由以下部分组成:1. 命令前缀:通常为符号“*”或字符“:”,用于标识一条命令的开始。
2. 命令名称:用于指定要执行的特定命令,如“READ”、“WRITE”等。
3. 命令参数:用于设置命令的选项和参数,如设备地址、寄存器地址、数据值等。
4. 命令后缀:通常为换行符或分号,用于标识一条命令的结束。
二、Visa 命令的常见用途Visa 命令可以用于执行各种不同的操作和任务。
下面是 Visa 命令的一些常见用途:1. 数据采集:通过 Visa 命令,可以从设备中读取数据,用于分析、记录或显示数据。
2. 配置设置:通过 Visa 命令,可以对设备进行配置和参数设置,以满足特定的应用需求。
3. 远程控制:通过 Visa 命令,可以远程控制设备的操作,实现对设备的远程访问和控制。
4. 自动化测试:Visa 命令支持自动化测试的开发,可以编写脚本来执行一系列的测试操作。
三、Visa 命令的基本使用方法Visa 命令可以通过编程语言(如 LabVIEW、Python)或其他支持Visa 的软件工具来进行发送和接收。
下面是Visa 命令的基本使用方法:1. 打开设备连接:首先,需要使用 Visa 命令打开与设备的连接。
例如,在 LabVIEW 中,可以使用 "VISA Open" 命令来打开设备连接。
2. 发送命令:通过使用 Visa 命令的相关函数或方法,将命令字符串和参数发送给设备。
labview环境中使用Agilent GPIB解决方案的应用提示

6
应用提示 2: 如何在同一系统中同时使用 Agilent GPIB 和 NI GPIB 转换器?
b) 选择 Passport for Tulip (NIVisaTulip.dll) 检查框。见图 10。 c) 点击 Save 保存设置,然后退出 NI-MAX。
Uncheck 图 10. 为 Tulip 启用 NI-VISA Passport
d) 关闭和重启动 NI-MAX 软件。将看到您的仪器作为“Miscellanneous VISA Resource”列在“Devices and Interfaces”中。
图 5. 在定制设置中使用并用模式 您的 PC USB 端口 第 4 步: 安装 Windows “Found New Hardware Wizard”
过程
a) 您不需要插入 CD-ROM; 只需点击 Next 按钮,直至安装完成。 见图 6、图 7 和图 8。
使用 Agilent 连通性软件和硬件,
您就能建立至个人计算机 (PC) 的连接 图 1. Agilent 82357B USB/GPIB 转换器和 82350B GPIB 接口卡 控制,帮助开发人员兼顾各项设计考
虑,利用各种技术的优势并延长系统 的工作寿命。
通过获得更多可用输入 / 输出 (I/O) 方案,您可以启用能提升效率和 增加新工具的全新使用模式,从而保 护系统的硬件和软件投资。其基础是
e) 现在,NI-VISA 和 NI 实用程序,如 VISA 交互控制 (VISAIC) 即可访问 Agilent 82357B USB/GPIB 接口转换器。
labview中的visa用法

在LabVIEW中使用VISA在LabVIEW中使用VISA VISA是仪器编程的标准I/O API。
VISA的多种用途VISA可控制GPIB、串口、USB、以太网、PXI或VXI仪器,并根据使用仪器的类型调用相应的驱动程序,用户无需学习各种仪器的通信协议。
VISA独立于操作系统、总线和编程环境。
换言之,无论使用何种设备、操作系统和编程语言,均使用相同的API。
开始使用VISA之前,应确保选择合适的仪器控制方法。
GPIB、串口、USB、以太网和某些VXI仪器使用基于消息的通信方式。
对基于消息的仪器进行编程,使用的是高层的ASCII字符串。
仪器使用本地处理器解析命令字符串,设置合适的寄存器位,进行用户期望的操作。
SCPI(可编程仪器标准命令)是用于仪器编程的ASCII命令字符串的标准。
相似的仪器通常使用相似的命令。
用户只需学习一组命令,而无需学习各个仪器生产厂商各种仪器的不同命令消息。
最常用的基于消息的函数是:VISA读取、VISA写入、VISA置触发有效、VISA清空和VISA读取STB。
PXI和许多VXI仪器使用基于寄存器的通信方式。
对基于寄存器的仪器进行编程,使用的是将直接写入仪器控制寄存器的底层二进制信息。
该通信方式的优点是速度快,因为仪器不需解析命令字符串,并将信息转换为寄存器层次的程序。
基于寄存器的仪器实际上是在直接硬件操作层上进行通信。
最常用的基于寄存器的函数是:VISA输入、VISA 输出、VISA转入和VISA转出LabVIEW VISA与串口通讯的编程实现(2013-05-25 11:25:52)VISA是虚拟仪器软件体系结构的缩写(即Virtual Instruments Software Architecture),实质上是一个I/O口软件库及其规范的总称。
VISA是应用于仪器编程的标准I/0应用程序接口,是工业界通用的仪器驱动器标准API(应用程序接口),采用面向对象编程,具有很好的兼容性、扩展性和独立性。
Labview【VISA读取】

16:04:08
博客园 用户登录 代码改变世界 密码登录 短信登录 忘记登录用户名 忘记密码 记住我 登录 第三方登录/注册 没有账户, 立即注册
1.VISA读取(帮助文档)
Labview【 VISA读取】
属性节点:读取当前串口缓冲区有字节数,然后将它的输出连接到VISA读取的 “读取字节数” 这个输入端上即可,这样当前 缓冲区中有多少个字节就读回多少个,不会有任何等待。 2.读取串口字节 配置串口,读取缓冲区,关闭;
结果:
3.传送数值的情况:
因为读取缓冲区的字符XYabcd789的ASCII值的16进制表示分别对应于58,59,61,62..... LabVIEW 中将字符串转换为对应的 ቤተ መጻሕፍቲ ባይዱSCII 值的函数是 “字符串至字节数组转换” ,如下所示:
4.更改程序实现累计读取: 注意创建数组时要选择连接输入,否则会报错。
labview中防止程序“死机”

很多程序在运行的时候会出现“死机”的现象,表现就是点击按钮等无办法响应,无法正常退出正在运行的程序,只能通过非正常手段退出。
有很多种情况会导致这种现象的发生,比如某个循环进入了死循环、不正确使用(设置)事件结构等,下面分别分析一下怎么预防这些情况的发生。
1,由死循环导致的“死机”很明显,如果某个循环一直在无限循环而无法退出时就会导致程序没办法执行后面的程序,进而导致“死机”,这种现象在调试时使用高亮执行很容易发现问题,发现程序没有反应或一直不退出后,先不退出程序,点一下那个高亮执行的按钮,可以在后面板看到一个绿色的箭头后出现在正在运行的图标上,像这个”,然后打开这个VI的后面板,再用高亮执行,到最后就可以找以最底层的无限循环的循环了。
程序中有循环的话,最好用一些方法来防止循环无法退出,特别是在一些涉及到硬件的时候,因为硬件的状态、返回值等都是不确定的,一定要预想到尽可能多的情况,然后再加以防止。
图1 防止循环进入死循环最基本的是一定要有对错误簇中错误状态的检测,使循环能够在某个节点出错时能够及时退出来,这个实现方法比较简单,直接通过“按名称解捆(Unbundle by name)”和一个“或”节点来实现。
判断错误簇的错误状态在所有循环中都必须有,否则在出错时很容易进入死循环。
还有一种比较通用的方法是判断循环次数 i ,这种方法对于一些比较确定它的循环次数的循环比较有用,比如发送一个命令给下位机后,用循环来读取下位机的返回值,读取返回值后才退出,正常情况下肯定可以读回返回值,但也有可能下位机或数据线出了问题,导致一直没有返回值的,此时如果没有其它条件限制一下的话,这个循环就一直进行下去了,此时就可以加上循环次数 i 的判断,假设实际中返回值应该是在5个循环内就必须有的,如果5个循环后还没有出现数值就认为与下位机的通信出错了,就可以通过循环次数 i 来判断,用一个“大于”节点判断一下就可以了。
在另外一些数据处理的子VI上也有可能用得到通过循环次数 i 来防止死循环的,正常时循环几次就处理完数据了,如果循环很多次后还没有停止就说明是哪里出问题了,应该停止循环并输出对应的错误信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用NI-VISA为串口分配大缓冲区时出现的问题
主要软件: Driver Software>>NI-VISA
主要软件版本: N/A
主要软件修正版本: N/A
次要软件: Driver Software>>NI-Serial
问题:
Windows的串口驱动程序不允许NI-VISA创建一个大于40000字节的缓冲区。
当我创建一个比该限制大的缓冲区时,得到一个错误-1073807300: 系统资源不足。
如果我忽略这个错误,任何比40968 字节大的缓冲区实际上都只有40968 字节。
我如何才能为串口分配一个较大的缓冲区呢?
解答:
您应该安装NI-Serial驱动最近的版本(至少应该在NI-Serial 1.45以后)。
这将覆盖Windows的标准串口驱动从而允许串口缓冲区大小达到232 (4,294,967,296 字节). 所有可获得的NI-Serial驱动都可以从下面的链接中下载到。