Actions

KAmodRPi Pico RS485/RS232 (PL): Difference between revisions

From Kamamilabs.com - Wiki

 
(30 intermediate revisions by the same user not shown)
Line 1: Line 1:
__jzpdf__
__jzpdf__
==== Opis ====
==== Opis ====
<b>KAmodRPi Pico RS485/RS232 - moduł UART-RS485/RS232 do Raspberry Pi Pico</b>
<b>KAmodRPi Pico RS485/RS232 - moduł RS485/RS232 do Raspberry Pi Pico</b><br>
Moduł jest przeznaczony do szeregowej transmisji danych pomiędzy płytkami z serii Raspberry Pi Pico a urządzeniami zewnętrznymi, które wyposażone są w interfejs zgodny ze standardem RS-485 lub z klasycznym portem RS-232C (urządzenia z portem UART TTL (5 V), 3,3 V lub podobnym nie są obsługiwane).<br>
Moduł jest przeznaczony do szeregowej transmisji danych pomiędzy płytkami z serii Raspberry Pi Pico a urządzeniami zewnętrznymi, które dysponują interfejsem RS-485 lub klasycznym portem RS-232C (urządzenia z portem UART TTL 5/3,3 V lub podobnym nie są obsługiwane). Interfejsy są sterowane, jak klasyczne interfejsy UART, wyłącznie sygnałami TX i RX, bez dodatkowych linii sterujących. Moduł znajdzie zastosowanie w instalacjach przemysłowych, automatyce budynkowej, systemach wbudowanych, serwisie urządzeń elektronicznych, a także podczas prototypowania i testowania urządzeń wyposażonych w łącze szeregowe typu RS-485 lub RS-232.  
Moduł znajdzie zastosowanie w instalacjach przemysłowych, automatyce budynkowej, systemach wbudowanych, serwisie urządzeń elektronicznych, a także podczas prototypowania i testowania urządzeń wyposażonych w łącze szeregowe typu RS-485 lub RS-232.
<center>
[[File: KAmod_RPI_PICO_RS485_RS232_2.jpg|700px]]
[[File: KAmod_RPI_PICO_RS485_RS232_3.jpg|700px]]
</center>
 
 
<hr>
<hr>
==== Podstawowe cechy i parametry ====
==== Podstawowe cechy i parametry ====
* 1x 3-torowa listwa rozłączalna (RS-232: RX, TX, GND)
* 3-torowe rozłączalne złącze typu Phoenix MC 3,81 mm (RS-232: RX, TX, GND)
* 1x 3-torowa listwa rozłączalna (RS-485: A, B, GND)
* 3-torowe rozłączalne złącze typu Phoenix MC 3,81 mm(RS-485: A, B, GND)
* Zasilanie: 3,3 V DC + 5 V DC (pobierane bezpośrednio z modułu Raspberry Pi Pico)
* Diody LED sygnalizujące obecność napięcia zasilania modułu oraz kierunki transmisji na obydwu portach szeregowych
* Diody LED sygnalizujące obecność napięcia zasilania modułu oraz kierunki transmisji na obydwu portach szeregowych
* Wbudowane zabezpieczenia ESD na wszystkich liniach portów RS-232 oraz RS-485
* Wbudowane zabezpieczenia ESD na wszystkich liniach portów RS-232 oraz RS-485
* Interfejs RS485 half-duplex z automatycznym wykrywaniem kierunku transmisji
* Interfejs RS232 full-duplex, sterujący liniami RXD i TXD
* Zasilanie: 3,3 V DC + 5 V DC (pobierane bezpośrednio z modułu Raspberry Pi Pico)
* Wymiary PCB: 52 x 23 mm
* Wymiary PCB: 52 x 23 mm
<br>
<hr>
<hr>
==== Wyposażenie standardowe ====
==== Wyposażenie standardowe ====


Line 25: Line 35:
*Zmontowany i uruchomiony moduł<br>
*Zmontowany i uruchomiony moduł<br>
|}
|}
[[File:f.jpg|none|700px|thumb|center]]
[[File:KAmod_RPI_PICO_RS485_RS232_5.jpg|none|800px|thumb|center]]
</center>
</center>
<hr>
<hr>
Line 33: Line 43:
[[File:KAmodRPi_Pico_RS485_RS232_sch.png|none|900px|thumb|center]]
[[File:KAmodRPi_Pico_RS485_RS232_sch.png|none|900px|thumb|center]]
</center>
</center>
<br>
<hr>
<hr>


==== Widok płytki drukowanej ====
==== Kontrolki sygnalizujące ====
<center>
{| class="wikitable"  style="width: 1000px;"
|-
! style=";text-align: center;"|'''Kontrolka'''
! style="text-align: center;"|'''Funkcja'''
|-
| style="text-align: center;"|<b>PWR</b>
| style="text-align: left;"|Świecenie diody '''LED PWR''' oznacza obecność zasilania
 
|-
| style="text-align: center;"|<b>RX</b> 232
| style="text-align: left;"|Miganie diody LED oznacza odbieranie danych przez RPi Pico z magistrali RS232
|-
| style="text-align: center;"|<b>TX</b> 232
| style="text-align: left;"|Miganie diody LED oznacza nadawanie danych przez RPi Pico na magistralę RS232
|-
| style="text-align: center;"|<b>A</b> 485
| style="text-align: left;"|Miganie diody LED oznacza odbieranie danych przez RPi Pico z magistrali RS485
|-
| style="text-align: center;"|<b>B</b> 485
| style="text-align: left;"|Miganie diody LED oznacza nadawanie danych przez RPi Pico na magistralę RS485
|}
</center>
<br>
<center>
[[File:KAmodRPi_Pico_RS485_RS485_leds.png|none|700px|thumb|center]]
</center>
<br>
<hr>
<hr>
==== Elementy obsługowe ====
=====<span style="color:#FFFFFF; background:#ff9900 ">Diody LED</span>=====


======<span style="color:#FFFFFF; background:#009999 ">Wskaźnik napięcia zasilającego</span>======
====Przycisk reset====
Przycisk '''RES''' służy do natychmiastowego ponownego uruchomienia mikrokontrolera dołączonego modułu RPI Pico poprzez chwilowe zwarcie pinu RUN do masy (GND)
<center>
[[File:KAmodRPi_Pico_RS485_RS232_res.png|none|700px|thumb|center]]
</center>
<br>
<hr>


======<span style="color:#FFFFFF; background:#009999 ">Wskaźnik nadawania (RS-232) przez RPi Pico</span>======
====Złącza====
<center>
{| class="wikitable"  style="width: 1000px;"
|-
! style="text-align: center;"|<b>Interfejs</b>
! style="text-align: center;"|<b>Element</b>
! style="text-align: center;"|<b>Funkcja</b>
|-
| rowspan="1"; style="text-align: center;"|<b>RS232</b>
| style="text-align: center;"|Złącze <br>Phoenix MC 3,81 mm <br>
| style="text-align: center;"|Złącze interfejsu RS-232 (full-duplex)<br> styk 1 – RX; styk 2 – GND; styk 3 – TX
|-


======<span style="color:#FFFFFF; background:#009999 ">Wskaźnik odbioru (RS-232) przez RPi Pico</span>======
| rowspan="1"; style="text-align: center;"|<b>RS485</b>
 
| style="text-align: center;"|Złącze <br>Phoenix MC 3,81 mm <br>
======<span style="color:#FFFFFF; background:#009999 ">Wskaźnik nadawania (RS-485) przez RPi Pico</span>======
| style="text-align: center;"|Złącze interfejsu różnicowego RS-485 (half-duplex)<br> styk 1 – B+; styk 2 – GND; styk 3 – A+
 
|-
======<span style="color:#FFFFFF; background:#009999 ">Wskaźnik odbioru (RS-485) przez RPi Pico</span>======
|}
 
</center>
=====<span style="color:#FFFFFF; background:#ff9900 ">Przycisk reset</span>=====
<br>
 
<center>
=====<span style="color:#FFFFFF; background:#ff9900 ">Złącza</span>=====
[[File:KAmodRPi Pico RS485 RS485 conn.png|none|1100px|thumb|center]]
======<span style="color:#FFFFFF; background:#009999 ">Złącze interfejsu RS-232 (full-duplex)</span>======
</center>
======<span style="color:#FFFFFF; background:#009999 ">Złącze interfejsu różnicowego RS-485 (half-duplex)</span>======
<hr>
<hr>


==== Podłączenie ====
==== Podłączenie ====
Moduł jest kompatybilny ze wszystkimi modułami z serii Raspberry Pi Pico, czyli:
Moduł jest kompatybilny ze wszystkimi modułami z serii Raspberry Pi Pico, z wlutowanymi złączami szpilkowymi, czyli:
* Raspberry Pi Pico (-H)
* Raspberry Pi Pico
* Raspberry Pi Pico W (-H)
* Raspberry Pi Pico W
* Raspberry Pi Pico 2 (-H)
* Raspberry Pi Pico 2
* Raspberry Pi Pico 2 W (-H)
* Raspberry Pi Pico 2 W
 
<br>
Przed podłączeniem modułu KAmod RPi Pico RS-485/RS-232 zaleca się odłączyć zasilanie od płytki Raspberry Pi Pico.<br>
Przed podłączeniem modułu KAmod RPi Pico RS-485/RS-232 należy odłączyć zasilanie od płytki Raspberry Pi Pico.<br><br>
W przypadku stosowania płytki RPi Pico/2/W/2W w wersji bez fabrycznie wlutowanych złączy szpilkowych (tj. bez dopiska -H), do której listwy goldpin zostały wlutowane samodzielnie, należy upewnić się, że wtyki umieszczone po właściwej stronie płytki modułu (luty powinny znajdować się po stronie obsadzonej elementami).<br><br>
W przypadku płytek z samodzielnie wlutowanymi złączami szpilkowymi należy upewnić się, że sygnały opisane na połączonych płytkach ze sobą zgodne.<br><br>
Uwaga! Płytkę KAmod RPi Pico RS-485/RS-232 należy podłączyć w sposób pokazany na poniższej fotografii, tj. stroną z gniazdem RS-232 w kierunku złącza Micro USB modułu Raspberry Pi Pico.<br><br>
{| class="wikitable"
<foto.jpeg>
|style="border-color: red;background: #FFCCCC; color: black;"| '''Uwaga!''' <br>Płytkę KAmod RPi Pico RS-485/RS-232 należy podłączyć w sposób pokazany na poniższej fotografii, tj. stroną z gniazdem RS-232 w kierunku złącza Micro USB modułu Raspberry Pi Pico.
|}
<center>
[[File:KAmod_RPI_PICO_RS485_RS232_4.jpg|none|600px|thumb|center]]
</center>
Urządzenie zewnętrzne należy podłączyć do modułu KAmod RPi Pico RS-485/RS-232 wybierając odpowiedni port (RS-232 lub RS-485), w zależności od obsługiwanego przez nie standardu komunikacji szeregowej. W każdym przypadku masa urządzenia musi być podłączona do środkowego zacisku listwy rozłączalnej danego portu.<br><br>
Urządzenie zewnętrzne należy podłączyć do modułu KAmod RPi Pico RS-485/RS-232 wybierając odpowiedni port (RS-232 lub RS-485), w zależności od obsługiwanego przez nie standardu komunikacji szeregowej. W każdym przypadku masa urządzenia musi być podłączona do środkowego zacisku listwy rozłączalnej danego portu.<br><br>
Obydwa interfejsy są kontrolowane przez niezależne bloki peryferyjne procesora znajdującego się na płytce RPi Pico.
Obydwa interfejsy są kontrolowane przez niezależne bloki peryferyjne procesora znajdującego się na płytce RPi Pico.
* Interfejs RS-232: UART0
* Interfejs RS-232: UART0, tx=Pin 0, rx=Pin 1
* Interfejs RS-485: UART1
* Interfejs RS-485: UART1, tx=Pin 4, rx=Pin 5
Z tego względu możliwe jest jednoczesne komunikowanie się płytki RPi Pico z dwoma różnymi urządzeniami zewnętrznymi. Należy jednak upewnić się, że potencjał masy obydwu urządzeń zewnętrznych oraz urządzenia, z którego RPi Pico pobiera zasilanie (np. komputera) jest jednakowy. W przeciwnym wypadku może dojść do uszkodzenia modułu lub któregoś z pozostałych urządzeń!
Z tego względu możliwe jest jednoczesne komunikowanie się płytki RPi Pico z dwoma różnymi urządzeniami zewnętrznymi. Należy jednak upewnić się, że potencjał masy obydwu urządzeń zewnętrznych oraz urządzenia, z którego RPi Pico pobiera zasilanie (np. komputera) jest jednakowy. W przeciwnym wypadku może dojść do uszkodzenia modułu lub któregoś z pozostałych urządzeń!



Latest revision as of 09:11, 25 March 2026

Opis

KAmodRPi Pico RS485/RS232 - moduł RS485/RS232 do Raspberry Pi Pico
Moduł jest przeznaczony do szeregowej transmisji danych pomiędzy płytkami z serii Raspberry Pi Pico a urządzeniami zewnętrznymi, które dysponują interfejsem RS-485 lub klasycznym portem RS-232C (urządzenia z portem UART TTL 5/3,3 V lub podobnym nie są obsługiwane). Interfejsy są sterowane, jak klasyczne interfejsy UART, wyłącznie sygnałami TX i RX, bez dodatkowych linii sterujących. Moduł znajdzie zastosowanie w instalacjach przemysłowych, automatyce budynkowej, systemach wbudowanych, serwisie urządzeń elektronicznych, a także podczas prototypowania i testowania urządzeń wyposażonych w łącze szeregowe typu RS-485 lub RS-232.



Podstawowe cechy i parametry

  • 1× 3-torowe rozłączalne złącze typu Phoenix MC 3,81 mm (RS-232: RX, TX, GND)
  • 1× 3-torowe rozłączalne złącze typu Phoenix MC 3,81 mm(RS-485: A, B, GND)
  • Diody LED sygnalizujące obecność napięcia zasilania modułu oraz kierunki transmisji na obydwu portach szeregowych
  • Wbudowane zabezpieczenia ESD na wszystkich liniach portów RS-232 oraz RS-485
  • Interfejs RS485 half-duplex z automatycznym wykrywaniem kierunku transmisji
  • Interfejs RS232 full-duplex, sterujący liniami RXD i TXD
  • Zasilanie: 3,3 V DC + 5 V DC (pobierane bezpośrednio z modułu Raspberry Pi Pico)
  • Wymiary PCB: 52 x 23 mm



Wyposażenie standardowe

Kod Opis
KAmodRPi Pico RS485/RS232
  • Zmontowany i uruchomiony moduł

Schemat elektryczny



Kontrolki sygnalizujące

Kontrolka Funkcja
PWR Świecenie diody LED PWR oznacza obecność zasilania
RX 232 Miganie diody LED oznacza odbieranie danych przez RPi Pico z magistrali RS232
TX 232 Miganie diody LED oznacza nadawanie danych przez RPi Pico na magistralę RS232
A 485 Miganie diody LED oznacza odbieranie danych przez RPi Pico z magistrali RS485
B 485 Miganie diody LED oznacza nadawanie danych przez RPi Pico na magistralę RS485




Przycisk reset

Przycisk RES służy do natychmiastowego ponownego uruchomienia mikrokontrolera dołączonego modułu RPI Pico poprzez chwilowe zwarcie pinu RUN do masy (GND)



Złącza

Interfejs Element Funkcja
RS232 Złącze
Phoenix MC 3,81 mm
Złącze interfejsu RS-232 (full-duplex)
styk 1 – RX; styk 2 – GND; styk 3 – TX
RS485 Złącze
Phoenix MC 3,81 mm
Złącze interfejsu różnicowego RS-485 (half-duplex)
styk 1 – B+; styk 2 – GND; styk 3 – A+



Podłączenie

Moduł jest kompatybilny ze wszystkimi modułami z serii Raspberry Pi Pico, z wlutowanymi złączami szpilkowymi, czyli:

  • Raspberry Pi Pico
  • Raspberry Pi Pico W
  • Raspberry Pi Pico 2
  • Raspberry Pi Pico 2 W


Przed podłączeniem modułu KAmod RPi Pico RS-485/RS-232 należy odłączyć zasilanie od płytki Raspberry Pi Pico.

W przypadku płytek z samodzielnie wlutowanymi złączami szpilkowymi należy upewnić się, że sygnały opisane na połączonych płytkach są ze sobą zgodne.

Uwaga!
Płytkę KAmod RPi Pico RS-485/RS-232 należy podłączyć w sposób pokazany na poniższej fotografii, tj. stroną z gniazdem RS-232 w kierunku złącza Micro USB modułu Raspberry Pi Pico.

Urządzenie zewnętrzne należy podłączyć do modułu KAmod RPi Pico RS-485/RS-232 wybierając odpowiedni port (RS-232 lub RS-485), w zależności od obsługiwanego przez nie standardu komunikacji szeregowej. W każdym przypadku masa urządzenia musi być podłączona do środkowego zacisku listwy rozłączalnej danego portu.

Obydwa interfejsy są kontrolowane przez niezależne bloki peryferyjne procesora znajdującego się na płytce RPi Pico.

  • Interfejs RS-232: UART0, tx=Pin 0, rx=Pin 1
  • Interfejs RS-485: UART1, tx=Pin 4, rx=Pin 5

Z tego względu możliwe jest jednoczesne komunikowanie się płytki RPi Pico z dwoma różnymi urządzeniami zewnętrznymi. Należy jednak upewnić się, że potencjał masy obydwu urządzeń zewnętrznych oraz urządzenia, z którego RPi Pico pobiera zasilanie (np. komputera) jest jednakowy. W przeciwnym wypadku może dojść do uszkodzenia modułu lub któregoś z pozostałych urządzeń!



Testowanie modułu

Aby przetestować moduł można zastosować poniższy skrypt w języku MicroPython. Po wgraniu kodu do pamięci modułu Raspberry Pi Pico (zawierającego uprzednio wgrany firmware z interpreterem MicroPythona) i uruchomieniu, moduł będzie odsyłał wszystkie dane odebrane na wybranym porcie poprzez ten sam interfejs (RS-232 lub RS-485).

from machine import UART, Pin
import time

# --- Konfiguracja UART0 ---
uart0 = UART(0, baudrate=115200, tx=Pin(0), rx=Pin(1))

# --- Konfiguracja UART1 ---
uart1 = UART(1, baudrate=115200, tx=Pin(4), rx=Pin(5))

print("UART echo running...")

while True:
    # UART0
    if uart0.any():
        data = uart0.read()
        uart0.write(data)   # echo

    # UART1
    if uart1.any():
        data = uart1.read()
        uart1.write(data)   # echo

    time.sleep(0.001)