オープンソースロボット「OTTO」を使った取り組み(2)
こんにちは、ファブラボ神戸のシェアメンバー(運営)として活動しております、ysです。ファブラボ神戸内では、昨年頃からOTTOというオープンソースロボットを使った取り組みを行っています。
前回の投稿では、この取り組みが始まった経緯とOTTOとは何かについてご紹介しました。本投稿では、コロナ禍において、ファブラボ神戸のシェアメンバーの中で内々に実施したOTTOワークショップについて、主催の立場として思った事を記録していきます。
ワークショップに向けた準備
OTTOは、インターネットで組み立てキットが販売されていますが、設計図や3Dデータ、電子部品リストが全て公開されてもいます。つまり、キットを購入しなくても自分達だけで組み立てることができるオープンソースハードウェアです。今回、それらの公開情報を活用し、OTTOのボディーパーツは3Dプリンタで出力し、電子部品は部品リストから購入することにしました。
https://wikifactory.com/+OttoDIY/otto-diy
↑ ※WikiFactoryいうウェブサイトです。日本ではあまり聞いたことが無いですが、Wiki形式をとったオープンソープロダクトのプラットフォームのようです。
ロボット本体パーツは、ラボに置いている3Dプリンタで出力しました。参加メンバー数人分を出力しましたが、少し時間を要しました。合計時間を計算すると、1体およそ2日程度かけたと思います。ただ、ファブラボ神戸に設置している3Dプリンタは、BCN3D Technologies社のSigmaxのというもので、出力エリアが凡そA3サイズにもなります。(既に販売を停止しているようですが。)おかげで、多くの部品を一度に出力することができたので、割と手間は少なかったと思います。
↑ ※直線部分が多いので、ちょっとしたズレが気になります。背景のハンドジェルが時世を感じさせますね。
電子部品は、格安品を選択して費用を節約しました。例えば、超音波センサや、メインのパーツであるArduino Nanoは、中国ブランドの格安互換ボードを購入しています。結果的に問題なく動作はできたと思います。ただしこの所謂中華Arduino Nanoですが、中枢にあるCPUのATmega328P内部のソフト(ブートローダ)が旧式でしたので、Arduino IDEから書き込む時には注意が必要です。中華ハードウェアは製品仕様の入れ替わりが早いので、いずれ現行ブートローダに変わるかもしれませんが。
なお、既にOTTO 組立てに向けて準備されていたukaさんは、一部部品を既に購入されていました。そのうちブザーやスイッチ等の小さな電子部品は、1packでかなりの内容量だったため、他の参加者にも一部を譲って頂くことができました。
これらの情報はGoogleスプレッドシート上にまとめて、公平な費用負担になるよう調整しました。
組み立てワークショップ (With Social Distancing !!)
日程を調整し、部品準備も終え、ワークショップ当日を迎えました。開催したのは9月末頃で、この頃はコロナもかなり下火となっていましたが、互いに距離をおいて着席し、換気をし、消毒を行う等、感染対策に抜かりがないように実施しました。
OTTOの組立てにあたり、一部の電気部品をはんだ付けする箇所があります。そのため、参加者の中におられたベテランさんから、はんだゴテをお借りすることになっていました。今回のワークショップで久々にはんだゴテを持つ方がいることは認識していましたが、本人たちははんだゴテを使うことにかなりの戸惑いを感じておられ、実際にコテの扱いもかなり不安定なものでした。
私は電気系エンジニアなので、半田ゴテについては息をするように扱うことができます(上手さは横において)。とある特殊技術になれてしまうと、それが特殊技術であることを完全に失念することが稀にあります。未経験の人の立場に立った仮定を見誤ることが多いので、注意が必要だと思いました。というか、どんなに注意しても見逃す可能性があります。
このようなワークショップを行う場合、事前検証が必要だと思います。例えば、参加者のスキルレベルをある程度予想し、同程度のスキルを持った人をテスターとしてワークショップを行うことは必要だと思います。
また、電気配線についても同じでした。ベテランとビギナーでは配線作業に予想よりも所要時間に差がありました。作業だけでなく、ビギナーさんの配線の間違いも後に発覚する等、作業の手戻りがあったためです。上の写真にもありますが、Arduino NanoのベースになるShield基板にかなりのピンが配置されているため、ベテランでも気合を入れて作業していました。
任意の端子ピンに配線を接続する、という一見単純な作業にも慣れ不慣れがあることは想定外でした。私達ベテランが無意識に実施していたことには、1番ピンがどこか、何行目の何列目のピンか、ワイヤの色は何色か、等、配線を認知する複数の手段があることも含まれていたのです。認識方法も、ある種のノウハウだったようです。
とはいえ、なんとか当日には完成。一安心でした。不慣れだったメンバー程、苦労が報われた感覚を持ち、喜びも一入だったようです。
プログラミング
OTTOの動作はプログラミングすることができます。Webブラウザ上でインターネット経由で動作できる、専用のブロックプログラミングプラットフォームが準備されています。プログラミング教育の現場ではScratchが有名ですが、同等の感覚で操作ができます。
この日は、とりあえずの動作確認のみ実施する目的で、Otto Blockly内に準備されているダンス動作のみ実施しました。
↑※OTTO Blocklyには、”前進”や”後進”を選択できるブロック、様々なダンスを設定できるブロックなどが予め準備されています。
皆、無事に動作することが確認できたのですが、ここで頻発したのが、電力不足によるモータの動作異常や、Arduino Nanoへの書き込みエラーです。OTTOには4個のRCサーボモータが搭載されています。(股関節&足首x左右)そのため電気的負荷が大きく、PCのUSB端子では電流不足となり、モータの動作が不安定になるケースがありました。また、最初の起動時にArduino Nanoへ適切な電力供給ができず、リセットがかかって動作しなくなりました。場合によっては、同等の症状が書き込み時に発生してしまい、CPU内部のソフトウェアが破損し、ブートローダを書き込みし直す必要が出てきたケースもありました。動作させる場合は、USBを家庭用電源とつなげるか、外部電源付きのUSBハブ等を利用するのを強くオススメします。
その後
参加された何人かは、新たにキットを購入し、ご自宅で組立てにチャレンジされていました。新たにはんだゴテを購入する必要が出てきたため、ファブラボ神戸のSlackの中で、どんなはんだゴテを購入すればよいか、相談会が開かれました。ベテランメンバーは皆、アートナイフのような形状をしたK型コテ先を薦めていたので、皆それを購入したようです。
直線上に並んだ端子のはんだ作業に適したコテ先のようですが、刃先の先端だけを当てるように持ち替えて使えば、小さな部品もハンダ付けできます。
皆さんそれぞれ、自宅で上手く組立てられたようです。
はんだゴテを購入し、少し慣れてきたビギナーさん。なんとその後、お子さんのおもちゃの電飾部分で断線し接触不良を起こしていたところを、自分で修理したとの話を聞きました。OTTO製作を通じて日常に役立つスキルを会得されたようで、とても嬉しく思いました。
さて、このプロジェクトの様子をシェアしたことで、他の拠点とのコラボレーションに繋がりましたので、次回以降その話をしていきます。