Generator funkcyjny. Spis treści. Działanie. Interfejs. Adam Miarka Maksymilian Szczepanik

Podobne dokumenty
Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Podstawy Elektroniki dla Teleinformatyki. Generator relaksacyjny

Podstawy Elektroniki dla Informatyki. Generator relaksacyjny

Laboratorium Analogowych Układów Elektronicznych Laboratorium 6

Politechnika Białostocka

Poradnik programowania procesorów AVR na przykładzie ATMEGA8

Politechnika Białostocka

Generatory sinusoidalne LC

Technik elektronik 311[07] Zadanie praktyczne

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

2.1 Porównanie procesorów

Generator tonów CTCSS, 1750Hz i innych.

Politechnika Białostocka

Podstawy Elektroniki dla Informatyki. Pętla fazowa

PRAWO OHMA DLA PRĄDU PRZEMIENNEGO. Instrukcja wykonawcza

Kurs Elektroniki. Zastosowanie elektroniki w robotyce cz

Podstawowe zastosowania wzmacniaczy operacyjnych wzmacniacz odwracający i nieodwracający

Laboratorium Analogowych Układów Elektronicznych Laboratorium 4

Zastosowania liniowe wzmacniaczy operacyjnych

Uniwersalna płytka generatora tonów CTCSS, 1750Hz i innych.

SILNIK INDUKCYJNY STEROWANY Z WEKTOROWEGO FALOWNIKA NAPIĘCIA

Scalony analogowy sterownik przekształtników impulsowych MCP1630

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

Elektronika z wykorzystaniem Arduino i Raspberry Pi : receptury / Simon Monk. Gliwice, copyright Spis treści. Przedmowa 11

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Podstawowe zastosowania wzmacniaczy operacyjnych wzmacniacz odwracający i nieodwracający

Interfejs analogowy LDN-...-AN

INSTRUKCJA OBSŁUGI Generatora impulsów PWM

Podstawy Elektroniki dla Informatyki. Generator relaksacyjny z elementami pętli fazowej

ĆWICZENIE LABORATORYJNE. TEMAT: Badanie wzmacniacza różnicowego i określenie parametrów wzmacniacza operacyjnego

Modulatory PWM CELE ĆWICZEŃ PODSTAWY TEORETYCZNE

Uczeń/Uczennica po zestawieniu połączeń zgłasza nauczycielowi gotowość do sprawdzenia układu i wszystkich połączeń.

Ćw. 0: Wprowadzenie do programu MultiSIM

Podstawy Elektroniki dla Tele-Informatyki. Tranzystory unipolarne MOS

Zastosowania nieliniowe wzmacniaczy operacyjnych

LABORATORIUM ELEKTRONIKA. Opracował: mgr inż. Tomasz Miłosławski

Częstościomierz wysokiej rozdzielczości

Parametryzacja przetworników analogowocyfrowych

Badanie układów aktywnych część II

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach

Struktury specjalizowane wykorzystywane w mikrokontrolerach

Rafał Staszewski Maciej Trzebiński, Dominik Derendarz

Schemat blokowy architektury AVR

WZMACNIACZ OPERACYJNY

Ćw. 7 Przetworniki A/C i C/A

Technika mikroprocesorowa. Konsola do gier

Ćw. 6 Generatory. ( ) n. 1. Cel ćwiczenia. 2. Wymagane informacje. 3. Wprowadzenie teoretyczne PODSTAWY ELEKTRONIKI MSIB

TRD-MINI COMBO. Uniwersalny moduł czytnika transponderów UNIQUE - wersja OEM. Podstawowe cechy :

Demonstracja: konwerter prąd napięcie

ĆWICZENIE LABORATORYJNE. TEMAT: Badanie liniowych układów ze wzmacniaczem operacyjnym (2h)

Mikrokontroler w roli generatora PWM. Wpisany przez Administrator piątek, 06 lipca :51 -

ELEKTRONIKA WYPOSAŻENIE LABORATORIUM DYDAKTYCZNEGO POMOC DYDAKTYCZNA DLA STUDENTÓW WYDZIAŁU ELEKTRYCZNEGO SERIA: PODSTAWY ELEKTRONIKI

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

MultiTool instrukcja użytkownika 2010 SFAR

Edukacyjny sterownik silnika krokowego z mikrokontrolerem AT90S1200 na płycie E100. Zestaw do samodzielnego montażu.

Bogdan Olech Mirosław Łazoryszczak Dorota Majorkowska-Mech. Elektronika. Laboratorium nr 3. Temat: Diody półprzewodnikowe i elementy reaktancyjne

Oscyloskop. Dzielnik napięcia. Linia długa

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

INDU-40. Przemysłowy Sterownik Mikroprocesorowy. Przeznaczenie. Dozowniki płynów, mieszacze płynów.

Układy czasowo-licznikowe w systemach mikroprocesorowych

Wzmacniacz operacyjny

Uniwersalny sterownik silnika krokowego z portem szeregowym RS232 z procesorem AT90S2313 na płycie E200. Zestaw do samodzielnego montażu.

Sprzęt i architektura komputerów

Instrukcja obsługi GEN2 Regulowany generator przebiegów prostokątnych

Pracownia pomiarów i sterowania Ćwiczenie 1 Pomiar wielkości elektrycznych z wykorzystaniem instrumentów NI ELVIS II

Przerzutnik astabilny z wykorzystaniem układu typu "555"

Ujemne sprzężenie zwrotne, WO przypomnienie

1 Badanie aplikacji timera 555

UWAGA! ELEKTRYCZNE POD NAPIĘCIEM!

Ćw. 8 Bramki logiczne

Badanie właściwości multipleksera analogowego

TECHNIKA CYFROWA ELEKTRONIKA ANALOGOWA I CYFROWA. Układy czasowe

Instrukcja do ćwiczenia laboratoryjnego

Instrukcja obsługi GEN2 Regulowany generator przebiegów prostokątnych

INSTRUKCJA OBSŁUGI REGULATOR TEMPERATURY DESTYLATORA FIRMWARE VER: F UWAGI DOTYCZĄCE BEZPIECZEŃSTWA

Dynamiczne badanie wzmacniacza operacyjnego- ćwiczenie 8

LABORATORIUM ELEKTRONIKI WZMACNIACZ MOCY

Spis elementów aplikacji i przyrządów pomiarowych:

Przetwarzanie A/C i C/A

Elektronika. Wzmacniacz operacyjny

Badanie dławikowej przetwornicy podwyŝszającej napięcie

Statyczne badanie wzmacniacza operacyjnego - ćwiczenie 7

Generator tonów CTCSS.

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

POLITECHNIKA WARSZAWSKA. Wydział Elektroniki i Technik Informacyjnych. Mikrokontrolery ARM

CONVERT SP. Z O.O. MK-SH-DC M30400 LICZNIK ENERGII PRĄDU STAŁEGO INSTRUKCJA UŻYTKOWNIKA. CIRCUTOR S.A. CONVERT Sp. z o.o.

Ćwiczenie - 6. Wzmacniacze operacyjne - zastosowanie liniowe

KATEDRA ELEKTRONIKI AGH WYDZIAŁ EAIIE. Dydaktyczny model 4-bitowego przetwornika C/A z siecią rezystorów o wartościach wagowych

LOW ENERGY TIMER, BURTC

2. Architektura mikrokontrolerów PIC16F8x... 13

Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r.

Ćwicz. 4 Elementy wykonawcze EWA/PP

E-TRONIX Sterownik Uniwersalny SU 1.2

Moduł prototypowy X3-DIL64 z procesorem ATxmega128A3U-AU

Programowanie mikrokontrolerów AVR z rodziny ATmega.

Tranzystory bipolarne. Właściwości dynamiczne wzmacniaczy w układzie wspólnego emitera.

Wstęp Architektura... 13

Transkrypt:

Generator funkcyjny Wykonany przez Data wykonania Paweł Białas Adam Miarka Maksymilian Szczepanik 13 czerwca 2015 r. Generator został zbudowany w ramach XI Prezentacji Aplikacji Mikrokontrolerów Freescale. Poniższy dokument zawiera ogólne informacje nt. budowy i działania generatora. Spis treści Działanie...1 Interfejs...1 Parametry sprzętu...2 Uproszczony schemat układu...3 Przykładowe fragmenty kodu...5 Kod algorytmu korygującego częstotliwość:...5 Kod obsługi przycisków:...6 Przykładowe przebiegi z generatora...8 Bibliografia...10 Działanie Nasz układ to urządzenie pozwalające na generowanie sygnału elektrycznego o zadanej częstotliwości. Dostępne sygnały wyjściowe to sygnał prostokątny, trójkątny ( piła ) i sinusoidalny. Układ po rozpoczęciu generowania włącza odpowiedni układ kondensatorów, a następnie mierzy częstotliwość otrzymaną na wyjściu i zmienia napięcie sterujące w pewnym stopniu. Jeżeli częstotliwość na wyjściu przekroczy zadaną, układ zmniejszy stopień zmiany napięcia sterującego, oraz zmieni kierunek zmiany. W ten sposób po pewnym czasie na wyjściu znajdzie się przybliżona zadana częstotliwość. Interfejs Wybrana częstotliwość jest wyświetlana na wyświetlaczu. Generator obsługuje się poprzez interfejs zbudowany z trzech przycisków: 1) uruchamia generowanie wybranego sygnału 2) odpowiada za zmianę wartości wybranego rzędu wielkości 3) odpowiada za zmianę zaznaczenia rzędu wielkości Aby rozpocząć generowanie należy przy użyciu przycisku 3. wybierać kolejne pozycje dziesiętne liczby i zmieniać je przy użyciu przycisku 2. Gdy zostanie wprowadzona żądana liczba można uruchomić generowanie przy użyciu przycisku 1. Aby uruchomić generowanie nowej częstotliwości należy zresetować układ. 1/10

Wyjścia układu znajdują się odpowiednio: sygnał sinusoidalny: wyjście nr 2 ICL8038 (niewyprowadzone) sygnał trójkątny: wyjście przy układzie kondensatorów sygnał prostokątny: wyjście w układzie skalowania napięcia do pomiaru częstotliwości (dostępne różne amplitudy) Parametry sprzętu Generator pozwala na otrzymanie przebiegów: trójkątnego, prostokątnego i sinusoidalnego. Osiągalne są częstotliwości z zakresu 17Hz 315Hz oraz 420Hz 2,12 khz. Wykorzystany sprzęt: Płytka rozwojowa Freedom KL25Z z 32-bitowym procesorem ARM Cortex-M0 Układ generujący ICL8038 Wyświetlacz zgodny z HD44780 Cały układ używa zasilania 12V dla części generującej i 3,3V dla części sterującej. Program wgrany na procesor został napisany w C++, przy użyciu platformy developerskiej mbed.org. 2/10

Uproszczony schemat układu Układ generujący ICL8038 jest sterowany przy użyciu napięcia z analogowego wyjścia płytki FRDM oraz układu rezystorów określających prąd ładowania kondensatorów, które są podłączane do układu przez klucze sterowane przez FRDM. Układ ICL wykorzystuje czas ładowania/rozładowywania kondensatorów jako podstawę generowanego sygnału. Zdjęcie działającego układu 3/10

usb rst FRDM KL25Z Comparator in Analog out D4-7 RS E HD44780 Układ kondensatorów ICL8038 12V Układ kondensatorów 12V ICL8038 12V 12V KL25Z 4/10

Przykładowe fragmenty kodu Kod algorytmu korygującego częstotliwość: Ticker pstrykacz; ComparatorIn cmp(ptc8, NC); //ustawienie w funkcji main: cmp.treshold(0.5); volatile int a_licznik = 0; volatile int a_lock = 0; volatile int a_desired = 100; volatile float vstep = VOLTAGE_STEP; //funkcja wywoływana przez komparator void cmpr() { a_licznik++; void v_dec(); void v_inc(); void adjust(int result) { if(result > a_desired) v_dec(); else if(resulst < a_desired) v_inc(); //funkcja wywoływana przez timer void ont() { //wstrzymanie funkcji komparatora cmp.rising(0); if(a_lock) { //interpretacja wartości z licznika a_lock = 0; adjust(a_licznik); else { //zerowanie licznika a_licznik = 0; a_lock = 1; //ponowne uruchomienie komparatora cmp.rising(&cmpr); 5/10

//funkcja wywoływana przez przycisk uruchomienia generowania void initwork() { a_desired = freq; cmp.rising(&cmpr); //rejestracja przerwania na komparatorze pstrykacz.attach(&ont, 1); //rejestracja przerw. na timerze volatile int lastsign = 0; //funkcje v_inc i v_dec zmieniają wartość napięcia na wyjściu, w razie przekroczenia oczekiwanej //wartości zmniejszają dwukrotnie korekcję po jednym pomiarze //void setv(float v) przyjmuje v z zakresu (0, 1) i skaluje je na właściwą wartość na wyjściu //analogowym void v_inc() { if(lastsign == -1) vstep /= 2; setv(voltage + vstep); lastsign = 1; void v_dec() { if(lastsign == 1) vstep /= 2; setv(voltage - vstep); lastsign = -1; Kod obsługi przycisków: //Przyciski w trybie pullup zwarte ze stanem wysokim, //naciśnięcie odczytywane przy zwarciu pinu z masą DigitalIn mode_switcher(d5); //w main: mode_switcher.mode(pullup); DigitalIn sb1(d2); //w main: sb1.mode(pullup); DigitalIn sb2(d3); //w main: sb2.mode(pullup); int freq_pos = 0; //wykorzystywane do rysowania interfejsu znacznik //wyboru pozycji dziesiętnej volatile int switch_lock; #define SWITCH_LOCK_DEFAULT 14097 //eliminacja drgania styków void inccurrent(); // zwiększenie wartości wybranej pozycji dziesiętnej int sb1_lock = 0; int sb2_lock = 0; int checkbuttons() { //wywoływana w while(1) wraz //z rysowaniem interfejsu 6/10

if(switch_lock) { switch_lock--; return 0; if(!mode_switcher) { switch_lock = SWITCH_LOCK_DEFAULT; return 1; //powoduje break w while(1) if(!sb1) { if(sb1_lock) return 0; switch_lock = SWITCH_LOCK_DEFAULT; sb1_lock = 1; freq_pos = (freq_pos+1)%5; //kolejna pozycja dziesiętna return 2; else { sb1_lock = 0; switch_lock = SWITCH_LOCK_DEFAULT; if(!sb2) { if(sb2_lock) return 0; switch_lock = SWITCH_LOCK_DEFAULT; sb2_lock = 1; inccurrent(); return 2; else { sb2_lock = 0; switch_lock = SWITCH_LOCK_DEFAULT; return 0; 7/10

Przykładowe przebiegi z generatora Do sprawdzania sygnałów używaliśmy miernika Siglent SDS 1022DL. Interfejs użytkownika 8/10 Przebieg prostokątny 0-8V

Przebieg trójkątny Przebieg sinusoidalny Robienie pomiarów 9/10

Bibliografia Literatura: Sztuka elektroniki, Paul Horowitz ICL8038 Datasheet, Intersil Corporation Wykorzystane biblioteki z platformy mbed.org Obsługa wyświetlacza HD44780, Simon Ford Obsługa wejścia komparatora, Frank Vannieuwkerke 10/10