Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 29 mar 2024, o 10:05


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 14 ] 
Autor Wiadomość
PostNapisane: 10 kwi 2020, o 13:34 
Offline
Nowy

Dołączył(a): 02 kwi 2020
Posty: 21
Pomógł: 0

Witam serdecznie.

Mam urządzenie które komunikuje się ze światem po UART RS232 ale z odwroconą logiką. Chcę informację z tego urządzenia przesłać po XBEE które sobie nie radzi z odwroconą logiką. Kilka dni temu odebrałem analizator stanów logicznych tak jak mi doradzał Mirek i teraz wiem co w transmisji piszczy.

Zastanawiam się jak rozwiązać ten problem.
Najprostsze co wymyśliłem to użycie tranzystora NPN do odwrocenia sygnału. Tak też zrobiłem. W szufladzie znalazłem BC547B ale jego szybkość przełączania nie jest zbyt dobra. Obawiam się że transmisja zacznie być nie stabilna przez to. Poniżej załączan screen z analizatora.
Obrazek

chanel 1 przez odwroceniem i chanel 0 po odwroceniu.

Jak sądzicie czy zastosowanie szybszego tranzystora pomoże czy lepiej szukać bramek logicznych albo jeszcze jakiegoś innego rozwiązania.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 kwi 2020, o 14:41 
Offline
Użytkownik

Dołączył(a): 11 sty 2015
Posty: 166
Pomógł: 24

Nie jestem elektronikiem, ale z tego co znalazłem na szybko to BC547 ma częstotliwość graniczną na poziomie 100MHz.
Przy transmisji UART powinien być duży zapas.
Na opóźnienie jakie uzyskujesz ma wpływ stopień nasycenia tranzystora i prąd kolektora.
Na początek może zmniejsz rezystor na kolektorze a zwiększ na bazie. (Mogę się mylić.)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 kwi 2020, o 16:51 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2561
Pomógł: 126

Tranzystor w zupełności wystarczy. Lepiej wklej schemat jak to podłączyłeś.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 kwi 2020, o 18:33 
Offline
Nowy

Dołączył(a): 02 kwi 2020
Posty: 21
Pomógł: 0

Pewnie jest to kwesta dobrania rezystorów. Na kolektorze zastosowalem 15k ale sprawdałem tez dla 1k i w obu przypadkach było tak samo. Inna sprawa że być może 0.7us nie jest wcale złym wynikiem. urządzenie pracuje na 115200 baud więc dość wysokim.


Schemat

Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 kwi 2020, o 18:45 
Offline
Użytkownik

Dołączył(a): 11 sty 2015
Posty: 166
Pomógł: 24

A próbowałeś dać znacznie większy rezystor na bazie?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 kwi 2020, o 19:11 
Offline
Nowy

Dołączył(a): 02 kwi 2020
Posty: 21
Pomógł: 0

Sprawdzałem tez 15k na bazie i bez zmian.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 kwi 2020, o 19:30 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

Tak jak kolega auers już zauważył, tranzystory bipolarne potrzebują dłuższego czasu by wyjść ze stanu nasycenia co w Twoim przypadku ewidentnie widać na analizatorze.
Biorąc pod uwagę fakt iż na bazie masz rezystor tylko 1k to prąd bazy wynosi (5V-0,7 V)/1000R=4,7mA, przyjmując średnie wzmocnienie na poziomie 200, prąd kolektora hipotetycznie (liczony ze współczynnika wzmocnienia prądowego) mógłby popłynąć 0,0047A*200=0,94A. Ty w kolektorze masz rezystor 15k więc maksymalny prąd jaki może popłynąć to 5V/15000R=0,33mA więc tranzystor jest w pełni nasycony i nie dziw się że się zachowuje jak się zachowuje.
Rezystor bazy musisz tak dobrać by niewielki spadek napięcia jakie podawane jest przez rezystor na bazę powodował już znaczną reakcję w obwodzie kolektora.
Proponował bym tak, w kolektorze rezystor 1K, a na bazie tak ze 200K - może trochę mniejszy, ale to już by trzeba dobrać doświadczalnie.



Ostatnio edytowano 10 kwi 2020, o 19:34 przez xentis, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 kwi 2020, o 19:33 
Offline
Użytkownik

Dołączył(a): 11 sty 2015
Posty: 166
Pomógł: 24

Jak masz jeszcze większe rezystory to może z nimi popróbuj na bazie.
Po zdjęciu z analizatora, widać że tranzystor ze stanu niskiego w wysoki przechodzi praktycznie bez opóźnienia.
W drugą stronę jest już gorzej, nie może się "odetkać". Wg mnie jest za bardzo nasycony.
W końcu do tych 100Mhz jeszcze daleko, a zapas na hFE masz ogromny.

------------------------ [ Dodano po: kilkunastu sekundach ]

Kolega xentis mnie uprzedził.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 kwi 2020, o 22:31 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

Panowie moim zdaniem (mogę się mylić) ale zwykłe tranzystory do odwracania logiki typu BC547 to się nadają ale tylko dla jakichś powolnych prędkości typu 9600.

Jeśli więcej to ZDECYDOWANIE polecam użyć jakieś bramki logiczne odwracające, albo podwójne tranzystory itp

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 kwi 2020, o 22:49 
Offline
Nowy

Dołączył(a): 02 kwi 2020
Posty: 21
Pomógł: 0

Dodatkowym problemem który tu się pojawia jest dopasowanie poziomów napięć. Urządzenie ma logikę 5v a Xbee 3,3v. Dlatego tranzystor załatwił by te dwie sprawy za jednym zamachem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 kwi 2020, o 10:08 
Offline
Nowy

Dołączył(a): 02 kwi 2020
Posty: 21
Pomógł: 0

Troszkę poeksperymentowałem i udało się.

Wartości troszkę inne niż podawał xentis. Na bazie dałem 1k ale gdy na kolektorze zastosowalem 200k to nic nie przechodziło. Ale przy zmieniejszeniu rezystora na kolektorze do 59k wszystko zaczęło śmigać. Jest lekkie przesunięcie całego sygnału ale długości zer i jedynek są równe więc myśle że transmisja będzie przechodzić bez problemu.

Musze jeszcze poeksperymentować przy zasilaniu całości z 3.3v bo takie napięcie będzie w układzie. Zaraz przelicze jakie wtedy powinny być rezystory.

Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 kwi 2020, o 10:30 
Offline
Użytkownik

Dołączył(a): 11 sty 2015
Posty: 166
Pomógł: 24

Przeczytaj jeszcze raz to co napisałem ja i xents. Na kolektorze miałeś rezystor zmniejszyć, a na bazie zwiększyć a Ty zrobiłeś na odwrót.
tak naprawdę zamiast polepszyć to pogorszyłeś sytuację. Teraz masz opóźnienie na obu zboczach a nie na jednym jak wcześniej.
Z drugiej strony przynajmniej długości sygnałów się wyrównały.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 kwi 2020, o 10:34 
Offline
Nowy

Dołączył(a): 02 kwi 2020
Posty: 21
Pomógł: 0

Nie nie nie. Mój błąd w opisie. Na bazie mam te 59k a n kolektorze 1k. źle napisałem w poprzednim poście.

------------------------ [ Dodano po: 22 minutach ]

A dla 3.3v najlepiej wygląda przy ok 89k na bazie przy 1k na kolektorze



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 kwi 2020, o 13:53 
Offline
Nowy

Dołączył(a): 02 kwi 2020
Posty: 21
Pomógł: 0

Po zlutowaniu na płytce uniwersalnej wyszło że trzeba ok 120k dać. Ale transmisja śmiga.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 14 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO