Amperomierz LM3914

|

Strona przeniesiona na nowy adres:
extronic.pl


Radio FM na TDA7088T

|



To skromne radyjko to moje osobiste porachunki z elektroniką analogową :) jak dotychczas projektowałem wyłącznie układy cyfrowe, w których najbardziej zaawansowanym elementem analogowym był stabilizator 7805. Stwierdziłem, że czas aby w kolekcji moich wynalazków znalazło się jakieś urządzenie analogowe, aczkolwiek muszę przyznać, że schemat zerżnąłem prosto ze strony http://www.circuits.8m.com/Fm-radio.htm i moja inwencją twórcza ograniczyła się jedynie do zaprojektowania płytki.

Radio typu SCAN/RESET

Zapewne nie raz widzieliście małe tanie radyjka z dwoma przyciskami. SCAN wyszukuje następną stację, a RESET powoduje powrót do początku zakresu. Sercem odbiorników tego typu jest scalaczek TDA7088T albo jego wschodni brat CD9088CB. Są to układy ASIC wysokiej skali integracji, do których podłącza się tylko to, czego nie dało się zintegrować na strukturze krzemowej, czyli większe kondensatory, cewki oraz diodę pojemnościową.

Elementy elektroniczne, zestawy prototypowe, Arduino


Z kondensatorami właściwie nie ma problemu. Cewki trzeba obliczyć i obwinąć ręcznie, bo wykorzystywane są nietypowe wartości 70nH i 78nH. Przydatny do tego jest miernik indukcyjności. Niestety takiego nie posiadam :) i dopiero za trzecim razem udało mi się nawinąć je właściwie. Złe cewki powodują niepełne pokrycie zakresu 88-108MHz. Warto tu dodać, że rozciągnięcie cewki zmniejsza jej indukcyjność, a ściśnięcie lub włożenie metalowego rdzenia do środka tę indukcyjność zwiększa. Wzorek na obliczenie cewki jest prosty:
Indukcyjność cewki powietrznej jednowarstwowej można obliczyć ze wzoru:
gdzie: długość cewki l i średnica d w cm, n - liczba zwojów, L - indukcyjność cewki w mH (miliHenrach). Najwyższą wartość dobroci otrzyma się wówczas, gdy długość cewki jest 2 do 2,5 raza większa niż jej średnica, średnica cewki powinna być 5 razy większa niż średnica drutu.

Mikrokontrolery XMEGA

Dioda pojemnościowa to dziwadełko, które służy do automatycznego strojenia i bez niej nie ma co zabierać się do roboty, bo nic nie będzie działać. W sklepach detalicznych trudno szukać w ogóle jakichkolwiek diod pojemnościowych, a z hurtowni jedną sztukę ściągać nie wypada. Dobrym pomysłem jest wymontowanie jej z chińskiego radyjka za 5zł :) miałem takie w moich szpargałach, zepsute oczywiście :) ostatnim elementem na który trzeba zwrócić uwagę jest potencjometr. Koniecznie musi być logarytmiczny! W przypadku zamontowania liniowego dostaniemy cholery przy regulowaniu głośności!


Całość jest wykonana na elementach SMD i zlutowana przy pomocy płyty grzejnej. Polecam wszystkim tę metodę. Elementy zlutowały się same w jednej chwili. Głośnik wprawdzie szkaradny i wyjęty ze śmietnika, ale jakość ma wyśmienitą. Ostatnią rzeczą jest antena - podręcznikowa powinna mieć długość połowy długości fali. W praktyce radio odbiera mocne stacje z niewielkim kawałkiem drutu.


Układ zasila się napięciem typowo 3V, max 5V i pobiera ok 10mA. Radio ma wielkość mniej więcej pudełka od zapałek. Gdyby ktoś zaprojektował płytkę dwustronną na mniejszych elementach SMD to mógłby to radio zmieścić w długopisie :) Warto rzucić okiem na schematy ze strony http://www.circuits.8m.com/Fm-radio.htm - przy pomocy TDA7088T można zrobić nawet odbiornik stereo!
Pliki do pobrania:

Jeżeli ktoś chce gotowe płytki - proszę o kontakt!

W środku układu scalonego

|



Co siedzi w środku, zwykle czarnego kanciatego układu scalonego? Otóż w środku niego znajduje się bajecznie kolorowa struktura krzemowa, która mieni się wszystkimi kolorami tęczy, a pod mikroskopem wygląda wprost fenomenalnie. Dzięki uprzejmości szefa firmy Securus, gdzie robiłem praktyki, zamieszczam ich fotografie. Jeżeli ktoś w Poznaniu ma dostęp do mikroskopu z możliwością robienia zdjęć wysokiej rozdzielczości, proszę o kontakt. Posiadam całkiem sporą kolekcję pamięci EPROM, które zawierają elementy tak małe, że nie dało się ich sfotografować, aczkolwiek wyglądają fantastycznie. Między innymi takimi rzeczami zajmowałem się na praktykach :)





Elementy elektroniczne, zestawy prototypowe, Arduino



Mikrokontrolery XMEGA



Świat bez inżynierów

|

Strona przeniesiona na nowy adres:
extronic.pl


Zasilacz LM317




Dlaczego tanie wino jest dobre? Bo jest tanie i dobre! To samo można powiedzieć o zasilaczu na LM317 - regulowanym stabilizatorze bardzo popularnym od wielu lat. Prezentowany tutaj zasilacz jest kompatybilny z ładowarką od Nokii, którą bez trudu można dostać. Niewielka ilość popularnych elementów sprawia, że ten zasilacz jest wyjątkowo tani. Ponadto jest wyposażony z złącza Blond - szybkie i tanie złączki, bez możliwości błędnego połączenia.


LM317 jest bardzo dobrym regulowanym stabilizatorem. Umożliwia uzyskanie napięcia wyjściowego w zakresie od 1,25V do 37V przy wykorzystaniu najprostszych elementów biernych. W prezentowanym układzie możliwość regulacji została ograniczona do 12V. Przy zastosowaniu bardziej rozbudowanych elementów można uzyskać regulację od 0V, regulowany ogranicznik prądu oraz zdalne włączanie i wyłączanie z innego układu. Takie możliwości ma zasilacz pokazany na tej stronie.

Elementy elektroniczne, zestawy prototypowe, Arduino

Układ scalony LM317 wyposażony jest w szereg zabezpieczeń.
  • Zabezpieczenie termiczne - w układ wbudowany jest termometr, który po przekroczeniu 110'C obniży napięcie wyjściowe w taki sposób, aby układ pracował dalej, ale nie nagrzewał się jeszcze bardziej
  • Zabezpieczenie nadprądowe - w układ wbudowany jest stały ogranicznik, który nie pozwoli, by pobierany prąd przekroczył 1,5A
  • Zabezpieczenie przeciwzwarciowe - zwarcie wyjścia do masy jest zupełnie nieszkodliwe dla układu
Należy jednak pamiętać, że te zabezpieczenia dotyczą tylko stabilizatora LM317, a nie transformatora czy zasilanego urządzenia! Moje doświadczenie pokazuje, że zabezpieczenia bardzo skuteczne. Układ dobrze znosi obciążenia indukcyjne i jest nie do zarżnięcia :)
Mikrokontrolery XMEGA


Zasilacz jest wyposażony we wtyczkę DC 3,5/1,1mm (DCPS1813), która jest kompatybilna z ładowarką Nokia ACP-7E, czyli tą popularną, stosowaną w latach 1998-2008 z tzw. większą wtyczką, jak w Nokii 3310. Oprócz tego, dostępne jest także trzypinowe złącze Blond, umożliwiające zasilenie regulatora z innego źródła, np. transformatora sieciowego lub innego zasilacza albo zasilenie czegoś prosto z ładowarki, bez pośrednictwa LM317. Ładowarka od Nokii ma obciążalność ok 0,5A - mam kilka takich ładowarek i każda ma trochę inne parametry. Przy takim prądzie LM317 nie musi mieć radiatora.

Jeżeli potrzebujemy większy prąd, można zastosować kompatybilne układy, które różną się jedynie ogranicznikiem prądowym i ceną. Można je wlutować do zamieszczonej płytki bez żadnych modyfikacji, z wyjątkiem ostatniego. Odsyłam do dokumentacji. Oczywiście przy większych obciążeniach należy dołączyć odpowiedni radiator.
  • LM317 - 1,5A
  • LM350 - 3A
  • LM338 - 5A
  • LM396 - 10A


Złącze zasilające Blond


Od jakiegoś czasu stosuję takie złącza we wszystkich moich konstrukcjach. Jest tańsze niż banany, wygodniejsze niż złącza śrubowe i bardzo proste w budowie. Ponadto, nie ma możliwości odwrotnego podłączenia biegunów.


W zasilaczu znajdują się dwa trzypinowe wyjścia. Skrajne piny to masa (minus), a pin środkowy to Vcc (plus). Symetryczna budowa złącza uniemożliwia odwrotne podłączenie. Złączki w zasilaczu to kawałki popularnej listwy dziurek do goldpinów, a w urządzeniu zasilanym znajdują się trzy goldpiny. Kabel zasilający z jednej strony ma dziurki, a z drugiej są piny, analogicznie do zwykłego sieciowego przedłużacza.

Budowa wtyczki w kablu jest bardzo prosta - dwa skrajne piny są zlutowane drucikiem, a środkowy pin owinięty jest taśmą izolacyjną. Wszystko jest schowane w rurce termokurczliwej (tzw. termokurczak). Kabel jest oczywiście dwużyłowy. Złączki w zasilaczu i odbiorniku również mają połączone skrajne piny. Polecam wszystkim taki sposób zasilania układów, ponieważ jest tani, szybki i wygodny.


Zastosowanie


Pierwszy egzemplarz tego zasilacza zbudowałem dla Kasi do podświetlania jej makiety - 40 żółtych diod LED. Efekt jest fantastyczny, tak samo jak cała makieta. Kasiu pozdrawiam Cię :*

Pliki do pobrania:

Płytki rozwojowe do mikrokontrolerów




Płytki stykowe to bardzo dobry i wygodny wynalazek, służący do szybkiego budowania prototypów bez użycia lutownicy i wielokrotnego montowania elementów bez ich niszczenia. W praktyce często stosuje się typowe układy jak wyświetlacz multipleksowany czy klawiatura matrycowa, które wprawdzie nie są skomplikowane, ale ich zmontowanie na płytce jest czasochłonne. Ponadto, takie układy występują bardzo często. Dlaczego by nie zrobić osobnych płytek na których na stałe będą klawisze i wyświetlacze?
Spis treści:
Pliki do pobrania:
Tak było wcześniej. Zmontowanie zajęło ponad godzinę. A tak jest teraz. To dokładnie ten sam układ co wyżej, ale zmontowany w... kilka minut.
Elementy elektroniczne, zestawy prototypowe, Arduino

Wyświetlacz LED trójkolowy

Zawiera diody zielone i czerwone, a przy jednoczesnym świeceniu dają światło żółte. Są one w obudowie pojedynczej ze wspólną anodą. Zwykły, jednokolorowy wyświetlacz posiada dwie anody (pin 3 i 8). W tym wynalazku jest anoda diod zielonych i druga anoda diod czerwonych. Zastosowałem połączenie multipleksowe, co daje nam osiem wyprowadzeń segmentów i osiem wyprowadzeń anod - w sam raz do mikrokontrolera ośmiobitowego :)
Mikrokontrolery XMEGA

Ze względu na nietypowe wyświetlacze, schemat również jest trochę nietypowy. Doświadczonemu elektronikowi rzucą się w oczy nietypowe wartości rezystorów - wszystko dlatego, aby diody zielone i czerwone równocześnie świeciły tak samo jasno. Poza tym, chciałem oszczędzić rezystorów na segmenty i dlatego ich tam nie ma. Wyświetlacz jest z założenia przystosowany do połączenia multipleksowego, aczkolwiek można go także używać bez multipleksowania - należy wtedy wybrać jedną anodę lub ewentualnie dwie anody tego samego wyświetlacza, aby świecił na żółto. Przy multipleksowaniu świeci trochę słabiej niż bez. Segmenty są zapalane zerami, cyfry też są zapalane zerami. Wyświetlacze tego typu można kupić w sklepie AVT za 2zł sztuka. Można również stosować wyświetlacze jednokolorowe, byle ze wspólną anodą.

Klawiatura matrycowa 4x4

Połączenie matrycowe pozwala dołączyć aż 16 klawiszy do 8-bitowego portu mikrokontrolera. Zasada odczytu jest bardzo prosta - kolumny podłączamy do pinów 0123 i w rejestrze DDR ustawiamy je jako wyjścia (=1) o stanie początkowym 0, a wiersze łączymy z pinami 4567, które ustawiamy na wejścia (=0) z podciągnięciem do zasilania. W pierwszej fazie skanowania, przypisujemy pierwszej kolumnie wartość 0 i sprawdzamy czy w rejestrze PIN kolejnych wierszy przypadkiem nie pojawiło się 0, co oznacza wciśnięcie klawisza. Później 0 ustawiane jest na kolejnej kolumnie i skanowanie wierszy przebiega tak samo. Procedura jest bardzo prosta. Przykładowy kod programu, chyba najprostszy z możliwych, bez żadnych pętli i przesunięć, zamieszczam poniżej. Funkcja read_keypad zwraca wartość typu unsigned char, czyli po prostu klawisz. Niekoniecznie musi to być wartość 1-16. Równie dobrze można wpisać 'a' 'b' 'c' pamiętając o 'apostrofach'. Jeżeli funkcja nie stwierdzi wciśnięcia żadnego klawisza, zwróci wartość zero. Jeszcze słowo na temat co to jest asm volatile("nop") - bez tego funkcja nie działa, ponieważ ustawiamy rejestr PORT i od razu odczytujemy rejestr PIN. Dzieje się to za szybko. PIN nie zdąży odczytać zera ustawionego w kolumnie i dlatego funkcja nie zauważy wciśnięcia przycisku. Komenda nop każe procesorowi odczekać jeden cykl zegarowy, aby w rejestrze PIN znalazła się "aktualne zero" kolumny, która ma być przeskanowana.

void init(void) {            // 1 wyjscie, 0 wejscie

    DDRB = 0b00001111;        // klawiatura matrycowa
    PORTB = 0b11110000;
}

unsigned char read_keypad(void) {
    
    // kolumny - piny 0123
    // wiersze - piny 4567
    
    PORTB = 0b11111110;                    // 1 wiersz
    asm volatile("nop");
    if(!(PINB & _BV(4))) return 1;            // 1 kolumna
    if(!(PINB & _BV(5))) return 2;            // 2 kolumna
    if(!(PINB & _BV(6))) return 3;            // 3 kolumna
    if(!(PINB & _BV(7))) return 4;            // 4 kolumna
    PORTB = 0b11111101;                    // 2 wiersz
    asm volatile("nop");
    if(!(PINB & _BV(4))) return 5;
    if(!(PINB & _BV(5))) return 6;
    if(!(PINB & _BV(6))) return 7;
    if(!(PINB & _BV(7))) return 8;
    PORTB = 0b11111011;                    // 3 wiersz
    asm volatile("nop");
    if(!(PINB & _BV(4))) return 9;
    if(!(PINB & _BV(5))) return 10;
    if(!(PINB & _BV(6))) return 11;
    if(!(PINB & _BV(7))) return 12;   
    PORTB = 0b11110111;                    // 4 wiersz
    asm volatile("nop");
    if(!(PINB & _BV(4))) return 13;
    if(!(PINB & _BV(5))) return 14;
    if(!(PINB & _BV(6))) return 15;
    if(!(PINB & _BV(7))) return 16;
    return 0;
}

Klawisze

Tutaj nie ma nic do gadania :) Zwykłe, zwyczajne klawisze. Nie mają wbudowanych rezystorów podciągających, więc należy pamiętać o wpisaniu jedynek do rejestru PORT. Linię wspólną należy podłączyć do masy. Do sprawdzenia czy przycisk na linii PB0 został wciśnięty, stosuje się jedno z poniższych poleceń:

if(bit_is_clear(PINB,0)) {...}
if(!(PINB & 0b00000001)) {...}
if(!(PINB & _BV(0))) {...}

 

DIPswitch

Dokładnie to samo co klawisze powyżej, ale nie trzeba ich cały czas wciskać, a jedynie przesunąć suwak. Bardzo wygodne jeżeli nie trzeba tego robić zbyt często ;) Polecam DIPswitch umieścić w podstawce DIL16, ponieważ przełączniki po pewnym czasie odmawiają posłuszeństwa i łatwiej je wtedy wymienić.

Linijka LED (LEDBAR)

LEDBAR jest bardzo fajnym elementem. Zamiast podłączać 10 diod osobno, mamy już wszystko w formie scalonej. Jeszcze by tego brakowało aby i rezystory scalić do środka :) W zależności od tego, którą stroną włożymy LEDBAR w podstawkę, uzyskujemy linijkę ze wspólną anodą połączoną z zasilaniem (zapalanie zerami) lub ze wspólną katodą połączoną z masą (zapalanie jedynkami). Rezystory 220R zostały dobrane dla diod żółtych. Dla innych kolorów należy je dobrać w sposób właściwy ;)

Kabelki i taśmy

Przykładowy wyświetlacz ma 8 segmentów i 8 anod, co daje 16 połączeń. Celem tego wszystkiego jest maksymalne zaoszczędzenie czasu przy zachowaniu dużej elastyczności. Dobrym pomysłem było kupienie metra taśmy 10-żyłowej i wykonanie z niej kabelków oraz taśm 4-żyłowych. Wykonałem je bardzo szykbo przylutowując kabelki do niepociętego rzędu goldpinów. Całość zalałem klejem kropleką, aby piny się nie wysuwały. Z drugiej strony przylutowałem drugi rząd goldpinów i również je przykleiłem. Tak powstało coś w rodzaju 40-żyłowej taśmy, którą następnie pociąłem na pojedyncze kabelki. Aby wszystko było eleganckie, nałożyłem koszulki termokurczliwe (termokurczak).