このページをはてなブックマークに追加このページを含むはてなブックマーク このページをlivedoor クリップに追加このページを含むlivedoor クリップ

目次

FF利用によるチャタリング防止

 欠点はスイッチに2接点型(切替型)が必要なことと、スイッチへの配線が1本多いことである。そのためか、実際の製品ではあまり使用されていない。

 RS-FF(RSフリップフロップ)方式は最初の電圧の変化で判定して、それ以後の電圧の上下を無視するという仕組みになっている。これはシュミットトリガ方式と比べて有利に働く。なぜならば、シュミットトリガ方式はチャタリング後の電圧が安定した頃を判定するようになっており、判定までにある程度の時間が必要ということになる。また、スイッチの寿命などによりチャタリングの時間が長くなると正しく動作しなくなってしまう。

 以上のように、RS-FF方式は遅れ時間がほとんどないため、ロボットの位置検出時にはより精度を高められる。また動作頻度の高い場所ならば、スイッチの寿命がきてもしばらく安定して動作する。

実験

FF利用によるチャタリング防止回路をLEDで確認

 『絵ときでわかるディジタル回路』に載っている「FF利用によるチャタリング防止回路」(チャタリングシェーバ回路)と「16進カウンタ回路」を用いて、チャタリングを可視化してみた。

 まず「FF利用によるチャタリング防止回路」の部品は次の通りである。

  • ユニバーサル基板:サンハヤトICB88
    • \90
  • IC:74HC00
    • NANDゲート4つ込み
  • ICソケット:14P
  • 抵抗器:1kΩ×3、10kΩ×2
  • スペーサ:10mm×4
  • ダイオード:1S1588×2
    • 現在生産中止で鈴商で5本\100で見つけた。
    • 1N4148で代用可能。これなら秋月で50本入りで\100である。
  • 小型のマイクロスイッチ×2
  • 赤LED×3
  • L型ピン:3P×2、6P、マイクロスイッチ台座用

 次に「FF利用によるチャタリング防止回路」の回路図を示す。

[補講1]74HC00の1〜3,11〜13の2個のNANDゲートだけ使う。Vccの14ピンとGNDの7ピンを除く、4〜6と9〜10のピンはオープンで構わない。 ◇

[補講2]NANDゲート2つでフリップフロップを構成している。 ◇

 一方、「16進カウンタ回路」は74HC161利用による16進カウンタ回路:を用いる。

完成したところ

電源を入れたところ

RS-FFの方のマイクロスイッチをONにしたところ

 これらの2つの回路は次のように接続する。

 そして、実験手順は次の通りである。

  1. 2つの回路が接続され、電源が入っている状態とする。
    • 電源を接続したときカウンタ回路のLEDの表示はでたらめな値を示すが、たまたまそのような値になったにすぎない。これはカウンタ内部のFF回路が、電源をつないだときにどのような状態で安定するかは定まらないからである。このときICの1番ピン(CLEAR)を0にし、クロックを0から1に立ち上げればすべてのLEDが消えて、0000にセットできるが、この回路ではハイレベルに接続されているので表示された状態をカウンタの初期値にすることと約束する。
  2. このとき、まず最初にチャタリングシェーバ回路のFFと繋がっている側のマイクロスイッチをONにする。すると、カウンタ回路のLED4桁の点灯が、マイクロスイッチのONの度に1つずつ増加するはずである(2進数に対応)。
  3. 次にチャタリングシェーバ回路のFFと繋がっていない側のマイクロスイッチ(チャタリングシェーバ回路に乗っているだけで、あくまで単なる機械的なスイッチ)をONにする。すると、ONにする度に4桁のLEDが1ずつ増えないときがある。これはチャタリングによって1回のスイッチがONであっても、電気的に何度もスイッチが入ったように電圧がぶれるからである。

 実験の様子を動画にしてみた

  • チャタリングが発生しているクロックの生成>CIMG2110.AVI
  • チャタリング防止回路を介してクロック生成>CIMG2109.AVI

FF利用によるチャタリング防止回路を7セグメントLEDで確認

 『絵ときでわかるディジタル回路』に載っている「FF利用によるチャタリング防止回路」(チャタリングシェーバ回路)と「16進カウンタ回路」と「7セグメントLED回路」を用いて、チャタリングの可視化をしてみた。

 上記の実験では4桁のLEDの変化によってチャタリングを可視化した。今回の実験では7セグメントLEDの数値の増加を見てチャタリングを可視化する。

 「FF利用によるチャタリング防止回路」と「16進カウンタ回路」は上記の実験と同じ回路を用いる。また、「7セグメントLED回路」はMC1449利用による7セグメントLED回路を用いる。

 これらの3つの回路は次のように接続する。

★図

 そして、実験手順は次の通りである。

  1. 2つの回路が接続され、電源が入っている状態とする。
  2. このとき、まず最初にチャタリングシェーバ回路のFFと繋がっている側のマイクロスイッチをONにする。すると、ONにする度に7セグメントLEDが1つずつ増加するはずである(2進数に対応)。
  3. 次にチャタリングシェーバ回路のFFと繋がっていない側のマイクロスイッチをONにする。すると、ONにする度に7セグメントLEDが1つずつ増加しないときがある。場合によっては急に2,3が増加するはずである。このときチャタリングが発生していることを意味する。

シュミットトリガ利用によるチャタリング防止

参考文献

  • 『絵ときでわかるディジタル回路』