利用SICL-LAN服务器的控制.doc_第1页
利用SICL-LAN服务器的控制.doc_第2页
利用SICL-LAN服务器的控制.doc_第3页
利用SICL-LAN服务器的控制.doc_第4页
利用SICL-LAN服务器的控制.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

显示利用SICL-LAN服务器的控制 概述 在Excel VBA中的样本程序有关样本应用程序的其他主题 概述本部分说明在Windows环境中如何利用SICL控制E5071C。 利用SICL-LAN服务器控制E5071C,您必须进行经SICL-LAN服务器进行控制 中说明的准备工作。在Excel VBA中的样本程序打开Microsoft Excel中的ctrl_lansicl.xls,显示如下图所示的屏幕:ctrl_lansicl.xls如何利用ctrl_lansicl.xls中的每个要素,请参见以下说明。1. 在第1部分,SICL-LAN地址右面的单元中输入控制SICL-LAN服务器的E5071C的地址。此地址为XX,已通过命令System Misc Setup Network Setup SICL-LAN Address XX将其设置。在IP地址右面的单元中输入E5071C的IP地址。没有这两个单元中的修正值,此VBA宏将不会正常运行。2. 点击第2部分中的“预置”,以执行预置操作。 3. 在第3部分,设置通道1的扫描范围(起点和终点)和测量点的数量。点击设置以执行设置,如下设置表所示。4. 第4部分,设置通道1中的迹线1的测量参数和数据格式。点击设置以执行设置,如下设置表所示。 5. 在第5部分,点击读出迹线,并检索通道1中的迹线1的格式化数据数组。以表格和图形形式显示数据。VBA宏中的操作说明本部分说明VBA宏的操作,着眼于与SICL控制相关的部分。 要使用VBA宏中的SICL,您必须清除SICL定义文件(用于VB)的功能并定义SICL定义文件的变量。 在VBA宏中,目标名称为“SICL”的标准模块ctrl_sicllan.xls是定义文件。SICL的基本流程控制显示在利用SICL的控制流程中。 此样本程序中,在通信部分利用SICL的ivprintf功能、ivscanf功能和iread功能;您也可以使用其他SICL功能。详情,请参见sicl.hlp(SICL的在线帮助)。利用SICL的控制流程 如何利用SICL的每个功能的更多信息,请参见SICL手册。以下说明在利用SICL的控制流程中的每个步骤的程序。连接程序的相应连接是OpenSession(OpenSession)。利用第1部分ctrl_lansicl.xls中输入的SICL-LAN地址和IP地址,通过SICL的iopen功能,OpenSession与E5071C建立了连接。iopen功能将您指定的E5071C的地址信息作为它的参数。语法地址 = iopen(dev)变量addr说明对话信息(输出)数据类型整数类型dev说明您指定(输入)的仪器的地址信息数据类型字符串类型语法sicl-name ip-address:interface, sicl-lan-address例如,如果参数(dev)是“lan192.168.0.1:hpib9,17,”,通过利用SICL接口名为lan的外部控制器,使得hpib9接口的17地址与IP地址是192.168.0.1的E5071C连接。OpenSessionFunction OpenSession() As IntegerDim ServAddr As StringDim IpAddr As StringOn Error GoTo ErrHandlerGet Sicl-Lan AddressSheets(Sheet1).SelectRange(C2).SelectServAddr = ActiveCell.FormulaR1C1Get Ip AddressSheets(Sheet1).SelectRange(C3).SelectIpAddr = ActiveCell.FormulaR1C1OpenSession = iopen(lan & IpAddr & :hpib9, & ServAddr)Call itimeout(OpenSession, 10000)Exit FunctionErrHandler:MsgBox * Error : & Error$Call siclcleanupEndEnd Function发送在通信过程中,步骤相应的发送对象是OutputSiclLan。OutputSiclLan利用SICL的ivprintf功能发送信息(SCPI命令)。ivprintf功能将iopen功能和程序消息的对话信息输出作为它的参数。语法状态 = ivprintf(addr,mes)变量Status说明返回功能值(输出)数据类型整数类型addr说明对话信息(输出)数据类型整数类型mes说明程序消息(输入)数据类型字符串类型OutputSiclLanSub OutputSiclLan(addr As Integer, message As String)Dim Status As IntegerDim actualcnt As LongDim length As LongOn Error GoTo ErrHandlerlength = Len(message)Status = ivprintf(addr, message & Chr$(10)Exit SubErrHandler:MsgBox * Error : & Error$Call siclcleanupEndEnd Sub接收在通信过程中,程序相应的接收ASCII格式消息是EnterSiclLan。EnterSiclLan利用SICL的ivscanf功能,以ASCII格式接收消息,并将其存储在输出变量中。ivscanf功能将iopen功能、输出格式和输出数据的对话信息输出作为它的参数。语法状态 = ivscanf(addr,fmt,ap)变量fmt说明 输出格式(输入)数据类型字符串类型ap说明 输出数据(输出)数据类型字符串类型有关变量(状态)和变量(地址)的详情,请参见变量。在Visual Basic中,当利用ivscanf功能接收字符串数据时,必须将作为固定长度的字符串的变量清除。EnterSiclLanSub EnterSiclLan(addr As Integer, Query As String)Dim Status As IntegerDim actualcnt As LongDim res As String * 256On Error GoTo ErrHandlerStatus = ivscanf(addr, %t, res)Query = Trim(res)Exit SubErrHandler:MsgBox * Error : & Error$Call siclcleanupEndEnd Sub在通信过程中,程序的相应接收数组数据是EnterSiclLanArrayReal64,它利用SICL的iread功能以IEEE 64-bit浮点二进制传送格式来接收数组数据,并将其存储到输出变量中。iread功能将iopen功能、输出数据、数据字段的数量、完成读取数据的条件和实际读出数据字段的数量的对话信息输出作为它的参数。语法状态 = iread(addr,buf,bufsize,reason,actual)变量buf说明输出数据(输出)数据类型字符串类型bufsize说明数据字段的数量(输入)数据类型长整数类型reason说明完成读出数据的条件(输入)数据类型整数类型actual说明实际读出数据字段数量(输出)数据类型长整数类型有关变量(状态)和变量(地址)的详情,请参见变量。以下说明EnterSiclLanArrayReal64的每个功能。(1) 检索数据标头。(2) 将数据字段的数量存储到标头部分的大小变量中。(3) 检索通道1中迹线1的格式化数据数组,并将其存储到databuf变量中。(4) 检索数据端的消息端接器。EnterSiclLanArrayReal64Function EnterSiclLanArrayReal64(addr As Integer, databuf() As Double) As LongDim Status As IntegerDim actualcnt As LongDim buf As String * 8Dim size As LongOn Error GoTo ErrHandlerRead header info of #6NNNNNNStatus = iread(addr, buf, 8, I_TERM_MAXCNT, actualcnt) .(1)size = Val(Mid$(buf, 3, 6) .(2)Read dataStatus = iread(addr, databuf, size, I_TERM_MAXCNT, actualcnt) .(3)Read ending LFStatus = iread(addr, buf, 1, I_TERM_MAXCNT, actualcnt) .(4)EnterSiclLanArrayReal64 = size / 8Exit FunctionErrHandler:MsgBox * Error : & Error$Call siclcleanupEndEnd Function 断开利用SICL的iclose功能断开通信。iclose功能将iopen功能的对话信息输出作为它的参数。语法状态 = iclose(addr)有关变量(状态)和变量(地址)的详情,请参见变量。样本控制通过逐步执行以上程序,可以控制E50

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论