2018年11月25日 星期日

2018/11/26(一)Arduino萬能遙控器1

今天我們來製作Arduino萬能遙控器,在開始製作之前,我們必須先了解到什麼是紅外線?光的原理。





在我們日常生活當中,有許許多多的光線,這些光線當中,有很多事看的見的當然也有很多7是看不見的光,我們可以看一下上圖光的頻譜,以波長來看,人類可以看見的波長大約400至700,超過這個範圍都看不見。

今天要講的紅外線,就是比可見光波長大一點的紅外線。

https://zh.wikipedia.org/wiki/%E7%BA%A2%E5%A4%96%E7%BA%BF

來看看維基百科怎麼說


今天我們就來嘗試錄製紅外線的訊號。


首先先來接線
KEYES的紅外線接收器有三根針腳,分別是GND VCC和數位訊號D,我們把GND和VCC 5V分別用杜邦線接上,然後,數位訊號給他接D2

再來拿出 百變積木的遙控器,我們今天就是要來錄製他的訊號。




點選綠旗,將紅外線資料錄製到D:\temp.txt裡面
按a打開檔案之後,便可以看到錄下來的訊號。

每一次錄下來的訊號可能都不一樣。
因為紅外線本來就不是很穩定的訊號,可能忽強忽弱之類的。
上面為當按下遙控器[上]這個功能的訊號。

將上下左右依次錄製完成如下圖

1600,4321,550,2641,550,400,550
1600,4322,550,2641,550,400,550
1600,2648,550,2641,550,400,550
1600,100,550,400,550,100,550,100,550,400,550
1600,2641,900,2641,550,400,550,25664,1600,2641,900,100,550,2648,550
1600,2641,900,100,550,2648,550,14428,1600,2641,900,2641,550,400,550
1600,2641,900,2641,550,400,550,25656,1600,2641,900,2641,550,400,550
1600,2641,550,400,550,2648,550,3150,1600,2641,550,400,550,2648,550,57456,1600,2641,550,400,550,2648,550,3150,1600,2641,550,400,550,2648,550,14402,1600,2641,550,400,550,2648,550
1600,2641,550,400,550,2648,550
1600,2641,900,2641,550,400,550

錄完之後,我們便可以利用這個訊號來控制東西

為了簡化,我安裝一顆LED燈


給他接在D7的位址


程式部分略做修改,當收到紅外線資料的時候點亮D7這顆燈

不過我發現訊號很飄
以[上]這個按鍵來說
1600,4321,550,2641,550,400,550
1600,4322,550,2641,550,400,550
就是一直這2種訊號都會收到
所以再修改如下

當收到4321或4322這2種都點亮燈

沒有留言:

張貼留言

Related Posts Plugin for WordPress, Blogger...