nobcha23の日記

PICマイコンやArduinoを使う電子回路遊びを紹介します

キャパシティブセンシングでは端子導電部に触れない方がよいと思うのですが・・・

Microchipが提供するmTouchという技術範疇には、APノートなどを読むと静電容量を使う4つ方式があります。

・CTMU
・CSM
・Comparator
・CVD

1.CTMU  この方式はまだ試作してません。今後の課題。
Charge Time Measurement Unitの略で、電圧を測定することによりセンシングを行う。キーパッド部に 放電して充電させ、一定時間経過したときの電圧を測定する。そこに指など人体が近づくと、浮遊容量のために容量が上がり、一定時間後の測定時電圧が低くなります。その電圧値から容量を計算する。
CTMUモジュールの搭載PICマイコンで利用可。

2.CSM これはPIC12F1822やPIC16F1827でやってみました。
Capacitive Sensing Moduleの略で、周波数変化を測定しセンシングを行う。キーパッド部に、決まった微小電圧閾値間で充放電を繰り返す。すなわち、三角波を発生させる。そこに指などが近づくと、浮遊容量で容量が増え、三角波の立上がりと立下りが緩慢になり、三角波周波数が減少する。それを周波数カウンタ方式で検知しONを判断する。
CSMモジュールの搭載されたPICマイコンで利用可。

3.Comparator PIC12F683で試したが安定発振できなかった。
コンパレータとTimer0を利用して、浮遊容量変化を検知する。
コンパレータ出力をキーパッドとコンパレータ入力部につないで発振させる。キーパッド部に指などが近づくと、浮遊容量で容量が増え、発振周波数が変化を検知する。

4.CVD PIC12F683で試作した。
Capacitive Voltage Dividerの略で、A/Dコンバーターでタッチセンシングを行う方法。まず、A/DのCH入力を切り替え、サンプル&ホールドアンプ入力容量に電荷がたまるのを利用する。まずAN0選択し、次に、CH入力をAN1に切り替える。AN1にキーパッドをつけておく。もし、指などが近づき寄生容量が発生している場合は、電荷がそっちへ移動するため、サンプル&ホールドアンプの電圧が下がる。そのA/D値、指などが近接しているかを検知する。
ADCの機能がある全てのPICマイコンで使用可。
感度がちょっと鈍いので、キーパッドへ直接触る方式で試作したが、今一つ安定した動作が実現できなかった。

AN1202(日本語版あり)は項番3、AN1298は項番4CVDを解説。

それで突然何を言いたかったかと言うと。
いくつかのブログでCSMが最近取り上げられているのですが、キャパシティブセンシングの試作実験で、キーパッドに直接に指を触れているようなのです。ワタシも初期に間違っていてキーに指を触れて実験してました。マイクロチップのm-touchという名称は誤解を招くよなと言いたい。ESDの観点ではやはり近接検知でやらないとだめでしょう。冬になると回路が壊れる恐れがあるという心配です。

ということで、片面基板にキーパッドを作って、基板の裏から指を近接させた実験を参考にしてみてください。
http://chitose6thplant.web.fc2.com/exp/i2c_csm_sense.htm



この写真をよおーーく見ていただくと、片面基板の裏からキーパッドに指を近接させています。