OGIMOノート~家族のためのモノづくり~

OGIMOノート ~家族のためのモノづくり~

9歳の娘と、7歳の息子(脳性麻痺)を持った父親エンジニアの備忘録。自作の電子工作おもちゃ/リハビリ器具/ロボット関係の製作記録、勉強記録を残していきます

【まとめ】2020年ふりかえり ~家族のためのモノづくり~

f:id:motokiinfinity8:20201229001825j:plain

2020年も終わりを迎えます。
今年は、個人活動に加えて、本業、友人らコミュニティでの活動と、
3つのいずれも大きな変化があり、活動世界が広がった年になったと思います。
今年も製作物の観点で 2020年を振り返りたいと思います。
 
『息子のために、家族のために、誰かのために、
 自分の技術を生かしたモノを作りたい!』


単に「面白いだけ」ではない

普段の何気ない困りごとに直結しつつ、
ちょっとした遊び心にワクワクしながら、
子供の成長に繋がるモノ、使って貰い続けられるモノを作りたい!

これが私の個人活動の根幹になっています!


 
とにかく手を動かし続け、公開しているメジャーなモノだけで
今年は【28個】ほど個人活動で作っていた様です。

また今年は、本業側でも大きなプロジェクト公開を出来たり、息子や家族以外に向けたコミュニティでの製作にも活発に取り組む事ができました。

特に後述するオンラインサロンでの開発活動のおかげで、
作り手/使い手/仲間達と一緒に共創する楽しさ&可能性
を強く感じた一年でした。


以下、2020年度の製作物について、ジャンルごとに分類してみました。
(かなり文量が多くなってしまったので、まずは目次を参照頂き、興味のある項目をクリックして該当箇所へ飛んでいく方が見やすいかと思います)


ちなみに、2019年度の製作物まとめは以下です。
ogimotokin.hatenablog.com



★は特に思い入れ深いモノ

息子のリハビリ支援&ゲーム編

(1-1) ★壁タッチでボール転がしプロジェクションゲーム[4月]

コロナ禍で外出できず、外来リハビリを受けれない息子に向けて主体的に体を伸ばせる様な仕掛けを作りたい!と自宅内に「チームラボみたいなプロジェクションゲーム壁(インタラクティブ壁)」を製作。
息子の大好きな「ボール転がし」をVR化、壁をタッチするとそこからボール転がしゲームが始まります!

製作方法はこちら
ogimotokin.hatenablog.com





(1-2) スプラトゥーン風インク壁塗りプロジェクションゲーム[5月]

前回製作したリハビリ用プロジェクションゲームのバリエーションを増やしてみた。スプラトゥーン好きな母&娘にも喜んで貰える様に、壁や床を触るとスプラトゥーンの様にインクをべちゃっと塗りつける事ができます!
更に、顕微鏡風デバイス上のLEDを押すと、その下にある色を捕まえれるので、色のお勉強にも活用する事を狙いました。

製作方法はこちら
ogimotokin.hatenablog.com






(1-3) ★病室の天井に青空を!気球プロジェクションゲーム[8月]

今年7月に足手術を実施し、ベットから動けなくなった息子。
そんな状態でも自分の意志で楽しく遊べる様に寝たまま遊べるアトラクションを作りました。天井向きにプロジェクタを投影、ベットから手を伸ばすとそこから気球が飛び出します!


こちらの作品をTwitterに上げたところ大変反響があり、この後にめざましテレビ」に出演するきっかけとなりました。


www.youtube.com







(1-4) ボールを吹っ飛ばせ! ビリヤードプロジェクションゲーム[9月]

息子や子供達に体を動かした簡単な対戦ゲームを作る目的で製作。
バーチャル上のボールを触って激しく吹っ飛ばすビリヤード風ゲームを作りました!
普通のビリヤードに比べて、思いっきりボールがはじけ飛ぶ感じが楽しい!


テレビ出演からのご縁で、息子の入院先の子供達にも本プロジェクションゲームを遊んで貰う機会を頂きました!
入院中の子供達が「何これー?遊びたいー」と寄ってきて遊んでくれた!
たくさんの子供達の笑顔が見れて嬉しかった!

「入院中の子供達にこそエンタメが必要」と強く実感させられました。






(1-5) 楽しくボール手運び練習!改造くるくるチャイム[1月]

ボール転がしが好きな息子の好奇心を広げつつ、指先を使った把持&リリースのリハビリ練習を楽しく行える事を目指して製作しました。
市販品「くるくるチャイム」の内部に、測距センサーを埋め込みボール位置を検知、LEDテープ& 効果音を鳴らすという追加改造を行いました。


製作方法はこちら

ogimotokin.hatenablog.com

製作以降、お気に入りのおもちゃの一つとして遊び続けてくれています。
展示会でも人気作品のため使い込んで筐体は傷だらけですが、たくさん使い続けてくれて嬉しい品の一つですね。







(1-6) ★スイッチで選ぶ「かおす暴走くまさん」[1月]

知的に遅れのある息子の好奇心をこじ開け、自分の意志で「選ぶ」行為を楽しく経験できる様したい狙いで製作しました。
「ふつう」「ぼうそう」「かおす」の3モードをスイッチで選択すると、激しい動きになる(笑)
簡単な技術で、子供や大人を、笑顔にしてくれる魔法のくまさん

展示会でも子供達に大人気な暴走シリーズ。今年のMaker Faire Tokyo 2020でもTop10に入るバズり方をしたとの事です。


障害のある子の課題を解決したいというきっかけから、障害に関係なくヒトを笑顔に出来るモノを作れたというのは個人的にもすごく嬉しいです



(1-7) 鬼を切る! 全集中ハロウィンロボット [11月]

息子の通っていた療育園のハロウィンパーティにて、「自分の意志でスイッチを押したくなる様な子供達が喜ぶハロウィン仕掛けを作れないか?」という依頼を受けて製作しました。

当日の様子は拝見できなかったのですが、後から動画等で見せて頂き、子供達が楽しそうにスイッチを押してくれている様子にこちらが元気を貰えました!

誰かのために作る、は
めぐり巡って
自分のためになる




(1-8) ★入院中の我が子にエレベータ体験を! M5Stackで作る本格エレベータパネル [11月]

「長期入院でベットから離れられない我が子に、大好きなエレベーターボタンを押させてあげたい」という親御さんからの相談を受けて開発しました。

こだわり強い子供達にとって、大好きになったモノが見つかれば、他の事に目もくれずそれに対して全力で遊ぶ。
「大好きなこと」を思う存分に遊ばせてあげたい親心、本当によく分かります!
そして、その「好きな事」がニッチであればある程、クリーンヒットする市販品が見つからない
見つからなければ、作るしかない!

「その子専用の好き」を作ることこそ、
モノづくりをする人達が輝ける舞台だと思ってます。

今まで積み重ねてきたものを使い、誰かの願いを叶える事に繋がって嬉しい…






移動/モビリティ編

(2-1) ★電動車椅子の1ボタン操作ユニットの開発 [1月]

息子が屋外の通学路等で電動車椅子の操作練習をできる環境を作りたい目的で製作しました。
大人用の電動車椅子サーボモータ3Dプリンタ治具で物理ハックし、子供が操作しやすい1ボタンスイッチに加えて、大人介助者が無線で左右方向を補正サポートできる操作練習システムを作りました。

製作方法はこちら

ogimotokin.hatenablog.com


この取り組みは大当たりで、馴染みのある場所で「自分の意志で進む」事で、息子の周囲の環境(家や車など)を見るという認知面での成長のを感じました!


また、ご縁があって毎日新聞の全国版に掲載頂きました。

youtu.be
脳性まひの息子のために 「メロディー靴」や「じゃんけん専用義手」 支援機器を自作で50個開発 - 毎日新聞




(2-2) 電車&バイクコントローラで遊ぶ電動車椅子[2月]

息子のための大人用電動車椅子、空いてる時はお姉ちゃんも遊びたいよね!
という事で、気軽に遊べる様な
「遊びゴコロ溢れた電動モビリティ体験」
を作ってみました。

Nintendo Laboバイクコントローラ」「電車でGo!コントローラ」「Fisherpriceおもちゃコントローラ」
の三種類で電動車椅子を操縦!

主に小学生の子供達をターゲットにした「わくわくモビリティ」として電動車椅子で遊べる体験をこれからも作っていきたいですね。






(2-3) ★ 電動車椅子練習支援 片手介助コントローラ [4月]

大人用電動車椅子を使って本格的に息子の操作練習を進めていく中で、
息子が安心して通学路を走る際に一緒に手をつなげる事が重要でした。
そこで片手で手を繋ぎながら、もう片手で息子の走行サポートが可能な片手無線コントローラを製作しました。

これを使って、GWには祖母の入っている分身ロボットOriHimeを電動車椅子に乗せてドライブする息子

製作方法は以下
ogimotokin.hatenablog.com


この製作システムは一旦安定したので、5月以降は毎週ペースで練習をしていて、走行操作の成功率や認知面もどんどん進んできました!
日常的に活用できていて息子の成長に非常に役立っています!





(2-4) 歩行練習を楽しくするXR風歩行器[10月]

足の手術を終えて、あらためて息子の「歩行リハビリ」を進めるに辺り、「歩く目的」を楽しいゲーム形式にしてモチベーションを高めるために開発しました。
歩行器から床にプロジェクション投影させたバーチャル都市を、歩きながら壊して回る(笑)


プロジェクタ光量不足のため、暗いところ限定である点が課題だが、「モノを壊す→楽しい→もっと歩こうというモチベーション」という体験価値としては良さそうな感触。この着想を次のアイデアに繋げていきたい







(2-5) 歩くとピカチュウが応援してくれるメロディ靴 [2月]

息子の歩行リハビリのモチベーションを高めるために2019/1に製作したリハビリ靴。
これを他のお子さんの歩行リハビリに取り入れてみたいとの相談を受けて、新たに製作しました。
そのお子様が「ピカチューが大好き」との事でしたので、「歩く度にピカチューが応援してくれる靴」をコンセプトに製作しました。

ベースとなる息子用に製作したメロディ靴の製作記事はこちら
ogimotokin.hatenablog.com




息子 就学生活サポート編

(3-1) 学校気分を感じるおうち勉強スケジューラ [4月]

コロナ禍で臨時休校となった状況の中、新1年生となる息子に学校の生活リズムに早くなれて欲しい & 娘に自主的に勉強する気持ちを後押ししたいという目的で製作しました。学校風のチャイムを鳴らして子供の時間割を管理、オリジナルの時間割に合わせて自動でチャイムが鳴り、次の科目をお知らせしてくれます!

娘を積極的に製作に巻き込んだおかげで、学校チャイム音に愛着を持ってくれ、自主的に勉強に励んでくれました。
ただモノを作るだけでなく、「モノを作る過程」を共有する事も大事だと、娘からメイカー姿勢を教えてもらった気がします。





(3-2) ★コミュニケーションを楽しくするあいさつ&ロボットハンド [5月]

小学校へ入学した息子がクラスの子供達と打ち解けるきっかけを作りたい、言葉を話せない息子が自分の意志で「友達とあいさつする事」を習慣づけていきたい、というのが製作動機。
ボタンを押すと「おはよう」「バイバイ」等、自分の口&手の代わりに可愛く挨拶してくれるロボットハンドを製作。

こちらをTwitterに公開したところ、「是非 使ってみたい」とのお声がけを頂き、追加でカスタム量産しました。
また、合わせて「じゃんけん機能」も追加しました!


開発きっかけは、吉藤オリィさんと一緒にSMAの女の子が自分の意志でじゃんけんするためのロボットハンドです。

それが1年経って、我が子の就学に向けたコミュニケーションツールに進化した!
友達の困り事を解決するため試行錯誤して作ったツールが、こうして我が子の成長に繋がってく素敵なループ!

6か月経った今、息子の小学校生活で欠かせない発明品になりました!
こうして使い続けれるモノとして進化した事、本当にすごい!




(3-3) 誕生日ケーキのろうそく吹き消し装置 [7月]

誕生日会にて、うまく口でろうそくを吹き消す事の出来ない息子に、口以外の手段を使い「自分の力で」ろうそくを消して欲しいと思い製作しました。
製作物は単純な「スイッチを押すと回る改造扇風機」、ポータブルタイプのカワイイ扇風機を改造して、普段息子が使っている押しやすいスイッチを接続するというシンプルテクノロジーです。

シンプルな機能でも使い方を工夫すれば、子供の可能性を広げるアシスティブ機器に早変わり!





(3-4) 息子のお風呂姿勢保持(支え)DIY装置 [4月]

身体の成長に伴い今まで使ってきたバスチェアーがサイズアウトしてしまい、息子のお風呂介助に悩む妻の困り事を解決するため、ホームセンターで売ってる塩ビパイプで座位補助器具を作ってみました!

製作方法は以下
ogimotokin.hatenablog.com

器具に捕まれば座った状態を保てるので、妻は息子介助しながら安心して自分の体を洗う事が出来ます!
シンプルな製作内容で、効果はばつぐんでしたー!





(3-5) 100均グッツで作れる装着性良いフェイスシールド開発 [4月]

コロナ禍中、マスクやフェイスシールドの不足が叫ばれている中、自分の身近なところから最前線で頑張っている方々のお役に立てないかと考えて、量産性も加味した実用的なフェイスシールドの製作として検討を進めました。

製作方法は以下
ogimotokin.hatenablog.com

息子の通っていたリハビリのST先生方に10個程寄付させて頂き、「長時間かぶっていても疲れない」と好評頂き、結果としてフェイスシールドが安定供給される様になるまで数か月程ご使用いただきました!





(3-6) 入院中のYoutube動画スキップ専用 物理ボタン [7月]

足手術後でベットから動けない息子の最大のエンタメツールiPad & YouTube
息子のストレスを最小化させるため、動作再生途中のYouTube広告を自分で早送りできる様に、iPadを物理スイッチで操作可能なコントローラを製作した

使いはじめてから明らかに息子のイライラ頻度も減った!
YouTubeの広告を飛ばしたい」というささやかな困り事も、押しやすいスイッチを追加するという簡単な一工夫で、一気にストレス解放!





(3-7) タッチできない息子向け OriHime専用コントローラ [8月]

長期入院中でもクラスメイトとの繋がりを絶やさず重ねていくため、分身ロボットOriHimeを使って、入院先から遠隔で小学校授業に参加する実証実験をプライベート取り組みしました。ただし、息子はOriHime操作で必要となるフリック操作 & タッチ操作が苦手
のため、自分の意志で簡単なアクション操作を表現してクラスメイトと接して欲しいと考え、OriHimeのiPadアプリを物理コントローラで操作できる変換デバイスを開発しました。

おかげで入院中も定期的にクラスメートと交流を重ねる事ができました!



(3-8) 文字学習用ポータブル電光掲示板 [12月]

小学校で始まった文字学習になかなか集中できない息子に対して、自然と文字に目がいく様な & 伝えたい言葉を自然に覚える仕掛けを作りたいのがきっかけ。
そこで、スマホで操作可能なポータブル電光掲示板(文字が光る & 動く) を製作した

また、このハードウェアを使って、ちょうどクリスマスツリーイルミネーションにも展開してみた!


製作方法は下記
ogimotokin.hatenablog.com


来年はこの電光掲示板を活用して色々と仕掛ける予定ですので、お楽しみに!





(3-9) スイッチ/視線入力で演奏する8音ベル演奏装置 [1月]

2019年クリスマスに、療育園最後のクリスマス会で肢体不自由の同級生8人で何か演奏体験をできる様に作ったハンドベル演奏装置。
ただ、この時にスイッチを押すのが苦手だった子に演奏体験を作ってみたい、と考え、自由研究がてら「視線入力I/F」にチャレンジしました。

視線入力システムの開発は初めてでしたが、OriHimeEye+自作アプリ を使って精度良く鳴らす事はできる様になりました。
一方で、画面越しの静止画ではなく、実際のハンドベル等の動くモノを注視したくなる事、また息子は視線を使うよりも、手を使う方が好きそうな事もあり、その後の開発は中断していますが、ニーズが増えそうなら改めて再開したいですね。


(3-10) ボール転がし×楽器演奏装置 [10月]

ボール転がしが好きな息子、更に音楽そのものも好きなので、その両者を組み合わせたらどの様に好奇心を引き出せるのかを試験的に製作したモノになります。
ボールを転がすと、転がした位置に応じて、(3-9)で製作したハンドベル演奏装置が点灯します。こちらは、MFTokyo2020 に展示していました。

息子自身も楽しそうにボールを何度も転がしていたのですが、音楽演奏がリンクしていたかはもう少し考察が必要そうです。それも含めて、子供の好奇心を引き付ける新しい演奏体験を来年も進めていきたいですね




仲間たちとのモノづくり活動

活動概要

自分の息子や家族のために磨いた技術を、仲間達や困っている人達にも繋げていきたい
という想いではじめた個人活動!

2019年から、吉藤オリィさん(@origamicat)やてらきゅー工場長さん(@toma18720)ら仲間達と分身ロボットOriHimeを使って、パイロットさんらと一緒に新しい遊び体験を自由研究する取り組みを続けてきました。

また、2020年5月~は吉藤オリィさんのオンラインサロン「オリィの自由研究部(オリィ部)」に参加して、障害を持った方などの抱える身近な困りごとを解決するアイデア検討/モノづくり/体験イベントをユカイなメンバー達でワイワイと取り組んでおります。(12月時点でメンバー500人超え!?)

緩いアットホームな雰囲気、メンバーのリアクションの良さが特徴の素敵なコミュニティです。
ご興味がある方は、是非ともご参加頂き、誰かのためのモノづくりや孤独を解消するワクワクする取り組みを
一緒に楽しみながらやっていきましょう!

community.camp-fire.jp




(4-1) ★オンラインボッチャ(ミックスボッチャ)装置[10月]

オリィ部の発明検討会での2020年6月での投稿
「コロナ禍で集まれなくても、家からでも、遠くからでもボッチャを楽しみたい」
という相談から生まれたプロジェクト。
PCやスマホを使ってボッチャランプ(斜面台)の左右上下を操作できる装置をメンバーで開発しました。

10月末に本格的なボッチャ大会を開催

単にモノを作るだけではなく、実際にみんなで盛り上がれる大会を開催できたのは非常によい経験でした。

開発者だけではなく、実際に使って楽しんでくれるプレイヤー、ゲームとして大勢が楽しめる様に企画してくれるイベンター、
実況や声援で盛り上げてくれる人、「頑張れ!」と応援してくれる人、そんな人の繋がりがあるからこそ出来る体験だったと思います。
これぞ「仲間達とのモノづくり」の醍醐味だなぁ、と一番実感しました!

こちらも来年に向けて継続進化していきますので、お楽しみに!




(4-2) リアル×バーチャル床プロジェクション投影システム[11月]

個人製作で取り組んできたプロジェクションゲームシステムをオリィ部活動と組み合わせた実験を様々なに実施しています。
公開できるモノとして、上記のオンラインボッチャ大会で取り組んだ、「ボッチャ×プロジェクションゲーム」の取り組み紹介です。

10月のMaker Faire Tokyo会場でも活用できた明るい環境でも投影可能なプロジェクタを床面に投影して使用、
病院や施設に輸送可能なプロジェクタ床固定台を3Dプリンタ等で製作しました。


(1-4)で製作したビリヤードゲームを床面に投影して、リアルボールを転がしてバーチャルボールを当てて遊ぶ事をしてみました!
また、そのうちのボールの一つをゲームコントローラで操作できる様にして、簡単な対戦ゲーム風にしてみました。
こちらも色々と改良出来そうで、これからが楽しみです! (オンラインサロン内で随時進捗を共有予定)






(4-3) スイッチで操作するタンバリン演奏装置[2月]

オリィ部の発足前、肢体不自由の子がみんなと一緒に楽器演奏を出来る事を目指して自由研究したものです。
ワンスイッチ操作でサーボモータを動かし、タンバリン等を演奏できる打楽器用ハンドを製作。
叩いた際に、光の演出や、面白い効果音も加える事ができるので、面白さアップ!

製作方法はこちら
ogimotokin.hatenablog.com


シンプルな機能の装置ですが、使ってみたいというニーズがたくさんあって、その子専用のカスタマイズ改良版も作ったり等、気が付けば既に8個近くも個人的に量産させて頂きました。

またオリィ部内では音楽演奏に関するプロジェクトも立ち上がり、モノづくりだけでなく演奏体験手段や実際のプレイヤーによる演奏練習も進んでいます。本装置も開発メンバーで製作した開発品の一つとして今後も活用できればいいなぁ、と考えています。







(4-4) 分身ロボットによる遠隔応援システム[3月]

オリィ部の発足前、OriHimeサッカーの取り組みの一環で自由研究したものです。
外出できない友人らと分身ロボットを通して、楽器演奏やサッカー応援を一緒にする体験を作りたいとの想いで製作しました。

製作方法はこちら
ogimotokin.hatenablog.com

OriHimeに様々な外部機器を付けて遠隔からの体験機会を増やそうという取り組み、来年もどんどん加速させていきたいですね。








(4-5) 分身ロボットを動かす遠隔メカナムユニット [3月]

オリィ部の発足前、OriHimeサッカーの取り組みの一環で自由研究したものです。
外出できない友人らと分身ロボットを通してサッカーなどのスポーツで遊ぶ体験や、単身赴任先にいながら自宅にいる家族と分身ロボットOriHimeを通して鬼ごっこ等で遊ぶ事も狙って取り組んだ内容です。

分身ロボットOriHimeを搭載可能な台車ユニットを開発。メカナムホイールを搭載しているので、前後左右に自由に移動できる。
4G経由でスマホから台車を操作できるので、自宅からOriHimeを自由に動かす事ができます。
コロナ禍で中断したOriHimeサッカーも、これからオリィ部活動の中で進化していくかも!? お楽しみに!






(4-6) その他

上記はごく一部で、オンラインサロン内でしか公開されていない現在製作中 & ブラッシュアップ中の開発品もたくさんあります。
(さっと数えただけで4個くらいあります)

また、現在進行形の製作品(失敗事例含むw)もサロン内では適宜 進捗状況を参加メンバーと共有しながら進めております。




本業でのロボティクス研究開発活動

上記の個人製作活動、仲間とのコミュニティ製作活動も実施しながら、本業側でも子供達の未来に向けたロボティクス技術の開発を行っております。本年は、私がメインで関わっているプロジェクトのプレスリリースが複数ありましたので、合わせて簡単に紹介させて頂きます

■ 追従型ロボティクスモビリティ(ロボット車椅子) 商品リリース [9月]

・前方の車椅子を自動で追いかける自動追従機能
・障害物があれば自動で停止する自動停止機能
・複数機体で連携して走行できる隊列走行機能
を本業メンバー・関係各者で連携して開発、商品化できるレベルまで完成度・安定性を高めて、無事に発売する事ができました。


■ 自動配送ロボットの住宅地(屋外公道)の実証実験 [12月]



息子の足の代わりとなるモノを作りたい想いで家電開発→ロボット開発者にジョブチェンジして2年半、足の不自由な方の「移動をサポートする技術」の実用化に少しでも貢献できて感慨深いです!
直接的な福祉分野とは少し違う領域から切り込み、長期観点で「息子の様に移動が困難な人たちの世界を広げる」可能性を作りたい、と思って、本プロジェクトに取り組んできました!
 (その代わり、超直接的な困り事解決は、個人でやってしまおうというスタンスです)


本業でも
個人モノづくりでも
友人らとのモノづくりでも
自分の想いは変わらず

息子や家族、障害を抱える誰かの日常に役に立てるモノを作りたい

その手段の一つとして
様々なロボット機器が浸透し
人をサポートしてくれる世界
「できない」を「できる」「楽しい」に変わっていく世界

いろんな垣根を越えて、同じ想いの人達と協力して目指したいですね!





終わりに

気が付けば、製作物の紹介がかなりの長文になってしまい、すいません。

今年は、コロナ禍に始まり、息子の療育園卒園、緊急休校、そして小学校入学する間もなく3カ月に及ぶ手術入院と、家庭としても非常に変化の大きかった1年でした。
ただ、その分、小学校や病院など、新しい環境に変わったからこそ気付けた課題、そしてその課題にタイムリーに課題解決できるモノを作れたのは良かったなぁ、と思います。


今年の豊富と掲げていた

 「①友達とのコミュニケーション」
 「②電動移動(モビリティ)」
 「③好きな事(音楽/ゲーム/斜面)」
をテーマに、息子が「やりたい事」を見つけ引き出していくサポート機器を考える

はしっかりと目標達成できたかなぁ、と思います。


また、スキル面でも昨年までのハードウェアモノづくりからステップアップして、Unityを使ったデジタルコンテンツ製作に取り組む事が出来ました。
その結果、子供の好奇心を引き出す手段が増えて、製作の幅が更に広がった気がします。


更に、「家族以外にも使って貰える環境」にも恵まれたなぁ、と思います。
入院先の病院や、MFTokyo会場、更にはオンラインサロンでのプロジェクト活動など、
自分達が作ったモノが子供達に遊んで貰い、新しい体験に繋がっていったのは
本当に嬉しい事です。また、個別の製作相談も増えてきて、自分のスキルを頼りにしてもらえる実感も感じてきて、一人のエンジニアとしても大変光栄に感じています。



2021年は、息子や家族に向けてのモノづくりとして、

『① 息子用車椅子モビリティの進化』
『② 小学校生活で使えるアシスト機器の開発/導入』
『③ 娘とのコラボによるリアル×バーチャルを組み合わせたリハビリ機器の製作』


に取り組みたいと思います。
特に、息子の小学校生活にて友達と一緒の体験を出来る様なテクノロジーでアシストしていければ、と思っています。


また、コミュニティ活動としては、
特に「仲間とコラボしたワクワクするものを作る」「自分が手放しで使って貰えるモノを作る」
を意識したいと思います!
自分のスキルだけでは足りないところを補いあったり、また一緒に作る/使う/遊ぶ体験を重ねながら、誰かの「できない」を「できる」「楽しい」にしていけるモノを自由研究していきたいと思います。

引き続き暖かく見守って頂いたり、アドバイス等いただければ大変嬉しいです!

「ポータブル電光掲示板」を作ってみた ~ESP32×LED Matrixで日本語表示~

f:id:motokiinfinity8:20201219015030j:plain

製作目的

最近、文字に興味を持ち始めてきた息子。
本を読んでる中でも、ふと介助者の指をひっぱって「これ読んで」と言わんばかりの動作をする。

しかし、知的障害を有し好き嫌いの激しい息子に対して、普通の教科書などでの言葉の学習はなかなか難しい。
興味のない本に対しては、わずか一分も持たずポイっとされてしまう。
また、iPadなどのアプリを使って文字学習を行う事もあるが、
最近ではiPad = YouTube動画を見るモノ」という先入観が打ち勝って、
なかなかiPadを渡しても、文字勉強に活用するのが難しい…

そこで、息子が興味を持つ様な表示方法を用いて、「自然と文字に目がいく様な & 伝えたい言葉を自然に覚える仕掛け」を考えてみた。

製作物

スマホから入力操作できるポータブル電光掲示

スマートフォンやPCでウェブブラウザを開いて文字を入力、その文字を電光掲示板上に大きく表示するというシンプルな機能です。日本語も表示できるので、小学生の漢字のお勉強等に活用できます。


ハード構成

電光掲示板(LEDマトリックス)には、以下の部品を使っています。
amzn.to
amzn.to

4mmピッチ(P4)もしくは3mmピッチ(P3)の横64Pixel×縦32Pixelの電光掲示板を使っています。こちらの制御規格は"HUB75"と呼ばれるものだそうです。

ryosukeeeee.hatenablog.com
qiita.com

本規格について詳細は上サイトを参考にさせて頂きました。
この規格I/Fの良いところは、デイジーチェーンの様に複数のパネルをつなげる事でパネルを大きくする事ができる点です。




f:id:motokiinfinity8:20201219015435j:plain





こんな風に、2枚を接続するのも簡単です。
なお、電光掲示板はピッチサイズも様々なモノが販売されている様なので、必要なサイズに応じて選択すればよさそうです。


制御マイコンは、単体でネットワークに接続可能なESP32 DevKit Cを使いました。
amzn.to

esp32 dev kitCとLEDマトリクスのHUB75端子と直結して使用します。(IDCケーブル フラットリボンケーブル)
Amazon | uxcell メスコネクタ エクステンションワイヤー アダプタ IDCケーブル フラットリボンケーブル 8ピン 2.54mmのピッチ 30cmの長さ 5個入り | DIY・工具・ガーデン

接続ピン構成は以下としました。
R1 : 25 G1 : 26
B1 : 27
R2 : 21 G2 : 22
B2 : 23
A : 12 B : 16
C : 17 D : 18
CLK : 15 LAT : 32
OE : 33

ソフト構成① LEDマトリクス接続

LEDマトリクスの描画方法についていくつかのライブラリを試してみましたが、以下のライブラリを使うと、後述する日本語フォントと相性が良さそうでした。
github.com

描画ライブラリの使い方は、M5Stack等の液晶表示に使われるAdafruit_GFX.hと同じ感覚で使えます。
例えば、以下の様な描画サンプルになります。

#include <ESP32-HUB75-MatrixPanel-I2S-DMA.h>
MatrixPanel_I2S_DMA matrix;
matrix.begin(R1_PIN, G1_PIN, B1_PIN, R2_PIN, G2_PIN, B2_PIN, A_PIN, B_PIN, C_PIN, D_PIN, E_PIN, LAT_PIN, OE_PIN, CLK_PIN ); 
matrix.drawRect(0, 0, matrix.width(), matrix.height(), matrix.color444(15, 15, 15));
matrix.drawRect(1, 1, matrix.width()-2, matrix.height()-2, matrix.color444(15, 0, 0));
matrix.drawRect(2, 2, matrix.width()-4, matrix.height()-4, matrix.color444(0, 0, 15));

matrix.setTextSize(1);  //1サイズは8×8サイズ
matrix.setCursor(23, 7); 
matrix.setTextColor(matrix.color444(15,15,15));
matrix.println("HELLO");
matrix.setCursor(12, 16);
matrix.println("WORLD!");

なお、2枚以上を接続する場合、以下のサンプルコードや接続方法を参考にすると良さそうです。

github.com


ソフト構成② 日本語表示

上記のライブラリを使った場合、8x8の英数字表記のみになります。子供の日本語勉強などのためには日本語表示は必須となります。
そこで、日本語フォントを導入して簡単に表示可能な環境を作りたいと思います。
・東雲フォント 16Pixel x 16Pixel
・美咲フォント 8Pixel x 8Pixel

の2種類のフォントを導入したいと思います。

これらは予めフォントデータをストレージ等に格納しておく必要がありますが、M5Stackと異なりSDカードスロットがないため、今回はESP32内蔵のフラッシュメモリ(SPIFFS)に格納して使いたいと思います。

SPIFFSの使い方、格納方法は以下のサイトを参考にしました。
www.mgo-tec.com

これは非常に便利で3KB以下のデータであれば、SDカード不要でデータを格納して使う事が出来そうです!

■日本語 東雲フォント(16x16)の導入方法
www.riraotech.com

■日本語 美咲フォント(8x8)の導入方法
www.mgo-tec.com


製作ソフトコードの一部は以下になります。

#include <Adafruit_GFX.h>   // Core graphics library
#include <ESP32_SPIFFS_ShinonomeFNT.h>
#include <ESP32_SPIFFS_UTF8toSJIS.h>
#include <ESP32_SPIFFS_MisakiFNT.h>
#include "FS.h"
#include "SPIFFS.h"

const char* UTF8SJIS_file = "/Utf8Sjis.tbl"; //UTF8 Shift_JIS 変換テーブルファイル名を記載しておく
const char* Shino_Zen_Font_file = "/shnmk16.bdf"; //全角フォントファイル名を定義
const char* Shino_Half_Font_file = "/shnm8x16.bdf"; //半角フォントファイル名を定義
const char* Misaki_Zen_Font_file = "/MSKG_13.FNT"; //全角フォントファイル名を定義
const char* Misaki_Half_Font_file = "/mgotec48.FNT"; //半角フォントファイル名を定義
#define MAX_FONT_NUM 20  //表示文字(16x16)の最大文字数

ESP32_SPIFFS_ShinonomeFNT SFR;
ESP32_SPIFFS_MisakiFNT MFR;

#include <ESP32-HUB75-MatrixPanel-I2S-DMA.h>
MatrixPanel_I2S_DMA matrix;

void setup() {
  matrix.begin(R1_PIN, G1_PIN, B1_PIN, R2_PIN, G2_PIN, B2_PIN, A_PIN, B_PIN, C_PIN, D_PIN, E_PIN, LAT_PIN, OE_PIN, CLK_PIN );  // setup the LED matrix
  //フォントデータバッファ
    if(!SPIFFS.begin(FORMAT_SPIFFS_IF_FAILED)){
        Serial.println("SPIFFS Mount Failed");
        return;
    }
    SFR.SPIFFS_Shinonome_Init3F(UTF8SJIS_file, Shino_Half_Font_file, Shino_Zen_Font_file);
    MFR.SPIFFS_Misaki_Init3F(UTF8SJIS_file, Misaki_Half_Font_file, Misaki_Zen_Font_file);
   // LED表示タスク設定
   TaskHandle_t th; //マルチタスクハンドル定義
   xTaskCreatePinnedToCore(DisplayLED, "DisplayLED", 4096, NULL, 10, &th, 0); //マルチタスク起動
}

void loop() {
  mode_switch = digitalRead(MODE_INPUT_PIN);
  if(mode_switch == 0 && mode_switch_old ==1){
    if(font_16x16==true)  font_16x16= false;
    else                  font_16x16= true;
    display_is_changed = true;
    Serial.println(font_16x16);
  }
  
  delay(100);
  mode_switch_old = mode_switch;
}

void DisplayLED(void *pvParameters) {
    while(1){
      //文字表示
      displayStrCenterToLeftShift(displayStr, matrix.color444(15, 15, 15), 100, true);
      display_is_changed = false;
      delay(100);
    }
}

void displayStrCenterToLeftShift(String str, uint16_t color, int shiftTime_ms, bool skip){
  uint16_t sj_length = 0;//半角文字数 
  uint8_t font_buf[MAX_FONT_NUM*2][16] = {0};
  uint8_t misaki_font_buf[MAX_FONT_NUM][8];
  String strmes = str + " ";
  bool stopflg = false;

  //20文字以上の場合、20文字までに制限する
  //if(strmes.length() > MAX_FONT_NUM*3) strmes = strmes.substring(0, MAX_FONT_NUM-1);
  
  matrix.fillRect(0, 8, matrix.width(), 16, matrix.color444(0, 0, 0));
  //displayStrCenter(strmes, color);


  // 東雲フォント(16x16)
  if(font_16x16 == true){
    sj_length = SFR.StrDirect_ShinoFNT_readALL(strmes, font_buf);
    for(int i=0; i<4*sj_length; i++){
      for(int j=0; j<sj_length; j++){
        drawFont16x16(font_buf[j],font_buf[j+1], 8*j-2*i, 8, color);
      }
      if(stopflg == false){
          delay(1000);
          stopflg = true;
      }
      //matrix.fillRect(0, 8, matrix.width(), 16, matrix.color444(0, 0, 0));
      if(display_is_changed == true && skip == true) return;
      delay(shiftTime_ms);
    }
  //美咲フォント
  }else{
    sj_length = MFR.StrDirect_MisakiFNT_readALL(strmes, misaki_font_buf); //String 文字列から一気にフォント変換
    for(int i=0; i<2*sj_length; i++){
      for(int j=0; j<(sj_length/2+1); j++){
        drawFont8x8(misaki_font_buf[j], 4+8*j-2*i, 12, color);
      }
      if(stopflg == false){
        delay(1000);
        stopflg = true;
      }
      //matrix.fillRect(0, 8, matrix.width(), 16, matrix.color444(0, 0, 0));
      if(display_is_changed == true && skip == true) return;
      delay(shiftTime_ms);
    }
  }
}

Maker Faire Tokyo 2020出展情報 (ブース紹介)

f:id:motokiinfinity8:20200926165211j:plain

出展情報

2020/10/3(土)~4(日)に東京・ビックサイトで開催される
メーカーイベント Maker Faire Tokyo 2020に個人として出展予定です。

なお、新型コロナ対策のため、「前売り券のみの販売」「混雑防止」「展示物への接触禁止」などの配慮が行われています。
もしご興味ある方は是非公式サイトから前売り券の購入をお願いいたします!

makezine.jp


私は、『家族のためのモノづくり』というテーマで、
障害を持った息子や家族のために作った自作リハビリ機器・改造おもちゃを出展予定です。

自己紹介はこちら
ogimotokin.hatenablog.com


以下が公式サイトでの私のブース説明になります。
makezine.jp


ただし、大変申し訳ない事に、
初日10/3(土)は家庭の一大イベント(子供達の運動会)に参加するため、
弊ブースは10/4(日)のみの開催とさせて頂きます。
(ご関係者方には迷惑をかけて申し訳ありません。ただし、10/3は夕方に現地到着予定ですので、準備中の状況でしたらお見せできるかと思います)




なお、Maker Faire は昨年2019年に2回(Kyoto/Tokyo)にて初参加させて頂きました。
ありがたい事にMaker Faire Kyoto/Tokyoともに公式ブログにて紹介頂ける等、特にお子様に大好評でした。

makezine.jp


なお、今回の#MFTokyo2020 では、「アシスティブテクノロジー(AT)」カテゴリとして、
以下の10作品を出展予定です。
展示ラインナップ10点、昨年からALL新作状態
になっています(笑)


弊ブースの特徴は、昨年と変わらず
「必要とする人のニーズ目線で
日常的に使える事を目指した
個人モノづくり活動」

です。

Maker Faire用に準備してきたという訳ではなく、
子供や家族、友人らが喜ぶから、成長に必要だから、困りごとをなんとかしたいから、作り続けてきたモノ達をこの機会に展示するスタイルをとっています。


今回はコロナ禍による展示規制により、モビリティやおもちゃ類などの接触して遊んで体験してもらうスタイルを取れないのが非常に残念ですが、
プロジェクタを活用した非接触でのゲームや楽器演奏などの新しい可能性にもチャレンジしてみました。


  

① AT×VR プロジェクション

①-1: 壁 / タッチボールゲーム

[目的] 息子 & 娘向け
・外出できない子供達におうち生活を刺激的に楽しませたい!
・外来リハビリに通えない息子と、立位などのおうちリハビリを楽しく進めたい!(息子が自分から主体的に体を伸ばす様に誘導したい)

[製作物]
自宅内に「チームラボみたいなプロジェクションゲーム壁(インタラクティブ壁)」を製作しました。
息子の大好きな「ボール転がし」をVR化、壁をタッチするとそこからボール転がしゲームが始まります!


[製作方法]
製作方法は以下のページを参照ください。
ogimotokin.hatenablog.com


[コメント]
初めて開発したプロジェクションゲーム作品、今回はプロジェクションブースを設置予定です。センサーを壁から離す事で、壁に接触せず遊べる体験を検討しています。
プロジェクタ光量などの課題があるかもしれませんが、参加された方にはその楽しさを味わってもらえたらと思います。




①-2: 壁&床 / スプラトゥーン風インク塗りゲーム

[目的] 息子 & 娘向け
・外来リハビリに通えない息子の体を大きく動かせる動き(運動)を引き出したい
・塗りたい色を自分で捕まえて選ぶ経験を作りたい
スプラトゥーン好きな母&娘にも喜んで貰いたい(笑)

[製作物]
壁や床を触るとスプラトゥーンの様にインクをべちゃっと塗りつける事ができます!
更に、顕微鏡風デバイス上のLEDを押すと、その下にある色を捕まえれます!


[製作方法]
製作方法は以下のページを参照ください。
ogimotokin.hatenablog.com

[コメント]
触ったところの色を塗るというシンプルながらも楽しいゲーム体験ができました! リアルだと勇気がいる壁塗りたくりも、これなら簡単にできます! 自分で触るだけではなくて、例えば移動ロボットや道具を使って塗りたくったり等、可能性がどんどん広がりそうです





①-3: 天井&壁 / 青空気球打ち上げゲーム

[目的] 息子 & 娘向け
・足手術で入院中 ベットから動けない息子でも遊べる寝たままアトラクション

[製作物]
天井向きにプロジェクタを投影し、天井に向けて手を伸ばすと手の位置から気球が飛び出すプロジェクションゲームを作りました。
飛行機に当たらずに無事に空の彼方まで気球を飛ばせられるかなー?


[製作方法]
上記①-1,2 などのプロジェクションゲームと基本原理は同じです。センサーをベット上に設置し、プロジェクタを天井に向ける様に3Dプリンタで位置調整治具を設計しました。

[コメント]
息子の付き添い入院中、退屈そうに毎日過ごす様子を見て、とっさに思いついた開発品です。基本原理は壁・床と同じですが、障害物センサーの設置・調整方法が大変苦労しました。また、こちらの作品をTwitterに上げたところ大変反響があり、「めざましテレビ」に出演するきっかけにもなりました。
「入院中の子供達にエンタメが必要」と強く実感させられた… 次へ繋げていきます!





①-4: 壁&床 / ハイパービリヤードゲーム

[目的] 息子 & 友達向け
・入院中の息子や子供達に全身を動かして遊べるゲームを提供したい!


[製作物]
壁や地面にプロジェクタを投影し、バーチャル上のボールにリアルのものを当てると激しくボールをふっとばせるビリヤード風ゲームを作りました! 思いっきりボールがはじけ飛ぶ感じが楽しい!

また、このゲームを含めて、実際に入院先の子供達にこれらのプロジェクションゲームを体験して貰いました!



[製作方法]
上記①-1,2 などのプロジェクションゲームと基本原理は同じです。ただし、より画面~センサー間の設置位置調整が必要となるため、独自のセンサーキャリブレーションシステムを作り、自宅以外の初めての環境でも簡単に位置調整をできる様にしました!


[コメント]
「ボール転がし」好きな息子の好奇心を引き立たせるため、あえてオーバー気味にボールを吹っ飛ばしたのが大人気でした!(子供だけでなく大人にも) ちょっとしたサプライズ感に人は心動かされるのだなぁ、と痛感! これも、ヒトが触るだけでなく実際にボールを使ったビリヤードの様な遊び方ができても楽しいかも!? これからの進化をお楽しみに!




② AT×キッズ&ファミリー

②-1: スイッチで選ぶ「かおす暴走くまさん」

[目的] 息子向け
・知的にも遅れのある息子の好奇心をこじ開け、自分の意志で「選ぶ」行為を楽しく経験できる様したい


[製作物]
「ふつう」「ぼうそう」「かおす」の3モードをスイッチで選択すると、激しい動きになる(笑)
簡単な技術で、子供や大人を、笑顔にしてくれる魔法のくまさん

[製作方法]
スイッチに応じて、使う電池の本数を電子回路で切り替えるというシンプル製作

[コメント]
昨年に展示して、とにかく絶大な人気だった「暴走ワンワン」の進化系。
ogimotokin.hatenablog.com

ブースへの客引きとしてブース先頭に配置予定です!





②-2: パリピ改造くるくるチャイム

[目的] 息子向け
・ボール転がしが大好きな息子の好奇心を広げたい
・息子の指先を使うリハビリ練習を自主的に行う様に仕掛けたい

[製作物]
くるくるチャイム内部に、測距センサーを埋め込み、ボール位置を検知させ、ボール位置に合わせて、LEDテープ& 効果音を鳴らすという追加改造


[製作方法]
筐体内に回路を収めるため、Arduino Pro Microを使用。
詳細な製作方法は以下を参照ください。

ogimotokin.hatenablog.com


[コメント]
2020年1月に製作して以降、お気に入りのおもちゃの一つとして、遊び続けてくれました。
おかげで筐体は傷だらけですが、今でも安定して動いてくれてます。

地味ですが、こういう既製品改造は「日常使用のためのモノづくり」のアプローチに適しているので、
その観点でのサンプル紹介です。









③ AT×ミュージック

③-1: 視線入力で演奏する8音ベル演奏装置

[目的] 息子 & 友達向け
・昨年の息子の療育園最後のクリスマス会で、肢体不自由の同級生8人で何か演奏体験をできる様にしたかった
・手を動かすのが苦手な子供も、自分の意志で演奏する機会を作りたい

[製作物]
・8個のハンドベルを8個のスイッチで鳴らします(ハンドベルを持てなくても指先一つで演奏可能)
・8個のスイッチが全部押されると自動演奏が始まる点灯式モードも用意。
視線入力I/Fにも対応! 鳴らしたいベルを見るとその音が鳴る超能力体験!

[製作方法]
ハンドベルを鳴らすのにはソレノイドを使っています。8個のソレノイドを使い、一つのマイコン(ESP32 Dev Kit)で制御しています。
また、視線入力システムとしては、ハンドベル演奏装置にUSB経由でWindows PCを接続。視線入力デバイスは業界お馴染み Tobii Eye Tracking 4C、操作アプリは、OriHimeEye+自作アプリ を使っています。


[コメント]
電気回路(ソレノイド) / 筐体設計(3Dプリンタ) / 台製作(木材DIY) など2019年の数々のモノづくりで経験したノウハウを駆使して、わずか2週間分(深夜時間のみ)で実現した思い出の機器です。

ただ、今回のMFTではスイッチへの接触は難しいため、視線入力の体験に加えて、「非接触対応」に対応した新しい非接触演奏体験も製作してみたので、お楽しみに!




④ AT×ロボット

④-1: 分身ロボットを動かす遠隔メカナムユニット

[目的] 家族&友達向け
・単身赴任先にいながら、自宅にいる家族と分身ロボットOriHimeを通して鬼ごっこ等で遊ぶため
・外出できない友人らと分身ロボットを通して、サッカーなどのスポーツで遊ぶため
(分身ロボットサッカーの取り組みに向けた開発)

[製作物]
・分身ロボットOriHimeを搭載可能な台車ユニットを開発。メカナムホイールを搭載しているので、前後左右に自由に移動できる。
 4G経由でスマホから台車を操作できるので、自宅からOriHimeを自由に動かす事ができます。

[製作方法]
台車はAmazonで購入したメカナム台車キットを使っています。
制御自体は、ESP32マイコン を使い、2つのモータドライバを制御します。上記の電動車椅子と同じ様な無線コントローラを接続可能な事に加えて、UART通信経由でObnizをつなげる事も可能です。
これにより、『①スマホからBlynkアプリ』『②スマホからブラウザ経由でObniz』の2種類からスマホ操作が可能です。

[コメント]
昨年のMaker Faire Tokyoでは、分身ロボットサッカー企画者のてらきゅーとーまさんや分身ロボットカフェのパイロットさえちゃんにも遊びに来てもらい、子供達の操縦するロボットと簡易サッカーを楽しんで遊んでいました。
わちゃわちゃ子供が集まってカオスな感じになってたのが、これまた楽しかったです。
今回の展示会では、大阪にいる家族にOrIHimeで会場に遊びに来てもらい、子供達の操作するロボットと1on1で遊んで貰おうと考えています!


④-2: 分身ロボットによる遠隔応援システム

[目的] 友達向け
・外出できない友人らと分身ロボットを通して、楽器演奏を一緒にする体験を作りたい

[製作物]
・先日に開発した打楽器ハンドを、OriHime経由で操作させるため、OriHimeの腕に加速度センサーを搭載し、
OriHimeの腕の動きに応じてスイッチON/OFFやマスタースレーブ動作を実現するユニットを作りました。
これにより、OriHimeを使いながら簡単な楽器演奏なども実施できます。


[製作方法]
製作方法は以下のページを参照ください。
ogimotokin.hatenablog.com


[コメント]
大阪にいる家族にOrIHimeで会場に遊びに来てもらい、そこで演奏アームを振って遊んだりするデモを予定しています!


④-3: コミュニケーションを楽しくするあいさつ&じゃんけんロボットハンド

[目的] 息子&友達向け
・小学校へ入学した息子がクラスの子供達と打ち解けるきっかけを作りたい
・言葉を話せない息子が自分の意志で「友達とあいさつする事」を習慣づけていきたい

[製作物]
ボタンを押すと「おはよう」「バイバイ」等、自分の口&手の代わりに可愛く挨拶してくれるロボットハンドを製作しました。

こちらをTwitterに公開したところ、「是非 使ってみたい」とのお声がけを頂き、追加でカスタム量産しました。
また、合わせて「じゃんけん機能」も追加しました!


[製作方法]
開発技術はシンプルで、1つのArduinoマイコンで3つのサーボモータ+スピーカを動かしています。しかし、ただ技術的に動くだけではなく、日常生活で「使い続ける」工夫はいたるところに散りばめられています。例えば、車椅子への固定方法、電源スイッチ形状、スピーカ音源など

[コメント]
開発きっかけは、吉藤オリィさんと一緒にSMAの女の子が自分の意志でじゃんけんするためのロボットハンドです。

それが1年経って、我が子の就学に向けたコミュニケーションツールに進化した!
友達の困り事を解決するため試行錯誤して作ったツールが、こうして我が子の成長に繋がってく素敵なループ!

我が家の小学校生活で欠かせない個人開発ツールになっています。お父さんの開発品が我が子の成長に繋がる様に引き続きサポートしていきます。

自宅用プロジェクションゲームをUnityで作ってみた①② 

f:id:motokiinfinity8:20200901004328j:plainf:id:motokiinfinity8:20200901004347j:plain

製作目的

息子のリハビリ・歩行器&車椅子練習のモチベーション(好奇心)を引き出したい!

が一番のきっかけでした。
そして、その好奇心を引き出す手段として「子供が好きなビジュアルコンテンツを組み合わせてみたい」と新しくチャレンジしてみようと思いました。


今年1月に東京旅行で遊びに行った「アクアパーク品川
水槽のある部屋一面に投影されたプロジェックション空間。
壁を触るとフワフワとパーティクルが浮き上がり、興奮する息子!
気が付けば、1時間以上もその場を離れようとしない息子

f:id:motokiinfinity8:20200901010853p:plain

今まで息子の好奇心を引き出すために、おもちゃを改造したり、LEDで光らせたり、音を鳴らしたり、いろいろと試行錯誤してきましたが、この様なビジュアルコンテンツはどの手段以上に子供の好奇心を引き付ける魅力がある事を痛感しました!
これを、例えば普段の生活の中や、普段のリハビリ、歩行器練習/車椅子練習に取り入れていくと、
もっと息子のやる気・モチベーションを引き出す事ができ、
「できる」の可能性を広げる事ができるのではないだろうか!?

というワクワク心がきっかけです。

しかし、私自身は本業でも趣味でもハードウェア(特に電気ハード寄り)専門なモノづくりをする事が多く、ビジュアルコンテンツはもちろんソフトアプリの開発経験がありませんでした。

そこで、まずは ゲームコンテンツの作り方を学ぶべく、Unityを勉強しはじめました!
2020年2月からスタート、とりあえずUnityの参考書を写経してC#やUnityの構造の基礎を学びました。


何を作ろうかなぁ、と考えていたところでの、
突然のコロナ禍

約2か月近くのStay Home、外来リハビリを受けれないという課題に対面した事を通して、
・外出できない子供達におうち生活を刺激的に楽しませたい!
・外来リハビリに通えない息子と、立位などのおうちリハビリを楽しく進めたい!
 (息子が自分から主体的に体を伸ばす様に誘導したい)

を目指したバーチャル&アトラクションリハビリシステムを作ってみようと考えました!

VRヘッドセットをつければ、比較的簡単に没入感の高いビジュアルコンテンツを楽しむ事はできるかもしれません。

しかし残念ながら、息子は年齢的にもVRゴーグルを装着できず、また体に装着する事を極端に嫌うため、VRを体験する事はできません。

VRゴーグルが使えないならば、息子の周りの空間をVRっぽくすればよい!

という発想転換で、

自宅内に
チームラボみたいな
プロジェクションゲーム壁(インタラクティブ壁)

を開発してみました!

制作物①

壁をタッチするとボールを転がせるプロジェクションゲーム壁 (2020/5)

息子が大好きな「ボール転がし」を寝室の壁上にバーチャル再現しました。壁をタッチするとそこからボールが現れ、そのまま坂道を転がっていきます。壁の跳ね返りでタイミングがあれば、ボールは激しく飛ばされます。最終的に右下にあるマトに当たればゴールです!

狙い通り、息子は興奮して、食い入る様にボールの転がる様子を見続ける!
興奮して、自然と足で踏ん張り、簡単な支え付きで立位を取ってくれます!
そして、最上段からボールを転がしたい欲が激しく強く、何度も手をおもいっきり上げてくれる!
よし、狙い通り!!!


制作物②

壁をタッチすると色を塗りたくれるプロジェクションゲーム壁 (2020/6)

スプラトゥーン好きな娘や妻にも遊んで貰える事を目指し、壁を手でインクべたべたに塗りつぶせるゲームを作りました。顕微鏡風デバイスの上のLEDを押すと、その下にある色を捕まえれる! その色を使って、壁に塗る色を自分で選びます!
色の認識を身に着けるという学習効果も狙っています!



参考図書

Unityの最初の学習として、この2冊を読みました!

①Unityの教科書 Unity2019完全対応版 2D&3Dスマートフォンゲーム入門講座

Unityの概要やゲーム制作のプログラム構成などを理解するのがやりやすかったです。(最初の一歩向き)


②Unity 3D/2Dゲーム開発実践入門 Unity 2019対応版

①では触れ切れていなかった細かい設定や、本格的なゲーム制作を体験するのに良い一冊でした


また、Unityを学ぶにあたり、以下のサイトを参考にさせていただきました。
xr-hub.com
www.notion.so


システム構成

本プロジェクションゲームは、プロジェクタとセンサーを使っています。センサーはLiDARと呼ばれる測域センサーを使って壁面にある物体を検出しています。

f:id:motokiinfinity8:20200906215158j:plain

このセンサーで物体=人の手足を検出した場合、その測定距離&角度に対応したゲーム画面位置にイベントを発生させる仕組みになっています。

こちらの構成詳細については、こちらのサイトに詳しく掲載されています。

koki0702.hatenablog.com


ハードウェア

■プロジェクタ

家庭での使用を想定した場合、投影場所&距離が課題になります。我が家はマンションで広くないため、できる限り単距離から投影できる機器が望ましいです。また、自宅だけではなく、リハビリ病院や友人宅など複数環境で実施する際の携帯性を配慮した結果、「超単焦点タイプ」のプロジェクタを購入しました。

これを使えば、壁だけでなく、天井や床など多様なプロジェクションゲームを楽しめます。

■センサー

壁平面(二次元)上の物体を検出するのに、今回はLiDARと呼ばれる測域センサーを使いました。これは、車の自動運転やロボットの自律移動におけるSLAM/Navigationで定番として使われるセンサーです。


本命は、北陽電機のURGセンサーです。

0.25度単位の解像度で最大4mを検出できる精度が何よりの魅力です。Team Labの会場でも、北陽センサーのシリーズ品が壁にとりついているのを見ました(たぶん)

ただし、価格が高価で個人購入をするには抵抗があるため、今回は廉価LiDARの使いこなしの検討も含めて、RPLiDAR社のLiDARを使ってみました。

これは、物理的に回転する筐体タイプ、0.7~1度単位の解像度とつかいにくい面も多いです。ただ、価格が1/10という魅力があり、横幅2m程度のスクリーン幅なら1cm程度の検出精度は確保できそうなので、子供向けリハビリシステムとしてであれば使えそうですね。

物理的に回転するため縦置きしづらい点は3Dプリンタで固定治具を制作しました。

f:id:motokiinfinity8:20200907001554p:plainf:id:motokiinfinity8:20200907001333j:plain


■ゲーム②固有: 色検出デバイス

上記制作には、PCと無線接続可能かつ小型デバイスとして「M5Atom」を使ってみました。本体PCとの通信は省電力化も踏まえて「Bluetoothシリアル」としました。

部品名 数量 購入先
①M5Atom Matrix 1個 Amazon
②色検出センサ 1個 スイッチサイエンス
③5V昇圧回路 1個 Amazon
④単三×2電池パック 1個

制作システム

■Lidarから距離検出方法

北陽LidarのUnityライブラリは以下のサイトを参照ください。(C# サンプル などが参考になります)

sourceforge.net

URG センサとのやりとりには SCIP コマンドを使うそうで、SCIPライブラリも忘れずにインポートしておきます。
チュートリアルのページを参考に動作確認していきます。

また、RPLidarの導入に対して、まずは以下のマニュアルに従い動作確認を行いました。
http://bucket.download.slamtec.com/e680b4e2d99c4349c019553820904f28c7e6ec32/LM108_SLAMTEC_rplidarkit_usermaunal_A1M8_v1.0_en.pdf
確認としては、以下のframe_grabber を使用します。
Release release/v1.12.0 · Slamtec/rplidar_sdk · GitHub

また、Unityで使用する際には、以下のライブラリを使用します。
rplidar · GitHub Topics · GitHub

このサンプルを使って、RPLidarのクセを確認してみたところ、以下の点を注意する必要がありそうです。
・15cm以下は取得できない
・オブジェクトの境界線で0値になることが多い
・1周期内の取得データでも同じ角度における距離情報ではない(角度はデータ行列内のthetaに格納されている)



■人タッチ位置の検出方法

上記でセンサーから周囲物との距離一式が取得できる様になれば、
ゲームスタート時点でのセンサー情報との差分を見れば、人のタッチ位置と思われる座標を検出することができます。
そこでポイントになるのは、「どこまでが一つ物体と捉えるのかクラスタリングする」事です。

この辺りは、以下のサイトの情報を参考にさせていただきました
github.com
koki0702.hatenablog.com
littlewing.hatenablog.com
https://www.iplab.cs.tsukuba.ac.jp/paper/master/shige_master.pdf

上記は北陽のLidarベースで、クラスタリングを行っていますが、この考え方をRPLidarのデータ形式に変更してやりました。

なお、「センサからの距離情報」→「ゲーム画面上での座標」への変換について、以下のサイトではホモグラフィ変換行列を使って、画面角4点から正確な座標値を取得していますが、
今回の用途ではそこまでの正確性はいらないと考え、2点(センター位置と右上)とプロジェクタ台形補正機能で設定しています。
(真面目に精度が必要なコンテンツになった場合に改めて考えたいと思います)


■ゲーム①固有開発 : 使用アセット等

ベースアセットは、当初 勉強として活用していたUnity本の例題に挙げられたゲーム。その舞台をベースに、Unity画面上で斜面オブジェクトを生成しました。
ゲーム画面での座標から3D世界上の斜面にボールを発生させるのに、ScreenPointToRay関数を使用しています。

また、タッチ時のチャタリングによりボールが過剰に発生しすぎない様に、ボール生成条件の中に「隣接のボールオブジェクトとの距離がD1以上離れている場合」を追加しました。

BGMについては、以下のサイトのモノを使わせていただきました。

musmus.main.jp



■ゲーム②固有開発 : 使用アセット等

単なるペイントではなく、インクっぽいエフェクトで塗る感じを表現するため、InkPainter というアセットを活用しました。

InkPainterは設定されたテクスチャーをあたかもインクが塗られた様に上書きされていく様です。こちらの使い方は以下のサイトを参考にしました。
esprog.hatenablog.com
qiita.com

■ゲーム②固有開発 : M5Atomとの接続方法

USBによるシリアル通信、WiFiによるWebSocket通信など、いくつか手段は考えられますが、特にデバイス側の電池長持ちの観点や使いやすさの観点を踏まえて、「Bluetooth」を選択しました。そして、調べてみたところ、「Bluetooth Serial」であればPC側が通常シリアル通信と同じ手段で実施できるという事で、Bluetoothを使いたいと思います。

Unity側は、UniRxというプラグインを使ってSerialポートからデータをReadします。

using System.Collections;
using System.Collections.Generic;
using System.Threading;
using System;
using System.IO.Ports;
using UnityEngine;
using UniRx;
using Es.InkPainter.Sample;

public class SerialController : MonoBehaviour
{
    public string portName="COM8";
    public int baurate = 115200;

    private GameObject lrfPainter;
    public Vector4 color;
    SerialPort serial;
    bool isLoop = true;
    public bool isConnect = false;
    public bool useM5atom = true;
    public float timeOutDiscon     = 5.0f;
    public float timeOutLoop = 20.0f;
    private float timeElapsed, timeDiscon = 0.0f; 

    void Start()
    {

        lrfPainter = GameObject.Find("LrfPainter");
        color = new Vector4(1.0f, 1.0f, 0.0f, 1.0f);

        this.serial = new SerialPort(portName, baurate, Parity.None, 8, StopBits.One);

        try
        {
            this.serial.Open();
            isConnect = true;
            useM5atom = true;
            Scheduler.ThreadPool.Schedule(() => ReadData()).AddTo(this);
        }
        catch (Exception e)
        {
            isConnect = false;
            useM5atom = false;
            Debug.Log("can not open serial port");
        }
    }

    private void Update(){
        timeElapsed += Time.deltaTime;
        timeDiscon += Time.deltaTime;

        if (timeElapsed >= timeOutLoop){
            if (useM5atom == true){
                if (isConnect == false){
                    try
                    {
                        this.serial.Open();
                        isConnect = true;
                        Scheduler.ThreadPool.Schedule(() => ReadData()).AddTo(this);
                    }
                    catch (Exception e)
                    {
                        isConnect = false;
                    }
                }
            }
            timeElapsed = 0.0f;
        }
    }

    public void ReadData(){
        while (this.isLoop){
            string message = this.serial.ReadLine();
            isConnect = true;

            if (message.StartsWith("RGB_"))
            {
                //Debug.Log(message.Substring(4, 2));
                float r, g, b;
                r = (float)Convert.ToInt32(message.Substring(4, 2), 16)/255;
                g = (float)Convert.ToInt32(message.Substring(6, 2), 16)/255;
                b = (float)Convert.ToInt32(message.Substring(8, 2), 16)/255; 
                color = new Vector4(r, g, b, 1.0f);
                timeDiscon = 0.0f;
            }
        }
    }

    void OnDestroy()
    {
        this.isLoop = false;
        this.serial.Close();
    }
}

M5Atom側は

#include <M5Atom.h>
#include <Wire.h>
#include "Adafruit_TCS34725.h"
#include "BluetoothSerial.h"

Adafruit_TCS34725 tcs = Adafruit_TCS34725(TCS34725_INTEGRATIONTIME_50MS, TCS34725_GAIN_4X);
BluetoothSerial bts;

float r, g, b;
float ratio_h = 2.5;
float ratio_l = 0.6;  
uint8_t DisBuff[2 + 5 * 5 * 3];

void setBuffP(uint8_t posData, uint8_t Rdata, uint8_t Gdata, uint8_t Bdata){
    DisBuff[2 + posData * 3 + 0] = Rdata;
    DisBuff[2 + posData * 3 + 1] = Gdata;
    DisBuff[2 + posData * 3 + 2] = Bdata;
}

void setBuff(uint8_t Rdata, uint8_t Gdata, uint8_t Bdata){
    for (uint8_t i = 0; i < 25; i++)
        setBuffP(i, Rdata, Gdata, Bdata);
}

void shftBuff(){
    for (uint8_t i = 24; i > 0; i--)    {
        for (uint8_t j = 0; j < 3; j++)
            DisBuff[2 + i * 3 + j] = DisBuff[2 + (i-1) * 3 + j];
    }
}

void setup() {
  DisBuff[0] = 0x05;
  DisBuff[1] = 0x05;
  M5.begin(false, false, true);
  Wire.begin(26,32,10000);
  bts.begin("M5atom");//PC側で確認するときの名前
  Serial.begin(115200);

  setBuff(0x20, 0x20, 0x20);
  M5.dis.displaybuff(DisBuff);

  if (tcs.begin()) {
    Serial.println("Found sensor");
  } else {
    Serial.println("No TCS34725 found ... check your connections");
    while (1);
  }
  tcs.setIntegrationTime(TCS34725_INTEGRATIONTIME_154MS);
  tcs.setGain(TCS34725_GAIN_4X);

  r = 255;
  g = 0;
  b = 0;
}

void loop() {
  uint32_t sum = 1;
  uint16_t clear, red, green, blue;

  M5.update();

  if(M5.Btn.wasPressed()){  
    tcs.setInterrupt(false);
    delay(60);
    tcs.getRawData(&red, &green, &blue, &clear);
    tcs.setInterrupt(true);

    sum = clear;
    r = red; r /= sum;
    g = green; g /= sum;
    b = blue; b /= sum;
    r *= 256; g *= 256; b *= 256;  
    
    if(r > 255) r= 255;
    if(g > 255) g= 255;
    if(b > 255) b= 255;    
  }
  setBuff((uint8_t)r, (uint8_t)g, (uint8_t)b);
 
  Serial.print("RGB_");
  Serial.print(int2str((int)r));
  Serial.print(int2str((int)g));
  Serial.println(int2str((int)b));
  bts.print("RGB_");
  bts.print(int2str((int)r));
  bts.print(int2str((int)g));
  bts.println(int2str((int)b));

  uint16_t disp_color = (int)(r/8)*32*64+(int)(g/4)*32+(int)(b/8);
  M5.dis.displaybuff(DisBuff);
  delay(200);
}


String int2str(int n){
  if(n < 16){
    String ret = "0";
    ret.concat(String(n, HEX));
    return ret;
  }else{
    return String(n, HEX);
  }
}

終わりに

子供の好奇心を掻き立てさせ、
自宅にいながら体の動きを連動して部屋空間を作れるプロジェクション壁!
可能性の塊かもしれない!
ワクワク!!

そして、単なるバーチャル映像(ソフトウェア)だけでなく、色検出デバイスやおもちゃなどの物理的なデバイス(ハードウェア)を組み合わす事で、
子供の楽しみ方はもっと広がるんじゃないかなぁ、と実感してきた!
(いわゆる『バーチャルとリアルの掛け合わせ体験』ですな)


本当に継続して楽しめるか、そして体を動かす運動観点で意味があるのかはあくまで仮説。
色々と何パターンが作ってみて、息子や子供達にウケが良さそうなモノをどんどんと進化させていきたいなぁ、と思います。


センサーは床設置で持ち運びできる&簡単設定できる様にしてるので、もう少し改良したらいつものリハビリセンターや学校、友達の集まりに持っていきたいし、
あと、リハ先生には是非ともご意見&改善案など頂きたいところです

歩けない息子の足代替モビリティ開発記② ~手を繋いで一緒に散歩~

f:id:motokiinfinity8:20200524140818j:plainf:id:motokiinfinity8:20200524143548p:plain

物理的に歩くのが難しく、また知的障害もあり電動機器の操作習得が難しい息子。
そんな息子の「自分で動きたいという意志を引き出す」事を目指した
息子専用のモビリティ(電動車椅子)の開発・練習記録を記しています。


■前回の記事はこちら
ogimotokin.hatenablog.com


2019年8月から取り組み始めたこの個人プロジェクト、
本記事では2020年1月~5月にかけて様々な試行錯誤を繰り返した軌跡を記します。

その結果、少しずつですが、
「自分の意思で進む方向を選び操作に反映する!」
様になりました!

GWには成果報告として、
分身ロボットOriHime経由で実家の母に孫の運転する姿を見て貰いました!

www.youtube.com

若干6歳ながら、おばあちゃんと姉の二人を乗せて、颯爽とドライブする息子!
(こんな経験、普通に生活していてもなかなか得られない経験だな、と思います)

自分が作ったモノが
子供の成長を後押しして、
その成長に直結してる事を感じれて、
   
本当にうれしい!

と、大変胸が熱くなりました!
   




以下の記事では、ここに至るまでの試行錯誤のモノづくり&練習の様子を記録として残したいと思います。




取組み④  一人で乗れるための専用シート増設(2020年3月)

前取組み③で実施した「大人用車椅子+1ボタンスイッチを使った移動練習」により、住宅街など自分の身近な屋外環境で練習する事が効果的だなぁ、という感触を受けました!

その一方で、座位大人用車椅子のため息子一人で座る事ができない事が欠点でした。
お母さんの膝に乗せて走行するスタイルによる安心感は、取組みスタートとしては間違いなく効果的だったと思いますが、『「自分の力で動かしてるんだ」という自信・意志を高める』という目的に向けて「自分一人で座れる工夫」事は必須と考え、なんとか出来ないかと試行錯誤しました。

工夫ポイント

どうしてもエンジニア脳な自分は、アルミフレーム等で座面フレームを作る、DIY加工する等の方法を試行錯誤しましたが、、、、

結果として、
【廃棄予定になった息子用椅子の座席を車椅子シートに乗せる&ホームセンタで購入した荷物牽引ヒモで固定】
という最もシンプルな方法を選びました(笑)
     
追加費用1000円というコスパの良さ。
とっさに思いついて試してみたら、、、、ピッタリフィット!
80kg荷重対応紐のため、安定性も問題なし!
なんでも、まずは手を動かしてやってみる事、大事ですね!

f:id:motokiinfinity8:20200523205257j:plainf:id:motokiinfinity8:20200523205305j:plain

荷物用牽引ヒモで取り外しも簡単なため、折り畳み電動車椅子の特徴を活かして車の荷物入れに全部納められる!
これにより、遠くの公園へ車で向かい電動車椅子の練習も出来るなど、練習する環境の自由度を上げる事ができ、息子に適した練習場所を探す事もできました!

変に難しく考えず、簡単な工夫で出来る事が一番ですね。

取組み成果

さすがに一人で乗る状況だと怖がって泣き出すかなぁ、、、と思っていましたが、初回から何食わぬ顔で乗ってくれました!!!(良い意味で期待を裏切られました) 

f:id:motokiinfinity8:20200523205233j:plain

直近3カ月、母の膝を通して車椅子に乗る体験を重ねてきて、「車椅子」が息子にとって自然な位置づけになってきたからこそ、一人でも乗る事を受け入れてくれたんだろうなぁ、と思います。



f:id:motokiinfinity8:20200523211517p:plain

最初からこの一人スタイルにしていたら、おそらく泣き叫んで練習にならなかったと思います。

焦らずに、その子が受け入れやすい様に段階を踏む事が大事!




取組み⑤ 「前/左/右」を選択できる息子専用コントローラの開発(2020年3月)

ここまでの取組みのおかげで、『1ボタンスイッチによる前進操作』は出来る様になってきました!
30分近くずっとボタンを押して走り続ける程、慣れてきた様です。
そこで、次のステップとして「自分の意思で進みたい方向を選択する」事を目指し、息子用の方向指示コントローラを製作しました。

f:id:motokiinfinity8:20200523220937j:plain

工夫ポイント

コントローラとしてはとにかくシンプルに、余計な追加ボタンを作らず「前」「右」「左」を選択させるだけにしました。
また、言葉の意味もまだ十分伝わらないため、直感的に分かりそうな矢印で表現しました。

筐体は、息子の手のサイズに合わせてCADで設計し、3Dプリンタで製作しました。

f:id:motokiinfinity8:20200523220624p:plain

スイッチ部分は以下のマイクロスイッチ(基板実装用)の上に、3Dプリンタ製カバーをはめています。

タクトスイッチ(大)10個セット: パーツ一般 秋月電子通商-電子部品・ネット通販


また、本体ユニットとはスイッチ用GPIO線を3本繋げています。
しかし、物理的に3.5mmジャックのケーブルを3本繋げるのは、運用上面倒くさいので1本のケーブルに束ねました。

ちょうどいい汎用的な4Pinコネクタがないかを調べたところ、【ミニDIN4Pinコネクタ】が入手性も良さそうなので、これを使いました。
(昔のテレビ/レコーダで使われていたS端子コネクタの事です)

ミニDINソケット(メス) 4P (S端子コネクタ) 基板取付用: パーツ一般 秋月電子通商-電子部品・ネット通販
ミニDINコネクタピッチ変換基板: 組立キット 秋月電子通商-電子部品・ネット通販

この二つの部品の組み合わせで基板上にミニDIN4ピンをつなげる事ができます。この4Pinのうち3Pinに「前スイッチ」「右スイッチ」「左スイッチ」を割り当てました。


成果

まずは無邪気に息子にコントローラを渡してみたところ、、、予想通り難しかったです。
ボタンを適当にポチポチ押して予想外の方向に動いてしまった事に拒否感を示し、、、泣き叫ぶ始末。

ですので、ここはもう一度初心に帰り、お父さん or おねえちゃんが座席に座り、息子を抱きかかえる形で操作のお手本を見せてあげる様にしてみました。

f:id:motokiinfinity8:20200523225309j:plainf:id:motokiinfinity8:20200523225330j:plain

また、最初は「右ボタン」「左ボタン」は使わず、3つのボタンから「前ボタン」を確実に選択してもらう事を意識しました。
『真ん中のボタン(前ボタン)を押すと今までと同じ様に前に進むんだよ!』
変化点を少なくして、受入れハードルを下げる様に取り組みました。

週末3回くらい繰り返したら、コントローラの操作イメージをなんとなく理解できた様で、必ず「真ん中のボタン」を自分で選び、前へ進める様になりました!


取組み⑥ 「してあげる」役割を作る介助者搭乗用ステップ(2020年4月)

www.youtube.com


屋外で息子と電動車椅子練習をし始める様になって、改めてお姉ちゃんの存在の大きさを感じました。道路に車が来てないかをチェックしてくれたり、路面の段差状況を見てくれたり、、、
弟から見たら、まさに「介助してもらう存在」

だけど、息子も「ただ介助してもらう」だけでなく、逆にお姉ちゃんに対して出来る役割を作って上げれないかなぁ、と考えました。

そこで、友人から以前に頂いた「子供用バギーステップ」を車椅子後方に荷物固定紐で取り付けて、介助者用の簡易台を付けました。
これにより、お姉ちゃんが歩き疲れた時、弟はお姉ちゃんを車椅子に乗せて運んで「あげる」事ができる!

お姉ちゃんとしては新しい乗り物に乗る感覚で楽しい!

   
「してもらう」から「してあげる」へ
   
そんな立場の逆転

という体験を作ってあげる事ができました!

技術としては超シンプルなステップ台なのですが、この立場の逆転の考え方、結構深くて好きです!
将来的には、これで学校の友達を乗せてあげれる様になって欲しい!

  



取組み⑦ 子供の手を繋げる片手用介助コントローラ開発(2020年5月)


www.youtube.com

車椅子練習としていろんな練習コースを模索している中で、困った事が…
息子は大きな車の音が苦手なので、例えば車が近づいてくると怖がってテンション下がってしまいます。
この対策として、手を繋いで気持ちを落ち着かせてあげるのが最も有効です。
しかし、現状の介助コントローラは息子が使う事も想定して大きめに作ってしまったため、両手がふさがっていました。
無理やり片手で操作すると、咄嗟の緊急停止がかけれないため、安全面で不安がでます。
そこで、一緒に手を繋いで安全にお散歩する事を目指して片手のみで操作できる「介助用コンパクト無線コントローラ」を製作しました。

工夫ポイント

子供の手つなぎと安全面の両面を担保させる事を目指しました。

操作感の工夫として、   
・親指ジョイスティックの操作のみで進行の左右方向の補正が出来る
→ 狭い通路でも本人の意志を尊重しながらうまく進む事が出来る
   
ジョイスティック押し込みで緊急停止(子供操作を受け付けなくする)
→ 不意の道路飛び出しを防ぎ、安全を担保
   
これにより、【子供と手を繋ぎながら】路上での走行練習をする事ができ、同時に【安全性も担保】できます!

心理的にも、物理的にも、子供も安心させるコントローラ
  
   

製作システム

簡単なブロック図は以下になります。
f:id:motokiinfinity8:20200524094508j:plain

無線通信可能なコンパクトデバイスとして、今回は M5StcikCを選定しました。
(2020/5時点では更にコンパクトなM5Atomが発売されているので、次にもしリメイクするならM5Atomにしようと思います)
M5StickC自体にはバッテリーが内蔵されていますが、電池容量は心もとなく電池切れによる操作ミスを防ぐために、
今回はモバイルバッテリーを外付け前提にしました。

また、ユーザー操作ボタンと介助者コントローラの関係を以下に図示しました。

f:id:motokiinfinity8:20200524094555j:plain

介助者コントローラの「後ろ」「緊急停止」はすべてに置いて最優先としています。
操作者コントローラの「前」「左」「右」に対しては、その意志を出来る限り尊重しながら補正する仕様としています。

形状は、3Dプリンタでシンプルなモデリングを作りました。

f:id:motokiinfinity8:20200524135141p:plain

成果

f:id:motokiinfinity8:20200524140818j:plain
どうやったら、息子は自分の意志で「前に進みたい」と思えるのか?
   
公園は息子が苦手場所だし、そもそもコロナ対策で人の集まる場所には行かない方がよい。かといって、屋内で練習出来るところもないし、本人も楽しくない。
   
という事で、むすこにとって馴染みである近所の通学路周辺(人気のない場所&車の少ない場所)を散歩がてらの練習方法にしました。
将来的には、息子だけの力で通学出来ると事を目指した練習として
   
一番の課題である安全性については、
・最低速度で移動
・万が一、車が来たら早めに停止
・介助コントローラを離さず何かあればすぐに緊急停止をかける

という条件で進めていきました。
   
最初は、怖がって顔を隠しながら前ボタンを押して進む息子。
それだと危ないので、隣に立って手を繋いであげると、、、
   
なんだか安心したのか、、、
目をキラキラさせて前へ進む進む!!
   
片手介助コントローラ、Good Job!
    

『息子と一緒に手を繋いで歩きたい』

という目標が、少しだけ叶った気がします(^-^)
   
   
電動車椅子の練習を始めて、数ヵ月。
最近では、
「進みたい!」
という息子の意志が顕著に見えてきました!

   

明らかに3つあるボタンの「前ボタン」しか押さない!

他のボタンに無理やり手を持っていっても、必ず「前ボタン」に手を戻して押し続けるので、これは明確な意志を感じます。
気がつけば…一時間近く走り続けてます(笑)

そして、最近では、「前に進む」と「前以外の方向に進む」の二択を覚えてきました!
   
ほとんどの場所では必ず「前ボタン」を押し続けるのですが、川辺のコースに行くと必ず「右ボタン」を押し始める!
3回やって3回とも同じ場所でその行動をするので、彼なりにしっかり意志を表現しているのだと、嬉しくなりました!
    
     
もちろんまだまだ課題はたくさん。
息子の意志はしっかり現れてきているが、
まだその意志の詳細を動作に反映させるのは難しい様子。
(例えば、「あっちの道にいきたい」意志はなんとなく表現できても、それを「ハンドル操作をして目的地まで動かす」操作に繋げる事は難しい)

なので、これは根気よく練習しつつ、必要なテクノロジーは試行錯誤でサポートしていきたいと思います!












Extra : 車椅子で遊んでみた ~Nintendo Labバイクコントローラ・電車でGoコントローラ・おもちゃコントローラで遊ぶモビリティ~

息子の「自分の意思で動く練習」のためにレンタルした大人用電動車椅子
空いてる時はお姉ちゃんも遊びたいよね!という事で、
気軽に遊べる様な「遊びゴコロ溢れた電動モビリティ体験」を作ってみました。

Nintendo Laboバイクコントローラ
電車でGo!コントローラ
・Fisherpriceおもちゃコントローラ

の三種類で電動車椅子を遊べました!

実は、過去に製作した「電動モビリティMottoy」での開発システムをそのまま使いまわしただけなので、ほとんど追加開発なしで遊べました!
ogimotokin.hatenablog.com

コントローラは自分の好きなモノで、いろんなモビリティを乗り回せるというのも楽しくていい!

息子はまだ操作認識・練習なので、分かりやすさ優先で「3方向コントローラ」を使っていますが、
本人の習得が進んできた段階で、この様な「遊びゴコロ溢れたコントローラ」で楽しみながら操作できる様にしていきたいと思います!


息子よ、
これから先も楽しい取り組みの可能性、
いっぱい作っていこうな!

Maker Faire Kyoto 2020 Online 出展情報

f:id:motokiinfinity8:20200502001212p:plain

出展情報

2020/5/2(土)~3(日)に京都・けいはんなで開催される
メーカーイベント Maker Faire Kyoto 2020に個人として出展予定でしたが、
あいにくと新型コロナウィルス蔓延対応のため、開催そのものが中止になりました。

しかし、Onlineイベントとして、別途Twitter上で開催される事になりました。

makezine.jp


それを盛り上げる意味で、出展予定していた展示物を紹介させて貰えたらと思います。
(Onlineイベント当日は、過去の製作動画をコメント付きで度紹介する形で参加させてもらおうと考えております。)


私は、『家族のためのモノづくり』というテーマで、
障害を持った息子や家族のために作った自作リハビリ機器・改造おもちゃを出展予定でした。

自己紹介はこちら
ogimotokin.hatenablog.com


以下が公式サイトでの私のブース説明になります。
makezine.jp


なお、Maker Faire には昨年2019年に初参加させて頂きました。

ogimotokin.hatenablog.com

今回の#MFKyoto2020 でも、「アシスティブテクノロジー(AT)」カテゴリとして、
以下の10作品を出展予定しておりました。
その中でも
「AT×キッズ&ファミリー」
「AT×モビリティ」
「AT×ミュージック」
「AT×ロボット」

の4ジャンルで紹介します。
また、コロナ禍の中で開発した「在宅勤務(学習)DIYも加えます。

気が付けば、
展示ラインナップ10点、昨年からALL新作状態
になっています(笑)


弊ブースの特徴は、昨年と変わらず
「必要とする人のニーズ目線で
日常的に使える事を目指した
個人モノづくり活動」

です。

Maker Faire用に準備してきたという訳ではなく、
子供や家族が喜ぶから、成長に必要だから、困りごとをなんとかしたいから、作り続けてきたモノ達をこの機会に展示するスタイルをとっています。


MFKでは、それらの開発モノが自分達以外の子供達にどの程度活用できるのかフィードバックを貰いたい、と思い、
特に体験ブース中心として遊ぶスペースを広く確保しようとしていました。
なので、製作物のジャンルにはまとまりはありませんが、ご容赦ください(笑)

オンラインになってその直接の使用感フィードバックを貰えないのは残念ですが、是非とも動画上でも興味のあるコンテンツに反応やアドバイス等頂けると嬉しいです。
また、来年の展示会などでは、更にパワーアップした状態で、実際に触って遊んで貰えると大変嬉しいです。



① AT×キッズ&ファミリー

①-1: 息子おうちリハビリ用プロジェクションゲーム壁

[目的] 息子 & 娘向け
・外出できない子供達におうち生活を刺激的に楽しませたい!
・外来リハビリに通えない息子と、立位などのおうちリハビリを楽しく進めたい!(息子が自分から主体的に体を伸ばす様に誘導したい)

[製作物]
自宅内に「チームラボみたいなプロジェクションゲーム壁(インタラクティブ壁)」を製作しました。
壁をタッチするとそこからボール転がしゲームが始まります!


[製作方法]
ゲームコンテンツはUnityで製作。
Window PCでコンテンツを再生し、プロジェクタで投影しています。
壁タッチ検出は、中華製安価Lidarを使ってUnity連動させています。

[コメント]
4/30に完成した出来立てほやほや作品。
MFKが開催された場合は、ブース内にプロジェクションブースを用意してそこで子供達にタッチで触って遊んで貰う予定でした。
今後もコンテンツを拡張して、子供が楽しく自然と体を動かせる仕掛けを作っていきます!


①-2: スイッチで選ぶ「かおす暴走くまさん」

[目的] 息子向け
・知的にも遅れのある息子の好奇心をこじ開け、自分の意志で「選ぶ」行為を楽しく経験できる様したい


[製作物]
「ふつう」「ぼうそう」「かおす」の3モードをスイッチで選択すると、激しい動きになる(笑)
簡単な技術で、子供や大人を、笑顔にしてくれる魔法のくまさん

[製作方法]
スイッチに応じて、使う電池の本数を電子回路で切り替えるというシンプル製作

[コメント]
昨年に展示して、とにかく絶大な人気だった「暴走ワンワン」の進化系。
ogimotokin.hatenablog.com

もし、MFKが開催された場合は、ブースへの客引きとしてブース先頭に配置予定でした。
是非次の機会で、触って、笑ってください!



①-3: パリピ改造くるくるチャイム

[目的] 息子向け
・ボール転がしが大好きな息子の好奇心を広げたい
・息子の指先を使うリハビリ練習を自主的に行う様に仕掛けたい

[製作物]
くるくるチャイム内部に、測距センサーを埋め込み、ボール位置を検知させ、ボール位置に合わせて、LEDテープ& 効果音を鳴らすという追加改造


[製作方法]
筐体内に回路を収めるため、Arduino Pro Microを使用。
詳細な製作方法は以下を参照ください。

ogimotokin.hatenablog.com


[コメント]
2020年1月に製作して以降、お気に入りのおもちゃの一つとして、遊び続けてくれました。
おかげで筐体は傷だらけですが、今でも安定して動いてくれてます。

地味ですが、こういう既製品改造は「日常使用のためのモノづくり」のアプローチに適しているので、
その観点でのサンプル紹介予定でした。






② AT×モビリティ

②-1: 面白乗り物に変身する電動車椅子(WheelChair Vehicle)

[目的] 息子 & 娘向け
・息子が自分の意志で前に進む体験機会を作りたい
電動車椅子=障碍者の乗り物という心理ハードルを取り除きたい

[製作物]
・大人用電動車椅子に物理ハックユニットを追加。
Nintendo Labo バイクトイコン」「電車でGoコントローラ」「おもちゃゲームコントローラで車椅子を操作して遊べます。
電動車椅子の外装に段ボール新幹線を追加。走行中に「電車の発車音」「走行音」を追加して、面白い乗り物に変身させます。

[製作方法]
以下の記事を参照ください。
ogimotokin.hatenablog.com
ogimotokin.hatenablog.com


[コメント]
MFKyotoは、電動車椅子を必要としないお子様が多く来場されていますが、その子供達に電動車椅子を身近に感じて貰う&ワクワクする体験をしてほしい、と考えていました。
主に、『面白コントローラ×新幹線ユニット』で、面白い遊園地アトラクション感覚で試乗してもらうブースを用意予定でした。

また、息子は普段から日常取り組みとして、私の改造した専用電動車椅子に乗って日々走行練習を行っています。
もし、MFKyoto会場に同様の症例の方が来られていた場合、その体験試乗も計画していました。




②-2: おしゃべり乗り物Mottoy 改造

[目的] 息子向け
・息子が自分の意志で前に進む体験機会を作りたい

[製作物]
・小児用電動カーMottoyを、肢体不自由の子供達でも操作できる様に改造
 (速度可変、イルミネーション、可愛い音声など)
Nintendo Labo バイクトイコン」「電車でGoコントローラ」「おもちゃゲームコントローラで操作して遊べます。


[製作方法]
以下の記事を参照ください。
ogimotokin.hatenablog.com


[コメント]
本製作物は上記(1)電動車椅子の導入前に作ったものです。残念ながら、日常的には(1)に移行したため、現在は遊休状態ですが、特に年少の子供には人気が高いため、今回展示しようとしていました。上記と同様に、子供達に乗って貰い面白コントローラで操作できる準備をしていました。



③ AT×ミュージック

③-1: 視線入力で演奏するハンドベル演奏装置

[目的] 息子 & 友達向け
・息子の療育園最後のクリスマス会で、肢体不自由の同級生8人で何か演奏体験をできる様にしたい
・手を動かすのが苦手な子供も、自分の意志で演奏する機会を作りたい

[製作物]
・8個のハンドベルを8個のスイッチで鳴らします(ハンドベルを持てなくても指先一つで演奏可能)
・8個のスイッチが全部押されると自動演奏が始まる点灯式モードも用意。
視線入力I/Fにも対応! 鳴らしたいベルを見るとその音が鳴る超能力体験!

[製作方法]
ハンドベルを鳴らすのにはソレノイドを使っています。8個のソレノイドを使い、一つのマイコン(ESP32 Dev Kit)で制御しています。
また、視線入力システムとしては、ハンドベル演奏装置にUSB経由でWindows PCを接続。視線入力デバイスは業界お馴染み Tobii Eye Tracking 4C、操作アプリは、OriHimeEye+自作アプリ を使っています。

[コメント]
電気回路(ソレノイド) / 筐体設計(3Dプリンタ) / 台製作(木材DIY) など2019年の数々のモノづくりで経験したノウハウを駆使して、わずか2週間分(深夜時間のみ)で実現した思い出の機器です。
今回の展示では、実際に視線入力 or スイッチを通して、簡単なハンドベル楽曲を演奏してもらおうとしていました。

③-2: スイッチで操作するタンバリン演奏装置

[目的] 友達向け
手の不自由な子供が、みんなと一緒に楽器演奏を出来る様にしたい

[製作物]
・ワンスイッチ操作でサーボモータを動かし、タンバリン等を演奏できる打楽器用ハンドを製作。
・叩いた際に、光の演出や、面白い効果音も加える事ができるので、面白さアップ

[製作方法]
以下ページを参照ください。
ogimotokin.hatenablog.com

[コメント]
特に重度心身児の家族と交流している中で、よく聞く課題として「ちょっとしたモノを叩ける機器」
ありそうで意外と存在しない市販品。一方で、電子工作としては比較的ハードルの低い技術なので、ここはメイカー×当事者としての気付きと捉え、開発しました。
実際にモニターで数人の方に向けて提供実績を積んでいます。
展示会では、後述の「分身ロボットを使った遠隔演奏システム」と組み合わせてのデモ予定でした。


④ AT×ロボット

④-1: 分身ロボットを動かす遠隔メカナムユニット

[目的] 家族&友達向け
・単身赴任先にいながら、自宅にいる家族と分身ロボットOriHimeを通して鬼ごっこ等で遊ぶため
・外出できない友人らと分身ロボットを通して、サッカーなどのスポーツで遊ぶため
(分身ロボットサッカーの取り組みに向けた開発)

[製作物]
・分身ロボットOriHimeを搭載可能な台車ユニットを開発。メカナムホイールを搭載しているので、前後左右に自由に移動できる。
 4G経由でスマホから台車を操作できるので、自宅からOriHimeを自由に動かす事ができます。

[製作方法]
台車はAmazonで購入したメカナム台車キットを使っています。
制御自体は、ESP32マイコン を使い、2つのモータドライバを制御します。上記の電動車椅子と同じ様な無線コントローラを接続可能な事に加えて、UART通信経由でObnizをつなげる事も可能です。
これにより、『①スマホからBlynkアプリ』『②スマホからブラウザ経由でObniz』の2種類からスマホ操作が可能です。

[コメント]
昨年のMaker Faire Tokyoでは、分損ロボットサッカー企画者のてらきゅーとーまさんや分身ロボットカフェのパイロットさえちゃんにも遊びに来てもらい、子供達の操縦するロボットと簡易サッカーを楽しんで遊んでいました。
わちゃわちゃ子供が集まってカオスな感じになってたのが、これまた楽しかったです。
今回の展示会でも、遠方からOrIHimeで会場に遊びに来てもらい、子供達の操作するロボットと1on1で遊んで貰う時間も計画してました!


④-2: 分身ロボットによる遠隔演奏システム

[目的] 友達向け
・外出できない友人らと分身ロボットを通して、楽器演奏を一緒にする体験を作りたい

[製作物]
・先日に開発した打楽器ハンドを、OriHime経由で操作させるため、OriHimeの腕に加速度センサーを搭載し、
OriHimeの腕の動きに応じてスイッチON/OFFやマスタースレーブ動作を実現するユニットを作りました。
これにより、OriHimeを使いながら簡単な楽器演奏なども実施できます。


[製作方法]
製作方法は以下のページを参照ください。
ogimotokin.hatenablog.com


[コメント]
③-2のタンバリン演奏アームと一緒に使って、遠方にいる家族orパイロットさんにOrIHimeで会場に遊びに来てもらい、そこで打楽器を鳴らしたりしてもらうデモを予定していました。
コロナ禍で、大勢の分身ロボット参加者と集まる機会は、当分先になりそうですが、少しずつ進めていきたいと思います。



⑤ 在宅勤務(学習)DIY

⑤-1: 学校気分を感じるおうち勉強管理ツール

[目的] 息子 & 娘向け
新1年生となる息子に学校の生活リズムに早くなれて欲しい。
娘に自主的に勉強する気持ちを後押ししたい

[製作物]
学校風のチャイムを鳴らして子供の時間割を管理するツールを作りました。オリジナルの時間割に合わせて、自動でチャイムが鳴り、次の科目をお知らせしてくれます!

[製作方法]
M5Stack に子供の時間割情報を入れておき、SDカードからイラスト&音を表示しました。
外装は3Dプリンタで学校風に製作し、娘に色付けして貰う等、積極的に娘を製作に巻き込みました。

[コメント]
娘を積極的に製作に巻き込んだおかげで、学校チャイム音に愛着を持ってくれ、今のところ自主的に勉強に励んでいます。
導入して1カ月、今でも毎日チャイム音に従って勉強するスタイルを構築できました。
ただ、モノを作るだけでなく、「モノを作る過程」を共有する事も大事だと、娘からメイカー姿勢を教えてもらった気がします。

歩けない息子の足代替モビリティ開発記① ~手作り電動台車 から 車椅子物理ハックへ~

f:id:motokiinfinity8:20200428012430p:plain

歩けなくても「自分の意志で行きたいところに行ける」未来は創れるはず!

自己紹介ページでも掲載させて頂いていますが、
生後まもなく脳性まひと診断された息子、6歳時点でも座位・立位が困難です。
医者からも「将来はおそらく歩けない」との宣告を受けています。

もちろん諦めてはいません。
将来の可能性を広げるため、リハビリ練習を通して「歩く練習」を続けていますが……
ふと思います。

それだけで良いのだろうか?


この年代の子供達は「歩く事」を通して自分の好奇心の赴くまま、行きたいところに行き、たくさんのモノに出会う事で、興味・意欲・感覚が爆発的に成長していくと感じています。
「自分の好奇心を自分の力で行動に移す事」が成長の原動力になっていると言えます。

では、歩けない息子は、どうするのか?

重度の子供達は、自分の意志をしっかり持っていても、それを表現したり行動に表すのが苦手なのです。
歩けない事で、自らの意志(例えば、あのおもちゃを取りに行きたい、という願望)を行動に移す機会を消失してしまい、心の成長機会すらも逃してしまいかねません。

そんな状況の中、物理的なリハビリとして「歩く練習」だけを行うのは、、、何かが違う。


歩行練習の最終目的は
「自分の意志で、行きたいところに行き、会いたい人に会える。
   そんな当たり前の願望を叶えるための環境を作る事」

だと私は考えています。

であれば、物理的に歩くのが難しいならば、歩く以外の技術手段で「自分で動きたいという意志を引き出す」事に取り組むべきと考えました。

単なる移動手段としての技術ではなく、

 子供の好奇心を広げ、
 自らの意志を、自分の力で実行できる経験作りを通して、
 子供の発達・成長を作る機器

それが足代替モビリティの可能性だと感じています。



私がロボット業界に転職したのも、この様な息子の意志を具現化する手足サポート技術を作りたいという想いがきっかけですが、
今一番大事なのは10年後ではなく、まさに今の子供の成長機会を逃さない事!

そのため、今ある技術を息子の使いやすい形にアレンジして、不完全ながらでも体験機会を作る事が大事です。

足代替の移動機器として、現在の主要技術機器として「子供用電動車椅子が挙げられます。しかし、以下の課題があるため、購入に踏み切れない現状があります。

<課題>
・息子は座位すら困難なため、市販の小児用電動車椅子にも乗れない
・新しいモノを受け入れるのが苦手(恐怖を感じる)
電動車椅子ジョイスティックの操作の仕方が分からない

また、現在の福祉制度だと…公費よる支給で電動車椅子を作るには、「安全に操作できるスキルを持っている事」が要件になっています。
知的に遅れのある息子はそのスキルを現時点では持ってないので公費支給は期待できません。
練習しないとうまくならないのに、最初から操作できる人でないと買えないという矛盾の状況なのです。

しかし、その状態で止まっていては先へ進めない!
「なければ、工夫して自分で環境を作るしかない!!」
と決意し、電動移動練習のためのモビリティ機器製作に着手しました。



<要求仕様>
 ・息子が怖がらず受け入れてくれる事
 ・知的障害を有する息子でも操作できる簡単なI/F(ボタン等)
 ・座位困難な息子でも乗れる事
 ・日常的な場所で練習できる走行安定性を持つ事


ちなみに、練習したての頃の息子の様子です。

f:id:motokiinfinity8:20200425152913j:plain

こちらは、BabyLocoという小児用電動移動機器です。

www.mech.usp.ac.jp
(上記サイトに製作マニュアルも載っているので、スキルがあればDIY製作できそうです)

これを導入筆頭候補として試験練習を進めようと考えてましたが、当時の息子には合わず撃沈…

原因は複数あったのですが…
馴染みのない乗り物、息子の苦手なモータ音、いつもと違う練習環境、急に動き出す事への恐怖。
これらの「いつもと違う」が重なってしまい、乗り物に【恐怖】を覚えさてしまった様です。。。

なので、まずは本人の『乗り物に対する違和感を取り除く事』に注力しました。
  
   
   


取組み① 息子用姿勢保持椅子の電動台車ユニット製作 (2019年9月)

www.youtube.com

これはBabyLocoや同プロジェクトのCarryLocoのコンセプトと同じで、息子が普段から使っている座位固定椅子の下に電動台車を搭載する形式です。
「普段の慣れた椅子という安心感」「スイッチ一つで前に動く簡単さ」
電動移動の初めの恐怖を緩和する事を狙いました。

工夫ポイント

材料は、廃棄予定のプロンボード(立位台)を活用してDIY加工して、電動ユニットを取り付けました。

f:id:motokiinfinity8:20200428011708j:plain

息子が普段から使っているパンダ椅子(ティルト式)を上に安定固定できる配慮と、パンダ椅子+本人の体重でも十分移動できる駆動パワーを持たせました。
操作系として、台車本体に有線で接続するスイッチ端子を用意し、スイッチ押し操作のみで前進できる様にしました。
また、有線スイッチとは別に無線コントローラも並行して接続可能なため、介助者による操作補助や別コントローラを使った娘用モビリティとしても活用する事を狙っています。


製作システム

簡単なブロック図は以下になります。

f:id:motokiinfinity8:20200429094950j:plain

台車の筐体部は、息子が使っていた「プロンボード(立位台)」を分解して、その板部分を使いました。

f:id:motokiinfinity8:20200428011143j:plain

モーターは、車載用の12V駆動パワーウィンドウモータを使います。
モータの中では比較的安価でパワーがある事に加え、DCモータに比べて静音であるため、息子のモーター音への恐怖心を減らす狙いで選びました。

ホイールは、ハンマーキャスター製のゴム車輪を選定しました。
パンクレスなのと、ドリルで穴があけられるので加工しやすいのが特徴です。平坦な場所であれば、十分走行可能です。

バッテリーは、安全のため12V鉛バッテリーを使っています。

それ以外の制御モジュール及び制御ソフトウェアについては、先日に開発した子供用電動モビリティ Mottoyの改造システムをそのまま流用しています。

ogimotokin.hatenablog.com


なお、本製作にあたり、株式会社るーと様で製作されたSmileLoco(簡易版CarryLoco)の製作方法をアドバイス頂いたおかげで、金属椅子をも搬送できる台車を短期製作できました。

https://www.latest.facebook.com/SmileTechFactory/


また、実際に作ろうとしても木材DIY未経験がネックで手が止まっていたのですが、ご縁から分身ロボット研究者・吉藤オリィさんとご一緒に2019年5月に「視線入力対応の車椅子台車製作」に携わる事を通して、DIY経験ノウハウを積む事ができて、本製作に繋がる事ができました。何らかの形でよいので、一度『経験する』という事はモノづくりに置いて大事と感じます。



取り組み成果

まずは、息子の恐怖心をなくすため、馴染みの自宅リビングで練習を行いました。
姿勢保持椅子に座った状態では特に嫌がる様子もなし。

f:id:motokiinfinity8:20200428011456p:plainf:id:motokiinfinity8:20200428011504p:plain

練習開始。
一旦、親が手を差し伸べながら、スイッチを押すと自分(椅子+台車)が動き出す事を繰り返し実証。
最初は、動いた瞬間に「びくっ」とビビった表情を見せてましたが、以前のMottoyでの練習時に比べたら受入れが圧倒的に早かったです。
やはり、狙い通り「馴染みのおうちの中で練習できた事」「モーター音がしない事」が息子の心理ハードルを一つ下げた様です。

しかし、リビング内で電動台車を使うには狭い事と、電動機器に乗る目的が本人にとって面白くなかったため、5分で嫌がって「早く降ろせ!」と叫びだす…

数分でも嫌がらずに乗る事が出来る様になった事は大きな成果でありますが、同時に
明確に「〇〇の場所へ行く」とかの目標場所を設定してやらないといけない事が分かりました。
そのためにも、屋外練習環境で走行できる機体の準備が必要になってきます。





取組み② 大人用電動車椅子を使った1ボタン操作ユニットの開発 (2019年10月)


上記取組み①で課題となった「目的地意識」を高めるためにも、屋外練習を想定していきます。
しかし、①と同じ台車構想で考えると、性能よいブラシレスモーター、ホイール等を調達・設計する事になり、それなりに時間がかかります。

まずは簡単に屋外走行の息子への有用性を試したいと考えていた時に候補にあがったのが、入手しやすい大人用汎用電動車椅子のレンタル
レンタルであれば一か月などの短期間でも対応できるし、もし息子に合わなければすぐに返却すれば高額出費を防ぐ事ができます。

今回は、「乗り物に長時間乗り続けられる事」を目的として、
市販電動車椅子をベースに子供用操作I/Fのみを自作する事で、本システムの可能性を模索してみました。

工夫ポイント

レンタル機器を使うため、車椅子本体には一切改造を加えない事を必須にしました。
そのため、『本体ジョイスティックを外部機器(サーボモータ)で物理的に動かす物理ハックユニット』を新規製作しました。
この物理ハックの考え方は、その他の様々な電動車椅子でも適用できる可能性があります。

また、座位保持の課題については、「親の膝の上に子供に座って貰いながら使用する事」で割り切ります。
これにより、大人用車椅子では難しい子供の座位保持の課題を解消すると共に、子供の安心感を確保する効果もあります。

f:id:motokiinfinity8:20200428012430p:plain

「ボタンを押している間だけ前に進み、ボタンを離すと停止する」というシンプルな操作インターフェースにする事で、
子供に直感的に分かって貰うと同時に、安全性も確保します。

製作システム

簡単なブロック図は以下になります。

f:id:motokiinfinity8:20200429094953j:plain

電動車椅子には、折り畳みできる電動車椅子ラスレルをレンタルさせて頂きました。

www.kashidasu.co.jp
amazonから購入も出来る様です。

https://amzn.to/3f2yVb1

  
ラスレルの良いところは、
・折り畳んで車内後部に積み込める → 公園等の外出先に気軽に持ち運べる!
・移動し始めの加速がゆっくり電動車椅子に不慣れな子供も怖がらずに乗れる
  
一度試乗したところ、息子も怖がらずに受け入れてくれそうだったので、今回はレンタルしました。

最近ではamazonでも比較的安価な電動車椅子がいろいろとありますね。このジョイスティック形状ならば本取り組みが適用できそうですね。(さすがに未検証ですが)

  


制御システムはシンプルで、制御Arduinoマイコンサーボモータが繋がってきます。
サーボモーターとしては、ジョイスティックの固さから捉えて高トルク品が必要と考えて、MG996Rというサーボモータを選定しました。
 


製制御プログラムはシンプルで、ボタンを押したらサーボモータを回転させて、物理的にジョイスティックを倒すという超シンプル構成になります。
こちらの「ボタンを押すとタンバリンを鳴らす演奏装置」の作例が同じですので、参考ください。

ogimotokin.hatenablog.com

  
サーボモータジョイスティックを倒す機構部分は、ジョイスティック寸法を実測して、モデリング3Dプリンタで製作しました。

f:id:motokiinfinity8:20200429022157p:plain

ただ、ジョイスティックの横にサーボモータを置いただけだと、押し込む時にサーボモータ自体が動いてしまうので、ユニット筐体(緑色部)にモーターを固定します。ユニット筐体はジョイスティックコントローラと共締めして車椅子本体と固定します。

本製作デメリットは、3Dプリンタなので耐久性が弱い事になりますが、
壊れてもすぐに作り直せる事暴走した時には筐体を壊して停止させる事が出来る事が逆にメリットになります

本使用スイッチについては、子供に応じて使いやすいモノを選んでください。
我が家では、先日製作した大きめスイッチを採用しています。

ogimotokin.hatenablog.com


取り組み成果

周囲に障害物の少ない広い公園で練習開始しました。

f:id:motokiinfinity8:20200429022933j:plainf:id:motokiinfinity8:20200429023108j:plain

まずは、スイッチを使わず、お母さんに抱えられた状態のままで、お母さんの手による操作で、公園内を走行します。
息子に安心感を与える事、そして息子の様子を見ながら好きそうな場所・コース取りを考えるのが狙いです。

30分ほど走行した結果、木々の下(木漏れ日が漏れる場所)を走るのが好きと分かりましたので、その場所で今度はスイッチを押して前に進む練習を行います。
最初は息子も怪訝そうにしてスイッチを押そうとはしなかったので、母による介助でボタンを押しながら前に進む。
これを10分ほど繰り返しましたが、拒否反応なし。
好きな場所で景色がゆっくりと変わっていく事に興味が移ったおかげだと思います。
やはり屋外での練習は子供の興味を広げるのに効果的だと実感しました。


少しずつ練習を重ねていくうちに、
「スイッチを押す」=「前に進む」の繋がりはなんとなく理解できてきた様子です。



しかし、ここで問題が発生。
まっすぐ進んでいるつもりでも徐々に左右にズレていきます。。。。

原因は、道路の傾きです。そのまま進むと路肩にはまってしまうため、その都度 親の手でスティックを直接操作して補正しないといけません
その度に、子供のスイッチを強制的に取上げてしまう事になり、そのテンポの悪さに子供が不機嫌になってしまいます。

本取り組みにより屋外練習による効果の感触はつかめたのですが、今後 練習を重ねていく上では「左右補正の簡易化」と「緊急停止」が課題になりそうです。





取組み③ 左右調整可 電動車椅子の1ボタン操作ユニットの開発 (2020年1月)

www.youtube.com

上記取組み②を踏まえて、これをベースに更に練習しやすい技術工夫をしていきたいと思います。
更に、練習環境として、公園などの広場に加えて、もっと日常的な場所(例えば、通学路や家の近くなど)で使えると、更に本人の「進みたい」モチベーションが上がるのでは、と考え、対応を検討しました。

その結果、
・左右にずれていっても簡単な操作でシームレスに走行方向を補正させる
・万が一危ない場合は、すぐに停止させる事ができる

ための機能を追加開発しました。


工夫ポイント

電動車椅子ジョイスティック物理ハックシステムを進化させました
・ 左右方向にも操作できるアームを追加
・ 介助者用無線コントローラも接続できる様にした
・介助者から緊急停止もかけれる

「搭乗者スイッチ(有線)」と「介助者コントローラ(無線)」の2つから操作できるので、例えばスイッチによる前進操作をさせながら介助者による左右調整もシームレス(連続)で実施できます。
介助者の操作を無線制御にした事で、第三者が周囲を見ながら安心してサポート出来る様になりました。
前回取り組み②だと、抱っこしてる人が左右操作しながら子供の様子も見ないといけず負担が大きかったので、これにより負担が分散できる効果もあります。

  

  

製作システム

簡単なブロック図は以下になります。

f:id:motokiinfinity8:20200429094957j:plain

制御システムは上記取組み①と同じで、左右のモータ+モータドライバの代わりに「サーボモータ×2を制御するイメージ」になります。
1つ目のサーボモータでスティックの前後方向、2つ目のサーボモータで左右方向を制御します。
両者のサーボモータ同士が干渉しない様に3Dプリンタを使い専用アームを製作し、電動車椅子のコントローラにぴったりハマる形で設計しました。

f:id:motokiinfinity8:20200429100214p:plain


ユーザー操作ボタンと介助者コントローラの関係を以下に図示しました。

f:id:motokiinfinity8:20200429095000j:plain

完全に介助者コントローラ側の操作を優先にするのではなく、緊急想定を覗いてユーザー操作ボタン(前進)は継続させる様にしています。
「ボタンを押す=前に進みたい」という操作者本人の意志を優先したいためです。

ただし、安全を守るのは最優先! 
緊急停止や後退は安全を確保するために必要と考えて、介助者が緊急停止ボタンを押したら操作者の操作に関わらず必ず止まる様に設定しています。


取り組み成果

年末にプロトタイプが仕上がったため、様々な環境への対応有無を把握すべく、両実家に電動車椅子も持ちこんで実家の近所を走行する取り組みを行いました。
(車が来ない場所を選ぶ等、安全面に最大限配慮してるとはいえ、いきなり息子で実証実験をするのは結構ドキドキでした…)

f:id:motokiinfinity8:20200429101028j:plainf:id:motokiinfinity8:20200429101344p:plain
  

取組み②で公園など普段見慣れない環境での走行経験を積んだおかげなのか、息子自体は受入れがよく、母のサポートも使わずに自分からボタンを押して進み始めました。
コースとしては、町内を一周回るコースを設定しました。
交差点での右折・左折は介助コントローラで行うので、道路や傾きのある道路等でも安全を確保しながら走行できます。
息子としては「前に進みたいと思ったらボタンを押す」というシンプルな操作で、近所の散歩が実現できてしまいます!

馴染みのある場所で「自分の意志で進む」事で、息子の周囲の環境(家や車など)を見る頻度が増えたというのが印象です。
公園などに比べても周囲環境の情報量が非常に多いため、「お、あれは何だろう?」と息子の視野が広がっている姿を間近で見る事ができたと感じます。

『普段はお母さんに押して貰って進む道、今日は僕がお母さんを運んでやってるんだぜ!』
と言うドヤ顔を見せる場面も垣間見えました。

住宅街など自分の身近な屋外環境で練習するのは、息子の好奇心や意志を引き出すのに有益という感触を持ちました。

今後の取り組み

本取組みですが、ご縁があって毎日新聞の全国版に掲載頂きました。

毎日新聞 大阪版 3/27(金)夕刊

f:id:motokiinfinity8:20200424200103j:plain
f:id:motokiinfinity8:20200424200126j:plain

Web版はこちら
脳性まひの息子のために 「メロディー靴」や「じゃんけん専用義手」 支援機器を自作で50個開発 - 毎日新聞



今回の9月からの電動移動機器練習の取り組みの成果として
・電動移動機器に乗っても怖がらなくなった
・ボタンを押す→自分が前に進むの理解

が出来る様になりました。
これによって、移動する事による周囲の景色の変化を楽しめる様になりました。


次のステップに向けたテーマとして
・自分で進行方向(左右)を選択する練習を進める
(息子にコントローラ操作をどうやって理解させるか)
・息子一人で電動車椅子に乗って動ける様にする


後半(2020/1~5)の練習の様子は次記事で記載しましたので、よろしければご覧ください (2020/5/24更新)
ogimotokin.hatenablog.com