RL78/G14のマイコンで別の通信中にシステム全体の電源ラインにノイズが乗り、基準電圧が変動します。この変動がA/D変換結果のバラツキとして現れることがあります。ソフト側で移動平均(過去8個分のデータの平均)を取ることによって対処していますが、それでもAD値がふらつきます。なにか他によい対策法はありますか?
hira です。
・第1に、電源のノイズレベルを下げるように、ハードを改修する事です。
・ソフトで何とかする場合、8つ平均では無く、8つの中で、一番小さい値と大きい値を捨てて、6個の平均にするべきです。
・小さい二つ、大きい二つを捨てて、4個の平均の方が、実際の値に近いかもしれません。
返信ありがとうございます。ハードを改修の点で何かいい方法はないでしょうか?
電気系の知識に乏しく、そのあたりをご助力いただきたいです。返信よろしくお願いいたします。
このマイコンはアナログ用のAGNDやAVCCが存在しないのでADC以外の回路とGND(VSS)が共通になります。そのGNDのパターンがアナログ回路以外の信号変化で流れ出す信号の電流によってフラつきます。これはパターンの抵抗値が大きい場合に起こりますのでまずできそうなのはベタでGNDを引くことでしょうね。信号は基準に対してですのでデジタルもアナログもGNDが共通の場合、それぞれの信号がどのように流れるのかを考えてパターンを引くのが大事です。流れた電流はGNDで戻ってきます。戻った電流分は抵抗があれば電圧になり、記号としてのGNDは必ず抵抗値(等)が存在します。
ADCは変換の基準になる電源を選択できます。このマイコンならAVREFPというP20に基準を与えられる他、VDDか内部で生成する1.45Vを用意できます。使うアナログ電圧の範囲もありますが、基準がフラつくとそのまま結果もフラつきます。もし現在AVREFPを使っているならそれの基準電圧が安定しているかを計測器で評価するといいと思います(基準はマイコンのVSSピン近くで)。測定対象が1.45V未満なら基準電源を内蔵1.45Vにしてみるといいかもしれません。測定する信号の出力インピーダンスに注意すべきです。ADC動作では最初にサンプリングがありますので内部コンデンサにチャージ動作が発生します。オペアンプなどでバッファリングしてない場合は変換待機時間を長めに設定するとより安定するかもしれません。