30 Oct '11, 2am

チャタリング対策ソフトはちょと冗長だけど→のアルゴリズム使ってる。http://t.co/tZtwh0OV

チャタリング対策ソフトはちょと冗長だけど→のアルゴリズム使ってる。http://t.co/tZtwh0OV

 機械式接点のチャタリングは、マイクロコントローラへの接続や、ノイズの多いあらゆる入力信号の接続を複雑にしている。この問題に対応する様々なハードウエアとソフトウエアが提案されてきたが、本命といえるアプローチは得られていない*1〜10) 。  接点のチャタリングを解消するためのハードウエア的なアプローチは通常、RCフィルタとシュミット・トリガー回路とで構成される(図1)。この方式では、RC時定数を長くすると、有効性を簡単に拡大することができるが、応答時間が長くなるのが欠点である。 図1 スイッチ接点のチャタリング解消回路は基本的に、RC回路とシュミット・トリガー回路で構成される。  ソフトウエアによるチャタリング対応策では通常、1ビット処理を用いる。これは、接点の入力情報を2回読み取るもので、2回の読み取りの間に固定の遅延期間を設ける。状態マシンを組み込むか、入力信号をシフトレジスタに通して導入し、レジスタの出力が3〜4状態の間、変わらないのを待つこともできる。1ビット処理という効率の低い方法を用いるのは、この対応策が一見簡単で、同程度に簡単なソフトウエアで処理できるはずだという、誤った認識に基づいている。しかし、種々の接点の接触タイプを詳細に調べてみると、複雑で、ときには予想もしない一連の挙動が明らかになる。  そこで、マイクロコンピュータに接続する機械式接点インターフェースすべてを容易に取り扱うことのできる、より包括的な方法を紹介しよう。 図2 10 ms時点でスイッチを閉じると、安定な閉状態に達するまでに、50 ms以上にわたって不規則にチャタリングが発生する。 図3 チャタリング解消ソフトウエア・ルーチンによって、接点のチャタリングが完全に収まった後にのみ、閉じられる。  このチャタリング解消法では、8ビットの処理とデジタル・フィルタリングをデジタル入力にフルに適用する。せいぜい20個のアセンブラ命令により、Atmel社の8ビットマイクロコントローラ「ATmega8」上で19マシン・サイクルで実行し、信頼できるチャタリング解消機能を提...

Full article: http://ednjapan.cancom-j.com/content/issue/2005/11/idea/i...

Tweets