Minimoduł z transceiverem CAN

Minimoduł z transceiverem CAN

Niewielki moduł transceivera magistrali CAN szczególnie przydatny w rozmaitych układach sterowania, m.in. w automatyce budynkowej czy elektronice samochodowej. Okaże się szczególnie użyteczny, gdy chcemy poeksperymentować z Arduino UNO R4 lub innymi płytkami wyposażonymi w procesory z wbudowanym kontrolerem CAN – a pozbawionymi układu transceivera (drivera) magistrali.

Podstawowe parametry:
  • konstrukcja oparta na scalonym transceiverze CAN typu SN65HVD230,
  • wbudowana ochrona przeciwprzepięciowa i przeciwzwarciowa,
  • wbudowane terminatory magistrali CAN,
  • wybór szybkości interfejsu za pomocą zworki,
  • kompatybilność z systemami zasilanymi napięciem od 2,7 V do 5 V,
  • wbudowana przetwornica DC/DC typu buck-boost oraz translatory poziomów.

Moduł korzysta z układu transceivera CAN typu SN65HVD230, którego budowę pokazano na rysunku 1.

Rysunek 1. Budowa wewnętrzna SN65HVD230 (za notą TI)

Układ zawiera wszystko, co jest konieczne do spełnienia wymogów standardów CAN zgodnie z normą ISO11898-2, a jego aplikacja ogranicza się do zaledwie kilku elementów zewnętrznych.

Schemat nakładki zaprezentowano na rysunku 2. Aplikację SN65HVD230 uzupełniają elementy zabezpieczające driver U3 oraz terminujące magistralę CAN. Dioda TVS1 chroni transceiver przed skutkami wyładowań ESD i przepięć, a bezpieczniki polimerowe F1, F2 – przed skutkami zwarć linii magistrali.

Rysunek 2. Schemat nakładki

Przełącznik RT umożliwia odłączenie rezystorów terminujących R4, R5 w aplikacjach w których nakładka nie jest „skrajnym” urządzeniem magistrali CAN. W układzie zastosowano schemat terminacji dzielonej z użyciem elementów R4, R5 i C6, korzystający z potencjału VREF=VCC/2 układu U3 w celu stabilizacji napięcia trybu wspólnego (CM). Magistrala CAN wyprowadzona została z transceivera na złącze sprężynowe CANOUT typu WAGO250.

Zasilanie i sygnały sterujące CAN-RT/TX doprowadzone zostały do złącza CAN. Aby zapewnić uniwersalność modułu i umożliwić współpracę z systemami 2,7...5 V, płytka uzupełniona została o przetwornicę DC/DC typu buck-boost na bazie układu U1 typu TPS63031, dostarczającą napięcia 3,3 V (niezależnie od wartości napięcia wejściowego) do zasilania układów U2, U3. Zwora CRTX umożliwia skrosowanie sygnałów CANRX/TX w zależności od sposobu ich wyprowadzenia z układu nadrzędnego, bez konieczności modyfikowania przewodów Grove. Diody LED RXD/TXD (buforowane układem U4) sygnalizują aktywność transmisji w obydwu kierunkach. Układ U2 (TXU0202) jest translatorem poziomów z dwoma kanałami o ustalonym kierunku (1:1), dopuszczającym zasilanie napięciem 1,1...5,5 V każdej ze stron A/B układu. W module zastosowano go do dopasowania poziomów transceivera U3 (pracującego ze stałym zasilaniem 3,3 V), niezależnie od standardu i zasilania sygnału na złączu CAN. Ułatwia to prototypowanie, bez względu na zastosowany standard napięciowy czy rodzaj wybranej platformy.

Zwora SPD (domyślnie zwarta) umożliwia sterowanie trybem pracy transceivera U3. Ustawienie stanu niskiego poprzez połączenie zwory SPD (GND na wyprowadzeniu RS) aktywuje tryb High-Speed i pełną funkcjonalność U3. Włączenie pomiędzy wyprowadzenie RS a masę GND rezystora 10…100 kΩ, (w opisywanym modelu R1 ma wartość 10 kΩ) umożliwia określenie szybkości narastania zboczy na wyjściu transceivera. Z rezystorem 10 kΩ szybkość narastania wynosi ok. 15 V/ μs, natomiast z rezystorem 100 kΩ – ok. 2 V/ μs. Wartość rezystora można dobrać w zależności od akceptowalnych zakłóceń EMI – niższa wartość R1 i dłuższe czasy narastania redukują poziom emitowanych zaburzeń. Konstrukcja modelu nie implementuje natomiast trybu obniżonego poboru mocy, w którym aktywny jest tylko odbiornik CAN. Tryb ten można uruchomić doprowadzając do wyprowadzenia RS stan wysoki (3,3 V).

Układ zmontowany został na dwustronnej płytce drukowanej o formacie zgodnym ze standardem Grove. Rozmieszczenie elementów pokazano na rysunku 3. Sposób montażu jest tradycyjny nie wymaga dokładniejszego opisu.

Rysunek 3. Rozmieszczenie elementów na płytce modułu

Gotowy moduł zaprezentowano na fotografii tytułowej.

Moduł działa od razu po podłączeniu zasilania i nie wymaga specjalnego uruchamiania. Szybkiego sprawdzenia nakładki można dokonać za pomocą Arduino UNO R4, przy użyciu szkiców dostępnych w środowisku ArduinoFile → Examples → Arduino_CAN → CANWrite/CANRead zgodnie z opisem dostępnym na stronie https://docs.arduino.cc/tutorials/uno-r4-minima/can/. W tym celu potrzebne są dwie płytki UNO R4 w dowolnej wersji. Na płytkach Grove_CANDRV aktywujemy zworą RT (obie pozycje włączone) rezystory terminujące, łączymy odcinkiem skrętki wyprowadzenia CANH i CANL złączy CANOUT w obu nakładkach. Sygnały złącza CAN łączymy zaś z wyprowadzeniami CANRX/TX Arduino i napięciem zasilania 5 V. W przypadku R4 Minima są to wyprowadzenia D4:CANTX0 i D5:CANRX0, a w przypadku wersji Wi-Fi – piny D10:CANTX0 i D13:CANRX0. Ustawiamy zwory CRTX w pozycji poziomej, a zworę SPD zwieramy na obu modułach. Na jedną z płytek R4 ładujemy szkic CANWrite, na drugą – CANRead i sprawdzamy poprawność działania (w razie potrzeby zmieniamy ustawienie zwory CRTX). Ze względu na identyczne identyfikatory USB Minima i Wi-Fi, ładowanie szkicu najlepiej wykonać sekwencyjnie podłączając najpierw jedną, później drugą płytkę, bo środowisko nie jest w stanie poprawnie wykryć dwóch płytek z identycznym VID/PID. Po resecie płytek szkice powinny nadawać i odbierać testową transmisję.

Jeżeli wszystko działa poprawnie, modułu można użyć we własnej aplikacji.

Adam Tatuś

Wykaz elementów:
Rezystory:
  • R1...R3: 10 kΩ (SMD 0603, 1%)
  • R4, R5: 60,4 Ω (SMD 0805, 1%, typ ERJP06F60R4V)
  • R6, R7: 330 Ω (SMD 0603, 1%)
  • R8: 2,2 kΩ (SMD 0603, 1%)
Kondensatory:
  • C1, C2, C8: 10 μF (SMD 0603, X7R, 10 V)
  • C3...C5, C7, C9: 100 nF (SMD 0603, X7R, 10 V)
  • C6: 10 nF (SMD 0805, X7R, 50 V)
Półprzewodniki:
  • LD1: dioda LED czerwona (SMD 0603)
  • LD2: dioda LED żółta (SMD 0603)
  • LD1: dioda LED zielona (SMD 0603)
  • TVS1: dioda zabezpieczająca PESD2CANFD24U (SOT-23)
  • U1: TPS63031DSK (PWSON10)
  • U2: TXU0202DCU (VSSOP8_050)
  • U3: SN65HVD230 (SO8)
  • U4: 74LVC2G34GW.125 (SC88)
Pozostałe:
  • L1: 2,2 μH (typ DJNR3015-2R2)
  • CAN: złącze Grove proste
  • CANOUT: złącze sprężynowe Wago (WAGO250-3)
  • CRTX, RT: złącze IDC4 + zwory 2 szt.
  • F1, F2: bezpiecznik polimerowy 16 V 250 mA (SMD 1206, typ PTS120616V025)
  • SPD: listwa SIP2 + zwora
Artykuł ukazał się w
Elektronika Praktyczna
sierpień 2024
DO POBRANIA
Materiały dodatkowe
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik grudzień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio listopad - grudzień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje listopad - grudzień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna grudzień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich grudzień 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów