你需要
2×433MHz收發(fā)器
2×迷你面包板
12×M / F跳線引線
RF電源插座套件
準備Raspberry Pi板
為了演示使用433MHz發(fā)送消息,使用兩個Raspberry Pi板是有意義的,,這樣我們就可以進行對話,。我們在這里所做的一切都不需要太多的處理能力,因此任何Pi都可以,,甚至是原型Model As或Bs,。根據您的喜好,安裝完整的Raspbian Stretch,,或者 - 正如我們在這里做的那樣 - Raspbian Lite,,因為所有內容都將從命令行運行。如果您無法訪問多個顯示器和鍵盤,,請考慮使用SSH訪問主計算機上有兩個窗口的每個Pi,。這樣你就可以看到一切都在發(fā)生。
認識收發(fā)器
每個套件都配有兩塊電路板,。兩塊板的較長時間是接收器,,四個引腳。在接線之前,,請仔細檢查這些引腳的標簽,,因為它們有時會發(fā)生變化。無論位置如何,,都會有5 V電源(標記為VCC),,接地(GND)和兩條“DATA”線傳輸接收信號。這些是相同的,,所以你可以使用其中之一
較小的發(fā)射器有三條線,,它們的位置也可以根據制造商而變化,。就像接收器一樣,,你有VCC用于電源,,GND用于接地,,這次是單條數(shù)據線,。
連接面包板
我們正在使用一個小面包板,但任何尺寸都可以,。實際上,帶有電源和接地導軌的更大的電路板可能會更整潔一些,。小心地將每個面包板中的接收器和發(fā)射器彼此并排放置,。我們想要兩個面包板對面,以便Pi#1的發(fā)射器(我們稱之為'Alice')直接指向Pi#2('Bob')的接收器,反之亦然,。
將六個跳線連接到每個面包板,,一個在導軌上,用于收發(fā)器對的每個引腳,。您在接收器上使用哪條“DATA”行并不重要,。
433Mhz無線電聊天設備:電路圖
電路圖:這對收發(fā)器不需要任何額外組件,可以直接連接到GPIO
連接到Raspberry Pi板
將每個Raspberry Pi連接到其六個跳線,。幸運的是,這個項目不需要任何額外的組件,,因此您可以直接連接,。接收器和發(fā)送器都工作在5 V,因此將每個VCC跳線連接到GPIO的物理引腳2和4(當引腳1在左上方時,,頂部兩個右側引腳),。接下來,將GND引線連接到引腳6和9.盡管您的無線電現(xiàn)在已通電,,但如果它無法發(fā)送和接收數(shù)據則沒有多大用處,,因此將發(fā)送器的DATA連接到GPIO 17,將接收器的DATA連接到GPIO 27(引腳) 11和13),。
433MHz無線電聊天設備:GPIO連接
收發(fā)器從Pi獲取5 V電源,,以及輸入和輸出信號
測試接收
在我們對新安裝的無線電做任何事情之前,我們需要一些軟件,。打開終端并發(fā)出以下命令:
光盤
sudo apt安裝python3-pip git
pip3安裝rpi-rf
git clone https://github.com/mrpjevans/rfchat.git
您現(xiàn)在已經安裝了所有內容來測試硬件。選擇您最喜歡的兩個Raspberry Pi板并輸入以下內容:
cd~ / rfchat
python3 receive.py
現(xiàn)在將RF套件中的遙控器靠近接收器并按下按鈕,??吹綌?shù)字出現(xiàn)?大,。如果沒有,,請檢查您的接線。按CTRL + C退出并重復另一個Pi。
測試發(fā)送
定位Raspberry Pi板,使兩個面包板彼此相距厘米,,Alice的發(fā)射器指向Bob的接收器,同樣反過來,。在Alice上,,就像我們在上一步中所做的那樣啟動接收腳本。在Bob上,,在終端中輸入以下內容:
cd~ / rfchat
python3 send.py 1234
一切順利,'1234'應該在Alice的屏幕上重復顯示,。沒有糾錯,所以看到丟失或損壞的字符是正常的,。如果看起來不太正確,,請再試一次,。一旦你開心,逆轉測試以確認Bob的接收器也在工作,。
我們聊聊吧
我們的兩個Raspberry Pi板現(xiàn)在可以無線通信,,無需WiFi,。為了演示可能的內容,,請查看rfchat.py腳本。此代碼使用線程(代碼表示同時執(zhí)行多項操作)來監(jiān)視鍵盤和接收器的數(shù)據,。我們將傳入和傳出的數(shù)據轉換為數(shù)字(ASCII)并返回。結果是實時聊天界面,。您現(xiàn)在可以發(fā)送和接收消息,。開始:
cd~ / rfchat
python3 rfchat.py
現(xiàn)在慢慢輸入任一Pi,,消息將出現(xiàn)在另一個上。事實上,,您的本地輸出是您的接收器拿起您自己的發(fā)射器,!
通過科學擴大范圍
無線電范圍較差的原因是微型天線,但這可以修復,。天線的長度需要是波長的諧波,,通過將光速除以頻率(299 792 458 m / s除以433 000 000)來計算。您可以將692.36 mm的結果除以2,,直到得到合理的長度,。 173毫米的天線足夠長,可以提供令人印象深刻的范圍,,通常覆蓋整個房屋,。將173毫米焊錫焊接到PCB上的所有四個“ANT”焊點。你的rfchat現(xiàn)在應該長距離工作,。
插座給我控制
有許多家用設備使用433MHz來發(fā)送控制代碼,。其中最受歡迎的是遙控電源插座,通常用于切換燈,。這些通常使用433MHz和rpi-rf可以理解的協(xié)議,。
cd~ / rfchat
python3 receive.py
按遙控器上的按鈕。您可能會看到一個數(shù)字列表,,重復進行糾錯,,每個按鈕都會發(fā)生變化。記下這些,,然后按如下方式發(fā)送:
python3 send.py [編號]
您應該從插座的繼電器聽到安慰的“咔噠”聲,。嘗試打開或關閉它。
把它變成你自己的
這些433MHz的設備以極低的成本為您的Raspberry Pi項目增添了一系列可能性,。不僅是具有可控插座的家庭自動化項目,,而且還提供WiFi不實用的無線電通信,例如高空氣球或洪水監(jiān)視器等異常定位的傳感器。
物聯(lián)網設備可以使用無線電來傳遞和接收任何信息,。
現(xiàn)在您可以從Raspberry Pi控制套接字,,您可以將它們鏈接到您可以想象的任何類型的事件。如何使用Pi相機模塊和車牌識別檢測您家中的汽車回家,,然后打開房屋燈,?
source:https://www./magpi/build-433mhz-radio-chat-device/
更多樹莓派相關:
【火腿DIY】樹莓派2 | 搭建自己的FM發(fā)射系統(tǒng),如何使用樹莓派在其他裝置上發(fā)聲
【火腿DIY】教您3D打印一臺樹莓派收音機
【火腿課堂】樹莓派打造無線掃描儀,,監(jiān)聽飛機信號,!
【火腿課堂】用樹莓派和業(yè)余無線電打造遠距離無線視頻傳送