美女网站一区二区_在线观看日韩毛片_成人在线视频首页_欧美精品一区二区三区久久久_国产精品亚洲一区二区三区在线_日本免费新一区视频_日本美女一区二区三区_精品亚洲成a人_久久不见久久见免费视频1_91首页免费视频_欧美一区二区在线看_91精品91久久久中77777_天堂蜜桃一区二区三区_av在线一区二区_欧美不卡一区二区_欧美影视一区二区三区

產品分類

當前位置: 首頁 > 工業電子產品 > 半導體產品 > 微控制器MCU

類型分類:
科普知識
數據分類:
微控制器MCU

快速設計您自己的低成本 3D 手勢控制器

發布日期:2022-04-22 點擊率:58

旋鈕、按鈕、手柄和觸摸屏是人類與機器和嵌入式設備的常用交互方式。不過,傳感器技術的最新進展開辟了一條全新的道路,使開發人員可為產品添加三維 (3D) 手勢控制。

由于所采用的技術各不相同,購買和集成手勢控制器可能成本高昂。然而,市面上手勢傳感器技術種類繁多,從使用紅外 LED 和光電二極管來檢測動作的經濟型傳感器,到昂貴的手勢識別相機。紅外手勢傳感器經濟實惠,可以通過數字接口與低成本微控制器連接,只需輔以簡單的軟件,精度足以應對許多應用。

本文探討了使用 Broadcom 的 APDS-9960 進行手勢控制的方法。幾乎所有嵌入式系統都可輕松集成這款紅外 (IR) 手勢控制傳感器。

基于 IR 的手勢傳感器

基于 IR 的手勢傳感器原理十分簡單。用于檢測手勢時,開發人員可能需要檢測以下幾種不同手勢:

  • 向上/向下

  • 向左/向右

  • 向前/向后

在上述每種情況下,傳感器都需要檢測運動方向,而這主要通過傳感器的兩大組件來實現:一個發光二極管 (LED) 和多個定向光電二極管。定向光電二極管由至少四個光電二極管組成,分別置于距 IR LED 預定義距離處。例如,Broadcom 的 APDS-9960 環境光、接近度和手勢傳感器將四個光電二極管布置為菱形,每個二極管用于指示一個方向,分別為上、下、左和右(圖 1)。

Broadcom 的 APDS-9960 示意圖圖 1:Broadcom 的 APDS-9960 具有一個集成 IR LED 和四個定向光電二極管,可檢測反射的 IR 能量以分析手勢。(圖片來源:Broadcom)

當 LED 發射紅外能量時,除非遇到手等物體發生反射,否則能量就會發射至空氣中。光電二極管將檢測到不同強度的反射能量,具體取決于物體的位置。例如,相比位于手勢后邊緣的光電二極管,前邊緣光電二極管最初接收的反射能量較少,從而導致一個光電二極管的計數值比另一個高。在手勢動作過程中,連續測量將導致不同位置的光電二極管檢測的反射能量強度不同,而分析該方向信息流即可確定手勢。

例如,若用戶用手從傳感器的頂部輕掃至底部,則在手勢動作之初,下方光電二極管檢測的入射光比上方光電二極管更強;在手勢動作期間,手逐漸移動到兩個二極管接收能量相等的點;而在手勢動作完成時,下方光電二極管接收的反射光較弱,而上方光電二極管接收的更強,此時兩光電二極管的曲線和相位完全反轉(圖 2)。

Broadcom 的 APDS-9960 光電二極管曲線圖圖 2:Broadcom 的 APDS-9960 檢測到向下手勢將生成以上光電二極管曲線,其中主導曲線指示手勢方向。(圖片來源:Broadcom)

了解手勢數據的生成原理后,下一步就來看看如何連接到 APDS-9960。

連接 Broadcom 的 APDS-9960 手勢控制器

APDS-9960 采用 8 引腳表面貼裝 (SMD-8) 封裝,占用印刷電路板空間極?。▓D 3)。傳感器尺寸僅為 3.94 × 2.36 × 1.35 mm。該封裝包含正常電源和接地引腳、用于連接微控制器的 I2C 數字接口,以及用于定制 LED 驅動電路的引腳。此外,該封裝還包含中斷引腳,可用于通知微控制器處理可用的手勢數據。

Broadcom 的 APDS-9960 采用緊湊型表面貼裝 SMD-8 封裝圖片圖 3:APDS-9960 采用緊湊型表面貼裝 SMD-8 封裝,可最大限度減少電路板空間。 (圖片來源:Broadcom)

構建原型并連接 APDS-9960 有幾種不同選項可供選擇。例如,SparkFun 的 APDS-9960 評估板提供了包括 LED 驅動電路在內的小型分線板,以便實現開箱即用(圖 4)。開發人員只需焊接針座以通過旁路繞過電源和接地,并將 I2C 總線和可選的中斷引腳連接至微控制器,即可著手開發嵌入式軟件了。此外,SparkFun 評估板還包含安裝孔,若現有電路板有助于實現應用,則可直接運用到設計中。

SparkFun 的 APDS-9960 評估板圖片圖 4:SparkFun 的 APDS-9960 評估板包含著手開發手勢控制所需的所有板載電路。(圖片來源:Digi-Key Electronics)

或者,開發人員也可使用 Adafruit 的 APDS-9960 分線板,這也是一款一體化解決方案(圖 5)。Adafruit 分線板很有意思,盡管外形小巧,卻還包含 3 V 板載穩壓器,可用于為電源 LED 甚至低功耗微控制器等附加電路供電。最重要的是,Adafruit 為開發人員提供了完善的 Adafruit APDS9960 分線板用戶指南,以及若干軟件庫可用于連接 Arduino 板或運行 Python 的開發板。因此,使用 APDS-9960 可輕松實現開箱即用,從而大幅縮短開發人員著手使用手勢傳感器所花費的時間。

Adafruit 的 APDS-9960 分線板圖片圖 5:Adafruit 的 APDS-9960 分線板包括 APDS-9960、3 V 板載穩壓器和 I2C 電壓轉換電路以支持 3 V 或 5 V 總線。(圖片來源:Digi-Key Electronics)

連接上述分線板的最簡單方法是將 Molex 22-28-4255 分離式針座焊接至電路板上。最好將針座朝下焊接,可實現多種優勢:首先,可將電路板直接插入某個試驗板,如 Digilent 的 340-002-1 無焊試驗板套件(圖 6)。其次,不要在該電路板上表面接線,以免手勢動作時意外觸及掛在針座上的電線。

Adafruit 的 APDS-9960 分線板圖片圖 6:Digilent 無焊試驗板上焊接好的 Adafruit APDS-9960 分線板。(圖片來源:Adafruit)

此時,需要連接電源和接地,并將 I2C 總線連接至所需的微控制器開發板。任何帶微控制器的開發板都可使用。但最好選擇 STMicroelectronics 用于物聯網節點的 B-L475E-IOT01A2 STM32L475 開發套件(圖 7)。該開發板具有 Arduino 針座,并且由 MicroPython 提供支持,可在該開發板上輕松編程。完成此操作后,即可使用 Python 腳本連接手勢傳感器,從而使手勢控制不僅可行,而且輕而易舉。

STMicroelectro<em></em>nics 的 STM32L475 物聯網節點開發套件圖片圖 7:STM32L475 物聯網節點開發套件包含 Arduino 針座,可輕松連接到 APDS-9960 分線板。(圖片來源:STMicroelectronics)

使用 Python 檢測手勢

從 APDS-9960 獲取手勢數據雖不復雜,卻要求開發人員仔細閱讀規格書。APDS-9960 具有多種不同功能,其中包括:

  • 手勢感應

  • 環境光感應

  • RGB 顏色感應

  • 接近感應

上述功能均由狀態機控制,而狀態機的執行則基于應用的寄存器設置。例如,防止手勢引擎一直執行的妙招是使用接近感應引擎來檢測手的存在。一旦 IR 反射能量達到預設計數,則由接近引擎轉換為手勢引擎,手勢引擎測量定向光電二極管并將測量值放入先進先出 (FIFO) 緩沖器。為了啟用該功能,需要設置控制寄存器啟用接近感應,并設置計數閾值。

開發人員可能需要編寫算法以檢測特定的手勢,具體取決于應用所需的手勢。然而,對于向上/向下和向左/向右等常見手勢,開發人員可以使用 Adafruit 的 APDS-9960 CircuitPython 庫。將該庫復制到 Python 設備后,即可使用清單 1 所示代碼導入。該代碼可導入 APDS-9960 庫以及支持 I2C 總線的多個庫。

副本 import board import busio import adafruit_apds9960.apds9960   i2c = busio.I2C(board.SCL, board.SDA) sensor = adafruit_apds9960.apds9960.APDS9960(i2c)

清單 1:用于連接 APDS-9960 手勢控制器的 CircuitPython 導入和庫初始化代碼。(圖片來源:Adafruit)

傳感器對象是 APDS-9960 庫中一個實例。稍后,我們將看到其易用性。為了啟用手勢,開發人員只需使用以下代碼啟用手勢功能:

副本 sensor.enable_gesture = True The main program loop setup to read the gesture is itself just a few lines of code (Listing 2).gesture = sensor.gesture() while gesture == 0: gesture = sensor.gesture() print('Saw gesture: {0}'.format(gesture))

清單 2:只需簡單重復調用單個庫即可檢測手勢。(圖片來源:Adafruit)

閱讀該代碼后,您定會發現若感測到手勢,則將在屏幕上打印檢測的手勢(圖 8)。

Adafruit 的 APDS-9960 CircuitPython 庫手勢輸出結果示例圖圖 8:Adafruit 的 APDS-9960 CircuitPython 庫手勢輸出結果示例。(圖片來源:Adafruit)

手勢可以數字形式輸出,使用以下鍵值即可輕松轉換:

0 = 未檢測到手勢

1 = 檢測到向上手勢

2 = 檢測到向下手勢

3 = 檢測到向左手勢

4 = 檢測到向右手勢

如圖所示,借助預先導入的庫,只需幾行代碼即可輕松實現基本手勢識別。識別更為復雜的手勢則需要修改庫以分析原始手勢數據。

構建手勢控制器的技巧與訣竅

構建手勢控制傳感器并將其集成于產品著實具有一定挑戰性。使用基于紅外線的手勢控制器時,開發人員需要考慮使用以下幾個“技巧與訣竅”:

  • 使用手勢傳感器的內部接近檢測器來觸發手勢控制引擎,從而最大限度地減少無效手勢啟動。

  • 從現有手勢庫開始,在現有功能的基礎上構建其他手勢。

  • 光電二極管增益調整為適合最終手勢應用的最佳值。

  • 將 LED 輸出驅動強度調整為適合應用的最佳值,或許需要稍作調整才能獲得可重復使用的數值。

  • 無論開發何種手勢應用,開發人員都應從高級軟件開發入手,待充分熟悉該傳感器后再轉而使用較低級別的代碼。

遵循上述技巧有助于確保開發人員花費最短的時間來啟動和運行 IR 手勢控制器。

總結

人們不斷追求以更自然、更直觀的方式進行人機交互,而其中一種重要方式就是使用手勢控制技術。盡管市面上手勢控制技術種類繁多,但論及成本最低、使用最便捷的技術還屬基于紅外線的手勢傳感器。如上所述,如果開發人員利用現有的硬件和軟件技術,則將手勢傳感器與微控制器集成在一起,亦可省時省力,簡單易用。

下一篇: PLC、DCS、FCS三大控

上一篇: 使用藍牙5.1的室內定

推薦產品

更多
美女网站一区二区_在线观看日韩毛片_成人在线视频首页_欧美精品一区二区三区久久久_国产精品亚洲一区二区三区在线_日本免费新一区视频_日本美女一区二区三区_精品亚洲成a人_久久不见久久见免费视频1_91首页免费视频_欧美一区二区在线看_91精品91久久久中77777_天堂蜜桃一区二区三区_av在线一区二区_欧美不卡一区二区_欧美影视一区二区三区


        亚洲资源在线观看| 制服.丝袜.亚洲.另类.中文| 成人动漫在线一区| 国产成人精品亚洲777人妖| 激情图区综合网| 国产河南妇女毛片精品久久久| 国产精品影视在线| 成人性生交大片免费看中文 | 麻豆成人在线观看| 国内精品国产成人| 国产成人av一区二区三区在线观看| 成人精品一区二区三区中文字幕| 91一区二区在线| 国产高清自拍一区| 秋霞久久久久久一区二区| 一本色道亚洲精品aⅴ| 777xxx欧美| 亚洲国产高清在线观看视频| 亚洲精品午夜久久久| 日本系列欧美系列| 成人免费视频播放| 欧美黄色直播| 91麻豆精品国产91久久久久| www日韩大片| 国产精品乱人伦| 日韩国产精品久久| 成人高清视频免费观看| 精品乱码一区二区三区| 在线精品视频一区二区三四| 精品国产成人在线影院| 亚洲精品乱码久久久久| 国产综合久久久久影院| 国产日韩一区二区| 欧美视频在线一区| 国产精品国产三级国产| 久久精品国产99国产精品| 91视视频在线观看入口直接观看www | 国产精品免费一区二区三区在线观看 | 天天av天天翘天天综合网色鬼国产| 伦理电影国产精品| 成人看片视频| 日本韩国精品在线| 中国色在线观看另类| 青草国产精品久久久久久| 99久久99久久精品国产片果冻| 日本一区免费观看| 欧美电影免费提供在线观看| 夜夜精品视频一区二区| 成人黄色网址在线观看| 亚洲午夜精品国产| 久久久久国产精品麻豆ai换脸 | 日韩午夜在线影院| 亚洲综合无码一区二区| 国产 欧美在线| 一区二区不卡视频| 国产女主播在线一区二区| 精品一区二区在线免费观看| 欧美一级二级三级| 久久综合久久综合九色| 裸体一区二区三区| 欧美一区二区综合| 国产精品区一区二区三区| 国产精品一区专区| 一本一道久久a久久精品综合 | 韩国av一区二区三区四区| 欧美日韩三区四区| 中文字幕av一区二区三区高| 国产精品1区2区| 色婷婷亚洲精品| 一区二区三区在线观看欧美| 99热国产精品| 欧美一区午夜精品| 老色鬼精品视频在线观看播放| 老司机精品福利在线观看| 久久久蜜臀国产一区二区| 国产凹凸在线观看一区二区| 在线日韩国产精品| 亚洲电影中文字幕在线观看| 农村寡妇一区二区三区| 国产精品无人区| 99久久精品久久久久久ai换脸| 欧美一区二区免费| 韩国av一区二区三区| 在线欧美日韩国产| 秋霞影院一区二区| 色老汉一区二区三区| 日韩精品欧美精品| 亚洲一区在线直播| 天天影视涩香欲综合网| 日韩欧美精品一区二区三区经典| 最新欧美精品一区二区三区| 成人免费视频视频在| 欧美激情一区二区三区四区| 91久久精品国产91久久性色tv| 日韩免费看网站| 岛国精品一区二区| 欧美大片在线观看一区| 国产91精品在线观看| 日韩无一区二区| 成人av手机在线观看| 久久综合久久综合久久| www日韩av| 成人欧美一区二区三区白人 | 国产精品99久久久| 欧美日韩高清一区二区不卡| 国产最新精品精品你懂的| 3d动漫精品啪啪一区二区竹菊| 国产精品一二三| 精品国产免费久久| 99国产在线观看| 一区二区中文字幕在线| 久久99精品久久久久久青青日本 | 日韩美女啊v在线免费观看| 国产精品一区二区在线观看| 成人免费一区二区三区视频 | 国产女人aaa级久久久级| dy888夜精品国产专区| 国产精品国产三级国产普通话三级 | 久久国产麻豆精品| 欧美日韩一二三| 成人国产一区二区三区精品| 欧美国产国产综合| 日韩欧美亚洲日产国| 美女免费视频一区二区| 日韩一区二区视频在线观看| 91麻豆福利精品推荐| 亚洲丝袜精品丝袜在线| 中文字幕中文字幕99| 国产在线播放一区| 亚洲国产精品av| 色综合婷婷久久| 国产成人精品在线看| 久久精品亚洲乱码伦伦中文 | 性欧美.com| 精品无人码麻豆乱码1区2区 | 久久影院午夜片一区| 狠狠色狠狠色综合人人| 天天色图综合网| 欧美videos大乳护士334| 精品免费日产一区一区三区免费| 日日夜夜精品视频免费| 亚洲精品一线二线三线| 日韩欧美三级电影| 成人网在线播放| 亚洲日本一区二区| 欧美日韩高清影院| 久久亚洲高清| 国产一区二区看久久| 综合亚洲深深色噜噜狠狠网站| 在线一区二区三区做爰视频网站| 7777精品伊久久久大香线蕉语言 | 日韩国产成人精品| 欧美精品一区二区久久婷婷 | 日韩欧美成人激情| 欧美日韩综合精品| 丁香另类激情小说| 亚洲午夜精品17c| 精品国产乱码久久久久久1区2区| 亚洲人成77777| 成人黄动漫网站免费| 国模娜娜一区二区三区| 亚洲精品成人a在线观看| 日韩欧美在线123| 色综合久久久久综合99| 成人欧美一区二区三区视频| 美女mm1313爽爽久久久蜜臀| 国产精品乱码人人做人人爱| 91麻豆精品国产无毒不卡在线观看 | 精品伊人久久大线蕉色首页| 国产在线播放一区三区四| 亚洲免费观看在线视频| 精品久久久久一区二区国产| 亚洲v国产v在线观看| 成人av资源网| 国产高清亚洲一区| 日本亚洲三级在线| 一区二区三区在线观看视频| 久久久另类综合| 3751色影院一区二区三区| 一本久道久久综合狠狠爱亚洲精品| 成人欧美一区二区三区视频| 国产成人精品免费网站| 日本va欧美va瓶| 亚洲国产综合色| 中文字幕欧美激情一区| 日韩一区二区电影在线| 在线观看欧美日本| 日韩妆和欧美的一区二区| 国产一区二区三区四区五区加勒比 | 国产在线观看免费一区| 午夜精品久久久久久久久久久| 成人免费小视频| 欧美激情自拍偷拍| 精品黑人一区二区三区久久| 欧美三日本三级三级在线播放| 一区二区不卡视频| 日本在线观看一区二区三区| 久久超碰亚洲| 国产欧美一区二区三区不卡高清| 99re亚洲国产精品|