Zajęcia stacjonarne:
Zakres laboratorium:
- Przetwornik A/D
- Timer – generator sygnału PWM (link, link2)
- Regulator dwustawny (link)
- Regulator dwustawny z histerezą
- Regulator trójstawny
- Regulator PID(link)
Przed wysłaniem programu należy sprawdzić jego działanie dla wszystkich wykonanych regulatorów i w każdym zakresie ustawienia potencjometrów.
Czy program poprawnie reaguje na wartości ujemne itd.
Zastanowić się nad przykładami urządzeń, w jakich występują zaprezentowane regulatory, potrafić wymienić minimum 3 urządzenia dla każdego regulatora.
Zadanie 1 – ocena 3
Program realizujący funkcję woltomierza:
- podłączyć LCD, potencjometr (kanał A0) do mikrokontrolera
- podłączyć elementy i napisać program, gdzie mikrokontroler wykorzystuje przetwornik A/D do pomiaru napięcia i wyświetla je na wyświetlaczu LCD
- w pierwszej linii LCD wyświetlana jest wartość mierzonego napięcia w woltach i wartość od 0-100, proporcjonalnie odpowiadająca mierzonemu napięciu, 0V to 0, 2,5V to 50 itd.
Zadanie 2 – ocena 4
Program realizujący funkcję regulatora dwupołożeniowego bez histerezy i z histerezą oraz regulatora trójpołożeniowego:
- do programu z zadania 1 dodajemy:
- podłączyć 4 diody z linijki diodowej i nazwać je L1, L2,L3A i L3B
- tworzymy 3 funkcje, jedna funkcja to jeden regulator, funkcja przyjmuje parametr (uint8_t wartośćZadana, uint8_t wartoscRzeczywista)
- zadaniem każdej funkcji jest realizacja następującego działania:
- regulator dwupołożeniowy – realizuję działanie regulatora dwustanowego i wyświetla swoje stany na diodzie L1
- regulator dwupołożeniowy z histerezą – realizuję działanie regulatora dwustanowego z histerezą i wyświetla swoje stany na diodzie L2, histerezę ustawić na 0,5V
- regulator trójpołożeniowego – realizuję działanie regulatora trójpołożeniowego i wyświetla swoje stany na diodach L3A i L3B
- wartość zadana to wartość stała (ustawić połowę zakresu pomiarowego), a wartość rzeczywista to napięcie z potencjometru,
- jak działają poszczególne regulatory, jakie są ich wady i zalety?
Zadanie 3 – ocena 4,5
Do programu z zadania 2 dodajemy regulator PID:
- dodajemy funkcję, realizującą zdanie regulatora PID – przyjmuje takie same parametry jak pozostałe funkcje regulatorów
- w obecnym zadaniu działanie regulatora PID ograniczamy tylko do członu “P”,
- wyliczamy uchyb regulacji,
- uchyb przeliczamy przez współczynnik członu proporcjonalnego “Kp” i otrzymujemy wartość sterującą,
- wartość sterująca powinna być w zakresie 0-100, gdzie 50 to gdy uchyb wynosi 0 a pozostałe wartości są proporcjonalne i wypełniają cały zakres sterowania,
- wartość wyświetlamy na wyświetlaczu LCD w postaci: MOC:xxx%
Zadanie 4 – ocena 5
Do programu z zadania 3 dodajemy wyjście PWM ustawiane przez regulator PID:
- należy ustawić Timer1 do pracy w trybie PWM, należy wybrać odpowiedni tryb i skonfigurować układ licznikowy,
- funkcja PID z zdania 3 powinna sterować wypełnieniem sygnału PWM w zakresie 0-100,
- podłączyć do wyprowadzenia mikrokontrolera (tam gdzie będzie generowany sygnał PWM) miernik/oscyloskop – zapytać prowadzącego zajęcia o sprzęt
Zajęcia zdalne:
Dodatkowe materiały:
Podłączyć:
- 8 x dioda LED do portu D, wykorzystać linijkę diodową (LedBar)
- podłączyć klawiaturę do portu C (KeyPad) – klawiaturę należy zmodyfikować zgodnie z rysunkiem poniżej (ustawiamy zgodnie z parametrami po lewej stronie):
Zadania na symulatorze:
- napisać funkcję setLED(uint8_t led,uint8_t stan), gdzie led to numer diody od 1-8, a stan 1-dioda świeci 0 – dioda nie świeci,
- napisać funkcję getButton(), która zwraca numer przyciśniętego przycisku na klawiaturze z zakresu 1-12, oraz numer 13-16 dla dodatkowych przycisków. Informacje o obsłudze klawiatury matrycowej można znaleźć w zadaniu 4 z laboratorium 1.2,
- stworzyć program (wykorzystując stworzone funkcje), który po wciśnięciu przycisku 1-8 (z klawiatury spowoduje zaświecenie odpowiedniej diody), ponowne przyciśnięcie przycisku wyłączy diodę, dodatkowo “*” włącza wszystkie diody, “#” wyłącza wszystkie diod led.
Zaliczenie:
- kod programu i plik symulacji wysłać przez e-portal w odpowiednim terminie,
- zaprezentować działanie programu prowadzącemu.
Dodatkowe materiały:
Zadania na symulatorze:
- podłączyć klawiaturę do portu C (KeyPad) i zmodyfikować zgodnie z rysunkiem klawiatury:
- podłączyć wyświetlacz LCD według rysunku z paczki (pliki) i sprawdzić działanie przykładowego programu (po uruchomieniu w pierwszej linii LCD będą wyświetlać się kolejne cyfry),
- stworzyć program realizujący obsługę kalkulatora, umożliwiającego wprowadzanie liczb od 0-999, wykonującego działania dodawanie, odejmowanie, mnożenie oraz kasowanie obliczeń.
Zaliczenie:
- kod programu i plik symulacji wysłać przez e-portal w odpowiednim terminie,
- zaprezentować działanie programu prowadzącemu.