RTC(リアルタイムクロック)

RTC(リアルタイムクロック)とは

リアルタイムクロックがどのようなものか知っていなくても、我々の周辺で見かける電子機器にはほとんどと言っても良いくらいに使用されている電子部品のひとつで、時間(時刻)を知らせる事が主な目的です。

リアルタイムクロックは、時計やカレンダーなどを管理する機能を持った電子部品です、コンピュータや携帯電子機器等時計機能を内蔵している電子機器に使われて時間等を知らせてくれています。
通常リアルタイムクロックには、その電子機器が使用する電源とは独立又は併用(切替式)した電源(バッテリ:一般的にはボタン電池が使用されています)を用意していて、その電子機器が電源OFFの時や停電した時でも時刻を刻み続ける事ができる構成になっています。

例えば、仕事を終えてパソコンの電源をOFFして、翌朝パソコンを起動したときにパソコンの時計を毎回手動で合わせるのは大変ですし、忘れることもありますね。
でもこのリアルタイムクロックがあるお陰でパソコンの時計はその時の時刻を表示させてくれます。
 リアルタイムクロックの消費電力は超低消費なので、小さなボタン電池でも数年時刻を刻み続けることが可能です。 電池ですので寿命がありますが安価で容易に入手でき、交換すれば引き続き数年今まで通り使うことができます。
(この時は再度時刻を設定し直す必要があるかもしれませんので、その機器の取扱説明書等を確認してください)
また時計としても精度(時刻誤差)は高いので、パソコンやスマホ等の様にネットに接続して時刻の自動補正を行っていなくても、実用に影響は無い程度の誤差です。
 最近では標準電波を受信して自動で時刻を修正する時計も増えていますがリアルタイムクロックの使用もまだまだ多い様です。

RTC(リアルタイムクロック)の原理・仕組み

リアルタイムクロックは基本的には水晶振動子と発振回路とその他周辺回路で構成されています。水晶振動子とはクォーツの事です。電圧を印加すると固有の周波数で振動する特性を持っていてこの特性を利用しています。
リアルタイムクロックでは32.768kHz*1の周波数を使用します。

*1:32.768kHzとは1秒間に32768回振幅する周波数の事です。
k(キロ)は1000です。

一見【32768】は中途半端な数値ですがデジタルの世界では都合のよい数値になるのです。
32768は10進数ですのでこれを2進数で表現すると(32768)10 =(1000 0000 0000 0000)2
となり16bitカウンターの最上位(数式の右側の「1」の場所です)が1になった時1秒になります。電子回路では8bit・16bit・32bit様な2進数で考えますので【32768】の様に10進数では中途半端な数字でも2進数で考えると【都合のよい】数値の意味が分かって頂けましたでしょうか。
1秒を60回で1分・1分を60回で1時間・1時間を24回で1日・1日を365回で1年ですので基本的にはこの繰り返しです。

リアルタイムクロックは時間だけではなく、一般的には【西暦】【月・日】【時・分・秒】【曜日】も表示(出力)が出来ます。
和暦を出力するリアルタイムクロックもあるかもしれませんが、通常リアルタイムクロックと接続するCPU側で計算(変換)して表示などしているようです。
また、月は俗にいう大の月(31日まである月)や小の月(30日以下の月)はもとより100年程度先のうるう年も対応してくれています。昔の古いRTCには年の情報が無いもの有った様です。

tohan

RTC(リアルタイムクロック)の特徴・用途

まず非常に低消費電力です。電池の選定を適切に行えば5-10年持ちます。また周波数温度特性に優れていますので、周囲温度が変化しても周波数(時間)が安定しています。朝と昼や冬と夏で時間が狂っては困りますね。
とある業界の遊戯設備に今回説明したリアルタイムクロックを使用しているという記事を見たことがあります。
その遊戯施設ではあるアイドルの一斉ライブという演出で、きまった時刻に全台から同時に曲が流れるというものでした。
設定した時間や間隔で一斉に曲等を流す事が出来るのは、リアルタイムクロックの特徴を有効に使うことで実現しています。
身近な物では、朝7時にご飯を炊き上げる炊飯器のタイマー機能や夕方の5時にお風呂にお湯を張る事が出来るのもリアルタイムクロックが持っている機能を使っています。

tohan

次にリアルタイムクロックの色々な機能について説明致します。

・時刻・カレンダー情報
時間や今日の日付を表示等する時に使用する信号(情報)です、この機能が基本の機能です。これらの情報は内部のRAMメモリで保持されていますのでこれらの情報をバックアップするために外部にバッテリなどで常時電源を供給しています。

・アラーム機能
アラーム機能は目覚まし時計と同様に設定した時間になるとリアルタイムクロックモジュールから出力される信号です。

・繰り返し用カウントダウンタイマー機能
繰り返しカウントダウンタイマーとは設定しカウントダウンタイマーがゼロになった時に出力される信号です。
これはマイコンに一定の間隔で信号を入れたい時に使用します、ウォッチドックタイマー等に使用されることもあります。

・時刻更新割込み信号機能
 時刻更新割込み信号とは毎分(1分毎)・毎秒(1秒毎)など定期的にリアルタイムクロックから出力される信号です。

・外部イベント入力割込み機能
 外部からのイベント入力(割込み信号)の発生時のタイムスタンプを記録する用途に使用します。

・バックアップ電源切替機能
リアルタイムクロックは先に述べました様に電池で駆動することができますが、メインの電源が供給されているときはメイン電源から供給すればその分電池の寿命が延びる利点があります。メイン電源がOFFの時または電圧が低下した際にリアルタイムクロックへの電源供給を自動で切り替える機能です。
通常は外付け電子部品として実装しますがこの機能内蔵したリアルタイムクロックを使用すれば部品実装が削減できます。

・クロック出力機能
リアルタイムクロックの内部クロック32.768kHzを基準にした32.768kHz
1Hzの出力できる機能です。(出力できる周波数は各リアルタイムクロックに
よって異なりますのでご使用の際はご使用になる部品の仕様を確認してください。)

・リセット機能
電源投入時に内部レジスタ(メモリ)を初期化する機能です。
リセット機能は使用するリアルタイムクロックによって仕様が違うので仕様
の確認が必要です。

これらのリアルタイムクロックの各機能は使用するリアルタイムクロックによっては無い機能も有るので使用するリアルタイムクロックの仕様を事前に確認する事をお勧めします。

リアルタイムクロックの使い方

一般的にはCPUの外付け部品の一つとして使用する場合が多いです。CPUはRTCからの情報を読み込む必要があります。インターフェースとしてはシリアルインターフェイースが主流となっております。
主なシリアルインターフェイースとして
・2線式/I2C(~400kz)
・3線式/SPI(~1MHz)
等がありますが I2Cが多い様です。使用するCPUで使用できるインターフェースを確認しそれに対応したリアルタイムクロックを選定してください。

また3項で述べた各機能は必要に応じてCPUの割込み(INT)機能の端子に接続します。この時CPUの汎用入力端子は使用せず割込み(INT)機能の端子を使用します。汎用入力端子と割込み機能端子ではCPU内での優先度が違うからです。
割込み(INT)機能端子が優先度は上位です。なぜなら優先度の高い処理を行わないと、仕様として成立しないからです。
例えばパソコンに時間を秒単位で表示させていて秒表示にばらつきがあるとそれは時計では無いですね。

東阪電子の技術情報

リアルタイムクロックを使用した制御機器に関する機器の設計・開発・製造についてお気軽にご相談下さい、お客様の納得して頂けるご提案を致します。

モーションコントロール、ODM開発のご相談は東阪電子機器へ

大切にしているのは、お客様とのコミュニケーション。
22業界・1,700機種の開発実績を有する弊社の専門スタッフが、
お客様のお困りごとに直接対応させていただきます。