6・7  Visual Basic.netによる移動ロボット 

    制御パネルに"直進"、 "停止"、 "後退" 、 "右折"、 ”左折"、 "低速"、 "中速"、 "高速"の8個のボタンを配置し
   移動ロボットを制御します。

   使用するブロックは カーネルブロックとモータブロック2個です。

6・7・1 プロジェクトを作成 する

Microsoft Visual Studio.Net または Microsoft Visual Basic.Netを開始し、”新しいプロジェクト”ボタンをクリックします。
”Visual Basicプロジェクト” の ”Windowsアプリケーション” を選択し、プロジェクト名を入力します。
”ツールボックス”内で右クリックして表示されるショートカットメニューで「ツールボックスのカスタマイズ」?を選択します。
リストボックスの中の「ToyOcx Control」をチェックします。
ツールボックスが表示されていない場合は表示させます。表示方法はこちらをクリック


  ↑再生ボタンをクリック

 

6・7・2 OCXとボタンの配置

ツールボックスの中の「ToyOcxCtrl」をクリックし、フォーム上に配置します。
ToyOcxCtrl のVisibleプロパティをfalseに設定します。

6・7・3 ボタンの配置

ツールボックスからドラックして、Buttonをフォームに配置し、Textプロパティに「接続」と入力します。

  ↑再生ボタンをクリック

 

6・7・4 “接続ボタン”クリック時の処理の記述

ここで記述するのはオートバインディングと呼ばれる初期化の手順です。
まず、通信ポートCOM()を通信可能な状態(OPEN)にします

記述方法:"接続ボタン"をダブルクリックして、コードエディタを表示させます。
カーソルの位置に直接入力で”AxToyOcx1”と入力し、続けて”.”を入力するとプルダウンリストが表示されます。
その中の、"OpenCom"をダブルクリックします。
( )内には通信ポートのポートナンバーを入力します。ここでは”8”となっています。

結果:接続されていれば ”True” 、接続されていなければ “False” が返されます。

  ↑再生ボタンをクリック

次にカーネルブロックが接続されているか調査を行います。

記述方法:上述の"OpenCom"と同様にして、”AxToyOcx1.BindControl()”と記述します。

結果:カーネルブロックが接続されていれば、イベントBindControlCompleteを返します。

イベントBindControlComplete

記述方法:クラス名テキストボックスの右のプルダウンボタンをクリックするとリストが表示されるので、“AxToyOcx1”をクリックして選択します。
隣のメソッド名テキストボックス右のプルダウンボタンをクリックするとリストが表示されるので、
”BindControlComplete”をクリックして選択します。

 

ここではカーネルブロック以外のブロックが接続されているか調査を行います。

記述方法:”AxToyOcx1.”を入力するとプルダウンリストが表示されます(AxToyOcx1.OpenCom()を入力したときと同様)。
その中から、"QueryBlock"をクリックします。

結果:接続されていれば、イベントSerchComplete  を返します。

イベントSerchComplete 

記述方法:上述のイベントBindControlCompleteと同様にして、プルダウンリストから「AxToyOcx1」を選択し、
「SerchComplete」をクリックして選択します。

 

  ↑再生ボタンをクリック

 

ここではカーネルブロック以外のブロックの調査完了時に引数を返します。

ブロックデータベースの内容に従いバインディングを行います。
これによってブロックのネットワークが構築されます。

記述方法:”AxToyOcx1.”を入力し、表示されたプルダウンリストの中から、"BindBlock"をクリックします。

結果:イベントBindComplete を返します。

イベントBindComplete 

上述のイベントBindControlCompleteと同様にして、“AxToyOcx1.BindComplete()”と記述し、
MsgBox “(接続を完了しました。)”と入力します。

  ↑再生ボタンをクリック

 

6・7・5 切断、終了の処理


  ↑再生ボタンをクリック

 

6・7・6 動作制御ボタンの作成

以下同様にして

Button4 "直進"  Button5 "停止"   Button6 "後退"
Button7 "右折"  Button8 ”左折"
Button9 "低速"  Button10 "中速"   Button11 "高速"

各ボタンを配置してコーディングします。

 

Button4 "直進" 

Button5 "停止"

Button6 "後退"

Button7 "右折"

Button8 ”左折"

Button9 "低速" 

Button10 "中速" 

Button11 "高速"

AxToyOcx1.BindComplete に追加、変更記述

 

 

6・7・7 プログラムの実行

 

1.接続ボタンをクリック

2.”接続完了”が表示されたら、”OK”ボタンをクリック

3.直進、後退など、ボタンをクリックすることにより

  車を制御します。

4.通信を切断して終了します。