你需要
2×433MHz收發(fā)器
2×迷你面包板
12×M / F跳線引線
RF電源插座套件
準(zhǔn)備Raspberry Pi板
為了演示使用433MHz發(fā)送消息,使用兩個(gè)Raspberry Pi板是有意義的,這樣我們就可以進(jìn)行對(duì)話。我們?cè)谶@里所做的一切都不需要太多的處理能力,因此任何Pi都可以,甚至是原型Model As或Bs。根據(jù)您的喜好,安裝完整的Raspbian Stretch,或者 - 正如我們?cè)谶@里做的那樣 - Raspbian Lite,因?yàn)樗袃?nèi)容都將從命令行運(yùn)行。如果您無法訪問多個(gè)顯示器和鍵盤,請(qǐng)考慮使用SSH訪問主計(jì)算機(jī)上有兩個(gè)窗口的每個(gè)Pi。這樣你就可以看到一切都在發(fā)生。

認(rèn)識(shí)收發(fā)器
每個(gè)套件都配有兩塊電路板。兩塊板的較長時(shí)間是接收器,四個(gè)引腳。在接線之前,請(qǐng)仔細(xì)檢查這些引腳的標(biāo)簽,因?yàn)樗鼈冇袝r(shí)會(huì)發(fā)生變化。無論位置如何,都會(huì)有5 V電源(標(biāo)記為VCC),接地(GND)和兩條“DATA”線傳輸接收信號(hào)。這些是相同的,所以你可以使用其中之一
較小的發(fā)射器有三條線,它們的位置也可以根據(jù)制造商而變化。就像接收器一樣,你有VCC用于電源,GND用于接地,這次是單條數(shù)據(jù)線。
連接面包板
我們正在使用一個(gè)小面包板,但任何尺寸都可以。實(shí)際上,帶有電源和接地導(dǎo)軌的更大的電路板可能會(huì)更整潔一些。小心地將每個(gè)面包板中的接收器和發(fā)射器彼此并排放置。我們想要兩個(gè)面包板對(duì)面,以便Pi#1的發(fā)射器(我們稱之為'Alice')直接指向Pi#2('Bob')的接收器,反之亦然。
將六個(gè)跳線連接到每個(gè)面包板,一個(gè)在導(dǎo)軌上,用于收發(fā)器對(duì)的每個(gè)引腳。您在接收器上使用哪條“DATA”行并不重要。
433Mhz無線電聊天設(shè)備:電路圖
電路圖:這對(duì)收發(fā)器不需要任何額外組件,可以直接連接到GPIO
連接到Raspberry Pi板
將每個(gè)Raspberry Pi連接到其六個(gè)跳線。幸運(yùn)的是,這個(gè)項(xiàng)目不需要任何額外的組件,因此您可以直接連接。接收器和發(fā)送器都工作在5 V,因此將每個(gè)VCC跳線連接到GPIO的物理引腳2和4(當(dāng)引腳1在左上方時(shí),頂部兩個(gè)右側(cè)引腳)。接下來,將GND引線連接到引腳6和9.盡管您的無線電現(xiàn)在已通電,但如果它無法發(fā)送和接收數(shù)據(jù)則沒有多大用處,因此將發(fā)送器的DATA連接到GPIO 17,將接收器的DATA連接到GPIO 27(引腳) 11和13)。

433MHz無線電聊天設(shè)備:GPIO連接
收發(fā)器從Pi獲取5 V電源,以及輸入和輸出信號(hào)
測(cè)試接收
在我們對(duì)新安裝的無線電做任何事情之前,我們需要一些軟件。打開終端并發(fā)出以下命令:
光盤
sudo apt安裝python3-pip git
pip3安裝rpi-rf
git clone https://github.com/mrpjevans/rfchat.git
您現(xiàn)在已經(jīng)安裝了所有內(nèi)容來測(cè)試硬件。選擇您最喜歡的兩個(gè)Raspberry Pi板并輸入以下內(nèi)容:
cd~ / rfchat
python3 receive.py
現(xiàn)在將RF套件中的遙控器靠近接收器并按下按鈕??吹綌?shù)字出現(xiàn)?大。如果沒有,請(qǐng)檢查您的接線。按CTRL + C退出并重復(fù)另一個(gè)Pi。
測(cè)試發(fā)送
定位Raspberry Pi板,使兩個(gè)面包板彼此相距厘米,Alice的發(fā)射器指向Bob的接收器,同樣反過來。在Alice上,就像我們?cè)谏弦徊街兴龅哪菢訂?dòng)接收腳本。在Bob上,在終端中輸入以下內(nèi)容:
cd~ / rfchat
python3 send.py 1234
一切順利,'1234'應(yīng)該在Alice的屏幕上重復(fù)顯示。沒有糾錯(cuò),所以看到丟失或損壞的字符是正常的。如果看起來不太正確,請(qǐng)?jiān)僭囈淮?。一旦你開心,逆轉(zhuǎn)測(cè)試以確認(rèn)Bob的接收器也在工作。
我們聊聊吧
我們的兩個(gè)Raspberry Pi板現(xiàn)在可以無線通信,無需WiFi。為了演示可能的內(nèi)容,請(qǐng)查看rfchat.py腳本。此代碼使用線程(代碼表示同時(shí)執(zhí)行多項(xiàng)操作)來監(jiān)視鍵盤和接收器的數(shù)據(jù)。我們將傳入和傳出的數(shù)據(jù)轉(zhuǎn)換為數(shù)字(ASCII)并返回。結(jié)果是實(shí)時(shí)聊天界面。您現(xiàn)在可以發(fā)送和接收消息。開始:
cd~ / rfchat
python3 rfchat.py
現(xiàn)在慢慢輸入任一Pi,消息將出現(xiàn)在另一個(gè)上。事實(shí)上,您的本地輸出是您的接收器拿起您自己的發(fā)射器!
通過科學(xué)擴(kuò)大范圍
無線電范圍較差的原因是微型天線,但這可以修復(fù)。天線的長度需要是波長的諧波,通過將光速除以頻率(299 792 458 m / s除以433 000 000)來計(jì)算。您可以將692.36 mm的結(jié)果除以2,直到得到合理的長度。 173毫米的天線足夠長,可以提供令人印象深刻的范圍,通常覆蓋整個(gè)房屋。將173毫米焊錫焊接到PCB上的所有四個(gè)“ANT”焊點(diǎn)。你的rfchat現(xiàn)在應(yīng)該長距離工作。
插座給我控制
有許多家用設(shè)備使用433MHz來發(fā)送控制代碼。其中最受歡迎的是遙控電源插座,通常用于切換燈。這些通常使用433MHz和rpi-rf可以理解的協(xié)議。
cd~ / rfchat
python3 receive.py
按遙控器上的按鈕。您可能會(huì)看到一個(gè)數(shù)字列表,重復(fù)進(jìn)行糾錯(cuò),每個(gè)按鈕都會(huì)發(fā)生變化。記下這些,然后按如下方式發(fā)送:
python3 send.py [編號(hào)]
您應(yīng)該從插座的繼電器聽到安慰的“咔噠”聲。嘗試打開或關(guān)閉它。
把它變成你自己的
這些433MHz的設(shè)備以極低的成本為您的Raspberry Pi項(xiàng)目增添了一系列可能性。不僅是具有可控插座的家庭自動(dòng)化項(xiàng)目,而且還提供WiFi不實(shí)用的無線電通信,例如高空氣球或洪水監(jiān)視器等異常定位的傳感器。
物聯(lián)網(wǎng)設(shè)備可以使用無線電來傳遞和接收任何信息。
現(xiàn)在您可以從Raspberry Pi控制套接字,您可以將它們鏈接到您可以想象的任何類型的事件。如何使用Pi相機(jī)模塊和車牌識(shí)別檢測(cè)您家中的汽車回家,然后打開房屋燈?


source:https://www./magpi/build-433mhz-radio-chat-device/

更多樹莓派相關(guān):
【火腿DIY】樹莓派2 | 搭建自己的FM發(fā)射系統(tǒng),如何使用樹莓派在其他裝置上發(fā)聲
【火腿DIY】教您3D打印一臺(tái)樹莓派收音機(jī)
【火腿課堂】樹莓派打造無線掃描儀,監(jiān)聽飛機(jī)信號(hào)!
【火腿課堂】用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送