FC2ブログ

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

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

アンパンマンキッチンの修理(電子オルゴール・音声再生換装)

本件は、 おもちゃの病院新津(新潟)様の修理事例 であり、つつじが丘おもちゃ病院(当院)はファームウェアの開発を請け負った。
当記事には依頼元のおもちゃの病院新津(新潟)様から提供していただいた情報や資料が含まれている。

1.患者
アンパンマンキッチン(ジョイパレット)(下記画像は依頼元のブログから転載)
アンパンマンキッチン(電子オルゴール・音声再生換装)外観

2.症状(依頼元のブログから転載)
①電源を入れても無反応

②通電するも電池端子に入れた1Ω抵抗でも電圧は殆んど0mv


3.診察(依頼元のブログから転載)
①COB(丸いIC)のVCC-GNDで電源チェック 正常に4.5V有り

②SWも正常動作

③スピーカ・モータ類は単体チェックで正常動作

④COB不良と判断


4.治療
①故障したCOBチップをPICで換装するため、ファームウェアの開発が当院へ依頼された。

【要件定義】(依頼元で実施)

②依頼元からの機能要件(依頼元のブログから転載)

 1:コンロ SW 押下で 
     コンロLED1ケ 0.5秒おきに点滅
        (点滅周期が変更出来る様にOFF⇒ON時間)
     音声: コンロの音・コンロモータ
        (料理中の時間可変設定  その合コンロ音繰り返す)
     メモリが範囲で 
        ぼくアンパンマンお料理上手 開始時間設定可能
        火は強いんだよ気をつけよう     :
        焦げちゃいそうだよ           :
        上手に焼けたよ             :

 2:アンパンマンSW押下で   
     LED 3ケ同時に 0.5秒おきに点滅
        (点滅周期が変更出来る様にOFF⇒ON時間)
     曲名:アンパンマーチ演奏・コンロモーター演奏中駆動

 3:水道蛇口
     レバー2段切替 常時ONとなるSWです
       3接点式のロータリーSWをイメージ
       OFF⇒ON1⇒ON2
     1段目のレバー(ON1)で水の音中
     2段目のレバー(ON2)で水の音大
     ON1・ON2のSWは入りっぱなしでこの間 モータ2(洗濯機モータ)駆動
     OFFで 停止
     音声 綺麗にあらおうピッカピッカ
 4:最後はスリープ
 5:音声挿入は、メモリーの許す範囲でセットする  外部シリアルROMも可
    最優先は 
      水の音
      コンロの音
      ぼくアンパンマン 
      綺麗に洗おうピカピッカ


 動作時間やタイミング等のカスタマイズが容易にできること。

③その他の要件で、電源電圧は電池3本の4.5V、ターゲットデバイスは16F1705、メモリは24FC512が指定された。在庫保持の観点から今後はこれらのデバイスを標準としたいとのこと。

【設計】(当院で実施)

④機能要件は、要求されたとおりに粛々とコードを書いていけばよいのだが、「カスタマイズが容易」を実現するのは難しそうだ。何をカスタマイズ項目とするか、どのレベルまで可変とするか、悩ましい。しかし、捉え方を変えて「機能要件は利用者が作り込んでくれる」と理解すれば話はすごく簡単になる。極端に言えば、システム部分のみを書いて、アプリケーション部分は空白のファームウェアを提供すればよいのだ。このやり方は僕が当初から考えていたものだ。つまり、対象のおもちゃを制御するファームウェアは担当ドクターが設計し製作する。その中で、オルゴール演奏や音声再生が必要な場合に当院が提供するライブラリを利用していただく、ということだ。

⑤しかし、上記のように言うと身も蓋もない。おもちゃを制御するアプリケーション部分を書いて貰うにしてもアセンブラやCで書けと言うのは酷な話だ。そこでおもちゃの動作シーケンスを簡易な記述形式で定義する方法を考えた。

⑥おもちゃの制御で考えられるものは以下の動作だ。
・LED点滅
・モーター正/逆転/停止
・オルゴール演奏開始/中止
・音声再生開始/中止

それに、シーケンスを表現するために以下の記述も必要だ。
・時間待ち
・繰返し
・条件(動作状態やスイッチの評価)分岐/無条件分岐

⑦記述イメージ
(あくまでも考え方を理解していただくための記述例であり、実際に開発したファームウェアではない)

・LEDを1秒周期で点滅させる例
A  LED_ON        ;LED点灯
   WAIT 500ms    ;500ms待つ
   LED_OFF       ;LED消灯
   WAIT 500ms    ;500ms待つ
   JUMP A        ;無条件分岐

・SWオンでオルゴール演奏を開始し、演奏中はモーターを正転させる例
   SONG_BEGIN 曲1 ;曲1を演奏開始
   MT_ON         ;モーター正転
A  WAIT 100ms
   SONG_CHECK    ;演奏中だったら
   JUMP A        ; 繰り返す
   MT_OFF        ;モーター停止

【開発】
⑧開発したファームウェアは ここから ダウンロードできる。
\orgel5_4_seino20160119\orgel5_onsei_PIC1705.X がMPLABXプロジェクトディレクトリである。
24FC512に収容できたのは下記の音声。
・ぼくアンパンマンお料理上手
・いっしょに遊ぼう
・上手に焼けたよ
・焦げちゃいそうだよ
・綺麗に洗おうピカピッカ

下記の効果音は16F1705に収容した。
・コンロの音
・水の音

動作シナリオはソースコード onsei_PIC1705.asm を参照。

⑨実機確認環境
アンパンマンキッチン(電子オルゴール・音声再生換装)実機確認環境回路図
アンパンマンキッチン(電子オルゴール・音声再生換装)実機確認環境1
アンパンマンキッチン(電子オルゴール・音声再生換装)実機確認環境2

⑩開発時に遭遇した問題点と対処
・オルゴールエンジン部と固有部のコードがページ境界の0x800を超えてしまった。

⇒分岐の前後でPCLATH設定を行うようにした。但し、ページ内に収まる場合は必要ない処理なので、この処理をマクロ定義してPCLATH設定の要否を自動的に判別するようにした。

・固有部の処理が重くなりオルゴール演奏+音声再生でアンダーランが発生するようになった。

⇒固有部処理を複数タスクに分けてCPU負荷を時間的に分散させた。


【愚痴】
⑪機能改善を重ねる度にデバイスの機能や性能の限界に抵触している。人の世界では「できの悪い子ほどかわいい」と言われるが、マイコンの世界では「できの悪い子は捨てろ」だ。でもコストメリットでPICを捨てられないのが現実。

【実装】(依頼元で実施)
⑫実装の作業状況は 依頼元のブログ を参照。

⑬依頼元での動作検証の動画を転載しておく。この商品のオリジナルは音声・効果音・メロディを同時に発音できていない。マルチイベント処理ができないファームウェアのようだ。そのため動作中に他のボタンを押すと、後押し優先で動作が切り替わってしまう。今回開発したファームウェアはマルチイベント処理を行っているので、複数のボタンの音が同時に発音されていることに注目されたい。
スポンサーサイト
  1. 2016/01/31(日) 19:48:49|
  2. マイコン換装
  3. | コメント:0

セミデラコン童夢零の修理(サーボ制御IC換装)

本件は、 (愛知県)岡崎おもちゃ病院様(HRHさん) の修理事例であり、つつじが丘おもちゃ病院(当院)のファームウェアを利用していただいた。

1.患者
今は亡きニッコー社のセミデラコン童夢零だ。(画像は HRHさんのブログ から転載)
セミデラコン童夢零外観

僕がこのおもちゃを診たのは昭和52年だったと思う。近所の子どもがこれで遊んでいたが、動作がぎくしゃくしていて具合が悪そうだった。当時、僕はおもちゃ病院には関与していなかったのだが、電子工作を趣味にしていたのでラジコンくらいなら治せるのではないかと思った。しかし、即撃沈。スーパーの検波出力までは確認できたが、デコーダーとサーボアンプがチンプンカンプンだった。今でこそ「デコーダー」、「サーボアンプ」など日常用語になっているが、当時はその呼び名すら知らなかった。

僕がおもちゃ病院を始めたのはそれから5年後になるのだが、その時の挫折が僕のおもちゃドクターとしての定礎になっていると思う。

昨年12月に懇意にして貰っている(と信じている)岡崎おもちゃ病院の HRHさんのブログ で、この童夢零にサーボアンプ不良の診断が下されていた。僕は、40年前のリベンジだと思って心が躍った。

早速SN76604NをPIC10F322で代替するためのファームウェアを作ってHRHさんにプロポーズしたら、快く採用していただけることになった。

開発したファームウェアについては、当ブログの記事 SN76604N(リモコンサーボアンプ)を代替するICの製作(第1弾:スロットル制御) を参照。

2.症状
3.診察
4.治療
上記については HRHさんのブログ を参照。

HRHさんのブログによると、PIC換装は成功したとのこと。HRHさん、有難う御座いました。

実装状況の画像のみHRHさんのブログから転載しておく。
セミデラコン童夢零実装1
セミデラコン童夢零実装2
  1. 2016/01/30(土) 17:07:50|
  2. マイコン換装
  3. | コメント:0

アンパンマンおでかけメロディハンドルの修理(電子オルゴール・音声再生換装)

本件は、(徳島県)小松島おもちゃ病院様の修理事例であり、つつじが丘おもちゃ病院(当院)のファームウェアを利用していただいた。
当記事は 依頼元の小松島おもちゃ病院様から提供していただいた資料や情報 を当院で編集したものである。

1.患者
アンパンマンおでかけメロディハンドル(アガツマ)
アンパンマンおでかけメロディハンドル外観

2.症状
①音・光が全く出ない。

3.診察
①COBチップの不良。
アンパンマンおでかけメロディハンドル診察

4.治療
①このおもちゃの機能は以下の通り。
・メロディボタン   アンパンマンのマーチが鳴る
・ウインカースイッチ   スイッチを押すとアンパンマンの頬が点灯する
・アンパンマンクラクション   アンパンマンの鼻を押すとプップーと音が出る
・おしゃべりボタン   アンパンマンがおしゃべりする
・エンジンキー   キーを回転させるとエンジン音がする

これらは 「キッズドライバーのハンドル(アガツマ)」のファームウェア の機能と同じで、故障したCOBチップをPICで換装することができる。

②換装後の回路図
アンパンマンおでかけメロディハンドル回路図

③実装
アンパンマンおでかけメロディハンドル実装1

アンパンマンおでかけメロディハンドル実装2

④おもちゃのIC基板以外のスイッチ、スピーカー、LEDなどを流用すると修理代もPIC代含んでも2~300円の費用で修理できたので非常に経済的である。

⑤このおもちゃには、アンパンマンの鼻を押すと左右の頬が光る機能を追加した。
  1. 2016/01/17(日) 13:01:58|
  2. マイコン換装
  3. | コメント:0

犬のおもちゃの修理(電子オルゴール換装)

本件は、おもちゃの病院新津(新潟)様の修理事例であり、つつじが丘おもちゃ病院(当院)はファームウェアの開発を請け負った。
当記事には依頼元の おもちゃの病院新津(新潟)様 から提供していただいた情報や資料が含まれている。

1.患者
犬のおもちゃ(画像は 依頼元のブログ記事 から転載)
犬のおもちゃの修理(電子オルゴール換装)治療後
犬のおもちゃの修理(電子オルゴール換装)外観1

犬のおもちゃの修理(電子オルゴール換装)外観2

2.症状
①COB不良のためPICで換装するにあたって、ファームウェアの開発が当院へ依頼された。

3.診察
依頼元のブログ記事 を参照

4.治療
【要件定義】
①依頼元からの要件は以下の通り。(おもちゃの病院新津(新潟)様のブログ記事より転載)

    1:電源SWは無く、足元の押しボタンSW(正論理・負論理の選択)で演奏開始
    2:演奏に合わせて M2が演奏の間同一方向・回転(正論理・負論理の選択)
    3:耳のモータはベルト駆動で正転・反転を行う(タイミング不明だが
        演奏の間2秒正回転後2秒反転を演奏の間 数回繰り返す
        停止のリミッタがないので 機械的リミッターで回転し続ける)
      正転・反転の秒数設定(1秒~5秒 5段階)
      正転・反転の中間でディレイタイム設定(1秒・0.5秒・無しの選択3段階)
      演奏中の繰り返し数設定
    4:演奏はラウンドロビンで曲を繰り返す
       曲目は 選択式(5~10曲程度例 以下)
       ptr_mac SMALLWORLD
       ptr_mac MICKY
       ptr_mac MERIHITUJI
       ptr_mac MORIKUMA
       ptr_mac ITOMAKI
    5:演奏終了後 スリープ
    6:演奏開始 足元の押しボタンSWで再開(ラウンドロビンに)
    7:PICは つつじが丘おもちゃ病院 様へ依頼(16F1705・16F1827 あたり)
       同、ブログの2014-07-31 アンパンマン カラオケ(電子オルゴール)当たりの
       原プログラムの改造で依頼
           論理選択
              プログラム内で 1:正論理 2:負論理でプログラム製作の判らない
              人用に容易に論理変更が出来る様な作り込み  
              大変応用度が増し重宝する

    8:その他
      スピーカ回路・SW・モータの接続等はMS工房製作
      電池駆動 4.5V

現状の回路図
犬のおもちゃの修理(電子オルゴール換装)回路図

②依頼元から下記事項が要望された。

・入出力信号の極性(正論理/負論理)は容易に変更が可能であること。

・モーターの動作シーケンスも容易に変更が可能であること。

実装方法としては、ソースコードの先頭部分に 「カスタマイズセクション」 を設けて、上記の動作条件を宣言させることとした。

【ファームウェア開発】
③電子オルゴール+音声再生のファームウェア Ver5_4 をベースに、依頼元からの要件を取り込んで開発した。収容曲数からメモリが大きくて廉価な16F1705(2015年秋月価格@110円)をターゲットとした。

④カスタマイズセクションの内容(ソースコードから抜粋)

;=========簡易カスタマイズセクション(始まり)===============

;------------------------------------------------
;指定値の定義
NON_INV equ 0 ;正論理
INV equ 1 ;負論理
STOP equ 0 ;停止
FORWARD equ 1 ;正転
REVERSE equ 2 ;逆転
REPERT equ 3 ;繰返し
FIN equ 4 ;終了

;------------------------------------------------
;演奏開始のSW信号はRA3で受ける
;ここではSW信号の受け方を宣言する

;NON_INV=正論理で入力する(ポートは外部でプルダウンする必要がある)
;INV=負論理で入力する(ポートは内部プルアップする)
;
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ここを変更++++++↓
SW equ INV ;←適宜変更
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++↑

;------------------------------------------------
;モーター0の正転信号はRA0とRA1に、逆転信号はRA4とRA5に出力する
;ここでは信号の出力方法を宣言する
;
;NON_INV=正論理で出力する
;INV=負論理で出力する
;
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ここを変更++++++↓
MT0 equ NON_INV ;←適宜変更
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++↑
;
;曲の演奏開始と同時にモーター0のシーケンス動作を開始し、演奏が終わると停止する
;
;動作シーケンスを、このソースコード中のラベル「MT0_SEQ」以降に記述する
;
;動作シーケンスの書式
; MT_MAC 動作種別,動作時間
;これを必要行記述する
;
;「動作種別」は以下から指定する

;STOP=停止
;FORWARD=正転
;REVERSE=逆転
;REPERT=シーケンスの頭へ戻って演奏が終わるまで繰返す
;FIN=直前の出力状態を維持したままシーケンスの実行を終わる
;
;「種別時間」は[0.1s]の単位で0~255の値を指定する
;0は動作時間が25.6sとなる
;REPERTとFINのときは0を指定すること
;シーケンスの最後はREPERTかFINを設定すること
;
;記述例
; MT_MAC FORWARD,20 ;2秒正転
; MT_MAC STOP,10 ;1秒停止
; MT_MAC REVERSE,20 ;2秒逆転
; MT_MAC STOP,10 ;1秒停止
; MT_MAC REPERT,0 ;シーケンスを繰返す

;------------------------------------------------
;モーター1の正転信号はRC0とRC1に、逆転信号はRC4とRC5に出力する
;ここでは信号の出力方法を宣言する
;
;NON_INV=正論理で出力する
;INV=負論理で出力する
;
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ここを変更++++++↓
MT1 equ NON_INV ;←適宜変更
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++↑
;
;曲の演奏開始と同時にモーター1のシーケンス動作を開始する
;
;動作シーケンスを、このソースコード中のラベル「MT1_SEQ」以降に記述する
;
;動作シーケンスの書式は、モーター0と同じ

;=========簡易カスタマイズセクション(終わり)===============



;=========動作シーケンスカスタマイズセクション(始まり)==========
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;動作シーケンス定義マクロ
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
MT_MAC macro dousa,jikan
dw (dousa<<8)+jikan
endm

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;モーター0の動作シーケンス定義
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
MT0_SEQ
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ここを変更++++++↓
MT_MAC FORWARD,20 ;2秒正転
MT_MAC STOP,10 ;1秒停止
MT_MAC REVERSE,20 ;2秒逆転
MT_MAC STOP,10 ;1秒停止
MT_MAC REPERT,0 ;シーケンスを繰返す
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++↑


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;モーター1の動作シーケンス定義
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
MT1_SEQ
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ここを変更++++++↓
MT_MAC FORWARD,0 ;25.6秒正転
MT_MAC REPERT,0 ;シーケンスを繰返す
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++↑

;=========動作シーケンスカスタマイズセクション(終わり)==========

⑤開発したファームウェアは ここから ダウンロードできる。
orgel5_demo_PIC1705.X がMPLABXのプロジェクトディレクトリになっている。

【実装】(依頼元で実施)
⑥換装後の回路図
犬のおもちゃの修理(電子オルゴール換装)換装後回路図

⑦換装基板
犬のおもちゃの修理(電子オルゴール換装)換装基板

⑧治療完了(依頼元の動画を共有)

  1. 2016/01/10(日) 18:15:05|
  2. マイコン換装
  3. | コメント:0

サーフボーイの修理(クローンリモコン製作)

本件は、(埼玉県)東松山おもちゃの病院様の修理事例であり、つつじが丘おもちゃ病院(当院)はファームウェアの開発を請け負った。
当記事には依頼元の東松山おもちゃの病院様から提供していただいた情報や資料が含まれている。

1.患者
サーフボーイ(大東電機工業)の赤外線リモコン

(メーカーサイトの画像)
本体
サーブボーイの修理外観1

赤外線リモコン
サーブボーイの修理外観2

2.症状
①赤外線リモコンを紛失したため、リモコンのクローンを依頼元で製作する。搭載するファームウェアの開発を当院へ依頼された。

②依頼元で同型機のリモコンコードを採取・分析していて、その通りに再現する。

3.診察(依頼元で実施)
①操作SWは以下の2つのみ。

・ON/OFFボタン

・動作切替ボタン

②それぞれのボタン押下で送信されるコードは以下の通り。
【依頼元から提供されたコード仕様(負論理で表示)】
サーフボーイリモコンコード
・リーダー部は 4.6msのオン、4.4msのオフ

・データ部は5バイトで、コード値は上図の通り。

・ビット値0は 0.6msのオン、0.6msのオフ

・ビット値1は 0.6msのオン、1.6msのオフ

・トレイラ部は 0.6msのオン

4.治療
【要件定義】(依頼元で実施)
①操作SWからの入力は負論理で内部プルアップする。

②操作時のみ稼働し、操作していないときはSleepしている。

③赤外線LEDへの出力は正論理とする。

④ターゲットデバイスは12F509とする。

⑤1回のボタン押下でフレームを1回送信する。一旦ボタンを離して再度押下するまで送信しない。

⑥赤外線キャリアは38kHz、デューティ比は1/3(業界標準)とする。

【ファームウェア製作】(当院で実施)
⑥提示された要件とコードの通りにファームウェアを開発して、依頼元へ評価をお願いした。結果、動作は良好とのこと。

⑦クローンリモコンの出力信号の観測波形
キャリア波形
発光時間は9us
サーフボーイの修理波形0
周期は26us
サーフボーイの修理波形1

ON/OFF
サーフボーイの修理波形2

動作切替
サーフボーイの修理波形3

⑧開発したファームウェアは ここから ダウンロードできる。
yasiro20160108 がMPLABプロジェクトディレクトリになっている。

【実装】(依頼元で設計と製作を実施)
⑨クローンリモコンの回路図
【依頼元から提供された資料】
サーブボーイの修理治療回路図

⑩母体に使った百均のグッズ(上)とクローンリモコンに生まれ変わったもの(下)
【依頼元から提供された資料】
サーブボーイの修理リモコン母体
 sleep時の消費電流は1uA以下だった。

⑪動作確認
【依頼元から提供された資料】
サーブボーイの修理治療外観



⑫クローンリモコンの頒布については ここ を参照。
  1. 2016/01/10(日) 12:58:35|
  2. マイコン換装
  3. | コメント:8

SN76604N(リモコンサーボアンプ)を代替するICの製作(第2弾:ステアリング制御)

【前振り】
①プロポ式のラジコンのサーボアンプにはTI社のSN76604Nがよく使われている。このICが壊れていると、国内では入手が難しいし中華サイトでも百円強(2015年)していて修理に困る。そこで、PICでSN76604Nを代替するファームウェアを開発した。

②前回は第1弾として スロットル制御への応用 を公開したが、今回は第2弾として、ラジコンカーのステアリング制御への応用を目的としたファームウェアを公開する。送信機から送られてきた操作角と実際のステアリングの動作角の差を検出して、その差が無くなるようにステアリングモーターをPWM制御する。

③スロットル制御ではchパルス巾からPWMデューティを決めて駆動モーターを制御するだけだが、ステアリング制御ではメカの動作をフィードバックしてモーターを制御する必要がある。

【要件と実現方法】
①SN76604Nはchパルスを入力して、DCブラシモーターを直接駆動する機能を持っている。サーボ制御するための基準パルス回路、エラーアンプ、パルスストレッチャ回路、ロックアウト回路等を内蔵していて、基準パルス、デッドバンド、デューティ等を外付けCRで調整することができる。

②SN76604Nは最大負荷電流が400mAのHブリッジを内蔵している。PICではモーターを直接駆動することは不可能なので外付けのHブリッジが必要になり、PICからHブリッジの制御信号を出力することになる。

③SN76604NはアナログICなので動作条件の調整のために多くの外付けCR部品を必要としているが、PICでは調整パラメータをファームウェア内に数値で記述するので調整のための外付け部品は一切必要が無い。これはマイコンで実現する場合の大きなメリットだ。

④SN76604Nの電源電圧は6Vまでだが、PICは5.5Vまでである。このため電源の供給と周辺回路との信号レベルの整合は個別に設計が必要になるかも知れない。

⑤入力ポートはchパルスと動作角検出ボリュームからのアナログ電圧の2本、出力ポートはHブリッジへの正転と逆転の2本、合計4本のポートで済む。それで、8ピンで最も廉価な10F322(2015年秋月価格45円)を採用する。10F322は16MHzの内部オシレータが使え、PWMモジュールを2本内蔵し、ADCも内蔵しているので、今回の応用には最適だ。Hブリッジと基板込みで総額100円以下でできる。

【仕様】
①chパルスのパルス巾は1.0ms~2.0msとする。正論理/負論理をファームウェア内のパラメータで選択が可能。分解能は10usとし、操作角を100段階で識別する。

②PWM周期値は127、PWMパルス巾の最小値は16usとし、PWM周期は2ms(500Hz)となる。SN76604NでのPWM周期はプロポ信号のフレーム周期の20ms(50Hz)程度であるので、10F322では10倍の高速化が図れる。なお、Hブリッジの応答速度が遅い場合はそれに見合った動作速度に合わせる必要がある。

③動作角を相応するchパルス巾に変換して、操作角に対応するchパルス巾と比較し、ステアリングモーターの正転/逆転とPWM制御をおこなう。動作角から相応するchパルス巾への変換はテーブル検索によって行い、設定の柔軟性を担保する。動作角と操作角との差からPWMデューティへの変換もテーブル検索によって行い、設定の柔軟性を担保する。

④chパルスが0.7ms~2.3msのとき有効コードとする。それ以外のときは無効コードとして読み捨てる。

⑤有効コードが途絶えたときは直前の有効コードでステアリング制御を継続する。

⑥電源投入後はステアリングはニュートラルになる。

⑦上記の仕様はカスタマイズが可能である。

⑧ポートの割当て
;RA0(PWM1):正転側ローサイド出力
;RA1(PWM2):逆転側ローサイド出力
;RA2(AN2):動作角のフィードバック入力
;RA3:chパルス入力

【適用回路例】
SN76604N_s_322適用回路例

【テスト基板】
部品面
SN76604N_s_322①

半田面
SN76604N_s_322②

車体への実装
SN76604N_s_322③

ステアリングモーターと動作角検出ボリュームへの配線
SN76604N_s_322④

【動作テストの動画】

動画が視られない場合は記事最後のダウンロード先からダウンロードしてご覧ください。

【動作時の信号波形】
chパルス巾=1.5ms
動作角=操作角 でバランス(差が0)している状態。正転も逆転もオフになっている。
SN76604N_s_322波形1

chパルス巾=1.5ms
動作角>操作角 で弱オーバー状態。逆転がオンになっている。
SN76604N_s_322波形2

chパルス巾=1.5ms
動作角>>操作角 で強オーバー状態。逆転がフルにオンになっている。
SN76604N_s_322波形3

chパルス巾=1.5ms
動作角<操作角 で弱アンダー状態。正転がオンになっている。
SN76604N_s_322波形4

chパルス巾=1.5ms
動作角<<操作角 で強アンダー状態。正転がフルにオンになっている。
SN76604N_s_322波形5

chパルス巾=1.1ms
動作角=操作角 でバランス(差が0)している状態。正転も逆転もオフになっている。
SN76604N_s_322波形6

chパルス巾=1.1ms
動作角>操作角 で微弱オーバー状態。逆転が少しオンになっている。
SN76604N_s_322波形7

chパルス巾=1.9ms
動作角=操作角 でバランス(差が0)している状態。正転も逆転もオフになっている。
SN76604N_s_322波形8

chパルス巾=1.9ms
動作角<操作角 で微弱アンダー状態。正転が少しオンになっている。
SN76604N_s_322波形9

【ダウンロード】
開発したファームウェアの資料とMPLABプロジェクト一式は ここから ダウンロードできる。
解凍後のディレクトリ 「SN76604N」 の 「SN76604N_s_322.mcp」 がMPLABプロジェクトファイルになっている。

動作テストの動画はディレクトリ 「ブログ貼り付け図」 の 「SN76604N_s_322動作確認動画.mp4」 に入っている。

chパルスや動作角検出等のパラメータは標準値になっているので、他のおもちゃに適用する場合はカスタマイズが必要である。全ソースを公開しているのでカスタマイズは自由に行うことができる。または当方へカスタマイズを依頼して貰っても良い。カスタマイズのご要望は 「故障したICやマイコンの代替品をお作りするサービス」 を参照。

  1. 2016/01/01(金) 19:47:01|
  2. レガシーラジコン
  3. | コメント:0

プロフィール

大泉茂幸

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

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

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

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

カテゴリ

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

最新記事

最新コメント

月別アーカイブ

訪問者数

検索フォーム

RSSリンクの表示

リンク

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

ブロとも申請フォーム

この人とブロともになる

QRコード

QR