使用樹莓派紅外控制空調和風扇
一. 硬體連線:
紅外接收器
vcc 連 pin1 (3.3v)
gnd 連 pin6(ground)
data連 pin12(gpio18)
紅外發射器
vcc 連pin2(5v)
gnd連pin25(ground)
data連pin11(gpio17)
如果是2pin的紅外發射器,就不用接vcc,為了提高穩定性,需要新增新增三極體和電阻,我們這裡就偷懶了,只連線了2pin。
二.軟體部分
1. 安裝lirc軟體元件,
sudo apt-get install lirc
2. 載入驅動
sudo modprobe lirc_rpi
3. 測試lirc是否正常
sudo mode2 -d /dev/lirc0 # 按遙控上的任何鍵,檢視是否有輸出類似 space 4960669 pulse 2697 …… pulse 2697
4. 修改/etc/lirc/hardware.conf
pi@raspberrypi ~ $ cat /etc/lirc/hardware.conf # /etc/lirc/hardware.conf # # Arguments which will be used when launching lircd LIRCD_ARGS="" #Don't start lircmd even if there seems to be a good config file #START_LIRCMD=false #Don't start irexec, even if a good config file seems to exist. #START_IREXEC=false #Try to load appropriate kernel modules LOAD_MODULES=true # Run "lircd --driver=help" for a list of supported drivers. DRIVER="default" # usually /dev/lirc0 is the correct setting for systems using udev DEVICE="/dev/lirc0" MODULES="" # Default configuration files for your hardware if any LIRCD_CONF="" LIRCMD_CONF=""
5. 我們發射的紅外指令,都是透過先錄製,然後傳送的方法,錄製的情況分2種,
一種是風扇這種簡單的指令,我們使用的辦法,可以直接解析出命令,使用lirc的錄製功能就可以完成
6.
7.先講講一般的錄製,風扇這種比較簡單的裝置遙控
sudo irrecord -d /dev/lirc0
有興趣的同學,可以看看檔案的具體內容,再結合紅外的協議標準研究一下,這裡就不細說了,有興趣可以私下給我留言
8.新建一個目錄/etc/lirc/remotes,用來存放我們錄製的檔案,並將檔案放入其中
sudo cp ~/fan.conf /etc/lirc/remotes/
並修改檔案中name 為好記的欄位,這個後面要用的
begin remote name fan bits 16 flags SPACE_ENC|CONST_LENGTH
9.修改/etc/lirc/lircd.conf,新增如下:
include "/etc/lirc/remotes/fan.conf"
10.重啟
11.測試你的風扇吧:
sudo irsend SEND_ONCE fan KEY_NEXT
fan:為第8步驟中提到的名字
12.下面講講空調這種複雜的玩意,這種是無法直接錄製的(希望大家在學習下面的內容前先,學習一下紅外的協議標準,不然後面的東西,可能不知所以然)
13. 學習了標準後,就明白了載波,以及頻率的概念了,
14. 首先在開始錄製空調的檔案之前,我們需要有一個樣板的conf檔案,這個檔案不能使用前面的檔案,我們需要重新錄製。
irrecord -f -d /dev/lirc0 ~/fanraw.conf
-f
完成後,大家看看檔案內容與前面的有什麼不同,並看看與mode2 打出來的資訊的關聯,估計聰明的孩子已經知道怎麼回事了吧
15. raw模式錄製的檔案其實就是pulse和space的延續時間,然後lirc在按照這個時間進行傳送
16.開工:
17.在檔案中重複新增其他鍵的那些數值,還有鍵名,最後把name也修改了,include到lircd.conf中,重啟程式
18.測試一把,打完收工啦。
19.有問題的同學,可以給我留言進行詢問
其中用到的參考資料,提供給大家:
- http://www.shumeipai.net/forum.php?mod=viewthread&tid=12646
- http://www.eeboard.com/bbs/thread-6940-1-1.html
- http://www.chengchao.name/wordpress/?p=284
- http://www.cnblogs.com/yulongchen/archive/2013/04/12/3017409.html
- http://blog.sina.com.cn/s/blog_9f14969901012jlf.html
相關文章
- 【.NET 與樹莓派】小風扇模組樹莓派
- 樹莓派使用樹莓派
- 樹莓派使用入門:如何更新樹莓派樹莓派
- 樹莓派控制調速以及關於PWM的思考樹莓派
- 樹莓派使用入門:用樹莓派學 Linux樹莓派Linux
- 5、樹莓派3 Model B ——— 樹莓派PWM控制直流電機速度樹莓派
- 樹莓派使用入門:如何用樹莓派來娛樂樹莓派
- 樹莓派使用入門:如何購買一個樹莓派樹莓派
- 樹莓派使用入門:慶祝樹莓派的 14 天樹莓派
- 使用holer從外網ssh訪問樹莓派樹莓派
- 樹莓派外網ssh訪問樹莓派
- 【.NET 與樹莓派】控制舵機樹莓派
- C#控制樹莓派入門C#樹莓派
- 樹莓派:開機使用樹莓派
- 樹莓派使用入門:如何為樹莓派社群做出貢獻樹莓派
- 樹莓派是什麼 樹莓派能做什麼 樹莓派的功能用途樹莓派
- 樹莓派使用入門:透過樹莓派和 kali Linux 學習電腦保安樹莓派Linux
- 樹莓派 | 修改樹莓派3熱點的名稱和密碼樹莓派密碼
- 樹莓派使用入門:如何啟動一個新的樹莓派樹莓派
- 基於紅外和超聲波的手動/自動調速風扇系統
- 樹莓派使用入門:進入物理世界 —— 如何使用樹莓派的 GPIO 針腳樹莓派
- 樹莓派 - 實戰篇 [基於 websocket 實現手機遠端控制樹莓派小車]樹莓派Web
- Ubuntu和樹莓派遠端操作Ubuntu樹莓派
- 【.NET 與樹莓派】使用 GPIO 庫樹莓派
- 樹莓派CM4(四):樹莓派映象替換核心樹莓派
- 樹莓派筆記樹莓派筆記
- 樹莓派與FileZilla樹莓派
- 折騰樹莓派樹莓派
- 樹莓派裝opencv樹莓派OpenCV
- 新樹莓派入手樹莓派
- 樹莓派電臺樹莓派
- 「玩轉樹莓派」樹莓派 3B+ 配置無線WiFi樹莓派WiFi
- 樹莓派搭建git伺服器 | 樹莓派小無相系列樹莓派Git伺服器
- 配置樹莓派linux的核心和編譯並將映象拷貝至樹莓派樹莓派Linux編譯
- 樹莓派和 ArchlinuxARM(aarch64)樹莓派Linux
- 使用樹莓派搭建Ubuntu伺服器樹莓派Ubuntu伺服器
- 使用樹莓派製作智慧小車樹莓派
- 樹莓派使用buildroot生成系統映象樹莓派UI