Kikusui Electronics Corp. :: Commnunication Interface Mannual

Tutorial

Visual Basic 2008

Communicate with the PAT-T series using VISA through GPIB, RS232C, USB, or LAN.

Setting the "Project"

At first, set the communication driver (VISA liabrary) for the "Project".

Click "Project" on the menu bar, then select "Add Reference" to refer "VISA COM 3.0 Type Library".

 

Communication through GPIB, RS232C, USB, or LAN

After setting the communication driver, it enables to communicate by GPIB, RS232C, USB, or LAN.

The following describes the communication procedure for via VISA.

Open the VISA

To communicate with the device of GPIB, RS232C, USB, or LAN via VISA, it requires to open the VISA first. When opening the VISA, specify the I/O resource.

Example : To open VISA by using USB

Set rm = CreateObject("VISA.GlobalRM")

Set msg = rm.Open("USB::0x0B3E::0x100E::00000001::INSTR", NO_LOCK, 0, "")

"USB::0x0B3E::0x100E::00000001::INSTR" is the I/O resource.

The I/O resource is specified by the following constructions. The part indicated with [ ] can be abbreviated. Enter the appropriate value in the part specified in oblique characters.

GPIB GPIB[board]::PrimaryAddress[::SecondaryAddress][::INSTR]
Example : The primary address 3 of the measuring instrument connected to GPIB0.
   GPIB0::3::INSTR
Serial
(RS232C)
ASRL[board][::INSTR]
Example : The measuring instrument connected to the serial port COM1.
   ASRL1::INSTR
USB USB[board]::VendorID::ProductID::SerialNumber[::InterfaceNumber][::INSTR]
Example : The USNTMC measuring instrument having with the vendor ID (VID)2878, Product ID(PID)4111 and serial number "00000001".
   USB0::0x0B3E::0x100E::00000001::INSTR
LAN TCPIP[board]::LAN divice name[::inst0][::INSTR]
Example :The measuring instrument whose IP address (LAN device name) is 169.254.7.8.
   TCPIP::169.254.7.8::INSTR
You can also set the LAN device name using the host name.

For VISA, the alias can be used for the I/O resource.

When using the alias for the I/O resource, even the alias name to be hard coating directly in the application, it can be easily converted to the appropriate I/O resource name.

Example : When using the alias (MYDEV1) for the I/O resource.

Set msg = rm.Open("MYDEV1", NO_LOCK, 0, "")

When the alias is used, the actual I/O resource is specified by such an external configuration table. When using the USB (example for KI-VISA)

In case of using VISA other than KI-VISA, please refer to the applied VISA manual.

Controlling the devices

Next, using such a "Read", "Write" to control the devices.

Example:

msg.WriteString ("VOLT 13.5")        'Set 13.5 V

msg.WriteString ("CURR 150.0")       'Set 10 A

msg.WriteString ("OUTP 1")           'Output on

Closing the VISA.

Close the VISA at the end.

A command for "Open" and "Close" of the VISA is required only once in the program.

msg.Close

Sample program

Imports Ivi.Visa.Interop

 

Public Class Form1

 

   Dim rm As ResourceManager

   Dim msg As IMessage

 

   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

      rm = CreateObject("VISA.GlobalRM")

      msg = rm.Open("GPIB0::1::INSTR", AccessMode.NO_LOCK, 0, "")     'Example: GPIB

      'msg = rm.Open("MYDEV1", AccessMode.NO_LOCK, 0, "")  'Example: Using a alias

      'msg = rm.Open("USB0::0x0B3E::0x100E::00000001::INSTR", AccessMode.NO_LOCK, 0, "")  'Example: USB

      'msg = rm.Open("TCPIP::169.254.7.8::INSTR", AccessMode.NO_LOCK, 0, "")  'Example: LAN

   End Sub

 

   'Query the instrument identity

   Private Sub cmdIdn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdIdn.Click

      msg.WriteString("*IDN?")

      TextBox1.Text = msg.ReadString(256)

   End Sub

 

   'Set the operation mode and voltage

   Private Sub cmdCurr_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdCurr.Click

      msg.WriteString("OUTP 0")

      msg.WriteString("VOLT 13.5")

      msg.WriteString("CURR 150.0")

      msg.WriteString("OUTP 1")

   End Sub

 

   'Query the instrument identity

   Private Sub cmdMeas_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdMeas.Click

      msg.WriteString("MEAS:CURR?")

      TextBox1.Text = msg.ReadString(256)

   End Sub

 

   Private Sub Form1_Disposed(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Disposed

      msg.Close()

   End Sub

 

END CLASS

>top