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



Teraz jest 29 mar 2024, o 06:41


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 18 ] 
Autor Wiadomość
PostNapisane: 12 lis 2017, o 23:37 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Witam.
Wiem, że pytanie głupie ale nie znalazłem odpowiedzi.
Czy jest opcja żeby fusebitami ustawić wpisanie do DDRB 1 oraz do PORTB 1 tak żeby po resecie było to ustawione - ale nie chodzi mi tutaj o zapis w języku c tylko na stałe do procesora.
A po co mi to? zapytacie. Chodzi o to,że Atmega steruje przekaźnikiem, który żeby był wyłączony musi być na High. Więc tera jest tak. Startuje atmega, w setupie ustawiam że port jest wyjściem, wtedy przekaźnik niepotrzebnie się załącza, żeby w następnej linii wpisać do Portu stan wysoki i przekaźnik się wyłącza. działa ale trochę denerwuje.

Wysłane z iPad za pomocą Tapatalk



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lis 2017, o 02:22 
Offline
Użytkownik

Dołączył(a): 17 mar 2015
Posty: 38
Lokalizacja: Australia
Pomógł: 0

Nie, nie ma takiej opcji.
Domyslnie po resecie porty sa ustawione jako wejscia w stanie wysokiej impedancji.
Nie myslales o tym aby wymusic stan wysoki rezystorem zewnetrznym?
Po resecie podciagasz wewnetrzny rezystor a nastepniei przelaczasz na wyjscie



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lis 2017, o 12:15 
Offline
Użytkownik

Dołączył(a): 06 maja 2016
Posty: 28
Pomógł: 2

Niestety na AVRach takiej opcji nie ma... na ARM (STM) masz specjalne rejestry LOCK, gdzie możesz ustawić jak ma się zachować port po resecie. Czy ma to Cypress, nie wiem, pewnie ma....bo oni są pionierami wielu rozwiązań dedykowanych do przemysłu. (czyli stan portu nawet po wystąpieniu resetu czy stanów wyjątkowych jest niezmienny).



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lis 2017, o 13:02 
Offline
Moderator
Avatar użytkownika

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

Bożesz kochany - tak błahy problem urasta do jakiegoś makabrycznego poziomu ... gdy rozwiązanie jest tak proste że aż koci strach ....

i to bez żadnych pomysłów z KOSMOSU o wykorzystywaniu fusebitów w tym celu.

Zresztą już kolega zieleniewiak wyżej to zasygnalizował chociaż tak troszkę nieprecyzyjnie

co za problem:

PODCIĄGNĄĆ rezystorem np 10K wyjście do VCC

po resecie pin jest WEJściem w stanie HiZ a zatem rezystor wymusi stan wysoki więc jest SPOKO

w trakcie inicjalizacji programu PRZED przełączeniem kierunku pinu na WYJściowy wystarczy zapisać do PORTx JEDYNKĘ

po czym do rejestru kierunku DDRx zapisać również JEDYNKĘ - dzięki czemu pin będzie WYJŚCIEM i wciąż w stanie wysokim

no jaki Qurczę problem ? no jaki ? ;)

_________________
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: 13 lis 2017, o 22:27 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Myślałem o podciągnięciu, ale rozmawiałem ze znajomym i powiedział o możliwości ustawienia pinów po resecie - stąd moje pytanie.
Za chwilkę przetestuje z podciąganiem jak to będzie działało, ale wcześniej jeszcze takie rozwiązanie mi się nasunęło.

Ta cała paczka przekaźników 8szt ma 10 wyprowadzeń
1: GND
2-9: wejścia 1-8 (Low załącza, High wyłącza)
10: VCC

Chcę zastosować tranzystor. Dałem BC337 NPN
Kolektor - do GND od przekaźników
Bazę - poprzez 4,7k do Atmegi
Emiter - do masy
Teoretycznie jeden przekaźnik pobiera 30-40mA ten tranzystor ma 800mA więc powinno wytrzymać, ale niestety po załączeniu 5 przekaźnika już mówi dość - więcej nie załączy. Napięcie na przekaźnikach spada do 2V czyli tranzystor nie przewodzi w pełni.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lis 2017, o 23:04 
Offline
Użytkownik

Dołączył(a): 25 maja 2014
Posty: 89
Lokalizacja: Krosno
Pomógł: 0

Cześć,
iwi napisał(a):
Teoretycznie jeden przekaźnik pobiera 30-40mA ten tranzystor ma 800mA więc powinno wytrzymać, ale niestety po załączeniu 5 przekaźnika już mówi dość - więcej nie załączy. Napięcie na przekaźnikach spada do 2V czyli tranzystor nie przewodzi w pełni.


Nie otwiera się w pełni ponieważ jest za mały prąd bazy, musisz dać mniejszy rezystor na bazie (około 750 ohm) a w ogóle to proponuję dać jakiś tranzystor BD np BD139 (mniejszy problem z grzaniem) ale również będziesz musiał dać mniejszy rezystor niż 4,7k. W przybliżony sposób możesz sobie policzyć jaki rezystor będziesz potrzebować z zależności Ic=Ib*hfe. Z tego Ci wyjdzie prąd bazy czyli Ib=Ic/hfe
a rezystor R=(5-0,7)/Ib zakładając, że napięcie zasilania masz 5V. Musisz wiedzieć, że hfe nie jest stałe w funkcji prądu kolektora więc to hfe trzeba brać z noty katalogowej.
Np. dla twojego BC337 https://www.onsemi.com/pub/Collateral/BC337-D.PDF
hfe dla prądu Ic 100mA hfe min = 100 a dla Ic = 300mA to hfe min = 60.
No więc musisz sobie przyjąć hfe = 60.
Jeśli masz dostęp do książki Sztuka Elektroniki to tam jest to wyjaśnione.

Pozdrawiam

_________________
Artur



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2017, o 08:17 
Offline
Użytkownik

Dołączył(a): 22 sty 2014
Posty: 1806
Zbananowany użytkownik

Pomógł: 168

albo daj jakiegoś mosfeta :) np: https://www.tme.eu/pl/Document/b7541278 ... mbf170.pdf



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2017, o 09:15 
Offline
Użytkownik

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

A jakiś ULN się nie nada?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2017, o 10:13 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Dziękuję za odpowiedzi.
Pierwsza - chyba najprostsza - podciągnięcie opornikami 10k do VCC - czy to nie spowoduje nadmiernego zwiększenia poboru prądu przez układ. W przypadku włączenia wszystkich przekaźników na dłuższy czas wyjścia będą w stanie niskim a przez opornik cały czas będzie podawane VCC. Jak można obliczyć tą stratę?

Druga - Tranzystor - Zastosowałem ten co miałem oraz ten który wg noty powinien wystarczyć. Mam co prawda jeszcze BC517 oraz BD243C ale też nie ma co przesadzać jeśli nie potrzeba.
Nefarious19 napisał(a):
albo daj jakiegoś mosfeta :) np: BS170
Mosfet co podałeś w czym niby jest lepszy od tego BC337? Ma 500mA ciągłej pracy! ULN też można dać ale po co.
Wracając do mojego BC337 (nie upieram się że musi być ten)
Napisałeś że beta przy 300mA jest 60. Przepraszam, że się czepiam, ale mi wychodzi 120 przy 400mA.
Obrazek

Biorąc pod uwagę również kiedy się nasyca tranzystor to wychodzi że powyżej 20mA musi płynąć prąd bazy żeby tranzystor się nasycił. Obliczając z wzoru to 5V/20mA=250Omów. Czyli dając 220Omów opornik tranzystor powinien się nasycić. Dobrze myślę?
Spadek napięcia na złączu CE wyniesie około 0,15V.

Obrazek

Zastanawiam się po co mi Beta i obliczanie wzmocnienia co akurat podałeś. Mogę Cię prosić o wyjaśnienie? Nie wiem jak to liczyłem wcześniej, że wyszło mi że dla 4,7k tranzystor się otworzy w pełni - faktem jest że liczyłem żeby było 10mA a nie 20mA ale to i tak jedno zero za dużo.
Jeszcze odnośnie tego opornika 4,7k. Do 1 przekaźnika który pobiera około 30mA prąd bazy wychodzi 1mA czyli może być bo tranzystor jest nasycony, ale stosując więcej przekaźników już trzeba zwiększyć prąd bazy.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2017, o 11:46 
Offline
Użytkownik

Dołączył(a): 22 sty 2014
Posty: 1806
Zbananowany użytkownik

Pomógł: 168

Cytuj:
Mosfet co podałeś w czym niby jest lepszy od tego BC337?


ano w tym że w bramke nie wpływa żaden prąd (no, może jakieś nanoampery) i nie ma problemu z jakimiś stratami. Po drugie 8 *40 mA to daje 320mA więc o 180mA mniej niż ten tranzystor może wytrzymać.

reasumując. Nie musisz dawać miedzy pinem procka a bramką żadnego rezystora bo ma znikomą pojemność bramki, po drugie przy podciąganiu do VCC nie ma żadnych strat bo przez rezystor podciągający nie płynie prąd (bramka to kondensator ze znikomą upływnością). Same zalety. Ilu elektroników tyle rozwiązań



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2017, o 14:01 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Ano masz chyba rację.
Cena tych BS170 też jest przystępna.
Zastanawia mnie dlaczego na ALi jedni podają że max prąd to 50mA a inni że 500mA. Czy mogą być różne podwersje BS170
przykład:
https://pl.aliexpress.com/item/Free-shipping-10pcs-lot-BS170-TO-92-FETs-MOSFET-N-CH-60V-500MA-Best-quality/32812620689.html
https://pl.aliexpress.com/item/Free-Shipping-20pcs-BS170-MOSFET-N-Channel-60V-50mA-TO-92/673371982.html

Co do moich poprzednich wyliczeń z BC337 - Jeszcze dochodzi obciążalność pinów uC. 20mA co wychodzi w zasadzie jest na granicy możliwości. Więc trzeba by dać jednego BC do sterowania drugim w systemie Darlingtona albo zastosować np BC517.

Co do Mosfetów: wada to większy spadek napięcia (nie wiem czy dobrze liczę) jeśli założymy typowe 1,2Oma to tutaj spadek napięcia będzie 0.48V a w bipolarnym jest 0.15V. Dla przekaźnika to bez znaczenia, ale dla innych podzespołów to już może coś znaczyć.

Są jeszcze tańsze 2N7000 tam oporność DS jest 10x większa - czy to nie błąd w nocie? Czyli jeśli będę chciał pociągnąć 200mA czyli max to spadek napięcia będzie aż 2V?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2017, o 15:00 
Offline
Użytkownik

Dołączył(a): 22 sty 2014
Posty: 1806
Zbananowany użytkownik

Pomógł: 168

iwi napisał(a):
Są jeszcze tańsze 2N7000 tam oporność DS jest 10x większa - czy to nie błąd w nocie? Czyli jeśli będę chciał pociągnąć 200mA czyli max to spadek napięcia będzie aż 2V?


Wszystko zależy od producenta ale 2N7000 mają większe RDSon. Poszukaj w TME takich tranzystorów żeby Ci odpowiadały. Są takie co mają niższe RDSon ale są mniej popularne niz 2n7000, BS170 czy BSS138.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2017, o 16:22 
Offline
Użytkownik

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

I pamiętaj że jeśli zależy Tobie na prawdziwych parametrach to podstawową zasadą jest bazowanie na notach producenta i zaopatrywanie się w oficjalnej siatce sprzedaży. Różni producenci mogą mieć różne parametry komponentów. A chińczyk napisze wszystko, żeby sprzedać towar. Po drugie jak każdy sprzedawca ma prawo sie pomylić w opisie (ale u nich odsetek pomyłek jest akurat wyższy :) )



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2017, o 19:07 
Offline
Użytkownik

Dołączył(a): 25 maja 2014
Posty: 89
Lokalizacja: Krosno
Pomógł: 0

Witam,
iwi napisał(a):
Napisałeś że beta przy 300mA jest 60. Przepraszam, że się czepiam, ale mi wychodzi 120 przy 400mA.


jest to podane w tabeli noty katalogowej i jest to wzmocnienie minimalne zależne od konkretnego egzemplarza tranzystora :

Obrazek

iwi napisał(a):
Obliczając z wzoru to 5V/20mA=250Omów.


Tutaj popełniasz błąd w obliczeniach :( pomijasz napięcie Ube.

iwi napisał(a):
Zastanawiam się po co mi Beta i obliczanie wzmocnienia co akurat podałeś. Mogę Cię prosić o wyjaśnienie?


No więc, aby tranzystor nasycił się (całkowicie przewodził) przy pracy jako klucz, w zależności od tego jaki prąd ma płynąć przez kolektor należy wymusić odpowiednią wartość prądu bazy.
Znając pobór prądu przez obciążenie to wiemy jaki teoretycznie będzie płynął prąd przez kolektor.
Dzięki znajomości wzmocnienia hfe dowiemy się jaki prąd powinien płynąć przez bazę, na podstawie wzoru : Ib = Ic/hfe
a rezystancję bazy Rb obliczamy ze wzoru : Rb = (Vcc-Ube)/Ib gdzie : Vcc - napięcie zasilania , Ube - napięcie baza emiter dla krzemu przyjmuje się 0,7V (wtedy kiedy przewodzi)

Obrazek

Odsyłam do ksiązki "Sztuka elektroniki cz.1" strona 74 punkt 2.02
Cytuję :
"Przy projektowaniu przełączników tranzystorowych należy uwzględnić następujące uwagi :
1. Wartość rezystancji rezystora w obwodzie bazy należy wybierać tak, aby otrzymać znaczny nadmiar prądu bazy, szczegulnie w przypadku włączania żarówek, ze względu na zmniejszanie się bety przy małych wartościach Uce. Jest to również dobry sposób na zwiększenie szybkości przełączania, ograniczonej dla bardzo dużych częstotliwości (wielu megaherców) przez efekty pojemnościowe i zmniejszenie się bety. ..."

To jest tylko fragment już w zasadzie wniosków na podstawie szerszego opisu.

W twoim przypadku jeden tranzystor ma załączać 8 przekaźników bo tak zrozumiałem to przez kolektor przepłynie 8*40mA = 320mA i do takiego prądu należy dopasować prąd bazy.
A z tego prądu bazy Rb jak pokazałem wyżej.

iwi napisał(a):
Do 1 przekaźnika który pobiera około 30mA prąd bazy wychodzi 1mA czyli może być bo tranzystor jest nasycony, ale stosując więcej przekaźników już trzeba zwiększyć prąd bazy.


Dokładnie o to chodzi, jeśli chcemy, żeby płynął większy prąd kolektora to musi być większy prąd bazy.

Spróbuj sobie sklecić taki układ na jednym tranzystorze, gdzie odbiornikiem może być żarówka albo kilka żarówek w obwód bazy wpinaj różne rezystory lub szeregowo z rezystorem potencjometr (rezystor po to aby nie usmażyć tranzystora jak rezystancja potencjometru będzie 0 ohm) no i wtedy pomierz sobie przy jakich wartościach Ib tranzystor będzie w pełni przewodził.

Pzodrawiam

_________________
Artur



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 gru 2017, o 11:57 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Witam.
Nie wiem jak Wy sobie radzicie z tranzystorami, ale one mnie w ogóle nie słuchają i działają jak chcą.

Na wstępie opiszę układ. Dwa tranzystory sterują kontrolerem LCD, na którego trzeba podać 0 żeby go wyzwolić.
PC0 odpowiada za włączanie i wyłączanie LCD
PC1 odpowiada za przełączanie źródła Video
PC2 steruje buzzerem - po kliknięciu w przycisk buzer robi "pik" taka informacja że klawisz wciśnięty.

Po próbach w końcu poszedłem za radą kolegów i zaopatrzyłem się w BS170
Zrobiłem taki układzik
Obrazek
i układ ten działa jak chce. Tj jak na płytce stykowej zrobiłem dla jednego Mosfeta układ to działał dobrze. Jak kontroler wystawił 5V to za BS miałem 0V, jak stan niski to miałem 5V.
dołożyłem w sumie żeby były 3 tranzystory i teraz działa tak.
Domyślnie wszystkie piny są ustawione jako wyjście i na starcie mają ustawiony stan niski.
Teraz jak nacisnę klawisz to na pin PC0 pojawia się 5V (oraz na PC2 na 100ms 5V ) a ja mam za jednym trazystorem 2V, za drugim 3V a za trzecim 4V zamiast 0V,5V,5V.
buzer się odzywa przez krótki czas więc go zostawmy ale skąd te przebicie na drugim tranzystorze - poza tym po 100ms na trzecim też ma być 5V.
Dorysowałem do układu R2 podciągające do GND - pytanie czy jest potrzebny, ale ponieważ buzer odzywa się kiedy chce to może zadziała.
Pin kontrolera może być H lub L więc teoretycznie ten R2 może nie jest potrzebny, ale nie zaszkodzi (w programie nie ma opcji na stan nieustalony).

Teraz zapytacie dlaczego nie podepnę bezpośrednio sterowania LCD do pinu kontrolera - otóż sprawdzałem i niestety albo wydajność prądowa jest za mała, albo to prawie 0V przy stanie niskim pinu jest za małe do zadziałania sterownika. O ile czasami udaje się wyzwolić ON/OFF LCD to nigdy nie działa dla przełącznika źródła Video.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 gru 2017, o 12:11 
Offline
Użytkownik

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

Sprawdź prąd który dajesz z tranzystora na ten LCD.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 gru 2017, o 13:41 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sty 2016
Posty: 1146
Lokalizacja: Kraków
Pomógł: 93

Ja bym dał niewielki rezystor między pin uC i bramkę tranzystora. I dodatkowo, tak jak jest przy Q3, dałbym rezystory od bramki do masy.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 gru 2017, o 19:56 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Dałem rezystor 100omów na bramkę.
Dałem rezystory podciągające i nic.
Chyba przesadziłem z tymi rezystorami 8,2k.
Jak podłączyłem amperomierz do sterownika LCD to pobiera 70mA do zmiany źródła, natomiast 22mA do włączenia i wyłączenia.Zmniejszyć je do 1k?



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: 18 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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