ロブリックでロボホンをプログラミング!

ロブリック(ROBLICK)とは

ロブリック(ROBLICK)は,シャープ株式会社が提供しているロボホンの開発ツールです. ロボホンは人型のロボットですが,アンドロイド(Android)のスマートフォンでもあります. アンドロイドの開発は,プログラミング言語のJavaが用いられるため, シャープ株式会社が提供しているロボホンの開発キット(Software Development Kit: SDK)を利用するにはJavaの知識が必要です. 一方,ロブリックは,Scratchによく似たインターフェースを備えた,ビジュアル・プログラミングのツールです. ロボホンの動作を表すブロックを,マウスで操作して組み立てることで,プログラミングの初心者でもロボホンのプログラミングが可能です. ロブリックは有料アプリのため購入が必要ですが,30日間のトライアル期間が設けられているので,ロボホン・ユーザは是非トライしてみましょう. この資料ではロブリックの基本的な使い方を説明します.

ロブリックの起動

ロブリックをダウンロードしたロボホンには,「ロブリック」と「ロブリック実行」の2種類のアプリがインストールされています. プログラミングを開発するときは「ロブリック」,開発したプログラムをデモンストレーションするときは「ロブリック実行」を起動します. ここでは,前者の「ロブリック」を起動しましょう.

Image from Gyazo

ロブリックを起動すると,次のように IPアドレス:ポート番号 が表示されます. このとき,ロボホンはサーバーとして動作しており,クライアントとなるPCから上記のIPアドレスとポート番号でアクセスが可能な状態です(PCは同じネットワークに存在する必要があることに注意).

Image from Gyazo

PCでウェブブラウザ(Chromeなど)を起動して,URLに上記の「IPアドレス:ポート番号」入力すると,ロブリックの開発画面が表示されます. とても簡単に接続できますね.

Image from Gyazo

プログラムの開発

ロブリックはScratchのように,ブロックを組み立てることでプログラミングを開発します. ブロックは,5種類の「ロボホンの基本動作」と,5種類の「ロブリックのデータ構造」,3種類の「ロブリックの制御」のグループで構成されています. 複雑なプログラムをするときは,ロブリックのデータ構造と制御のブロックは便利ですが, 取り敢えず動かしてみるだけならロボホンの基本動作だけで十分です.

ロボホンの基本動作

ロブリックのデータ構造

ロブリックの制御

ロボホンが「しゃべる」

ブロックを組み立ててプログラムを作成しましょう. 「しゃべる」グループから,「スタート」のブロックを ドラッグ&ドロップ で,中央のエディタに移動させます. プログラムは必ず「スタート」から始める必要があります.

Image from Gyazo

同様に「しゃべる」グループから,「“こんにちは"としゃべる」のブロックをドラッグ&ドロップで, 上記の「スタート」のブロックに接続します. ブロックを削除したい場合は,ドラッグ&ドロップでゴミ箱までブロックを移動させればOKです.

Image from Gyazo

最後にロブリックの開発画面の下部にある「スタート」ボタンをクリックしましょう. ロボホンが「こんにちは」と発話すれば成功です.

Image from Gyazo

試してみよう!

ロボホンのセリフを設定して,自由に発話させてみてください.

ロボホンが「動く」

ロボホンは「しゃべる」だけでなく「動く」こともできます. ダイナミックな動きも可能ですが,テーブルなど 高所から落とさないよう 注意しましょう. 「動く」グループから,「右を向く」のブロックをドラッグ&ドロップで,「スタート」のブロックに接続しましょう. この「右を向く」ブロックは,「左を向く」,「正面を向く」など他の動作に変更することが可能です. ここでは,「右を向く」の後に,「正面を向く」「左を向く」「バンザイ」を続けて接続しましょう.

Image from Gyazo

試してみよう!

ロボホンの動きを設定して,様々な動作をさせてみてください.

ロボホンが「聞く」

ロボホンはさらに「聞く」こともできます. 話者と同じことをロボホンが話す「おうむ返し」をさせてみます. 「聞く」グループから,「なにかが聞こえるまで待つ」のブロックをドラッグ&ドロップで,「スタート」のブロックに接続しましょう. 次に「しゃべる」グループから,「“こんにちは"としゃべる」のブロックを続けて接続します. このブロックの"こんにちは"は,別のブロックに置き換えることが可能です. ここでは,「聞く」グループの「最後に聞こえた言葉」のブロックに置き換え,「“最後に聞こえた言葉"としゃべる」に変更します.

Image from Gyazo

試してみよう!

「"こんにちは"が聞こえるまで待つ」ブロックを利用して,特定の言葉にロボホンが反応するようにしてください.

ロボホンが「質問する」

ロボホンが「質問する」ためのブロックが利用可能です. 「その他」グループから,「質問」のブロックをドラッグ&ドロップで,「スタート」のブロックに接続しましょう. 「質問」ブロックは,「質問」「はい」「いいえ」の3箇所にブロックを接続可能です. 最初にロボホンが「質問」を発話した後,話者の「はい」と「いいえ」に応じて実行するブロックが変わります. ここでは,「質問」は「今朝はごはんを食べたかな?」,「はい」のときは「元気いっぱいだね」,「いいえ」のときは「朝ごはんは大事だよ」と発話させます.

Image from Gyazo

試してみよう!

ロボホンの質問を自由に作成してください.

キーボードで操作

ロボホンは話者の発話に反応するだけでなく,Bluetooth接続のキーボードから指示することもできます. 「その他」グループにある,「何かのキーが押されるまで待つ」と「最後に押されたキーは"1”」を利用して,次のようにブロックを接続します. このようにすると,キーボードで「a」を入力したときにロボホンが「aを押したよ」と発話し, キーボードで「b」を入力したときにロボホンが「bを押したよ」と発話します.

Image from Gyazo

Bluetooth接続のキーボードを利用しないで,直接的にPCからキー操作をロボホンを送信するには, USB2BT+が便利です. なんとこのデバイスを用いると,PCのキーボード操作をBluetooth化することができます. 開発者の そーたメイ氏 に大感謝です! さらに,このUSB2BT+とPyAutoGUIを組み合わせると, Pythonでロボホンの動作を制御することも可能になります.

Image from Gyazo

参考書籍

愛知県名古屋市にある椙山女学園大学 文化情報学部 向研究室の公式サイトです. 専門は情報科学であり,人工知能やデータベースなどの技術要素を指導しています. この公式サイトでは,授業で使用している教材を公開すると共に, ベールに包まれた女子大教員のミステリアスな日常を4コマ漫画でお伝えしていきます. サイトに関するご意見やご質問はFacebookまたはTwitterでお問い合わせください.