作ろう!私とあなたと私たちのためのロボット

66
作ろう! 私とあなたと 私たちのための ロボット 主催: 津田塾大学女性研究者支援センター・山梨英和大学 共同主催: 電子情報通信学会東京支部 後援: 国立研究開発法人 科学技術振興機構 協力:日本マイクロソフト株式会社・Romotive Japan・ 株式会社アイ・ラーニング・合同会社つくる社・OtOMO・ 株式会社アネスタ・NPO法人CANVAS (順不同)

Upload: kazuhiro-abe

Post on 14-Feb-2017

1.240 views

Category:

Education


1 download

TRANSCRIPT

作ろう!私とあなたと私たちのためのロボット

主催: 津田塾大学女性研究者支援センター・山梨英和大学共同主催: 電子情報通信学会東京支部後援: 国立研究開発法人科学技術振興機構協力:日本マイクロソフト株式会社・Romotive Japan・

株式会社アイ・ラーニング・合同会社つくる社・OtOMO・株式会社アネスタ・NPO法人CANVAS (順不同)

きょうやること

•社会性を持ったロボットが私たちの身近な存在になりつつあります

•ロボットのある暮らしは今までと何が違うのでしょうか

•そして、ロボットは何ができて何ができないのでしょう

•その答えを知るには自分で作ってみるのが一番です

•ということで、実際にやってみましょう!

きょうの時間割•13:30~13:50

– ソーシャルロボットってなに?

– きょう使う機材と環境の説明

•13:50~15:00– 環境設定と準備

– ScratchでRomoをプログラミング

•15:00~16:30– ソーシャルロボットのデザインと作成

•16:30~16:50– 展示会とまとめ

※ 休憩は進み具合を見ながら入れます

ソーシャルロボットってなに?

•ソーシャル (社会)

– ソーシャルサイエンス (社会科学)

– ソーシャルインフォマティクス (社会情報学)

– ソーシャルネットワークシステム (SNS)

– ソーシャルロボット

•「ソーシャルロボットとは,実際の社会の現場,教育施設,医療施設,店舗などで働くロボットと定義する」

– ソーシャルロボット「マグボット」のデザイン(2), 小池星多 他, 2015

ソーシャルロボット?

Pepper

ソーシャルロボット?

Rapiro

ソーシャルロボット?

Mugbot

ソーシャルロボット?

Jibo

でも、どうやって作るの?

•iPhone (iPod touch) を使ったRomo (ロモ) というかわいいロボットをScratch (スクラッチ) というプログラミング言語でPCから動かします

むり!

•絶対できます

今回使用するPC

Microsoft Surface Pro 3

今回使用する端末

Apple iPod touch

デモ

Romoって?

•米Romotive社が開発– 日本の代理店はルンバで有名なセールスオンデマンド

•教育用ロボット

•ロボットプログラミング学習用アプリを提供

•合体させたiPhone (iPod touch) でロボットを制御し、そのディスプレイで情報を表示、そのセンサーで計測することでコストを削減

•開発者用が独自のアプリを作れるようにソフトウェア開発キット (SDK) を公開

Scratchって?

•米マサチューセッツ工科大学(MIT)メディアラボのミッチェル・レズニックさんたちが開発

•ものづくりを楽しみながら学べる

•ビジュアルプログラミング言語

– マウス操作で命令のブロックを組み立てる

– 文法エラーが起こらない

•いろいろなパソコンで動く

– Windows, Mac OS X, Linux

•作品をネットに共有して、みんなで見られる

スクラッチで簡単プログラミング体験

Scratch2Romoって?

•つくる社の石原淳也さんが開発

•ScratchとRomoの橋渡しをするiOSのアプリ

•Scratchからの命令をRomoに伝える

•Romoのセンサーの情報をScratchに伝える

•Scratch2RomoとScratchは無線LAN (Wi-Fi) と遠隔センサーで接続

やってみましょう!

進め方

1. Surfaceの無線LANのIPアドレスを確認

2. SurfaceでScratchを起動し、遠隔センサーを有効化

3. iPod touchでScratch2Romoを起動

4. Scratch2RomoとScratchを無線LANで接続

5. ScratchからRomoに命令してみる

6. Romoの情報をScratchで見てみる

7. iPod touchをRomoに接続して動かす

進め方

1. Surfaceの無線LANのIPアドレスを確認

2. SurfaceでScratchを起動し、遠隔センサーを有効化

3. iPod touchでScratch2Romoを起動

4. Scratch2RomoとScratchを無線LANで接続

5. ScratchからRomoに命令してみる

6. Romoの情報をScratchで見てみる

7. iPod touchをRomoに接続して動かす

•IPアドレスは住所のようなもので、コンピュータ同士をつなぐときに必要になります

•無線LANのIPアドレスを調べる命令を入力するため、「コマンドプロンプト」というツールを使います

•画面左下のスタートボタンをマウスで右クリックしてメニューから「コマンドプロンプト」を左クリック

•コマンドプロンプトにキーボードから「ipconfig」という命令を打ち込み、「Enter」キーを押します

•「Wireless LAN adapter Wi-Fi」の「IPv4 アドレス」の右にある「.」(ドット)で区切られた4つの数字をメモします

進め方

1. Surfaceの無線LANのIPアドレスを確認

2. SurfaceでScratchを起動し、遠隔センサーを有効化

3. iPod touchでScratch2Romoを起動

4. Scratch2RomoとScratchを無線LANで接続

5. ScratchからRomoに命令してみる

6. Romoの情報をScratchで見てみる

7. iPod touchをRomoに接続して動かす

デスクトップのネコのアイコンをダブルクリックで開きます

• Scratch2Romoと接続するため、遠隔センサー機能を有効にします

• 左上のカテゴリーボタンの中から「調べる」をクリック

• 左下にある「スライダーセンサーの値」ブロックを右クリックして、メニューから「遠隔センサー接続を有効にする」をクリック

「OK」をクリックして閉じる

②③

進め方

1. Surfaceの無線LANのアドレスを確認

2. SurfaceでScratchを起動し、遠隔センサーを有効化

3. iPod touchでScratch2Romoを起動

4. Scratch2RomoとScratchを無線LANで接続

5. ScratchからRomoに命令してみる

6. Romoの情報をScratchで見てみる

7. iPod touchをRomoに接続して動かす

• 画面を下から上にスワイプして、音量を上げておきます– 後で音量を変えたいと

きは一旦ホーム画面に戻ってから行います

• 充電ケーブルは刺したままで大丈夫です

ホーム画面を左右にスワイプしてScratch2Romoのアイコンを探しタップして開きます

進め方

1. Surfaceの無線LANのアドレスを確認

2. SurfaceでScratchを起動し、遠隔センサーを有効化

3. iPod touchでScratch2Romoを起動

4. Scratch2RomoとScratchを無線LANで接続

5. ScratchからRomoに命令してみる

6. Romoの情報をScratchで見てみる

7. iPod touchをRomoに接続して動かす

•さきほどメモしたIPアドレスをアドレス欄をタップして入力します

•「Connect」をタップします

•「Connected to アドレス」と表示されれば成功です

•「Disconnected.」の場合は接続に失敗しています。アドレスなどを確認してください

•キーボードを消すにはキーボード以外をタップします

•画面をタップするたびに、各種情報と顔が切り替わります

進め方

1. Surfaceの無線LANのIPアドレスを確認

2. SurfaceでScratchを起動し、遠隔センサーを有効化

3. iPod touchでScratch2Romoを起動

4. Scratch2RomoとScratchを無線LANで接続

5. ScratchからRomoに命令してみる

6. Romoの情報をScratchで見てみる

7. iPod touchをRomoに接続して動かす

Romoの顔を変えてみよう•Scratchで、変数「emotion」に顔の番号

をセットしてから、メッセージ「change」を送ります

• 変数「emotion」を作ります

• 左上のカテゴリーボタンの中から「変数」をクリック

• 「新しい変数を作る」ボタンをクリックして、「emotion」と入力し、「OK」ボタンをクリック

• 変数「emotion」に顔番号「1」をセットします

• 「emotionを0にする」ブロックをスクリプトエリアにドラッグ

• 「0」をクリックして、背景が空色になったら、キーボードから「1」を入力し、最後に「Enter」キーを押す

• メッセージ「change」を送ります

• 左上のカテゴリーボタンの中から「制御」をクリック

• 「backwardを送る」ブロックを「emotionを1にする」ブロックの下にドラッグして、白い線が表示されたら、マウスのボタンを離す

•「backward」の右にある「▼」をクリック

•メニューから「change」を選ぶ

• 「緑の旗がクリックされたとき」ブロックを「emotionを1にする」ブロックの上にドラッグして、白い線が表示されたら、マウスのボタンを離す

• Scratch2Romoの画面が顔でなければ、画面をタップして顔に変えます

• Scratchの右上にある緑の旗をクリックすると、顔が変わります

•3秒後たったらもとの顔に戻るようにするにはどうすればよいでしょうか

•次に変数「emotion」に他の顔番号を入れて試してみましょう

– 標準の顔(感情)は3です

– 顔番号の範囲は0から10までです(0は変えない)

– 面白い顔番号はメモしておきましょう

•同様に変数「expression」を使うとどうなるかもやってみましょう

– 表情(アニメーション)の番号の範囲は0から32までです

– 「change」を送ったときにアニメーションしたくないときは0をセットします

– 面白い表情の番号はメモしておきましょう

やってみましょう

•「緑の旗がクリックされたとき」以外のきっかけで動くようにしてみましょう

– キーが押されたときなど

•顔を順番に変えてみましょう

– 「~回繰り返す」「emotionを1ずつ変える」「~秒待つ」を組み合わせます

•しゃべらせてみましょう– 変数「speech」にしゃべらせ

たい言葉をセットしてから、メッセージ「say」を送ります

やってみましょう

•PCのキーボードから名前を入力すると、その名前を答えてくれます

やってみましょう

空色は「調べる」カテゴリー

緑色は「演算」カテゴリー

•メッセージを送ったあと、その処理が終わる前に次のメッセージが送られると、Scratch2Romoが反応しなくなることがあります

– 「~秒待つ」は重要!

•その場合は、一度Scratch2Romoを終了させ、再度起動します

反応しなくなったとき

•Scratch2Romoの再起動方法

•ホームボタンをダブルクリックします

•左右にスワイプしてScratch2Romoを探し、上にスワイプして終了します

•ホーム画面のScratch2Romoをタップして起動し、アドレスを入力してConnectをタップします

進め方

1. Surfaceの無線LANのIPアドレスを確認

2. SurfaceでScratchを起動し、遠隔センサーを有効化

3. iPod touchでScratch2Romoを起動

4. Scratch2RomoとScratchを無線LANで接続

5. ScratchからRomoに命令してみる

6. Romoの情報をScratchで見てみる

7. iPod touchをRomoに接続して動かす

声に反応するようにしてみる•「audio」センサーの値によって、異なる

顔の番号をセットしてから、メッセージ「change」を送ります

• 「audio」センサーの値をステージに表示します

• 左上のカテゴリーボタンの中から「調べる」をクリック

• 「スライダーセンサーの値」ブロックの「▼」をクリックしてメニューから「audio」を選ぶ

• 「スライダーセンサーの値」ブロックの左にある灰色のチェックボックスをクリックしてチェック。声をかけて値の変化を見てみましょう

•「audio」の値は通常はマイナスで、0が最大です。

•手をたたいたり、声をかけると表情が変わります。

やってみましょう

空色は「調べる」カテゴリー

緑色は「演算」カテゴリー

•他のセンサーも試してみましょう

– 実験して、変化する値の範囲を調べておくと便利です

•たとえば、左右に傾けると顔が変わるようにするには、どうすればよいでしょうか

•あるいは、現在の方角を音声で教えてくれるようにするには、どうすればよいでしょうか

やってみましょう

進め方

1. Surfaceの無線LANのIPアドレスを確認

2. SurfaceでScratchを起動し、遠隔センサーを有効化

3. iPod touchでScratch2Romoを起動

4. Scratch2RomoとScratchを無線LANで接続

5. ScratchからRomoに命令してみる

6. Romoの情報をScratchで見てみる

7. iPod touchをRomoに接続して動かす

•Romoには前後があります。

iPod touchをRomoに接続

•充電ケーブルを外し、Romoの両端にある灰色の溝に沿って、コネクターの位置を合わせて差し込みます

iPod touchをRomoに接続

•手をたたいたり、声をかけると前後左右に動きます

•変数「speed」「steps」「degrees」の値を変えると、動き方が変わります– 指定しないと、それぞれ 30, 10, 10

やってみましょう

•一度実行して終わるのではなく、繰り返し何度も行うようにするには、どうすればよいでしょう

•PCの十字キー(カーソルキー)で、Romoをラジコンのように操縦できるでしょうか

•一連の動きに名前を付けて、あとからその名前でメッセージを送ることもできます

やってみましょう

ロボットのデザイン

•なんとなく雰囲気はつかめましたか?

•それでは、みなさんの考えるソーシャルロボットを作りましょう

•アイデアをデザインシートにまとめましょう– まずはブレーンストーミング。ポストイット

に自由にアイデアを書きましょう

※ iPod touchはRomoから外して充電しておきましょう

作ろう!私とあなたと私たちのためのロボットデザインシート

グループ名 ロボットの名前

誰のための:

どんなときに:

どこで使う:

なんのための:

デコ案:

アイデアをかたちに

•デザインができたら、それをプログラムで表現しましょう

•使うことのできる変数、メッセージ、センサーの一覧表を資料として用意しています

•steps : 一回動かす当たりの移動量の変数。forward、backwardメッセージと組み合わせて使う

•degrees : 一回回転させる当たりの回転角度の変数。right、leftメッセージと組み合わせて使う

•speed : 移動の速度の変数。forward、backwardメッセージと組み合わせて使う

•speech : しゃべる言葉の変数。文字列をsayメッセージと組み合わせて使う

•expression : 表情の変数。0から32までのアニメーション番号をchangeメッセージと組み合わせて使う(0は何もしない)

•emotion : 感情の変数。0から10までの顔番号をchangeメッセージと組み合わせて使う(0は変えない)

変数の一覧

•heading : iPod touchを水平に置いた時の方角

•audio : 周囲の音の大きさ

•ax : iPod touchを縦に持ったときの左右方向の加速度

•ay : iPod touchを縦に持ったときの上下方向の加速度

•az : iPod touchの表裏方向の加速度

•proximity : 近接センサー (顔などを近づけたとき)

センサー値の一覧

• backward : 後ろに動かす。動きはstepsとspeedの変数に従う

• change: 顔を変える。表情と感情はexpressionとemotionの変数に従う

• down : iPod touchを画面の方向に倒す

• forward : 前に動かす。動きはstepsとspeedの変数に従う

• led off : Romoの前についているLEDを消す

• led on : Romoの前についているLEDを点ける

• left : 左に回る。角度はdegreesの変数に従う

• light off : iPod touchのLEDライトを消す

• light on : iPod touchのLEDライトを点ける

• photo : 写真を撮る

• right : 右に回る。角度はdegreesの変数に従う

• say : しゃべる。言葉はspeechの変数に従う

• stop : 停止する

• up : iPod touchを画面と反対の方向に倒す

メッセージの一覧

展示会

•他の人の作品を見て回りましょう

•良いと思う作品に投票しましょう

まとめとふりかえり

•ロボットのある暮らしは今までと何が違うのでしょうか

•そして、ロボットは何ができて何ができないのでしょう

Scratchやロボットの本

※ アマゾンで「阿部和広」を検索

ScratchとRomoの情報

•Scratch

– http://scratch.mit.edu/

•Romo

– http://www.romotive.jp/

•Scratch2Romo

– http://www.scratch2romo.com/