Spis treści:
W tym artykule przyjrzymy się układowi scalonemu ULN2003 opierając się na jego dokumentacji technicznej, obejmującej m.in. wyprowadzenia układu i ich funkcje.
Sterowanie obciążeniami indukcyjnymi z poziomu układów elektronicznych
Jeśli kiedykolwiek próbowaliście sterować silnikiem elektrycznym, na przykład standardowym silnikiem szczotkowym prądu stałego DC lub silnikiem krokowym z poziomu mikrokontrolera, np. PIC, AVR, Raspberry Pi czy STM32, na pewno zetknęliście się z pojęciem driverów PWM.
Dlaczego potrzebujemy sterowników PWM? Właśnie do sterowania silnikami, z dwóch głównych powodów – po pierwsze, mikrokontrolery są układami które zwykle operują na napięciach bardzo niskich takich jak 1,8V (BeagleBoard), 3,3V (Raspberry Pi), 5V (Arduino UNO R3), podczas gdy silniki elektryczne sterowane z tych mikrokontrolerów wymagają zasilania napięciami wyższymi, np. 9V, 12V czy 24V.
Po drugie, silniki elektryczne są obciążeniami indukcyjnymi, które podczas przełączania uzwojeń generują wstecznie spolaryzowaną siłę elektromotoryczną o wartościach wielokrotnie przekraczających napięcia znamionowe zasilania tych silników, co może prowadzić do uszkodzenia mikrokontrolera sterującego silnikiem. Z tych powodów używamy układów driverów pośredniczącymi pomiędzy mikrokontrolerem a silnikiem. Możemy spotkać wiele rozwiązań tego typu w postaci układów scalonych, a jednym z nich jest ULN2003.
Jeśli przyjrzymy się dokumentacji technicznej tego układu scalonego, możemy zobaczyć że pojedyncze wyjście tego układu może obsługiwać napięcia do 50V oraz ma wydajność prądową ciągłą do 500mA. Z tych względów, układ ten świetnie nadaje się do sterowania małymi silnikami elektrycznymi. Możemy także ten układ użyć do sterowania większymi silnikami elektrycznymi, ale tu już konieczne będzie zastosowanie dodatkowych przekaźników pośredniczących – w tym przypadku mikrokontroler wysyła sygnał do drivera ULN2003, który to driver wysterowywuje sygnały w postaci napięć podawanych na cewki przekaźników, których obwody prądowe (styki robocze) są połączone z silnikami – należy przy tym pamiętać, że cewka przekaźnika również ma charakter indukcyjny i generuje przepięcia podczas wyłączania. Możemy więc wraz z układem ULN2003 stosować różne rodzaje obciążeń indukcyjnych takich jak silniki, przekaźniki, styczniki, elektromagnesy i inne podzespoły indukcyjne.
Parametry układu scalonego ULN2003
Układ scalony ULN2003 jest umieszczony w 16-pinowej obudowie, zarówno dostępnej wersji SMD jak i THT. Układ zawiera w sobie siedem par tranzystorów pracujących w układzie Darlingtona – każda z par Darlingtona jest chroniona przez diody przeciwprzepięciowe, dlatego dzięki temu sterownik ULN2003 może obsługiwać jednocześnie do siedmiu odbiorników w postaci obciążeń również o charakterze indukcyjnym – każda z par Darlingtona umieszczona wewnątrz układu scalonego ULN2003 ma maksymalną wydajność prądową ciągłą do 500mA, a prąd szczytowy jaki może w sposób krótkotrwały dostarczyć każde z wyjść, wynosi 600mA, natomiast maksymalne napięcie robocze wyjściowe dla każdej z par Darlingtona wbudowanych w układ, wynosi 50V.
Para Darlingtona
Układ ULN2003, ma w swojej strukturze siedem identycznych kropka w kropkę par tranzystorów połączonych w układzie Darlingtona – pojedyncza para Darlingtona jest złożona z dwóch tranzystorów bipolarnych, które cechują się dopuszczalnym napięciem roboczym wynoszącym 50V pomiędzy kolektorem a emiterem końcowego tranzystora w parze oraz maksymalnym prądem wyjściowym ciągłym wynoszącym 500mA, a w szczycie do 600mA (np. podczas włączania obciążenia na wyjściu. Tranzystory tworzące parę Darlingtona mają wspólny emiter oraz wyjście typu otwarty kolektor.
Diody przeciwprzepięciowe
Układ scalony ULN2003 ma wbudowane diody przeciwprzepięciowe, które chronią każdą z siedmiu par Darlingtona przed uszkodzeniem wskutek wstecznie spolaryzowanej siły elektromotorycznej powstającej w wyniku wyłączania obwodów zawierających indukcyjności. Oznacza to, że kiedy na wyjście układu mamy podłączone przekaźniki lub silniki, nie musimy podłączać dodatkowych diod przeciwprzepięciowych, ponieważ są one wbudowane standardowo w strukturę układu ULN2003.
Praktyczne zastosowania układu scalonego ULN2003
Układ drivera ULN2003, ma szeroki zakres zastosowań praktycznych zarówno w elektronice amatorskiej jaki profesjonalnej. Do najważniejszych zastosowań tego układu, należą między innymi bufory w układach logicznych, drivery linii komunikacyjnych, sterowanie przekaźnikami i stycznikami, sterowanie lampkami kontrolnymi, sterowanie segmentowymi wyświetlaczami LED, a także sterowanie silnikami elektrycznymi, w szczególności silnikami szczotkowymi DC oraz silnikami krokowymi.
ULN2003 - sterowanie segmentami wyświetlacza LED
Jedną z często spotykanych aplikacji układu ULN2003, jest sterowanie diodami LED, w tym diodami LED stanowiącymi wyświetlacze siedmiosegmentowe. Sterowanie można zaimplementować podłączając piny mikrokontrolera skonfigurowane jako wyjścia do wejść sterujących układu ULN2003, natomiast do wyjść układu ULN2003 podłączamy anody diod LED stanowiące segmenty wyświetlacza (dla wyświetlacza LED o wspólnej katodzie). Kiedy podamy wysoki stan logiczny na odpowiednie wejścia układu, wówczas na odpowiednich wyjściach pojawi się stan logiczny wysoki – np. stan wysoki na wejściu IN1 spowoduje odpowiednio stan wysoki na wyjściu OUT1 i zaświecenie segmentu LED, którego anoda jest połączona z tym wyjściem i odpowiednio ściągnięcie stanu logicznego na wejściu IN1 do poziomu niskiego, spowoduje powstanie poziomu niskiego na wyjściu OUT1 i zgaszenie docelowo sterowanego segmentu wyświetlacza LED. Należy pamiętać, że w celu wyświetlenia odpowiedniego znaku (np. cyfry “3”) musimy zaprogramować mikrokontroler tak, aby wysterowywał odpowiednie wejścia układu ULN2003 oraz podłączone do jego wyjść segmenty.
Jak oceniasz ten wpis blogowy?
Kliknij gwiazdkę, aby go ocenić!
Średnia ocena: 5 / 5. Liczba głosów: 4
Jak dotąd brak głosów! Bądź pierwszą osobą, która oceni ten wpis.