學習目標 : 認識faya 觸碰滑鍵模組的功能及使用方式
學習時間 : 40mins
示範模組 : (1) faya brickNano
(2) faya 蜂鳴器模組
(2) faya 觸碰滑鍵模組
工具 : 樂高積木底板 (相容)
====================功能介紹====================
faya觸碰滑鍵模組透過電路板上兩兩一組的角形波浪銅箔,利用人體手指的阻抗,透過分壓產生HIGH(開) / LOW(關) 的功能,因此可將每對銅箔當成一個開關,模組上設計了八組的開關供使用。
- 當手指接觸兩片銅箔時,輸出埠Px產生HIGH
- 當手指離開兩片銅箔時,輸出埠Px產生LOW
8組開關由左至右分別命名為P7~P0,訊號的輸出位於右方標示P0~P7的排母,當模組通電,並按P0~P7壓銅箔時,上方的LED燈會亮起,用以提醒手指確實按壓了開關,開關與LED的關係如下:
P7 = 綠 ; P6 = 橘 ; P5 = 藍 ; P4 = 紅 ; P3 = 綠 ; P2 = 橘 ; P1 = 藍 ; P0 = 紅 ;
====================原理知識====================
以下解釋提供給有需要知道背後原理的人,首先看一下電路圖:
圖中擁有八組相同的電路,這邊僅針對第8組(P7)介紹,R15/R16兩電阻位於該組銅箔的正上方,代號U8的pad代表模組上的兩片銅箔,由於銅箔是分開的,電路平時呈開路狀態,沒有電流流到輸出點,此時輸出為LOW。
接下來做個小實驗,將三用電錶的檔位調到20M歐姆檔,把+/-探針輕輕碰觸食指表面,量測手指的阻抗,如下圖所示:
筆者的量測值約2.5M Ohm,人的身體阻抗會根據體內含水量/流汗/體脂肪/血流狀態/量測面積/距離等等因素影響,有的人皮膚比較乾燥,量到的阻值就會比較高,有的人皮膚容易冒汗,量到的阻值就比較低,一般範圍大約在1M Ohm 到5M Ohm之間,我們先假設手指的阻值是2.5M Ohm,當手指碰觸模組上的銅箔時,根據分壓定理:
輸出電壓 V_OUT = 5V x (100K+10M) / (100K+2.5M+10M) = 4V
Arduino 的數位腳位只要偵測到3V以上就判定是LOGIC HIGH,因此當手指頭碰觸銅箔時,輸出OUT為HIGH。
最後我們利用反向器,將輸出轉為LOW電位,讓該組LED導通發光。
綜合以上,當手指碰觸銅箔時,輸出會呈現HIGH電位,且該銅箔上方的LED會點亮。
====================範例實作====================
了解模組功能(原理)後,我們用以下範例來展示模組的功能:
目標:
(1) 當手指壓著觸碰滑鍵模組上的任一組銅箔時,蜂鳴器發出相對音頻,由右至左分別為DO-RE-MI-FA-SO-LA-SI-DO。
接線:
(1) 電源線連接
如下圖所示,連接的說明請看這篇文章 或簡易版
(2) 訊號線連接
Arduino_5 ===> 觸碰滑鍵_P0
Arduino_6 ===> 觸碰滑鍵_P1
Arduino_7 ===> 觸碰滑鍵_P2
Arduino_8 ===> 觸碰滑鍵_P3
Arduino_9 ===> 觸碰滑鍵_P4
Arduino_10 ===> 觸碰滑鍵_P5
Arduino_11 ===> 觸碰滑鍵_P6
Arduino_12 ===> 觸碰滑鍵_P7
Arduino_13 ===> 蜂鳴器_BZ
範例程式:
備注:
- L35~36 : 利用迴圈依序讀取並判斷Arduino D5~D12的腳位狀態
- L38 : 利用tone函式撥放相對的音頻,此音頻存放在notes[]陣列中,其數值定義在includes.h中
範例結果:
討論:
(1) 影片中可發現我們利用觸碰滑鍵模組配合蜂鳴器模組,組出一台迷你的電子琴了,注意到 有些人的皮膚比較乾燥,使用這個模組時,因為指頭阻抗很高,造成碰觸開關無法正常運作,此時只要將手指頭呵呵氣,用水氣讓手指的阻抗下降,就能達到觸控的效果了!
(2) 觸碰滑鍵的特色功能在利用手滑的動作,透過程式適當的判斷,無論向左滑或向右滑時,都可以有相對應的控制功能,日常生活中也常用到此控制功能,例如音量的調整、燈光的明暗,大家可以自行試試看。
====================================
fayalab 粉絲團
FB本篇留言版
沒有留言:
張貼留言