Tartalomjegyzék:
- 1. lépés: A Pi Zero W beállítása
- 2. lépés: Csatlakozzon a WiFi -hez
- 3. lépés: Frissítse és telepítse a szükséges szoftvert
- 4. lépés: Csatlakozás egy érzékelőhöz (ebben a példában egy Arduino)
- 5. lépés: Állítsa be a WiFi hozzáférési pont képességeit
- 6. lépés: Váltás a Wifi hozzáférési pont és az ügyfélmód között
- 7. lépés: Záró megjegyzések
- 8. lépés: Példa Python naplózási parancsfájlra
Videó: Raspberry Pi Zero W Datalogger: 8 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
A Raspberry Pi Zero W használatával olcsó és könnyen használható adatgyűjtőt készíthet, amelyet vagy helyi wifi -hálózathoz csatlakoztathat, vagy hozzáférési pontként szolgálhat a területen, amely lehetővé teszi az adatok vezeték nélküli letöltését okostelefonjával.
Ezt a beállítást az Amerikai Geofizikai Unió 2017 -es őszi értekezletén mutattam be, saját adatgyűjtő beállításának módjaként. A bemutatót itt találja.
Amire szüksége lesz:
- A Raspberry Pi Zero W
- Egy micro SD kártya
- USB kábel vagy USB tápegység
- Számítógép USB -kártyaolvasóval
-
Választható (de hasznos):
- miniHDMI -> HDMI adapter (a Pi képernyőhöz való csatlakoztatásához)
- USB OTG adapter (billentyűzet csatlakoztatásához a Pi -hez
1. lépés: A Pi Zero W beállítása
A kezdéshez tegyen egy rasbiai képet egy microSD-kártyára (ebben az oktatóanyagban a 2017-07-05-raspbian-jessie-lite-t használtam, itt érhető el). Egy egyszerű verzió is használható (asztal nélkül), mivel a beállítás a parancssoron keresztül történik.
Helyezze be az SD -kártyát a Pi -be, csatlakoztassa a képernyőt és a billentyűzetet, és kapcsolja be a tápkábel csatlakoztatásával. Fej nélküli beállítás is lehetséges, de ehhez SSH -n keresztül kell csatlakozni.
Miután a Pi elindította a bejelentkezést (alapértelmezett felhasználónév: pi, jelszó: málna), és módosítsa a jelszót a "passwd" paranccsal.
A billentyűzet konfigurálható a "sudo raspi-config" beírásával a terminálon.
2. lépés: Csatlakozzon a WiFi -hez
Az internethez való csatlakozáshoz megmondjuk a Pi -nek, hogy melyik hálózathoz csatlakozzon. Kezdje a következő fájl megnyitásával;
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Itt adja hozzá a hálózati információkat alul;
hálózat = {
ssid = "hálózat neve" psk = "hálózati jelszó"}
Vállalati hálózat esetén a következő beállításokat használhatja (állítsa be a WPA-EAP // TTLA // MSCHAPv2 alkalmazandó beállításokat).
hálózat = {
ssid = "ssid" #Írja be a hálózat nevét
Mentse a CTRL+O billentyűkombinációval, majd lépjen ki a CTRL+X billentyűkombinációval.
Most hivatkozzon a konfigurációs fájljára az/etc/network/interfaces fájlban
sudo nano/etc/network/interfaces
Módosítsa a wlan0 részt erre:
auto wlan0
iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Ismét mentse a fájlt (CTRL+O), majd lépjen ki (CTRL+X).
Az újraindítás (sudo reboot) után a wifi kapcsolatnak működnie kell. Ezt egy webhely pingelésével tesztelheti;
ping www.google.com
Törölje a ping -et a CTRL+C billentyűkombinációval
Ha vezeték nélkül szeretne csatlakozni a Pi -hez SSH -n keresztül, engedélyeznie kell az SSH -t:
sudo raspi-config
Keresse meg az "5 interfész opciót", és engedélyezze az SSH -t. Ezután térjen vissza, és lépjen ki a konfigurációból.
Keresse meg a Pi IP -címét:
ifconfig
Az IP a wlan0 interfész "inet addr:" alatt lesz.
Most már csatlakozhat a Pi -hez WiFi -n keresztül, ha ugyanazon a hálózaton van. Töltse le a Putty alkalmazást (Windows esetén), írja be a "Host Name" alatt található IP -címet, majd nyomja meg az "Open" gombot. A figyelmeztetés elfogadása után látnia kell a parancssort és a bejelentkezést.
3. lépés: Frissítse és telepítse a szükséges szoftvert
Miután a WiFi működik, frissítse a Pi -t:
sudo apt -get update -y && sudo apt -get upgrade -y
A frissítés befejezése után (eltarthat egy ideig) telepítse azt a szoftvert, amelyet használni fogunk;
sudo apt-get install python3 python3-serial apache2 -y
4. lépés: Csatlakozás egy érzékelőhöz (ebben a példában egy Arduino)
Vagy csatlakoztassa az Arduino -t billentyűzettel egy USB -elosztó segítségével, vagy csatlakoztassa az Arduino -t egyetlen USB -porton keresztül, és végezze el a beállítást SSH -n keresztül WiFi -n keresztül.
Az Arduino által csatlakoztatott soros port eléréséhez hasznos hozzáférést biztosítani az alapértelmezett pi -fiókhoz. Mivel az Arduino általában a "/dev/ttyACM0" porthoz van rendelve, használja a következő parancsot, hogy hozzáférést biztosítson a "pi" felhasználónak a porthoz:
sudo chown pi: /dev /ttyACM0
Feltételezve, hogy az Arduino már be van állítva az adatok küldésére a soros porton keresztül, az adatokat a következő módon tekintheti meg pythonban:
Nyissa meg a python -ot;
python3
Sorozat importálása:
sorozat importálása
Nyissa meg a com portot:
ser = soros. Soros (port = '/dev/ttyACM0', baudrate = 9600, timeout = 5)
Ahol az Arduino baudrate -je ebben az esetben 9600 volt.
A következő kód futtatásával olvashat és nyomtathat egy sort:
ser.readline (). dekódolás ('utf-8')
Ha működőképes, akkor lezárhatja a kapcsolatot és kiléphet a Pythonból:
ser.close ()
kijárat()
5. lépés: Állítsa be a WiFi hozzáférési pont képességeit
A Pi Zero W wifi hozzáférési pont módban történő beállításával bármilyen wifi -eszközzel csatlakozhat hozzá. Ez lehetővé teszi a naplózó beállítását és az adatok letöltését wifi -n keresztül, nincs szükség kábelekre vagy illesztőprogramokra.
Ehhez az Adafruit jó oktatóanyagot kínál. Néhány apró megjegyzés:
- Az /etc/hostapd/hostapd.conf illesztőprogramhoz ne használja az illesztőprogramot.
- A "hostapd frissítése" lépésre nincs szükség.
Ha a hozzáférési pont nem működik az oktatóanyag végén, próbálja meg újraindítani a Pi -t (sudo reboot).
6. lépés: Váltás a Wifi hozzáférési pont és az ügyfélmód között
Néha frissíteni kell a szoftvert, vagy új szoftvert kell telepíteni a Raspberry Pi -re, de ehhez internetkapcsolat szükséges. Szerencsére a kettő közötti váltás nagyon egyszerű.
Csatlakozzon a Pi -hez SSH -val (kábelen, nem wifin!). Kezdje a hozzáférési pont -szolgáltatások leállításával:
sudo cystemctl stop hostapd.service
sudo cystemctl stop isc-dhcp-server.service
Ezután szerkessze a hálózati interfész fájlt:
sudo nano/etc/network/interfaces
Itt meg kell jegyeznie a tárhely paramétereit, és megszüntetnie a hálózati kapcsolat paramétereinek megjegyzését. Változtasd meg ettől:
#-Hoszting paraméterek:
allow-hotplug wlan0 iface wlan0 inet static address 192.168.42.1 netmask 255.255.255.0 # -Hálózati (ügyfél) paraméterek: #auto wlan0 # iface wlan0 inet dhcp # wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Ehhez:
#-Hoszting paraméterek: #allow-hotplug wlan0 #iface wlan0 inet static #cím 192.168.42.1 #netmask 255.255.255.0 #-Hálózati (ügyfél) paraméterek: auto wlan0 iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Mentse és zárja be a fájlt.
Ezután futtassa a következő parancsokat:
sudo systemctl indítsa el a wpa_supplicant.service szolgáltatást
sudo ifdown wlan0 sudo ifup wlan0
Most a Pi -nek újra csatlakoznia kell a wifi -hez, lehetővé téve a szoftver frissítését és telepítését.
A hozzáférési pont módba való visszatéréshez váltsa meg a megjegyzéseket az/etc/network/interfaces fájlban, és indítsa újra a Pi -t.
7. lépés: Záró megjegyzések
Weboldal beállítása
Az apache szerver a/var/www/mappában található. Az alapértelmezett oldal módosításához szerkessze a /var/www/html/index.html fájlt.
Az itt található fájlokat letölthetővé teheti a wifi kapcsolaton keresztül, ha böngészőjében navigál a Pi IP -címére (192.168.42.1). Ezt követően bármely wifi -kompatibilis eszköz letöltheti őket, külön szoftver nélkül.
SFTP kapcsolat
SSH -n keresztül FTP kapcsolat létesíthető. A Filezilla segítségével nagy mennyiségű fájlt gyorsan és egyszerűen átvihet (lásd a képet).
Valós idejű óra
Mivel a Pi belső órája jelentősen eltolódik, ha nincs internetkapcsolat, valós idejű óra (RTC) modulra lesz szükség, ha pontos időmérésre van szükség. Az egyik ilyen modul a RasClock, a telepítési utasítások itt találhatók. Más i2c alapú órák is rendelkezésre állnak (pl. DS3231)
Következtetés
Ha minden rendben ment, akkor rendelkeznie kell egy működő Pi Zero adatgyűjtővel! A python naplózási szkript példája szerepel a következő lépésben.
8. lépés: Példa Python naplózási parancsfájlra
importál
importáljon sorozatot az időből 'ser.flushInput () ser.flushOutput () try: while True: day_timestring = datetime.strftime (datetime.now (),'%Y%m%d ') file_today = directory + day_timestring +'.dat ' #Olvassa el adatokat, és azonnal megkapja az idővonalat = ser.readline (). dekódolja ('utf-8') nowtime = datetime.strftime (datetime.now (), '%Y-%m-%d%H:%M:% S.%f ') line = line.split (', ') try: u = float ([1]. Sor), kivéve: u = np.nan try: v = float ([2]. Sor), kivéve: v = np.nan try: w = float ([3] sor), kivéve: w = np.nan try: c = float ([5]. sor), kivéve: c = np.nan Ts = 1/403*c ** 2 - 273,15 try: Ta = float ([8] sor), kivéve: Ta = np.nan if (os.path.isfile (file_today)): open (file_today, 'a') as fileobject: fileobject.write (nowtime+',') fileobject.write (str (u)+','+str (v)+','+str (w)+','+str (c)+','+str (Ts)+','+ str (Ta)+'\ n') fileobject.clos e () else: open (file_today, 'w') fájlnévvel: fileobject.write ('"Idő", "u", "v", "w", "c", "Ts", "Ta" / n ') fileobject.write (mostidő+', ') fileobject.write (str (u)+', '+str (v)+', '+str (w)+', '+str (c)+', '+str (Ts)+', '+str (Ta)+' / n ') fileobject.close () kivéve a KeyboardInterrupt: ser.close ()
Ajánlott:
Fából készült LED játékkijelző a Raspberry Pi Zero segítségével: 11 lépés (képekkel)
Fából készült LED -es játékkijelző a Raspberry Pi Zero segítségével: Ez a projekt megvalósítja a 20x10 képpontos WS2812 alapú, 78x35 cm -es LED -kijelzőt, amely könnyen felszerelhető a nappaliban retro játékokhoz. Ennek a mátrixnak az első verzióját 2016 -ban építették, és sok ember újjáépítette. Ez a példa
YouTube-előfizetői számláló e-papír kijelző és Raspberry Pi Zero W használatával: 5 lépés (képekkel)
YouTube-előfizetői számláló E-papír kijelző és Raspberry Pi Zero W használatával: Ebben az utasításban megmutatom, hogyan lehet saját Youtube-előfizetői számlálót létrehozni e-papír kijelzővel, és egy Raspberry Pi Zero W-t a YouTube API lekérdezéséhez és frissítse a kijelzőt. Az e-papír kijelzők nagyszerűek az ilyen típusú projektekhez, mivel
Asztrofotózás a Raspberry Pi Zero -val: 11 lépés (képekkel)
Asztrofotózás a Raspberry Pi Zero -val: Korábban két másik Raspberry Pi alapú kameraprojektet készítettem [1] [2]. Ez a harmadik kameraötletem, az első Raspberry Pi Zero projektem. Ez az első alkalom az asztrofotográfián is! A közelmúltbeli „Supermoon” hatására szerettem volna megszerezni a bátyámat
Waveshare Game-HAT MOD Raspberry PI Zero/Zero W [EN/ES]: 4 lépés
Waveshare Game-HAT MOD Raspberry PI Zero/Zero W [EN/ES]: MAGYAR/INGLÉS: Mint tudod, a Waveshare Game-HAT összeszerelése meglehetősen egyszerű, ha ez az egyik olyan modell, amely teljes mértékben kompatibilis a kialakítással. ez a Raspberry Pi 2/3 / 3A + / 3B / 3B + /, én személy szerint jobban szeretem, ha a játékkonzol lehet
Arduino Datalogger: 8 lépés (képekkel)
Arduino Datalogger: Ebben az oktatóanyagban egy egyszerű adatgyűjtőt készítünk az Arduino használatával. A lényeg az, hogy megtanuljuk az Arduino használatának alapjait az információk rögzítéséhez és a terminálra történő nyomtatáshoz. Ezt az alapbeállítást számos feladat elvégzésére használhatjuk. Az első lépésekhez