Nexus Pi

NEXUS PROJECT
Raspberry Pi + Arduino Mega projekt

Okos LED
Vezérlőrendszer

Egy teljesen egyedi hardver-szoftver ökoszisztéma, amely valós idejű szenzoradatokat, hangvizualizációt és több mint 20 látványeffektet kezel egy elegáns webes felületről.

🖥 Raspberry Pi ⚙️ Arduino Mega 2560 💡 NeoPixel LED 🌡 Hőmérséklet szenzor 🎵 Hangvizualizáció
Python Flask
Serial UART
WS2812B
I2C LCD
💡
20+
Egyedi LED effekt
5
Csatlakoztatott szenzor
3D
Nyomtatott ház CraftBottal

Hogyan működik együtt?

A Pi és az Arduino folyamatos soros kommunikációban (UART) dolgozik együtt. A Pi adja a parancsokat, az Arduino hajtja végre őket a valós hardveren.

🖥
Raspberry Pi
Python · Flask webszerver
USB · UART · 9600 baud
⚙️
Arduino Mega
Hardver · Szenzorok kezelése
📡 Szenzorok · Bemenetek
🌡
NTC Termisztor
A0 pin
🎤
Mikrofon
A1 pin
☀️
LDR Fény
A2 pin
💡 Kimenetek · Látvány & Hang
💡
NeoPixel
D6 pin
📟
I2C LCD
0x27
🔔
Buzzer
D8 pin

A projekt hardvere

Minden alkatrész konkrét szerepet tölt be a rendszerben.

🖥
Vezérlő · Agy #1
Raspberry Pi
A rendszer „agya” és webszervere. Python Flask alkalmazást futtat, amely böngészőből elérhető felületet biztosít. Soros (UART) kommunikáción keresztül küld parancsokat az Arduinonak, és fogadja a szenzor adatokat.
/dev/serial0 · GPIO UART
⚙️
Vezérlő · Agy #2
Arduino Mega 2560
A „fizikai munkás”. Közvetlenül hajtja meg a LED gyűrűt, kezeli az LCD-t és a buzzert, illetve folyamatosan olvassa a szenzorokat. A Pi parancsait UART-on veszi, és azonnal végrehajtja őket.
USB Serial · 9600 baud
💡
Kimenet · Látvány
16-os NeoPixel LED Gyűrű
A projekt fő látványeleme. 16 darab WS2812B RGB LED alkot egy gyűrűt, amely egyenként vezérelhető. Ezen fut az összes vizuális effekt: szivárvány, vihar, radar, mátrix és még sok más.
D6 pin · WS2812B · 5V
📟
Kimenet · Kijelző
16×2 I2C LCD Kijelző
Két soros szöveget képes megjeleníteni. A rendszerállapotot, a mért hőmérsékletet, és a webes felületről küldött egyedi üzeneteket (max. 16 karakter) mutatja valós időben.
I2C · 0x27 cím · SDA/SCL
🔔
Kimenet · Hang
Passzív Zümmer (Buzzer)
A hang effektek forrása. PWM-vezérléssel különböző hangmagasságú dallamokat tud lejátszani – ez biztosítja az R2D2, a Pac-Man, a Riasztó és a többi effekt dinamikus hangját.
D8 pin · PWM · passzív
🌡
Szenzor · Bemenet
NTC Termisztor hőmérő
Folyamatosan méri a szoba hőmérsékletét. Az érték megjelenik az LCD-n és a webes vezérlőpulton is, ahol szín is jelzi az állapotot: kék = hideg, zöld = normál, piros = meleg/forró.
A0 pin · analóg · NTC
🎤
Szenzor · Bemenet
Mikrofon / Hangérzékelő
Valós idejű audio bemenetet biztosít. A zenei effektek (VU méter, Pulse, Disco, Center) erre a modulra reagálnak – minél hangosabb a zene, annál intenzívebb a LED vizualizáció.
A1 pin · analóg · MAX4466
☀️
Szenzor · Automata
LDR Fényfüggő Ellenállás
Automatán figyeli a szoba fényviszonyait. Ha besötétedik, a rendszer önállóan „éjszakai módba” vált: lecsökkenti a LED fényerejét, hogy ne zavarja a pihenést.
A2 pin · analóg · feszültségosztó

20+ egyedi vizuális effekt

Minden effekt egyedi animációval és hanghatással rendelkezik. Vidd rá az egeret egy effektre az előnézethez!

🧘
ZEN
V23 Exkluzív
VIHAR
V23 Exkluzív
🚨
RIASZTÓ
V23 Exkluzív
🤖
ROBOT
V23 Exkluzív
📊
VU METER
Audio FX
💓
PULSE
Audio FX
🎯
CENTER
Audio FX
🪩
DISCO
Audio FX
🟩
MATRIX
Retro Game
❄️
Retro Game
🧱
TETRIS
Retro Game
👾
PAC-MAN
Retro Game
🏓
BOUNCE
Retro Game
🎰
CASINO
Retro Game
☄️
METEOR
Retro Game
⚛️
REACTOR
Sci-Fi
☢️
NUKE
Sci-Fi
📡
SCANNER
Sci-Fi
🔴
RADAR
Sci-Fi
🚔
POLICE
Party
🔥
TŰZ
Party
💥
STROBE
Party
🎉
PARTY
Party

A kód ami összeköti

A rendszer szíve egy Python Flask szerver, amely bármilyen böngészőből elérhető, mobilon is.

🐍
Python 3
Fő programozási nyelv
🌶
Flask
Webes REST API szerver
🔌
PySerial
UART kommunikáció
📊
psutil
Rendszer monitoring
🧵
Threading
Párhuzamos folyamatok
📐
OpenSCAD
3D ház tervezés
🌐
Webes vezérlőpult
A Flask szerver bármely eszközről elérhető a helyi hálózaton – okostelefon, tablet, laptop. Böngésző elegendő, nincs szükség app telepítésre. A felület 15 másodpercenként automatikusan frissül és megjeleníti a szenzor adatokat, a Pi CPU/RAM/disk állapotát és az eseménynaplót.

3D nyomtatott ház

CraftBot Plus · OpenSCAD

Az összes hardver-komponens egy egyedi tervezett, 3D nyomtatott „konzol” dobozba van beépítve. A tervet OpenSCAD parametrikus CAD szoftverrel készítettük, a nyomtatás CraftBot Plus nyomtatón készült. Az eredmény egy tiszta, esztétikus ház ami elrejti a kábeleket, de mutatja a LED gyűrűt és az LCD kijelzőt.

NyomtatóCraftBot Plus
Tervező szoftverOpenSCAD
AnyagPLA filament
LED ablakDiffúzor betét · NeoPixel

Készítette

Ez a projekt két alkotó közös munkájának az eredménye.

👨‍💻
Hardver & Szoftver
Fehér Zsolt Milán
Python szerver, webes felület, Arduino firmware, 3D ház tervezés OpenSCAD-ben.
👨‍🔧
Hardver & Elektronika
Gujka Dominik
Hardver összekötés, szenzor integráció, elektronikai tervezés és kivitelezés.

Alkatrészek részletesen

Minden komponens leírása – mi az, és miért ezt választottuk a projekthez.

ARM A53 WiFi RPi Zero2W
Vezérlő · Egylapos számítógép
Raspberry Pi Zero 2 W
Kis méretű, alacsony fogyasztású Linux számítógép quad-core ARM Cortex-A53 processzorral, beépített Wi-Fi és Bluetooth modullal.
💡 Miért ezt?Elegendő teljesítmény a Python Flask szerver futtatásához, Wi-Fi-n elérhető webes felület – és kis mérete miatt beépíthető a 3D nyomtatott házba.
ATmega 2560
Mikrovezérlő
Arduino Mega 2560
Nagy teljesítményű AVR mikrovezérlő 54 digitális és 16 analóg I/O lábbal. Valós idejű hardvervezérlésre specializált.
💡 Miért ezt?A Pi nem tud közvetlenül NeoPixelt vezérelni pontos időzítéssel. Az Arduino ezt natívan kezeli, és a sok I/O láb elegendő az összes szenzorhoz.
WS2812B 16 LED
LED kimenet
NeoPixel LED Gyűrű (16×)
16 darab WS2812B RGB LED egy gyűrűbe rendezve. Minden LED egyenként, egyetlen adatvonalon programozható – tetszőleges szín és fényerő.
💡 Miért ezt?A WS2812B protokoll megbízható, széles library-támogatással rendelkezik. A gyűrű forma egyedi forgó és radar effekteket tesz lehetővé.
I2C 0x27 VCC GND SDA SCL
Kijelző
16×2 I2C LCD kijelző
Kétsoros, soronként 16 karakteres LCD kijelző I2C-bővítő modullal. Mindössze 4 vezetékkel (VCC, GND, SDA, SCL) csatlakozik.
💡 Miért ezt?Az I2C protokoll miatt csak 2 Arduino lábat foglal el a közvetlen 6–8 helyett, miközben folyamatos visszajelzést ad a rendszer állapotáról.
+ PASSIVE BUZZER
Hangkimenet
Passzív Piezo Buzzer
Passzív zümmer, amelyet külső PWM jellel kell meghajtani. A frekvencia változtatásával különböző hangmagasságú hangokat és dallamokat lehet lejátszani.
💡 Miért ezt?Az aktív buzzerrel ellentétben a passzív típus tetszőleges hangmagasságot tud megszólaltatni – ezért képes R2D2 dallamokat és Pac-Man jingle-t játszani.
NTC 10kΩ VCC A0
Hőmérséklet szenzor
NTC Termisztor (10kΩ)
Hőmérsékletfüggő ellenállás – melegítésre csökken az ellenállása. Feszültségosztóba kötve az Arduino A0 analóg lábán mérhető.
💡 Miért ezt?Olcsó, egyszerű, nincs szükség speciális library-re. Szoba-hőmérsékletre elegendő pontossággal rendelkezik, direktben köthető az analóg lábra.
MAX 4466 V G OUT
Hangszenzor
MAX4466 Mikrofon modul
Elektret mikrofon beépített erősítővel (MAX4466 IC). Állítható erősítéssel analóg feszültség-kimenetet ad az Arduino A1 analóg bemenetére.
💡 Miért ezt?Analóg amplitúdó-értéket ad vissza, amivel a hangerő intenzitása mérhető – ez szükséges a VU méterhez, Pulse és Disco effektekhez.
LDR Fényfüggő ellenállás
Fényszenzor
LDR (Fényfüggő ellenállás)
Fotorezisztor – megvilágítás hatására csökken az ellenállása. Feszültségosztóba kötve az Arduino A2 lábán méri a környezeti fényszintet.
💡 Miért ezt?Rendkívül egyszerű és olcsó az automatikus éjszakai módhoz. Nincs szükség extra library-re, az analóg értékből meghatározható a sötétség küszöbértéke.
+
Összekötő panel
Breadboard (720 pont)
Forrasztás nélküli próbapanel, amelyen az alkatrészek és jumper kábelek egyszerűen csatlakoztathatók. Két tápellátás-sín és egy középső elválasztó csatornával.
💡 Miért ezt?Lehetővé teszi az áramkör gyors, forrasztás nélküli összerakását és módosítását. Prototípus fázisban rugalmasságot biztosít az elrendezés változtatásához.

Raspberry Pi Zero 2 W — Lábkiosztás

A 40-pin GPIO fejlécből 3 láb van bekötve a projektben. Vidd az egeret egy pinre a részletekért.

UART TX/RX
GND (Föld)
Nem használt
RPi Zero 2 W WiFi/BT ARM A53 6 8 10 1 GND · Pin 6 UART TX · Pin 8 UART RX · Pin 10 → Arduino Mega USB soros (9600 baud) 37 pin — nem használt
Pin 6 — GND
Közös föld az Arduinohoz
Pin 8 — GPIO14 (TX)
UART adás → Arduino RX0
Pin 10 — GPIO15 (RX)
UART vétel ← Arduino TX0

Arduino Mega 2560 — Használt lábak

Az Arduino 54 digitális és 16 analóg lábából az alábbiak vannak bekötve a projektben.

Csatlakoztatva
I2C (LCD)
UART (Pi)
Analóg szenzor
Tápellátás
Föld

Bekötési táblázat

Pontosan melyik alkatrész melyik lábra csatlakozik.

Alkatrész Alkatrész lába Arduino / Pi lába Huzal Megjegyzés
NeoPixel Gyűrű DIN D6 Arduino
Zöld
330Ω ellenállással sorba
NeoPixel Gyűrű 5V 5V Arduino
Piros
Külön táp ajánlott >8 LEDnél
NeoPixel Gyűrű GND GND Arduino
Fekete
Közös föld!
Passzív Buzzer + D8 Arduino
Sárga
PWM képes láb
Passzív Buzzer GND Arduino
Fekete
I2C LCD SDA SDA (20) Arduino
Kék
I2C cím: 0x27
I2C LCD SCL SCL (21) Arduino
Lila
NTC Termisztor OUT A0 Arduino
Sárga
10kΩ pull-up 3.3V-ra
MAX4466 Mikrofon OUT A1 Arduino
Zöld
3.3V tápellátás!
LDR szenzor OUT A2 Arduino
Sárga
10kΩ feszültségosztó
Raspberry Pi TX (GPIO14) RX0 (0) Arduino
Narancs
USB-soros vagy logikaszint-váltóval
Raspberry Pi RX (GPIO15) TX0 (1) Arduino
Lila
USB-kábelen keresztül

Raspberry Pi · Arduino Mega · NeoPixel · Flask · OpenSCAD