相互容量方式のセンサボードを使ってチューニングしてみよう
前回の記事 CapTIvateで水気があっても簡単チューニング その1 では、水の付着と指のタッチを区別できる相互容量方式の説明とGUI上での変化の様子を簡単にご紹介しました。
今回の記事では、「相互容量方式」に対応したセンサボード(CAPTIVATE-PHONE)を使用し、感度に加えてスレッショルドの設定までのチューニング作業についてご説明します。
※チューニング手順自体は、自己容量方式でも同様に適用可能です。
CAPTIVATE-PHONEボードを使って感度、スレショルドのチューニング
以下の手順でチューニングを進めます。
基本的な流れは CapTIvate タッチ感度をGUIで簡単チューニング にて説明しておりますので、詳細は割愛させていただきます。
手順1 タッチセンサのキャンバスを作成
手順2 統合開発環境(CCS)でマイコンへの書き込み
手順3 タッチセンサをリアルタイムで感度チューニング
手順4 タッチセンサをリアルタイムでスレッショルドチューニング
手順1 タッチセンサのキャンバスを作成
以下の手順でMSP CapTIvate Design Center GUIでCAPTIVATE-PHONEのプロジェクトをロードします。
- MSP CapTIvate Design Center GUIを起動します。
- メニューバーのFile → Project Openをクリックします。
- CAPTIVATE-PHONEを選択してSelectをクリックします。
手順2 統合開発環境(CCS)でマイコンへの書き込み
以下の手順でCAPTIVATE-PHONEのプログラムをマイコンに書き込みます。
- Start the integrated development environment (CCS).
- Select Project → Import CCS from the menu bar.
- 次に、Browseボタンをクリックして、GUIツールに付属のプログラムが格納されているフォルダを指定し、読み込むプロジェクト(CAPTIVATE-PHONE)をチェックし、Finishをクリックします。
- Select a project.
- ハンマーのアイコン(Build) をクリックします。(エラーなしで"BuildFinished"が確認できたらコンパイル成功です。)
- 虫のアイコン(Debug) をクリックすることで、マイコンへプログラムの書き込みを行います。
手順3 タッチセンサをリアルタイムで感度チューニング
以下の手順でチューニング画面を表示します。
- GUIツールで、Communication → Connect をクリックして接続します。
- 画面の部品(numericKeypadSensor)を右クリックしてPropertiesをクリックします。
次に、前回と同様にセンサパラメータをチューニングします。
CAPTIVATE-PHONEのボタン1を指で押すと下図の様にセンサCH3の青線グラフと赤棒グラフが変化します。
グラフの変化を観察してみましょう。以下の例では左の目盛で非タッチ時の平均カウント値(LTA(黒線):Long Term Average) 約150に対して、赤棒グラフに15程度の変化(10%程度の変化)が観測されています。
CapTIvate 水気のある場所でもタッチ検出可能な静電容量式タッチソリューション でご説明しました通り、自己容量方式では、タッチによって静電容量が増加するので、カウント値は減る方向に変化しますが、相互容量方式では、タッチによって静電容量が減少し、カウント値は増える方向に変化していることが確認できます。
では、センサのパラメータをチューニングして、もう少し大きく変化するようにしてみたいと思います。
Conversion_Controlのタブをクリックして、Conversion_Countの値を増やしてみましょう。
- Conversion_Controlのタブをクリックします。
- Conversion_Countの値を150から300に変更してみます。
- Applyをクリックした後、再びChannel Bar Chartのタブをクリックします。
今度は、以下の図のように、左の目盛で約300に対して、80程度の変化(26%程度の変化)が観測されました。
手順4 タッチセンサをリアルタイムでスレッショルドチューニング
ここまでで、基本的な感度調整は行えましたので、更にスレッショルドの設定まで行ってみたいと思います。
CapTIvate wake-on-touchで超低消費電力 でタッチ検出の判断ポイント(Touch Threshold)にタッチ検出直前の判断ポイント(Proximity Threshold)を加えた2つのスレッショルドで動作するメカニズムについてご説明しました。
このスレッショルドの設定は、自己容量方式、相互容量方式に関わらず必要ですが、今回はスレッショルド設定の一例として、相互容量方式を例に以下のように設定する方法をご紹介します。
- 非タッチ時とタッチ時の変化量の20%をProximity Threshold に設定
- 非タッチ時とタッチ時の変化量の70%をTouch Threshold に設定
Proximity Thresholdを設定
下の手順でProximity Thresholdを設定します。
- TuningTabを選択
- Prox Thresholdをクリックし、計算式を確認
- Prox Thresholdの値を変更
- Applyをクリックした後、再びChannel Bar Chartのタブをクリックします。
The value to set for Prox Threshold was calculated as follows:
When you check the Channel Bar Chart tab screen, the LTA (black line) is 300,
ProxThresh_absolute = LTA + (change amount x 20%) = 300 + (80 counts x 0.2) = 316
In the case of Mutual
- 計算式より、316=300+ProxThresh
- 計算結果は、ProxThresh=16
上記より、GUIのProx Thresholdの設定値は16としました。
以下の図では、Channel Bar Chartの画面でProx Threshold(黄線)が設定値の316程度になっていることが確認できます。
Touch Thresholdを設定
次に、以下の手順でTouch Thresholdを設定します。
- TuningTabを選択
- Touch Thresholdをクリックし、計算式を確認
- 対象センサのCH(CH3)をドロップダウンメニューから選択し、Touch thresholdの値を変更
- Applyをクリックした後、再びChannel Bar Chartのタブをクリックします。
The value to set for Touch Threshold was calculated as follows:
When you check the Channel Bar Chart tab screen, the LTA (black line) is approximately 300,
TouchThresh_absolute = LTA + (change amount x 70%) = 300 + (80 counts x 0.7) = 356.
In the case of Mutual
- 計算式より、356=300+(300/128)*TouchThresh
- 計算結果は、TouchThresh=23.9
上記より、GUIのTouchThresholdの設定値は24としました。
以下の図では、Channel Bar Chartの画面でTouch Threshold(緑線)が設定値の356程度になっていることが確認できます。
今回は「相互容量方式」に対応したセンサーボード(CAPTIVATE-PHONE)を使用した、センサーのチューニング作業の一例をご紹介しました。CapTIvateは、相互容量方式にも対応することで、水滴の付着と導体(手や指)の接近を区別することが容易となった上、自己容量方式と同様の手順でGUIを利用したチューニングが可能です。
基本的な手順は、サンプルコードも含めてクイック・スタートガイドに記載がございますので、こちらもご参照の上、ご利用をご検討いただけたらと思います。
Click here for recommended articles/materials
CapTIvate: Quick Start Guide
Capacitive touch sensing can be realized only with a microcomputer! What is CapTIvate Technology?
Set up your design environment in minutes with the CapTIvate Design Center GUI
Touch detection is possible even with water droplets! What are the two capacitive methods?
Ultra low power consumption with CapTIvate wake-on-touch
Easy tuning of CapTIvate touch sensitivity with GUI
Easy tuning with CapTIvate even if there is moisture Part 1
Easy tuning with CapTIvate even if there is water Part 2
Texas Instruments Manufacturer Service Introduction
What is a sensor? Basic knowledge for digitization and IoT