▼Gainerメモ▼
はじめてのGainerプログラミング - VB版 -


アプリケーションのボタンを押すことで、I/OモジュールのLEDが点灯するプログラムを作成する。





開発ツールの準備


Visual Basic 2008 Express Edition
C#でWindowsアプリケーションを作成するための統合開発環境。無償で利用可能。
ダウンロードしてインストール。

Gainerソフトウェアライブラリ
Gainerをパソコンから制御するためのライブラリおよびツール郡。
「Flash」「Max/MSP」「Processing」に対応。
C#ラッパーはFlashのライブラリをラップしているので、
「ソフトウェア・ライブラリ」の「Flash」をダウンロードしてインストール。

フォルダ構成は次の通り。C#による開発では「gsp」のみ利用する。
fla gainer ライブラリ
examples サンプル
workshop サンプル
readme.txt 説明ファイル
reference_jp.txt リファレンス
serial_proxy win gsp本体と設定ファイル
mac gsp本体と設定ファイル
readme.txt 説明ファイル
code gspのソースコード
actoinscript3 - ActionScript3用コード

Gainer .Netラッパー
C#やVisual Basicなどの.Netのプログラミング言語からGainerを制御するためのライブラリ。
ダウンロードして解凍し、任意のフォルダに配置。


プログラムの作成


プロジェクトの作成
  1. Visual Basicを起動。
  2. メニュー「ファイル→新しいプロジェクト」「Windowsフォームアプリケーション」を選択し、「HelloWorld」という名前でプロジェクトを作成。
  3. ソリューションエクスプローラで「Form1.vb」の名前を「HelloForm.vb」に変更。
  4. メニュー「ファイル→すべてを保存」でプロジェクトを保存。
  5. 「HelloWorld\HelloWorld\bin\Debug」フォルダと「HelloWorld\HelloWorld\bin\Release」フォルダに、Gainer .Net#ラッパー内の4つのファイルをコピー。
    1. Gainer.dll
    2. AxInterop.ShockwaveFlashObjects.dll
    3. Interop.ShockwaveFlashObjects.dll
    4. GainerFlash.swf
  6. ソリューションエクスプローラのソリューション名(太文字のHelloWorld)を右クリックし、参照の追加を選択し、参照からGainer .NetラッパーのGainer.dllを追加。
    1. Gainer.dll
※Gainerクラスをうまく認識しない時は、Gainer.dllを一度削除して再度追加するとよい。

デザインの編集
Formコンポーネント「HelloForm」
プロパティ (Name) HelloForm
Text HelloWorld
イベント Load HelloForm_Load()

Buttonコンポーネント「btnLED」
プロパティ (Name) btnLED
Enabled false
Location 110,120
Text LED
イベント MouseDown HelloForm_MouseDown()
MouswUp HelloForm_MouseUp()


ソースコードの記述
「HelloForm.vb」を次のように記述する。
Public Class HelloForm
    Private gio As Gainer

    'コンストラクタ
    Private Sub HelloForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        gio = New Gainer("localhost", 2000, Gainer.MODE1, True)
        gio.onReady = AddressOf onReady
    End Sub

    'gspとの接続成功時に発生
    Private Sub onReady()
        btnLED.Enabled = True
        btnLED.Enabled = True
    End Sub

    'LED点灯ボタンクリックのイベント処理
    Private Sub btnLED_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles btnLED.MouseDown
        gio.turnOnLED()
    End Sub

    'LED消灯ボタンクリックのイベント処理
    Private Sub btnLED_MouseUp(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles btnLED.MouseUp
        gio.turnOffLED()
    End Sub
End Class


実行ファイルの生成
Visual Basicのメニュー「ビルド→Hello Worldのビルド」で実行ファイルを生成。


プログラムの実行



プログラムの実行
Flash用のGainerソフトウェアライブラリはFlashが直接シリアル通信できないので、「gsp(serial_proxy)」と呼ばれるプロクシサーバを介して、パソコンからGainerを操作する仕組みになっている。そのため、Gainerを操作するアプリケーションを実行する前に、gspを起動しておく必要がある。

  1. GainerとパソコンをUSBケーブルで接続。
  2. 「gsp.exe」をダブルクリックで実行。
  3. 「GANER started」と表示されたら起動成功。
  4. 失敗した時は「setting.txt」を開き、
    1行目にポート番号(2000)、
    2行目にGainerと接続したシリアルポート名(COM4など)
    を記述し再度実行。
    gspの起動しなおし、USBケーブルを挿しなおしでも直ることがある。
  5. Visual Basicのメニュー「デバッグ→デバッグ開始」でプログラムを実行。





−戻る−