我是VB初学者,也不是计算机专业的.学电子的.怎么用VB通过GPIB控制仪器?怎么用VB调用SCPI(Standard Commands for Programmable Instruments)?请给我一个简单的例子?谢谢

解决方案 »

  1.   

    我现在连GPIB通讯都解决不 了啊。谁能提供一个简单的通讯程序和调用scpi的程序。先谢过
      

  2.   

    楼上是说调用仪器的API 吗?
      

  3.   

    没错!一般情况下仪器厂商都是会提供API函数给客户的。
      

  4.   

    如果设备不是通用的,厂家又没有提供SDK的话,基本上,不太可能有人会.
      

  5.   

    有没有例子啊?随便都行,只要是涉及GPIB的.我的Mail:[email protected]谢谢.
      

  6.   

    正在做这个东西,用VB调用agilent34401,agilent3634和一台非标准的仪器。agilent提供了visa32.bas模块,在程序里调用具体的命令就可以了。
    上网搜visahelp.chm之类的可以找到好多资料
      

  7.   

    應該有提供VB調用的bas文件或者是dll函數的,比如GPIB.command
    或者有些VB調用例子的。
      

  8.   

    不知道你用的是什么仪器。agilent提供了一个visa32.bas供调用。在这个平台下可以方便调用有关的函数,比如:
    用34401三用表测量电压,如下:
    Public Function getvolt() As Double
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ''''''''''''''''通用函数-34401A测量电压''''''''''''''''''
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Dim defrm As Long
    Dim vi As Long
    Dim cmd34401 As String
    Dim volt As String * 20
    Dim actual As LongCall viOpenDefaultRM(defrm)
    Call viOpen(defrm, "GPIB0::22::INSTR", 0, 0, vi)'34401默认地址22,计算机gpib卡默认为0
    Call viClear(vi)
    cmd34401 = "MEAS:VOLT:DC? DEF,DEF" + Chr(10)
    Call viWrite(vi, cmd34401, Len(cmd34401), actual)
    Call viRead(vi, volt, 20, actual)
    Call viClose(vi)
    Call viClose(defrm)
    getvolt = Val(volt)End Function具体的用法,在visahelp.chm和agilent user's help中可以查询得到
      

  9.   

    谢谢.明白了许多.最好能提供几个具体例子.比如调用AGILENT 34401A的SCPI来做Calibration等.
    谢谢各位的支持[email protected]
      

  10.   

    还有关于visahelp.chm在哪里找的到?我在百度里怎么找不到?
      

  11.   

    感谢royal_kent.邮件我已经收到.希望有这方面的同志,一起来讨论.大家一起进步.我虚心向大家学习.
      

  12.   

    控制什么仪器? GPIB的控制现在都通过VISA实现
      

  13.   

    西行列车:
    可以借看一下调用AGILENT 34401A的SCPI来做Calibration的例子程序吗
    现在用两台34401A做一个双表法测量的软件
    由于对仪器控制不是很了解 希望向你请教一下经验
    控制3458A的程序 控制34401A要做什么改动?/
    我的QQ70427900
    邮箱[email protected]