Arduino Polska Forum
UART i izolacja za pomocą transoptora - Wersja do druku

+- Arduino Polska Forum (https://forum.arduinopolska.pl)
+-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino)
+--- Dział: Ogólna elektronika (https://forum.arduinopolska.pl/dzial-og%C3%B3lna-elektronika)
+--- Wątek: UART i izolacja za pomocą transoptora (/watek-uart-i-izolacja-za-pomoc%C4%85-transoptora)



UART i izolacja za pomocą transoptora - wieczny_student - 11-12-2017

Witam!

Mam nadzieję, że to właściwy dział, jeśli nie to proszę o przeniesienie.
Otóż mam taki problem, że muszę przesyłać dane między Arduino które pracują na różnych potencjałach przez co konieczne jest ich odizolowanie. Postanowiłem wykorzystać transoptory LTV827, które akurat miałem pod ręką.
Trafiłem na schemat oparty na dwóch PC817 czyli w sumie na LTV827:
[attachment=441]
Zmajstrowałem na płytce stykowej podobny układ ale niestety dane między Arduino nie przechodzą.
Uprościłem układ żeby wyeliminować zbędne połączenia (wybaczcie moje zdolności plastyczne):
[attachment=442]
Prędkości ustawiłem w obu Arduino na 4800, by opóźnienia w zapalaniu/gaszeniu diody w transoptorze nie miały znaczenia. Niestety ciągle nic nie przechodzi. Podłączyłem diodę do wyjścia transoptora i podawałem +5V na wejście diody transoptrora (oczywiście przez rezystor) i dioda się zapalała - więc chyba połączenia są OK. Nie mam pomysłu co zrobić, że by Arduino zagadało przez transoptor. Jak łączę TX jednego z RX drugiego to dane się przesyłają, przez transoptor nie Sad
Zauważyłem jeszcze, że jak zostawię diodę na wyjściu transoptora i podepnę RX drugiego Arduino to dioda zaczyna świecić (stan na RX jest wysoki) ale to chyba normalne?
Będę wdzięczny za sugestie i podpowiedzi jak rozwiązać problem albo w którą stronę drążyć temat Smile


RE: UART i izolacja za pomocą transoptora - ANT - 11-12-2017

Coś mi źle wygląda to Twoje podłączenie.

Chodzi mi o sygnały RX1 i RX2.
Stan niski na nich masz przez rezystory 10k, czyli tak jabyś tego stanu nie miał.

Wydaje mi się, że powinno to wyglądać mniej więcej tak jak na rysunku ponizej:
[Obrazek: attachment.php?aid=443]

Pozdr.


RE: UART i izolacja za pomocą transoptora - wieczny_student - 12-12-2017

Przed wyjściem do pracy na szybko spiąłem układ w pokazany przez Ciebie sposób i wychodzi na to, że chyba działa. Diody na Arduinach zaczęły ładnie mrugać. Wieczorem sprawdzę czy transmisja działa bezbłędnie i czy to nie jest przypadek Smile


RE: UART i izolacja za pomocą transoptora - Smaczek - 12-12-2017

Witam,
Może być problem z układem przedstawionym przez @ANT-a, bo następuje negacja sygnału. Jeśli zasilisz diodę transoptora (czyli dasz stan wysoki, abstrahując od Vdd 12 V na schemacie) to tranzystor zacznie przewodzić i na jego kolektorze będzie około 0,2 V czyli stan niski. Czyli podajesz wysoki, a wychodzi niski i na odwrót. Na pierwszym, podanym przez Ciebie, schemacie taka inwersja nie następuje. Ja spróbowałbym zmniejszyć wartość rezystora będącego w szeregu z diodą z 1 kom do wartości zależnej od posiadanego transoptora, bo niektóre potrzebują większego prądu dla diody. Może to być nawet jedynie 33 ohmy, ale to wartość minimalna. Najpierw spróbuj 470 ohm, jeśli nie zadziała to 220 ohm, 100... No chyba, że wepniesz potencjometr i sprawdzisz przy jakiej wartości rezystancji podanie stanu wysokiego na wejściu daje stan wysoki na wyjściu i analogicznie dla stanów niskich.
Pozdrawiam,
Tomek.


RE: UART i izolacja za pomocą transoptora - ANT - 12-12-2017

(12-12-2017, 14:02)Smaczek napisał(a): Może być problem z układem przedstawionym przez @ANT-a, bo następuje negacja sygnału.

Kolego nie wprowadzaj w błąd...

Na diodę transoptora podaje się stan niski aby ona zaświeciła.
To powoduje wysterowanie tranzystora czyli podanie równiez stanu niskiego na jego kolektorze!

Nie występuje tutaj negowanie sygnału!


RE: UART i izolacja za pomocą transoptora - Smaczek - 12-12-2017

Witam,
Kolego @ANT, masz rację. Błędnie potraktowałem wejście układu jako masę. Niemniej jednak jeśli Vdd będzie wynosić 12 V (tak jak na schemacie) to bez względu na to co będzie na wejściu układu to na wyjściu będzie raczej stan niski
Pozdrawiam,
Tomek.


RE: UART i izolacja za pomocą transoptora - ANT - 12-12-2017

(12-12-2017, 17:10)Smaczek napisał(a): Niemniej jednak jeśli Vdd będzie wynosić 12 V (tak jak na schemacie) to bez względu na to co będzie na wejściu układu to na wyjściu będzie raczej stan niski

A niby dlaczego tak ma być?

Jeżeli po stronie wejściowj jest logika oparta na 12 Voltach to masa będzie powodowała nadal stan niski, a podanie na wejście układu czyli na katodę diody +12V wywoła stan wysoki (dioda transoptora się wówczas nie świeci, więc tranzystor jest nie wysterowany i na jego kolektorze jest stan wysoki).

Poza tym ten schemat był przykładem jesli chodzi o logikę podłączenia a nie zastosowane napięcia.

Pozdr.
Smile


RE: UART i izolacja za pomocą transoptora - wieczny_student - 12-12-2017

Zdecydowanie działa, dzięki Smile
Rezystory pozostawiłem jakie były czyli 1K i 10K. Działa stabilnie na 4800 i 9600baud, więcej nie próbowałem bo nie jest mi na razie potrzebne. Później sprawdzę czy uda się więcej. Dodać mogę, że dwa transoptory pobierają 0,065mA kiedy nie ma transmisji, czyli nawet przy zasilaniu bateryjnym można ich śmiało używać.