ロブリックでロボホンをプログラミング!
ロブリック(ROBLICK)とは
ロブリック(ROBLICK)は,シャープ株式会社が提供しているロボホンの開発ツールです. ロボホンは人型のロボットですが,アンドロイド(Android)のスマートフォンでもあります. アンドロイドの開発は,プログラミング言語のJavaが用いられるため, シャープ株式会社が提供しているロボホンの開発キット(Software Development Kit: SDK)を利用するにはJavaの知識が必要です. 一方,ロブリックは,Scratchによく似たインターフェースを備えた,ビジュアル・プログラミングのツールです. ロボホンの動作を表すブロックを,マウスで操作して組み立てることで,プログラミングの初心者でもロボホンのプログラミングが可能です. ロブリックは有料アプリのため購入が必要ですが,30日間のトライアル期間が設けられているので,ロボホン・ユーザは是非トライしてみましょう. この資料ではロブリックの基本的な使い方を説明します.
ロブリックの起動
ロブリックをダウンロードしたロボホンには,「ロブリック」と「ロブリック実行」の2種類のアプリがインストールされています. プログラミングを開発するときは「ロブリック」,開発したプログラムをデモンストレーションするときは「ロブリック実行」を起動します. ここでは,前者の「ロブリック」を起動しましょう.
ロブリックを起動すると,次のように IPアドレス:ポート番号 が表示されます. このとき,ロボホンはサーバーとして動作しており,クライアントとなるPCから上記のIPアドレスとポート番号でアクセスが可能な状態です(PCは同じネットワークに存在する必要があることに注意).
PCでウェブブラウザ(Chromeなど)を起動して,URLに上記の「IPアドレス:ポート番号」入力すると,ロブリックの開発画面が表示されます. とても簡単に接続できますね.
プログラムの開発
ロブリックはScratchのように,ブロックを組み立てることでプログラミングを開発します. ブロックは,5種類の「ロボホンの基本動作」と,5種類の「ロブリックのデータ構造」,3種類の「ロブリックの制御」のグループで構成されています. 複雑なプログラムをするときは,ロブリックのデータ構造と制御のブロックは便利ですが, 取り敢えず動かしてみるだけならロボホンの基本動作だけで十分です.
ロボホンの基本動作
- しゃべる
- 動く
- 聞く
- 表示する
- その他
ロブリックのデータ構造
- テキスト
- リスト
- 連想配列
- 変数
- 関数
ロブリックの制御
- 計算
- 条件
- 繰り返し
ロボホンが「しゃべる」
ブロックを組み立ててプログラムを作成しましょう. 「しゃべる」グループから,「スタート」のブロックを ドラッグ&ドロップ で,中央のエディタに移動させます. プログラムは必ず「スタート」から始める必要があります.
同様に「しゃべる」グループから,「“こんにちは"としゃべる」のブロックをドラッグ&ドロップで, 上記の「スタート」のブロックに接続します. ブロックを削除したい場合は,ドラッグ&ドロップでゴミ箱までブロックを移動させればOKです.
最後にロブリックの開発画面の下部にある「スタート」ボタンをクリックしましょう. ロボホンが「こんにちは」と発話すれば成功です.
試してみよう!
ロボホンのセリフを設定して,自由に発話させてみてください.
ロボホンが「動く」
ロボホンは「しゃべる」だけでなく「動く」こともできます. ダイナミックな動きも可能ですが,テーブルなど 高所から落とさないよう 注意しましょう. 「動く」グループから,「右を向く」のブロックをドラッグ&ドロップで,「スタート」のブロックに接続しましょう. この「右を向く」ブロックは,「左を向く」,「正面を向く」など他の動作に変更することが可能です. ここでは,「右を向く」の後に,「正面を向く」「左を向く」「バンザイ」を続けて接続しましょう.
試してみよう!
ロボホンの動きを設定して,様々な動作をさせてみてください.
ロボホンが「聞く」
ロボホンはさらに「聞く」こともできます. 話者と同じことをロボホンが話す「おうむ返し」をさせてみます. 「聞く」グループから,「なにかが聞こえるまで待つ」のブロックをドラッグ&ドロップで,「スタート」のブロックに接続しましょう. 次に「しゃべる」グループから,「“こんにちは"としゃべる」のブロックを続けて接続します. このブロックの"こんにちは"は,別のブロックに置き換えることが可能です. ここでは,「聞く」グループの「最後に聞こえた言葉」のブロックに置き換え,「“最後に聞こえた言葉"としゃべる」に変更します.
試してみよう!
「"こんにちは"が聞こえるまで待つ」ブロックを利用して,特定の言葉にロボホンが反応するようにしてください.
ロボホンが「質問する」
ロボホンが「質問する」ためのブロックが利用可能です. 「その他」グループから,「質問」のブロックをドラッグ&ドロップで,「スタート」のブロックに接続しましょう. 「質問」ブロックは,「質問」「はい」「いいえ」の3箇所にブロックを接続可能です. 最初にロボホンが「質問」を発話した後,話者の「はい」と「いいえ」に応じて実行するブロックが変わります. ここでは,「質問」は「今朝はごはんを食べたかな?」,「はい」のときは「元気いっぱいだね」,「いいえ」のときは「朝ごはんは大事だよ」と発話させます.
試してみよう!
ロボホンの質問を自由に作成してください.
キーボードで操作
ロボホンは話者の発話に反応するだけでなく,Bluetooth接続のキーボードから指示することもできます. 「その他」グループにある,「何かのキーが押されるまで待つ」と「最後に押されたキーは"1”」を利用して,次のようにブロックを接続します. このようにすると,キーボードで「a」を入力したときにロボホンが「aを押したよ」と発話し, キーボードで「b」を入力したときにロボホンが「bを押したよ」と発話します.
Bluetooth接続のキーボードを利用しないで,直接的にPCからキー操作をロボホンを送信するには, USB2BT+が便利です. なんとこのデバイスを用いると,PCのキーボード操作をBluetooth化することができます. 開発者の そーたメイ氏 に大感謝です! さらに,このUSB2BT+とPyAutoGUIを組み合わせると, Pythonでロボホンの動作を制御することも可能になります.