二足歩行ロボットコミュニティサイト

【サイトの使い方】  【サイトマップ】  【お問い合わせ】 
ロボット動画  |   ロボット写真  |   BBS  |   ダウンロード  |   イベント予定  |   スタッフ日記  |   リンク  |  
ログイン パスワード    新規登録   パスワード紛失  

 

Beautoビルダーを使ってみる 1

はじめに

さて、前回の説明で、BeautoをPCにつないで専用ソフトウェアBeautoビルダーからプログラムできるようになったと思います。
今回は実際にBeautoビルダーを使って色々なプログラムを作成する方法について説明したいと思います。

画面の見方の説明

まずBeautoビルダーを起動してください。起動したらPCに表示されたウィンドウを確認してみましょう。

Beautoビルダー画面解説
Beautoビルダーの画面解説

Beautoビルダーの画面は大きく4つに分かれます。

.廛蹈哀薀爛┘螢・・・ロボットの動きを意味する「アクションブロック」を組み合わせてプログラムを作成する場所です。
▲▲ぅ灰鵐┘螢・・・・プログラムに使用するアクションブロックを選ぶ場所です。
メニュー・・・・・・・新しくプログラムを作成する、ファイルに保存したプログラムを読み込む、その他様々な設定を行なうための場所です。
ぅ帖璽襯弌・・・・・・メニューの一部と同じ機能を持つボタンです。こちらの方が見た目に分かりやすく、ボタンを押すだけでメニューと同じ機能が使えるなど便利です。

プログラミングの基本

 それでは、Beautoビルダーでプログラムを作成する方法について、実際に簡単なプログラムを作成しながら説明していきます。
Beautoビルダーを起動した直後は、画面右のプログラムエリアに「START」と「END」という灰色の二つの四角、また、それらを結ぶ青い矢印が表示されています。
これらは「スタート」のアクションブロック、「エンド」のアクションブロックとそれぞれ呼びます。

アクションブロックとは、「車輪を指定のスピードで回す」「指定の時間プログラムを待つ」「指定の回数だけ同じプログラムを繰り返す」など一つの意味を持った物のことで、「スタート」のアクションブロックはプログラムの開始、「エンド」のアクションブロックはプログラムの終了の機能をそれぞれ持っています。
アクションブロックは種類ごとに様々な色で表示され、アクションブロックから出ている矢印によって、プログラム中でアクションブロックを実行する順番を決めます。

アクションブロックの一覧
アクションブロックの一覧

現在の画面の状態では、プログラムには「スタート」と「エンド」のアクションブロックだけ存在し、それらが矢印で接続されているので、このプログラムはスタート直後にすぐに終了するようになっています。

 それではこのプログラムに新しいアクションブロックを追加してみましょう。
新しいアクションブロックを追加する場合は、まず画面左の「コマンドエリア」から追加するアクションブロックのボタンをクリックします。
ここでコマンドエリア中の車輪制御のアクションブロックのボタンをクリックしてください。車輪制御のアクションブロックは下図のものになります。

アイコンエリア最上部の車輪制御のアクションブロックをクリック
アイコンエリア最上部の車輪制御のアクションブロックをクリック

アクションブロックのボタンをクリックすると凹んだ状態になって色が変わります。では続いてプログラムエリアの適当な場所をクリックしてください。
クリックするとその場所に新しいアクションブロックが追加されます。

続いてプログラムエリアをクリックすると車輪制御のアクションブロックをプログラムに追加
続いてプログラムエリアをクリックすると車輪制御のアクションブロックをプログラムに追加

これが、プログラム中でロボット本体の車輪(DCモータ)を回す向きと速さを設定できるアクションブロックです。
具体的には、ロボット本体に備わっている4つのDCモータ出力について、個別に回転の速さと方向(時計回りか反時計回りか)を設定できます。注意として車輪制御のアクションブロックは常に必ず4つのモータを同時に設定を変更します。「2つ目と3つ目のモータだけ設定を変更する」というようなことはできません。

それでは、実際に車輪制御のアクションブロックを詳しく設定してみましょう。
先ほど追加した車輪制御のアクションブロックの真ん中付近をダブルクリックしてください。
ダブルクリックすると下図のように詳しい設定を行なうダイアログを表示します。

車輪制御のアクションブロックの詳細設定ダイアログ
アクションブロックをダブルクリックすると詳細を設定するダイアログを画面に表示する。
表示されるダイアログはアクションブロックの種類によって異なり、中には設定の必要が無いためダブルクリックしてもダイアログを表示しないものもある。

ではダイアログの中身を詳しく説明します。
ダイアログには上下方向に動くスライダと「ブレーキ」「脱力」「駆動」というボタンが4つ備わっていますが、これが4つのDCモータに対するそれぞれの速度設定になります。
Beautoの場合は、左から1番目が左車輪、2番目がブラシ、3番目が右車輪、4番目が未使用となっております。
モータを回す場合は、「駆動」にチェックを入れ、下のスライダで動く速度を設定します。
逆にモータを止める場合は「ブレーキ」に、脱力させる場合は「脱力」にチェックを入れてください。

車輪制御の速度設定詳細

まずはロボットを前進させるプログラムを作るので、下図のように左車輪を-50、ブラシを50、右車輪を50に設定してください。

ロボットが前進するように車輪の速度を設定
今回はまず前進させるため、左から-50,50,50に設定して「OK」をクリック

設定した数値に対して、それぞれのモータがどの値でどう動くかについては、モータの取り付け方法や種類などによってさまざまです。
これについては、これから実際にプログラムを作成する時に色々試してみてください。
設定が完了したら、ダイアログの「OK」をクリックしてください。
これで設定が適用されました。

ちなみにプログラムエリアのアクションブロックにマウスカーソルを合わせて少し待つと、そのアクションブロックの詳細背ってがフキダシしで表示されます。

アクションブロックにマウスカーソルを合わせて待つと詳細のフキダシを表示
アクションブロックにマウスカーソルを合わせて待つと詳細のフキダシを表示

これでいちいちダイアログを開かなくてもどんな設定なのか確認できますね。

矢印をつないでプログラムの実行順序を決める

さて、今度はプログラムの実行順序を設定しましょう。
先ほど説明したように、アクションブロックから出ている矢印がプログラムの実行順序を表しています。
この矢印はマウスでドラッグして動かすことができ、別のアクションブロックにドラッグすることで矢印をつなぎ変えることができます。

アクションブロックの矢印はプログラムの実行順序を表す
アクションブロックの矢印はプログラムの実行順序を表す。
この場合、プログラムは「START」から始まりすぐに「END」に行きつきので何もせずプログラムを終了する

それでは、「START」のアクションブロックの矢印について、根元の四角い部分か矢印の先端部分をマウスでクリックしドラッグしてください。
ドラッグすると矢印の色が紫に変わり、マウスカーソルの位置に応じて矢印の先端の位置を動かすことができます。
では矢印をそのまま車輪制御のアクションブロックにドラッグしてください。
ドラッグすると自動的に矢印が車輪制御のアクションブロックにつながります。

アクションブロックの矢印の根元か先端をドラッグしてつなぎ変える
アクションブロックの矢印の根元か先端をドラッグしてつなぎ変えることができる。
今回のプログラムでは、「START」の矢印をドラッグして車輪制御のアクションブロックにつなげる

このようにして矢印をつなぎ変えます。
ちなみに、「START」からの矢印を車輪制御のアクションブロックにつなげると、自動的に車輪制御から「END」のアクションブロックへの矢印もつながります。
これは、「START」と「END」のアクションブロックは一対一の関係にあり、「START」から始まるプログラムは、間にどのようなアクションブロックを挟んでも必ず「END」に到達しなければならないためです。
この場合、車輪制御のアクションブロックがどこのアクションブロックともつながっていなかったためBeautoビルダーが自動的に「END」へ矢印を接続しました。

プログラムの実行順序の設定完了
プログラムの実行順序の設定完了

「START」と「END」のように一対一の関係にあるアクションブロックは他にも存在し、それらは同じように必ず開始点から終了点に到達するようになります。
また、プログラム上不都合が生じる矢印の接続が発生した場合、アクションブロックに矢印をドラッグしても自動的に接続されません。
例えば、車輪制御のアクションブロックの矢印を「START」に接続しようとしてもつながりません。これは、「STARTの前に命令を実行することがプログラム上ありえない」という理由のためです。

プログラム上不都合の生じる場合は矢印を接続できない
プログラム上不都合の生じる場合は矢印を接続できない

プログラムを作成していると、このように矢印がつながらないケースというものが出てきますが、それらは皆プログラム中に接続できない何らかの理由が含まれています。
それを探し出して対処するのが「デバッグ」というプログラミングの作業の一つになります。

プログラムが正しく動かない?

アクションブロックの矢印の接続も完了したので、早速プログラムを実行してみましょう。
プログラムの実行は前回説明したとおりツールバーのボタンをクリックします。
書き込みが完了したら自動的にプログラムを開始しますね。さて、このプログラムを書き込んで実行させると・・・。いつまでたっても動きません。プログラムが実行されていないのでしょうか?

実は、プログラムの内容に問題があります。車輪制御のアクションブロックには車輪を回すスピードの設定はありますが、「何秒間回すか」という設定がありません。これは、車輪制御のアクションブロックではなくウェイトのアクションブロックで行ないます。

ウェイトのアクションブロックを追加
アイコンエリア上から三番目のウェイトのアクションブロックのをクリック

ウェイトのアクションブロックは、コマンドエリアの上から三番目です。
先ほどと同じようにコマンドエリア中のウェイトのアクションブロックをクリックし、続いてプログラムエリアの任意の場所をクリックしてください。

ウェイトのアクションブロックをプログラムに追加したら、ダブルクリックして詳細設定のダイアログを表示してください。
今度は下図のように先ほどの車輪制御とは違うダイアログを表示します。

ウェイトのアクションブロックの詳細ダイアログ
ウェイトのアクションブロックの詳細ダイアログ

ウェイトのアクションブロックは、指定した時間だけ次の命令に進むのを待って現在の状態をキープするという役割を持っています。
例えば車輪制御でモータの速度を指定した後のウェイトを入れることで、待ち時間が終わるまで設定した車輪の速度で進み続け、好きな距離だけ走らせることができます。

ウェイトで指定できる時間はなじみのある「秒」では無く「ステップ」という独自の単位で、1ステップは1秒よりも遥かに短い0.016666...秒単位です。
なぜこんな中途半端な数値なのかというと、これが一般的なコンピュータに都合の良い数値だからです(ここでは詳しく説明しません。一言で理由を言うと「プログラムの動作周期が60Hzである」ためです)
例えばウェイトで1秒待とうとすると60ステップを指定します。60ステップを秒に直すと「0.999999....」秒なのでほぼ1秒になります。
では、ここでは数値を90に設定してください。

ウェイトのアクションブロックの詳細ダイアログ
今回は待ち時間を90ステップに設定する

設定できたら先ほどと同じように「OK」をクリックしてダイアログを閉じます。

続いてプログラムの実行順序にウェイトのアクションブロックを組み込みます。
車輪制御のアクションブロックの矢印について、根元の四角か先端をクリックして、矢印をウェイトのアクションブロックにドラッグしてつないでください。
矢印がつながると先ほどと同じように「END」への矢印が自動的につながります。

車輪制御の矢印をドラッグしてウェイトに接続する
プログラムの接続の図
車輪制御の矢印をドラッグしてウェイトに接続する

これでプログラムの実行順序は「START」→「車輪制御:前進するよう車輪の回転を変更」→「ウェイト:前進状態をキープ」→「END」という形になりました。

今度こそ走るか?

ではもう一度ボタンをクリックしてプログラムを実行してみましょう。
今度はロボットがちゃんと前に進むはずです。

正しく動くことが確認できたら、車輪制御やウェイトのアクションブロックの内容を変更して動きがどう変わるか見てみましょう。
例えば、車輪制御のアクションブロックで左右の車輪の速度を入れ替えるとバックするようになり、左右の車輪の速度を同じ値にするとその場でどちらかの方向に回転するようになります。

車輪制御の設定例
車輪制御のアクションブロックの設定例(左:バック 右:その場で回転)
他にも左右の車輪の速度を変えたりすると動きが変わる

また、ウェイトのアクションブロックで待ち時間を変更すると今度は走る距離が変わります。

作成したプログラムはファイルに保存

せっかく作成したプログラムなので、消えてしまわないようにファイルに保存したいと思います。
プログラムをファイルに保存する場合は、メニューより「ファイル」→「名前をつけて保存」をクリックしてください。
クリックするとプログラムを保存するファイル名と場所を指定するダイアログを開くので、保存する設定を入力して「保存」をクリックしてください。

ファイルに保存したプログラムを読み込む場合は、ツールバーのボタンをクリックします。
クリックすると先ほどのようにファイル名と場所を指定するダイアログを開くので、開きたいプログラムを選択して「開く」をクリックしてください。
また、新しくプログラムを作成する場合はツールバーのボタンをクリックしてください。

ちなみに、ファイルを上書き保存する場合はツールバーのボタンをクリックします。
上書き保存だと特に確認もなしに、開いているプログラムを現在のプログラムに書き換えて保存されるので注意してください。

その他小技

その他、Beautoビルダーでプログラムを作成する時に便利な小技を紹介します。

●アクションブロックの位置を移動する
プログラム作成中に気づいた方も多いと思いますが、アクションブロックはマウスでドラッグして動かすことができます。

●アクションブロックを選択する
プログラムエリアの何も無いところをマウスでクリックしてドラッグすると枠線が表示されます。
この枠線をアクションブロックに重ねると、アクションブロックをマウスで動かすときのように色が変わります。
これを「アクションブロックの選択」といいます。
これでいくつかのアクションブロックを選択し、マウスでドラッグして移動させると、選択しているアクションブロックを一度に動かすことができます。
また、アクションブロックを選択した状態で ツールバーのボタン、ボタン、ボタンなどをクリックすると、選択しているアクションブロックをコピー・切り取りしたりコピーしたアクションブロックをプログラムに貼り付けることなどができます。
この辺の操作はメモ帳やパワーポイントなどのWindowsアプリケーションと同じですね。

●アクションブロックの位置を背景のマス目に合わせる
プログラムエリアの背景のマス目に沿ってアクションブロックを配置すると画面が見やすくなりますが、マウスでドラッグするとなかなかぴったりに合わせることができません。
そこで、キーボードのSHIFTキーを押しながらアクションブロックを移動させてみてください。
すると、背景のマス目にぴったり合うようにアクションブロックを動かすことができます。
また、矢印でつながったアクションブロック同士を密着させると、矢印が省略されて三角形で接続が表示されます。
この状態で再び矢印をドラッグする場合は三角形のところをドラッグしてください。

●要らなくなったアクションブロックを消す
プログラムエリアで要らなくなったアクションブロックは、選択してキーボードのDeleteキーを押すと消すことができます。

●矢印の折り返し位置を動かす
たくさんアクションブロックを追加すると、矢印とアクションブロックが重なって見づらくなることが多いです。
そこで、矢印の真ん中にある丸をマウスでドラッグしてみてください。
ドラッグすると矢印の折り返しの場所が動き、画面を見やすくすることができます。

最後に

次回はもう少し踏み込んだプログラム作成について説明します。


前のページ
Beautoビルダーの導入
コンテンツのトップ 次のページ
Beautoビルダーを使ってみる 2


検索
メインメニュー
Beauto