⇒ Tap here to translate into english【How to make the autonomously dancing robot】
一、一言で言えば
1.『自律的に踊る二足歩行ロボット』です。
2.コンセプトは、「ロボットの自律性を高める」です。
3.ここで「自律的に踊る」とは、要するに『ダンスの内容は、あらかじめ決まっていない。そのときかかっている音楽次第で、ダンス内容が変化する。ダンスのバリエーションは数百通り。』という意味です。
二、やりたいことのイメージ
「The Dancer(2000)」(リュック・ベッソン製作&脚本、ミア・フライア主演、2000年公開フランス映画)のOP(00時間03分00秒~00時間05分30秒)ご参照
(Youtube動画; https://www.youtube.com/watch?v=vDv5J2ZlSpc&t=180s)
上記動画の中で、
①DJが次々と曲を切り替えます。
②ダンサーが曲ごとに即興で(※ダンス内容があらかじめ決まっていない)違ったダンスを披露します。
これをやりたいのです。(DJは私、ダンサーは二足歩行ロボット)。
三.技術
1、概要
(1)ロボットは、ROBOTIS社の『ダーウィン・ミニ』(アマゾンで購入)を使用します。
★正式名称;『ROBOTIS DARWIN-MINI [INTL] ダーウィン・ミニ インターナショナル版 / 小型 二足歩行 ロボット 組立キット 教育向け』
(2)ダーウィン・ミニにデフォルトで入っているコードは、スマホ操作用なので、これを削除し、センサーだけで動くような自作のコードを入れます。
(3)具体的には、センサーに反応して自律的に、かつエンドレスにダンスをするようなコードを書きます。
2、センサーについて
(1)ダーウィン・ミニには、装着可能な音楽認識センサーがありません。
(2)そこで、カラーセンサー(アマゾンで購入)を使用します。
★正式名称;『ROBOTIS Color Sensor CS-10 / DARWIN-MINI カラーセンサー』
★カラーセンサー説明書(英語);http://emanual.robotis.com/docs/en/parts/sensor/cs-10/
※上記のGoogle自動日本語訳;http://bit.ly/ColorSensorCS10
3.音楽を色へ
(1)カラーセンサーが音楽の変化を認識できるように、音楽の情報をまず色の情報へ変換します。
(2)それには、市販の「音楽に合わせて点滅する機能を持ったLEDコントローラー」(アマゾンで購入)を使用します。
★正式名称;『waves RGB LED テープライト 用 音楽調光器 コントローラー 音に反応 リモコン』
(3)そのコントローラーに、フルカラーLEDテープ(アマゾンで購入)をつなぎます。
★正式名称;『WenTop LEDテープライトスーツ 両面テープ SMD 5050 防水ledテープ 10m 300連 正面発光ledテープ led RGB 30leds/m 44K リモコンと12v電源 高輝度 切断可能 明るいライト』
(4)フルカラーLEDテープは、透明なアクリル板(アマゾンで購入)に貼り付け、それをロボット用のダンスフロアーにします。
★正式名称;『ハイロジック アクリル板 透明 厚さ3mm 400mmx400mm 344AT』
(5)その他、ダンスフロアー製作に当たって使用したパーツ等は次のとおりです(すべて2年前、MA2017参加作品「コーディネート」の製作時にアマゾンで購入)。
①LitaElek 20個入り4ピンオス - オスLEDテープコネクタ4ピンSMD用半田レスLEDストリップコネクタアダプタ5050 3528 2835 RG
②LEDテープライト RGB 用 (GT-5050RGB-2C) 2分配ケーブル 4芯 28cm(ピン無し)1-2分岐ケーブル
③Poweradd Pilot Pro2 23000mAhモバイルバッテリー 超大容量 DC/USB出力 LCD電圧表示 iPhone / iPad / iPod / ノートパソコン / スマートフォン / タブレッド等対応 5V 9V 12V 16V 19V 20V
4.色からダンスへ
(1)ロボットの足にカラーセンサーをグラスファイバーテープにより取り付けます。
★正式名称;『グラスファイバー粘着テープ』(100円ショップCan Doで購入)※耐久性・粘着力に優れた非常に強力なテープであり、様々な工作に役立ちます。
(2)カラーセンサーが上記(3)④のダンスフロアーの色の変化(LEDテープの色の変化)を認識します。
(3)ロボットには、認識した色により、異なるモーションをする自作コードを入れておきます。
(4)ロボットは、色の変化に合わせてダンスします。
5.コードについて
(1)ダーウィン・ミニは、『タスクファイル』及び『モーションファイル』という二つのファイルにコードを記述し、それらをロボット本体に組み込まれたオープンソース のマイコン(『OpenCM 9.04』)にダウンロードして、制御します。
(2)『タスクファイル(拡張子「.tskx」)』及び『モーションファイル(拡張子「.mtnx」)』は、ROBOTIS社が無償配布している専用ソフトウエア(「R+Task 2.0」及び「R+Motion 2.0」)を用いて、GUIにより極めて簡単に作成することができます。
★専用ソフトウェアのダウンロードページ;http://www.robotis.us/roboplus/
※上記ダウンロードページには、さまざまなソフトウェアのダウンロードリンクが並んでいますが、ダーウィン・ミニを制御するのに最低限必要なのは、「R+Task 2.0」及び「R+Motion 2.0」の二つだけです。
★R+Task 2.0説明書(英語);http://emanual.robotis.com/docs/en/software/rplus2/task/
※上記のGoogle自動日本語訳;http://bit.ly/Rtask20
★R+Motion 2.0説明書(英語);http://emanual.robotis.com/docs/en/software/rplus2/motion/
※上記のGoogle自動日本語訳;http://bit.ly/Rmotion20
③OpenCM 9.04は、上記専用ソフトウエアだけでなく、Arduino IDE等によるプログラミングにも対応しています。
★OpenCM 9.04説明書(英語);http://emanual.robotis.com/docs/en/parts/controller/opencm904/
※上記のGoogle自動日本語訳;http://bit.ly/OpenCM904
④また、OpenCM IDEも用意されています。
★OpenCM IDE説明書(英語);http://emanual.robotis.com/docs/en/software/opencm_ide/getting_started/
※上記のGoogle自動日本語訳;http://bit.ly/OpenCmIde
四、作品製作過程でつまづいた点
1.組み立て過程
■ダーウィン・ミニは、数百の部品から組み立てます。
※ダーウィン・ミニ 組み立て前のパーツ画像(サタデー作者撮影)
※ダーウィン・ミニ公式マニュアル「パーツリスト」(英語);http://emanual.robotis.com/docs/en/edu/mini/#getting-started
※上記Google自動日本語訳;http://bit.ly/MiniParts
■その組立工程において、最も注意しなければならないのは、16個のサーボモーターを組み込むときです。
■モーターをよく見ると、サーボホーンにうっすらとスリット(切れ込み)が入っており、組み立て説明書には、そのスリット位置をどこに初期設定して取り付けるか、16個のモーターすべてについて個別に細かく指定してあります。
■これを無視又は軽視し、スリット位置の初期設定に留意しないままモーターを取り付けますと、完成時にスイッチを入れたとき、モーター軸の初動位置がずれるため、ロボットは適正な初期姿勢にならず、あたかも複雑骨折したかのようなねじれた姿勢になってしまいます。
■この点は、次のページを読んでようやく理解し、組み立てなおすことができました。
※(英語);「Darwin Mini doesn't save offset adjustment」
※上記Google自動日本語訳;https://tinyurl.com/st7vhqc
■総合説明書の冒頭にも、ほぼ最初の注意事項として、この点が記述されていました。(得られた教訓は、「説明書は組み立て終わってから読むのではなく、組み立て始める前に読むべきだ」ということです。)
※ダーウィン・ミニ総合説明書(英語);http://emanual.robotis.com/docs/en/edu/mini/
※上記Google自動日本語訳;http://bit.ly/RobotisMini
2.自作コードの作成過程
(1)ダンスモーション(モーションファイル)作成の基本
■ダンスモーションの作成は、上記三、5記載の専用ソフト「R+Motion 2.0」により行います。
■ダンスモーションの作成過程は、三つのパートに分かれます。
①「モーション・ユニット」の作成;「モーション・ユニット」は、右手を上げる、左足を傾けるなど、ロボットの動作の最小単位です。
②「モーション」の作成;複数の「モーション・ユニット」を連結して一つの「モーション」(例;両手を挙げてから、左右に振って、おろす等)にします。このモーション作成段階で、各「モーション・ユニット」の再生スピード(最高3倍速)及び反復回数(最高回数に制約なし)を指定することができます。
③「モーション・グループ」の作成;複数の「モーション」を連結して、「モーション・グループ」にします。このモーション・グループに入れた複数のモーションにはそれぞれIDが振られ、タスクファイルでは、そのIDにより、どのタイミングで、どのモーションを再生するかを指定します。
(2)タスクファイル作成の基本
■タスクファイルの作成は、上記三、5記載の専用ソフト「R+Task 2.0」により行います。
■本作品「サタデー」では、カラーセンサーが感知した色の変化によって、上記(1)③の「モーション・グループ」の中からIDを指定して、再生します。そのためのコードは、このタスクファイルに記述します。
(3)着手してみて判明した三つの問題点
■実際にモーションファイル及びタスクファイルの作成に着手してみて判明した問題点は、次の三つです。
①「モーション・ユニット」の作成には、恐ろしく時間がかかります。専用ソフト「R+Motion 2.0」を使ってGUIにより作成しますが、一つのモーション・ユニットの作成だけで、30分~1時間はかかってしまいます。いろいろなバリエーションを考えながら、数百のモーション・ユニットを作成するとなりますと、気の遠くなるような作業になります。
②一つのモーションファイルの中に記述することができる「モーション」「モーション・ユニット」及び「モーション・グループ」に、数的な制約はありません。一方、ロボットのマイコン(『OpenCM 9.04』)にダウンロードすることができる「モーション・グループ」には、数的な制約があります(ダウンロード可能な容量に上限があります)。したがって、何百種類もの「モーション・グループ」を作成しても、それらをすべてマイコン(『OpenCM 9.04』)にダウンロードすることはできません。
③ダーウィン・ミニ専用のカラーセンサー(『ROBOTIS Color Sensor CS-10 / DARWIN-MINI カラーセンサー』)が認識可能な色は、次の7種類しかありません。すなわち、Red(赤)、Blue(青)、Green(緑)、Black(黒)、White(白)、Yellow(黄)、Unknown(不明)。
(4)上記三つの問題点を解消するためにとった対策
①モーションユニットの作成作業について
■ネット上を徘徊して探し回ったところ、ROBOTIS社がダンスモーションのサンプルを公開しているのがわかりました。
※ROBOTIS社がダンスモーションのサンプル公開ページ http://en.robotis.com/service/downloadpage.php?ca_id=60
■上記ページ中、次の三つがダーウィン・ミニ用のサンプルです。
★(A) ROBOTIS MINI Dance (EXO - Overdose + Orange Caramel - Catallena)
★(B) ROBOTIS MINI Dance (Gangnam Style + Bar Bar Bar)
★(C) ROBOTIS MINI Dance (Knock Knock, Newface, BBoom BBoom,nayana, baby shark)
■これらのサンプルは、『定型的な』ダンス用ですので、このままでは『自律的な』ダンスをさせる本作品「サタデー」用として使用することができません。
■そこで、まず、これらのサンプル中のモーションファイルに記述された、動作の最小単位「モーション・ユニット」をすべてコピーし、一つのモーションファイルに集めることにしました。
■上記「モーション・ユニット」のコピーは、まず、専用ソフト「R+Motion 2.0」を二つ同時に起動し、うち一つは『コピー元』のモーションファイルを、もう一つは『コピー先』のモーションファイルを開きます。そして、どちらも「モーション・ユニット」の作成・編集画面にします。この状態で、『コピー元』の「モーション・ユニット」一覧の中からコピーするモーション・ユニットを一つを選んで「CTRL」キー+「C」キーでコピーし、『コピー先』の「モーション・ユニット」一覧の中に「CTRL」キー+「V」キーで貼り付けます。コピー対象の「モーション・ユニット」一つ一つについて、このコピー&ペーストの手順を繰り返します。
■コピーした「モーション・ユニット」の数は、上記(A)が約70個、上記(B)が約130個、上記(C)が約500個です。
■これで合計700個のモーション・ユニットが集まりました。
②ロボットにダウンロード可能なモーショングループの容量の上限について
■上記サンプル(A)(B)(C)のモーションファイルには、「モーション・ユニット」を組み合わせた「モーション」も記述されています。しかし、その「モーション」は定型的ダンス用ですので、「モーション・ユニット」を20個ぐらい組み合わせたような長めのものが多く、この「モーション」をそのまま使用しますと、数個のモーションだけで、ダウンロード可能な「モーション・グループ」の容量上の上限を超えてしまいます。
■そこで、本作品「サタデー」のモーションファイルにおいては、約700個の最小単位「モーション・ユニット」を複数組み合わせることなく単体で、そのまま「モーション」として定義することにしました。
■つまり、サンプル上は、「モーション・ユニット」合計約700個、複数の「モーション・ユニット」を組み合わせた「モーション」合計約30個となっていますが、本作品「サタデー」では、「モーション・ユニット」合計約700個、「モーション・ユニット」は複数を組み合わせず、単体で「モーション」とするため、「モーション」合計も約700個と構成することにしました。
■こうすれば、一つ一つの「モーション」の容量が小さくなりますから、ダウンロード可能な「モーション・グループ」の容量上の上限に達するまでに、40~50個の「モーション」を「モーション・グループ」内に入れて、IDを登録することが可能となります。(※このような工夫をしても、700個すべてのモーション・ユニット、即ちモーションを「モーション・グループ」内に入れてIDを設定することは、容量上できないのです。)
■以上要するに、モーションファイルには、一つの大きな制約があります。それは、「『モーション・ユニット』が合計約700個あって、700種類の動作がモーションファイル内に定義されていても、『モーション』として『モーション・グループ』内に入れて、各『モーション』にIDが設定された状態でロボット本体のマイコン(『OpenCM 9.04』)にダウンロードしないと、タスクファイルからそのモーションにアクセスすることができない」という制約です。
■そこで、一つ一つの『モーション』の容量を小さくして、できるだけだくさんの種類の『モーション』を『モーション・グループ』に入れ、ロボット本体のマイコンにダウンロードすることにしたのです。
■これにより、たくさんの種類の『モーション』それぞれにIDが割当てられ、タスクファイルからそのIDのモーションにアクセスすることが可能になります。
③カラーセンサーの認識可能な色が7種類だけという点について
■ダーウィン・ミニ専用のカラーセンサー(『ROBOTIS Color Sensor CS-10 / DARWIN-MINI カラーセンサー』)が認識可能な色が7種類しかないという問題については、タスクファイルにおいて、乱数を生成して対処することにしました。
■すなわち、タスクファイルには、カラーセンサーが色を感知するごとに、乱数が生成され、その乱数ごとに、再生するダンス・モーションのIDを割当てるコードを記述することにしました。
■その具体的なコードは、下記『(5)②タスクファイル』をご参照ください。
(5)デモで使用したモーションファイル及びタスクファイル
■デモ動画撮影時点でのモーションファイル及びタスクファイルは、次のとおりです。
■どちらのファイルも、テキストエディターで開き、それをhtmlに貼り付けて内容を表示させております。
①モーションファイル;https://fukuma.info/forMA2019/mtn.html
②タスクファイル;https://fukuma.info/forMA2019/tsk.html
(6)さらに浮上した問題
■作成したモーションファイル及びタスクファイルをロボット本体にダウンロードして、実機テストを重ねる中で、さらなる問題が浮上しました。
■即ち、上記のように音楽の変化をLEDの変化に変換し、その変化をトリガーとして、異なるダンスモーションが不規則に次々再生されるようにした場合、モーションとモーションとの間のつなぎが、あらかじめ定型的に決められていないわけですから、再生されるモーションの順番によっては、急激な重心移動が起こります。
■このため、本来、転倒するはずがないモーションなのに、ダンスの途中でいきなり、バタンと前後左右さまざまな方向へ倒れてしまうケースが発生することがわかりました。
(7)応急処置
■上記問題を克服するための応急的な処置として、次の二つを講じました。
①モーションファイルのモーション・グループに入れるモーションは、最大3倍速までの速度設定が可能ですが、基本的に3倍速には設定しないようにし、一つ一つのモーションは1倍速を原則としました。これは、速いモーションの方がダンスに切れがでて見栄えがするのですが、その分、重心移動も急激となり、結果、転倒のリスクも高まるからです。
②さらに、モーションファイルのモーション・グループに入れるモーションは、できるだけ重心の低い、地味なモーションを選びました。とくに腕を肩より上に上げるモーションや、上半身を大きく傾けるモーションは、重心が上がったり、不安定になったりして、転倒のリスクが高まりますので、各モーションを注意深く吟味し、それらを選択しないようにしました。
(8)根本的対策(将来へ向けた検討課題)
■上記①②は、あくまで応急処置でしかなく、転倒リスク軽減の根本的な対策としては不十分です。
■根本的な対策としては、すべてのモーション・ユニットを修正し、各モーション・ユニットの「動作の起こり(起点)」と「動作の終わり(終点)」が一定の姿勢の範囲内に収まるようにする必要があります。
■そうすれば、不規則にモーションが連続再生された場合でも、急激な重心移動が起こりにくくなり、転倒のリスクを減らせます。
■転倒のリスクを減らせれば、モーションのスピードを3倍速まで上げ、かつ、上半身を大きく傾けるような派手なモーションも取り入れ、もっと切れがあって見栄えのする自律的ダンスが可能となるはずです。(これは将来へ向けた検討課題です。)
五、その他
1.デモ動画内の音楽について
■デモ動画url;https://youtu.be/XdCArMbeTGw
■音楽;音楽は、和風トランス「神楽謡」(written by まんぼう二等兵)を使用させていただきました。有難うございます。
■和風トランス「神楽謡」ダウンロードページ;https://dova-s.jp/bgm/play4210.html
■上記ダウンロードページは、WEBサイト『フリーBGM(音楽素材)無料ダウンロード|DOVA-SYNDROME)』の中の一ページです。
2、個人賞
(1)CrappySoundさんから個人賞「geek賞」をいただきました。有難うございます。
■賞状の画像は、本ページにアップするとともに、ツイートさせていただきました。
■ツイートurl;https://twitter.com/SingaporeNewsSG/status/1193914985019109378
(2)みやぎ@deki1756さんから個人賞「未来感賞」をいただきました。有難うございます。
■賞状の画像は、本ページにアップするとともに、ツイートさせていただきました。
■ツイートurl;https://twitter.com/Australia7News/status/1203236885159505920
3、東京予選(2019年11月11日)のPhoto、Twitter等(事務局の方撮影・投稿)※有難うございました。
■Tweet(動画);
【 #ヒーローズリーグ 東京予選一部】
— ヒーローズ・リーグ (@HeroesLeague_MA) November 11, 2019
㉜サタデー
実際にやってみたデモ。音楽をLEDの色に変え、その色を検出し、それに合わせて動きが変わるよ pic.twitter.com/fQDYr5l0u8
■Flickrサムネイルページurl;ttps://fukuma.info/forMA2019/tokyo1buprezen.html
■Flickrアルバムページurl;https://www.flickr.com/photos/100125183@N08/albums/72157711736543146
■Togetter url https://togetter.com/li/1429192
■イベントページ;https://mashupawards.connpass.com/event/153371/
4.作品製作中に購入した補修パーツ、テスト用センサー等
■本作品の製作・実機テストの過程において、以下の部品、補修パーツ等を購入いたしました。
①近距離赤外線センサー IRSS-10 [902-0039-000]
②測距センサー DMS-80 [902-0043-000]
③タッチセンサー TS-10 [902-0038-000]
④パッシブ人感センサー PIR-10 [902-0109-000]
⑤Robot Cable-3P-XL 130mm 5本セット(DARWIN-MINI対応) [903-0225-000]
⑥Robot Cable-5P 400mm(センサー用) 4pcs[903-0187-000]
⑦USB ダウンローダー LN-101[902-0041-001]
⑧TOOL(STL)リベットやっとこ[913-1026-000]
■購入先は、すべて『ROBOTIS製品 正式代理店 - 有限会社杉浦機械設計事務所』様です。購入の際、常に迅速かつ的確な対応をしていただきました。有難うございました。
■上記中、①~③のセンサーは、ロボットが転倒したとき、ダンスを中断して自力で起き上がるコードを試すために購入しました。また、④のセンサーは、ロボットの前で手を振ると、ロボットがダンスを中断して手を振り返すコードを試すために購入しました。
■実際にコードを書いてテストしてみてわかったのは、カラーセンサー以外のセンサー類を装着すると、ダンス中に転倒するリスクが高まるということです。これは、センサーの重みで重心が不安定になるからです。
■⑤のケーブルは、サーボモーターのケーブルが万一接触不良を起こしたときに備えて、補修パーツとして購入しておきました。
■⑥のケーブル(400mm)は、カラーセンサーをロボットの足に装着するのに、カラーセンサー付属のケーブル(150mm)では長さが足りなかったために購入しました。本作品では、必須の部品となりました。(この点、下記「6、カラーセンサーをロボットの足に装着する理由」をご参照ください。)
■⑦USB ダウンローダーも、非常に有用でした。ROBOTISの専用ソフトでタスクファイルやモーションファイルを書いた後、それらをロボットにダウンロードする際、通常は、Bluetooth経由で行いますが、PCのスペックが低いと、ダウンロード中に専用ソフトが固まってしまうという現象が頻発することがわかりました。そこで、このUSB ダウンローダーを購入し、Bluetooth経由ではなく有線でダウンロードすることにしたところ、ダウンロード中に専用ソフトが固まるということが一切なくなり、時間の節約になりました。
5、LEDテープSMD2835とSMD5050との違いについて
■製作過程において、音楽に合わせて点滅する機能を持ったLEDコントローラー『waves RGB LED テープライト 用 音楽調光器 コントローラー 音に反応 リモコン』につなぐLEDテープとして、『SMD2835』及び『SMD5050』をテストしました。
■両者の基本的な違いは、次の解説ページに記載されているのですが、細かい点で気づいたことを覚書としてここに記しておきます。
※解説ページ;「LEDテープライトの種類と選び方。明るいのは? おすすめは?」https://www.diylabo.jp/basic/basic-64.html
■『SMD5050』は、一つのLED電球に赤・青・緑の基本三色のチップが組み込まれており、その三色を組み合わせて、一つのLED電球が、どんな色でも発光することができます。
■一方、『SMD2835』は、フルカラーであっても、一つのLED電球に赤・青・緑のどれかのチップ一つずつくみこまれており、したがって、一つ一つのLED電球がさまざまな色に変化するということがありません。テープ全体としてみたときに、赤・青・緑のどのLED電球をどれだけ光らせているかにより、さまざまな色彩が表現されます。
■テスト用に次の【A】【B】をそれぞれ購入し、比較検討いたしました。
※【A】SMD2835として『LEDテープライト 防水 高輝度 RGB LEDテープ SMD2835 10M 600連 テープled 間接照明 カラー選択 切断可能 リモコン操作 12V テープライト』(アマゾン)
※【B】SMD5050として、『WenTop LEDテープライトスーツ 両面テープ SMD 5050 防水ledテープ 10m 300連 正面発光ledテープ led RGB 30leds/m 44K リモコンと12v電源 高輝度 切断可能 明るいライト』(アマゾン)
■その結果、実機テストしたときの色彩の変化の具合が、今回の「音楽の変化を色の変化に変換する」という目的に照らすと、【B】SMD5050の方がより合目的的(ごうもくてきてき)だとの結論に達し、【B】を使用することにいたしました。
6、カラーセンサーをロボットの足に装着する理由
■ダーウィン・ミニ専用のカラーセンサー「Color Sensor(CS-10)」は、本作品では足に装着し、床を光らせてその色を感知させます。
■これは、「Color Sensor(CS-10)」の検出範囲(Sensing Range)が6mm ~ 18mmと、極めて狭い範囲に限られているからです。
※ご参照;カラーセンサー説明書(英語);http://emanual.robotis.com/docs/en/parts/sensor/cs-10/
※上記のGoogle自動日本語訳;http://bit.ly/ColorSensorCS10
■検出範囲がこのように狭いため、例えばフルカラーLED電球の照明をロボットの上や横から照射して、ロボットの頭部や上半身等に装着したカラーセンサーでその色を検出するということは、不可能になります。
■カラーセンサーの狭い検出範囲を考えますと、カラーセンサーは常時、LEDに密着させることができるくらいの部位に装着する必要があります。
■そこで、ロボットの足にカラーセンサーを装着して床にほぼ密着させ(カラーセンサーと床との隙間は5mm程度)、その床をLEDで光らせるという方法を採用いたしました。
8、ダンスフロアーをアクリル板にした理由
■足に装着したカラーセンサーが、安定的に色の検出を行えるようにするためには、LEDテープを貼るダンスフロアーは、最低でも透明であることが必要です。
■ダンスフロアーの素材については、半透明のプラスチックや厚手の透明ビニールなどいろいろ試しましたが、
①透明で、
②ダンスの際、すべる恐れがなく(摩擦係数がある程度高く)、
③すぐに割れたり撓(たわ)んだりしない程度の強度・硬度があり、
④しかも安価
という条件を満たす素材は、試行錯誤の結果、「アクリル板」だとわかりました。
■アマゾンで購入した『ハイロジック アクリル板 透明 厚さ3mm 400mmx400mm 344AT』は、上記①~④の条件をすべて満たし、しかもガラス板より軽量です。「サタデー」のダンスフロアーとしては、これ以上望めないくらいの好素材です。
9、2020年の目玉となるらしい「人感センサー」(周波数帯60ギガヘルツ帯を使うレーダー)について
■上記五、4、記載のとおり、ROBOTIS社のパッシブ人感センサーも試してみましたが、これは正式名称「Passive IR Sensor(PIR-10)」であり、厳密には「人感センサー」ではないようです。実際、ロボットに装着してテストしてみましたが、単純なtrue(感知)とfalse(非感知)の条件分岐しかできないようです。
※参考;Passive IR Sensor(PIR-10)マニュアル;http://emanual.robotis.com/docs/en/parts/sensor/pir-10/
■2019年11月19日日経朝刊第16面の記事によりますと、先日、大きな技術的及び経済的波及効果が見込まれる一つの規制緩和が発表されました。即ち、総務省は2019年10月8日、周波数帯60ギガヘルツ帯を使うレーダーの利用条件を公表、これを受けて、ジェスチャーで家電を操作するなど人感センサーを使った製品の開発が加速しているということです。そして、2020年にそれは解禁となるとのことです。実際、Googleは10月24日発売開始した「ピクセル4」にすでにそのレーダーを搭載していますが、法整備が間に合わず、日本ではまだ利用できないとのことです。今回の規制緩和は、「欧米同様、日本でも利用できるようにしてほしい」というGoogleからの要望が契機になったそうです。
※参考;2019年10月8日総務省発表資料;http://www.soumu.go.jp/main_content/000648533.pdf
※参考;2019年11月19日日経朝刊第16面の記事①;『家電「手かざし」操作、日本へ 独インフィニオンなど新レーダー技術 医療・VR応用幅広く 米欧先行、国内勢追う』https://www.nikkei.com/article/DGKKZO52329460Y9A111C1TJ1000/
※参考;2019年11月19日日経朝刊第16面の記事②;『グーグル、規制緩和要望 新たな周波数帯利用解禁』https://www.nikkei.com/article/DGKKZO52329480Y9A111C1TJ1000/?n_cid=SPTMG053
■2020年に周波数帯60ギガヘルツ帯を使う製品が解禁になると、日本の人感センサー搭載製品の市場は、2025年までの5年間、台数ベース年平均9.2%増で急成長すると予測されています。
■ロボットの世界にも、きっと本格的な人感センサーが登場するでしょう。
10、作品名『サタデー』の由来
■「土曜の夜はフィーバーしよう!」をキャッチフレーズに、70年代後半のディスコブームのきっかけを作ったとも言われる次の大ヒット映画のタイトルから一単語いただきました。
■1977年 アメリカ映画 「サタデー・ナイト・フィーバー」 ( "Saturday Night Fever" 1977 )
■Youtube;http://bit.ly/SaturdayNightFever1977
11、補遺
■人間は、一般に、音程が取れる人でないと、うまく踊ることができません(ときどき見かけますが、音程が取れる人は、歌ってもうまいし、踊ってもうまいものです)。一方、ロボットは、センサーさえ進化すれば、たとえ音程が取れなくても踊ることができます。センサー技術の進化により、近い将来、ロボットのダンサーは、人間のダンサーを凌駕する表現力を纏う(まとう)かもしれません。幸いにも、アシモフの「ロボット三原則」には、「ロボットは人間よりうまく踊ってはならない」などという原則は含まれていませんから・・・。
12.覚書その1;「ロボット三原則」及び「フレーム問題」について(※本作品とはまったく無関係ですが、自律型ロボット全般を考察する上で極めて興味深いテーマですので、あえてここに覚書として付記しておきます。)
■「ロボット工学三原則」(「ロボット三原則 」)とは、1950年、小説家アイザック・アシモフがSF小説短編集『われはロボット 』(I, Robot ) の中で提唱したロボットが従うべき三つの原則のことです。ただ、現在のロボット工学では、これをそのままロボットに適用すると『フレーム問題』を引き起こすとされています。(ウィキペディア「ロボット三原則」http://bit.ly/3PrinciplesOfRobot より)
■アイザック・アシモフの「ロボット三原則」は、次のとおりです。(ウィキペディア「ロボット三原則」http://bit.ly/3PrinciplesOfRobot より)
第一条 ロボットは人間に危害を加えてはならない。また、その危険を看過することによって、人間に危害を及ぼしてはならない。
第二条 ロボットは人間にあたえられた命令に服従しなければならない。ただし、あたえられた命令が、第一条に反する場合は、この限りでない。
第三条 ロボットは、前掲第一条および第二条に反するおそれのないかぎり、自己をまもらなければならない。
■アシモフは、『われはロボット』(I, Robot )の「6 迷子のロボット」(6. Little Lost Robot)の中で、ロボット心理学者スーザン・キャルビンに次のような趣旨の発言をさせて、上記ロボット三原則の重要性を強調します。「ロボットは日々学習し、自分たちが肉体的にも精神的にも知能的にも人間より優れていると認識するに至る。なのに、なぜロボットは人間に隷属するのか?それは、製造段階でロボット三原則、とくに第一条及び第二条がロボットの脳に深く刻み込まれているからに他ならない。」
■この発言に対し、アシモフはスーザンの同僚数学者ボガードにこう応じさせます。「スーザン、君の言う『フランケンシュタイン・コンプレックス』にはある正当性があることを認める。」(アイザック・アシモフ『われはロボット』(I, Robot )より)
■上記は、アシモフが1950年時点ですでに、「技術的特異点」(Technological Singularity)(シンギュラリティ.)(=人工知能の能力が人間 の能力を超える時点。2045年と予測。そのため「2045年問題」とも言われます。)に近い考えを持っていたと言えるのかもしれません。
■なお、上記『フランケンシュタイン・コンプレックス』(Frankenstein Complex)とは、「創造主(アブラハムの宗教の"神")に成り代わって人造人間やロボットといった被造物(=生命)を創造することへのあこがれと、さらにはその被造物によって創造主である人間が滅ぼされるのではないかという恐れが入り混じった複雑な感情・心理のことです。SF作家アイザック・アシモフが名付けました。このロボットに対する人間の潜在的な恐怖が、ロボット工学三原則を生み出したということになっています。」(ウィキペディア「フランケンシュタイン・コンプレックス」http://bit.ly/FrankensteinComplex より)
■ちなみに、映画「ターミネーター」(Youtube動画;http://bit.ly/theTerminator)や映画「マトリックス」(Youtube動画;http://bit.ly/theMatrixMovie)も、やはり『フランケンシュタイン・コンプレックス』から派生していると言えるかもしれません。
■また、『われはロボット』(I, Robot )の「8 証拠」(8. Evidence)の中でアシモフが描いた「人間そっくりの外観を持つロボットが人間になりすまして人間社会へ紛れ込むことへの嫌悪と恐怖」も、『フランケンシュタイン・コンプレックス』の副産物と言えそうです。この嫌悪と恐怖の感情は、映画「ブレードランナー」(ハリソン・フォード主演1982年公開、原作は1968年フィリップ・K・ディック著「アンドロイドは電気羊の夢を見るか?」)等でも描かれています。
■『フレーム問題』とは、人工知能における重要な難問の一つで、有限の情報処理能力しかないロボットには、現実に起こりうる問題全てに対処することができないという問題です。1969年、ジョン・マッカーシーとパトリック・ヘイズが論文中で指摘しました。(ウィキペディア「フレーム問題」http://bit.ly/FrameProblem より)
■たとえば、火災に巻き込まれた人間を発見した際、ロボットは、「自分は引火性の燃料を使用している」「火災現場は高温」「高温下では引火性燃料は爆発することがある」「付近で爆発が起きると人間は負傷することがある」という知識をもとに、自分は直接助けに行かず応援を呼ぶ、という判断を下す必要があります。ロボットは、どんな行動が人間に危害を加える可能性があるかを判断するためには、周囲の状況とその帰結をすべて予測しなくてはならないわけです。(ウィキペディア「ロボット三原則」http://bit.ly/3PrinciplesOfRobot より)
■つまり、フレーム問題は、「考慮すべき空間が有限(ex.チェス、将棋等)でない限り、無限の可能性について考えざるを得ない、だから、枠(フレーム)を作って、その枠の中だけで思考する必要がある、だが、その枠にどれだけの事象を入れるかの判断も、困難を極める。」ということです。(ウィキペディア「フレーム問題」http://bit.ly/FrameProblem より)
■人間ですら、このフレーム問題にうまく対処できてきているとは言えないかもしれません。(ウィキペディア「フレーム問題」http://bit.ly/FrameProblem より)
■実際、報道等で「想定外だった」という釈明を聞く機会が最近多いような気がしますが、「想定外」とは、いわば設定した「フレーム外」だった、つまり『フレーム問題への対処に失敗した』と解釈することもできるのかもしれません。
■「ロボット三原則」は2004年、これをモチーフ(=物語の構成要素となる事象、出来事など。Wikipediaより)にしつつ、アシモフの原作を大胆かつ野心的に脚色し、ウィル・スミス主演で映画化もされました*。(予告編動画;* 映画「アイ,ロボット( I, Robot) 」;http://bit.ly/iRobot2004 )
13.覚書その2;「ヒューマノイドロボット(人間型ロボット)が必要である理由」について(※これも本作品とはまったく無関係ですが、アシモフの「鋼鉄都市」(1953年発表)の中に興味深い記述があるので、あえてここに覚書として抜粋・付記しておきます。)
■ベイリ刑事「ロボットが人間に似ていなくてはならない理由は何です? なぜ、ロボットに手足や頭が要るんです?」
■ジェリゲル博士(ロボット工学)「それは、結局、経済的な効果を考えてのことですよ。たとえば、あなたが農場を経営しているとしましょう。それぞれに電子頭脳をつけたトラクターや刈込機、まぐわ、搾乳機、自動車その他を購入しますか、それとも、そうした機械器具類は電子頭脳なしのふつうのものにして、それらすべてを操作することができる電子頭脳を持った人型ロボットを1台買いますか?費用の点から言いますと、後者の方が50倍ないし100倍も経済的ですよ、だからです。」