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

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

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


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

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