🌏

しゃべぐるみ制作 その4(DFPlayer+App Inventor)※Maker Faire に初出展

2024/07/08に公開

こんにちは、dojinosukeです。
(Ideagearの鈴木陽介です。というあいさつ改め、今後はクリエイター名のdojinosukeで統一させてください。)

今回は、ドジパンダのしゃべぐるみVer.3.1の話ですが、その前に、、、

七夕の昨日、Hamamatsu Micro Maker Faire 2024(以下、HMMF2024)に、dojinosuke名義で出展させていただきました。実は、何気にメーカーフェアに出展するのは初めてです。
https://makezine.jp/event/makerfaire/hmmf2024/

約5年前の2019年11月に、深センで開催されたメーカーフェア深センにもIdeagearのプロトタイプを出展したものの、当時は、IoTLTさんのブースにIdeagearが相乗りさせていただきました。ですので、単独でメーカーフェアに出展するのは今回が初でした。

ただ、今回は私の怠慢もあって準備時間が足りなかったため、新しい技術に挑戦することをあきらめ、とにかく数を揃えることに注力しましたが、結果的には、それでも十分意義がありました。

ということで、記録として残すだけでさらっと流したいと思います。

はじめに

HMMF2024の準備も差し迫った先週になって、ようやくファブラボ浜松が運営するTAKE-SPACEに行き始めました。
http://www.take-space.com/

今回は販売可能(これすらTAKE-SPACEで数日前に教えてもらい、知った次第ですが、、、)とは言え、あくまでもメーカーフェア。プロトタイプや自社製品のお披露目がメインということで、展示品が無いと話になりません。

とはいえ、いかんせん数日しかなかったため、効率よく準備しないと間に合いません。

で、ちょうどブレッドボードの状態、基板に実装された状態、筐体に組付けられた状態、ぬいぐるみに実装された状態の各種が見つかったため、であれば、制作過程と完成品の両方を用意した方が、どうやって作ったかも目で見てわかるのでいいのでは?と、なりました。

それに、今回の会場は浜松科学館ということもあり、多くの子供たちの来場も見込まれます。

実は、ドジパンダのしゃべぐるみのゴールは複数考えていますが、そのアウトプットの一つとして、基板化、コネクタ化を進め、誰でもカンタンに組み立てられるキット化し、プログラム教育の一環として活用できればと考えています。

電子工作に興味が無い人に、いきなり電子工作どう?と、聞いてもあまり有効ではありませんが、ドジパンダやしゃべぐるみに興味を持った人に対して、実はこういう風に作られてるんだけど、やってみる?と、聞いた方が、興味を持ったりやりたいと思う人は増えると思うからです。

話が若干脱線しましたが、今回は、本来の目的である「しゃべぐるみの製品化を前進させる」ことはできませんでしたが、自分が納得できていなくてもそれなりに反響はあったため、ともかく出展してよかったです。


13:00に開場した当初の様子 その1


13:00に開場した当初の様子 その2

P.S. ドジパンダ自体もしっかりPRでき、グッズも買っていただけました。

参考記事

https://zenn.dev/suzuky/articles/b39dd588c89faa

https://zenn.dev/suzuky/articles/c872429ced4841

https://zenn.dev/suzuky/articles/deca20bb6e8499

出展品の概要

今回は、ブレッドボードの状態、基板+筐体に組付けた状態、そして、しゃべぐるみを2台用意しました。

ただ、しゃべぐるみの1台目はVer.3.0の状態(詳細は下記記事より)のものを修理してそのまま出しました。そして、ブレッドボード版と筐体版は、Ver.3.0と中身は同じです。
https://zenn.dev/suzuky/articles/b61943e19e9245

ということで、今回のメーカーフェアのために新たに準備したのは、実質的にしゃべぐるみ2台目のVer.3.1のみです。ですので、本記事では、Ver.3.1について解説します。

アプリ操作専用のしゃべぐるみ

Ver.3.1は、アプリでのみ操作できるようにしました。

2022年11月にIdeagearの最初のしゃべぐるみが誕生して以来、しゃべぐるみには常に、DFPlayer Mini(音声再生モジュール)とTTP223(タッチスイッチ)の2つがデフォルトで組み込まれていました。

ところが、今回は用意した4セットの内、3セットでタッチスイッチとリモコンによる操作が可能だったため、もう一体はあえて別のアプローチにしようと考えました。

ということで、Ver.3.1は余計な機能を省き、スマホアプリでのみ操作できるというシンプルなものにしました。タッチスイッチも赤外線受光モジュールも赤外線測距センサーも使いません。

配線及びスマホアプリ

今回のハード側の主な部品は、マイコン(Arduino)、Bluetoothモジュール(HC-05)、DFPlayer Miniの3つですが、詳細は、参考記事の3つの記事をご覧ください。理由は、しゃべぐるみVer.3.1についての配線やアプリとの連動については、基本的にこれら3つ記事の組み合わせであり、踏襲です。

App Inventor について

スマホソフト制作には、App Inventorを使いましたが、できたアプリは基本的にAndroid専用で、制作時はWindowsのブラウザ上でつくるのが一番エラーが少ないです。ご参考までに。
https://ai2.tmsoftwareinc.com/

余談ですが、私は、App Inventorのことをずっと「エーピーピーインベンター」と言っていましたが、今回、隣のブースの方が、「Scratch(スクラッチ)のようにプログラミングできるアップインベンターというのを使って、、、」と、説明していたのを聞いて、ハっとしましたw

下記リンクのMIT App Inventorの公式YouTubeでもアップインベンターと言っているので、こちらの呼び方が一般的のようです。。。
https://www.youtube.com/@MITAppInventor

App Inventor の画面

今回作ったアプリのデザインとブロックです。参考までに。


アプリの操作画面

実際のアプリ上の画面です。
App Inventor ではデザインをキレイに作りこむのが難しいのが難点です。
まぁあくまでプロトタイプを作るのが目的ですので、十分ですが、、、

ソースコード

ソースコード上の各変数、アプリ上の各変数、SDカード上の各ファイル名の数字は、すべて一致させないと動きませんのでご注意ください。詳細は、参考記事をご覧ください。

/*
0001_あそぼー.mp3
0002_最初はー.mp3
0003_じゃんけん.mp3
0004_ぽん.mp3
0005_あいこで.mp3
0006_ぐー.mp3
0007_チョキ.mp3
0008_パー.mp3
0009_こんにちはー.mp3
0010_ドジパンダだよー.mp3
0011_ありがとう.mp3
0012_またねー.mp3
0013_ごめんなさい1.mp3
0014_ごめんなさい2.mp3
0015_いらっしゃいませ1.mp3
0016_いらっしゃいませ2.mp3
0017_いらっしゃいませ3.mp3
0018_いらっしゃいませ4.mp3
0019_いらっしゃいませ5.mp3
0020_いらっしゃいませ6.mp3
0021_少々お待ち下さい.mp3
*/
  
  //DFPlayer Mini
#include "SoftwareSerial.h"
#include "DFPlayer_Mini_Mp3.h"
SoftwareSerial mySerial(10, 11); // RX, TX

// HC-05
SoftwareSerial Bluetooth(8, 9); // RX, TX
byte app = 0;

//ランダム変数
byte randNumber;

void setup () {

  // DFPlayer Mini
  delay(2000); //モジュール起動の待機時間
  mySerial.begin (9600);
  mp3_set_serial (mySerial); //set softwareSerial for DFPlayer-mini mp3 module
  mp3_set_volume (60);
  
  //HC-05
  Bluetooth.begin(9600); //opens serial port, sets data rate to 9600 bps
  Serial.begin(9600); //opens serial port, sets data rate to 9600 bps

  //ランダム変数
  randomSeed(analogRead(0));

}

void loop () {

  //アプリからの音声指令ループ
  if (Bluetooth.available()) { //アプリ内で選択した数字をBluetooth経由で受け取る 
    app = Bluetooth.read(); //appの変数にアプリから送られてきた値を代入する

    //じゃんけん・オート(ランダム)の場合のループ
    if (app == 22){
      //ランダム変数1 6:ぐー 7:チョキ 8:パー
      randNumber = random(6, 9); // 6から8の乱数を生成                           
      mp3_play (1); //0001_あそぼー.mp3
      delay(3000);          
      mp3_play (3); //0003_じゃんけん.mp3
      delay(3000);   
      mp3_play (randNumber); //0006_ぐー.mp3 / 0007_チョキ.mp3 / 0008_パー.mp3
      delay(2000);               
    }

    mp3_play (app); //各ボタンの発話指令
    delay(2000);      
  }
  delay(1);

}

動作確認

今回出展した4セットを動画でご覧ください。

https://x.com/dojinosuke/status/1809235457978573309
前々日の準備の様子。しゃべぐるみ2体と制作過程2つの4セット用意しました。

https://x.com/dojinosuke/status/1809490373628383574
前日の準備の様子。アプリ版にじゃんけん機能を追加しました。

https://x.com/dojipanda_/status/1809527727860642007
Ver.3.1は、少し編集してドジパンダのアカウントでも流しました。

まとめ

しゃべぐるみの音が小さい。というのが、今回の出展でも改めて浮き彫りになりました。

しゃべぐるみにずっとつきまとっている課題もありますが、今回も周りが賑やか過ぎて、来場者の方々が近づくか、こちらから近づけないと、まともに音が聞こえませんでした。

もちろん、今回のブースの周りは、特に音がメインの展示が多かったことも一因ではありますが、会場が広かったり賑やかだったりすると音が聞こえにくいのは前からです。それに、以前と違って、今は音を大きくする方法がわかっていてるのに、未だにそれを実施していないのは怠慢です。さすがに次回は音の問題は解決しないといけません。

もう一つは、他のブースと比べて見た目のインパクトが低く、一見すると単なるぬいぐるみにしか見えないため、質問もしないで通り過ぎる人も結構居ました。ただ、それはこちらも理解していたので、4時間半ずっと展示品の接客wをしていました。幸い、説明すると反応は上々でした。

とはいえ、以前、普通のパンダの手足を動かしていた時(詳細は下記)のように、ドジパンダの手足にマイクロサーボモーターを入れて動かすタイプもちゃんと準備しておいた方がいいと感じました。

以下は、圧力センサーとマイクロサーボモーターを連動させた時の様子。
https://zenn.dev/suzuky/articles/042c9996f3f90a

https://x.com/dojinosuke/status/1685201338081427456
上記動画は、圧力センサーとマイクロサーボモーターを組み込んだパンダのしゃべぐるみで、深センの展示会に友情出展した時の様子。

来場者は、何だろう?と、結構触っていました。クリエイターエキスポだったこともあり、会場内で唯一動いていましたw

ということで、今回のメーカーフェアは13時~17時までのわずか半日でしたが、来場者もひっきりなしにあって活気があり、久々に刺激を受けました。できれば11月の大垣にも出展したいです。

ではまた!

Discussion