Arduino to prosta platforma do sterowania elektroniką w czasie rzeczywistym, świetna dla początkujących i projektów z czujnikami. Raspberry Pi jest miniaturowym komputerem z systemem operacyjnym, odpowiednim do programowania, multimediów i obsługi sieci. Urządzenia można łączyć, wykorzystując Raspberry Pi jako centrum zarządzania, a Arduino do kontroli podzespołów. Na początek można wybrać Arduino, jeśli uczysz się elektroniki, lub Raspberry Pi, jeśli interesuje Cię programowanie.
Arduino i Raspberry Pi to dwie powszechne platformy do budowy urządzeń elektronicznych, automatyki i prototypów IoT, ale wykorzystuje się je w odmienny sposób. Arduino daje efekt przy sterowaniu czujnikami, silnikami, przekaźnikami oraz diodami, jednak Raspberry Pi oferuje środowisko zbliżone do komputera stacjonarnego. Tekst jest przeznaczony dla osób rozpoczynających naukę elektroniki, programowania i robotyki, a także dla konstruktorów, którzy chcą dobrać właściwą płytkę do konkretnego projektu. Znaczenie mają: sposób wykonywania programu, liczba i rodzaj interfejsów, wymagania energetyczne, system operacyjny oraz poziomy napięć na pinach GPIO.

Różnice sprzętowe i zastosowania obu platform
Arduino jest mikrokontrolerem. Po uruchomieniu natychmiast wykonuje wgrany firmware, działa przewidywalnie i pobiera niewiele energii. Nie potrzebuje systemu operacyjnego ani karty pamięci, dlatego dobrze kontroluje układy czasu rzeczywistego. Typowe zastosowania obejmują termostaty, sterowniki oświetlenia, proste roboty, stacje pomiarowe i automatykę.
Raspberry Pi to jednopłytkowy komputer z procesorem wielordzeniowym, pamięcią RAM, systemem Linux i możliwością instalowania aplikacji.
Może obsługiwać serwer WWW, bazę danych, kamerę, interfejs graficzny, komunikację sieciową oraz analizę obrazu. Uruchamianie systemu trwa dłużej, a przerwanie zasilania może uszkodzić dane na karcie microSD. Pi zużywa też więcej energii i wymaga stabilnego zasilacza.

| Cecha | Arduino Uno | Raspberry Pi 4/5 |
|---|---|---|
| Typ układu | Mikrokontroler | Komputer jednopłytkowy |
| System | Brak | Linux lub inny system |
| Programowanie | C/C++ w Arduino IDE | Python, C/C++, JavaScript i inne |
| Sieć i multimedia | Zwykle przez dodatkowe moduły | Wbudowane lub łatwo dostępne |
| Pobór energii | Niski | Wyższy |
Kompatybilność, napięcia i współpraca
Obie platformy korzystają z powszechnych magistral: GPIO, UART, I²C i SPI.
Nie znaczy to jednak pełnej zamienności modułów. Raspberry Pi najczęściej pracuje z logiką 3,3 V, a wiele płytek Arduino wykorzystuje 5 V. Bezpośrednie dobranie sygnałów może uszkodzić porty Raspberry Pi, dlatego stosuje się konwerter poziomów logicznych. Należy także sprawdzić masę, wydajność prądową, sposób zasilania oraz dokumentację konkretnego modułu.
Arduino można połączyć z Raspberry Pi przez USB, UART, I²C lub SPI.
W takim układzie Arduino reaguje szybko na sygnały z czujników i steruje elementami wykonawczymi, a Raspberry Pi realizuje komunikację sieciową, panel użytkownika albo zapis danych. Shieldy Arduino i nakładki HAT dla Raspberry Pi nie są automatycznie kompatybilne mechanicznie ani elektrycznie.
Przy pierwszym projekcie najlepiej ograniczyć liczbę nowych elementów:
- Arduino Uno, jeśli celem jest nauka podstaw elektroniki i programowania mikrokontrolerów.
- Raspberry Pi, gdy potrzebne są Linux, sieć, kamera, pliki lub aplikacje użytkowe.
- Zestaw z płytką stykową, przewodami, diodami LED, rezystorami i jednym czujnikiem.
- Multimetr oraz dokumentacja pinów, napięć i biblioteki używanego modułu.
Pierwsze ćwiczenia powinny obejmować odczyt przycisku, pomiar temperatury, sterowanie diodą i komunikację szeregową.
Dopiero później należy dodawać silniki, przekaźniki i moduły bezprzewodowe.
Architektura sprzętowa i model wykonywania programu
Arduino i Raspberry Pi reprezentują dwa odmienne podejścia do elektroniki obliczeniowej. Typowa płytka Arduino, na przykład Uno, wykorzystuje mikrokontroler AVR ATmega328P z jednostką 8-bitową, niewielką pamięcią RAM i pamięcią programu Flash. Układ wykonuje jeden główny program, bez systemu operacyjnego i rozbudowanej warstwy usług. Po uruchomieniu zasilania mikrokontroler niemal natychmiast przechodzi do obsługi instrukcji zapisanych w pamięci.
Raspberry Pi jest jednak pełnoprawnym komputerem jednopłytkowym. Modele takie jak Raspberry Pi 4 lub 5 korzystają z wielordzeniowych procesorów ARM, mają większą pamięć RAM, interfejsy sieciowe, kontrolery USB i możliwość uruchamiania systemu Linux.
Program działa w środowisku wielozadaniowym, obok sterowników, usług systemowych i procesów. Arduino steruje sprzętem , a Raspberry Pi zarządza sprzętem za pośrednictwem systemu operacyjnego. Różnica dotyczy także niezawodności czasowej. Mikrokontroler może reagować na zmianę stanu wejścia z bardzo przewidywalnym opóźnieniem, dlatego dobrze daje efekt przy sterowaniu silnikami, odczycie enkoderów i generowaniu sygnałów PWM. Raspberry Pi oferuje większe możliwości obliczeniowe, lecz Linux nie gwarantuje ścisłego czasu reakcji. Proces może zostać chwilowo wstrzymany przez scheduler, zapis na kartę pamięci albo działanie innej usługi.

Ważne są także poziomy napięć.
Arduino Uno najczęściej pracuje z logiką 5 V, jednak większość GPIO Raspberry Pi toleruje wyłącznie 3,3 V. Bezpośrednie dobranie niektórych sygnałów może więc uszkodzić komputer jednopłytkowy.
Jak różni się programowanie?
W Arduino kod jest najczęściej pisany w C lub C++, kompilowany na komputerze i wgrywany do mikrokontrolera przez USB. Struktura programu opiera się na funkcjach setup i loop. Biblioteki upraszczają obsługę czujników, wyświetlaczy oraz komunikacji szeregowej. Program pozostaje aktywny tak długo, jak długo układ otrzymuje zasilanie. Na Raspberry Pi można używać Pythona, C, C++, JavaScriptu i wielu innych języków. Kod uruchamia się w systemie, korzystając z plików, procesów, sieci oraz bibliotek instalowanych menedżerem pakietów. Pi może równocześnie obsługiwać serwer WWW, bazę danych, kamerę i komunikację MQTT.
Wydajność a zastosowania praktyczne
Pod względem mocy obliczeniowej Raspberry Pi zdecydowanie przewyższa klasyczne Arduino.
Wielordzeniowy procesor, setki megabajtów lub gigabajty RAM-u oraz akceleracja multimediów pozwalają analizować obraz, przetwarzać dźwięk, uruchamiać modele uczenia maszynowego i komunikować się z usługami internetowymi. Arduino nie jest przeznaczone do takich zadań; jego atutem pozostaje prostota, niski pobór energii i szybka reakcja na sygnały.

Arduino daje efekt jako sterownik urządzenia: odczytuje temperaturę, steruje przekaźnikiem lub reguluje położenie serwomechanizmu. Raspberry Pi lepiej pełni funkcję centrum systemu: gromadzi dane, prezentuje interfejs graficzny, zapisuje pomiary i komunikuje się z siecią. W rozbudowanych projektach oba układy mogą współpracować. Arduino odpowiada wtedy za deterministyczną obsługę elektroniki, a Raspberry Pi za analizę danych, wizualizację i komunikację. Kompatybilność zależy od poziomów napięć, interfejsów komunikacyjnych, dostępnych bibliotek oraz sposobu zarządzania urządzeniem przez system.
Kompatybilność Arduino i Raspberry Pi z czujnikami oraz modułami
Arduino działa najczęściej jako mikrokontroler wykonujący jeden program zapisany w pamięci. Raspberry Pi jest komputerem jednopłytkowym, który uruchamia system operacyjny, obsługuje procesy i komunikuje się z urządzeniami przez piny GPIO.
Obie platformy współpracują z modułami I2C, SPI i UART, lecz wymagają odmiennej konfiguracji programowej.

Najważniejsze kryteria zgodności obejmują:
- poziom logiczny GPIO: Arduino Uno najczęściej używa 5 V, a Raspberry Pi wyłącznie z 3,3 V;
- rodzaj interfejsu: analogowego, cyfrowego, I2C, SPI, UART lub 1-Wire;
- zapotrzebowanie prądowe modułu i wydajność zasilacza;
- adresowanie urządzeń I2C, szczególnie przy podłączaniu kilku identycznych czujników;
- obecność konwertera poziomów logicznych dla układów 5-woltowych;
- dostępność bibliotek dla Arduino IDE, MicroPython, C, C++ albo Pythona;
- konieczność zastosowania sterownika działającego w wybranym systemie operacyjnym.
Podłączenie sygnału 5 V do GPIO Raspberry Pi może trwale uszkodzić jego układ wejściowy. Arduino Uno ma wbudowane wejścia analogowe, jednak Raspberry Pi nie posiada natywnego przetwornika ADC.
Do pomiaru napięcia analogowego na Pi potrzebny jest dodatkowy moduł, na przykład MCP3008, ADS1115 lub ADS1015.
| Platforma | GPIO | Analogowe wejścia | System | Typowe zastosowanie |
|---|---|---|---|---|
| Arduino Uno | 5 V | Tak | Brak systemu operacyjnego | Automatyka i pomiary |
| Arduino Nano 33 IoT | 3,3 V | Tak | Firmware | Urządzenia sieciowe |
| Raspberry Pi 4 | 3,3 V | Nie | Raspberry Pi OS, Ubuntu | Serwery i multimedia |
| Raspberry Pi Pico | 3,3 V | Tak | MicroPython lub firmware | Sterowanie czasu rzeczywistego |
Raspberry Pi OS udostępnia biblioteki GPIO, I2C i SPI, lecz część interfejsów trzeba aktywować w konfiguracji systemu. Arduino wymaga wgrania firmware’u, dlatego reaguje przewidywalnie i szybko, ale nie uruchomi aplikacji linuksowych. Praktyczne rozwiązanie hybrydowe polega na przekazaniu pomiarów z Arduino do Raspberry Pi przez USB, UART albo MQTT. Raspberry Pi może sterować modułami Arduino bez konwertera poziomów logicznych, ale zależy to od napięcia zasilania oraz kierunku transmisji. GPIO Raspberry Pi pracują z poziomami 3,3 V i nie są odporne na 5 V. Typowe Arduino Uno, Nano czy Mega wykorzystują logikę 5 V, dlatego ich wyjście podłączone do wejścia Raspberry Pi może uszkodzić procesor jednoklatkowy. Sygnał wysyłany z Raspberry Pi do wejścia Arduino najczęściej działa poprawnie.
Stan wysoki 3,3 V jest dla wielu układów AVR wystarczający do rozpoznania logicznej jedynki, choć nie jest to gwarantowane dla każdego modułu. Znaczenie mają progi napięciowe konkretnego układu, długość przewodów, zakłócenia oraz częstotliwość transmisji.

Sterowanie modułami Arduino z Raspberry Pi a napięcia GPIO
Jeżeli komunikacja jest jednokierunkowa i przebiega wyłącznie z Raspberry Pi do modułu Arduino, konwerter może być zbędny. Trzeba połączyć masy obu urządzeń i zasilać moduł zgodnie z jego specyfikacją. Nie wolno jednak podawać napięcia 5 V na pin GPIO Raspberry Pi, nawet chwilowo.
Kiedy dobranie Raspberry Pi z Arduino wymaga ochrony wejść?
Największe ryzyko występuje przy UART, gdy linia TX Arduino wysyła 5 V do wejścia RX Raspberry Pi. Prosty dzielnik rezystorowy, na przykład z rezystorów 1 kΩ i 2 kΩ, obniża sygnał do około 3,3 V.
Przy transmisji dwukierunkowej lepszy będzie dwukierunkowy konwerter poziomów logicznych. Dla I²C należy spojrzeć na rezystory podciągające SDA i SCL. Magistrala ma wyjścia typu otwarty dren, więc podciąganie do 5 V jest niebezpieczne dla Raspberry Pi. Rezystory powinny być podłączone do 3,3 V albo zastosowany powinien zostać specjalizowany konwerter.

SPI także wymaga analizy kierunku sygnałów. Linie MOSI, SCK i CS z Raspberry Pi zazwyczaj mogą sterować wejściami Arduino, lecz MISO z układu 5 V powinno zostać obniżone napięciowo. Wyjątkiem są płytki Arduino działające natywnie przy 3,3 V, na przykład Arduino Due. W ich przypadku bezpośrednie dobranie jest bezpieczniejsze, pod warunkiem zgodności pinów i zasilania. Dlatego odpowiedź na pytanie, czy Raspberry Pi może sterować modułami Arduino bez konwertera poziomów logicznych, brzmi: tak, lecz tylko po sprawdzeniu parametrów wejść i wyjść. Rezystor szeregowy, dzielnik napięcia lub konwerter chronią GPIO przed kosztowną awarią.










