由于摩爾定律,電子設備繼續提高他們的智商。隨著MIPS和兆字節軟件的不斷涌現,設計人員可以獲得前所未有的處理能力。但在添加引人注目的新產品功能時,這只是答案的一部分。處理數據的能力很好,但前提是我們可以捕獲有趣的數據以便首先處理。例如,現在觸摸感應風靡一時。那么設計師為再來一次做些什么呢?一個明顯的點綴是讓設備能夠感知接近度。進入Vishay VCNL4000紅外(紅外)接近傳感器(見圖1)。
圖1:VNL4000模塊。
使用紅外線感知接近度的想法不是新的,這個概念很容易理解。只需使用紅外LED照亮感興趣的區域,然后使用紅外光電二極管測量反射光量。反射越高,物體越接近(和/或越大,和/或反射越多)。
更進一步,VCNL4000還集成了可見波長光電二極管,用于環境光感測(見圖1)。紅外接近檢測和可見光感應的結合使該模塊成為手持設備的理想選擇。例如,在手機中,可見光檢測器可用于自動調節顯示器的背光水平。同時,紅外接近功能可用于檢測手機是否被保持在用戶的耳朵上,此時顯示器可以完全關閉以節省電量。
圖2:VCNL4000框圖。
滾動自己?
當然可以。所需要的只是一個MCU,一個紅外LED,一個紅外光電二極管,一個可見光光電二極管和一些軟件,對吧?這聽起來很容易,但像往常一樣,魔鬼在細節中。事實上,實現真正準確和強大的實現所需的修飾是非常重要的,并且可以很容易地看到簡單的死亡解決方案。
一個簡單的方法是看看VCNL4000的功能和考慮一下背面的衛生巾設計要匹配它們。例如,你需要幾個A/D通道來測量光電二極管輸出,對嗎?沒什么大不了的,因為即使是最藍的藍領MCU現在也配備了ADC。唯一的問題是典型MCU上的ADC與Vishay器件的16位分辨率不匹配。哦,我想你需要添加一個高分辨率的ADC芯片。不要忘記一些運算放大器,以充分利用光電二極管。當你在它的時候,投入一個晶體管來驅動IR LED達到200 mA,遠遠超出MCU GPIO引腳的驅動能力。
但這只是一個開始。 VCNL4000的一個關鍵特性是它可以高頻率調制IR LED,最高可達3.125 MHz,帶通濾波原始IR返回。專注于反射有助于消除環境和干擾紅外光源(如熒光燈鎮流器)的影響。現在你的自己設計需要一些真正的幫助,可能是PLD和濾波器芯片?或者踩到價格更高的MCU/DSP。
雖然紅外接近功能成為頭條新聞,但VCNL4000可見光傳感器并不懈怠。值得注意的是,它包括自動平均最多128個光讀數的能力。這有助于分別濾除外部和內部干擾 - 例如60/120 Hz干擾和轉換器噪聲基底干擾 - 從而在夜間和白天提供0.2至13,000 lux的更靈敏和準確的測量。
電源跳閘
在你自己的思考中,似乎迷你MCU不僅可以輕松處理這項工作,而且還有足夠的時間來回擊并在讀數之間小睡一下。到目前為止,你可以看到你需要更強大的硅片,并且它將會非常忙于所有高頻的事情,例如調制,濾波,平均和位沖擊。例如,匹配VCNL4000環境光平均功能需要多達128個A/D轉換,或者對于數字光傳感器,如I2C,需要數千個時鐘邊沿。更不用說所有相關的CPU周期。這意味著功耗正在上升,因此需要對更大的電池進行一些備用更換。
您可能會認為,當談到以高達200 mA的電流驅動LED時,任何解決方案都將成為一種耗電量。但事實上,由于LED照明的占空比稀疏和優化的信號處理,VCNL4000的功耗非常低。
假設您希望每秒使用100 mA LED驅動電流獲取10次接近讀數。如圖2所示,在每100 ms采樣時間內,LED僅亮起約70μs。因此,LED和VCNL4000的總平均功耗低于100μA。環境光傳感器同樣是綠色的。例如,每秒十個樣本,每個樣本包含平均八個讀數,平均功耗再次低于100μA。
圖3:接近度測量時序我是最新和最好的MCU的忠實粉絲,并且充分尊重聰明的設計師從中獲取最大能力的能力。如果沒有實際進行設計,我不能完全排除多部分綁定可能接近匹配VCNL4000功能的可能性。但不要忘記光學方面。采用自己動手設計,您需要采用光學隔離封裝方案,避免內部串擾,例如盒內反射。無論分立設計多么聰明,它都將比3.95 mm x 3.95 mm x 0.75 mm的超小而薄的Vishay模塊消耗更多的電路板空間。
Vishay可以輕松地將電池放在低位 - 成本評估套件(見圖2),包括VCNL4000載板,USB接口和基于Windows的儀表板軟件。載板有一個插入USB適配器的10針接頭,可插入PC。
儀表板軟件(見圖3)具有傳感器輸出的實時條形圖,能夠點擊即可配置各種選項,如LED電流,采樣頻率,偏移補償和濾波,以及直接讀取和寫入VCNL4000寄存器。
圖4:VCNL4000評估套件。
圖5:VCNL4000評估套件軟件屏幕截圖。
Light Show
分裂VCNL4000載板的Vishay方法USB接口非常方便,因為它允許您自己使用載板進行原型設計和實驗。
將您喜歡的MCU連接到VCNL4000只需要五個連接:雙線I2C接口(SCL,SDA),接地,邏輯電源(VDD)和LED(IR陽極)的單獨電源。雖然電源指定為2.5 V至3.6 V,但I2C總線可處理1.7 V至5.5 V,幾乎可與任何MCU連接。
請注意,評估套件可通過單個電源為邏輯和LED供電。在您自己的應用中,確保高LED電流脈沖(高達200 mA)不會為其余邏輯產生電源故障。如果這是一個問題,你可以,例如,直接從電池供電LED和你的數字邏輯從穩壓電源供電。
我急于連接小工具,但模塊的細間距,0.05英寸。連接器讓我撓頭。我不想直接將電線焊接到模塊上,所以我做了正確的事并訂購了匹配的插座。由于沒有腦外科醫生,當我能夠將電線固定到插座上時,我為自己感到非常自豪。但掌聲并沒有持續多久。當我試圖插入Vishay模塊時,插座上的引腳就會掉出來。最終,我幾乎無法獲得四個引腳 - SDA,SCL,GND以及LED和邏輯電源的組合 - 連接到VCNL4000模塊,造成一些麻煩的抨擊(見圖4)。 Vishay的人們可能會考慮在適配器或分線板上投擲更多的連接空間。
一旦我得到了剪輯導致留下來,很容易將連接帶到Parallax Inc. SBC(單個) - 基于該公司新穎的Propeller多核MCU的計算機)。這是一個對實驗和原型設計特別有用的設置,因為編輯 - 編譯 - 下載周期只需幾秒鐘,而且公司擁有一個龐大且不斷增長的用戶貢獻軟件對象庫。例如,我只是從Parallax網站下載了一個“Basic_I2C_Driver”,而不是必須編寫I2C驅動程序。
圖6:連接到Parallax SBC的VCNL4000。
由于模塊內置的平均和偏移補償,使環境光讀數非常簡單。首先,使用所選選項配置零件,包括要平均的樣品數量和時間以及是否執行自動偏移補償。之后,發出命令,然后在忙碌位上旋轉,或插入軟件延遲,直到操作在1到100毫秒后完成,這取決于平均樣本的數量和時間,這是一個簡單的問題。現在,您可以讀取結果,其中每個計數或LSB(最低有效字節)對應于0.2 lux(要獲得絕對lux讀數,將偏移補償的16位結果除以5)。請記住,根據光源的性質,例如白熾燈,熒光燈或陽光,人眼對給定勒克斯水平感知的照明水平會有所不同。
紅外接近功能需要更多工作,因為MCU軟件必須執行平均和偏移補償。讓我們來看看照片5中顯示的程序。
初始化模塊后,通過取16個接近讀數的平均值來建立基線偏移。顯然,這個校準階段取決于沒有任何接近以建立準確的基線。
圖7:紅外接近感應程序截圖。
隨后,程序通過取8個讀數的平均值,減去基線偏移量,并將結果與應用程序特定閾值進行比較來執行接近度檢查。通常,您可以通過增加平均采樣數以減少噪聲來降低接近檢測的閾值,即增加范圍。最后,在SBC的8個LED上顯示條形圖顯示的結果或距離。
在考慮應用的具體情況時,請記住靈敏度,閾值和校準策略是相互交織的。例如,在具有大擺動的最粗糙的“是/否”接近應用中,高閾值是可以的,工廠或手動校準可能就足夠了。但對于靈敏度最高的低閾值應用,可能需要更頻繁的校準,理想情況是在每次讀取之前。
例如,通過我的演示設置,我注意到看起來有點溫度漂移,偏移從上電緩慢增加。 VCNL4000數據表在這方面并不明確,但有一個圖表表明溫度漂移在整個-40到+ 85°C范圍內變化,具體取決于配置的LED電流。雖然只有大約百分之一的數量級,但在最高靈敏度的應用中需要定期重新校準就足夠了。
軟件裝飾可能包括通過根據歷史記錄調整基線偏移來動態校準基線偏移。所用算法的確切性質取決于應用程序的具體情況,例如采樣率與接近變化率之間的關系。請注意確認您的算法是健壯的,并避免諸如“基線蠕變”和“卡住鍵”之類的錯誤。由于單個IR接近讀取僅需要170微秒,比讀取忙位所需的I2C事務更快,我剛剛在軟件中包含了命令完成的延遲。唯一的“問題”是初始化后的第一次讀取需要額外的400微秒延遲。我沒有放慢每一次閱讀的速度,而是通過在程序開始時執行虛擬接近讀取來處理這種特殊情況。
底線是VCNL4000的工作方式與宣傳的一樣。例如,我的演示設置可以從近8英寸或200毫米的距離可靠地檢測到我的手的存在。在范圍內,設備的高分辨率,輔以軟件信號處理(如噪聲濾波,校準和線性化),可實現非常精確的距離測量。與此同時,16位動態范圍有足夠的空間來處理真實的變幻莫測,例如劃傷或骯臟的窗口。
-
傳感器
+關注
關注
2552文章
51294瀏覽量
755200 -
led
+關注
關注
242文章
23322瀏覽量
661911 -
二極管
+關注
關注
147文章
9675瀏覽量
167007
發布評論請先 登錄
相關推薦
評論