KAmod ESP32-C3 DIN (PL): Difference between revisions
From Kamamilabs.com - Wiki
| Line 431: | Line 431: | ||
===== Aplikacja testowa ===== | ===== Aplikacja testowa ===== | ||
Dla KAmod ESP32-C3 DIN została opracowana aplikacja testowa, która pozwala sprawdzić działanie modułu oraz może być bazą do rozbudowy. Kod źródłowy dostępny jest na github KAMAMI-Labs:<br> | |||
https://github.com/KAMAMI-Labs/KAmod-ESP32-C3-DIN.git | |||
<center> | |||
[[File:KAmod_ESP32-C3_DIN_app.jpg|none|500px|thumb|center]] | |||
</center> | |||
<hr> | <hr> | ||
===== Linki ===== | ===== Linki ===== | ||
Revision as of 11:42, 27 January 2026

Opis
KAmod ESP32-C3 DIN - uniwersalny moduł sterujący z mikrokontrolerem ESP32-C3
Na płytce KAmod ESP32-C3 DIN zastosowano moduł ESP32-C3-WROOM-02U, który umożliwia komunikację poprzez Wi-Fi 2,4 GHz i bazuje na mikrokontrolerze o architekturze RISC-V. Ponadto na płytce zaimplementowano interfejs USB do programowania i monitorowania aplikacji, interfejs RS485 stosowany w automatyce oraz interfejs I2C w standardzie Q-wire umożliwiający łatwą rozbudowę systemu. Dodatkowo mikrokontroler może sterować 4 wyjściami z tranzystorami MOSFET małej mocy a układ zasilania pozwala na podłączenie napięcia z zakresu 7…32 V. Cała konstrukcja mieści się na niewielkiej płytce, dopasowanej do obudowy typu Z106, która może być zamontowana na szynie DIN35.

Podstawowe parametry
- Mikrokontroler ESP32-C3 - 32-bitowy rdzeń RISC-V, max 160 MHz
- Rozmiar pamięci: 400 kB SRAM, 4 MB SPI Flash
- Komunikacja Wi-Fi 2,4 GHz, IEEE 802.11 b/g/n oraz Bluetooth 5 LE
- Złącze antenowe typu U.FL
- Interfejs RS485 wyposażony w zabezpieczenia przeciwprzepięciowe
- Interfejs USB do programowania oraz monitorowania działania aplikacji (realizuje funkcję USB-UART)
- Mikroprzyciski do wykonania resetu oraz uruchomienia trybu programowania (bootloader)
- Interfejs I2C z zasilaniem 3,3 V w standardzie Q-Wire (Qwiic, Stemma QT)
- 4 diody LED sygnalizujące: zasilanie, komunikację RS485 oraz sterowane z aplikacji
- Złącze szpilkowe typu goldpin z wyprowadzonym zasilaniem 3,3 V i 7 liniami GPIO
- 4 wyjścia małej mocy z tranzystorami N-MOSFET (max 1 A)
- 2 wejścia analogowe z dzielnikami napięcia - rozdzielczość ADC 12-bitów, max napięcie wejściowe 32 V
- Zasilanie napięciem stałym z zakresu 7…32 V, pobór prądu do 100 mA (sam moduł w trybie aktywnym).
- Zasilanie napięciem stałym 5 V poprzez złącze USB-C
- Złącze zasilania, złącze interfejsu RS485 oraz złącze wyjść typu Phoenix MC 3,81 mm
- Kompatybilny z Arduino IDE
- Kompaktowe wymiary dopasowane do obudowy typu Z106 na szynę DIN35 (obudowa nie jest częścią zestawu)
Wyposażenie standardowe
| Kod | Opis |
|---|---|
| KAmod ESP32-C3 DIN | Zmontowany i uruchomiony moduł |
| Antena Wi-Fi 2,4 GHz | Antena ze złączem U.FL |
Schemat elektryczny
Schemat główny
Schemat obwodu zasilania
Schemat interfejsów RS485 oraz USB
Funkcje przypisane liniom GPIO
Moduł ESP32-C3-WROOM-02U ma 15 liniiGPIO. W tabeli opisano jakie funkcje zostały przydzielone poszczególnym liniom na płytce KAmod ESP32-C3 DIN.
| GPIO | Funkcja |
|---|---|
| 00 |
Wejście ADC0-0, wyprowadzone na złącze szpilkowe IntIO, oraz poprzez dzielnik 100 k/10 k dołączone do wyjścia 2 |
| 01 |
Wejście ADC0-1, wyprowadzone na złącze szpilkowe IntIO, oraz poprzez dzielnik 100 k/10 k dołączone do wyjścia 1 |
| 02 |
Linia zegarowa I2C - SCL, dołączona do złącza szpilkowego IntIO oraz złącza Q-Wire. |
| 03 |
Linia danych I2C - SDA, dołączona do złącza szpilkowego IntIO oraz złącza Q-Wire. |
| 04 |
Steruje tranzystorem N-MOSFET, wyjście nr. 4 dostępne na złączu J8 |
| 05 |
Steruje tranzystorem N-MOSFET, wyjście nr. 3 dostępne na złączu J8 |
| 06 |
Steruje tranzystorem N-MOSFET, wyjście nr. 2 dostępne na złączu J8 |
| 07 |
Steruje tranzystorem N-MOSFET, wyjście nr. 1 dostępne na złączu J8 |
| 08 |
Steruje diodą LED - LED08, sygnał aktywny w stanie niskim |
| 09 |
Steruje diodą LED - LED09 i odczytuje stan przycisku, który uruchamia tryb programowania - PRG. |
| 10 |
Steruje sygnałem DE/RE transceivera RS485, stan wysoki aktywuje nadajnik. Dostępny na złączu szpilkowym IntIO |
| 18 |
Sygnał D- interfejsu USB |
| 19 |
Sygnał D+ interfejsu USB |
| 20 |
Wejście interfejsu UART - RX, podłączone do złącza szpilkowego IntIO oraz do transceivera RS485 |
| 21 |
Wyjście interfejsu UART - TX, podłączone do złącza szpilkowego IntIO oraz do transceivera RS485 i do diody LED - LED21 |
Wyjścia małej mocy
| Wyjście | Linia GPIO /
stan załączający wyjście |
Złącze / uwagi |
|---|---|---|
| 1 | GPIO 07 / H | J8-2 (OUT 1) / Stan aktywny na wyjściu - GND |
| 2 | GPIO 06 / H | J8-3 (OUT 2) / Stan aktywny na wyjściu - GND |
| 3 | GPIO 05 / H | J8-4 (OUT 3) / Stan aktywny na wyjściu - GND |
| 4 | GPIO 04 / H | J8-5 (OUT 4) / Stan aktywny na wyjściu - GND |
| COMM | - | J8-1 (COMM) połączyć z dodatnią linią zasilania w przypadku sterowania obciążeniami indukcyjnymi np. przekaźnikami. |
Obwody wyjść zbudowane są na bazie tranzystorów N-MOSFET o maksymalnym prądzie ciągłym 1 A. Wyjścia są zabezpieczone przed przepięciami generowanymi z obciążeń indukcyjnych, zatem mogą bezpośrednio sterować przekaźnikami elektromagnetycznymi, małymi zaworami, elektromagnesami czy silnikami na napięcie stałe. Maksymalne napięcie na wyjściach nie może przekraczać 32 V.
Podłączenie komponentów do wyjść modułu należy wykonać tak, jak na poniższym rysunku.

Wejścia analogowe
KAmod ESP32-C3 DIN ma 2 wejścia analogowe połączone ze zintegrowanym, 12-bitowym przetwornikiem ADC. Wejścia analogowe zostały wyposażone w dzielniki napięcia z rezystorami 100 k/10 k, co daje współczynnik podziału 0,09 i pozwala na pomiar napięcia w zakresie do ok. 32 V.
| Kanał pomiarowy ADC | Złącze / wyjście | Uwagi |
|---|---|---|
| ADC0-1 | J8-2 / OUT 1 | Współdzielone z wyjściem OUT 1 / max 32 V |
| ADC0-0 | J8-3 / OUT 2 | Współdzielone z wyjściem OUT 2 / max 32 V |

Wejścia analogowe IN 1/2 są połączone z wyjściami OUT 1/2 i jeśli dane wyjście będzie załączone to odczyt wartości analogowej będzie wskazywał wartość bliską 0. Jeśli zamierzamy korzystać z wejścia analogowego to należy uniemożliwić załączenie odpowiadającego mu wyjścia.
Nie jest zalecane podłączenie bezpośrednio do wejść analogowych IN 1/2 napięcia zasilania np z zasilacza czy akumulatora. W razie pomyłki i załączenia wyjścia zostanie ono uszkodzone. Napięcie z zasilacza/akumulatora należy dołączyć do wejścia IN1/2 przez niewielki rezystor 100…1000 Ω.
Przetwornik ADC zintegrowany w module ES32-C3 ma rozdzielczość 12 bitów ale nie umożliwia osiągnięcia precyzyjnych pomiarów napięć ze względu na dużą nieliniowość, niestabilny offset i mało precyzyjne napięcie odniesienia.
Komunikacja Wi-Fi
KAmod ESP32-C3 DIN jest wyposażony w moduł komunikacji Wi-Fi typu ESP32-C3-WROOM-02U. Jego podstawowe parametry to:
- pasmo częstotliwości: 2,4 GHz
- standard komunikacji: kompatybilny z IEEE 802.11 b/g/n
- komunikacja bluetooth: Bluetooth LE, Bluetooth 5, Bluetooth mesh
- wyposażony w złącze antenowe typu U.FL

Do poprawnego działania modułu komunikacji Wi-Fi należy dołączyć kompatybilną antenę poprzez złącze U.FL znajdujące się na płytce modułu.

Interfejs USB i programowanie modułu
Amod ESP32-C3 DIN jest wyposażony w interfejs USB ze złączem USB-C. Podstawowe funkcje interfejsu to:
- działa jak konwerter USB-UART
- służy do programowania modułu ESP32-C3-WROOM-02U
- umożliwia monitorowanie działania aplikacji poprzez przesyłanie komunikatów interfejsem szeregowym
- jest opcjonalnym złączem zasilania

Programowanie poprzez interfejs USB wymaga uruchomienia tzw. bootloadera. W tym celu, gdy KAmod ESP32-C3 DIN jest podłączony przewodem USB do komputera, należy wykonać następującą sekwencję:
- wciskamy i trzymamy wciśnięty przycisk RST
- wciskamy i trzymamy wciśnięty przycisk PRG, zaświeci się dioda LED09
- zwalniamy przycisk RST, ale trzymamy wciśnięty przycisk PRG
- po chwili zwalniamy również przycisk PRG.
W ten sposób zostanie uruchomiony bootloader, który umożliwia programowanie modułu ESP32-C3 np. poprzez Arduino IDE.
Interfejs RS485
KAmod ESP32-C3 DIN jest wyposażony w interfejs RS485 o następujących parametrach:
- transceiver ST485
- szybkość komunikacji do 1 Mbps
- zabezpieczenie przeciwprzepięciowe
Przyporządkowanie linii GPIO zostało opisane w tabeli.
| Linia GPIO | Sygnał RS485 | Opis |
|---|---|---|
| GPIO21 | TXD | Wyjście danych na magistralę RS485 |
| GPIO20 | RXD | Wejście danych z magistrali RS485 |
| GPIO10 | DE/RE | Sterowanie kierunkiem transmisji - stan wysoki (H) aktywuje nadawanie na magistralę RS485 |

Interfejs I2C
Interfejs I2C został wyprowadzony jako gniazdo JST 1 mm określane jako Q-Wire, które jest kompatybilne ze standardami Qwiic oraz Stemma QT. Dodatkowo na złączu dostępne jest napięcie 3,3 V o wydajności ok. 300 mA. Funkcje wyprowadzeń zostały opisane w tabeli.
| Złącze/styk | Rodzaj sygnału | Opis/uwagi |
|---|---|---|
| Q-Wire / 1 | Masa zasilania (GND) | Masa zasilania |
| Q-Wire / 2 | Zasilanie 3,3 V | Maksymalne obciążenie ok 300 mA |
| Q-Wire / 3 | Sygnał danych - SDA.
Podłączony do GPIO03 |
Zawiera rezystor pull-up 2,2 k do 3,3 V |
| Q-Wire / 4 | Sygnał taktujący - SCL.
Podłączony do GPIO02 |
Zawiera rezystor pull-up 2,2 k do 3,3 V |

Złącza JST 1 mm w standardzie Q-Wire
Złącze szpilkowe Int I/O
Na płytce modułu KAmod ESP32-C3 DIN znajduje się listwa szpilek typu goldpin, oznaczona Int I/O. Na szpilkach wyprowadzone są wybrane linie GPIO - dokładny opis znajduje się w tabeli.
| Szpilka | Rodzaj sygnału | Opis/uwagi |
|---|---|---|
| Int I/O - 1 | Zasilanie 3,3 V | Maksymalne obciążenie ok 300 mA |
| Int I/O - 2 | GND | Masa zasilania |
| Int I/O - 3 | GPIO02 | Połączony z Interfejsem I2C - SCL |
| Int I/O - 4 | GPIO03 | Połączony z Interfejsem I2C - SDA |
| Int I/O - 5 | GPIO00 | Połączony z wejściem przetwornika ADC0-0 |
| Int I/O - 6 | GPIO01 | Połączony z wejściem przetwornika ADC0-1 |
| Int I/O - 7 | GPIO20 | Połączony z wejściem danych z magistrali RS485 |
| Int I/O - 8 | GPIO10 | Połączony z sygnałem DE/RE (sterowanie RS485) |
| Int I/O - 9 | GPIO21 | Połączony z wyjściem danych na magistralę RS485 |

Funkcje kontrolek LED i przycisków
| Przycisk | Rodzaj sygnału | Funkcja |
|---|---|---|
| RST | EN | Wykonuje restart mikrokontrolera ESP32-C3 i uruchamia ponownie program sterujący |
| PRG | GPIO09 | Uruchamia bootloader jeśli jest wciśnięty w trakcie restartu mikrokontrolera |
| Kontrolka LED | Rodzaj sygnału | Funkcja |
|---|---|---|
| PWR | Zasilanie 3,3 V | Sygnalizuje prawidłowe zasilanie modułu |
| LED21 | GPIO21
stan aktywny niski (L) |
Połączona z wyjściem danych na magistralę RS485, sygnalizuje transmisję przez RS485 |
| LED08 | GPIO08
stan aktywny niski (L) |
Może być dowolnie sterowana |
| LED09 | GPIO09
stan aktywny niski (L) |
Połączona równolegle z przyciskiem PRG.
Linia GPIO09 powinna być skonfigurowana jako Open Drain IN/OUT |

Zasilanie
KAmod ESP32-C3 DIN powinien być zasilany napięciem stałym o wartości z zakresu od 7 do 32 V. Pobór prądu samego modułu nie przekracza 100 mA w czasie normalnej pracy.
Alternatywnie moduł może być zasilany napięciem stałym 5 V poprzez złącze USB-C.

Wymiary
Wymiary modułu KAmod ESP32-C3 DIN to 84,5 x 29 x 12 mm.

Płytka została tak zaprojektowana, że może być umieszczona w obudowie typu Z106 zamontowanej na szynie DIN35.

Aplikacja testowa
Dla KAmod ESP32-C3 DIN została opracowana aplikacja testowa, która pozwala sprawdzić działanie modułu oraz może być bazą do rozbudowy. Kod źródłowy dostępny jest na github KAMAMI-Labs:
https://github.com/KAMAMI-Labs/KAmod-ESP32-C3-DIN.git
