Skocz do zawartości

Pomoc w zrobieniu matrycy led 7x5


arymanshadow

Pomocna odpowiedź

Witam. Chce zrobic matryce led 7x5, taką która może wyświetlić na raz tylko jedną literę. Chce ją wykonać z części które mi zostały, mam 17 tranzystorów bc557b i 23 bc547b i troche diodek http://allegro.pl/dioda-led-5mm-zielona-komplet-10szt-20ma-i5169344454.html. Wiem że diody są słabe a tranzystory mają mały prąd maxymalny (zaledwie 100mA), ale chciałbym je wykorzystać.

Czy da się to zrobić według mojego schematu? Jeśli nie to jak mógłbym to poskładać? I mam wielką prośbe o pomoc w obliczeniu wartości rezystorów, kiepsko mi to wychodzi, nie umiem obliczać ich dla tranzystorów 🙁

Matryce chce podłączyć do klona arduino uno(nie bijcie za to że klon, ale dobrze działa, jestem nim mile zaskoczony)

[ Dodano: 29-06-2016, 19:36 ]

Mój schemat

https://zapodaj.net/3750d7a881ea1.jpg.html

Link do komentarza
Share on other sites

Niestety, żeby procesor mógł wyłączać tranzystory pnp, ich emitery muszą być podpięte do 5V, bo takie jest maksymalne napięcie jakie dostaniesz z pinu wyjściowego. Tak więc cała matryca musi być zasilana z 5V a nie z 12. Poza tym z 12V musiałbyś dać duże oporniki szeregowe i straty mocy byłyby ogromne.

Jeśli byś się upierał na te 12V (lub cokolwiek innego wyższego niż 5V), to po drodze (między wyjście procka a pnp) musisz jeszcze wstawić stopnie npn.

Link do komentarza
Share on other sites

" Poza tym z 12V musiałbyś dać duże oporniki szeregowe i straty mocy byłyby ogromne. "

Czy w Arduino 5V jest stabilizowane impulsowo ? , bo jeśli nie nadmiar mocy wydzieli się na stabilizatorze liniowym ...

[ Dodano: 30-06-2016, 07:13 ]

"Jeśli byś się upierał na te 12V (lub cokolwiek innego wyższego niż 5V), to po drodze (między wyjście procka a pnp) musisz jeszcze wstawić stopnie npn. "

Jest możliwość wstawienia w szeregu z rezystorami sterującymi diody zenera przykładowo 6,8V 🙂

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

nse: Nikt nie mówił, że 5V będzie brane z Arduino. Być może Kolega arymanshadow użyje zewnętrznego zasilacza/ładowarki USB i zasilanie dostanie wprost, bez dodatkowej stabilizacji liniowej. Chodziło mi bardziej o uwypuklenie problemu, że wybór poziomu zasilania ma w takim układzie swoje konsekwencje a ponieważ LED potrzebuje 2-3V to gdzieś to napięcie trzeba będzie wytracić.

Diody Zenera rzeczywiście pomogą przesunąć składową stałą,, ale taki sposób dobrze działa gdy napięcia są sztywne i trochę bym się obawiał polecać to komuś kto rysuje schematy w ten sposób. Jeśli akumulator będzie miał 10-13V to mogą być problemy z dobraniem napięcia Zenera - takie rozwiązanie przywiązuje nas do konkretnego poziomu zasilania i jest bardzo nieodporne na ekperymenty. Tranzystory npn po drodze są uniwersalne. Będą działały w szerokim zakresie napięć a zmieniać się będzie tylko jasność.

arymanshadow: Tak, z 5V zadziała bez przeróbek. Żeby coś było widać wstaw 100Ω w kolektory npn, 1kΩ we wszystkie bazy pnp i np. 2kΩ w bazy npn. To dobry punkt startowy. Prąd LEDów nie będzie oszałamiający (więc jasność także), ale na pewno w pokoju coś zobaczysz a 100Ω zabezpieczy diodki i tranzystory przed awariami programu i przypadkowymi zatrzymaniami skanowania matrycy. Potem, gdy wszystko będzie hulało będziesz mógł wstawić np. 7x33Ω lub dostawić drugie 100Ω równolegle do tych już wlutowanych. Jak rozumiem będziesz załączał kolejne wiersze a wtedy do npn wysyłał kombinację 7 świecących pixeli, bo oporniki wstawiłeś w kolektory npn więc to te tranzystory będą napędzać jedną diodkę na raz. Pamiętaj o tym przypisaniu programu.

Link do komentarza
Share on other sites

nse: Nikt nie mówił, że 5V będzie brane z Arduino. Być może Kolega arymanshadow użyje zewnętrznego zasilacza/ładowarki USB i zasilanie dostanie wprost, bez dodatkowej stabilizacji liniowej. Chodziło mi bardziej o uwypuklenie problemu, że wybór poziomu zasilania ma w takim układzie swoje konsekwencje a ponieważ LED potrzebuje 2-3V to gdzieś to napięcie trzeba będzie wytracić.

Ja tylko wskazałem inną możliwość w odpowiedzi na słowo "musisz", a te wskazane fluktuacje napięcia +12V można wyliczyć do nich odpowiednią parę rezystorów tylko trzeba z góry założyć widełki w jakich to napięcie będzie się wahało, no ale to dla początkującego zbyt wysoko 😉

Więc znów masz racje 🙂

Ps. Raczej wątpie, by początkujący domyślnie zastosował osobne zasilanie +5V, choć na tym pełnym cudów świecie wszystko możliwe ?

Link do komentarza
Share on other sites

"Więc znów masz racje"

No proszę Cię, przecież nie o to chodzi... Jeżeli uważasz, że warto te Zenery wstawić jako wsparcie dla zasilania 12V albo żeby pokazać rozwiązanie alternatywne, to narysuj kawałek układu, wytłumacz jego działanie w trzech zdaniach dla początkującego i policz wartości oporników dla założonych widełek. Może wcale nie będzie tak źle jak mi się wydaje. Każda okazja do przeczytania czegoś ciekawego jest dobra. Na pewno ktoś kiedyś z tego skorzysta.

Link do komentarza
Share on other sites

Może na początek lepiej będzie założyć że Arduino jest zasilane stabilizowanym napięciem 12 lub 9V z zapasem prądowym i wtedy dobór zenerki i oporników będzie prościutki ?

Po co straszyć początkującego jakimiś wykładami ?

Nie ma pewności czego autor tematu oczekuje ?

[ Dodano: 01-07-2016, 08:57 ]

http://www.elenota.pl/datasheet-pdf/77221/Rectron/BC557B-T

Najniższy parametr hfe = 150, a wskazane diody mają 20mA

Więc prąd bazy 20mA/150 = 0,133[3]mA

R bazy = (5V - 0,7V)/134uA

32089,55ohm

dla zasilania matrycy +5V na

R bazy dla zasilania stabilizowanego +12V i diody zenera 6,8V

U = 12V - 6,8V - 0,7V => 4,5V

4,5/134uA => 33582,09ohm

Oczywiście tak duże rezystory w bazach ze względu na pojemność pomiędzy bazą a emiterem,
spowodują rozmycie przebiegu prostokątnego i tą pojemność można skompensować dodając równolegle do obwodów sterujących bazami pojemności kompensacyjne szacunkowo 33pF powinno wystarczyć.

Nie są to aptekarskie wyliczenia ale lepsze takie niż dobieranie wartości na intuicje 😉

Ps. Diodę zenera warto podciągnąć do +12V opornikiem 1K, dla niezmniejszenia rozmycia zagięcia charakterystyki diody.

Link do komentarza
Share on other sites

No to cud się zdarzył bo według moich planów matryca nie miała być podłączona do 5V+ i GND tylko pod zewnętrzne źródł zasilania. Do zewnętrznego zasilania kupie zasilacz 5V albo rozetne kabel USB i zrobie z niego zasilanie jak podepne pod kompa.

Lekka poprawka, pomyliłem się rysując, oporniki powinny być na kolektorach pięciu pnp żeby one sterowały jedną dioda przy multipleksowaniu, a npn masą pięciu diod w kolumnie.

Link do komentarza
Share on other sites

Tak, to chyba dobry pomysł, bo npn są zwykle lepsze. Tak więc w bazy npn dajesz teraz 1k, w bazy pnp 2k a w kolektory pnp 100Ω i załączasz po kolei całe kolumny wystawiając do pnp kombinację pixeli danej kolumny. Jeśli będzie to robił szybciej niż jakieś 200Hz (a najlepiej 500-1000), obraz będzie stabilny a migotanie nie będzie przeszkadzało.

Samo przełączanie musi wyglądać tak, że najpierw wyłączasz wszystkie kolumny, wysyłasz stan 5 diodek do pnp i dopiero wtedy załączasz kolejną kolumnę npn.

Link do komentarza
Share on other sites

Jeszcze mam takie pytanie, a mianowicie, ile moze byc maxymalnie kolumn w matrycy żeby multipleksowanie nadążało wyrobić sie przed granicą widzenia migania przez oko? Zastanawiam się w jakich mniej więcej granicach rozmiarowych miesci się matryca którą można sterować arduini bez rejestrów przesównych?

Link do komentarza
Share on other sites

Teoretycznie uważa się, że oko przestaje zauważać mruganie w okolicach 50Hz, ale moim zdaniem to powinno być dużo szybciej. Ja w moich konstrukcjach staram się nie schodzić poniżej 100Hz. Nawet jeżeli przyjmiesz te 50, to przy zwiększaniu liczby kolumn masz ograniczenie na programowy narzut związany z samym przełączaniem, bo przecież już przy 16 kolumnach masz 16x50Hz=800 przerwań/s. "Goły" procesor AVR mógłby obsługiwać przerwania o tym stopniu skomplikowania z częstotliwością pewnie i 10kHz, ale akurat Arduino ma wbudowane timery programowe, obsługę serwomechanizmów, portu szeregowego itp rzeczy. Jeśli będziesz ich używał, nie można zbyt obciążać procesora przerwaniami bo całość się posypie. Tak więc powiedzmy, że teoretyczną górną granicą z punktu widzenia samego migotania jest dla AVR 10kHz/50Hz=200 kolumn a dla Arduino np. 2kHz/50Hz=40. Oczywiście możesz sam dowolnie eksperymentować. Ciekaw jestem Twoich spostrzeżeń.

Istnieje jeszcze ograniczenie na samą elektronikę. Diodom LED nie można bezkarnie zwiększać prądu wraz ze zmniejszaniem wypełnienia. A przy multipleksowaniu 1/200 musiałbyś pompować w każdą min. ze 100x większy prąd niż w stanie statycznym. Zamiast więc 10-20mA dostajesz 1-2A na diodę i 8-16A na driver całej kolumny. Tak duże prądy to duże zakłócenia na szynach zasilania. Wyobraź sobie, że jedna kolumna ciągnie np. 14A, następna (za 100us) 0mA a za chwilę znowu impuls 10A i zasilacz musi to znieść. Do tego duże straty na kluczach. W przypadku tranzystorów bipolarnych to duże prądy baz (100-200mA? bez driverów pośrednich się nie obejdzie) a w przypadku MOSFETów - drivery bramek.

Moim zdaniem nie ma sensu wychodzić poza 1/32. Przy dobrym projekcie driverów matrycy i dobrych diodach LED, może 1/64, ale to zawsze trzeba wyważyć.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.