Tartalomjegyzék:
- Kellékek
- 1. lépés: A Rasbian beállítása
- 2. lépés: A kód megragadása és beállítása
- 3. lépés: Arduino kommunikáció
- 4. lépés: Bekapcsolás Kapcsolja be
- 5. lépés: A kód futtatása
- 6. lépés: (Választható) a ház
Videó: Kapcsolható, automatikus kimenet valós idejű áramméréssel: 6 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Nagyon szeretem az automatizálást, azt a képességet, hogy irányítsam, ha valami történnie kell. Ezért jött az ötletem: egy saját készítésű, automata aljzat. Használható annak megtervezésére, hogy mikor kell bekapcsolni a lámpákat, mikor kell tölteni a telefonokat, vagy mikor kell bekapcsolni a képernyőt. Mindezek mellett megnézheti, hogy mennyi áram folyik a kimeneten.
A projekthez szükséges összetevők a következők:
Kellékek
Mielőtt elkezdenénk, ezek azok a dolgok, amelyekre mindenképpen szüksége van egy olyan Switch-IT doboz elkészítéséhez, mint az enyém. Ezek a kellékek körülbelül 50-100 euróba kerülnek a régiótól és az aktuális áraktól függően.
Hardver
Elektronika
- Málna pi 4
- 16 GB (vagy több) Micro SD-kártya
- Arduino Uno
- 5V-3.3V szintváltó
- 5V relé modul
- ACS712 20A - árammodul
- 1838 IR-vevő 37,9 kHz modul
- IR távirányító (én Elegoo -t használok)
- közös katód RGB
- 3 * 330Ω ellenállás
- nyomógomb
- RFID-RC522
- LCD 1602A-1
- Niko fali aljzat
- 10K Ω potméter
- 230-5V - 7A tápegység
Kábelek
- USB-B-USB-A kábel
- USB-C tápkábel
- hálózati kábel
Különféle
- Férfi-Női jumperhuzalok
- Férfi-férfi jumperhuzalok
- Forrasztóforma
- Zsugorodó cső
A tok speciális alkatrészei (opcionális)
- 50 * dió és félkövér
- fém tok 40x40x5 cm fedéllel
- kétoldalú ragasztó
- 6 * 1 cm magas távtartók
- led-tartó
- Tépőzáras szalag
- kábelvezetők
Szoftver
- balenaEtcher:
- Gitt
- rasszista
- Visual Studio kód
- Arduino IDE
1. lépés: A Rasbian beállítása
Először is a Rasbian-t villanjuk fel az SD-kártyára. Ezt a balenaEtcher segítségével fogjuk megtenni.
- Nyissa meg a balenaEtcher programot
- Válassza a Rasbian Image lehetőséget
- Válassza ki az SD-kártyát
- Nyomja meg a Flash gombot, és várjon néhány percet, amíg villog
APIPA hozzáadása a rendszerindító könyvtárhoz: APIPA címet használunk az RPI beállításainak programozásához és konfigurálásához. Ezt csináld meg:
- Hozzáfér az SD-kártya rendszerindító könyvtárához
- Nyissa meg a "cmdline.txt" fájlt
- Adja hozzá a "169.254.10.1" szót a dokumentum végéhez, és mentse el
- Adjon hozzá egy "ssh" nevű fájlt a rendszerindító könyvtárhoz (NE HASZNÁLJA EZT A FÁJLOT BŐVÍTÉSRE)
- Miután ezt megtette, vegye ki az SD -kártyát a számítógépről.
Hozzáférés az RPI -hez a PuTTy használatával
Most csatlakoztathatjuk az SD -kártyát az RPI -hez, Ethernet -kábellel csatlakoztathatjuk az RPI -t a számítógéphez.
Az RPI-hez való csatlakozáshoz a PuTTy-t fogjuk használni az APIPA-címünkkel.
- Nyissa meg a PuTTy -t
- Adja meg APIPA-címünket gazdagépnévként (169.254.10.1)
- Győződjön meg arról, hogy a port 22 és az SSH van kiválasztva
- Most megnyithatja a kapcsolatot
- Az alapértelmezett felhasználónév: pi
- Alapértelmezett jelszóval: málna
raspi-config beállítások
Nyissa meg a raspi-config-ot a következők használatával:
sudo raspi-config
- Változtassa meg a felhasználói jelszót
- A lokalizációs beállításokban válassza ki az időzónát
- Állítsa be a WiFi-t a hálózati beállításokkal, majd a Wi-Fi opciót, ahol meg kell adnia az SSID-t és a jelszót.
Telepítse a Python 3 -at
Ebben a projektben a Python -ot használjuk, ezért a Python2 alapértelmezett beállítását Python3 -ra állítjuk a következő parancsok használatával
update-alternatives --install/usr/bin/python python /usr/bin/python2.7 1
update-alternatives --install/usr/bin/python python/usr/bin/python3 2
Python csomagok
Szükségünk lesz néhány csomagra, hogy minden megfelelően működjön, főleg a lombik csomagokra és egy csomagra, hogy kapcsolatba léphessünk az adatbázisunkkal. Ezeket a csomagokat a következő parancsokkal telepíthetjük:
pip install Lombik
pip install Flask_cors pip install Flask_socketio pip install Python-mysql-connecton
Adatbázis
A következő lépésben telepítjük az adatbázis -kezelő rendszerünket (MariaDB), ezt a következők segítségével tehetjük meg:
sudo apt install mariadb-server
A folytatáshoz írja be az „Y” billentyűt és az Enter billentyűt. Néhány másodperc múlva a telepítési folyamat befejeződött, és a MariaDB majdnem használatra kész.
Az adatbázis jelszavának beállításához használja a következő parancsot:
sudo mysql_secure_installation
Ezután nyomja meg az Enter billentyűt, mivel az aktuális jelszó üres. Ezután nyomja meg az "Y" gombot a jelszó beállításához, most megadhatja a kívánt jelszót, ne felejtse el megjegyezni, mert szükségünk van rá, hogy megfelelő kapcsolatot hozzunk létre a háttér és a kezelőfelület között.
Most nyomja meg háromszor az „Y” gombot, hogy eltávolítsa a névtelen felhasználókat, letiltja a root bejelentkezést távolról, és távolítsa el a tesztadatbázist. Végül nyomja meg ismét az „Y” gombot a jogosultságok újratöltéséhez.
Most a MariaDB és az összes szükséges csomag sikeresen telepítve van.
2. lépés: A kód megragadása és beállítása
Most, hogy minden csomag telepítve van, megkaphatjuk a kódot.
A kód elérhető a Githubon, így klónozhatja:
git klón
Ez a frontend
git klón
Ez a háttér
Maga az adatbázis telepítése
Az adatbázis telepítéséhez navigáljon a.sql fájlhoz, amely a háttérmappában található a következő parancsokkal (győződjön meg róla, hogy a saját útvonalát állítja be.
mysql
adatbázis létrehozása switchit kilépés a mysql -u root -p switchit <Saját_útvonal_to_Backend_Repo/switchit.sql
Az Apache telepítése
Most, hogy megvan az összes kód és az adatbázis, telepíthetjük az Apache programot, és futtathatjuk rajta a háttérprogramunkat. Így fogjuk használni:
apt -get install apache2 -y
Ezután cserélje le a/var/ww/html fájlokat a frontend mappában lévő fájlokra.
Ha minden rendben ment, akkor csatlakoznia kell webhelyéhez a böngésző APIPA -címe: 169.254.10.1 segítségével.
3. lépés: Arduino kommunikáció
Az aktuális érzékelőnk és az RFID érzékelőnk leolvasásához egy arduino -t használunk, ehhez használja az alább megadott arduino kódot. Töltse fel USB-A-USB-B kábellel és az arduino IDE szoftverrel. Feltöltéskor az arduino rész kész.
Most meg kell találnunk a soros eszköz nevét a PI -n. Ehhez győződjön meg arról, hogy a /boot/config.txt fájlban az "enable_uart = 1" helyesen van beállítva. Győződjön meg arról is, hogy a "console = serial0, 115200" el lett távolítva a cmdline.txt fájlból.
Ezután ellenőrizze a portokat a segítségével
ls -l /dev
Akkor az egyik sorozatnév legyen az Arduino. Írja be ezt a nevet az app.py arduinocom függvényében
ser = soros. Soros ('/dev/ttyS0', 9600)
Csak akkor tegye ezt, ha a soros kommunikáció nem működik.
4. lépés: Bekapcsolás Kapcsolja be
Minden bekötése meglehetősen egyszerű, bár a következő dolgokat kell szem előtt tartania:
- Legyen óvatos a fali konnektorral, a 230 volt halálos lehet.
- Ügyeljen arra, hogy szint -átalakítót használjon az RPI és az Arduino közötti kommunikációhoz.
- Az RGB forrasztása előtt győződjön meg róla, hogy a piros és a zöld tűt használja. Teszteld ezt előre!
- Az áramkör bekapcsolása előtt ellenőrizze, nincs-e rövidzárlat.
5. lépés: A kód futtatása
Most minden megfelelően van csatlakoztatva, futtathatjuk programunkat.
Annak érdekében, hogy az indításkor automatikusan fusson, hozzon létre egy fájlt a következők használatával:
sudo nano myscript.service
Ezután illessze be (győződjön meg róla, hogy a saját app.py könyvtárát használja:
[Unit] Leírás = Switchit After = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory = // átváltás az app.py könyvtárba // StandardOutput = örököl StandardError = örököl Újraindítás = mindig User = pi [Telepítés] WantedBy = multi-user.target
Ezután nyomja meg a "ctrl + X" billentyűt, és másolja át az/etc/systemd/system mappába.
Ezután a következő parancs automatikus futtatásához:
sudo systemctl engedélyezi a myscript.service szolgáltatást
Erről további információt a RaspBerry Pi webhelyen talál.
Újraindítás és kész
Most indítsa újra a PI -t a következő használatával:
sudo reboot -h most
Így készítse el a Switch-it!
Köszönöm a követést, remélem hasznos volt. Ha bármilyen tippje vagy visszajelzése van, ne habozzon megjegyzést írni.
6. lépés: (Választható) a ház
A házat teljesen saját igényei szerint építheti fel. Fém tokot használtam, melynek mérete 40x40x5 cm, fedővel. Mivel fémet használtam, lyukakat kellett fúrnom, és távtartókat kellett használnom, hogy mindent letegyenek a talajlemezről. Úgy döntöttem, hogy egy központi pontot használok, ahol az 5V, 3.3V és a gnd elérhető. Minden elektromos csatlakozás forrasztva van egy zsugorcsővel. A kábelkezeléshez hordozópántos párnákat használtam.
Ajánlott:
Valós idejű óra modul használata (DS3231): 5 lépés
Valós idejű óramodul (DS3231) használata: A DS3231 egy olcsó, rendkívül pontos I2C valós idejű óra (RTC), beépített hőmérséklet-kompenzált kristályoszcillátorral (TCXO) és kristállyal. A készülék akkumulátor -bemenettel rendelkezik, és pontos időmérést tart fenn, amikor a fő áramellátás
Valós idejű Rubik-kocka bekötött szemű megoldó a Raspberry Pi és az OpenCV használatával: 4 lépés
Valós idejű Rubik-kocka bekötött szemű megoldó a Raspberry Pi és az OpenCV használatával: Ez a Rubik kockaeszköz 2. verziója, bekötött szemmel történő megoldásra. Az első verziót a javascript fejlesztette ki, láthatja a RubiksCubeBlindfolded1 projektet. Az előzőtől eltérően ez a verzió az OpenCV könyvtárat használja a színek és az
Valós idejű kút vízszintmérő: 6 lépés (képekkel)
Valós idejű kútvízszint-mérő: Ezek az utasítások leírják, hogyan lehet olcsó, valós idejű vízszintmérőt készíteni ásott kutakban való használatra. A vízszintmérőt úgy tervezték, hogy egy ásott kút belsejében lógjon, naponta egyszer mérje a vízszintet, és WiFi -n vagy mobilkapcsolaton keresztül küldje el az adatokat
Valós idejű kútvíz-hőmérséklet, vezetőképesség és vízszintmérő: 6 lépés (képekkel)
Valós idejű kútvíz-hőmérséklet-, vezetőképesség- és vízszintmérő: Ezek az utasítások leírják, hogyan lehet olcsó, valós idejű vízmérőt készíteni a hőmérséklet, az elektromos vezetőképesség (EC) és a vízszint figyelésére ásott kutakban. A mérőt úgy tervezték, hogy egy ásott kút belsejében lógjon, mérje a víz hőmérsékletét, EC és
Valós idejű grafikon rajzolása Androidon az Arduino-tól a HC-05-ig: 3 lépés
Valós idejű grafikon ábrázolása Androidon Arduino-tól HC-05-ig: Üdv, itt van egy oktatóanyag arról, hogyan lehet valós idejű grafikonot ábrázolni egy mikrovezérlőről, például egy Arduino-ról az alkalmazásra. Bluetooth-modult, például a HC-05-t használ üzenetküldő eszközként az adatok továbbítására és fogadására az Ar