United Statesからアクセスのようです。言語設定をEnglishに切り替えますか?
Switch to English site
Skip to main content

マインドフルドロイド:大気汚染レベルの認識と変化をもたらす Part3

Final working version of the Mindful Droid

マインドフルドロイドは屋内外の空気環境に対応した設定がプログラムされており、RS DesignSpark ESDKキットとの関連も考慮されています。

RGBカラーのアドレシング可能なLEDを使用することで、設定と特定のライブ大気質データの読み取りに基づいて変化する、ピクセルアートによる楽しくて分かりやすいアニメーションを作成しました。前回の記事ではビルドガイド、コンポーネント、および目的について説明しました。ここでは、最終的なドロイドがどのように完成したか、ライブテスト、ピクセルアニメーションを得るために使用したコードとソース、そして私が最もうまくできたであろうことを説明します。

マインドフルドロイドはCO2とCOセンサーの結果が「良い」、「普通」、「悪い」、「極端に悪い」の各レベルでアニメーション化され、空気環境の変化を示します。極端に悪いレベルでは、悲しい顔から泣き顔のスマイルマークが表示され、さらにブザー音で窓を開ける、環境を変えるなどの行動をとるよう促します。

ドロイドの組み立て

前回の記事で、ドロイドで確認した問題がありました。あるセンサーで正確な結果が得られないという問題がありました。これはMICS5524ガスブレークアウトセンサーで、PCBボードのデザインにはありますが、パーツリストには追加されていません。

このプロセスは新しいセンサーに対応し、既存のPCB設計でやりくりするために、多くの修正をしなければならないように感じられ、本当にチャレンジングでした。多くの決断と忍耐、そして3Dプリントによる試作の失敗を経て、私は解決策と新しいCOセンサーを搭載するドロイドの新しい位置を見つけることができ、望ましい結果を得ることができました。

部品の配線と接続は非常に簡単でした。はんだ付けの前に極性を合わせておくと、組み立てとテストの過程で問題が発生するのを防げます。

PCB constriction of the droid

もし、もう一度やるなら、もっと制約を少なくして、より柔軟にドロイドを作るようにします。例えば、PCB基板の設計で部品を動かしたり交換したりできるようにすることです。

以下はパーツとパーツを組み立てる様子を撮影した動画です:

 

ピクセルアートアニメーション開発

ドロイドのアートアニメーションをデザインするために、オープンソースのプラットフォーム「PixelArt」を使用する必要がありました。ドロイドでどのようなアニメーションを作りたいのかがわかれば、この作業はとても簡単でした。このプラットフォームには、希望するデザイン効果を実現するためのチュートリアルがあります。このプロセスでは、まず紙にアイデアをスケッチして、それをピクセルアートに反映させる方法を理解することをお勧めします。私は18×10というキャンバスサイズに制約があったため、ドロイドに均整の取れたデザインを施すのが難しく、苦労しました。けれども、18ピクセルくらいのドロイドのデザインはできましたし、手順通りにやれば誰でもできるのが面白いところです。

ピクセルピッチサイズを小さくすることで、ピクセルキャンバスに絵を自由に描きこむことができるようになるため、今後検討していきたいと考えています。

以下の例は汚染度の高い部屋や環境に起こった顔のピクセルが表示され、反映されるものです。

angry face pixel design

デザインが決まったら、次はこれをドロイドに変換する段階です。これにはYouTuberのTyler Jones氏によるLed Matrix Control software(LMCS)を使用します。これは、LEDマトリックスをリアルタイムに制御するために使用されます。

LED制御ソフトウェアはピクセルデザインされたファイルを変換するのに役立ちます。これは、Arduinoにアップロードする際に、ドロイドで読める“.txt”形式にデザインを保存できることを意味しています。LMCSのもう一つのクールな特徴は、実際の画像をアップロードして、ほとんど繰り返さずに、リアルタイムで直接ピクセルアートに変換できることです。

彼の名前の上にあるリンクから、ピクセルアートデザインとアニメーションを実現するためのチュートリアルをYouTubeで見ることができます。

コード&テスト開発

このパートはアームズビル(Ahmsville)の指導がなければできなかったと思いますし、このプロジェクトで彼がサポートしてくれたことについてとても感謝しています。 

また、ドロイドに搭載されたアニメーションや注意喚起の言葉表示機能に加え、汚染度が一定以上になるとノイズブザーが鳴り、ベッドサイドの夜間卓上時計となる時計表示機能、ゲーム機能の可能性など、いくつかの機能が搭載されています。

上記の機能はWiFi機能を持ち、ATSAD21チップをベースとしたArduino MKR WIFI 1010ボードを使用して可能です。ドロイドは複数の機能を持ち、同時に様々なことを実行します。つまり、私は機能を調節する方法を見つける必要があり、ユーザーがどのような空気の質をモニターしたいか、あるいは健康や環境にとって何が最も重要かに関して、個人的な好みを持つことができるようにする必要があるのです。

このボードで実行したいプログラムは、一度に多くの異なることを行う必要があります。そこで、簡単なステップに分解してコードの発展に合わせて、その主な機能を可能な限り希望通りにするために実施した手順を以下に列挙します:

  • テストはPCBボード上でLEDが動作する
  • テストアニメーションはディスプレイのピクセルで動作する
  • Arduinoのシリアルモニタを確認して大気質センサーの動作をテストする
  • ドロイドでWiFi + MQTTが動作していることを確認する
  • センサーの測定値に基づいてドロイドのアニメーションを変更する
  • ドロイドのアニメーションをArduinoのフレームに取り込む
  • ESDKのライブ値をドロイドのアニメーションに直接フィードさせる
  • データの収集、アップロード、クラウド「Grafana」への保存 

 

ドロイドは屋内ではCO2、屋外ではCOで駆動し、VOCセンサーも動作させます。

int CO2thresh[4] = {500, 1000, 1500, 5000};

int VOCthresh[4] = {20, 50, 100, 150};

int COthresh[4] = {9, 35, 800, 12,800};

int GENERALAIRQUALITYthresh[4] = {65, 100, 150, 200};

400ppmのCO2では眼鏡をかけたクールなハッピースマイルのアニメーションが表示されるはずです。500ppm以上では、空気交換の行き届いた通常の室内空間では、緑から橙色または黄色のスマイルアニメーションが表示されるはずです。1200ppm以上では、ユーザーは緑から赤にちらつく悲しいスマイルフェイスのアニメーションを認識するので、アニメーションは著しく頻繁に取得されます。1600ppm以上では、ブザーが断続的に鳴り、泣き顔のアニメーションに変わるので、ドロイドは自分自身に注意を向けるようになります。

また、ドロイドに一般的な大気質センサーがあり、ドロイドがオンになった時のデフォルト設定になります。ドロイドの両側にあるボタンを使用すると、AQセンサーを交互に切り替えることができ、またドロイドの特徴と機能を変更するためにプログラムすることができます。

ドロイドのコードは、より具体的なものにプログラムし直したり、大気汚染への意識と変化をもたらすために、さらに多くの機能や特徴を持たせることができます。

デモ映像によると、ESDKやドロイド本体から収集したデータに関連して、うまく動作し、正確な結果を示しています。

もし時間があれば、ドロイドのユーザーインターフェースと使用感をもっと研究して、スムーズで包括的なインタラクションを確保したかったです。また、ピクセルアートのデザインはもっと実験する余地があると思うので、将来的にはアニメーションでもう少し遊んでみたかったです。

全体として、このプロジェクトは素晴らしいものであり、私のコンフォートゾーンを広げ、押し広げるものでした。これまでの成果に満足していますし、さらに発展させることができるよう期待しています。

Mindful Droid sitting on a car dashboard

Mindful Droid being carried across shoulder

将来的には、子供から大人まで、学校や施設でも簡単に利用できる、モジュール式のコンパクトなマインドフルドロイド2.0が登場し、楽しいインタラクティブな方法で、公害の影響に対する意識を高め、変化をもたらすことができればと願っています。

以下はマインドフルドロイドがリアルタイムでESDKキットと連携して動作する様子を紹介した動画です。

ドロイド用モード構造に関するアップデート

以下はドロイド向けの新機能、機能、既存コードの調整等、さらなる追加を行ったものです。

ダウンロード

Michael is an Industrial Design Engineer, Maker and winner of the Young Innovators Award 2021, with over 9 years experience working in various industry sectors. Having a problem solving background, he is always enthusiastic about finding solutions to problems that challenge everyday living. His key focus points are inclusivity, functionality with consciousness, and sustainability.
DesignSpark Electrical Logolinkedin