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

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

消防車MARUSHOの修理(ギア製作)

1.患者
消防車(MARUSHO)
消防車MARUSHOの修理(ギア製作)外観

2.症状
①モーター回っているようだが、カチッカチッとギアが外れるような音がして動かない。

②サイレン音が鳴らない。赤色灯も片方が点灯しっ放しである。

3.診察
①全体の機構は以下のようになっている。左下のカムでラックを動かせて、ラックが梯子の台座を回転させる。下の画像は故障時の状態を撮影したもので、右下のカムの位置が180度反転してしまっていて、本来はカムがラックを左方向へ動かすように作用する。ラック/ピニオン機構で白い紐がドラムに巻き取られて梯子が縮む仕組みになっている。
消防車MARUSHOの修理(ギア製作)診察1

消防車MARUSHOの修理(ギア製作)診察2

②梯子を駆動する機構を構成するラック/ピニオンで、ピニオンギアに割れがあった。割れ部分でラック/ピニオンが固まってしまう。
消防車MARUSHOの修理(ギア製作)診察3

消防車MARUSHOの修理(ギア製作)診察4

③このピニオンは梯子を畳むための紐を巻き上げるドラムと一体成型されている。大きな力が掛かるギアなのに汎用プラスチック素材で作られていることが割れる原因ではないか。以前にこれと同じおもちゃを修理したことがあるが、そのときも今回と同じギアが同じように割れていた。

4.治療
①POM樹脂で機械強度が高いギアを製作して交換する。

②外径は7.2mm、歯数は8枚。モジュールサイズは0.72と中途半端な値になる。割れて膨らんでいると考えるて、外径7.0mmでモジュールサイズは0.7で製作する。

【ギア製作工程】
③POM樹脂の丸棒を治具に取り付けて外径を7.0mmまで削り、インデックスロータリーに取り付ける。
消防車MARUSHOの修理(ギア製作)治療1

④ギアカッターで1枚ずつ削って行く。インデックスロータリーを進めて、8枚分を全部削る。
消防車MARUSHOの修理(ギア製作)治療2

消防車MARUSHOの修理(ギア製作)治療3

【組み付け】
⑤元のピニオン部分を切り取り、製作したピニオンを軸に打ち込み、取り付ける。
消防車MARUSHOの修理(ギア製作)治療4

【その他の修理】
⑥カムにも割れがあり空回りしていた。角軸なので針金で縛ることで固定できた。2か所修復した。
消防車MARUSHOの修理(ギア製作)治療5

消防車MARUSHOの修理(ギア製作)治療6

⑦ハウジングを被せて動作確認したところ、梯子を仕舞う動作でカチッとギアが舐めることがある。ラックを強力なバネで引っ張っていて機械的な負荷が重く、上の画像のウォームギアと平ギアの噛み合わせが浅くて舐めていることが判った。

⑧軸受けは健常でギアの位置関係が狂っているようではないし、ギアに欠けや割れもない。対処として、ウォームギアの軸受を噛み合いが深くなる方向へ寄せることにした。細い棒やすりで軸受の穴を長くして、隙間の開いた方には針金を詰める。針金はハンマーで叩いて平たくしておく。
消防車MARUSHOの修理(ギア製作)治療8

⑨機械的な負荷を下げるため、ラックを引っ張るバネを弱めのものに交換し、梯子を仕舞う紐を少し緩めてスムーズに動作するようになった。その代償として梯子が完全に下がり切らないこととなったが、我慢していただく。自己評価は60/100点。

⑩赤色灯とサイレン音は、メカの修理後に確認すると自然回復していた。基板をたわめたり温度ストレスを与えたりしてみたが、不具合は再現しなかった。
消防車MARUSHOの修理(ギア製作)治療7
スポンサーサイト
  1. 2015/09/26(土) 19:07:18|
  2. 修理事例
  3. | コメント:0

キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)

1.患者
キッズドライバーのハンドル(アガツマ)
キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)外観1

キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)外観2

2.症状
①何を操作しても全く動かない。

3.診察
①基板にはCOBチップとムギ球(鼻の中にある)のドライブ用Trが1個。それが主な部品である。

②COBチップの際まで電源供給は正常。

③すべてのSWはベタ読み(非マトリクス)で、ローサイドに配置されている。COBチップの内部プルアップ。COBチップの際で信号の正常を確認した。

④外部のクロック回路もリセット回路も無い。

上記の状況からCOBチップ故障と診断した。

4.治療
①COBチップを1チップマイコンで換装する。
・ヤフオクでは入札締め切り2日前で2k円の値が付いていた。
・PICで換装すれば100円台で済む。但し、出荷時の機能・性能と同じではないが、近しいところまで修理できる。
・このおもちゃに限らないが、メーカーに折衝して基板提供を受けられたという話を聞くことがある。僕も、おもちゃ病院のお客様に代わってメーカーに連絡して無償で商品交換をして貰ったことがある。新品になったのだからお客様には喜ばれたが、僕にとっては面白くなかった。自分で創意工夫を凝らして直すのが面白い訳で、部品交換するだけじゃつまらない。
・メーカーから純正部品を入手するのも避けたい。部品作りから楽しまないとソンだ。
 という訳で、今回もオール自作で修理に臨む。

【要件】
②ネットを検索してもこのおもちゃの動作仕様が判明しなかった。アガツマのWebサイトには、このモデルは掲載されてなく、新製品の商品説明は以下である。

●ハンドルに付いているボタンを押すと、消防車、パトカー、救急車、3種類の緊急車両のサイレン音と、アンパンマンのおしゃべりが楽しめます。
●シフトレバーやウィンカーなど、本物みたいなドライブ遊びができるギミックが盛りだくさん。
●座席とペダル部の位置は、接続パーツのネジ位置によって、3段階に調節できます。
●セット内容 : ハンドル×1 支柱×1 ペダル部×1 座席×1 接続パーツ×2 ネジ×8 ワッシャー×6 スプリングワッシャー×6

上記から以下の機能要件とした。

・操作と動作
●エンジンキー:最初はエンジンの始動音でその後は定常なエンジン音を音声再生する
●ウィンカー:ウィンカーのLEDを点滅し、カッチカッチ音を音声再生する
●音符ボタン:アンパンマンのマーチをオルゴール演奏する
●救急車ボタン:救急車サイレン音をオルゴール演奏する
●パトカーボタン:パトカーサイレン音をオルゴール演奏する
●消防車ボタン:消防車サイレン音をオルゴール演奏する
●アンパンマンボタン:アンパンマンの声で「いっしょにいこう」を音声再生する
●アンパンマンの顔:顔の中のムギ球を点灯し、クラクション音を音声再生する

・電源SWが無いので、操作が無いときはsleepしておき、操作されたらwakeupさせる。

・電源は元々の単三電池3本の4.5Vとする。

【設計】
③必要メモリを少なくするため、3種類のサイレン音は音声再生ではなく電子オルゴールで発声させる。
・これは、メモリの小さいPICで多くの効果音を発声させるための方策として、今回の取り組み課題である。
・電子オルゴールのPCM音源方式は既に実現しているので、サイレン音と消防車の鐘の音はPCM音源で演奏させるとリアルな音が出せる。
・パトカーと消防車のサイレン音は周波数が滑らかに昇降する。これを電子オルゴールで演奏させるには、楽器のシンセサイザにあるピッチベンドの機能を持たなければならない。ピッチベンドの機能は現在は持っていないため、このおもちゃの修理に着手する前に、電子オルゴールの機能改善を行っておく必要がある。

④「電子オルゴール+音声再生Ver5_2」で、音声再生は3音声が同時発声できるように改善しているので、このおもちゃの効果音は以下の割当てにする。
・音声再生0:エンジン音
・音声再生1:ウィンカーのカッチカッチ音とクラクション音
・音声再生2:「いっしょにいこう」の音声

 ウィンカーとクラクションは同時発声ができないので、クラクションを優先させる。

⑤音声のPCMデータは上記の4つで、合計3秒以下である。4kspsでは6kワードで足りる。

⑥入力信号は、SWが9個。出力信号はPWM、ウィンカーのLED2個と顔のムギ球1個。合計13個になる。16F1705ではポート数が足りないので、SWを5×2のマトリクス構成にして必要なポート数を削減する。元々のSW回路は5個のグループになっていて、5×2のマトリクスに作り替えやすい構造になっていた。これでポートが2本節減できる。

⑦SWマトリクスでは、セレクト信号の廻り込みを防止するためのダイオードを各SWに装着するのが普通だが、今回は部品点数を少なくするため割愛する。そのためオン状態が継続するSWは1個に抑える必要がある。ウィンカーSWとエンジンSWは、その構造上オン状態が継続するためエンジンSWをマトリクスから外してベタ読みすることにする。従ってポート数は1本増える。
他のSWも複数のボタンが同時に押されると誤読が発生するが、使用上は問題ないと考える。

⑧上記⑥と⑦の対応でポート数は12本になり、ギリギリで16F1706に収まる。これで、デバイスは16F1705(2015年秋月価格110円)に決定した。

⑨SW信号とポートの対応

キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)治療1
・SWのセレクトとセンスは内部プルアップを利用するため、負論理とする。

⑩出力ポートの割当て
・RC2:PWM(正極性)
・RC3:ウィンカー右LED(正論理)
・RC4:ウィンカー左LED(正論理)
・RC5:顔ムギ球(バッファTrが元々の基板に付いていて、PICからは正論理)

【回路図】
⑨回路図は下記のとおりとした。

キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)治療2

【ファームウェア】
⑩電子オルゴール+音声再生Ver5_3をベースに、SWの評価と曲・音声の制御をカスタマイズして開発した。

⑪開発したファームウェアの設計資料とプロジェクト一式、音源ソースは ここから ダウンロードできる。

【実装】
⑫元々付いていたCOBチップには電流が流れていたので、SW回路から切り離す。
キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)治療3

⑬PIC16F1705にはパスコンとスピーカーバッファアンプのTr等を付ける。
キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)治療4

⑭SWをマトリクス構成に組み替える。

⑮PICは空中配線で元々の基板へ配線する。
キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)治療5

⑯動作確認をして、ホットボンドで基板に固定する。ICSPのピンはICテストクリップで挟めるようにピン回りを空けておく。
キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)治療6

キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)治療7

【演奏音】
演奏音はこれ
 効果音の「演奏」は臨場感が今一でブラシアップが必要だ。自己評価は80/100点。


5.徳島おもちゃ病院でのご利用

このブログ記事を公開した同じ時期に、徳島おもちゃ病院様でも同じおもちゃでCOBチップ不良のものがあり、ここで紹介したファームウェアと回路をそのまま使って修理完了したとのこと。

【徳島おもちゃ病院様からご提供いただいたマイコン換装実施後の画像】
キッズドライバー「アガツマ」ハンドルの修理(電子オルゴール・音声再生換装)治療徳島
  1. 2015/09/25(金) 11:49:31|
  2. 修理事例
  3. | コメント:8

動物鳴き声絵本ポプラ社の修理(電子オルゴール改造)

1.患者
動物鳴き声絵本(ポプラ社)
動物鳴き声絵本ポプラ社の修理(電子オルゴール改造)外観

2.症状
①どのキーを押しても音が出ない。

3.診察
①基板のCOBチップの際まで電源は来ている。

②SWパターンに印加された電圧を診ると、全く電圧が架かっていない。このおもちゃには電源SWがないのでポートチェンジ検出でWakeupさせているはずで、どのSWにも静的に電源電圧に近しい電圧が印加されているはずだ。

③SWパターンは両極ともハイインピーダンス状態でプルアップもプルダウンもされていない状況だ。どのSWパターンも同様の状態で、ポートの初期化まで走っていないと思われる。

④COBチップにはクロック用と思われる抵抗160kΩが外付けされているが、両端とも電圧はほぼVccに張り付いていてクロックは確認できない。32kHzと455kHzのクロックを注入してみたが、SWはハイインピーダンスのまま変わらなかった。

⑤外部リセット回路も見当たらない。

⑥これらの状況からCOBチップの故障と判断した。

⑦中古品がAmazonで1円+配送料257円で流通しているので、それ以下で仕上げないとお客様にはご満足していただけない。
動物鳴き声絵本ポプラ社の修理(電子オルゴール改造)診察

4.治療
①鳴き声1種類当たり2秒とすると10種類では20秒、8ksps8ビットPCMでは160kバイトのメモリが必要で、そのようなマイコンは100円台では入手できない。音声再生専用ICやメモリを外付けにしても100円台では無理だ。

②動物鳴き声を発声する専用ICが出回っているが100円台で10種類のものは見当たらないし、これらのICを使うには制御のためのマイコンが別に必要になるので、これもコスト的に無理だ。

③このおもちゃの修理は無理で電子オルゴールに改造することは可能である旨お客様に提案したところ、お客様は改造することを希望された。収容曲はアンパンマン系、ディズニー系、童謡系でドクターに一任された。

④10曲が収容できて最も廉価なものという条件で、デバイスはPIC16F1705(2015年秋月価格@110円)とした。ハウジング内の空き空間が小さくこれ以上大きなデバイスは入らない。

⑤SW回路は4×3のマトリクスになっていて、そのままの構成で使う。

⑥元々のCOBチップの電流の漏洩をチェックしたところ無かったので、SWパターンからCOBチップの切り放しは行わないこととした。

⑦収容曲は下記の10曲を選定した。
・アンパンマンマーチ
・ミッキーマウスマーチ
・アンパンマンたいそう
・小さな世界
・犬のおまわりさん
・星に願いを
・メリーさんの羊
・大きな古時計
・森の熊さん
・山の音楽家

演奏音はこれ

【ファームウェア】
⑧ファームウェアは、お馴染みの orgel5_2の電子オルゴールエンジン に、SWのセンスとsleepの制御プログラムを追加する形で開発する。

⑨操作イメージは
・ボタンを押すと演奏開始する。

・別のボタンを押すと曲を切り替える。

・同じボタンを押すと演奏を中断する

⑩演奏していないときは、ポートチェンジでのwakeupを設定してsleepする。

⑪実装後にファームウェアの書き換えをやり易くするため、ICSPで使うピンは空けておく。

⑫開発したファームウェアは ここから ダウンロードできる。

【実装】
⑬元々の基板のSWパターンから配線を引き出す。
動物鳴き声絵本ポプラ社の修理(電子オルゴール改造)治療1

⑭PICにスピーカー駆動用アンプのTrを装着して、基板のSWパターンからPICのピンへポリウレタン線で配線する。
動物鳴き声絵本ポプラ社の修理(電子オルゴール改造)治療3

⑭PICはハウジングの空き空間に配置する。
動物鳴き声絵本ポプラ社の修理(電子オルゴール改造)治療4

動物鳴き声絵本ポプラ社の修理(電子オルゴール改造)治療5

⑮スピーカーを配線して動作確認後に、PICや配線をホットボンドで固めておく。ハウジングを被せて、改造は完了した。

⑯sleep時の消費電流は11uAだった。
  1. 2015/09/14(月) 10:33:12|
  2. 修理事例
  3. | コメント:0

ラジコンカーの修理(超再生不動作)

1.患者
ラジコンカー(メーカー、型番等不詳)
ラジコンカーの修理(超再生不動作)外観

2.症状
①送信機は電池を入れるとLEDが点灯する。しかし、この送信機は電源SWが無く、レバー操作によって電源がオンになるタイプなので、操作していないときにオン状態が継続しているのは異常だ。

②車体は全然動かない。上記①のとおり、送信機が怪しいので受信機が異常なのかは判断できない。

3.診察
①送信機の電池をチェックしたが、2本で3.2Vあり、問題無し。

②電池を入れ直したら、症状の①の事象は起きなくなり、レバーを操作したときだけ、LEDが点灯するようになった。

③送信電波をモニタするとTX2/RX2のプロトコルが確認でき、異常無し。これ以降は事象が再現しなくなったので、送信機は「自然回復」と判断した。

④車体側の基板を診る。
ラジコンカーの修理(超再生不動作)診察1
・デコーダにはRX2が使われていた。但し14ピンのものだ。REALTEKの16ピン物からピン8(RDB)とピン9(LDB)が省略された物のようだ。その他のピンの電圧を、REALTEKのピン配置に合せて観たところ、それらしい値なので間違いないだろう。
ラジコンカーの修理(超再生不動作)診察2

⑤このRX2のピン12(VI1)の入力抵抗R6(2.2kΩ)の先ではエンコード信号(クエンチングノイズ)が観られず全く静かな状況で、超再生検波回路側に問題があるようだ。
ラジコンカーの修理(超再生不動作)診察3

⑥超再生検波回路のTrの電圧を測ると、ベースが0Vだった。
・R2がベース抵抗で220kΩの表示があり、実測値もそのくらいだった。

・R4がエミッタ抵抗で560Ωの表示があり、エミッタとGND間の実測値もそのくらいだった。

・ベース回路もエミッタ回路も異常が無いので、ベースとエミッタ間の導通をチェックしたら、何と0Ωだった。

⑦Trの故障と思い、Trを取り外してチェックしたが異常無し。

⑧それではプリント配線の短絡かと思い導通チェックをしたが、ベース回路の短絡は無い。

⑨Trを元に戻したら、ベースが0.7Vになり、超再生検波回路が正常動作を始めた。
ラジコンカーの修理(超再生不動作)診察4

⑩送信機の操作のとおり、ステアリングとドライブが動作することを確認した。受信機も自然回復してしまった。

4.治療
①診察の過程で、送信機も受信機も自然回復したため、両方とも原因不明で治療もせず。何ともスッキリしない結果となった。

  1. 2015/09/11(金) 19:57:29|
  2. 修理事例
  3. | コメント:0

ラジコン軽トラの修理(ギア変形)

1.患者
ラジコンの軽トラック
ラジコン軽トラの修理(ギア変形)外観

2.症状
①バックしない。バック時にメカが渋っているようだ。

3.診察
①第2ギアの1歯が変形していて、第3ギアとの噛み合わせでバック時に渋りがある。
ラジコン軽トラの修理(ギア変形)診察1

矢印の歯が舐めて、端の部分のみ変形している。
ラジコン軽トラの修理(ギア変形)診察2

②車軸に付いている第3ギアには変形は無い。

4.治療
①大きい方が23枚で一般に流通していない。普通ならギアを製作することになってしまうのだが、このおもちゃの場合は、第3ギアを裏返して車軸に取り付けることで、第2ギアの変形していない部分で噛み合わせることができた。
ラジコン軽トラの修理(ギア変形)治療1

②元通りに組み付けて、走行テストは良好となった。
  1. 2015/09/11(金) 19:03:23|
  2. 修理事例
  3. | コメント:0

電子オルゴール+音声再生のファームウェア Ver5_2

電子オルゴール+音声再生のファームウェア Ver5_2の紹介

前振り
お馴染みの 電子オルゴール+音声再生 の話だが、またまたバージョンアップしたので改めて紹介する。
Ver5_1に対してVer5_2では下記の改善を施した。

・音声再生の多重発声を実現した。LPCでは4音声、PICでは3音声まで同時に発声できる。
・PICでのボリューム配分値が25%、50%、75%のときは乗算ではなくシフト演算で行うようにした。
・LPCでの音符演奏タイミングのズレ(バグ)を改修した。

目的
おもちゃに内蔵された音声再生のチップが故障した場合に、汎用の1チップマイコンで換装することを目的に開発している。
おもちゃの修理が目的のため、概ね100円台のチップでできることをやるという考えで進めている。従ってターゲットは現在のところ以下のものにしている。
・PICの12F1822/16F18xx系、16F17xx系
・LPC810、LPC1114

実現方法
音を出すおもちゃはPCMデータ等で記録した音声データを再生する、所謂音声再生方式で実現している。そのため、CPU機能よりもメモリ量の大きなチップが使われている。
汎用の1チップマイコンはメモリ量が少なく、音声再生方式には向いていない。音声再生専用のチップ(APLUSのAPシリーズ等)を使うことも考えられるが、以下の問題がある。

①チップ自体が(廉価な1チップマイコンに比べれば)高価である。

②専用の書き込み器が必要である。

③おもちゃとして機能させるためには音声再生専用チップを制御するためのマイコンが別に必要になる。

そのため、廉価な1チップマイコンだけで音楽や音声を出すことができないかと工夫したのが 電子オルゴール+音声再生 のファームウェアである。

音楽の演奏は音声再生方式では無く、電子オルゴール方式で実現している。音声のPCMデータに比べて曲の音符データは格段に小さいので、比較的メモリの少ない1チップマイコンにも搭載することができる。4kワードのPICで10曲、8kワードでは30曲を搭載した実績がある。

キャラクタのおしゃべりは音声再生方式でなければ実現できないので廉価な1チップマイコンでは無理だ。しかし、車のエンジン音、電車走行や踏切警報音などおもちゃで良く使われる効果音は発声したい。このため、PCMデータの再生機能も持たせている。但し音の長さはメモリ量に依存するため、16kワードのPICでも4~8秒程度となる。

電子オルゴールと音声再生はコンカレントに実行できる。
電子オルゴールは8パート(PICでは3パート)まで、音声再生は4音声(PICは3音声)まで同時発声できる。

演奏音のサンプル
電子オルゴールの音源はPCMデータで持つので、計算によって作られた波形データでもよいし、生楽器のサンプリングデータでもよい。
どの程度の音が出せるのか、実際の演奏音を聴いていただきたい。

正弦波音源

矩形波音源

鋸歯音源

正弦波と5次高調波とのリング変調音源

正弦波と4次高調波の加算音源

生ピアノのサンプリング音源

効果音との共演


応用例
たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)
サウンドきかんしゃトーマスの修理(電子オルゴール換装)
アンパンマン電動レールでGO!GO!DXの修理(マイコン換装)
TOHOブルドーザーの修理(マイコン換装)
アンパンマンたいそうベルトの修理(マイコン換装)
ミッキーのオルゴール修理(電子オルゴール換装)

曲目の一覧
現在保有している曲データは以下の通りである。ここに無い曲は需要の都度作成して行く予定だ。
カラオケ絵本では曲の進行をおもちゃに添付の歌詞カードや楽譜に合せる必要があり、既存の曲データをアレンジして使う。

アイアイ
あめふりくまのこ
アンニローリ
アンパンマンマーチ
アンパンマンたいそう
あわてんぼうのサンタクロース
かいばのおけで
ブンブンブン
蝶々
チューリップ
ひいらぎ飾ろう
どんぐりころころ
大きな古時計
冬のうた
げんこつ山のたぬきさん
車のクラクション音
星に願いを
星の世界
犬のおまわりさん
いとまきのうた
ジングルベル
かえるの合唱
きらきら星
こどもとこどもがけんかして
メリーさんの羊
ミッキーマウスマーチ
もみじ
森の熊さん
むすんでひらいて
猫ふんじゃった
おべんとうばこのうた
ダビデの村の
鬼のパンツ
おんまはみんな
大きな栗の木の下で
おつかいありさん
サンサンたいそう
サンタが町にやってきた
証城寺の狸囃子
幸せなら手をたたこう
清しこの夜
小さな世界
手をたたきましょう
トーマスのテーマ
トーマスのテーマ2
トントンひげじいさん

おめでとうクリスマス
ウィンターワンダーランド
山の音楽家

勇気100%
勇気リンリン
ぞうさん

おもちゃとのインタフェース
おもちゃとのインタフェースは個別に開発する必要がある。このため、API関数とコールバック関数を用意している。

API関数の種類
音声選択・・・再生する音声を選択して、再生を開始する。または再生を中断する。
曲選択・・・演奏する曲を選択して、演奏を開始する。または演奏を中断する。

コールバック関数の種類
初期設定コールバック・・・デバイスやおもちゃに固有の初期設定を行う。
固有処理コールバック・・・一定時間間隔(例10ms)で呼出されておもちゃ固有の処理(例キーセンス、LED・モーター制御等)を行う。
音声再生終了コールバック・・・音声の再生が終了したときに呼出され、後続の処理(次の音声選択、おもちゃの制御等)を行う。
曲演奏終了コールバック・・・曲の演奏が終了したときに呼出され、後続の処理(次の曲選択、おもちゃの制御等)を行う。

利用者はコールバック関数のみを書けばよい。音声再生と曲演奏の実行部分はブラックボックスでよい。
コールバック関数の中でAPI関数を使ってファームウェアの動作を制御する。

インタフェースのサンプル
下記のサンプルでは、SWを評価して、演奏曲の選択と音声の選択を行っている。また、動作していないときにはsleepして、SW操作を待っている。

[電子オルゴール+音声再生]のファームウェアVer5_2コールバック関数例1
[電子オルゴール+音声再生]のファームウェアVer5_2コールバック関数例2

ファームウェアの開発依頼
故障したICやマイコンの代替品をお作りするサービス」を利用すれば、当方でファームウェア全体を開発するので、依頼元はチップへの実装のみを行えばよい。

ダウンロード
電子オルゴール+音声再生 のファームウェアの設計資料と開発プロジェクトの一式は ここから ダウンロードできる。
おもちゃの修理に自由に活用して欲しい。

技術支援
インタフェースの作り込みとファームウェアの実装は利用者側での作業であるが、技術支援は行う。また、曲データの作成やアレンジ、ファームウェアのカスタマイズ等についてもレクチャーするので、ご希望があれば連絡をいただきたい。連絡先等は「故障したICやマイコンの代替品をお作りするサービス」をご参照下さい。
  1. 2015/09/06(日) 15:07:33|
  2. 製作記事
  3. | コメント:0

たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)

本件は、(埼玉県)東松山おもちゃの病院様の修理事例であり、COBチップが故障していたため、つつじが丘おもちゃ病院(当院)が提供している 「故障したICやマイコンの代替品をお作りするサービス」 を利用していただいた。
当記事には依頼元の東松山おもちゃの病院様から提供していただいた情報や資料が含まれている。

1.患者
たんたんたのしいタンバリン(Benesse)
たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)外観1

たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)外観2
【メーカーサイトでの説明書き】
●たたいてふって楽器のように手に持って遊べるミニサイズの絵本が新登場♪
●絵本から取り外して手に持って遊べる、ミニサイズの楽器絵本が新登場しました♪
●子どもの小さな手にもにぎりやすく、タンバリンのようにたたいてふって、リズムにのって楽しく遊べます
●「音量調節ボタン」や「自動演奏ボタン」がついているのもママにうれしい☆

2.症状
①どのボタンを押しても音が出ない。

3.診察(依頼元で実施)
①COBチップの際まで電源が来ているのを確認した。

②シートSWからの信号もCOBチップの際まで来ていて、押すとL、離すとHになることを確認した。

③COBチップには外付けのクロック発振子は無い。RESET端子も無い。

④基板のパターン切れや半田付け不良も認められない。

以上のことからCOBチップの故障と判断した。

4.治療
①依頼元では、故障したCOBチップをPICマイコンで換装することにして、ファームウェアの開発が当院へ依頼された。今回は2回目のご依頼であったので、要件定義や成果物の評価のやり取りはスムーズに進めることができた。

要件定義】(依頼元主体で実施し、当院が技術支援する)
②動作仕様
・シートSWの絵を押すと絵に対応する音楽が鳴る。6曲が収容されている。元々は複数の楽器パートの演奏だが、電子オルゴール音で良い。

・中央の大きな押ボタンが押されると、効果音を発する。効果音は「タン(タンバリンを叩いた音)」と「ビョ~ン」の2種類あり、「(タンバリンの絵)」ボタンを押す毎に切り替わる。電源投入直後の初期値は「タン」。

・シートSWの「♪」を押すと、全曲を順番に演奏する。

・シートSWの「(タンバリンの絵)」および「→♪」が押されたときは「ピッ」の音を発する。

・振動センサが装備されていて、振動検出時は「フリフリ(タンバリンを振った音)」を発する。

・「→♪」ボタンを押すと音量の大小を切り替えられる。初期値は音量小。音量小のときはオーディオ出力のPWM値を1/2にする。

・音楽の演奏と効果音は同時に鳴る。「タン」または「ビョ~ン」と「フリフリ」も同時に鳴ることができる。

・省電力とするため、演奏も音声再生もしていないときはsleepしておき、操作されるとIOC検出でwakeupさせる。

③その他の開発条件
・効果音は依頼元からWAVファイルで提供される。

・各曲目の楽譜は当院で入手する。このおもちゃには歌詞カードが付いているので、それに曲の進行をあわせる。

④デバイス選定
・4つの効果音の合計時間は約1.8秒あり、8Kワードのチップが必要である。これに該当する廉価なエンハンスドPICは16F1705(@110円)、16F1829(@190円)が該当する。(価格は2015年秋月)

・入力点数はシートSWが10個と振動SWが1個で合計11点。出力点数はLEDが4個とオーディオ出力(PWM)で合計5点。16ポートが必要になり、16F1829を選定するところだが、80円のコスト差は大きい。

・そこで、ポート数の削減を検討する。11個のSWを4×3のマトリクス構成にすると必要ポート数は7ポート、全体で12ポートになり16F1705で実現可能になる。

・おもちゃの内部の空きスペースが少なく、14ピンを超えるデバイスを収容するにはハウジングの加工が避けられないので、是非とも16F1705で行きたい。

・16F1705のsleep時の消費電流は14uAである。

⑤SW回路の改造検討
・依頼元へ、SWをマトリクス構成に組み替えられるか検討をお願いした。
たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)治療1

・依頼元からSWのマトリクス化は可能との回答があり、下記の回路図が提示された。
たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)治療2

・回路図が提示されたときに依頼元から懸念事項が伝えられた。振動センサの仕様を調査したところオン時間が2msしかない、とのこと。実測して貰ったところ、10ms毎のポーリングでは取りこぼしの可能性が高いことが判った。

下図は普通に振ったときの振動SWの信号波形(25ms/div)
たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)治療3

下図は強く振ったときの振動SWの信号波形(25ms/div)
たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)治療4

・そのため、オン時間を伸長する必要があり、下記の2案で検討をお願いした。

案1:CRの時定数回路でオン時間を伸長する。Trを追加することでマトリクス構成は堅持できる。
たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)治療5

案2:CRの時定数回路でオン時間を伸長するのは案1と同じ考えだが、Trを使わないで専用のポートへ入力する。このためポート数が足りなくなる。その解決策として、LEDをマトリクス構成にしてダイナミック点灯させることで4個のLEDを3本のポートで制御することが可能になり、全体の必要ポート数を12ポートに納めることができる。問題はLED点滅の見え方だ。
たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)治療6

・サンプルプログラムでの点灯具合を依頼元で確認して貰ったところ、案2でも実用上問題無いと評価していただき、部品が節約できる案2を採用することとした。

・依頼元から変更後の回路図が提示された。
たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)治療7

・これで使用デバイスは16F1705で確定した。

⑥ポートの割当ての検討条件
・SWマトリクスは3×4の構成になるが、信号を送出しなければならないセレクト線の方を少なくすることが望ましいので、セレクト線を3本、センス線を4本とする。

・実装後にもファームウェアの調整や改善を行うため、ICSPで使用するポートはSWのセンスポートに割り当てる。特にMCLRはデバイスのプログラム時に高電圧が印加されるので留意する必要がある。

・PWM出力はデバイスのPPS機能により出力ポートを替えられる。

・sleep状態からwakeupするためのトリガはSWマトリクスのセンス線のIOC検出になるが、16F1705はすべてのポートでIOCがサポートされているので、IOCに関してはポート割り当ての条件には影響しない。

・前述の回路図にはこれらの検討条件が考慮されている。

ファームウェア開発
⑦評価版の開発
・ここまでの要件でファームウェアの評価版を開発し、依頼元に評価していただいた。
・その結果、いくつかの改善点が挙がった。対策も含めて下記に示す。
・実際には、評価→改善→評価のスパイラルアップの作業を数回繰り返している。

(1)演奏中に、その曲に対応する曲選択ボタンを押すと演奏を中断するようにする。(元々はそのような仕様だったとのこと)

・曲選択の操作を、SWセンスのレベル判定では無く、オフからオンへのレベル変化で捉えるようにファームウェアを改善した。

(2)音が小さく、バッファアンプのベース抵抗を小さくしても音は大きくならない。

・元々はCOBチップからBTL出力されていたので、今回の改造でシングル出力になったことでスピーカの駆動パワーが1/4になるのは避けられない。元のパワーに回復するにはスピーカを低インピーダンスのものに交換するか、BTL出力アンプを装備するしかない。

・しかし、コストの観点からハードウェアでの対策は採れないため、ファームウェアで次善策を講じた。オーディオ出力のPWMデューティが低いときには増大させ、演奏と効果音が重なってPWMデューティが大きいときは縮小して100%を超えないようにする、圧縮伸長の信号加工を施した。

・効果音のソースであるWAVデータをサウンド編集ソフトで圧縮伸長することで、サウンドの平均信号レベルを上げた。

・これらの対策の結果、実用レベルになったとのこと。しかし、音質はノイジーになり、これは我慢して貰うこととした。

(3)LEDの点灯が寂しいように感じる。

・緑色のLEDの輝度が低いとのことなので、そのLEDのみ高輝度のものに交換していただいた。元々輝度の低いLEDが使われていたようで、緑色のみ電流制限抵抗が挿入されていなかったそうである。

(4)上記(2)の対策を実装した結果、演奏中に効果音が出ると演奏音が乱れる事象が発生するようになった。CPUパワー不足のためPWM出力のアンダーランが生じている。

・PIC電子オルゴールでは、演奏出力と音声再生出力のボリューム配分を任意に設定できるが、PICには乗算命令が無いためソフト演算で実装している。これにCPUパワーを消費しているので、ボリューム配分が25%、50%、75%の場合にはシフト演算で行うように改善した。その結果アンダーランは発生しなくなった。

ダウンロード
⑧開発したファームウェアのMPLABXプロジェクト、および設計資料と資材一式は ここから ダウンロードできる。

実装作業】(依頼元で実施)
⑨最初はブレッドボードで試作と評価を行っている。


⑩SWとLEDのマトリクス制御と曲と効果音のサンプルのファームウェア評価版がOKになった段階で、本番実装の作業に入った。依頼元での作業の実施状況を以下に掲げる。鮮明な画像は【ダウンロード】の項にあるリンクからダウンロードできる。
たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)治療8

たんたんたのしいタンバリン(Benesse)の修理(マイコン換装)治療9

⑪最終的な動作確認を実施。動画ではLEDがまばたいているように見えるが、ダイナミック点灯させているためであり、肉眼でみると音符の進行に同期して点滅している。


⑫ファームウェアの開発依頼を請けてから2週間弱の期間を要して、修理完了となった。

  1. 2015/09/04(金) 21:54:28|
  2. 修理事例
  3. | コメント:0

プロフィール

大泉茂幸

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

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

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

本ブログで公開している技術情報や成果物のご利用および再配布はフリーです。読者様の技術活動のお役に立てば幸いです。ご利用いただいた結果や感想等を記事へのコメントやメールでフィードバックしていただけると有難いです。

最新記事

最新コメント

月別アーカイブ

カテゴリ

おもちゃ病院 (7)
技術情報 (9)
修理事例 (143)
製作記事 (77)
ドクター研修会 (2)
PIC開発 (9)
未分類 (9)

訪問者数

検索フォーム

RSSリンクの表示

リンク

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

ブロとも申請フォーム

この人とブロともになる

QRコード

QR