6 Replies Latest reply on Jul 30, 2019 4:46 PM by TaDa_1980266

    Self方式ボタンのSensorData飽和状態を調整出来ない

    TaDa_1980266

      Self方式ボタンのチューニングをしたいのですが、
      Sense Tuner(Graph View) の Sensor Data が飽和(2046固定)しております。


      Compensation IDAC を 0~127まで変化させたのですが、飽和状態が解除されません。

       

      Compensation IDAC を MAX(127)まで上げてもSensor Dataの飽和状態が解除されない場合、
      次に何を確認&変更すべきか教えて下さい。

        • 1. Re: Self方式ボタンのSensorData飽和状態を調整出来ない
          NoriakiT_91

          CapSense のチューニングについては、以下の文書を参照してください。

           

          https://www.cypress.com/AN85951

          AN85951 - PSoC® 4 and PSoC 6 MCU CapSense® Design Guide

           

          この中にマニュアルチューニングの手順が書かれています。

          一番簡単なのは、オートチューニングの結果を基本にチューニングを行う事です。

          • 2. Re: Self方式ボタンのSensorData飽和状態を調整出来ない
            TaDa_1980266

            オートチューニング(*1)実行後の設定(Compensation IDAC=5)では飽和状態(SensorData=4058)(*2)でしたが、

             

            20190729_AutoTuning_Settings_1.jpg

            20190729_AutoTuning_Settings_2.jpg

            20190729_AutoTuning_Settings_SensorData.jpg

             

            Compensation IDAC=30に変更する事で飽和状態を解除出来ました。(*3)

            20190729_CompensationIDAC_30_SesnsorData.jpg

             

            ただ、指を置いた場合、RawDataが下がり、Sensor Signalも 0 のままでタッチ反応を検出できておりません。
            SNR Mesurement = 1.32 (*4)

             

            20190729_CompensationIDAC_30_SNR_MEasurement.jpg

             

            通常Modulator IDAC を下げる事で Sensor Signal値を上昇させる認識ですが、
            オートチューニングで 6 が設定されており、十分低い値の為、調整余力が無い認識です。

             

            この現象は、チューニング対応可能な現象でしょうか?
            それともボタンセンサーや基板等の環境依存を疑うべきでしょうか?

             

            ※同一シートの他ボタンはタッチ検出出来ており、1つのボタンのみチューニング出来ない状態です。

             

            (*1)CapSense_CalibrateAllWidgets()を実行

             

            (*2)20190729_AutoTuning_Settings_1.jpg
                  20190729_AutoTuning_Settings_2.jpg
                  20190729_AutoTuning_Settings_SensorData.jpg

             

            (*3)20190729_CompensationIDAC_30_SesnsorData.jpg

             

            (*4)20190729_CompensationIDAC_30_SNR_MEasurement.jpg

            • 3. Re: Self方式ボタンのSensorData飽和状態を調整出来ない
              NoriakiT_91

              SmartSense をお試しください。

              GS004385.png

               

              CapSense_CalibrateAllWidgets() は、 IDAC を調整するのに対して SmartSense では、 Sense Clock 周波数も調整します。 Raw Count が飽和するという現象だけを見るとセンサの寄生容量が大きいことが推測されるのですが、 3MHz の sense clock では早すぎるはずです。

               

              Tuner を使うと SmartSense で得られた値を確認してプロジェクトに反映させることもできます。

              • 4. Re: Self方式ボタンのSensorData飽和状態を調整出来ない
                TaDa_1980266

                一歩前進しました。


                SmartSenseでオートチューニングした所、Tanaka様の推測通りsense clockが 750kHz に変わりました。

                 

                Modulator IDAC を -1 すると何とか SNR 5以上になりましたが、さらに -1 すると SNRが下がってしまいました。

                 

                ボタン10のSNRをもう少し改善する方法はありますでしょうか?

                 

                ★ボタン10:  750kHz/16bit/M-IDAC 58/C-IDAC 50/SNR= 2.19   NG   (SmartSense設定)

                20190729_SmartSense_AutoTuning_Btn10_Settings_1_Zoom.jpg20190729_SmartSense_AutoTuning_Btn10_Settings_2_Zoom.jpg

                 

                20190729_SmartSense_AutoTuning_Btn10_SNR_M_IDAC56.jpg

                 

                ★ボタン10:  750kHz/16bit/M-IDAC 57/C-IDAC 50/SNR= 5.26 ★OK★ (手動チューニング)

                20190729_SmartSense_AutoTuning_Btn10_SNR_M_IDAC57.jpg

                 

                 

                ★ボタン10:  750kHz/16bit/M-IDAC 56/C-IDAC 50/SNR= 2.40   NG   (手動チューニング)

                20190729_SmartSense_AutoTuning_Btn10_SNR_M_IDAC58.jpg

                 

                以下、近接するボタンの設定値です。

                  ボタン09: 3000kHz/14bit/M-IDAC 18/C-IDAC 15/SNR=70.69        (SmartSense設定)

                  ボタン11: 3000kHz/15bit/M-IDAC 19/C-IDAC 16/SNR=47.45        (SmartSense設定)

                • 5. Re: Self方式ボタンのSensorData飽和状態を調整出来ない
                  NoriakiT_91

                  これで、ボタン 10 の寄生容量だけが高いのが数値でわかります。

                   

                  IDAC の値を比べると、ボタン 10 の値は他のボタンの3倍になっています。

                  さらに sense clock の周波数は他のボタンの4分の1になっています。

                  合わせるとボタン 10 の寄生容量が他のボタンの12倍であることが分かります。

                  あまりにも寄生容量に違いが大きいので、何らかの電気的な原因が考えられます。

                   

                  原因は、いくつか考えられます。

                  1) ボタンの大きさが12倍大きい。

                  2) ボタンの裏側にベタグランドパターンがある。

                  3) ボタンからの配線がグランドパターンと並列に走っている。

                  4) ボタンからの配線とグランドの間に抵抗性のショートが発生している。

                  5) ボタン周囲のごく近くにグランドパターンが存在する。

                   

                  センサのパターンの見直しをお勧めします。

                  • 6. Re: Self方式ボタンのSensorData飽和状態を調整出来ない
                    TaDa_1980266

                    確認及び見解ありがとうございます。

                     

                    本件、ボタンセンサー設計に疑いありでクローズ致します。