關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 觸控設備手勢喚醒的設計思路及其實現

        觸控設備手勢喚醒的設計思路及其實現

        作者: 時間:2012-07-14 來源:網絡 收藏
        噪聲和低通濾波

        本文引用地址:http://www.104case.com/article/160306.htm

          需要考慮噪聲問題時,可利用低通濾波器處理信號;另外,MAX44000還有幾個控制位可以用作觸發中斷標識之前的屏蔽,采用這種設置時,需要檢測到一定數量超出門限的采樣值時才會觸發中斷標示,能夠在一定程度上降低噪聲的影響。

          一種稍微復雜的方法是將傳感器的讀數儲存在數據隊列中,然后利用定制的FIR軟件對其進行濾波處理。但這種方法需要提高接近檢測傳感器的采樣速率,否則則會降低能夠捕捉到的傳感器可視范圍內的動作速率,特別是把采樣速率設置在100ms時。利用器件的控制位屏蔽檢測時,速率可最多降低16倍(通常選擇4x屏蔽即可)。

          速度

          動作的快慢是我們需要考慮的另一因素。最大速度取決于:1. 傳感器的可視范圍;2. 手與傳感器之間的距離;3. 采樣率;4. 檢測門限。前兩項很容易確定:傳感器的檢測角度,結合傳感器與目標之間的距離,利用基本的三角形即可計算出傳感器可視范圍內目標的移動距離。例如,如果傳感器的視角為30度,最大有效檢測距離10cm,那么,傳感器可視范圍內允許的目標移動距離為5.35cm,覆蓋面積大約為78cm2。直線距離結合采樣率,即可決定速度限值。 具體地說,如果采樣率為T,那么目標跨越可視區域的時間不得小于T。例如,如果T為100ms (MAX44000的最低采樣速率),那么按照上例,理論上最大允許的速率為1mps (這實際上已經相當快了)。您可能希望捕獲到多個采樣值來確認觸發,這樣的話,會降低允許的速率下限。

          檢測門限也影響最大允許速率。一般來說,門限越低,能夠捕捉到的手勢動作就越快。如上所述,應謹慎選擇門限,以免產生誤報。

        人為因素

          這種應用還會受到人手以及揮手動作等人為因素的影響。應通過一些案例確定一般大多數人的習慣,包括他們在屏幕前揮動手掌的速度以及與屏幕之間的距離,另外,是否戴手套也會產生一定的影響。不同的應用場合(不同裝置)也會影響到需求,例如智能手機、平板電腦或汽車儀表盤,對存在具體的考慮。當然,過程中還應考慮用戶界面和經驗參數。

          最后,還要對真假手勢做出判斷,即裝置需要判斷接收到的信號是來自于一個手勢動作,還是簡單的裝置移動(例如:放置在外套、口袋或背包中,或者是屏幕朝下放置)。單純依靠上述檢測原理,很難做出正確的“真偽”鑒別,除非在裝置內提供更多的背景信息。關于這一問題的討論超出了本文范圍。

          設計中可以選擇只有裝置進入特定的應用程序時啟動方案,也可以由用戶手動操作使能。此外,許多此類裝置都有一個加速度傳感器,能夠檢測到屏幕是否背面朝下放置。如果用戶手動將裝置置于休眠模式,則可禁用該功能(例如關機狀態)。

          設計實例

          為方便起見,本文附帶了三段演示程序代碼。第一段代碼用于手動操作MAX44000的接近檢測數據讀取,概念上簡單功能;第二段代碼在第一段的基礎上進行了擴展,增加了之前討論的濾波功能;最后一段代碼演示利用MAX44000中斷喚醒觸控裝置。 示例代碼1

          __interrupt void TimedInterrupt( void )

          {

          uint8 proximity_counts;

          ....

          ....

          if ( device_status == SLEEP_MODE )

          {

          // read one byte from register 0x16

          proximity_counts = read_i2c_register(MAX44000_ADDR,0x16,1);

          if (proximity_counts 》 WAKEUP_THRESHOLD)

          {

          device_status = WAKE_MODE;

          ...

          }

          else

          {

          // do whatever it is you need to in sleep mode

          ...

          ...

          }

          }

          ...

          ...

          }



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 武隆县| 竹溪县| 泊头市| 西贡区| 和静县| 平阳县| 翁源县| 东丰县| 凌云县| 普洱| 读书| 嘉峪关市| 介休市| 秀山| 阿克苏市| 利津县| 阜南县| 游戏| 屏山县| 林州市| 台东市| 东乌| 辽中县| 石棉县| 于田县| 建昌县| 上饶县| 隆德县| 阿合奇县| 溧水县| 鄄城县| 周至县| 景谷| 繁峙县| 康保县| 康乐县| 拉萨市| 谷城县| 抚远县| 大兴区| 全州县|