1. Összefoglaló:
- ez a blog végigvezeti Önt az Arduino és a Raspberry Pi kommunikációjának folyamatán az nRF24L01 modullal. Kezdeni fogunk tanulni néhány alapjait Raspberry Pi akkor lesz egy pillantást Fejetlen Raspberry Pi beállítás. A megvalósításhoz először meg fogjuk érteni az Arduino egyszerű kommunikációját az Arduino-val, majd megtanuljuk az Arduino-t a raspberry pi-hez.
- sok útmutatót találtam ennek megvalósításához az interneten, de egyikük sem volt teljes vagy teljes mértékben működött számomra. Itt meg fogjuk érteni lépésről lépésre útmutató ennek a folyamatnak. A végén pedig egy működő példát mutatunk be ugyanarra
2. Szükséges alkatrészek:
- ultrahangos érzékelő
- 2 Arduino Uno
- Raspberry Pi 3
- 2 NRF24L01 adó és vevő
- Ugrás vezetékek
- Arduino kábel
- MINI USB 2.0 A Pi
- Breadboard
3. Szükséges Szoftver:
- Raspbian pi-hez
- Arduino IDE vagy Visual Studio
- Putty távoli számítógépen SSH-hoz
- VNC-néző távoli számítógépen
4. Bevezetés a Raspberry Pi-be 3:
4.1. Alkatrészek specifikációi:
- 1.4 GHz 64 bites négymagos ARM Cortex-A53, 1 GB RAM
- 2.4/5 GHz kétsávos 802.11 ac vezeték nélküli LAN, 10/100/1000Mbps Ethernet Bluetooth 4.2
- 4 USB port, teljes HDMI port, kombinált 3.5mm audio jack és kompozit video port, 40 GPIO csapok
- Micro SD kártya nyílás, Video Core IV 3D grafikus mag, kamera interfész (CSI), kijelző interfész (DSI)
4.2 Raspberry Pi Pinout:
4.3. Fej Nélküli Raspberry Pi Beállítás:
- mondjuk, most vettem egy raspberry pi-t, és szeretném megnézni, hogyan működik. De csak a laptopom van, a Pi, a micro SD kártya és a Wi-Fi hálózatom. Hogyan csatlakoztathatom és vezérelhetem a Pi-t?
1) Letöltés Raspbian:
- a Pi-nek operációs rendszerre van szüksége. Töltse le a Raspbian-t Raspberrypi.org download section:
- https://www.raspberrypi.org/downloads/raspbian/
2) Letöltés SD memóriakártya formázó:
- az SD-kártya formázására szolgál, mivel szükséges, hogy az SD-kártya üres legyen a letöltött villogó kép előtt. Tudod letölt ez-ból https://www.sdcard.org/downloads/formatter/eula_windows/
3) Flash rá egy SD-kártyára:
- ezt a letöltött képet a micro SD kártyára kell villognia. Feltételezve, hogy laptopjának van SD-kártyahelye vagy micro Sd-kártyaolvasója, szüksége van egy villogó szoftverre, mint például az etcher. Menj előre, és töltse le a https://etcher.io/
4) Wi-Fi konfigurálása:
- könnyebb két eszközt beszélni egymással, ha ugyanabban a hálózatban vannak. Az ethernet kábel könnyen elérhetővé teheti laptopjának hálózatát a Pi számára. De nekünk nincs. Tehát hozzáadunk egy fájlt az SD-kártyához, hogy a Pi előre konfigurált wifi-vel induljon.
- az SD kártya csatlakoztatható két kötet boot és rootfs . Nyissa meg a rendszerindító kötetet, és hozzon létre egy wpa_supplicant nevű fájlt.conf az RPi indításakor ez a fájl a /etc/wpa_supplicant könyvtárba kerül a /rootfs partícióban. A másolt fájl megmondja a Pi-nek a WIFI beállítási információkat. Ez felülírja a meglévő WIFI konfigurációt, tehát ha már konfigurálta a WIFI-t a pi-n, akkor az felülíródik.
- egy tipikus wpa_supplicant.a conf fájl a következő:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdevupdate_config=1country=US network={ ssid=""your_SSID"" psk=""your_PSK"" key_mgmt=WPA-PSK}
megjegyzés: az SSID a WIFI neve. A psk pedig a WI-FI jelszava.
5) engedélyezze az SSH-t
- később hozzáférünk a Pi-hez egy Biztonságos héj (SSH) használatával, az SSH alapértelmezés szerint le van tiltva a Raspbian-ban. Az SSH engedélyezéséhez hozzon létre egy ssh nevű fájlt a rendszerindító partícióban. Ha Linuxot használ, használja a touch parancsot erre.
6) keresse meg a Pi Ip-címét:
- a raspberry pi bekapcsolása előtt meg kell találnunk a hálózathoz csatlakoztatott meglévő eszközöket. Győződjön meg arról, hogy laptopja ugyanahhoz a WIFI hálózathoz csatlakozik, mint amelyet a fenti pi-n konfigurált.
- töltse le a fejlett IP-szkennert a raspberry pi IP-jének beolvasásához. Letöltheti innen https://www.advanced-ip-scanner.com/
7) SSH a Pi-be:
- biztonságos shell kapcsolat létrehozásához Linuxban használhatjuk az ssh parancsot. Ha windows rendszeren van, próbálja meg letölteni a Putty-t https://www.putty.org/
Az alapértelmezett hitelesítő adatok:
username: pipassword: raspberry
8) hozzáférés pi távolról:
- néha nem tűnik helyesnek, ha nem tudjuk használni az egeret. Ehhez meg kell vizsgálnunk a Raspbian asztalt.
- be kell állítanunk a VNC-t (virtuális hálózati kapcsolat) a Pi grafikus megtekintéséhez és vezérléséhez. Csináljuk.
- a távoli asztal eléréséhez VNC-viewer (kliens) szükséges a laptophoz. Szerencsére a RealVNC sok operációs rendszerhez elérhető, válasszon egyet az operációs rendszeréhez https://www.realvnc.com/en/connect/download/viewer/
9) parancsok a vncserver számára:
10) most nyissa meg a VNC Viewer alkalmazást a távoli számítógépen:
5. Végrehajtás és munka:
5.1. Az Arduino vezeték nélküli kommunikációja az Arduino-val az nRF24L01 segítségével:
- ebben megtanuljuk, hogyan lehet vezeték nélküli kommunikációt folytatni két Arduino kártya között az NRF24L01 segítségével. És mérje meg a távolságot ultrahangos érzékelővel, és továbbítsa azt egy másik Arduino Adóvevő modullal.
bekötési utasítások:
az NRF24L01+ vezeték nélküli küldő vezetékének az Arduino-hoz történő bekötéséhez csatlakoztassa a következő csapokat:
- csatlakoztassa a VCC csapot a 3.3 volt
- csatlakoztassa a GND csapot a földhöz (GND)
- csatlakoztassa a CE csapot az Arduino 9-hez
- csatlakoztassa a CSN csapot az Arduino 10-hez
- csatlakoztassa az SCK csapot az Arduino 13-hoz
- csatlakoztassa a MOSI csapot az Arduino 11-hez
- csatlakoztassa a miso Pin-t az Arduino-hoz 12
az ultrahangos érzékelő bekötéséhez az Arduino-hoz csatlakoztassa a következő csapokat:
- csatlakoztassa a VCC csapot az Arduino 5volthoz
- csatlakoztassa a GND csapot a földhöz (GND)
- csatlakoztassa a Trig csapot az Arduino 4-hez
- csatlakoztassa az Echo csapot az Arduino-hoz 3
vezeték nélküli NRF24L01+ vezeték nélküli küldőjének az Arduino-hoz való bekötéséhez sematikus ábra, csatlakoztassa a következő csapokat:
- csatlakoztassa a VCC csapot a 3.3 volt
- csatlakoztassa a GND csapot a földhöz (GND)
- csatlakoztassa a CE csapot az Arduino 9-hez
- csatlakoztassa a CSN csapot az Arduino 10-hez
- csatlakoztassa az SCK csapot az Arduino 13-hoz
- csatlakoztassa a MOSI csapot az Arduino 11-hez
- csatlakoztassa a miso Pin-t az Arduino-hoz 12
huzalozásának vázlatos rajza megjegyzés: RF24 modul kötelező a kód futtatásához, így a könyvtárat ennek megfelelően hozzáadhatja
- indítsa el az Arduino IDE-t, majd adja hozzá a letöltött könyvtárat innen :
5.2. Kód:
feladó oldali kód:
Vevő oldali kód:
az adatok küldése
az adatok fogadása:
6. Az Arduino vezeték nélküli kommunikációja a Raspberry Pi-hez az nRF24L01 segítségével:
6.1: RF24 modul telepítése a Raspberry Pi-re:
- ez a legfontosabb és legfontosabb lépés az Arduino és a Raspberry Pi közötti kommunikációhoz, mivel az RF24 könyvtárat Arduino-ban használtuk a kommunikációhoz, így ugyanaz a könyvtár szükséges a Pi-n.
- további lépéseket, amelyek magukban foglalják a telepítés a könyvtár. Majdnem egy hétig tartott a telepítés, mivel nincs egyértelmű elképzelés róla.
=> út:
1. Jelentkezzen be a Raspberry Pi-be a Putty használatával.
2. Menj a VNC szerver GUI.
3. A terminál típusában:
sudo raspi-config
kapcsolja be az SPI-t a config interfész opcióiból
4. Indítsa újra a Pi-t. A terminálon írja be:
sudo reboot
5. A terminál típusában:
sudo apt-get update
6. Töltse le a install.sh fájl http://tmrh20.github.io/RF24Installer/RPi/install.sh vagy futtassa ezt a terminálon:
wget http://tmrh20.github.io/RF24Installer/RPi/install.sh
7. Legyen végrehajtható:
chmod +x install.sh
8. Futtassa és válassza ki a lehetőségeket:
9. Futtasson egy példát az egyik könyvtárból:
cd rf24libs/RF24/examples_linux make sudo ./gettingstarted
futtassa a következő parancsokat a program futtatásához.
10. Továbbá, ha Python programokat akarunk futtatni ugyanarra a célra, akkor ezt megtehetjük:
a példa futtatása pingpair_dyn.py példa a megfelelő csapok konfigurálására a fenti dokumentáció szerint:
nano pingpair_dyn.py
- konfiguráljon egy másik eszközt, Arduino-t vagy RPi-t a pingpair_dyn példával
- futtassa a példát
sudo python pingpair_dyn.py
6.2. Az Arduino vezeték nélküli kommunikációja az Arduino-val az nRF24L01 segítségével:
- ebben megtanuljuk, hogyan lehet vezeték nélküli kommunikációt létrehozni az Arduino és a Raspberry Pi között az NRF24L01 segítségével. És mérje meg a távolságot ultrahangos érzékelővel az Arduino Uno segítségével, és továbbítsa azt a Raspberry Pi-nek, és az adatok beérkeznek.
Bekötési Útmutató:
az NRF24L01+ vezeték nélküli küldő vezetékének az Arduino-hoz történő csatlakoztatásához csatlakoztassa a következő csapokat:
- csatlakoztassa a VCC csapot 3,3 V-hoz
- csatlakoztassa a GND csapot a földhöz (GND)
- csatlakoztassa a CSN csapot az Arduino 10-hez
- csatlakoztassa a CE csapot az Arduino 9-hez
- csatlakoztassa az SCK csapot az Arduino 13-hoz
- csatlakoztassa a MISO csapot az Arduino 12-hez
- csatlakoztassa a Mosi csapot az Arduino-hoz 11
az ultrahangos érzékelő bekötéséhez az Arduino-hoz csatlakoztassa a következő csapokat:
- csatlakoztassa a VCC csapot az Arduino 5volthoz
- csatlakoztassa a GND csapot a földhöz (GND)
- csatlakoztassa a Trig csapot az Arduino 4-hez
- csatlakoztassa az Echo csapot az Arduino-hoz 3
sematikus ábra:
vezeték nélküli NRF24L01+ vezeték nélküli vevőkészülékének a Raspberry Pi-hez való csatlakoztatásához a következő csapokat kell csatlakoztatni:
- csatlakoztassa a VCC csapot a 3.3 volt (Pin 1)
- csatlakoztassa a GND pin föld (GND) (Pin 6)
- csatlakoztassa a CE pin Raspberry GPIO 22
- csatlakoztassa a CSN pin Raspberry GPIO 8
- csatlakoztassa az SCK pin Raspberry GPIO 11
- csatlakoztassa a MOSI pin Raspberry GPIO 10
- csatlakoztassa a miso Pin-t a Raspberry GPIO-hoz 09
sematikus ábra:
6.3. Kód:
Feladó Oldali Kód:
Vevő oldali kód:
- ez nem kötelező használni ezt a kódot, mert csípett általam, mint egy én követelmény.
a kapcsolat és a kód megfelelő működésének ellenőrzéséhez futtathatja a könyvtárban található példákat, mint például a pingpair_dyn.ino az Arduino és pingpair_dyn.py a Raspberry Pi-N
- a futó kommunikáció részlete:
következtetés: Mindig szórakoztató lesz kísérletezni és játszani az IoT eszközökkel, mint például a fej nélküli Raspberry Pi beállítás, az Arduino és a Raspberry pi megismerése azáltal, hogy kommunikálnak egymással és adatokat küldenek, és leküzdik azokat a hibákat és kihívásokat, amelyekkel az RF24 modul telepítése során szembesültem. Ennek az oktatóanyagnak az a célja, hogy lépésről lépésre szolgáljon, és remélje, hogy könnyű követni és megtanulni is. Köszönjük, hogy elolvasta! Javaslatokat és javításokat mindig szívesen fogadunk.