Actions

KAmod RPI 485 CAN Hat (PL): Difference between revisions

From Kamamilabs.com - Wiki

Created page with "__jzpdf__ ===== <b>Opis </b>===== <b>KAmod RPI 485&CAN Hat - Moduł z dwoma interfejsami RS485 oraz interfejsem CAN dla Raspberry Pi</b><br> <br> KAmod RPI 485&CAN Hat pozwala w łatwy sposób rozbudować komputerki Raspberry Pi 5 o dwa interfejsy RS485 oraz jeden interfejs CAN 2.0B. Interfejsy zawierają rozbudowane obwody zabezpieczające oraz są odizolowane galwanicznie od obwodów sterujących, co gwarantuje stabilność działania i odporność na zakłócenia i a..."
(No difference)

Revision as of 06:34, 3 June 2025

Opis

KAmod RPI 485&CAN Hat - Moduł z dwoma interfejsami RS485 oraz interfejsem CAN dla Raspberry Pi

KAmod RPI 485&CAN Hat pozwala w łatwy sposób rozbudować komputerki Raspberry Pi 5 o dwa interfejsy RS485 oraz jeden interfejs CAN 2.0B. Interfejsy zawierają rozbudowane obwody zabezpieczające oraz są odizolowane galwanicznie od obwodów sterujących, co gwarantuje stabilność działania i odporność na zakłócenia i awarie. Moduł został zaprojektowany tak, aby był kompatybilny z płytkami serii Raspberry Pi nie tylko w wersji 5. Jest sterowany poprzez 2 interfejsy SPI, dostępne na 40 szpilkowym złączu RPi, oraz w wielu innych płytkach, np Arduino, STM32 itd.

Podstawowe cechy i parametry
  • 2 interfejsy RS485 – sterowane kontrolerem SC16IS752 (SPI→2xUART)
  • 1 interfejs CAN 2.0B – sterowany kontrolerem MCP2515 (SPI→CAN)
  • Interfejsy RS485 wyposażone w 2 izolowane transceivery ADM2483
  • Interfejs CAN wyposażony w izolowany transceiver TJA1052
  • Interfejsy RS485 i CAN odseparowane galwanicznie od odwodów sterujących
  • Możliwość dołączenia rezystorów terminujących 120 Ω do linii każdego interfejsu
  • Maksymalna szybkość komunikacji interesów RS485: 500 kbps
  • Maksymalna szybkość komunikacji interesu CAN: 1 Mbps
  • Sterowanie poprzez dwa interfejsy SPI pracujące z napięciem 3,3 V
  • Automatyczne sterowanie kierunkiem transmisji transceiverów RS485
  • Zasilanie 5 V/0,3 A pobierane z płytki Raspberry Pi lub z dodatkowego źródła
  • Opcjonalne wejście zasilające dostosowane do napięcia z zakresu 8...32 V
  • Stabilizowane wyjście zasilania 5 V, max 0,5 A
  • Łatwy montaż na Raspberry Pi 5, także w wersji z radiatorem RPi Active Cooler
  • Może współpracować z wieloma płytkami z rodziny Raspberry Pi oraz innymi wyposażonymi w interfejsy SPI pracujące z napięciem 3,3 V
  • Wymiary modułu 65x56 mm, wysokość ok. 15 mm (oraz złącze pod płytką o wysokości ok. 13 mm)



Wyposażenie standardowe
Kod Opis
KAmod RPI 485&CAN Hat
  • Zmontowany i uruchomiony moduł
Zestaw montażowy
  • Zestaw śrubek oraz dystansów umożliwiający przykręcenie nakładki do płytki Raspberry
Schemat blokowy


Schemat elektryczny


Schemat elektryczny modułu KAmod RPI 485&CAN Hat można pobrać tutaj: Schemat KAmod RPI 485&CAN Hat

Interfejsy RS485


Interfejs Element Funkcja
RS485-1

Złącze
Szpilki 3x1,2,54 mm
R1J1

Dołączenie rezystora terminującego 120 Ω do linii magistrali RS485-1,
gdy zworka założona na szpilkach 2-3

Złącze
Phoenix MC 3,81 mm
R1J2

Główne złącze magistrali RS485-1, styk 1 – GND; styk 2 – B(-); styk 3 – A(+)

Złącze
Szpilki 3x1, 2,54 mm
R1J3

Dodatkowe złącze magistrali RS485-1, szpilka 1 – GND; szpilka 2 – B(-); szpilka 3 – A(+)

Dioda LED
D7

Świecenie diody sygnalizuje nadawanie/odbieranie danych na liniach sygnałowych interfejsu RS485-1
RS485-2

Złącze
Szpilki 3x1,2,54 mm
R2J1

Dołączenie rezystora terminującego 120 Ω do linii magistrali RS485-2,
gdy zworka założona na szpilkach 2-3

Złącze
Phoenix MC 3,81 mm
R2J2

Główne złącze magistrali RS485-2, styk 1 – GND; styk 2 – B(-); styk 3 – A(+)

Złącze
Szpilki 3x1, 2,54 mm
R1J3

Dodatkowe złącze magistrali RS485-2, szpilka 1 – GND; szpilka 2 – B(-); szpilka 3 – A(+)

Dioda LED
D7

Świecenie diody sygnalizuje nadawanie/odbieranie danych na liniach sygnałowych interfejsu RS485-2


Interfejsy RS485 są sterowane transceiverami typu ADM2483, które zapewniają jednocześnie separację galwaniczną pomiędzy sygnałami sterującymi, a liniami magistrali RS485.

Linie magistrali są oznaczone jako: A(+), B(-) oraz masa GND i są dostępne na złączu typu Phoenix MC (R1J2, R2J2) oraz na szpilkach goldpin o standardowym rastrze 2,54 mm (R1J3, R2J3). Ich rozmieszczenie zostało pokazane na rysunku oraz jest opisane na dolnej stronie płytki modułu.

Linie magistrali RS485 są wyposażone w obwody chroniące przed przepięciami. Założenie zworki na szpilki 2-3 RxJ1 pozwala na dołączenie rezystora terminującego 120 Ω pomiędzy linie A i B interfejsu.

Interfejs CAN


Interfejs Element Funkcja
CAN

Złącze
Szpilki 3x1,2,54 mm
CJ1

Dołączenie rezystora terminującego 120 Ω do linii magistrali CAN,
gdy zworka założona na szpilkach 2-3

Złącze
Phoenix MC 3,81 mm
CJ2

Główne złącze magistrali CAN, styk 1 – GND; styk 2 – CAN L; styk 3 – CAN H

Złącze
Szpilki 3x1, 2,54 mm
CJ3

Dodatkowe złącze interfejsu CAN,

szpilka 1 – GND; szpilka 2 – CAN L; szpilka 3 – CAN H

Dioda LED
D10

Świecenie diody sygnalizuje nadawanie/odbieranie danych na liniach interfejsu CAN


Interfejs CAN jest sterowany transceiverem typu TJA1052, który zapewnia jednocześnie separację galwaniczną pomiędzy sygnałami sterującymi, a liniami magistrali CAN.

Linie magistrali są oznaczone jako: CAN H, CAN L oraz masa GND i są dostępne na złączu typu Phoenix MC (CJ2) oraz na szpilkach goldpin (CJ3) o standardowym rastrze 2,54 mm. Ich rozmieszczenie zostało pokazane na rysunku oraz jest opisane na dolnej stronie płytki modułu.

Linie magistrali CAN są wyposażone w obwody chroniące przed przepięciami. Założenie zworki na szpilki 2-3 CJ1 pozwala na dołączenie rezystora terminującego 120 Ω pomiędzy linie CAN H i CAN L.



Sterowanie RS485


Interfejsy RS485
Sygnał sterujący Funkcja
MOSI1 (SPI 1) Wejście danych SPI kontrolera SC16IS762, połączone do GPIO20 RPi (pin 38 złącza J3)
MISO1 (SPI 1) Wyjście danych SPI kontrolera SC16IS762, połączone do GPIO19 RPi (pin 35 złącza J3)
SCLK1 (SPI 1) Wejście sygnału zegarowego SPI kontrolera SC16IS762, połączone do GPIO21 RPi (pin 40 złącza J3)
RS CE Wejście aktywujące interfejs SPI kontrolera SC16IS762
Domyślnie połączone do GPIO07 (pin 26 złącza J3) - Zwarta zwora JP3
Opcjonalnie połączone do GPIO18 (pin 12 złącza J3) - Zwarta zwora JP4
RS INT Wyjście przerwania IRQ kontrolera SC16IS762 połączone do GPIO24 (pin 18 złącza J3)


Wszystkie sygnały sterujące są wyprowadzone na złączu J1 (40-stykowe, kompatybilne z płytkami Raspberry Pi) oraz na złączu szpilkowym J2. Rozmieszczenie sygnałów zostało pokazane na poniższym rysunku, dodatkowo sygnały na złączu J2 są opisane na dolnej stronie płytki KAmod RPI 485&CAN Hat.

Interfejsy RS485 są realizowane poprzez kontroler SC16IS762, opis działania tego układu jest dostępny w dokumentacji producenta.

Sterowanie CAN


Interfejs CAN
Sygnał sterujący Funkcja
MOSI0 (SPI 0) Wejście danych SPI kontrolera MCP2515 połączone do GPIO10 RPi (pin 19 złącza J3)
MISO0 (SPI 0) Wyjście danych SPI kontrolera MCP2515 połączone do GPIO09 RPi (pin 21 złącza J3)
SCLK0 (SPI 0) Wejście sygnału zegarowego SPI kontrolera MCP2515 połączone do GPIO11 RPi (pin 23 złącza J3)
CAN CE Wejście aktywujące interfejs SPI kontrolera MCP2515
Domyślnie połączone do GPIO08 (pin 24 złącza J3) - Zwarta zwora JP1
Opcjonalnie połączone do GPIO07 (pin 26 złącza J3) - Zwarta zwora JP2
CAN INT Wyjście przerwania IRQ kontrolera MCP2515 połączone do GPIO25 (pin 22 złącza J3)


Wszystkie sygnały sterujące są wyprowadzone na złączu J1 (40-stykowe, kompatybilne z płytkami Raspberry Pi) oraz na złączu szpilkowym J2. Rozmieszczenie sygnałów zostało pokazane na poniższym rysunku, dodatkowo sygnały na złączu J2 są opisane na dolnej stronie płytki KAmod RPI 485&CAN Hat.

Interfejs CAN jest realizowany poprzez kontroler MCP2515, opis działania tego układu jest dostępny w dokumentacji producenta.

Zasilanie


Element Funkcja
Złącze
J1 PWR
Opcjonalne wejście zasilania dostosowane do napięcia z zakresu 8...32 V. Zasila zintegrowany stabilizator impulsowy, który dostarcza napięcia 5 V o wydajności do 0,5 A, do zasilania komponentów modułu KAmod RPI 485&CAN Hat.
Złącze
J2
Na złączu J2 dostępne jest napięcie 5 V ze zintegrowanego stabilizatora. Może posłużyć jako źródło zasilania dla dodatkowych obwodów lub modułów. Pobór prądu nie powinien przekraczać 0,5 A.
Złącze
J1
Na złączu J1 dostępne jest napięcie 5 V dostarczane z płytki bazowej, np. Raspberry Pi. Napięcie to jest połączone przez diodę prostowniczą z zasilaniem 5 V modułu KAmod RPI 485&CAN Hat, zatem moduł jest zasilany z płytki bazowej, ale moduł nie może dostarczać zasilania do płytki bazowej.
Dioda LED D12 Świecenie diody LED D12 oznacza obecność zasilania


Modułu KAmod RPI 485&CAN Hat oferuje różne opcje zasilania:

  • może być zasilany napięciem 5V z płytki bazowej dołączonej do złącza J1, np. Raspberry Pi. Nie jest wymagane zewnętrzne zasilanie;
  • może być zasilany napięciem z zakresu 8...32 V dołączonym do złącza J1 PWR. Wtedy stabilizowane napięcie 5 V jest dostępne na złączu J2, ale nie zasila ono płytki bazowej dołączonej do złącza J1;
  • może być zasilany napięciem stabilizowanym 5 V dołączony do złącza J2, ale nie zasila ono płytki bazowej dołączonej do złącza J1;

Rozmieszczenie złącz i styków oraz ich polaryzację pokazano na rysunku.

Kontrolki sygnalizujące


Kontrolka Funkcja
D7 Świecenie diody sygnalizuje nadawanie/odbieranie danych na liniach sygnałowych interfejsu RS485-1
D5 Świecenie diody sygnalizuje nadawanie/odbieranie danych na liniach sygnałowych interfejsu RS485-2
D10 Świecenie diody sygnalizuje nadawanie/odbieranie danych na liniach sygnałowych interfejsu CAN
D12 Świecenie diody oznacza obecność zasilania


Rozmieszczenie kontrolek sygnalizacyjnych na płytce KAmod RPI 485&CAN Hat zostało pokazane na rysunku.

Konfiguracja sygnałów SPI CE


Sygnał Funkcja
CAN CE Wejście aktywujące interfejs SPI kontrolera MCP2515
Domyślnie połączone do GPIO08 (pin 24 złącza J3) Zwarta zwora JP1
Opcjonalnie połączone do GPIO07 (pin 26 złącza J3) Zwarta zwora JP2
RS CE Wejście aktywujące interfejs SPI kontrolera SC16IS762
Domyślnie połączone do GPIO07 (pin 26 złącza J3) Zwarta zwora JP3
Opcjonalnie połączone do GPIO18 (pin 12 złącza J3) Zwarta zwora JP4


Moduł KAmod RPI 485&CAN Hat realizuje komunikację z płytką bazową np. Raspberry Pi poprzez dwa interfejsy SPI. Sygnały CE – Chip Enable, obu interfejsów mogą być połączone w dwóch konfiguracjach, w zależności od ustawienia zworek JP1...JP4, tak jak opisano w powyższej tabeli.

Zworki są umieszczone na dolnej stronie płytki modułu, co dokładnie obrazuje poniższy rysunek. Domyślnie połączone są zworki JP1 i JP3. W przypadku zmiany konfiguracji należy rozciąć połączone zworki i połączyć odpowiednie zworki za pomocą lutownicy i kropli spoiwa lutowniczego.

Konfiguracja trybu pracy RS485


Sygnał Funkcja
RS1 DE Sygnał sterujący transceiverem interfejsu RS485-1
Domyślnie aktywne jest automatyczne sterowanie sygnałem TXD Zwarta zwora JP8
Opcjonalnie możliwe jest sterowanie sygnałem RTS Zwarta zwora JP7
RS2 DE Sygnał sterujący transceiverem interfejsu RS485-2
Domyślnie aktywne jest automatyczne sterowanie sygnałem TXD Zwarta zwora JP10
Opcjonalnie możliwe jest sterowanie sygnałem RTS Zwarta zwora JP9


Transceivery interfejsów RS485 wymagają sygnału sterującego nadajnikiem magistrali -aktywującego tryb nadawania. Sygnał sterujący może być uzyskiwany z sygnału danych wysyłanych na magistralę - TXD, lub może być doprowadzany niezależnie – poprzez stan linii RTS. Moduł KAmod RPI 485&CAN Hat pozwala na wybranie jednej z tych opcji dla każdego z interfejsów RS485-1 i RS485-2, poprzez ustawienie zworek JP7...JP10, tak jak opisano w powyższej tabeli.

Zworki są umieszczone na dolnej stronie płytki modułu, co dokładnie obrazuje poniższy rysunek. Domyślnie połączone są zworki JP8 i JP10 – tryb automatyczny dla obu interfejsów. W przypadku zmiany konfiguracji należy rozciąć połączone zworki i połączyć odpowiednie zworki za pomocą lutownicy i kropli spoiwa lutowniczego.

Wymiary


Wymiary płytki KAmod RPI 485&CAN Hat to 65x56 mm. Wysokość płytki to ok. 15 mm, dodatkowo złącze na dolnej stronie płytki, pasujące do płytki bazowej, ma wysokość ok 13 mm.

Uruchomienie


Uruchamiamy Raspberry Pi 5 z systemem operacyjnym zainstalowanym na karcie pamięci lub innym, nośniku. Po wyświetleniu pulpitu systemu otwieramy okno konsoli (Terminal) np. za pomocą kombinacji klawiszy Ctrl+Alt+T i wpisujemy:

sudo nano /boot/firmware/config.txt

(we wcześniejszych wersjach systemu operacyjnego plik config.txt był umieszczony bezpośrednio w katalogu /boot)

W pliku, którego treść zobaczymy, należy usunąć komentarz (usunąć znak #) z linii:

dtparam=spi=on

Natomiast, jeżeli takiej linii nie ma to należy ją dopisać.

Następnie na końcu pliku (przewijamy strzałkami do samego dołu) należy dopisać linie:

dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=25,spimaxfrequency=10000000


oraz

dtoverlay=sc16is752-spi1,int_pin=24


Następnie należy zapisać zmiany za pomocą klawiszy Ctrl+O, zamknąć edytor za pomocą klawiszy Ctrl+X i uruchomić system ponownie, np. wpisując polecenie:

sudo reboot


Po wyświetleniu pulpitu systemu otwieramy okno konsoli (Terminal) np. za pomocą kombinacji klawiszy Ctrl+Alt+T i wpisujemy:

sudo dmesg | grep -i spi


Jeśli wcześniejsze etapy zostały wykonane prawidłowo powinno pokazać się takie podsumowanie:

Oznacza to, że zarówno kontroler SC16IS762, jak i MCP2515 zostały prawidłowo zainstalowane w systemie.

Przetestowanie interfejsu CAN wymaga wpisania 3 komend:

sudo ip link set can0 up type can bitrate 1000000
sudo ifconfig can0 up
cansend can0 000#11.22.33.44


Powinna migać dioda LED D10 sygnalizująca aktywność na magistrali CAN.
Interfejsy RS485 można przetestować z użyciem programu minicom, dla RS485-1 należy wpisać:

minicom -D /dev/ttySC0


natomiast dla RS485-2 należy wpisać:

minicom -D /dev/ttySC1


Program minicom pozwala wysyłać znaki wpisywane z klawiatury oraz wyświetla znaki odebrane przez wybrany interfejs RS485. W czasie aktywności interfejsów będą migały diody D5/D7, ale przy znacznych prędkościach transmisji, np. 115200, miganie diod LED będzie ledwo zauważalne.

Linki