#03
#03 AKMのA/Dコンバーター内蔵機能を活用してデジタル設計を楽したい!

旭化成エレクトロニクス (AKM) のA/Dコンバーター (以下ADC) 連載シリーズ第3話。
モーター製品を製造開発する架空のモーター企業の社員A君が、K先輩や上司のM課長とADCの知識を深めていくお話です。

今回はAKMのADCに内蔵されているデジタル機能を紹介します。

K先輩

「あ、リサージュ波形ね。エンコーダを作っているの?」

A君

「前回の、ホール素子を2つ配置して、A/D変換してるんですけど……。うーん、A相とB相の信号振幅が少しずれているなぁ」

K先輩

「そうね、A相の方が少しだけ振幅が大きいようね」

A君

「やっぱりセンサーの配置がイマイチなのかなぁ」

K先輩

「アナログで完璧に合わせるのは難しいわ。以降はデジタルで細かくゲイン補正した方がいいよ」

A君

「……。そうですよねー」

K先輩

「さては……、デジタルに苦手意識があると見た!」

A君

「ぎくっ。いや、だってアレですよ。要素検討だからって、僕しかアサインされていないんですよー! M課長の陰謀ですよ!」

K先輩

「わかるよ。全部やるのは大変だよね」

A君

「メカ部もアナログ回路も一人でやっていて……。デジタル回路まで手が回らないですよー」

K先輩

「デジタル回路は敷居が高いしね」

A君

「前のプロジェクトでは、デジタルはDさんにまかせっきりだったんで、正直よくわかってないんですよ。ADCの出力を使ってエクセルで計算するだけなら簡単だけど、デジタル回路に落とし込むのが、どうも苦手で……」

K先輩

「そんな君に朗報なのが、AKMのADCだよ! A相とB相の信号ゲインをデジタルで微調整するレジスタ機能が搭載されているのだ!」

A君

「え、それはありがたいです! どの製品ですか?」

K先輩

「単体ADCの AK9232/33/34 と、前段アンプ内蔵ADCの AK9242/43 だね。2チャンネル独立にオフセットエラーやゲインエラーを補正できる機能が内蔵されているよ」(図1)

図1. AKMADC内蔵デジタル機能

A君

「AK9242/43 はアナログでもPGAを持っていますけど、ゲインエラー補正っていうのは?」

K先輩

「ADCの出力コードに対するデジタルゲインエラー補正だよ。PGAでのアナログゲインは3dBステップだけど、このデジタル補正ではなんと0.0018%刻みで設定できる」

A君

「細かい!」

K先輩

「マイコンやFPGAで補正が不要になるから、演算能力を有効に活用できるね。もう一つ、2チャンネルにそれぞれA相とB相の信号が入力されている前提で、角度演算機能と位相調整機能が使えるよ」

A君

「角度演算……、アークタンジェントしてくれるってことですか!?」

K先輩

「そう。いわゆるCORDICで角度演算を行っているよ」

A君

「じゃあ後段演算不要でθ出力可能ってことですか! 先に教えて下さいよー」

K先輩

「マイコンで角度演算すると、演算時間と容量を食うから、ADCでやってくれるのは助かるよね。なんとA/D変換開始から角度演算結果出力まで、最速2usで出てくるからね。ハードウエア実装じゃないとなかなか厳しいよね」

A君

「すごく便利ですけど、注意点とかあります?」

K先輩

「電源を落とすとレジスタ値は初期化されるから気を付けてね。書き込む値は外部の不揮発性メモリに格納しておいて、電源起動シーケンスに組み込んでおく必要があるわ」

A君

「ふーん。そう言われると、レジスタって、ちょっと不安ですよね? いきなり内部データ化けして、異常な値を出力するかも……。産業機器用途なので、信頼性も重要です!」

M課長

「そこもちゃんと考えられているぞ!」

A君

「わ、M課長!」

M課長

「この製品群は信頼性向上の観点からレジスタにはデータ多重化と多数決論理を採用しているのだ」(図2)

図2. レジスタデータの3多重化機能

A君

「多重化と多数決論理??」

M課長

「ユーザーがレジスタを書き込むと、ADC内部では書き込んだ情報を3多重化して保持しているんだ。さらに、多重化したデータの多数決を取って、ADCの機能が決定される構成を採用している」

A君

「はあ。それって、どう嬉しいんですか?」

M課長

「動作中に保持データが一か所意図せず化けてしまったとしても、多重化して多数決しているから、機能破たんしないんだな」」(図3)

図3. データ化けが発生した場合

A君

「なるほどー。それは少し安心ですね」

K先輩

「さらに、機能は破たんしないけど、3多重化した内部データが全て一致していないと、アラームを出力してくれるのよ」

A君

「これはどうやって使うんですか?」

K先輩

「アラームを検出したら、ユーザーはレジスタを全て再書き込みする。そうすると内部レジスタ化けは解消されてアラームが消え、通常状態に戻るってわけね」

A君

「なるほど。『多重化した内部データに一部エラーがあるぞ! 多数決取っているから動作破綻はしてないけど、危ないから早く所望のレジスタを再書き込みしろよ』とADCが教えてくれるんですね」

M課長

「その通り。アラーム機能を内蔵することで、ADC自体に故障検知機能を付加しているわけだ」

Page Top

top