Wpis z mikrobloga

Hej mam pytanie co do RS485. Załóżmy, że z poziomu RaspberryPi chciałbym komunikować się z wieloma urządzeniami podłączonymi do tej samej magistrali. RPI byłoby masterem i to ono inicjowałoby komunikację z innymi urządzeniami. Niemniej jednak nie do końca rozumiem jak te urządzenia powinno się łaczyć. Czy ja dobrze rozumiem, że do każdego urządzenia musiałbym dokupić taki konwerter: klik a następnie stworzyć coś w rodzaju huba? Przygotowałem też schemat jak to sobie wyrobarażam.

Jes trochę informacji na necie, ale nie znalazłem nic od takiego praktycznego punku widzenia. Co właściwie robi ten konwerer? Zmienia napięcia stosowanie do standardu RS485? Czy są jakieś gotowe huby gdzie mógłbym podłaczyć urządzenia w schemacie jak podałem niżej?

#elektronika #embedded
Pobierz bielu000 - Hej mam pytanie co do RS485. Załóżmy, że z poziomu RaspberryPi chciałbym k...
źródło: comment_1624606334PFCZEj50zRoj6f9KdyJwQc.jpg
  • 22
@bielu000: Takie coś w takiej formie nie działałoby.
Na szczęście ostro przekombinowałeś i nie musisz robić żadnych hubów. Wszystkie urzadzenia laczysz do jednej magistrali, bez hubow.
RPI——A——-B——C——D——itd
@Tymian: Ale czy generalnie to co ja narysowałem to nie jest to samo? Wszystkie porty na hubie są spięte razem, hub to tylko po to, żeby mieć możliwość wygodnego wpięcia urządzeń do głównej linii. Jeżeli się mylę to proszę o wyjaśnienie :)
@bielu000: Możesz zrobić taki hub jak mówisz, ale nie powinieneś. Odczepy od głównej magistrali do urządzeń powinny mieć jak najmniejszą długość. Ja robię tak że płytka wykonawcza ma 2 porty RJ45 spięte równolegle - jeden robi za wejście drugi za wyjście.
@bielu000: tak, z huba wywalasz, przy host i każdym slave zostawiasz.

a dlaczego by to nie zadziałało w hubie to dlatego że każdy scalak pin RO obsługuje w trybie najpewniej push-pull.
Wtedy jak jeden (slave) zacznie gadać to będzie "walczyć" z resztą która chce utrzymać stan IDLE który jest na ich liniach RS485. Sygnał się #!$%@? i konwerter przy procku gówno zobaczy.
@bielu000: te całe konwertery są dlatego, że RS485 to linia różnicowa. One nie tyle konwertują napięcia, bo poziomy napięć tak naprawdę mogą być te same, co je odwracają. UART produkuje 0 albo 1 (ileś tam woltów). W RS485 masz kabelki A i B i raz jeden jest dodatni względem drugiego a raz odwrotnie. Konwerter zmienia polaryzację. W sumie trochę jak prąd przemienny w gniazdku. Daje to mniejszą podatność na zakłócenia. Trzeba
Pobierz zarowka12 - @bielu000: te całe konwertery są dlatego, że RS485 to linia różnicowa. On...
źródło: comment_1624612358jLmpa7XWzTO4i1F4rGIFf4.jpg
@zarowka12: Dzięki wielkie za bardzo obszerne wyjaśnienie!

Mam jeszcze pytanie co do samych konwerterów.

@Tymian:
@atehxx:
@zarowka12:

Czy coś z tej listy powinno być ok? Chciałbym aby było zasilane 3.3V

klik

Nie patrzyłem jeszcze w konkretne datasheeet, ale czy takie układy obstawia się generalnie jeszcze jakimiś dodatkowymi elementami typu kondensatory, rezystory itp?
@bielu000: w RS232 musisz wytwarzać napięcia rzędu +-12V i konwerter ma przetwornicę (pompę ładunku), stąd kondensatory. Tutaj nic takiego nie jest potrzebne. Jedynie sama linia ma rezystory terminujące do wygaszania odbić. Ten scalak wygląda ok.
@zarowka12: @atehxx:
a czy np zakładając że zrobiłbym sobie taki prosty hub jak wyżej czy miałoby to sens jeżeli dodatkowo oprócz tych linii do danych puściłbym dodatkowo zasilanie? Np hub podpięty do zasilania i dodatkowo każde urządzenie podpięte przez RJ11mialoby zapewnione zasilanie. Ma to sens czy raczej nie?
@bielu000: Jasne że możesz, tylko pamiętaj że hub jest kiepskim pomysłem generalnie - powinno być magistrala liniowa a nie gwieździsta czy coś.
Ja puszczam zwykle po RJ45, 2x +12V, 2x GND, para na RS485 i para wolna, albo drugi RS485 jak potrzeba
@bielu000 możesz dać zasilanie. Scalaki spokojnie mogą biegać na 3.3V jeśli tak jest napisane w datasheet.
Jedynie nie rób długich kabli i pilnuj zużycia prądu żeby spadki napięcia na kablach zasilajacych nie robiło Ci psikusow.
A te scalaki to tradycyjnie dajesz przy ich zasilaniu po 100nF i może 4u7F żeby miały stabilnie.
@bielu000 mimo wszystko pomysł huba nie jest dobry tak na przyszłość. Magistrala powinna iść sobie a każdy slave powinien być wpięty w nią "jeden za drugim" Jak na rysunkach.
Rozgwiezdzanie magiatrali to proszenie się o kłopoty.
Ofc będzie działać jak to będzie do 5-10m od huba.
Ale powyżej zesra się to.