#topicpath

*2.2. プログラムの作成 [#bab7cca5]

#contents

~「プログラミングの準備」でロボットとの通信・プログラミングの準備を整えたら、続いてプログラムを作成してみましょう。本章では、Sotaを例に、実際のプログラミングの手順について説明します。本ページでは、実際のプログラミング作業の前に、知っておくべき用語等を説明します。
~
~ロボットのプログラミングは、クラスの中で行います。まずは、エクスプローラより、現在パッケージに登録されているクラス(Sotaの場合デフォルトで「mymain.java」)をダブルクリックしてください。ダブルクリックすると、本ソフトウェア内に「クラスウィンドウ」を開きます。
~
#ref(http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image043.png,70%)
 
** 命令ブロック [#p0100ab1]
~ロボットのプログラミングは、フローチャートのような感覚で、クラス上に「命令ブロック」を並べ、それを実行順につなぎ合わせて作成します。命令ブロックは「ツールボックス」のウィンドウに表示され、マウス操作で任意のブロックを選び、クラスウィンドウに追加できます。
~使用できる命令ブロックの種類は、使用するロボットの機種やワークスペースの設定などによって変わります。
~
#ref(http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image044.png,70%)

~
~
-○ブロックの追加
~命令ブロックをクラスに追加する場合、ツールボックスからクラスウィンドウに目的の命令ブロックをドラッグ&ドロップします。
~
#ref(http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image048.png,70%)


~
~また、クラスに存在する命令ブロックはマウスでドラッグして位置を動かせます。クラス内のブロックの数が増えて見づらくなった場合、適切な位置に移動・整列してプログラムを見やすくしましょう。
~
~
#ref(http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image062.png,70%)

~
~
-○ メソッドとコンストラクタ
~プログラミングの作成を始める前に、本ソフトウェア及びjava言語に関する説明をいくつか記述します。ここで説明する用語等はチュートリアルで度々登場します。
~
~クラスウィンドウを開くと、既に2種類の命令ブロックが作成されています。これらはそれぞれ「メソッド」と「コンストラクタ」と言うブロックです。
~
#ref(http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image045.png,70%)
~
~「メソッド」は、ロボットに実行させる命令をまとめるためのブロックです。開始・終了の2個のブロックがセットになっており、この間に「発話する」「音声を聞き取って分岐する」等、実際に処理を行う命令ブロックをつなげます。
~
~「コンストラクタ」は、メソッドの一種ですが、クラスの初期設定に関する命令を作成するためのメソッドです。命令ブロックの種類によっては、クラスに追加すると、必要な変数が自動的にコンストラクタに追加されます。
~

 コンストラクタはプログラムの実行に必要な設定を行っており、中の命令ブロックを設定変更や変更すると、正しくプログラムが実行できなくなる場合があります。チュートリアル中、及びプログラム中の必要時以外に、コンストラクタの内容を変更しないで下さい。
 コンストラクタはプログラムの実行に必要な設定を行っており、中の命令ブロックを設定変更や変更すると、正しくプログラムが
 実行できなくなる場合があります。
 チュートリアル中、及びプログラム中の必要時以外に、コンストラクタの内容を変更しないで下さい。
~
~
~
~メソッドについて補足すると、メソッド(関数)は、一連の処理の開始・終了を表すもので、メソッドブロックに接続されていない命令ブロックはロボットに実行させることができません。また、詳細は後述しますが、プログラムを実行する際は、作成したプログラムに含まれるメソッドから任意の物を「メインメソッド」として設定し、そのメソッドから実行を開始します。
~
#ref(http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image046.png,70%)
 
~
~
~
~
-○ ブロックの接続
~命令ブロック内には「コネクタ」と呼ばれるブロック同士を接続するインターフェースがあります。コネクタはhttp://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image047.png http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image049.png のようなアイコンで表示され、ブロックの接続状態に応じて表示色が切り替わります。
~
#ref(http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image050.png,70%)
 
***コネクタの接続ステータス [#i93916ba]

- http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image051.png  http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image052.png …未接続 
- http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image047.png http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image049.png …接続済 
- http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image057.png http://www.vstone.co.jp/sotamanual/sotamanual_pict/vstonemagic/image058.png …接続可能

「未接続」「接続済み」は、それぞれブロック同士がつながっていない状態・つながった状態を表します。また「接続可能」は、今後説明するブロックの接続操作で、ブロック同士が接続できる状態になったときに表示されます。ブロック同士が接続できない組み合わせの場合、接続操作を行ってもアイコンが「接続可能」になりません。
~
~
~
~
ブロックの接続操作には、以下のような方法があります。詳しい操作手順は、次のページより実際にプログラムを作成しながら説明します。
~
-① ツールボックスから追加するブロックを接続先のブロックのコネクタにドラッグ&ドロップする
-② ブロックをドラッグして、接続したいコネクタ同士を真横に隣接させる
-③ コネクタをドラッグして矢印を引っ張り、接続先のブロックにドロップする

~
~
~
~それでは、次のページより実際にプログラミングを始めて行きます。
~
~
~
~
[[目次>MenuBar]]  [[次のページへ>>>../挨拶させてみよう]]