Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Komunikacja UART - jak odległość wpływa na skuteczność transmisji?

pawcio5555 04 Wrz 2018 10:54 141 5
  • #1 04 Wrz 2018 10:54
    pawcio5555
    Poziom 10  

    Cześć!

    Chciałbym podłączyć komputer z uC ATmega328 poprzez UART (a właściwie jakiś adapter wirtual COM na USB).
    Bardzo zależy mi na jakości transmisji. Jakie proponujecie parametry, aby transmisja nie była zakłócana?
    Środowisko: ATmega328 @ 16MHz, do tego chciałbym komunikować się poprzez barierę izolującą galwanicznie ADUM1201.
    Odległość: max 10m.
    Rozumiem, że zastosowanie ekranowanego kabla polepszy parametry transmisji.
    Czy 5V to nie za mało do przesyłania informacji na takiej dużej odległości?

    Pytanie, czy nie będzie się bardziej opłacało wykorzystać światłowód - na pewno nie będzie żadnych zakłóceń i zapewniona jest izolacja galwaniczna od razu...

    Czy macie jakieś doświadczenia związane z transmisją danych, która nie może być zakłócona na takich odległościach?

    0 5
  • #2 04 Wrz 2018 11:11
    Kuniarz
    Moderator Projektowanie

    Wszystko zależy od prędkości transmisji, przy czym warto ją dobrać do częstotliwości kwarcu - jest tabelka w nocie procka, gdzie widnieje % potencjalnych błędów.
    Możesz rozważyć RS485 - to tylko jeden scalaczek za dychę więcej, a zasięg do kilometra. W światłowód bym nie szedł... prędzej konkretna ramka komunikacyjna z CRC.

    0
  • #3 04 Wrz 2018 11:35
    pawcio5555
    Poziom 10  

    Właśnie chyba RS485 byłby najkorzystniejszy.
    Ale zauważyłem, że w tej konfiguracji do dyspozycji mamy tylko jeden kanał różnicowy. Rozumiem, że trzeba wtedy zapewnić okna czasowe dla nadajnika i odbiornika, żeby się nie pogryzły?

    0
  • #5 04 Wrz 2018 13:04
    pawcio5555
    Poziom 10  

    W nocie katalogowej zauważyłem, że są także układy MAX488 zapewniające komunikację w full duplex. Chyba właśnie tego potrzebuję.

    Dodano po 1 [godziny] 25 [minuty]:

    Ostatnie pytanie:
    Czy wariant ekranowania J) jest w przypadku RS485 poprawny?
    Komunikacja UART - jak odległość wpływa na skuteczność transmisji?

    0
  • #6 04 Wrz 2018 13:21
    tmf
    Moderator Mikrokontrolery Projektowanie

    Na 10m to nie kombinuj i daj po prostu max232 i zrób normalne RS232, a nie TTL. Dalsze polepszenie odporności na błędy to już tylko odpowiednia ramka danych i korekta programowa.

    1