=============================================================================== <BRINGO GP-IB ActiveX コンポーネント Ver 1.00> 説明書 2004年5月 岩通計測株式会社 技術部 =============================================================================== ■1.概要  ̄ ̄ ̄ ̄ ̄ BRINGO GP-IB ActiveX コンポーネント(以下、本コンポーネント)は、 岩通計測社製ディジタルオシロスコープ(以下Bringo)をGP-IBインタフェースを経由し て制御するのに便利なVisualBasic(Ver6)のActiveXコンポーネントです。 本コンポーネントをユーザアプリケーションに張り付けて、 少ない行数を書くだけで、DSOを意識しないで、DSOの各種機能が利用できます。 Bringoをお持ちの方は自由にご活用ください。 ■2.動作環境  ̄ ̄ ̄ ̄ ̄ ̄ ̄ 本コンポーネントを使用する為には以下の環境が必要となります。 ・PC :IBM PC/AT互換機 ・OS :Microsoft社Windows95/98/2000/XP ・開発言語 :Microsoft Visual Basic(Ver6)またはMicrosoft Excel2000 ・DSO :岩通計測製 DS-8812(GP-IBオプション付き) DS-8814(GP-IBオプション付き) DS-8822P(GP-IBオプション付き) DS-8824P(GP-IBオプション付き) ・I/F(GP-IB):NI(ナショナル・インスツルメンツ)社製GPIBボード(PCMCIA-GPIB+) 対応ドライバ:同社NI-488.2 FOR WINDOWS,VER2.1(ENG&JPN) ■3.機能  ̄ ̄ ̄ ̄ ̄ 本コンポーネントには以下の機能があります。 1) 波形の取込みと表示 以下のように、最低2行を書くだけでBringo波形の取り込みと表示を行います。 BringoAX.AdressSet = True ' 装置のアドレスの設定(1回実行すれば不要) BringoAx.DacqStart = True ' 波形を取り込み、取り込み完了後に表示 2) DSOのパネル設定と設定状態の読み取り 以下のように、最低3行を書くだけでBringo状態の確認ができます。 BringoAX.SetCommand="*IDN?" BringoAX.SendExec=True ResponseLabel.Caption=BringoAX.Response '応答表示 3) 自動測定値の読み取り 1項目あたり、1行で自動測定結果が読み取れます。 AMA.Caption = BringoAX.AutoMeasA ' 自動測定Aありの場合は、結果を表示 4) 波形データの転送 波形データの転送用のメソッドが用意されています。 5) 画面イメージの転送 画面イメージ転送用のメソッドが用意されています。 6) セットアップの一括転送 セットアップの一括受信、送信用のメソッドが用意されています。 ■4.コンポーネントの利用方法  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 1) ナショナルインスツルメント社のGP-IBインタフェースハードと ソフトのインストールインストール方法は、 ナショナルインスツルメント社のGP-IBインタフェースマニュアルを 参照して下さい。 2) Bringo ActiveXのインストール Bringo.ocxの内包されたdirのセットアアップファイルを ダブルクリックして下さい。 3) VB6を開いて下さい。 4) <プロジェクト>-><コンポーネント>を実行して下さい。 <コントロール>のをチェックしてして下さい。 これで、<ツールボックス>にコンポーネントが追加されます。 5) 上記コンポーネントをユーザプログラムに貼り付けて使用して下さい。 ■5.名称  ̄ ̄ ̄ ̄ ̄ ・ActiveX 名称:BriAXGP ・OCX 名称 :Bringo.ocx ■6.仕様  ̄ ̄ ̄ ̄ ̄ 本コンポーネントで使用可能なプロパティ、メソッドおよび イベントを以下に示します。 1) プロパティ 本コンポーネントで使用可能なプロパティを以下に示します。 1.AdressSet As Boolean 装置にGP-IBアドレスを確定します。 プログラムの最初に必ず1回実行する必要があります。 <サンプル> 通常、ユーザプログラムのForm_Load()で次のように書きます。 Sub Form_Load() 'インスタンス名称 BringoAX.DeviceAdress = 10 BringoAX.AdressSet = True End Sub 2.AutoMeasA〜D As String 自動測定が有効(OFF以外)になっている場合の各項目(A〜D)の読み取り値です。 自動測定がOFFになっている場合、nullとなります。 <サンプル> BringoAX.SetCommand = "DIRM A;MSEL CH1,TR" ' A項目=CH1,TR BringoAX.SendExec = True BringoAX.SetCommand = "DIRM B;MSEL CH2,VMEAN" ' B項目=CH2,Vmean BringoAX.SendExec = True BringoAx.Dsize = 1024 ' 波形転送サイズ BringoAx.DacqStart = True ' 波形を書き込み状態にして、書き込み後表示 AutoMeasA.caption = BringoAx.AutoMeasA ' CH1,TRの結果を表示 AutoMeasB.caption = BringoAx.AutoMeasB ' CH2,Vmeanの結果を表示 3.Ch1Color As OLE_COLOR CH1波形の色を設定します。 4.Ch2Color As OLE_COLOR CH2波形の色を設定します。 5.Ch3Color As OLE_COLOR CH2波形の色を設定します。 6.Ch4Color As OLE_COLOR CH2波形の色を設定します。 7.Channel As Integer 波形データ転送の際のCHを設定します。 1〜4:CH1〜CH4 8.DeviceAdress As Integer 装置のGP-IBアドレスを設定します。設定範囲は0〜30。デフォルトは10です。 なお、デリミタは(Bringoの初期設定値)固定です。 9.DacqStart As Boolean 波形の書込み/取込み/表示を行います。CH1〜CH4について行います。 なお内部で、最大データ長 x 4のバッファを使用します。 <MATH = FFTの場合> FFTの波形を1CH分取り込んで表示します。 この場合の、CHの指定は、FSRCコマンドで行います。 <サンプル1> YTデータの場合 BringoAX.SetCommand = "MATH OFF" BringoAX.SendExec = True BringoAX.SetCommand = "MLEN SHORT" ' データ取り込みモードをshortとする。 BringoAX.SendExec = True BringoAx.StartAdress = 0 ' 波形転送開始アドレス BringoAx.Dsize = 1024 ' 波形転送サイズ BringoAx.DacqStart = True ' 波形を書込み状態にして、書き込み後表示 <サンプル2> FFTデータの場合 ' FFT条件を設定 BringoAX.SetCommand = "FSRC CH1;FPOINTS 1024;FWINDOW RECT;MATH FFT" BringoAX.SendExec = True BringoAx.StartAdress = 0 ' 波形転送開始アドレス BringoAx.Dsize = 500 ' 波形転送サイズ BringoAx.DacqStart = True ' 波形を書込み状態にして、書き込み後表示 10.Dsize As Long 波形表示のデータ長を設定します。 ・データ取り込みモード = short:1〜5120(DS-8812) 1〜1024(DS-8812以外) = long :1〜102400 ・FFTモード 演算長 = 1024 :1〜512 演算長 = 4096 :1〜2048 11.GridLine As Integer 格子の線の種類を設定します。設定範囲は0〜6。(DrawStyleプロパティと同じ) 0:実線 1:鎖線 2:点線 3:1点鎖線 4:2点鎖線 5:透明(表示しない) 6:塗りつぶし 12.GridColor As OLE_COLOR グリッド(格子)の色を設定します。 13.StartAdress As Long 波形表示の開始アドレスを設定します。 転送開始アドレス設定 = short:0〜5119(DS-8812) 0〜1023(DS-8812以外) = long :0〜102399 FFTモード 演算長 = 1024 :0〜511 演算長 = 4096 :0〜2047 14.Response As String ?コマンド(クエリ)の応答データ。装置の設定状態が戻されます。 <サンプル> BringoAX.SetCommand = "*IDN?" BringoAX.SendExec = True ResponseLabel.Caption = BringoAX.Response '応答表示を行う 15.SendExec As Boolean コマンドを装置に転送します。 <サンプル1> 設定コマンド BringoAX.SetCommand = "TDIV 10ms" BringoAX.SendExec = True 16.SetCommand As String 送信コマンドを指定します。 BringoのGP-IBコマンドのうち、パネル設定コマンドと?コマンド。 但し、データ転送が伴うコマンドは使用できません。 詳しくは、Bringoリモートコマンドマニュアルをご覧下さい。 標準リモートコマンドの他、次のコマンドも使用できます。 "DCL":デバイスクリア "GTL":REMOTEをLOCALにする <サンプル1> 設定コマンド BringoAX.SetCommand = "TDIV 10ms" BringoAX.SendExec = True <サンプル2> ?コマンド BringoAX.SetCommand = "*IDN?" BringoAX.SendExec = True ResponseLabel.Caption = BringoAX.Response '応答表示を行う 17.WBackColor As OLE_COLOR 波形表示部の背景色を設定します。 18.WColor As Boolean 波形表示の各種線の色を黒以外に変更するかどうかを指定します。 False:デフォルト。各種線情報をすべて黒に設定。 True :各種線情報が別々に設定できる。表示速度が若干遅い。 Ch1Color:CH1波形の色 Ch2Color:CH2波形の色 Ch3Color:CH3波形の色 Ch4Color:CH4波形の色 GridColor:格子の色 WBackColor:波形表示部の背景の色 19.WaveDisp As Boolean 波形取り込み時、波形表示を行うかを指定します。 False:波形取り込み時、波形表示を行わない。 波形表示が遅いアプリ(Excelなど)で有効です。 True :波形取り込み時、波形表示を行う。デフォルト。 2) メソッド 本コンポーネントで使用可能なメソッドを以下に示します。 1.Function GetWaveDat(FromAdress As Long,ToAdress As Long, StepAdress As Long,WaveData() As Integer) As Long 機能: Channelプロパティで指定されたチャンネルの波形データを ユーザ領域に転送します。 波形データは、StartAdress にかかわらず、最初のアドレスは0です。 パラメタ: FromAdress As Long:転送開始アドレス。StartAdressとは異なります。 ToAdress As Long :転送終了アドレス。 StepAdress As Long:scan間隔。1が連続(DTSTEPが1の場合) <DTSTEPとの関係> DTSTEP StepAdress scan間隔 1 1 連続 1 2 1点おき 2 1 1点おき 2 2 3点おき m n m×n−1おき 戻り値: 転送されたデータの数。 サンプル: 装置のCH1の24番目のデータを参照したい場合、次の様にします。 <サンプル1>(推奨) Dim Data(1000) As Integer BringoAx.StartAdress = 24 ' 波形転送開始アドレス。 BringoAx.Dsize = 1000 ' 波形転送サイズ。 BringoAx.DacqStart = True ' 波形を書込み状態にして、書き込み後表示 BringoAX.Channel = 1 ' CH1波形バッファの0番地のデータ(装置の24番地の値)がData(0)に入る。 Tsize = BringoAX.GetWaveDat(0,0,1,Data) <サンプル2> Dim Data(1024) As Integer BringoAx.StartAdress = 0 ' 波形転送開始アドレス。 BringoAx.Dsize = 1024 ' 波形転送サイズ。short時の全データを取り込む。 BringoAx.DacqStart = True ' 波形を書込み状態にして、書き込み後表示 BringoAX.Channel = 1 ' CH1波形バッファの24番地のデータ(装置の24番地の値)がData(0)に入る。 Tsize = BringoAX.GetWaveDat(120,120,1,Data) 2.Function GetScreen(Atr As String,File As String) As Integer 機能: 本体の画面をPCに転送します。バイナリデータです。 パラメタ: Atr As String :データの種類。"BMP"または"TIFF"。 File As String :PCの転送先ファイルの名称。ディレクトリを含むフル名称。 名称だけだと、カレントディレクトリに格納されます。 戻り値: 転送されたデータの数。 サンプル: dlength = BringoAX.GetScreen("BMP","Screen.bmp") dlength = BringoAX.GetScreen("TIFF","Screen.tif") 3.Function GetSetup(File As String) As Integer 機能: 本体からPCにセットアップ情報を転送します。バイナリデータです。 チャンネルはChannelプロパティで指定します。 パラメタ: File As String :PCの転送先ファイルの名称。ディレクトリを含むフル名称。 名称だけだと、カレントディレクトリに格納されます。 戻り値: 転送されたデータの数。 サンプル: BringoAX.Channel = 1 dlength = BringoAX.GetSetup("Setup.bin") 4.Function SetSetup(File As String) As Integer 機能: PCから本体にセットアップ情報を転送します。バイナリデータです。 チャンネルはChannelプロパティで指定します。 パラメタ: File As String :PCの転送元ファイルの名称。ディレクトリを含むフル名称。 名称だけだと、カレントディレクトリに格納されます。 戻り値: 転送されたデータの数。 サンプル: BringoAX.Channel = 1 dlength = BringoAX.SetSetup("Setup.bin") 3) イベント イベントは実装されておりません。 ■7.全体を使用したサンプル  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 主要コード部分のみを掲載します。 但し、このままでは、実行できません。 ' GPIBアドレスが変更になった場合 Private Sub adsetcommand_Click() BringoWave1.AdressSet = True End Sub ' 波形取込み開始ボタンが押された場合 Private Sub Command1_Click() Dim data(1024) As Integer ' ユーザ波形領域 BringoAX.DacqStart = True ' 波形取り込みを1回分行う BringoAX.Channel = 1 Size = BringoAX.GetWaveDat(0,0,1,data) ' CH1波形の最初のデータを転送 Label2.Caption = Str$(data(0)) ' CH1波形の最初のデータを表示 BringoAX.Channel = 2 Size = BringoAX.GetWaveDat(1023,1023,1,data) ' CH2波形の最後のデータを転送 Label3.Caption = Str$(data(0)) ' CH1波形の最後のデータを表示 AMA.Caption = BringoAX.AutoMeasA ' 自動測定Aありの場合は、結果を表示 AMB.Caption = BringoAX.AutoMeasB ' 自動測定Bありの場合は、結果を表示 Timer1.Enabled = True ' 繰り返し取り込みの制御を行う End Sub ' 波形取込み中止ボタンが押された場合 Private Sub Command2_Click() Timer1.Enabled = False End Sub ' フォームロード時 Private Sub Form_Load() BringoAX.WBackColor = BringoAX.WBackColor ' 波形表示画面の背景の色 BringoAX.AdressSet = True ' 装置のアドレスの設定 BringoAX.Wcolor = True ' 各種線の色は全部黒とする End Sub ' GPIBアドレスが変更になった場合 Private Sub GpibAdrs_Change() BringoAX.DeviceAdress = Val(GpibAdrs.Text) End Sub ' GPIBコマンドが変更になった場合 Private Sub SendCommand_Change() BringoAX.SetCommand = SendCommand.Text End Sub ' GPIBコマンドセットボタンが押された場合 Private Sub SendExec_Click() BringoAX.SendExec = True Label1.Caption = BringoAX.Response End Sub ' 波形表示開始アドレスが変更された場合 Private Sub Text1_Change() BringoAX.StartAdress = Val(Text1.Text) End Sub ' 波形表示データサイズが変更された場合 Private Sub Text2_Change() BringoAX.Dsize = Val(Text2.Text) End Sub ' 波形表示を繰り返し行うタイマイベントが上がった場合 Private Sub Timer1_Timer() Timer1.Enabled = False Command1_Click ' 1回分波形取り込み表示 Timer1.Enabled = True End Sub ■8.注意事項  ̄ ̄ ̄ ̄ ̄ ̄ ̄ 本コンポーネントを参考にして新たなソフトウェアを作ることは自由ですが、 以下の件をご承知おき下さい。 1) 本コンポーネントの著作権は岩通計測機株式会社に属します。 本コンポーネントはいかなる場合でも、勝手に売買してはいけません。 商取引にて使用する場合は、ご連絡下さい。 但し、無料で配布することは自由ですが、著作者を明記して配布して下さい。 配布形式の変更は禁止です。 2) 本コンポーネントは、ハードウェアとの相性により 正常に動作しない場合があります。 また、本コンポーネントをMicrosoft Word、Microsoft Execelにて 使用してみましたが、動作上は問題ありませんが、波形表示が極端に遅いです。 3) 本コンポーネントを使用することによって生じる一切の不具合、 不利益、損害について、著作者は一切責任を負いません。 但し、明らかなバグ、改善案などについては、ご連絡下されば、 対応可能な場合は、後日バージョンアップする場合があります。 4) 本コンポーネントの最新バージョンは岩通計測株式会社の ホームページに掲載しています。 http://www.iti.iwatsu.co.jp/ 5) 本コンポーネントを使用してのご意見、ご感想が有りましたら、 下記まで連絡してください。 - 岩通計測株式会社 営業部 フィールドサポート課 - 東京都杉並区久我山1−7−41 - e-mail: info-tme@iwatsu.co.jp ■9.履歴  ̄ ̄ ̄ ̄ ̄ ̄ ・Ver1.00 2004/5 新規作成 対象機種:DS-8812(※)/8812P/8814(※)/8814P/8822P/8824P ※GP-IBオプション付き 以上 --------- Copyright (C) 2004 IWATSU TEST INSTRUMENTS CORPORATION ---------