GIDトップページ 数理設計研究所


GID-LOG RTCの較正

(C) 数理設計研究所 1997-2005
2005/3/31 更新
 GID-LOGは、電源OFF時でも正確な日時情報を保持するためにRTC(リアルタイムクロックIC)を搭載しています。
 RTCは外付けの32.768kHz水晶振動子の発振周波数を元に時を測りますが、発振周波数の偏差は避けられず偏差はそのまま時刻の誤差となります。
 できるだけ正確にRTC回路を動かすには、どのように設計・較正をすればよいのでしょうか。

誤差の原因

 誤差の原因は、発振周波数が正しく較正されていない較正不良と、正しく較正しても避けられないその他の原因に分けることができます。

較正

 水晶振動子の発振周波数は回路に接続する負荷容量(コンデンサ)の容量によって変化し、負荷容量の変更により発振周波数を較正します。
 負荷容量は数pF〜数十pF程度の小容量のものが用いられ、配線パターンや周辺部品の寄生容量の影響を大きく受けるため、較正は実基板の実装状態でおこないます。
 負荷容量は発振余裕度や励振レベルにも影響するため、使用可能な容量値は水晶振動子の特性により制限されます。 
 負荷容量に使用するコンデンサの温度特性が悪いと発振周波数に影響が出るので、かならず温度補償用コンデンサを使用します。

常温偏差

 水晶振動子が定温中(例えば25℃±5℃)に発振しているときに起こる発振周波数の偏差のことで、データシートに代表値が記載されています。
 GID-LOGに搭載しているVT-200の常温偏差は25℃±5℃で±20ppmとなっており、月差±17.41秒に相当します。
 これ以上の精度を求めるのであれば、特性の良いものだけをを選定するしかありません。

周波数温度偏差

 水晶振動子の周囲温度変動による発振周波数の偏差のことで、VT-200ではTP=25℃、K=-0.035ppm/℃2となっています。
 低周波で一般的なBTカット水晶振動子の場合、多くの品種の特性はで25℃を頂点とした2次曲線でなり、温度が25℃よりも高くても低くても時計が遅れます。
 したがって、予想される使用環境温度の加重平均から求めた周波数偏差の分だけ、発振周波数を高めに設定しておくのが理想です。

周辺回路

 負荷容量はもちろん、基板や周辺の部品、ケースなどでも発振周波数が変動するため、例えば基板実験時とケース実装時で発振周波数が変わることもあります。
 外乱の影響をできるだけ受けないようなパターンやシールドの設計も必要となります。

経年変化

 VT-200 のデータシートを見ると、経時変化として「±5ppmMAX(△f/fo.)条件:+25℃±3℃、初年度」とあります。
 「初年度」というのが製造からの時間なのか動作開始からの時間なのか不明ですが、僅かとはいえ水晶発振子には経年変化があります。

較正の目標

発振周波数

 RTCに使われる水晶振動子の発振周波数は32.768kHzですが、温度特性が2次曲線であるため、単純にこの周波数になるように較正すればいいというものではありません。
 発振させるべき周波数は使用環境温度の加重平均から求めるのが妥当ですが、 簡易的には環境温度の最低最高温度の算術平均を使用する方法でも良く、例えば、東京の年平均気温は約15℃なので、発振周波数は-0.035*(15℃-25℃)2=3.5ppm 高く設定し、周波数を32.768KHz + 3.5ppm = 32.768KHz * 1.0000035 = 32.768115KHzとします。

精度

 水晶振動子そのものが常温偏差±20ppmグレードであるため、過剰に精度を求めるのは無意味です。
 ここでは、通常のデジタル時計程度の精度が月差±30秒であることを踏まえ、±10ppm=月差25.9秒を較正の目標とします。
 較正は周囲温度25℃±5℃以内でおこなうこととします。

較正方法

 発振回路は数pFが影響する世界であり、近くに手や金属があるだけで発振周波数が変わってしまいます。そのため、発振周波数は極力発振回路以外のところから得るべきであり、他に方法の無い時のみ0.5pFなどの小容量コンデンサを介した上で入力容量が小さくハイインピーダンスの入力を持つ測定器で観測をおこないます。

 GID-LOGに使用しているリアルタイムクロックIC、SIIのS3530Aは設定無しで動作する1Hzの出力があるので、これを周波数カウンタに入力して発振周波数を確認し、負荷容量を交換しながら発振周波数が目標の1Hz±10ppmとなるように調整します。
 負荷容量に使用するコンデンサにチップ部品を使用すると部品の交換が容易です。

 較正対象がマイコンのクロックであれば、適当な周波数の矩形波をI/O出力するプログラムを組んで試験します。 

使用機材

 GoldStarのFC-2130という1.3GHz8桁の周波数カウンタを使用しました。
 数年前に秋月電子で入手した廉価なもので、LGブランドでも供給されています。
 マニュアルによると安定度は1ppmとありましたが、幸い較正したばかりの高精度シグナルジェネレータHP8675Aを信号源にしてで検定したところ+2.4ppmの誤差があることがわかりました。

較正結果

 実際に7台のGID-LOGのRTC回路を較正した一例を示します。
 使用した負荷容量は手元にあった4,6,8,9,10pFで、20年ほど前から保持している古いものであり、メーカーも統一されていません。表中の負荷容量値は実測値ではなく部品に表記してある値です。
 数値上は目標を満足する結果になりましたが、周波数偏差と負荷容量の関係がリニアにならず、ある基板に同容量のコンデンサを実装して10ppmも違う結果となることがありました。部品が古いため容量抜けがおきているのかもしれません。
 温度変動によるものと思われる1〜2分の範囲で±0.5ppmほどの周波数変動が見られ、数値は即値を適当に読み取っています。
 同一のコンデンサを何度か実装しなおしたときの周波数のばらつきは、読み取れる範囲のものではありませんでした。
 不確定要素が多い実験であったため、次の機会までに高精度の温度補償用コンデンサを同メーカー同シリーズで1pF単位で購入し、温度変動を避けるために基板を風除けで覆うなどして再試験をおこなうことににします。
  偏差(ppm) 月差(秒) 負荷容量(pF)
1 - 1.60 - 4.14 4
2 + 0.20 + 0.52 4
3 + 3.70 + 9.58 6
4 - 9.10 - 23.57 10
5 - 5.90 - 15.28 4
6 - 4.00 - 10.36 4
7 + 6.00 + 15.54 9
(水晶振動子メーカーが推奨する負荷容量は9pF)

参考文献

SII 水晶振動子 VT-200ドキュメント (PDF)
KYOCERA 水晶振動子ご使用上の注意事項
 (PDF)
RICOH 発振回路周辺の設計方法 (PDF:182KB)
RICOH RTC時計誤差補正シミュレータ説明書 (PDF:97KB)
RICOH RTC時計誤差補正シミュレータ (xls:241KB)
RICOH CL=12.5pF の水晶振動子使用時の調整方法 (PDF:93KB)
RICOH 発振回路の結露について (PDF:66KB)

参考リンク

株式会社多摩デバイス 水晶振動子の温度特性
日本プレシジョン・サーキッツ株式会社 ATカット水晶発振器用IC ニュースリリース
リコー 時計誤差補正回路内蔵RTC-IC ニュースリリース
リコー RTC-ICニュースリリース
 
 
 

おまけ

偏差を少なくするための設計心得

 水晶振動子の持つ性能を十分発揮できるように、回路や基板の設計をおこないます。
機械振動を避ける  発振周波数は機械振動の影響を受けます。水晶振動子は基板にしっかりと固定します。
温度変動を避ける  温度変動が置きやすい場所では発振回路に覆いを付ける、発振回路を発熱しやすい回路の近傍に置かない、逆に安定な加熱が期待できる部品の近傍に回路を置く、などが効果的です。
ベタグランドパターンを使わない  ベタグランドと部品やパターン間の寄生容量は発振周波数変動の要因になります。
 回路が同じでもパターンや実装状況が異なれば回路性能に影響します。
配線パターンを最短距離にする  パターンが長くなるとノイズを拾いやすくなり、トラブルの原因になります。
温度補償用コンデンサを使用する  一般用のコンデンサは温度特性が悪く、容量の変動は発振周波数変動の直接原因になります。
 精度が必要な発振回路の負荷容量には、必ず温度補償用コンデンサを使用します。
レジストや実装後のコーティング必須  RTCは1マイクロアンペア以下の超低消費電力で駆動しており、わずかなインピーダンスの変化で発振不能や発振周波数変動を招きます。

周波数温度特性

 周波数温度特性は、2次曲線となります。
 VT-200 のデータシートにある2次温度係数のパラメータを見ると、 (-3.5±0.8)×10-8/℃2 となっており、実は「±0.8」という項が曲者です。
 これをプロットしたのが下図で、低温及び高温ではティピカルよりも最大16ppmほど悪い値となっています。
 実際の製品のばらつきがどのような分布になっているのか判りませんが、ティピカル値を信用しておきたくなります。
(-3.5±0.8)×10-8/℃2 によりプロット

外部コンデンサの容量変化

 外部コンデンサも温度特性を持ち、容量の偏差は発振周波数偏差に繋がります。
 村田のデータシートによると、温度保証用セラミックコンデンサ(CH)の温度特性は 0±60ppm/℃ となっています。
 動作温度範囲を-20〜60℃とすると、±4800ppmの容量偏差となります。

 あるGID-LOGの外付け入力容量(cg)が周波数偏差に与える影響を調査したところ、4〜10pFの範囲では概ね5.5ppm/pFでした。
 6pFの4800ppmは0.0288pFであり、発振周波数偏差は5.5*0.0288 = ±0.156ppm、無視できる値になります。

 同じ村田の温度補償用コンデンサでも -750±120ppm/℃ という規格のものもあり、最悪では-870ppm/℃となりますから月差5秒ほどに相当する遅れが発生します。
 さらに温度補償用ではないコンデンサの場合、ざっと±100%くらいなので、偏差だと±11ppm、月差では±30秒くらいになります。
 外部コンデンサは、必ず温度補償用のものを使います。

発振回路の電源電圧特性

 発振回路とは、リアルタイムクロックICの内部回路を含みます。
 S-3530Aのデータシートを見ると、電源電圧の変動がで発振周波数に影響を与えることが判ります。
 GID-LOGの計測動作中の内部電源電圧は5VS-3530Aの電源電圧は逆流防止用のダイオードを介して与えているため、約4.5Vで安定しているため、計測動作中の電源電圧変動は無視できます。
 電源が無い状態だと、S-3530Aは内蔵の電気二重層コンデンサによる駆動に切り替わり電源電圧が1.7Vに低下するまで動作しますが、バックアップ電源による駆動時間はせいぜい1週間程度なので、これも無視できます。
 温度変動が電源電圧による偏差に与える影響はデータシートに明記されておらず、無視してもよいもとの読み取ります。
S-3530Aデータシートより


周波数温度特性例