1、其实,我幵不是一味推 NI 公司的 LabVIEW,而是纯粹从技术角度上考虑,LabVIEW 是最适合开发自动化测试软件的平台。我多次在客户那里碰到一些仪器销售人员,我总是在人群中静静的倾听他们天花乱坠的介绍,幵不时的发出诸如“哇,你们用 LabVIEW 啊,这么不用 VB 呢,VB 不要钱啊”现在 VB 的盗版很多,在这个地区“不要钱”,不代表在世界其它地区“不要钱”;在这个“不要钱”的地区用 VB,不一定能将工作共享到世界其它地区的分公司。另外,当提起仪器是否可以程控时,销售人员拍着胸脯说:“我用 VB 写过全部控制代码,当然可以啊。”随即,我们请销售人员马上试几条读测试值的指令,销售人员
2、立马一头汗水,马上说“指令怎么可以记得住啊”无语 我常常对我身边的测试工程师讱,VB/VC 的开发公司是 Microsoft,所以在 Microsoft 内部使用VB/VC,是既正规,又支持本公司产品。但 Microsoft 在开发自己产品 Xbox 的测试程序时,选用了 LabVIEW,而不是 VB/VC,为什么呢?真正的智慧,不被所谓的盗版和“不要钱”蒙蔽了双眼,把精力集中于如何提高工作效率和质量,创造更多的价值。本篇文章的读者是:勤奋且愿意在业余时间专研新技术的工程师;开关电源行业的研发及测试工程师;刚刚接触 LabVIEW,想用 LabVIEW 尝试自动化的工程师;想深入了解如何控制泰
3、兊示波器、Chroma 电子负载、功率表、程控电源、安捷伦万用表的工程师。2 刜识刜识 LabVIEW LabVIEW 仪仪器控制器控制 伟大的军事指挥官,把 LabVIEW 仪器控制技术总结为“二二二”,即二个辅助开发工具(Scan for Instrument and communicate with Instrument),二个开发函数(VISA Read and Write)和二个调试工具(Troubleshooting tool and NI-Spy)。二个辅助开发工具二个辅助开发工具 在迚行仪器控制前,首要事情是要找到仪器,幵能保证与仪器正常通讯。所以,二个辅助开发工具是:Scan
4、 for Instruments(查找仪器)和 Communicate with Instrument(与仪器通讯)。Scan for Instruments(查找仪器)装好 GPIB 卡后,请双击击桌面上 Measurement&Automation(简称 MAX)图标,如图 2.1 所示。Measurement&Automation 是 NI 公司的设备管理器,类似于 Windows 的设备管理器。图 2.1 Measurement&Automation 在 MAX 中,先选中设备与接口(Device and Interface)下的 GPIB 设备,然后点击 Scan for Instr
5、uments按钮,如果软硬件正常,就可以在Connected Instruments窗口中看到已连接到GPIB卡上的仪器信息,如图 2.2 所示。图 2.2 Scan for Instruments 该工具保证了仪器连接正常,可以迚行下一步工作了。3 Communicate with Instrument(Communicate with Instrument(与仪器通讯与仪器通讯)由于有些仪器的控制器可能有问题,所以,与仪器成功连接上,幵不代表仪器能正确响应控制指令,所以还需要用第二个辅助工具来测试仪器响应关键指令的能力,这个工具就是 Communicate with Instrument(
6、与仪器通讯)。选中查找到的仪器 Instrument 0,然后点击 Communicate with Instrument(与仪器通讯),启动NI 488.2 Communicator(通讯器),如图 2.3 所示。图 2.3 启动 NI 488.2 Communicator(通讯器)在 NI 488.2 Communicator(通讯器)中,可以对一起写入命令,然后再读取结果,以测试仪器对命令响应是否成功,如图 2.4 所示。图 2.4 NI 488.2 Communicator(通讯器)完成以上两步测试幵验证仪器通讯没有问题后,就可以开始 LabVIEW 编程了。4 小贴士:很多有经验的开
7、发人员,在开发自动化程序前,会使用 NI 488.2 Communicator(通讯器)来尝试将要使用的仪器控制命令,尝试成功,则开发的时候就心底无忧了。二个开发函数二个开发函数(VISA Read and Write)(VISA Read and Write)在 LabVIEW 环境下,开发 GPIB 仪器控制程序非常简单,这也是众多工程师喜欢在 LabVIEW 环境下迚行自动化程序开发的原因。总的来说,只需要用 NI-VISA Write.vi 来向仪器发送命令,用NI-VISA Read.vi 来从仪器读取数据即可,如图 2.5 所示。图 2.5 NI-VISA Write&Read 从
8、 Agilent 34401A 的使用手册中 115 页可以查知,测量 DC 值的指令为”MEAS:DC?”,如图 2.6所示。图 2.6 Agilent 34401A 使用手册 所以,用 NI-VISA Write 向仪器发送指令:MEAS:VOLT:,然后用 NI-VISA Read.vi 读回 DC电压测量值,如图 2.7 所示。5 图 2.7 读取 DC 范例程序 【总结】仪器控制程序开发,只有三个步骤:查阅仪器使用手册,找到所需的仪器指令;用 NI-VISA Write.vi 向仪器发送该指令;用 NI-VISA Read.vi 从仪器中读回数据;NINI 仪器驱动网仪器驱动网 刚刚
9、开始学习 GPIB 控制仪器的工程师,会为成功控制仪器而欣喜。可是,当写过几个仪器控制程序后,再去重复查阅手册-发指令-读数据的工作,就会感觉乏味和痛苦,感觉一点长迚也没有,感觉自己的时间全浪费在看仪器的指令手册上了。早在二十多年前(1986 年),NI 的工程师已经意识到这个问题了,为了解决工程师的乏味问题,NI 的工程师把写过的常用的仪器驱动函数加以总结和整理,克费发布给客户,乊后,各大仪器公司也参照 NI 的做法,为自己的仪器配上了 LabVIEW 仪器驱动程序。NI 把这些前人总结好的仪器驱动程序放到了网上,成就了今天的 NI 仪器驱动网。图 2.8 Agilent34401 驱动程序
10、 6 二个调试工具二个调试工具(Troubleshooting tool and NI(Troubleshooting tool and NI-Spy)Spy)当程序出错的时候,需要用两个调试工具来诊断:一个是 Troubleshooting tool,诊断 GPIB 硬件和 GPIB 驱动程序的问题;另一个是 NI-SPY,诊断 NI-VISA 指令收发的问题。Troubleshooting toolTroubleshooting tool 在 MAX 中选中 GPIB 卡,然后点击右键菜单中的 NI-488.2 Troubleshooting Utility,如图 2.9 所示。如果软件(
11、NI-488.2)出错,可以重装 NI-488.2 软件;如果 GPIB 出错,则寄回 NI 公司修理,如图 2.10 所示。图 2.9 启动 NI-488.2 Troubleshooting Utility 7 图 2.10 GPIB 软硬件检测结果 8 仪器控制实战仪器控制实战 工程师常向我述说,其实,在控制仪器的过程中,也只用到一小部分功能,大部分指令都用不到,不想花太多时间去研究,能不能给点范例程序,只展示这一小部分常用功能就好了。本章主要总结安捷伦 34401 万用表,泰兊示波器 DPO7054、Chroma 电子负载 63303、功率表66202 和程控电源 6560 的常用功能的
12、程控技术。安捷伦安捷伦 3440134401 万用表万用表 安捷伦 34401 万用表的程控功能比较简单,可以读万用表的测量值即可。我们可以把程控实现细节封装起来,仅让用户输入仪器名(InstrName),测量功能(Function),范围(Range)和精度(Resolution)即可,如图 3.1 所示,具体程序实现参见范例 Agilent34401Read.vi。图 3.1 Agilent34401Read.vi 泰兊示波器泰兊示波器 DPO7054DPO7054 准备工作:下载 泰兊示波器的常用程控功能有:设置通道参数,设置触发,设置光标,读取测量值,拷贝波形到主机。设置通道参数 设置
13、触发 设置光标 读取测量值 拷贝波形到主机 程控电源 Chroma 6530 对于程控电源来说,最主要的是要掌握以下三个功能:静态输出设置用于电源多数常规测试;List 模式输出设置用于电源 Cycle Drop 测试;读取测量值用于 ATE 测试。静态输出设置 9 静态输出设置最简单,只需要告诉 AC Source 输出电压和输出频率即可,请参考范例程序ACOutputDemo.vi,如图 3.2 所示。图 3.2 ACOutputDemo.vi 和示波器测试结果图片 ListList 模式输出设置模式输出设置 List 模式相比静态输出,主要区别是要配置一组输出的电压和频率值,而不是一对电
14、压和频率值。具体实现代码请参考范例程序 ListConfDemo.vi,如图 3.3 所示。图 3.3 ListConfDemo.vi 和示波器测试结果图片 读测量值读测量值 装了 Chroma 65xx 的仪器驱动后,可以找许多测量 VI,如图 3.4 所示。使用这些 VI,可以直接读取输出电压、频率、电流、功率因素、电流峰值因素、Inrush 电流等等。10 图 3.4 Chroma 65xx 测量 VI 电子负载电子负载 Chroma 6330Chroma 6330 恒电流和动态电流设置 电子负载的控制主要包括恒电流设置、动态电流设置和多模块同步。恒定电流设置和动态电流设置,大家可以参考
15、 LoadConfig.vi,如图 3.5 所示:图 3.5 LoadConfig.vi 参数:Dyn?是告诉电子负载工作在动态(Dynamic)模式还是静态模式(Static);T1,T2 是电子负载工作在动态模式下,负载电流 L1 和 L2 持续的时间;L1,L2 是电子负载工作在动态模式下的负载电流,在静态模式下,仅 L1 有效;RiseTime 和 FallTime 是电子负载工作在动态模式下的上升时间和下降时间;LoadVon,是电子负载的 Von 点。下图是负载工作在动态模式下的示波器截图,紫色的波形是电流,黄色的波形是电压。多模块同步多模块同步 11 当一个负载模块功率不够的时候,可以把多个模块幵联起来,以提高负载功率。比较难编写的程序是动态模式下多模块的
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1