
GNDと3.3Vの線をまとめる
DC-DCのGNDには4本、VO 3.3Vには2本を接続します。先に6mmほど被覆をむき、よってから半田で固めておくと、基板へ付けやすくなります。
音センサーとESP32C3 SuperMiniをピッコリーネに内蔵し、声や音をきっかけに動くおもちゃにする方法です。アプリを起動しなくても、電池を入れてスイッチを入れるだけで、声に反応して動くようになります。
「おもちゃであそぼう」アプリの声で動かすモードでは、声をかけると犬のおもちゃが動きます。かわいいおもちゃが声に反応して近づいてくるため、使っている方から「癒される」という感想を聞くことが多くありました。
そこで、アプリを介さずにおもちゃ本体だけで同じような動きができれば、アプリ操作が難しい方にも使いやすいのではないかと考えました。ピッコリーネの中に音センサーを入れ、声や音をきっかけに動くようにしたものが、このVoiceSwitchです。
一人暮らしの高齢の方の話し相手のように使ったり、発声に難しさがある方が「声を出してみよう」と思うきっかけにしたり、いろいろな使い方が考えられます。

主な部品は、音を検出するKY-037、信号を処理するESP32C3 SuperMini、電源を3.3VにするDC-DC基板、モーターをON/OFFするNch MOSFETです。




| 部品 | 役割 |
|---|---|
| ESP32C3 SuperMini | 音センサーからの信号を受け取り、MOSFETを制御します。 |
| 音センサー検出モジュール KY-037 | 声や音を検出し、D0からESP32へ信号を送ります。 |
| DC-DC 3.3V昇圧基板 | おもちゃの電池電圧を、ESP32とKY-037が使う3.3Vにします。 |
| 470µFコンデンサー | DC-DC入力側の電源を安定させます。 |
| Nch MOSFET(IRLZ44N等) | モーターのマイナス側をON/OFFするスイッチとして使います。 |
| ダイオード | モーターの逆起電力対策です。写真では3Aを使っていますが、1Aでも十分です。 |
| アルミシート・スポンジ付き両面テープ・ホットボンド | 絶縁、ノイズ対策、基板固定に使います。 |
声や音をKY-037が検出すると、D0信号がESP32C3 SuperMiniへ入ります。ESP32はその信号を受けて一定時間だけMOSFETをONにし、ピッコリーネのモーターを動かします。
電源の流れは2つに分かれます。ESP32C3とKY-037は、DC-DCで作った3.3Vで動作し、モーターとMOSFET側には電池の電圧がそのまま使われます。
配線前に、ESP32C3 SuperMiniへVoiceSwitch用のプログラムを書き込みます。書き込み後は、音センサーからの信号をGPIO4で受け、GPIO3からMOSFETへ出力する動作になります。
まずは内蔵する部品をひとまとまりにして、ピッコリーネの中へ入れられる状態にします。写真はタッチまたはクリックすると、大きく表示できます。

DC-DCのGNDには4本、VO 3.3Vには2本を接続します。先に6mmほど被覆をむき、よってから半田で固めておくと、基板へ付けやすくなります。

DC-DCの入力側に470µFコンデンサーを取り付けます。VO側にも配線を付けやすいよう、必要に応じてピンを半田付けしておきます。

電池ボックスからの入力、ESP32とKY-037へ送る3.3V、共通GNDの線を接続します。あとで確認しやすいよう、線の色を決めておくと安心です。

マイクを音を拾いやすい向きに付け直します。青い感度調整ボリュームは本体から外し、30AWGの線3本で延長して、後から調整しやすい位置へ出せるようにします。

KY-037へDC-DCからのGNDと3.3Vを接続します。D0の信号線はESP32のGPIO4へつなぎます。

Nch MOSFETには、ESP32のGPIO3へつなぐ信号線、モーターへつなぐマイナス線、共通GNDへつなぐ線を接続します。モーター側は電池の電圧で動くため、MOSFETはそのマイナス側をON/OFFする役目になります。足同士が触れないように絶縁します。

ESP32には、DC-DCからのGNDと3.3V、KY-037からのD0信号線をGPIO4へ、MOSFETへの制御線をGPIO3へ接続します。KY-037もESP32も、ここではDC-DCからの3.3Vで動作します。

ESP32、KY-037、DC-DC、MOSFETをすべて接続した状態です。ピッコリーネへ入れる前に、配線の向きやショートがないことを確認します。

3V電源をつなぎ、KY-037が音を検出した時にMOSFET側へ出力されるかを確認します。ここで感度調整も一度行っておくと、内蔵後の確認が楽になります。
配線したVoiceSwitchをピッコリーネの内部へ取り付けます。ToySwitch内蔵型と同じように、モーター周りのノイズ対策と、外装に干渉しない配置が大切です。

ピッコリーネにもともとあるモーターの黒いマイナス線は外します。あわせて、部品を取り付けやすいようにセラミックコンデンサーの位置を少し上へ移動します。

モーターの上に、絶縁とノイズ対策を兼ねたアルミシートを貼ります。その上へESP32、DC-DC、コンデンサーをホットボンドで固定します。

MOSFETはモーターからできるだけ離し、電池ボックスの後ろ側に固定します。胴体パーツがはまるように、下から3mmほど空けて取り付けます。

KY-037の裏側にスポンジ付き両面テープを重ねて貼り、接着面を増やします。基板が斜めになりすぎないようにしておくと、取り付けやすくなります。

マイクが音を拾いやすいよう、背中の少し左側にKY-037を取り付けます。真上に出すと出っ張りが目立つため、少し横へ逃がすと自然に収まります。

青い感度調整ボリュームは、後から調整できる位置に配線します。KY-037は少し回すだけで反応が大きく変わることがあるため、完成後に布を少し開けるだけで調整できる位置に固定しておくと安心です。使う部屋の音環境や、ぬいぐるみを戻した後の音の入り方によって反応が変わることがあるので、ここで微調整できるようにします。

電池を入れて電源を入れると、KY-037のLED1が赤く透けて見えます。声をかけて、ピッコリーネが5秒間動くことを確認します。
VoiceSwitchでは、KY-037の感度調整がとても大切です。感度が高すぎると、周りの音や自分の動作音を拾って動き続けます。低すぎると、声をかけても反応しません。
VoiceSwitchは、アプリなしで声や音に反応して動くタイプです。アプリから操作したい場合や、ほかのおもちゃにも付け替えて使いたい場合は、用途に合わせて次のページをご覧ください。
MaBeeeやToySwitchでおもちゃを動かすアプリの概要、使い方、対応機器をまとめた紹介ページです。
電池ボックスにBD配線を挟み、おもちゃを大きく改造せずにアプリから操作する基本タイプです。
ピッコリーネの中にToySwitchを組み込み、アプリからBluetoothで操作できるようにする方法です。
USB電源のおもちゃやACアダプタ機器、パトライトなどを電源ごとON/OFFしたい場合のタイプです。
おもちゃを動かすToySwitchとは別に、iPadなどのアプリをSpaceキーで操作するBluetoothスイッチです。
VoiceSwitchに関心のある方、作り方について確認したい方、実際のおもちゃへの使い方について相談したい方は、下記フォームからお知らせください。すぐに対応できるとは限りませんが、相談内容に沿うよう対応させていただくとともに、今後の改良や情報整理の参考にしたいと思います。