Urządzenie oparte jest na mikrokontrolerze atmega8. Schematy urządzeń mikrokontrolerowych

Rzemiosło z mikrokontrolerami to pytanie bardziej aktualne i interesujące niż kiedykolwiek. W końcu żyjemy w XXI wieku, epoce nowych technologii, robotów i maszyn. Dziś co druga osoba już od najmłodszych lat potrafi korzystać z Internetu i różnego rodzaju gadżetów, bez których czasem trudno obejść się w życiu codziennym.

Dlatego w tym artykule poruszymy w szczególności kwestie wykorzystania mikrokontrolerów, a także ich bezpośredniego wykorzystania w celu ułatwienia misji, przed którymi stoimy każdego dnia. Przekonajmy się, jaka jest wartość tego urządzenia i jak łatwo jest z niego skorzystać w praktyce.

Mikrokontroler to układ scalony, którego zadaniem jest sterowanie urządzeniami elektrycznymi. Klasyczny kontroler łączy w jednym chipie zarówno działanie procesora, jak i urządzeń zdalnych oraz zawiera urządzenie pamięci o dostępie swobodnym. Ogólnie rzecz biorąc, jest to jednoukładowy komputer osobisty, który może wykonywać stosunkowo zwyczajne zadania.

Różnica między mikroprocesorem a mikrokontrolerem polega na obecności urządzeń start-stop, timerów i innych zdalnych struktur wbudowanych w chip procesora. Zastosowanie w obecnym sterowniku dość wydajnego aparatu obliczeniowego o szerokich możliwościach, zbudowanego na monoukładzie, a nie na pojedynczym zestawie, znacznie zmniejsza skalę, zużycie i cenę tworzonych na jego bazie urządzeń.

Wynika z tego, że takie urządzenie może znaleźć zastosowanie w technice komputerowej, np. kalkulatorze, płycie głównej, kontrolerach CD. Znajdują także zastosowanie w elektrycznych urządzeniach gospodarstwa domowego – kuchenkach mikrofalowych, pralkach i wielu innych. Mikrokontrolery są również szeroko stosowane w mechanice przemysłowej, począwszy od mikroprzekaźników po techniki sterowania obrabiarkami.

Mikrokontrolery AVR

Zapoznajmy się z bardziej powszechnym i ugruntowanym kontrolerem we współczesnym świecie technologii, takim jak AVR. Składa się z szybkiego mikroprocesora RISC, 2 typów energochłonnej pamięci (pamięci podręcznej projektu Flash i pamięci podręcznej informacji EEPROM), operacyjnej pamięci podręcznej typu RAM, portów we/wy i różnorodnych struktur zdalnych interfejsów.

  • temperatura pracy waha się od -55 do +125 stopni Celsjusza;
  • temperatura przechowywania wynosi od -60 do +150 stopni;
  • najwyższe napięcie na pinie RESET, zgodnie z GND: maksymalnie 13 V;
  • maksymalne napięcie zasilania: 6,0 V;
  • maksymalny prąd elektryczny linii wejściowej/wyjściowej: 40 mA;
  • Maksymalny prąd na linii zasilającej VCC i GND: 200 mA.

Możliwości mikrokontrolera AVR

Absolutnie wszystkie, bez wyjątku, mikrokontrolery typu Mega mają właściwość niezależnego kodowania, możliwość zmiany elementów pamięci sterownika bez pomocy z zewnątrz. Ta cecha charakterystyczna sprawia, że ​​za ich pomocą można tworzyć bardzo elastyczne koncepcje, a sposób ich działania jest zmieniany osobiście przez mikrokontroler w powiązaniu z konkretnym obrazem, zdeterminowanym zdarzeniami zewnętrznymi lub wewnętrznymi.

Obiecana liczba obrotów spisu pamięci podręcznej dla mikrokontrolerów AVR drugiej generacji wynosi 11 tysięcy obrotów, podczas gdy standardowa liczba obrotów wynosi 100 tysięcy.

Konfiguracja struktury portów wejściowych i wyjściowych AVR jest następująca: celem wyjścia fizjologicznego są trzy bity regulacji, a nie dwa, jak w dobrze znanych kontrolerach bitowych (Intel, Microchip, Motorola itp.). ). Ta właściwość eliminuje potrzebę posiadania w pamięci zduplikowanego elementu portu w celach ochronnych, a także przyspiesza efektywność energetyczną mikrokontrolera w połączeniu z urządzeniami zewnętrznymi, a mianowicie w przypadku powiązanych problemów elektrycznych na zewnątrz.

Wszystkie mikrokontrolery AVR są wyposażone w wielopoziomową technologię tłumienia. Wydaje się, że przerywa standardowy tok rusyfikacji, aby osiągnąć cel priorytetowy i zdeterminowany pewnymi wydarzeniami. Istnieje procedura konwersji wniosku o zawieszenie dla konkretnego przypadku, która znajduje się w pamięci projektu.

Kiedy pojawia się problem powodujący wyłączenie, mikrokontroler zapisuje liczniki regulacji komponentów, wstrzymuje wykonanie tego programu przez procesor główny i rozpoczyna wykonywanie procedury przetwarzania zamknięcia. Po zakończeniu wykonywania, pod patronatem programu zawieszenia, wcześniej zapisany licznik programu zostaje wznowiony, a procesor kontynuuje realizację niedokończonego projektu.

Rzemiosło oparte na mikrokontrolerze AVR

Rękodzieło DIY wykorzystujące mikrokontrolery AVR staje się coraz bardziej popularne ze względu na ich prostotę i niskie koszty energii. Czym są i jak je wykonać własnymi rękami i umysłem, zobacz poniżej.

"Dyrektor"

Takie urządzenie zostało zaprojektowane jako mały pomocnik dla osób preferujących spacery po lesie, a także przyrodników. Pomimo tego, że większość telefonów posiada nawigator, do pracy wymagają one połączenia z Internetem, a w miejscach odizolowanych od miasta jest to problem, nie rozwiązano także problemu z doładowaniem w lesie. W takim przypadku wskazane byłoby mieć przy sobie takie urządzenie. Istotą urządzenia jest to, że określa kierunek, w którym należy się poruszać oraz odległość do pożądanej lokalizacji.

Układ zbudowany jest w oparciu o mikrokontroler AVR taktowany z zewnętrznego rezonatora kwarcowego częstotliwością 11,0598 MHz. Za współpracę z GPS odpowiada NEO-6M firmy U-blox. To, choć przestarzały, jest dobrze znanym i budżetowym modułem z dość przejrzystą możliwością określenia lokalizacji. Informacje skupiają się na ekranie Nokii 5670. Model zawiera także miernik fali magnetycznej HMC5883L i akcelerometr ADXL335.


Bezprzewodowy system alarmowy z czujnikiem ruchu

Przydatne urządzenie, które zawiera urządzenie do poruszania się i możliwość nadania, w zależności od kanału radiowego, znaku, że zostało uruchomione. Konstrukcja jest ruchoma i ładowana za pomocą baterii lub baterii. Aby to zrobić, trzeba mieć kilka modułów radiowych HC-12, a także czujnik ruchu HC-SR501.

Urządzenie ruchowe HC-SR501 działa przy napięciu zasilania od 4,5 do 20 woltów. Aby zapewnić optymalną pracę z akumulatorem litowo-jonowym, należy ominąć diodę LED bezpieczeństwa na wejściu zasilania i zamknąć dostęp i wyjście stabilizatora liniowego 7133 (2. i 3. nóżka). Po zakończeniu tych procedur urządzenie rozpoczyna stałą pracę przy napięciu od 3 do 6 woltów.


Uwaga: przy współpracy z modułem radiowym HC-12 czasami zdarzało się, że czujnik działał fałszywie. Aby tego uniknąć należy 2-krotnie zmniejszyć moc nadajnika (polecenie AT+P4). Czujnik zasilany jest olejem, a jedna naładowana bateria o pojemności 700 mAh wystarczy na ponad rok.

Miniterminal

Urządzenie okazało się wspaniałym asystentem. Jako podstawa do produkcji urządzenia potrzebna jest płytka z mikrokontrolerem AVR. Ze względu na to, że ekran jest podłączony bezpośrednio do kontrolera, napięcie zasilania nie powinno przekraczać 3,3 V, ponieważ wyższe wartości mogą powodować problemy z urządzeniem.


Należy wziąć moduł konwertera oparty na LM2577, a podstawą może być akumulator Li-Ion o pojemności 2500 mAh. Dostępny będzie przydatny pakiet, który zapewnia stałe napięcie 3,3 V w całym zakresie napięcia roboczego. Do ładowania użyj modułu opartego na chipie TP4056, który jest uważany za niedrogi i dość wysokiej jakości. Aby móc podłączyć miniterminal do mechanizmów 5 V bez ryzyka spalenia ekranu, należy skorzystać z portów UART.

Podstawowe aspekty programowania mikrokontrolera AVR

Kodowanie mikrokontrolerów jest często wykonywane w stylu asemblera lub SI, jednak można również używać innych języków Forth lub BASIC. Zatem, aby faktycznie przystąpić do prac nad programowaniem sterownika, należy zaopatrzyć się w następujący zestaw materiałów, w skład którego wchodzi: mikrokontroler w ilości trzech sztuk - cieszące się dużą popularnością ATmega8A-PU, ATtiny2313A-PU i ATtiny13A-PU i skuteczne.

Aby zaimplementować program w mikrokontrolerze, potrzebujesz programisty: za najlepszy uważa się programator USBASP, który zapewnia napięcie 5 woltów, które będzie wykorzystywane w przyszłości. Na potrzeby wizualnej oceny i wniosków z wyników projektu potrzebne są zasoby odbicia danych - są to diody LED, cewka LED i ekran.


Aby przestudiować procedury komunikacji mikrokontrolera z innymi urządzeniami, potrzebujesz cyfrowego miernika temperatury DS18B20 i zegara DS1307, który pokazuje prawidłowy czas. Ważne jest również posiadanie tranzystorów, rezystorów, rezonatorów kwarcowych, kondensatorów i przycisków.

Do montażu systemów potrzebna będzie przykładowa płyta montażowa. Do zbudowania projektu na mikrokontrolerze należy zastosować płytkę stykową do montażu bez lutowania i komplet do niej zworek: płytkę próbną MB102 oraz zworki łączące z płytką stykową kilku typów - elastyczne i sztywne, a także w kształcie litery U. Kodowanie mikrokontrolerów odbywa się za pomocą programatora USBASP.

Najprostsze urządzenie oparte na mikrokontrolerze AVR. Przykład

Po zapoznaniu się z tym, czym są mikrokontrolery AVR i ich systemem programowania, rozważmy najprostsze urządzenie, dla którego ten kontroler służy jako podstawa. Podajmy przykład sterownika silników elektrycznych niskiego napięcia. Urządzenie to umożliwia jednoczesne sterowanie dwoma słabymi silnikami elektrycznymi prądu stałego.

Maksymalny możliwy prąd elektryczny, którym można załadować program, wynosi 2 A na kanał, a maksymalna moc silników to 20 W. Na płytce znajduje się para dwuzaciskowych listew zaciskowych do podłączenia silników elektrycznych oraz trójzaciskowa listwa zaciskowa do zasilania wzmocnionego napięcia.

Urządzenie wyglądem przypomina płytkę drukowaną o wymiarach 43 x 43 mm, na której zbudowano miniukład radiatora, którego wysokość wynosi 24 milimetry, a waga to 25 gramów. W celu manipulacji obciążeniem płyta sterownicza zawiera około sześciu wejść.

Wniosek

Podsumowując, mikrokontroler AVR jest użytecznym i cennym narzędziem, szczególnie dla majsterkowiczów. A korzystając z nich prawidłowo, przestrzegając zasad i zaleceń dotyczących programowania, można łatwo zdobyć rzecz przydatną nie tylko w życiu codziennym, ale także w czynnościach zawodowych i po prostu w życiu codziennym.

Witajcie Datagorianie!

Po opublikowaniu mojego pierwszego artykułu zostałem zasypany pytaniami o mikrokontrolery, jak, co, gdzie, dlaczego…

Abyś mógł zrozumieć, jak działa ta czarna skrzynka, opowiem Ci o mikrokontrolerze (zwanym dalej MK) ATmega8. W zasadzie Atmel produkuje całą serię MK z rodziny AVR – są to podrodziny Tiny i Mega. Nie będę opisywał zalet niektórych MK; to Ty decydujesz, co najbardziej Ci odpowiada. Niektórzy przedstawiciele dalszej rodziny:

Zatem ATmega8, najprostszy MK ze wszystkich ATmegas:

Zacznijmy studiować elementy wewnętrzne, korzystając z uproszczonego schematu strukturalnego:

To jest uogólniony schemat wszystkich ATmega.

Wszystkie mikrokontrolery AVR zbudowane są w oparciu o tzw. architekturę Harvarda, czyli stosuje się oddzielne adresowanie pamięci programu i pamięci danych. Zaletami tej architektury są zwiększona prędkość, np. ATmega wykonuje jedną instrukcję na impuls zegara, czyli przy częstotliwości 16 MHz MK wykonuje 16 milionów operacji na sekundę.

A teraz o flakach w porządku.
1. Generator zegara synchronizuje wszystkie urządzenia wewnętrzne.
2. ROM to urządzenie pamięci tylko do odczytu, służące do przechowywania programów i niezmiennych danych (stałych).
3. Dekoder poleceń - to on jest tutaj najważniejszy, kontroluje wszystko, co mu wpadnie w ręce.
4. ALU to urządzenie arytmetyczno-logiczne, które wykonuje operacje arytmetyczne (dodawanie, odejmowanie itp.) i logiczne (AND, OR, NOT, XOR) na liczbach.
5. RON – rejestry ogólnego przeznaczenia, ALU z nimi współpracuje, a także służą do tymczasowego przechowywania danych. Rejestry RON można łączyć w pary rejestrów:
r26: r27 – X;
r28: r29 – Y;
r30: r31 – Z.

Pary rejestrów służą do pośredniego adresowania danych w pamięci RAM.
6. RAM to urządzenie pamięci o dostępie swobodnym używane do przechowywania danych, tablic i stosów.
7. PORTA-PORTn – komunikacja ze światem zewnętrznym, porty wejścia/wyjścia, no cóż, wiadomo dlaczego…
8. Specjalne UVV to specjalne urządzenia wejścia/wyjścia, kontrolery różnych urządzeń peryferyjnych, na przykład USART (znany również jako port COM), czasami USB, ADC, DAC, I2C, w skrócie, cokolwiek tam jest...

Cóż, to wszystko teoria, ale nie możesz się doczekać, aż coś złożysz, wypróbujesz i sprawisz, że zadziała! Następnie wypiszmy, czego potrzebujemy:

1. Programista z odpowiednim oprogramowaniem, o tym pisałem w ostatnim artykule;
2. Kompilator języka C, Code Vision AVR, ma dobre narzędzia do tworzenia programów dla MK;

Zanim zaczniesz programować w C, dobrze byłoby zapoznać się z literaturą na temat tego języka, jest na przykład wspaniała książka Kernighana i Ritchiego „The C Language”.

OK, zaczynajmy...

Obwód testowy.

Ułóżmy ten diagram:

Będzie to model podstawowy. Nawiasem mówiąc, lepiej zmontować obwód na płytce stykowej i włożyć MK do gniazda. Ale taki schemat nie ma sensu. Dodajmy na przykład diodę LED i nie zapomnijmy o rezystorze ograniczającym prąd. Podłączmy go do pinu zerowego portu B.
Schemat będzie wyglądał następująco:

Włączmy zasilanie... ZERO!!! Czego chciałeś bez programu?
Oznacza…

Napiszmy program!

Uruchomiłeś CVAVR. Jaka jest pierwsza rzecz, którą powinieneś zrobić? Uruchom Code Wizard AVR, klikając przycisk koła zębatego na pasku narzędzi, pojawi się okno kreatora:

Tutaj wybieramy typ MK i częstotliwość zegara. Następnie przejdź do zakładki Porty:

I konfigurujemy, który bit którego portu będzie skonfigurowany jako wejście lub wyjście, port B bit 0 wyśle ​​sygnał, a reszta otrzyma.
Aby zapisać ustawienia, wybierz menu Plik / Generuj Zapisz i wyjdź, wprowadź nazwy plików dla wszystkich kolejnych żądań, pożądane jest, aby były takie same, na przykład „prj”. To wszystko, wygenerowaliśmy tekst źródłowy programu z ustawieniami określonymi w kreatorze.

Zobaczmy, co mamy. Pierwsze 22 linie to komentarz, to znaczy nie ma to żadnego wpływu na działanie programu, więc wszystko pomiędzy „/*” a „*/” jest komentarzem, a kompilator ignoruje to wszystko. W 24-tym członie dołączamy plik nagłówkowy, opisuje on jak nazywają się rejestry i pod jakim adresem się znajdują. W przypadku programowania w języku C szczegóły są tutaj niepotrzebne.
Od linii 28 zaczynamy program główny od definicji funkcji główny(),

Przewińmy poniżej. Zwróć uwagę na linie 36 i 37, tutaj przypisywana jest wartość do portu B i wybierany jest kierunek transmisji. Ogólnie wygląda to tak:

Oznacza to, że jeśli do dowolnego bitu rejestru DDRB zostanie zapisana jedynka, wówczas odpowiadający mu bit portu B będzie działał jako wyjście. W naszym przypadku jest to bit 0.
Swoją drogą porty w ATmega mają jedną fajną cechę: nawet jeśli port jest skonfigurowany na wejście, a rejestr PORTx jest zapisany na jedynki, wewnętrzne rezystory podciągające zostaną podłączone do plusa zasilacza, co eliminuje użycie zewnętrznych rezystorów podwieszanych. Jest to wygodne w przypadku podłączenia dowolnych czujników i przycisków.

Skompilujmy program; w tym celu kliknij przycisk Utwórz projekt lub poprzez menu Projekt / Utwórz. Nie powinno być żadnych błędów, chyba że coś poprawiłeś.

Otwórzmy folder C:\cvavr\bin\, znajdź tam plik prj.hex. To jest program, który skompilowaliśmy dla MK. Podłączmy programator do PC i MK. Uruchommy program Pony Prog i przeciągnijmy plik prj.hex do jego okna. Włącz zasilanie MK i załaduj do niego nasz program... Znowu nic? Problem polega jednak na tym, że nie wysłaliśmy niczego do bitu zerowego portu B, a raczej wyprowadziliśmy go, tylko że wynosi zero. Aby nasza dioda LED się zaświeciła, musimy wyprowadzić jedną. Zróbmy to samo, zamień „PORTB=0x00;” w linii 36 na „PORTB=0x01;”. Skompilujmy program jeszcze raz. Natomiast w programie Pony Prog załadujemy plik ponownie za pomocą skrótu klawiaturowego Ctrl+L lub menu Plik / Załaduj ponownie pliki. Usuńmy MK i prześlijmy do niego oprogramowanie ponownie. hurra!!! TO DZIAŁA!!!

Nawiasem mówiąc, Pony Prog obsługuje skrypty i aby nie martwić się ponownym uruchomieniem, kasowaniem i pisaniem, możesz po prostu napisać skrypt z rozszerzeniem .e2s i nazwać go na przykład prog.e2s. Można to zrobić za pomocą notatnika. Jego zawartość będzie wyglądać następująco:

WYBIERZ URZĄDZENIE ATMEGA8
WYCZYŚĆ BUFOR
LOAD-ALL prj.hex
WYMAŻ WSZYSTKO
NAPISZ WSZYSTKO

Skrypt należy umieścić w tym samym folderze co plik .hex i uruchomić poprzez dwukrotne kliknięcie. Możesz umieścić skrót na pulpicie, w zależności od tego, jak wygodnie jest...

Ciąg dalszy nastąpi…

Informacje ogólne

Ta wersja kontrolera Arduino, jeśli nie najprostsza, to z pewnością najtańsza do samodzielnej produkcji. Opiera się na klasycznym już układzie Arduino na kontrolerze ATMega8.

W sumie opracowano dwie opcje:

  • Modułowy
  • Pojedyncza tablica

Opcja modułowa

Ta opcja kontrolera składa się z trzech płytek:

Opcja pojedynczej deski

Wszystko jest takie samo, tylko na jednej płycie:

Płytka wykonana jest z jednostronnie foliowanej PCB i można ją odtworzyć w domu wykorzystując np. technologię LUT. Wymiary planszy: 95x62

Programowanie mikrokontrolerów

Po złożeniu płytki należy „sflashować” kontroler, załadować do niego „bootloader”. Do tego potrzebny będzie programista. Bierzemy czysty kontroler typu ATMega8, instalujemy go w programatorze i podłączamy do komputera. Użyłem programatora AVR ISP mkII z adapterem ATMega8-48-88-168. Programujemy za pomocą Arduino IDE, automatycznie ustawi niezbędne bity bezpieczników. Sekwencja jest następująca:

1. Wybierz programistę (Serwis > Programista > AVRISP mkII). Jeżeli programator ten jest używany po raz pierwszy, należy zainstalować sterownik AVRISP-MKII-libusb-drv.zip. Jeżeli korzystasz z innego programatora niż AVRISP mkII to musisz wybrać z listy ten, którego potrzebujesz.

2. Wybór płytki pod mikrokontroler (Narzędzia > Płytka > Arduino NG lub starsza z ATmega8). Jeśli używasz innego mikrokontrolera niż ATmega8, to musisz wybrać pasującą do niego płytkę.

3. Nagraj program ładujący (Narzędzia > Nagraj program ładujący).

4. Zainstaluj kontroler na płytce i gotowe, Arduino jest gotowe do pracy.

Zegar zmontowany na mikrokontrolerze ATtiny2313 i matrycy LED pokazuje czas w 6 różnych trybach.

Matryca LED 8*8 sterowana jest metodą multipleksowania. Aby uniknąć zepsucia projektu, w obwodzie pominięto rezystory ograniczające prąd, a ponieważ poszczególne diody LED nie są stale zasilane, nie ulegną uszkodzeniu.

Do sterowania służy tylko jeden przycisk, długie naciśnięcie przycisku (naciśnij i przytrzymaj), aby obrócić menu i normalne naciśnięcie przycisku, aby wybrać menu.

Jest to projekt hobbystyczny, więc dokładność zegara zależy jedynie od kalibracji wewnętrznego oscylatora sterownika. W tym projekcie nie użyłem kwarcu, ponieważ zajmowałby on dwa potrzebne mi piny ATtiny2313. Kwarc może zostać użyty do poprawy precyzji w alternatywnym projekcie (PCB).

Licznik częstotliwości do 500 MHz na Attiny48 i MB501

Tym razem zaprezentuję prosty, niewielkich rozmiarów miernik częstotliwości o zakresie pomiarowym od 1 do 500 MHz i rozdzielczości 100 Hz.

Obecnie, niezależnie od producenta, prawie wszystkie mikrokontrolery posiadają tzw. wejścia zliczające, które są specjalnie zaprojektowane do zliczania impulsów zewnętrznych. Korzystając z tego wejścia, stosunkowo łatwo jest zaprojektować licznik częstotliwości.

Jednakże to wejście licznika ma również dwie właściwości, które uniemożliwiają bezpośrednie wykorzystanie licznika częstotliwości do zaspokojenia większych potrzeb. Jednym z nich jest to, że w praktyce w większości przypadków mierzymy sygnał o amplitudzie kilkuset mV, który nie jest w stanie poruszyć licznika mikrokontrolera. W zależności od typu, do prawidłowego działania wejścia wymagany jest sygnał o wartości co najmniej 1-2 V. Inną rzeczą jest to, że maksymalna mierzalna częstotliwość na wejściu mikrokontrolera wynosi tylko kilka MHz, zależy to od architektury licznika, a także od konstrukcji. prędkość zegara procesora.

Termostat do czajnika elektrycznego na ATmega8 (Thermopot)

Urządzenie to pozwala kontrolować temperaturę wody w czajniku, posiada funkcję utrzymywania temperatury wody na określonym poziomie, a także włączania wymuszonego zagotowania wody.

Urządzenie oparte jest na mikrokontrolerze ATmega8, który taktowany jest rezonatorem kwarcowym o częstotliwości 8 MHz. Czujnik temperatury – analogowy LM35. Wskaźnik siedmiosegmentowy ze wspólną anodą.

Gwiazda noworoczna na Attiny44 i WS2812

Ta dekoracyjna gwiazda składa się z 50 specjalnych diod LED RGB, które są sterowane ATtiny44A. Wszystkie diody LED stale zmieniają kolor i jasność w sposób losowy. Istnieje również kilka rodzajów efektów, które również są aktywowane losowo. Trzy potencjometry umożliwiają zmianę intensywności kolorów podstawowych. Pozycja potencjometru jest wskazywana przez diody LED po naciśnięciu przycisku, a zmianę koloru i prędkość efektu można przełączać w trzech stopniach. Projekt ten został zbudowany w całości na komponentach SMD ze względu na specjalny kształt płytki PCB. Pomimo prostej konstrukcji konstrukcja deski jest dość złożona i raczej nie będzie odpowiednia dla początkujących.

Przetwornica częstotliwości dla silnika asynchronicznego na AVR

W artykule opisano uniwersalną trójfazową przetwornicę częstotliwości opartą na mikrokontrolerze (MK) ATmega 88/168/328P. ATmega przejmuje pełną kontrolę nad sterowaniem, wyświetlaczem LCD i generacją trójfazową. Projekt miał działać na gotowych płytach takich jak Arduino 2009 czy Uno, jednak tak się nie stało. W przeciwieństwie do innych rozwiązań, sinusoida nie jest tutaj obliczana, ale wyprowadzana z tabeli. Oszczędza to zasoby, miejsce w pamięci i umożliwia MCU przetwarzanie i monitorowanie wszystkich elementów sterujących. W programie nie są wykonywane obliczenia zmiennoprzecinkowe.

Częstotliwość i amplitudę sygnałów wyjściowych reguluje się za pomocą 3 przycisków i można je zapisać w pamięci EEPROM MK. Podobnie zapewnione jest sterowanie zewnętrzne poprzez 2 wejścia analogowe. Kierunek obrotów silnika ustalany jest za pomocą zworki lub przełącznika.

Regulowana charakterystyka U/f umożliwia dostosowanie do wielu silników i innych odbiorców. Zastosowano także zintegrowany regulator PID dla wejść analogowych, parametry regulatora PID można przechowywać w pamięci EEPROM. Czas przerwy pomiędzy przełącznikami kluczykowymi (Czas martwy) można zmienić i zapisać.

Miernik częstotliwości III firmy DANYK

Ten miernik częstotliwości z mikrokontrolerem AVR umożliwia pomiar częstotliwości od 0,45 Hz do 10 MHz i okresu od 0,1 do 2,2 μs w 7 automatycznie wybranych zakresach. Dane wyświetlane są na siedmiocyfrowym wyświetlaczu LED. Projekt oparty jest na mikrokontrolerze Atmel AVR ATmega88/88A/88P/88PA, program do pobrania poniżej. Ustawienia bitów konfiguracyjnych są pokazane w Rysunek 2.

Zasada pomiaru różni się od poprzednich dwóch mierników częstotliwości. Prosta metoda zliczania impulsów po 1 sekundzie, stosowana w dwóch poprzednich miernikach częstotliwości (miernik częstotliwości I, miernik częstotliwości II), nie pozwala na pomiar ułamków herców. Dlatego w moim nowym mierniku częstotliwości III wybrałem inną zasadę pomiaru. Metoda ta jest znacznie bardziej złożona, ale umożliwia pomiary częstotliwości z rozdzielczością do 0,000001 Hz.

Licznik częstotliwości II firmy DANYK

Jest to bardzo prosty miernik częstotliwości na mikrokontrolerze AVR. Umożliwia pomiar częstotliwości do 10 MHz w 2 automatycznie wybranych zakresach. Opiera się na poprzedniej konstrukcji miernika częstotliwości I, ale ma 6 cyfr wskaźnika zamiast 4. Dolny zakres pomiarowy ma rozdzielczość 1 Hz i działa do 1 MHz. Wyższy zakres ma rozdzielczość 10 Hz i działa do 10 MHz. Do wyświetlania mierzonej częstotliwości służy 6-cyfrowy wyświetlacz LED. Urządzenie opiera się na mikrokontrolerze Amplituner Atmel ATtiny2313A Lub ATTiny2313

Mikrokontroler taktowany jest z rezonatora kwarcowego o częstotliwości 20 MHz (maksymalna dopuszczalna częstotliwość taktowania). Dokładność pomiaru zależy od dokładności tego kryształu, a także kondensatorów C1 i C2. Minimalna długość półcyklu mierzonego sygnału musi być większa niż okres częstotliwości oscylatora kwarcowego (ograniczenie architektury AVR). Zatem przy 50% cyklu pracy można mierzyć częstotliwości do 10 MHz.

Miernik częstotliwości I firmy DANYK

Jest to prawdopodobnie najprostszy licznik częstotliwości w mikrokontrolerze AVR. Umożliwia pomiar częstotliwości do 10 MHz w 4 automatycznie wybranych zakresach. Najniższy zakres ma rozdzielczość 1 Hz. Do wyświetlania mierzonej częstotliwości służy 4-cyfrowy wyświetlacz LED. Urządzenie opiera się na mikrokontrolerze Amplituner Atmel ATtiny2313A Lub ATtiny2313. Poniżej znajdziesz ustawienia bitów konfiguracyjnych.

Mikrokontroler taktowany jest z rezonatora kwarcowego o częstotliwości 20 MHz (maksymalna dopuszczalna częstotliwość taktowania). Dokładność pomiaru zależy od dokładności tego kryształu. Minimalna długość półcyklu mierzonego sygnału musi być większa niż okres częstotliwości oscylatora kwarcowego (ograniczenie architektury MCU). Zatem przy 50% cyklu pracy można mierzyć częstotliwości do 10 MHz.

Miernik częstotliwości w AT90S2313

Wirtualny miernik częstotliwości to „zestaw” składający się z programu na komputer PC oraz prostego urządzenia pomiarowego podłączanego do portu COM komputera.Wirtualny instrument umożliwia pomiar częstotliwości, okresu, odstępów czasowych i zliczanie impulsów.

Detale:http://home.skif.net/~yukol/FMrus.htm

Polecam złożyć prosty projekt, który nie wymaga żadnej konfiguracji, a co najważniejsze, działa! Zaprogramowany mikrokontrolerprogramator PonyProg - doskonały programator, prosty, duży wybór programowalnych mikrokontrolerów,działa pod Windows, rosyjski interfejs.


Magazyn „Radio” N1 2002 Do akumulatorów Ni-Cd. Umożliwia ładowanie 4 akumulatorów.



Licznik częstotliwości na zdjęciu 16F84A

Charakterystyka techniczna miernika częstotliwości:

Maksymalna zmierzona częstotliwość...........30 MHz;

Maksymalna rozdzielczość mierzonej częstotliwości wynosi... 10 Hz.

Czułość wejściowa...........250 mV;

Napięcie zasilania...........................8...12 V:

Pobór prądu...........................35 mA


Szczegóły, oprogramowanie:http://cadcamlab.ru


Stacja lutownicza na Atmega 8


Lutownica i suszarka do włosów są przełączane za pomocą przełączników PC. Suszarka do włosów jest sterowana przez tyrystor, ponieważ Suszarka do włosów na 110V zamiast diody R1 z katodą na V.6.


Szczegóły, oprogramowanie: http://radiokot.ru/forum


Cyfrowy miernik pojemności bez wylutowywania z obwodu

Opis znajduje się w czasopiśmie „Radio” nr 6, 2009. Konstrukcja zmontowana na AT90S2313, Tiny2313 użyto bez zmian w oprogramowaniu. W Ponce ustawiłem checkboxy dla SUT1, CKSEL1, CKSEL0, reszta jest pusta. MAX631 nie montowałem, dla nas to coś drogiego, zdecydowałem się zasilić go z zasilacza przez stabilizator 7805, na zasilacz plus włożyłem R29, R32, R33. Oprócz miernika pojemności w obudowie zamontowana jest sonda do testowania tranzystorów bez wylutowywania oraz generator sygnału wysokiej częstotliwości o niskiej częstotliwości.



Miernik parametrów półprzewodników ATmega8

Urządzenie może:

Identyfikować końcówki półprzewodnikowe;
- określić rodzaj i konstrukcję;
- zmierzyć parametry statyczne.
Mierzy diody, tranzystory bipolarne, tranzystory polowe JFET i MOS, rezystory, kondensatory.


Licznik wykonany jest w tej samej obudowie co licznik FCL, przełączanie wskaźnika pomiędzy urządzeniami odbywa się za pomocą przełącznika PC.

Miernik częstotliwości, miernik pojemności i indukcyjności - miernik FCL

Opisane poniżej urządzenie umożliwia pomiar częstotliwości drgań elektrycznych w szerokim zakresie, a także pojemności i indukcyjności elementów elektronicznych z dużą dokładnością. Konstrukcja ma minimalne wymiary, wagę i zużycie energii.

Dane techniczne:

Napięcie zasilania, V: 6…15

Pobór prądu, mA: 14…17

Granice pomiaru:

F1, MHz 0,01…65**

F2, MHz 10…950

Od 0,01 pF...0,5 µF

L 0,001 µH…5 H


Schemat zdalnej głowicy


Więcej szczegółów: http://ru3ga.qrz.ru/PRIB/fcl.shtml


Woltomierz miniaturowy oparty na mikrokontrolerze ATmega8L


Tutaj rozważamy konstrukcję woltomierza opartego wyłącznie na mikrokontrolerze ATmega8L i wskaźniku z elektronicznego termometru medycznego. Zakres mierzonych napięć stałych wynosi ±50 V. Jako dodatkową funkcję realizowany jest tryb sondy dźwiękowej do sprawdzania integralności przewodów i żarówek. Urządzenie automatycznie przechodzi w tryb czuwania w przypadku braku pomiarów. Mikrokontroler zasilany jest z dwóch miniaturowych ogniw alkalicznych (baterie do zegarków naręcznych), 1 element ustawiam na 3V. Nie będzie konieczności częstej wymiany baterii: pobór prądu w trybie aktywnym wynosi zaledwie 330 μA, w trybie czuwania – niecałe 300 nA. Dzięki swojej miniaturowej konstrukcji i możliwościom urządzenie jest użyteczne i praktyczne. Moja tablica nie zmieściła się w etui termometru, więc zrobiłam ją w etui na pisak. Zrobiłem własną płytkę, zamontowałem rezystory R5-R7 pionowo na szynach zbiorczych. Dzięki niemu VADZZ pomógł w stworzeniu oprogramowania ze źródła. Wskaźnik prowadzi od lewej do prawej, przewody znajdują się na dole i są skierowane w Twoją stronę.

Diagram (aby uzyskać pełnowymiarowy diagram, zapisz obraz na komputerze).

Więcej szczegółów można znaleźć na stronie: http://www.rlocman.ru/shem/schematics.html?di=63917

Ładowarka z funkcją pomiaru pojemności

Chciałem zmierzyć pojemność akumulatora; importowane mierniki są dość drogie, więc znalazłem ciekawy obwód i go zmontowałem. Działa dobrze, ładuje, mierzy, ale trudno mi powiedzieć z jaką dokładnością - nie ma normy. Zmierzyłem akumulatory całkiem przyzwoitych firm 2700 mA/h - celowałem w 2000. Baterie z zabawek 700 mA/h -350, zamówiłem chińskie akumulatory BTY na EBAY-u 2500 mA/h - 450 mA/h, ale jednocześnie są całkiem przyzwoite, dobrze sprawdzają się w zabawkach, dużo tańsze od baterii.


Urządzenie przeznaczone jest do ładowania akumulatorów NiMH i monitorowania ich pojemności. Przełączanie między trybami ładowania/rozładowania odbywa się za pomocą przycisku SA1. Tryb pracy sygnalizowany jest za pomocą diod LED oraz miejsc dziesiętnych dwóch pierwszych cyfr wskaźnika siedmiosegmentowego.
Zaraz po włączeniu zasilania urządzenie przechodzi w tryb ładowania. Wskaźnik pokazuje czas ładowania. Po upływie zaprogramowanego czasu ładowanie zostaje zatrzymane. Zakończenie ładowania (i rozładowania) sygnalizowane jest świecącą kropką czwartego rozładowania. Prąd ładowania definiuje się jako C/10, gdzie C to pojemność akumulatora, ustawiana trymerem R14.
Zasada działania miernika opiera się na obliczeniu czasu, w którym napięcie akumulatora spadnie do 1,1 V. Prąd rozładowania powinien wynosić 450 mA, ustawić na R16. Aby zmierzyć pojemność, należy włożyć akumulator do komory rozładowczej i rozpocząć proces naciśnięciem przycisku! Urządzenie może rozładować tylko jeden akumulator.

Więcej szczegółów:http://cxem.net

Uniwersalny piekarnik do radioamatorstwa

Piec do lutowania części SMD posiada 4 programowalne tryby.

Schemat jednostki sterującej (dla pełnowymiarowego schematu zapisz obraz na swoim komputerze).


Zasilanie i sterowanie grzejnikiem


Zmontowałem ten projekt, aby sterować stacją lutowniczą IR. Może kiedyś będę sterować piecem. Był problem z uruchomieniem generatora, zamontowałem kondensatory 22 pF z pinów 7 i 8 do masy i odpalił normalnie. Wszystkie tryby działają normalnie, obciążone grzałką ceramiczną o mocy 250 W.

Więcej szczegółów: http://radiokot.ru/lab/hardwork/11/

Ponieważ nie ma pieca, zrobiłem takie dolne ogrzewanie na małe deski:

Grzejnik 250 W średnica 12 cm, wysłany z Anglii, kupiony na EBAY-u.


Cyfrowa stacja lutownicza do PIC16F88x/PIC16F87x(a)

Stacja lutownicza z dwiema lutownicami jednocześnie i suszarką do włosów. Można używać różnych MCU (PIC16F886/PIC16F887, PIC16F876/PIC16F877, PIC16F876a/PIC16F877a). Zastosowano wyświetlacz z Nokii 1100 (1110). Prędkość turbiny suszarki jest sterowana elektronicznie, aktywowany jest także kontaktron wbudowany w suszarkę. Wersja autorska wykorzystuje zasilacz impulsowy, ja zastosowałem zasilacz transformatorowy. Wszystkim podoba się ta stacja, jednak przy mojej lutownicy: 60W, 24V, z grzałką ceramiczną, występują duże rozbiegi i wahania temperatury. Jednocześnie lutownice o niższej mocy z grzałką nichromową charakteryzują się mniejszymi wibracjami. Jednocześnie moja lutownica, z opisaną powyżej stacją lutowniczą z Micha-Pskowa, z oprogramowaniem firmy Volu, utrzymuje temperaturę z dokładnością do jednego stopnia. Potrzebujesz więc dobrego algorytmu ogrzewania i utrzymywania temperatury. W ramach eksperymentu wykonałem regulator PWM na timerze, przyłożyłem napięcie sterujące z wyjścia wzmacniacza termopary, wyłączyłem, włączyłem z mikrokontrolera, wahania temperatury natychmiast spadły do ​​kilku stopni, co potwierdza prawidłowe potrzebny jest algorytm sterowania. Zewnętrzne PWM to oczywiście pornografia w obecności mikrokontrolera, ale dobre oprogramowanie nie zostało jeszcze napisane. Zamówiłem inną lutownicę, jeśli nie zapewni dobrej stabilizacji, będę kontynuował eksperymenty z zewnętrznym sterowaniem PWM, może pojawi się dobry firmware. Stacja została zmontowana na 4 tablicach, połączonych ze sobą za pomocą łączników.

Schemat cyfrowej części urządzenia pokazano na rysunku; dla przejrzystości pokazano dwa MK: IC1 - PIC16F887, IC1(*) - PIC16F876. Pozostałe MK podłącza się analogicznie do odpowiednich portów.

Aby zmienić kontrast, musisz znaleźć 67 bajtów, jego wartość to „0x80”, na początek możesz wpisać „0x90”. Wartości muszą mieścić się w przedziale od „0x80” do „0x9F”.

Jeśli chodzi o wyświetlacz 1110i (tekst jest wyświetlany w odbiciu lustrzanym), jeśli nie jest to chiński, ale oryginał, otwórz EEPROM, poszukaj 75 bajtów, zmień go z A0 na A1.



Powiązane publikacje