FC2ブログ

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

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

RFチェッカー表示部の製作(ATtiny13A版)

RFチェッカー表示部の製作(ATtiny13A版)実装

【前振り】
以前に RFチェッカーの表示部(16F1705版) を作ったが、今回は制御マイコンをATtiny13A(2018年秋月@50円)にして、若干のコスト削減を図った。ポート数が少ないのでRFパワーデテクタのイネーブル制御ができなくて、省電力機能は実装できない。そうすると、単なるレベルメーターになってしまい、レベルメーターICでよいではないか、と言われそうだがそうではない。マイコンを使うメリットは十分ある。

・平均値とピーク値の取得をソフト処理で行うので外付けの回路が一切不要である。

・平均値とピーク値を同時に表示できるので、単に電波の有無だけでなく送信の特性が掴める。

・表示のスケーリングはテーブル変換式で変換曲線を自由に設定できるので、おもちゃの診断に適したスケーリングにできる。

【猿真似】
実は、この製作は HRHさん の猿真似だ。僕はおもちゃ修理でPICをよく使っているのだが、8ピンPICはポートの機能に制約(MCLRピンはデジタル入力にしか使えない)があり、単純なレベルメータとしても実現ができなかった。ところが HRHさん はATtiny13Aを採用することで8ピンマイコンで実現した。目から鱗だった。しかし、そのファームウェアは公開されていないので、当方で独自に開発して公開することにした。ここで公開している設計資料とファームウェアは複製・改変・二次公開を自由にやってよい。おもちゃ修理に有益で価値ある情報がおもちゃ病院業界に広く浸透し、おもちゃドクター諸氏の手で改善され進化していくことを願っている。

【設計】
①処理の流れ

・RFデテクタの出力信号を受け入れてAD変換する。高精度は必要ないので、変換結果の上位8ビットを取得する。

・平均値とピーク値を求める。平均値の算出期間とピークホールド時間は視認性と応答性の観点から数msとする。

・平均値とピーク値をバーLEDに表示する。

②性能設計

・メインループの周期に支配的なのはAD変換時間である。つまり、AD変換処理が最高速になる動作環境とする。

・ADCの最高クロックは1MHzである。一方内部オシレータは9.6MHzなので適切なクロック分周比を設定できない。このため、OSCCALのチューニングによって内部オシレータを8MHzにして8分周する。

・ATtiny13Aの実行速度限界をチェックしておく。Vcc=1.8Vでは4MHz、Vcc=4.5Vでは20MHz、その間は直線的であるので、Vcc=2.475V以上で8MHz動作が可能となる。

・8ビットAVRはクロック精度が悪い(誤差10%)のだが、これを逆手に取る。事前の実験では、工場出荷時のOSCCAL値が0x5dであったところ、0x53の設定で8MHzになった。手持ちの10個で試してみると、すべて余裕を以ってチューニングができた。チューニングに便利なツールも作ったので ここ を参照されたい。

③バーLEDの制御

・10セグメントのバーLEDを5本のポートで制御する。

・2個のLEDを1組にして、1本のポートに繋ぐ。ポート出力の極性によって1方のLEDのみを点灯させる。(次項の回路図を参照)

・ポートを入力モードに設定することで2個とも消灯する。入力モードにするとポートが中間電位にさらされるので、DIDR0レジスタの設定でデジタル入力を禁止しておく。

・この制御方法では電源電圧は3Vが基準で、最大でも3.6Vとなる。

④RFデテクタ
ADCの内部リファレンス電圧が1.1Vなので、AD8314が都合がよい。LT5534を使うときは、OUTを抵抗分圧で1/2にしてADCへ入力するとよい。

⑤ヒューズ設定

・クロックは内部オシレータ9.6MHzとし、8分周無しを設定する。

・6ポートをフルに使うので、RESETピン機能は無効化する。これを行うと以降は一般のISPライターでは書き換えができなくなるので留意されたい。

・BOD検出レベルは1.8V(TYP)を選択する。BODLEBEL1,0=10とする。

⑥OSCCAL設定

・内部オシレータを8MHzにチューニングすること。

・チューニングされたOSCCAL値をソースコード中の OSCCAL_VALUE で宣言すること。

設定例

#define OSCCAL_VALUE 0x53 //ターゲットのOSCCAL値(@8MHz)

【回路図】
RFチェッカー表示部の製作(ATtiny13A版)回路図1
RFチェッカー表示部の製作(ATtiny13A版)回路図2

【表示例】
バーLEDの左側ほどレベルが高く、右側ほどレベルが低いことを示す。
ピーク値は左側に、平均値は右側に現れる。

無信号時
RFチェッカー表示部の製作(ATtiny13A版)表示例無信号時
無信号、と言ってもノイズ電波を拾っているので、低い値で平均値が現れている。

バトロボーグのペアリング信号
RFチェッカー表示部の製作(ATtiny13A版)表示例バトロボーグ
送信パケット長が短く送信間隔も長いので、平均値は小さく、ピーク値は比較的高く表示されている。ピーク値が暗いことから送信頻度が低いことが判る。

一般の2.4GHzラジコン
RFチェッカー表示部の製作(ATtiny13A版)表示例2400MHzラジコン1
RFチェッカー表示部の製作(ATtiny13A版)表示例2400MHzラジコン2
ピーク値はほぼ一定で明るく表示されている。

27MHzTX2
RFチェッカー表示部の製作(ATtiny13A版)表示例27MHzTX2
ピーク値はほぼ一定していることがデジタル式の特徴だ。平均値は測定期間のタイミングで変動する。

27MHzアナログ2トーン式
RFチェッカー表示部の製作(ATtiny13A版)表示例27MHzアナログ式
AM変調されているのでピーク値が変動している。変調信号が遅いのでピーク値と平均値がほぼ等しくなっている。

27MHz無変調時
RFチェッカー表示部の製作(ATtiny13A版)表示例27MHz無変調時
ピーク値と平均値が同じで一定している。

【評価】

①上記の表示例の如く、送信の特性がよく判る。

②メインループは実測29usとなり、十分な性能が得られた。

③平均値の算出期間とピークホールド時間は約7msとなり、適正な値だ。

【ダウンロード】

設計資料と開発プロジェクトは ここから ダウンロードできる。
関連記事
スポンサーサイト
  1. 2018/01/22(月) 18:29:29|
  2. 2.4GHzラジコン
  3. | コメント:0
<<ATtiny13Aのパワーダウン実験 | ホーム | おともだちハローキティの修理(プルアップ回路外付け)>>

コメント

コメントの投稿


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

プロフィール

大泉茂幸

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