FC2ブログ

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

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

2.4GHzラジコン用ファームウェアの改善(電源瞬低への対応)

【前振り】
つつじが丘おもちゃ病院では2.4GHzラジコンのエンコーダ/デコーダ、トランシーバが故障した場合にそれらを換装するためのファームウェアを開発して、当ブログで公開してきた。例えば、

2.4GHzラジコン用ファームウェア(フルアクションタイプ対応版)

2.4GHzラジコン用ファームウェア(CCP社G-DRIVE/W-DRIVEのデジプロ対応版)

2.4GHzラジコン用ファームウェアのデモボード

上記以外にも関連記事が多くあり、「2.4GHzラジコン」でブログ内検索すると出てくる。

これらのファームウェアの利用者は徐々に増えてきていて、実装の結果や改善意見をいただいている。僕はファームウェアと技術情報を提供しているが、実際のおもちゃへの換装は数が少ない。そのためフィールドからいただくご意見はファームウェアを改善していくのに大変有難い。その中で 「電源瞬低への対応」 が要望され、今回対応した。


【要件】
ラジコンが動いているときには電池電流が大きく変動する。特に走り始めるときや急加速時には大きなモーター電流が流れて、電池電圧が瞬低する。制御に使っているPICは電源電圧の瞬低により停止しても、復電するとPORして動作を再開する。しかし、トランシーバモジュールは一度ダウンすると、PORしてもキャリブレーションを含む初期設定を再度実行しないと通信は再開できない。

トランシーバがダウンした事を検知して、初期設定を再実行することが今回の改善要件である。

安定な電源電圧を担保するには昇圧電源を装備することが本来のやり方であろうが、できるだけ廉価にファームウェア側での対応だけで済ませられないか、というのがテーマだ。


【設計】
・トランシーバがダウンしたことの検知

トランシーバのデータシートにPORの要件が示されていて、電源電圧が緩やかに変動する場合は正常にPORされず、デバイスの状態は不定になることがある。例えばCC2500では
2.4GHzラジコン用ファームウェアの改善(電源瞬低への対応)CC2500のPOR条件

トランシーバがダウンしている最中はSPIの応答が無いので検知できるが、復電し再稼働後はSPIの応答はあり、ステータス等を読み出すと正常な値を返してくる。そのため、SPIの応答ではトランシーバがダウンしたことは検知できない。次善の策として、正常な受信が一定時間以上無かった場合にトランシーバがダウンしたと見做して初期設定を再実行することにする。

コントローラ側ではトランシーバのダウンを検知する方法が無いため、コントローラ側のファームウェアでは対応しない。電源電圧の瞬低は負荷電流が急激に増加する車体側で発生するものであり、コントローラ側での対応は不要と考える。

・初期設定の再実行

以前から、通信阻害による暴走を防止するために、一定時間コントローラからの電波を受信しなかった場合は車体を停止させる仕様になっている。今回は、その時限を超えて更に受信できない状態が継続したらトランシーバの初期設定を実行する。

トランシーバが正常にPORしていない場合があるので、初期設定を再実行する前にトランシーバをリセットしておく。

具体的なやり方としては、トランシーバのダウンを検知したらPICをソフトリセットして再起動する。


【対応デバイス】
・PIC
16F1503
16F1705
16F18325

・トランシーバ
SE8R01
nRF24L01+(パワー強化版と非強化版)
A7105
CC2500

上記のPICとトランシーバの組み合わせが可能


【動作検証】
改善前後の動作検証を 飯塚こわれたおもちゃの相談所さん がやってくれた。多謝


【ダウンロード】
ファームウェアの設計資料と開発プロジェクトは ここから ダウンロードできる。

制御タイプが動的に変更可能な「デモ」仕様になっているので、実際のおもちゃの換装に応用する場合はおもちゃの構造に合わせて制御タイプを固定すること。具体的には、ソースコードの1行で制御タイプを宣言するだけだ。

ホルダ名とプロジェクト名に、トランシーバのデバイス名・送信側/受信側の別・PICのデバイス名を織り込んでいる。「MON」が付いたプロジェクトは、開発時に使う受信モニタで、おもちゃには実装しない。


制御タイプを駆動とステアリングともにデジタル入力フルアクションに固定したものは ここから ダウンロードできる。トランシーバはSE8R01とnRF24L01+のみサポートしている。

制御タイプをCCP社G-DRIVE/W-DRIVEのデジプロ対応に固定したものは ここから ダウンロードできる。トランシーバはSE8R01とnRF24L01+のみサポートしている。
関連記事
スポンサーサイト



  1. 2019/07/14(日) 08:49:30|
  2. 2.4GHzラジコン
  3. | コメント:0
<<2.4GHzラジコン用ファームウェアの改善(電源瞬低への対応)の続編 | ホーム | PICプログラマーでW25Q16の読み込み不具合の対策(続報)>>

コメント

コメントの投稿


管理者にだけ表示を許可する

プロフィール

大泉茂幸

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