概要
設計リソース
評価用ボード
型番に"Z"が付いているものは、RoHS対応製品です。 本回路の評価には以下の評価用ボードが必要です。
- EVAL-CFTL-6V-PWRZ ($20.01) Wall Power Supply for Eval Board
- EVAL-CN0189-SDPZ ($70.62) Tilt Measurement Using a Dual Axis Accelerometer
- EVAL-SDP-CB1Z ($116.52) Eval Control Board
デバイス・ドライバ
コンポーネントのデジタル・インターフェースとを介して通信するために使用されるCコードやFPGAコードなどのソフトウェアです。
機能と利点
- Dual Axis Tilt Measurement
- 1 Degree Accuracy over 90 Degrees and Temperature
- 12-Bit, 125kSPS SAR ADC
参考資料
-
CN0189 Software User Guide2018/10/18WIKI
-
MT-101: Decoupling Techniques2015/02/14PDF954 kB
-
MT-031: データ・コンバータのグラウンディングと、「AGND」および「DGND」に関する疑問の解消2009/03/20PDF144 kB
-
CN-0189: 2 軸加速度センサーを使った傾き測定2012/04/11PDF285 kB
-
AN-1057: 加速度センサーによる傾きの検出2015/02/14
回路機能とその特長
図1に示す回路は2軸加速度センサーADXL203と12ビット逐次比較型(SAR)ADコンバータのAD7887を使用した、2軸傾き測定システムです。
ADXL203はポリシリコン表面マイクロマシーン・センサーとシグナル・コンディショニング回路を内蔵しています。 X軸又はY軸での加速度に対応する出力電圧をデバイスのXOUT又はYOUTの出力端子に発生させます。X軸とY軸は互いに垂直です。クワッド・オペアンプAD8608はADXL203の出力がAD7887の入力を駆動するのに適切なレベルになるようADXL203の出力をバッファ、減衰、レベル・シフトします。レールtoレール入力/出力のAD8608を選択した理由は低オフセット電圧(65 μV max)、低バイアス電流(1 pA max)、低ノイズ(8 nV/√Hz)、小フットプリント(14ピンSOIC 又はTSSOP)だからです。
AD7887は内蔵コントロール・レジスタ経由で2チャンネル動作又は1チャンネル動作のどちらかに設定できます。このアプリケーションではユーザーがADXL203の両方の出力をモニター(従ってより高精度で完全なソリューションを提供します)できるように2チャンネル・モードに設定されています。
システムは全温度範囲で、90°全体にわたり1°の精度を保ちます。回路はこうした精度、性能、角度範囲を低価格、低消費電力、小フットプリント、調整依存型ソリューションで提供します。ADXL203は-40°C~+105°Cの温度範囲で仕様規定され、8ピン・セラミック・リードレス・チップキャリアパッケージ(LCC)に収納されています。
回路説明
電源電圧とデカップリング
ADXL203に必要なデカップリング・コンデンサは140 kHz内部クロック周波数でノイズが存在しなければ、0.1μF 1個のみです。必要であれば、大きなバルク・コンデンサ(1 μF ~10 μF)又はフェライト・ビーズが使用できます。
出力ロジック・レベルをSDPボードとコンパチブルにするためにAD7887を+3.3 Vで動作させる必要があります。残りの回路には図1に示すように+5 Vを使います。ADXL203は公称電源電圧+5 Vで仕様規定され、テストされます。ADXL203は3 V~6 Vの任意の電源電圧で動作しますが、最適な全体の性能は5 Vで得られます。他の電源電圧での性能に関する詳細はADXL203のデータシートをご覧ください。
ADXL203の出力はレシオメトリックです;電源電圧を高くすると出力電圧も高くなるように働きます。出力感度は電源電圧に比例して変化します。VS=3 Vでの出力感度の標準値は560 mV/Gです。VS=5 Vでのデバイスの公称感度は1000 mV/Gです。
ゼロG出力レベルもレシオメトリックであるため、ゼロG出力の公称値はすべての電源電圧でVS/2に等しくなります。
ADXL203の出力ノイズはレシオメトリックではなく、V単位の絶対値です。これはノイズ密度が電源電圧の増加に従って減少する事を意味します。なぜならノイズ電圧が一定であるのに対して、スケール・ファクタ(mV/G)が増加するからです。VS=3Vでは、ノイズ密度の標準値は190μG/√Hzで、VS=5 Vでは110 μg/√Hzになります。
ノイズ、帯域幅、出力コンデンサの選択
ADXL203のノイズは、すべての周波数に等しく影響するホワイト・ガウス・ノイズの特性になっています。これはμG/√Hzの単位で表すことができます(すなわち、ノイズは加速度センサーの帯域幅の2乗平方根に比例します)。加速度センサーの分解能とダイナミック・レンジを可能な限り高くするには、帯域幅をアプリケーションで必要な最低限の周波数に制限する必要があります。
帯域幅はデバイスのXOUTピン と YOUTピンに接続するコンデンサ(CX,Y)によって設定します。これらのコンデンサはADXL203の内部出力抵抗32 kΩとの組み合わせでローパス・フィルタを形成します。これらのフィルタは主にノイズ低減とアンチエイリアシングが目的です。3dB帯域幅は次の式で求める事ができます:
BW = 1/(2πR×C(X,Y))ここで R = 32 kΩ
単極ロールオフ特性における5V電源でのADXL203のノイズ(typ)は、次の式から求めることができます:
RMS ノイズ = (110 μg/√Hz) × √(BW × 1.57)
ピークtoピーク・ノイズは1回の計測における不確実性について最適な推定値が得られので、時々ピークtoピーク・ノイズが必要になります;ピークtoピーク・ノイズはRMS値に6を掛けて推定します。
表1は与えられたフィルタ・コンデンサの帯域幅、RMSノイズ、ピークtoピーク・ノイズです。この回路では2つの10 μFコンデンサによって帯域幅は0.5 Hzになっています。どのような場合でも最小2000pFのコンデンサは必要です。
帯域幅 (Hz) | CxCy (µF) | RMS ノイズ (mg) | ピーク to ピーク・ ノイズ 推定値 (mg) |
10 |
0.47 |
0.4 |
2.6 |
50 |
0.1 |
1.0 | 6 |
100 | 0.047 | 1.4 | 8.4 |
500 | 0.01 | 3.1 | 18.7 |
センサーの物理動作
センサーは、シリコン・ウェーハの上面に構成される表面マイクロマシーン・ポリシリコン構造となっています。この構造部をポリシリコン・スプリングがウェーハ表面上に支え、加速力に対する抵抗を与えます。構造部の偏位は、独立した固定プレートと可動マスに取り付けられたプレートで構成される差動コンデンサによって測定されます。
固定プレートは、180°位相のずれた矩形波によって駆動します。加速度がビームを偏向し、差動コンデンサを不平衡にするため、加速度に比例する振幅をもった矩形波が出力されます。次いで、位相敏感検出技法により信号を整流し、加速度の方向を求めます。
入力ベクトルとデバイスの方向
ADXL203に対する入力信号は一般的な電流あるいは電圧ではありません。変わりに、加速度センサーは空間での対象物の方向を測定するために重力を入力ベクトルとして使用します。図2に地球表面を基準にした5つの異なる方向のADXL203と、センサーの方向に対応した出力電圧を示します。
測定対象の軸(この例ではX軸)が地球の表面に平行に向いている時、センサーは0 Gフィールドになりますが、それはゼロGバイアス・レベルである2.5 Vに相当します。出力電圧はデバイスの感度に従って変わります(1000 mV/G)。従って、時計回り(反時計回り)に90°回転すると+1 Gフィールド(-1 Gフィールド)になり、対応する出力電圧は3.5 V(1.5 V)になります。各種のICの方向とそれらの対応する出力電圧については図2をご覧ください。
ADXL203の電圧出力の信号処理
加速度センサーのデータを処理して角度を求めるにはデータをAD7887でデジタル化する必要があります。ADXL203のワーストケース出力電圧範囲を確認して、それをADコンバータの入力電圧範囲と比較する必要があります。AD7887の入力電圧範囲は(0 V~VDD=3.3 V)です。ADXL203の理想的な出力電圧範囲は(1.5 V~3.5 V)です。しかし、この範囲を決めるに当たってはいくつかの理想的ではない部分を無視しています。
最初の理想的ではない特性はゼロGバイアス・レベルです。この電圧は2.4 V~2.6 Vと規定されており、ワーストケースで上下に100 mV変化します。2番目の理想的ではない特性は各出力の感度で、ワーストケースの仕様は960 mV/G~1040 mV/Gです。これら2つの誤差を結合する事によりADXL203のワーストケース出力範囲を計算する事ができます:
VMAX (+1 g) = (2.6 V) + (1040 mV/g)×(+1 g) = 3.64 V
VMIN (−1 g) = (2.4 V) + (1040 mV/g)×(−1 g) = 1.36 V
ここで加速度センサーの出力範囲が求められましたが、目的はこの範囲(VCM=2.5 Vで1.36 V~3.64 V)をADコンバータの入力範囲に一致するようにうまく合わせる事です。2チャンネル動作の場合、AD7887の入力範囲は0 V~VDD (VCM=1.7 Vで0 V~3.3 V)です。図1に示すように2段の信号処理回路を形成するためにクワッドのAD8608を使用します。初段は1.2倍の信号ゲインを提供し、同相電圧を2Vにレベル・シフトします。2段目は(合計1.32倍の信号ゲインにするため)1.1倍の信号ゲインを提供し、同相出力電圧を1.7Vに設定します。このオペアンプ段の出力電圧範囲は、負側末端に約200 mV、正側末端に100 mVのヘッドルームを残してADコンバータの入力電圧範囲にうまく適合します。
1軸による傾きの計算
たとえば、図3に示したように1軸ソリューションについて考えます。三角法により、重力ベクトルのX軸上の投影が、水平線と加速度センサーのX軸がなす角度のサイン(正弦)に等しい出力加速度を生じます。水平線は、一般的に重力ベクトルと直交する平面と見なされます。重力が1 gの理想値であった場合、出力加速度は次式で表すことができます:
AX, OUT [g] = 1 g × sinθ
加速度から傾斜角への変換は、次の逆サイン関数を使用して行われます。
θ = sin-1 (AX, OUT [g]/ g)
ここで、傾斜角(θ)の単位はラジアンです。
1軸ソリューションを使用する場合に重要な事は、水平線とX軸がなす角度が大きくなるにつれて感度が悪くなる事です。角度が±90°に近づくと感度はゼロに近づきます。これを図4に示します。図4は傾斜角に対する出力加速度(単位:g)をグラフにしています。±90°の近辺では、傾斜角が大きく変化しても出力加速度の変化は小さくなります。
範囲外の信号に注意する事が重要です。加速度センサーが振動、ショックあるいは他の突然の加速度により±1 g 以上の信号を出力する可能性があります。
1軸対 2軸についての考察
1軸ソリューションの場合、90°まで回転した時感度が悪くなりますが、その問題に対する簡単な解決方法は1番目の軸に垂直な2番目の軸を組み込む事です。第2の軸を組み込んで傾斜角を求める事には、3つの主な利点があります。
第2の軸を使う最初の大きな利点は、軸の直交性によるものです。1軸ソリューションでは、X軸によって検出された加速度は、傾斜角のサインに比例します。Y軸の加速度は、直交性のために、傾斜角のコサインに比例します(図6を参照)。1つの軸の感度が減少すると、もう1つの軸の感度が増大します。
2軸以上を使用する事によって得られる2番目の大きな利点は、(その他の軸での傾きが大きな誤差を引き起こす)1軸ソリューションとは異なり、第2の軸を使用することで、たとえ第3の軸に傾きが存在しても正確な値を測定できることです。これは感度が対象となる軸における重力の2乗和の平方根(RSS)値に比例するためです。
第2の軸の使用による3番目の大きな利点は、各象限間を識別できることと、360°の全範囲で角度の測定ができる事です。各象限でX軸とY軸の加速度の符号の組み合わせが異なります。
オペランド(AX,OUT/AY,OUT)が正の値の場合、逆タンジェント関数が象限Iの値を示します;オペランドが負の値の場合、逆タンジェント関数は象限IVの値を示します。象限IIのオペランドは負の値であるため、角度がその象限にある場合は計算結果に180°を足す必要があります。象限IIIのオペランドは正の値であるため、角度がその象限にある場合は計算結果から180°を引かなければなりません。各軸で測定した加速度の符号を調べる事により計算した角度の正しい象限を判定する事ができます。
2軸による傾きの計算
システムに2軸を含むので、傾斜角の計算も見直す必要があります。簡単な方法は前述したようにX軸を計算する事と、同様な方法(角度のコサインを使う事を思い出して)でY軸を計算する事です。
AX, OUT [g] = 1 g × sin θ
AY, OUT [g] = 1 g × cos θ
逆サイン関数と逆コサイン関数を使って加速度から角度へ変換します。
θ = sin-1 (AX, OUT [g]/ 1 g)
θ = cos-1 (AY, OUT [g]/ 1 g)
ここで、傾斜角(θ)の単位はラジアンです。
しかしもっと簡単な方法は、その結果を次に示すように、値の比を使って三角関数の恒等式を適用する事です。
ここで、傾斜角(θ)の単位はラジアンです。
キャリブレーション
図1に示す加速度センサー回路のもっとも重要な設計上の側面はシステムをキャリブレーションする機能です。システムは、正確なキャリブレーション、適切なテスト手順と設定が無いと、必要以上の大きな誤差を生じます。CN0189 Labviewソフトウェアには所定のシステム・キャリブレーション手順が含まれています。次に、このシステムのキャリブレーション方法だけでなく、誤差を招く原因とキャリブレーションが必要な理由について述べます。
オフセット誤差の影響
まず、感度は全く問題なく完璧で、X軸に50 mgのオフセットがある2軸ソリューションを考えてみましょう。0°では、X軸の測定値は50 mg、Y軸の測定値は1 gです。この時計算の結果角度は2.9°となり、誤差は2.9°になります。±180°では、X軸が50 mg、Y軸が-1 gになります。この場合、計算の結果角度と誤差は-2.9°になります。
図7に、この例で計算した角度と実際の角度との間の誤差を示します。オフセットによる誤差はシステムの要求精度に対して大きいだけでなく、変動する可能性があるので、誤差角を簡単にキャリブレーションで小さくするのは難しいと思われます。複数軸のオフセットが関係する場合は、さらに複雑になります。
2軸傾き検出のアプリケーションにおける主な誤差成分は、対象となる軸間の感度の違いです(1軸ソリューションの場合は、実際の感度とその期待値の偏差が誤差になります)。X軸とY軸の比を使用すれば、感度が同じ場合、大部分の誤差が打ち消されます。
加速度センサーの感度のミスマッチの一例として、完璧にオフセット調整され、Y軸での感度の誤差がなく、X軸に+5%の感度をもった2軸ソリューションを考えてみましょう。Y軸は1 gフィールドで、1 gを表示し、X軸は1.05 gを表示します。図8は、この感度のミスマッチに起因する計算角度の誤差です。加速度センサーの感度のミスマッチに起因する誤差は、オフセット誤差と同じように、回転の全範囲にわたって変動するため、傾斜角の計算した後に誤差を補償する事は困難です。
ノーリターン・キャリブレーション技術
オフセットと感度のミスマッチに起因する誤差が組み合わさると、総合誤差は非常に大きくなって、傾きの検出アプリケーションの許容できる誤差を大幅に上回る可能性があります。この誤差を小さくするには、オフセットと感度のキャリブレーションを行い、キャリブレーションされた出力加速度を使って傾斜角を計算する必要があります。オフセットと感度の影響を含めると、加速度センサーの出力は次のようになります:
AOUT[g] = AOFF + (Gain × AACTUAL)
ここで:
AOFFはオフセット誤差で、単位はgです。
Gainは加速度センサーのゲインで、理想的な値は1です。
AACTUALは加速度センサーと希望値に作用する実際の加速度で、単位はgです。
簡単なキャリブレーション方法はゲインを1として、オフセットを測定する事です。このキャリブレーションによって、システムの精度をキャリブレーションなしの感度の誤差のみになるように制限できます。この簡単なキャリブレーション方法は、対象となる軸を1 gフィールドに配置して出力を測定する事により行う事ができます(この出力がオフセットになります)。次に、加速度センサーの出力値からその値を引き、その後に角度の計算を行います。この方法では、X軸とY軸を0 gフィールドに置くのがデバイスの標準的な方向なので、しばしばノーターンまたはシングルポイント・キャリブレーションと呼ばれます。3軸デバイスを使用する場合は、Z軸を少なくとも1回は方向転換をするか、2番目のポイントを使用する必要があります。
マルチ・ターン・キャリブレーション技術
もっと正確にキャリブレーションを行う場合は、対象となる軸ごとに2つのポイントを使用します。+1 gと-1 gの入力がある軸に加わっているとすると、測定される出力は次のようになります:
ここで:
A+1g[g] = AOFF + (1 g × Gain)
A−1g [g] = AOFF + (−1 g × Gain)
ここで、オフセット AOFFの単位はgです。
この2つのポイントを用いて、オフセットとゲインを次のように求めることができます。:
ここで:
AOFF [g] = 0.5 × (A+1g[g] + A-1g[g])
Gain = [0.5 × (A+1g[g] + A-1g[g])]/ 1 g
ここで:
ここで、+1 gと-1 gの測定値であるA+1g[g] と A-1g[g]の単位はgです。
このキャリブレーション方法は、対象となる軸の測定時には直交軸が0 gフィールドであるので、直交軸の感度の影響を最小限に抑えることができます。これらの値はまず加速度センサーの測定値からオフセットを引き、その結果をゲインで割る事により使用されます。
ここで:
AACTUAL[g] = (AOUT – AOFF) / Gain
ここで:
上の式のAOFFとゲインの計算では、加速度の値A+1gとA-1gの単位をgと仮定しています。
mg単位の加速度を使用する場合は、AOFFの計算は同じですが、ゲインの計算では、単位が変わるため1000で割る必要があります。
テスト結果
PCBは360°自由に回転できるボードに搭載され、データセットは上記したキャリブレーション技術(各軸のオフセットと感度を求めるためにX 軸とY 軸両方の+1 gと-1 gの値を求めます)を使って取り出されました。Y軸が+1 g電圧レベル(3.5 V)を出力し、X 軸が0 g 電圧レベル(2.5 V)を出力するようにPCBの方向を設定しました。この方向を、キャリブレーション後、0°と判断します。
次にPCBを1°単位で±90°回転させました。図9と図10はそれぞれX軸とY軸の誤差を示します。
ここで:
両方の軸がそれぞれ±1 gの測定値に近づくと両方とも誤差が増え始めます。これはX軸が±90°で、Y軸が0°のボードの方向に一致します。 </p>ここで:<>
図11はX軸とY軸のアーク・タンジェントに基づいた誤差を示します。お気づきのように2つの軸の比の誤差には図9と図10で見られるような境界線的な制約がありません。
PCBレイアウト上の考察
高精度が要求される回路では、ボード上の電源とグラウンド・リターンのレイアウトを注意深く行う事が重要です。PCBはアナログ部とデジタル部をできる限り分離してください。このシステムのPCBは面積の広いグラウンド・プレーン層、電源プレーンとともに4層に積み重ねて構成されています。レイアウトとグラウンディングに関するさらに詳しい内容は MT-031 チュートリアルを、そしてデカップリング技術に関する情報についてはMT-101 チュートリアルをご覧ください。
AD7887に対する電源は、適切にノイズを抑制しリップルを削減するために、10 μFと0.1 μFのコンデンサでデカップリングする必要があります。低ESR値で0.1 μFのコンデンサを、可能な限り素子の近くに配置してください。すべての高周波数デカップリングにはセラミック・コンデンサを推奨します。
電源ラインはできるだけ太いパターンにして低インピーダンス経路とし、電源ライン上のグリッチによる影響を軽減させる必要があります。クロックやその他の高速スイッチング・デジタル信号は、デジタル・グラウンドで基板上の他の部分からシールドする必要があります。
この回路ノートのための完全な設計支援パッケージはwww.analog.com/CN0189-DesignSupportに載っております。 </p>ここで:<>
回路の評価とテスト
この回路は回路ボード(EVAL-CN0189-SDPZ)とシステム・デモ用プラットホーム(SDP) 評価用ボード(EVAL-SDP-CB1Z)を使用します。2つのボードには、迅速な回路性能の設定と評価を可能とする120ピン接合用コネクタがあります。(EVAL-CN0189-SDPZ)ボードは(この回路ノートに記述されているように)評価対象の回路を含んでいます。そして回路ボード(EVAL-CN0189-SDPZ)からのデータを取り込むためにSDP 評価用ボードはCN0189 評価ソフトウェアと共に使用します。
必要な装置
- USBポート付きでWindows® XP又はWindows Vista®(32-bit)又はWindows® 7(32-bit)対応のPC
- 回路評価用ボード(EVAL-CN0189-SDPZ)
- SDP評価用ボード(EVAL-SDP-CB1Z)
- CN-0189評価ソフトウェア
- 電源:+6 V、又は+6 V “ACアダプタ”
始めてみよう
CN0189評価ソフトウェア・ディスクをPCのCDドライブに挿入して評価ソフトウェアをロードしてください。「マイコンピュタ」を使用して、評価ソフトウェア・ディスクのドライブを見つけ、Readmeファイルを開いてください。Readmeファイルに含まれているインストラクションに従って、評価ソフトウェアをインストールし、使用してください。
機能ブロック図
回路ブロック図についてはこの回路ノートの図1を、そして回路図についてはファイル「EVAL-CN0189-SDPZ-SCH-Rev0.pdf」をご覧ください。このファイルはCN0189 Design Support Packageに含まれています。
セットアップ
回路ボードEVAL-CN0189-SDPZの120ピン・コネクタを評価用(SDP)ボードEVAL-SDP-CB1Zの「CON A」と表示されたコネクタに接続してください。120ピン・コネクタの末端にある穴を利用して2つの基板をしっかり固定するためにナイロン製留め具を使用する必要があります。適切なRFケーブルを使用して、SMA RF入力コネクタ経由でRF信号源をEVAL-CN0189-SDPZボードに接続してください。
電源をオフにして、+6 V電源をボードの「+6 V」と「GND」と表示されている端子に接続してください。もし+6 V"ACアダプタ"があれば、ボード上のジャック・コネクタに接続して+6 V電源電圧の代わりに使用する事ができます。SDPボードと共に提供するUSBケーブルをPCのUSBポートに接続してください。注意:この時にはまだUSBケーブルをSDP基板上のミニUSBコネクタには接続しないでください。
テスト
回路ボードEVAL-CN0189-SDPZに接続した+6 V電源(又はACアダプタ)に電源を供給してください。
評価ソフトウェアを立ち上げ、PCからのUSBケーブルをSDPボード上のUSBミニ・コネクタに接続してください。1度USB通信が確立されれば、EVAL-CN0189-SDPZボードからのシリアル・データの送信、受信、取り込みを行うためにSDPボードを使用する事ができます。
データ取り込みのための評価ソフトウェアの使用方法に関する情報と詳細はCN0189評価ソフトウェアのReadmeファイルに載っています。
SDPボードに関する情報は SDP ユーザー・ガイド(英語)に記載されています。