FC2ブログ

名張市つつじが丘おもちゃ病院

三重県名張市つつじが丘でおもちゃの病院を開院しています。年中無休で修理は無料、部品代のみ実費です。おもちゃの修理依頼は tutuji@cb4.so-net.ne.jp へメールにてご連絡下さい。なお、宅配便での受け付けは行っておりません。このブログにはおもちゃ等の修理事例やツール製作などを載せていきます。故障診断や修理方法の改善等、ご意見をお寄せ下さい。

ミミクリーペットの修理(ボイスレコーダー・チェンジャー換装)

1.患者
①タカラトミーアーツのミミクリーペットという小動物のぬいぐるみ系おもちゃ。
ミミクリーペット修理外観

②子どもが話しかけた言葉をロボット風の声に変えてオーム返しする、ボイスレコーダー+ボイスチェンジャーの機能である。

③再生している間は頭を上下させる。

2.症状
電源を入れると「ピッピッピッ」と鳴り、その後はまったく動かない。

3.診察
ミミクリーペット分解1

ミミクリーペット分解2

ミミクリーペット分解3
①基板上の能動部品は3.3Vレギュレータ、COBマイコン、モーター制御用Trのみである。レギュレータの入力と出力は正常である。

②マイコンには外付けのクロック発振子はなく、内蔵OSCを使っているようである。

③電源投入後「ピッピッ」と鳴った後、コンデンサーマイクに電源が供給される。この音が何を意味するのか不明。メーカーサイトやその他Web検索でも有用な情報が見付からなかった。

④メーカーのサイトで商品の機能を確認したら、ボイスレコーダ+ボイスチェンジャーであった。
・話しかけた言葉を声色を変えて再生する。サンプルを聞いたところ、1オクターブ上げたようなロボット的な声になる。
・音声を検出したら録音開始し、音声が途切れたら再生に切り替わる。
・再生が終わると音声待ちになる。
・再生中は頭が上下に動く。

⑤マイクに話しかけても音声出力もモーター制御も動作しない。マイクの出力は直接COBマイコンに入力されていて、ここに外部から信号を注入しても反応がない。

4.治療
①COBマイコンを別の1チップマイコンで換装することにした。

②【概要設計】
・1チップマイコン+SRAMでボイスレコーダー+ボイスチェンジャーを実現する。
・録音は4Ksps、8ビットのPCMで4kバイト/秒のメモリが必要。32K×8ビットのSRAMで8秒間の録音が可能。
・マイコンの条件は、ADC、DACを内蔵し、ポート数は下記の30本が必要である。
 ADC入力に1本
 DAC出力に1本
 SRAM制御に26本(アドレス15本、データ8本、コントロールのCS・OE・WR)
 モーター制御に1本
 マイクの電源制御に1本
・上記のポート数以外に、デバグ時にはシリアル通信ポート(TX、RX)も持っておきたい。
・マイコン、SRAM、周辺回路が30mm×30mmの基板に収まる大きさであること。これは、このおもちゃに内蔵するための絶対条件である。
・総コストは高々200円であること。これは、おもちゃの修理は無制限にコストを掛けるのではなく、創意工夫を凝らしてコストを抑えるべきという、私個人が決めたルール。
・これらより下記のデバイスを選定した。
 マイコンはPIC16F887-I/PT(2013年秋月価格140円)
 SRAMはGM76C256C-55(2013年秋月価格12円)
 ディスクリート部品もチップ部品を使って廉価にする。

③【ADC】
・16F887内蔵ADCは変換時間が約70usで、サンプリング周期の250usに対して十分なスピードである。

④【DACとボイスチェンジャー】
・16F887内蔵のPWMを使ってDACを実現する。
・内蔵8MHzクロックでPWM分解能は1/8MHz=0.125us、8ビットでPWM周期は0.125us×256=32us(=31KHz)となる。
・ボイスチェンジャーとして1オクターブ上げて再生速度を8KspsにするとPWMデューティの更新周期は125usとなる。
・125us/32us=3.9となり、4倍オーバサンプリングでの再生が可能となる。割り戻して切りのよい値に合わせて、PWMデューティの更新周期を128us、録音時のサンプリング周期は256usとする。
・128us×128=16ms毎に再生を2回ずつ繰返して、しゃべるスピードは元のままにする。

⑤【付加機能】
・長時間(5分程度)音声入力が無いときはオートパワーオフする。

⑥【回路設計】
ミミクリーペット回路図
・回路は、PIC~SRAM間のバスラインの接続とマイクアンプ、スピーカアンプ、モーター制御のオーソドックスな構成である。
・パワーオフ時の消費電流を抑えるため、マイクアンプの電源をポートから出力する。
・ファームウェアのテストや調整を行うため、ICSP用ピンヘッダを立てておく。
・ICSPはマイコンボードから周辺回路(モーター、スピーカー)を切り離して実行する。

  ピン接続図
ミミクリーペット修理ピン接続図

  配置図(部品面)             (半田面)
ミミクリーペット修理配置図

⑦【ファームウェア開発】
・別資料のMPLABプロジェクトを参照
・16F887を内蔵8MHzOSCで稼動させる。
・録音時のサンプリングレート250usはTMR0で管理する。TMR0ソースは命令周期・プリスケ無しとし、0.5us周期でインクリする。TMR0のオーバーフロー2回毎にADCする。
・再生用のPWMは常に稼動させ、デューティを0に設定することで音声出力を止める。TMR0のオーバーフロー1回毎にデューティを更新することで、8Kspsで再生する。
・128サンプル毎に2回ずつ再生を行う。

⑧【基板製作】
・PICマイコンとSRAMを片面蛇の目基板の部品面にホットボンドで貼り付ける。
・ディスクリート部品は半田面に装着する。
・ポリウレタン線で配線する。

部品面
ミミクリーペット修理基板1

半田面
ミミクリーペット修理基板2

周辺との接続
ミミクリーペット修理基板3

⑨【調整】
・マイクアンプのレベルを実測し、また実際に動かしてみた使用感からファームウェアのパラメータを調整した。
 待機中に音声ありを検知するレベルは、ADC結果の上位8ビットで140とした。
 録音中に音声ありを検知するレベルも、ADC結果の上位8ビットで140とした。つまり、ヒステリシスは無いということ。
 録音中に音声なしが0.5秒継続したら、再生に切り替える。
 再生終了後はモーターが停止するまで1秒間待つ。この待ちを入れないとモーター音を音声ありと誤認識していつまでも動作を続けてしまう。
 長時間の無音状態によりsleep(オートパワーオフ)するまでの時限は256秒とした。
・sleep中の消費電流の実測値は59uAで、1AHの電池では706日間持つことになる。

⑩【実装】
・ホットボンドで配線を固定する。
ミミクリーペット修理基板4

ミミクリーペット修理基板5

・基板を本体に収納する。
ミミクリーペット修理基板6

サンプル音声はこれ

開発したファームウェアは ここから ダウンロードできる。
ディレクトリ 「Yatuka20131128」 にMPLABプロジェクトが格納されている。
スポンサーサイト



  1. 2013/12/28(土) 16:36:25|
  2. マイコン換装
  3. | コメント:0

音声録音再生(ボイスチェンジャー)の製作

PICで音声録音再生を作ったので紹介する。ボイスチェンジャー機能も付いている。

【外観】
音声録音再生+ボイスチェンジャー
ボイスチェンジャー外観

【サンプル音】
生の音声の後にロボット音にチェンジされた音声が再生される。
サンプル音はこれ

【セールスポイント】
①190円(2014年秋月価格)のPICで作れる。
②演奏出力信号はPWMになっているので、後続のアンプ回路の電力効率がよい。

【回路図】
ボイスチェンジャー(回路図)

【録音再生処理】
マイクで拾った音声を4kspsでPCMデータに変換し、メモリに蓄積する。
音声が途切れるか、メモリが一杯になったら録音を停止し、再生を始める。
メモリに蓄積されたPCMデータを読み出して8kspsで再生する。倍のレートで再生するので1オクターブ上がった音になり、ロボット風の音声に変わる。レートを上げるだけだと早口になってしまうので、しゃべるスピードは元のままにするために、30ms毎に2回繰り返して再生する。

【ADCとDACのタイミング】
DACはPWMを利用する。
PWM周期は、内蔵クロックが12MHzであることから (1/12MHz)×256=21.3us とする。
ADC周期はPWM周期の12倍とし、256usとする。
DACはADC周期の1/2で128usとする。6倍オーバーサンプリングとなる。

【音声出力信号】
PWMで出力するので、スピーカーの駆動はデジタルアンプを推奨する。アナログアンプを繋ぐ場合はローパスフィルターを設置すること。

【ダウンロード】
設計資料とファームの開発プロジェクトは ここから ダウンロードできる。
  1. 2013/12/28(土) 12:28:25|
  2. 音声再生・録音再生
  3. | コメント:4

ワールドグローブの修理(タッチペン製作)

1.患者
ワールドグローブ(学研のしゃべる地球儀)
ワールドグローブの修理外観1

タッチペン
ワールドグローブの修理外観2

内部
ワールドグローブの修理分解1

2.症状
①電源SWをオンするとオープニングメッセージが流れて、タッチペンで球体部の表面がタッチされるのを待っている。

②しかし、球体部のどこをタッチしても無反応である。

③「国」とか「州」、その他ゲームのボタンを押すと音声で操作案内が流れるが、タッチペンが効かないことは変わらない。

3.診察
①CoCoPadと同様のタッチペンなので、CoCoPadテスト用タッチペン(下記参照)に差し替えてみたが、反応しない。

【CoCoPadテスト用タッチペン】
ワールドグローブの修理テスト用タッチペン

CoCoPadのタッチペンの中身は同軸コードが通っているのみで電子部品は無い。先端のアンテナ(?)で拾った信号を本体へ導いているだけである。それと同等のものを作って、テスト用タッチペンにしている。

②球体部の表面から座標信号が出ているか、確認する。右画像のように、オシロスコープのプローブ先端を球体部の表面にあてると下記の信号が観測された。
ワールドグローブの修理波形観測

【縦軸】
黄:本体基板から取り出した球体部への同期信号
AC1V/div
赤:球体部の表面で拾った信号
DC20mV/div
【横軸】
2ms/div
ワールドグローブの修理波形1

ワールドグローブの修理波形2

信号の観測結果から信号形式は不明であるが、球体部の表面からは本体基板の同期信号に同期した位置信号が出ているようである。従って、球体部の故障ではなく、センスする側(タッチペンと本体基板のセンスアンプ、若しくはマイコン)の故障と判断した。

③本体基板のセンスアンプ部(?)はシールドケースに覆われているので、それを外して回路を追うが、能動部品はチップFETのようなものが1個付いているだけである。その端子の信号を観測したが、20mV/divでも波形は観測されなかった。
ワールドグローブの分解2

④構造や信号の設計がまったく判らないので、センスアンプ部のチップ部品とRCAピンジャックの半田付けをやり直してみた。その結果、CoCoPadテスト用タッチペンでの反応が見られるようになった。

⑤正常にセンスできているときは、本体基板の次の画像に示すポイントで下記の信号が観測されたが、信号の意味は不明である。球体部の表面にタッチしていないときは電位3.2Vで信号波形は現れない。
ワールドグローブの分解3

ワールドグローブの修理波形3

⑥元々のタッチペンでは反応が無いためタッチペンは不良と判断し、新しく製作することにする。

⑦信号が観測されるようになったので、もう一度、上記③のセンスアンプ部の信号を観測したが、やはり信号らしいものは観測されなかった。回路構成は不明のままである。

⑧座標信号の観察結果は「 ワールドグローブ座標信号の観察.pdf 」を参照。

4.治療
①治療の内容は「センスアンプ部(?)の再半田」(診察の過程で実施済み)と「タッチペンの製作」になる。以下にタッチペンの製作状況を報告する。

②部材として同軸コード(1.5C-2VS)、RCAピンプラグ、金属パイプ(今回は折れたアンテナで5mmφ7cm長を利活用)、絶縁チューブ(今回はボールペンの芯20mm長を利活用)を用意する。
ワールドグローブの修理製作1

③同軸コードの先端部を剥く。

④絶縁チューブに内部導体を通して、金属パイプに通す。内部導体が金属パイプから7mm露出させて、外部導体を金属パイプに半田付けする。
露出する長さが短いと赤道付近でセンスしなくなる。長くすると認識する座標がズレてくる。7mmの長さは試行錯誤した結果である。
ワールドグローブの修理製作2

⑤絶縁チューブの部分をホットボンドで覆い先端の形を整えて、熱収縮チューブで固める。
ワールドグローブの修理製作3

ワールドグローブの修理製作4

⑥同軸コードの反対側の先端にはRCAピンプラグを半田付けする。
ワールドグローブの修理製作5

⑦製作するときの注意事項は、アンテナ部分以外は完全にシールドすることである。これまでの経験から、信号経路上でシールドされていない部分があると動作しない。

⑧本体に取り付けて動作確認した結果、球体部の座標の認識は良好で、タッチした国名を間違いなくしゃべるようになった。
ワールドグローブの修理製作6

⑨まれに、「紫のやじるしをタッチして下さい」と地球儀の特定の場所をタッチすることを要求されることがあり、自動的に校正を実行しているようである。

⑩構造が解明できず故障箇所の切り分けが明確にはできなかったが、これ以上の探索は僕の技術レベルでは無理なので、退院させることとした。
  1. 2013/12/19(木) 08:43:52|
  2. 電子・電気修理
  3. | コメント:5

プロフィール

大泉茂幸

Author:大泉茂幸
名張市つつじが丘おもちゃ病院
名張市つつじが丘南3番町129
tutuji@cb4.so-net.ne.jp
090-5534-6494
連絡は上記のメール、またはSMSでお願いします。

子どもの頃から趣味は電子工作一筋でやってきました。理科離れが進む中で科学技術に興味を持つ子どもが少しでも増えて行くことを願って、子ども達に電子工作の活動の場を提供しています。

1981年からおもちゃ病院の活動を始め、2014年に三重県名張市への移住を機に「つつじが丘おもちゃ病院」を開院しました。自分でおもちゃを設計し製作する【おもちゃ工房】と、マイコンを応用した電子工作を楽しむ【マイコンクラブ】も併設しています。新規参加メンバーを募集しています。

当ブログで公開している技術情報や成果物の複製、改変および再配布はフリーです。読者様のおもちゃ病院活動のお役に立てば幸いです。ご利用いただいた結果や感想等を記事へのコメントやメールでフィードバックしていただけると有難いです。なお、公開ファイルは最新版を載せているので、古い記事の内容から変わっている場合があります。

カテゴリ

おもちゃ修理技術 (124)
¦ ・電子オルゴール+音声再生 (52)
¦ ・音声再生・録音再生 (13)
¦ ・2.4GHzラジコン (35)
¦ ・レガシーラジコン (13)
¦ ・赤外線リモコン (4)
¦ ・RFID (3)
¦ ・タッチセンス (4)
ツール製作 (35)
¦ ・プログラマー (27)
¦ ・USB-シリアル変換 (3)
¦ ・その他のツール (5)
修理事例 (157)
¦ ・マイコン換装 (75)
¦ ・電子・電気修理 (59)
¦ ・メカ修理 (23)
製作記事 (5)
PIC開発 (4)
おもちゃ病院 (9)
ドクター研修会 (2)
未分類 (0)

最新記事

最新コメント

月別アーカイブ

訪問者数

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

QRコード

QR