Podstawy Elektroniki i Elektrotechniki Sławomir Mamica mamica@amu.edu.pl
O przedmiocie. Pracownia elektroniki analogowej (PEA) protokoły (obecność) 2. Pracownia elektroniki cyfrowej (PLC) obecności + kolokwium 3. Wykład egzamin Literatura: Paul Horowitz, Winfield Hill, Sztuka elektroniki, tom i 2, (WNT, 24) Jerzy Kasprzyk, Programowanie sterowników przemysłowych, (WNT, 26)
O pracowniach Wydział Fizyki, wejście C Pracownia elektroniki analogowej sala 22 (lub 24) Pracownia elektroniki cyfrowej sala 25 Podział na grupy (dot. III roku studiów I stopnia): Grupa ćwiczeniowa WMI 2 grupy laboratoryjne WF max. 5 osób Jedna część PEA a druga PEC na zmianę II rok II stopnia grupa ćwiczeniowa WMI nie jest dzielona
Warunki zaliczenia Obecności na zajęciach (laboratoria) Pozytywna ocena z obu części pracowni Ocena z pracowni: średnia z dwóch części Pozytywna ocena z egzaminu Ocena końcowa: średnia z pracowni i egzaminu Terminy: Egzamin 27--2, sobota, godz. 8:5 Kolokwium (PLC) 27--8, niedziela, godz. zgodnie z planem
PLC Pracownia Elektroniki Cyfrowej, PEA Pracownia Elektroniki Analogowej, PEE pół na pół
PLC Pracownia Elektroniki Cyfrowej, PEA Pracownia Elektroniki Analogowej, PEE pół na pół
O wykładzie Plan: Wstęp do elektroniki cyfrowej (i pracowni PEC) Automatyka przemysłowa (+ PLC) Obwody elektryczne Podstawy elektroniki analogowej Przetwarzanie analogowo-cyfrowe Materiały (prezentacje z wykładów, zagadnienia na egzamin, itp.) http://main5.amu.edu.pl/~zfp/sm/home.html
O pracowni PLC (Wyłącznie moje grupy, tj. III rok I stopnia) Obecność na zajęciach: 4,5 pkt. (25%) / zajęcia Kolokwium: do 9 pkt. (5%) Razem: do 8 pkt. Zaliczenie od 6% (.8 pkt.)
Wstęp do Elektroniki Cyfrowej
Plan. Układy cyfrowe i metody ich opisu Definicja i rodzaje układów cyfrowych Podstawy algebra Boole a Tabela prawdy i funkcja przełączająca Algebra kluczy 2. Bramki są dwie? Funkcje jednej i dwóch zmiennych Bramki funkcjonalnie pełne 3. Bramki logiczne w PLC Podstawy schematu drabinkowego Realizacja bramek logicznych w schemacie drabinkowym
Plan 4. Przerzutniki Przerzutnik jako układ sekwencyjny Rodzaje i realizacja w schemacie drabinkowym Przykłady zastosowania 5. Easy Soft CoDeSys 6. Powtórzenie wiadomości z klasy czwartej 7. Formaty zapisu -
Układy cyfrowe i metody ich opisu http://main5.amu.edu.pl/~zfp/sm/home.html
Układy logiczne - definicja Układy cyfrowe układy elektroniczne, w których sygnały napięciowe przyjmująściśle określoną liczbę poziomów, którym przypisywane są wartości liczbowe. We Układ analogowy Wy We Układ cyfrowy Wy Układy logiczne - układy cyfrowe o dwóch poziomach napięć ( i ), realizujące operacje logiczne zgodnie z algebrą Boole'a (logiką matematyczną). Układ logiczny We Wy
Układy logiczne - podział Układy kombinacyjne układy logiczne bez pamięci (stan wyjść zależy wyłącznie od stanu wejść). X U Y = f(x) Y Układy sekwencyjne układy logiczne z pamięcią (stan wyjść zależy zarówno od stanu wejść jak i od poprzedniego stanu układu) X U Y = f(x,u) Y
Dwuelementowa algebra Boole a Zbiór dwuelementowy z trzema operacjami: suma logiczna (alternatywa) iloczyn logiczny (koniunkcja) negacja (inwersja) Oczywiście, operacje te nie wyprowadzają wyników działania poza zbiór B.
Dwuelementowa algebra Boole a Własności Prawa De Morgana
Dwuelementowa algebra Boole a Własności c.d.
Wyrażenia boolowskie Wyrażenie boolowskie (funkcja logiczna) dowolne odwzorowanie f : B n B Przykład (n = 2) f ( a, b) = a b + a b + a b Redukcja wyrażeń boolowskich (korzystamy z własności algebry Boole a) f ( a, b) = a b + a b + a b = a b + ( a + a) b = a b + b = ( a + b ) ( b + b ) = a + b = a + b = a b = a b
Układy logiczne - opis Funkcja przełączająca wyrażenie boolowskie realizowane przez układ logiczny f ( a, b) = a b + a b + a b Tabela prawdy (tablica prawdy, matryca logiczna) układ tabelaryczny kombinacji wartości logicznych argumentów danej funkcji logicznej i a b f(a,b) odpowiadających tym kombinacjom wartości logicznych tejże funkcji.
Funkcja przełączająca a tabela prawdy Funkcja przełączająca odpowiada na pytanie kiedy f( )? a b f(a,b) Tutaj lub tutaj f ( a, b) = a b + a b lub tutaj + a b Tylko tutaj f ( a, b) = a b Czasem prościej jest zapytać kiedy nie f( )? Czyli f ( a, b) = f ( a, b) = a b
Zestyk (klucz) Klucz ([ze]styk przekaźnikowy) jest elementem trójkońcówkowym składającym się z dwóch równoważnych linii danych i jednego wejścia sterującego. W elektrycznej (elektromechanicznej) realizacji układów binarnych klucze stanowią argumenty funkcji przełączającej. Styk zwierny (normalnie otwarty) X Styk rozwierny (normalnie zamknięty) X Q Q Q = X Q = X stan stan stan stan
Przekaźnik Przekaźnik elektryczny urządzenie elektryczne lub elektroniczne zaprojektowane do wywołania ustalonej nagłej zmiany stanu w jednym lub więcej obwodach wyjściowych przy spełnieniu odpowiednich warunków wejściowych. Cewka Zestyk Q = X Q = X
Realizacja elektroniczna Tranzystor
Algebra kluczy W algebrze kluczy klucz (układ kluczy) przyjmuje wartość prawda jeżeli przewodzi.
Bramki są dwie? http://main5.amu.edu.pl/~zfp/sm/home.html
Funkcje jednej zmiennej Twierdzenie: Istnieje funkcji 2 2 n f : B n B Dla n = 2 2 = 4 x f f f 2 f 3 NOT
Funkcje dwóch zmiennych Twierdzenie: Istnieje funkcji 2 2 n f : B n B Dla n = 2 2 4 = 6
Funkcje dwóch zmiennych
Funkcje dwóch zmiennych Bramki NAND oraz NOR nazywa się funkcjonalnie pełnymi, ponieważ przy ich użyciu (tzn. samych NAND lub samych NOR) można zbudować układ realizujący dowolną funkcję logiczną.
NAND logic / NOR logic
Bramki logiczne w PLC http://main5.amu.edu.pl/~zfp/sm/home.html
Schemat drabinkowy Ladder diagram (LD) Należy do grupy języków graficznych Powstał jako odpowiednik stykowych obwodów przekaźnikowych, w którym oprócz symboli styków, cewek i połączeń między nimi, dopuszcza się także użycie funkcji (np. arytmetycznych, logicznych, porównań, relacji) oraz bloków funkcjonalnych (np. przerzutniki, czasomierze, liczniki). Język IL (Instruction List - Lista rozkazów), będący odpowiednikiem asemblera, którego zbiór instrukcji obejmuje operacje logiczno-arytmetyczne, operacje relacji, jak również funkcje przerzutników, czasomierzy, liczników itp. Programowanie w IL nie jest wymagane na egzaminie
Styki i cewki w LD Klucz (przycisk) Cewka zwierny X rozwierny X Q Q2 X X Q Q2 Odpowiedniki w IL: LD X LDN X ST Q STN Q2 (zmienna do CR) (z CR do zmiennej)
Funkcje logiczne w LD Szczebelek drabiny funkcja logiczna Przycisk argument funkcji Wartość funkcji cewka Jeśli szczebelek przewodzi, to wartość funkcji przez niego realizowanej wynosi. Zawsze Funkcja logiczna Wartość funkcji
Spróbujmy uruchomić silnik
Schemat sterowania
Schemat drabinkowy
AND a b Q Q = a b Q = ab Realizacja w LD: a b Q Odpowiedniki w IL: LD a AND b ST Q
OR a b Q Q = ab + ab + ab Można zredukować, albo Q = ab Q = Q = ab = a + b Q = a + b Realizacja w LD: a b Q Odpowiedniki w IL: LD a OR b ST Q
XOR a b Q Q = ab + ab Zapis: Q = a b Realizacja w LD: Odpowiedniki w IL: a b Q LD a a b XOR b ST Q
NAND Q b a Odpowiedniki w IL: Realizacja w LD: LD a AND b STN Q a b Q LD a ANDN b ST Q Ten przykład już był b a Q Q = = b a b a b a Q + + = b a Q =
NAND 2 a b Q Albo Q = Q = a b = a + b Realizacja w LD: a b Q Odpowiedniki w IL: LDN a ORN b ST Q
NOR a b Q Q = ab Q = a + b Realizacja w LD: a b Q Odpowiedniki w IL: a Q LDN a ANDN b LD a OR b b ST Q STN Q
XNOR negacja alternatywy wykluczającej, równoważność a b Q Q = ab + ab Zapis: Q = a b = a b Realizacja w LD: Realizacja w IL: a b Q LD a a b XOR b STN Q
Przerzutniki http://main5.amu.edu.pl/~zfp/sm/home.html
Przerzutniki Przerzutnik (ang. flip-flop) jest to układ sekwencyjny, którego sygnał na wyjściu może zależeć od stanu na jego wejściu lub od jego stanu wewnętrznego. Istnieją trzy rodzaje przerzutników bistabilne, monostabilne oraz astabilne. W układach cyfrowych najczęściej stosowane są przerzutniki bistabilne mogące być stosowane jako układy pamiętające. Grupa połączonych ze sobą przerzutników bistabilnych może tworzyć tzw. rejestr.
Typy przerzutników Asynchroniczne (zmiana stanu wyjść następuje pod wpływem zmiany stanu wejść): typu RS, Synchroniczne (zmiana stanu wyjść następuje jako reakcja na sygnał zegarowy): typu D, typu Latch (zatrzask) typu T, typu JK, typu JK-MS (MS od Master i Slave), synchroniczny przerzutnik typu RS.
Przerzutnik typu RS Przerzutnik asynchroniczny (choć jest też wersja synchroniczna) Wejście Set Wejście Reset Q Q Wyjścia Działanie: Set ustawia (przypisuje ) wyjście Q Reset zeruje wyjście Q
Przerzutnik typu RS Tabela prawdy Układ sekwencyjny wyjścia zależą od historii układu Q R S Q Działanie:? Set ustawia (przypisuje ) wyjście Q Reset zeruje wyjście Q Poza tym stan Q jest pamiętany A co jeśli R i S? Dwa rodzaje przerzutka RS: RS? =? SR? =
Przerzutnik typu RS Tabela prawdy Q S R Q Funkcja przełączająca QRS QRS QRS Q + + = Redukcja funkcji przełączającej: ( ) S Q R Q + =
Przerzutnik typu SR Tabela prawdy Funkcja przełączająca Q R S Q Q = QRS + QRS + QRS + QRS + QRS albo Q = QRS + QRS + QRS Redukcja funkcji przełączającej: Q = S + QR
Przerzutnik typu RS / SR Funkcja przełączająca Q = RS ( Q + S) R SR Funkcja przełączająca Q = QR + S Algebra kluczy : Algebra kluczy : Q R Q Q R Q S S
Cewki S i R Cewka S (Set) ustawiająca W odpowiedzi na ustawia zmienną (ale nie może zmiennej wyzerować!) S Cewka R (Reset) zerująca W odpowiedzi na zeruje zmienną (ale nie może zmiennej ustawić!) R
Przerzutniki raz jeszcze RS Przycisk S - ustawia Przycisk R - zeruje S R Q S Q R SR? Zadanie domowe!
NAND SR / NOR RS Wersja synchroniczna (SR)
Przerzutnik typu D Synchronizacja poziomem Clk (lub zboczem) Wejście informacyjne (Data) Wejście zegarowe (Clk) Wyjścia S = D R = /D SR - synchroniczny
Zastosowanie przerzutników Dekoder adresowy Np. pamięć (4-bitowa) Układ odczytu komórek pamięci Komórki pamięci wraz z układem zapisu
Zastosowanie przerzutników Np. licznik asynchroniczny (4- bitowy)
https://logic.ly/demo/
Easy Soft CoDeSys http://main5.amu.edu.pl/~zfp/sm/home.html
Moeller CoDeSys Demo (free): http://www.moeller.pl/desktopdefault.aspx?pageid=83
W wersji DEMO
Typ POU + język funkcjonalny, funkcyjny Diagram drabinkowy IL (Instruction List) Lista rozkazów FBD (Functional Blok Diagram) Schemat bloków funkcyjnych SFC (Sequential Function Chart) Graf sekwencji ST (Structured Text) Tekst strukturalny CFC (Continuous Function Chart) jest językiem niesamodzielnym, tj. wymaga użycia jednego z pozostałych języków do pełnego oprogramowania
Okno robocze
Wstawianie elementów programu Wstaw przycisk (szeregowo) Wstaw cewkę Wstaw przycisk równolegle do zaznaczonego fragmentu Neguj cewkę lub przycisk Przełącz cewkę na: setującą / resetującą / zwykłą
Wstawianie elementów programu Z menu Wstaw (Insert) oraz Dodatki (Extras) lub menu kontekstowego: Wstaw szczebelek (przed lub za zaznaczonym) Neguj cewkę lub przycisk Wstaw przycisk (szeregowo) Wstaw przycisk równolegle do zaznaczonego fragmentu Wstaw cewkę Wstaw blok funkcyjny Przełącz cewkę na: setującą / resetującą / zwykłą
Deklarowanie zmiennych Po wpisaniu nazwy zmiennej (z wyjątkiem predefiniowanych) pojawia się okienko deklaracji zmiennych: Klasa: wejściowe, wyjściowe, wewnętrzne Nazwa zmiennej Typ zmiennej
Simulation mode On logowanie do wirtualnego sterownika (brak wymiany informacji ze sprzętem) (konieczność wymuszenia stanu zmiennych dwuklik + F7) Off logowanie do rzeczywistego sterownika (musi być fizycznie podłączony) (odczyt ze sterownika nadrzędny nad odczytem z wizualizacji - por. dalej)
Uruchomienie programu. Logowanie
Uruchomienie programu 2. Ładowanie programu jeśli nie ma błędów!!! Możliwe błędy: Komunikacji (np.: brak podłączonego PLC, źle skonfigurowane połączenie, uszkodzony kabel) Programu (np.: błędy w deklaracjach zmiennych, błędy składniowe)
Uruchomienie programu 3. Start (Run) Czarny - aktywny Szary - nieaktywny Zalogowany Program uruchomiony Wymuszone wartości Tryb symulacji ON
Program w akcji Podgląd aktualnych wartości zmiennych Niebieski =
Ponowna edycja po wylogowaniu
Wizualizacja
Nowy zestaw ikon Obszar roboczy tu budujemy wizualizację
(Dwuklik na elemencie) Wizualizacja
Wizualizacja
Wizualizacja
Wizualizacja
Wizualizacja Odpowiednik przycisku dwustanowego Odpowiednik przycisku jednostanowego
Bloki funkcyjne listy zmiennych
Powtórzenie wiadomości z klasy 4 http://main5.amu.edu.pl/~zfp/sm/home.html
Jak zapisać coś więcej niż i? Co to znaczy? Skąd wiemy ile to jest? Setki Jedności Dziesiątki Czyli: Pozycja cyfry w liczbie ( liczona od, od prawej do lewej ) + + 2 Pozycyjny system zapisu liczb Podstawa systemu
Zmiana podstawy systemu Dla 2 Czwórki Jedności Dwójki 2 + 2 + 2 2 Czyli 5 D Dla 7 Czterdziestki dziewiątki Jedności Siódemki 7 + 7 + 7 2 Czyli 5 ()
Alfabet Najmniejsza liczba, która nie mieści się w jednej cyfrze jest równa podstawie systemu. Dostępne cyfry: (),, 2,, 9 (8),, 2,, 7 (2), (6),, 2,, 9, A, B,, F Liczba to słowo języka nad alfabetem złożonym z cyfr.
Konwencja Systemem domyślnym jest dziesiętny (o podstawie ) Jeśli pracujemy tylko w jednym systemie, to nie ma potrzeby zaznaczania przy każdej liczbie podstawy systemu, w jakim została ona zapisana. W przeciwnym przypadku należy stosować właściwe oznaczenia: Albo: Albo: (7) = 5 (D) = (B) 5 = B = 32H 5 Dec = 62 Oct = 32 Hex = Bin Dlaczego rasowy informatyk myli pierwszy dzień Bożego Narodzenia z Halloween?
Konwersja Na dziesiętny (trywialne) weź każdą cyfrę z odpowiednią wagą: 26 (7) = 7 2 + 2 7 + 6 7 49 + 4 + 6 = 69 (D) Bin / Hex (też trywialne) cyfra Hex to 4 bity: 26 Hex = Bin = = Bin 2 F B = 2FB Hex
Konwersja (c.d.) Z dziesiętnego za dowolny: Dzielić przez podstawę systemu (docelowego) aż do 3 () =??? (2) 69 () =??? (7) 3 : 2 = 6 r. 6 : 2 = 3 r. 3 : 2 = r. : 2 = r. 69 : 7 = 9 r. 6 9 : 7 = r. 2 : 7 = r. 2 6 (7) (2)
Co daje system pozycyjny? Działania w słupkach! Dec: 2 3 + 2 2 3 6 Hex: A 2 3 + F 2 C 6
Formaty zapisu - http://main5.amu.edu.pl/~zfp/sm/home.html
Jak zapisać liczbę dwójkowo? Można tak po prostu: 234 (D) (B) czyli w kodzie dwójkowym (naturalnym) Wada: źle się dogaduje z cyframi w zapisie dziesiętnym Zaleta: wszystkie bity wykorzystane Albo każdą cyfrę dziesiętną osobno: 234 (D) (BCD) czyli w kodzie BCD (Binary-Coded Decimal) Zaleta: dobrze dogaduje się z cyframi w zapisie dziesiętnym Wada: ogromne marnotrawstwo większość bitów niewykorzystana Albo dwie cyfry dziesiętne w bajcie: 234 (D) (pbcd) czyli w kodzie upakowanym BCD (packed Binary-Coded Decimal)
A liczby ujemne? Najprościej w systemie znak-moduł (ZM lub SM) najstarszy bit to bit znaku, reszta normalnie : 4 (D) (ZM) -4 (D) (ZM) Zalety: Prostota interpretacji zapisu Wady: co nie oznacza prostoty obliczeń. No i mamy małe marnotrawstwo (dwa zera) Zakres liczb zapisanych na N bitach: [ - (2 N- ), 2 N- ]
ZU Kod uzupełnieniowy do jedności (ZU lub U) również bit znaku + moduł, ale liczba ujemna zapisywana jako negacja liczby dodatniej 4 (D) (ZU) -4 (D) (ZU) Zmiana bitu znaku jest tego naturalną konsekwencją. Zalety: Prostota obliczeń Wady: Dalej małe marnotrawstwo (dwa zera) (I się trochę trudno czyta liczby ujemne.) Zakres liczb zapisanych na N bitach: [ - (2 N- ), 2 N- ]
Prostota obliczeń? Dodawanie liczb w ZU jest podobne do dodawania w naturalnym kodzie binarnych, tylko przeniesienie należy dodać do wynikowej sumy. 7 3 = 7 + (-3) = + CPL( ) 3 7 = 3 + (-7) = + CPL( ) + + Czyli razem -4 Czyli razem 4
ZU (v.2) Albo tak Najstarszy bit ma wagę równą (-2 n- +). Wtedy wartość liczby n-bitowej: A = -2 n- + a n n 2 + i= a i 2 i ; Jeśli dodamy wagę bitu znaku i wagi pozostałych bitów, to otrzymamy.
ZU2 Kod uzupełnieniowy do podstawy 2 (ZU2 lub U2) podobnie jak ZU, ale najstarszy bit ma wagę -2 n- Wtedy wartość liczby n-bitowej: A = - 2 n- a n n 2 + i= a i 2 i ; Albo: zanegować wszystkie bity i dodać 4 (D) (ZU2) -4 (D) (ZU2) Zalety: normalne obliczenia, jedno zero (bez marnotrawstwa) Wady: Niesymetryczny zakres reprezentowanych liczb (I jeszcze trudniej się czyta liczby ujemne.) Zakres liczb zapisanych na N bitach: [ - 2 N-, 2 N- ]
Prostota obliczeń Dodawanie liczb w ZU2 tak, jak w naturalnym kodzie binarnym (z tym, że ignorujemy przepełnienie) 7 3 = 7 + (-3) = + [ CPL( ) + ] 3 7 = 3 + (-7) = + [ CPL( ) + ] + Czyli 4 (ignorujemy przepełnienie) + Czyli -4: CPL( ) = CPL( ) =
Stary dobry pomysł System uzupełnień do podstawy wymyślił Blaise Pascal. Skonstruował on maszynę arytmetyczną, która potrafiła dodawać liczby dziesiętne. Aby umożliwić wykonywanie odejmowania, dodawał liczby uzupełnione do podstawy. Przykład: 84 55 = 29. Uzupełnienie dziesiętne liczby 55 (dla liczb dwucyfrowych): - 55 = 45 Obliczenia: 84 + 45 = 29 Ignorujemy przepełnienie i zostaje 29.
Zapis binarny
A co z ułamkami? Zapis stało- bądź zmiennoprzecinkowy. Ale to nie na tych zajęciach :)
Układy cyfrowe kombinacyjne vs. sekwencyjne, synchroniczne vs. asynchroniczne opis: funkcja przełączająca a tabela prawdy równoważność sprzętu i oprogramowania Bramki są dwie? bramka jako realizacja funkcji dwuargumentowej bramki funkcjonalnie pełne Bramki i przerzutniki w LD CoDeSys Powtórzenie wiadomości z klasy czwartej pozycyjny zapis liczby przejście pomiędzy systemami o różnych podstawach Formaty zapisu - Podsumowanie NBC, BCD, pbcd, ZM, ZU, ZU2
W następnym odcinku Krótko o elektryczności Prąd elektryczny Opór, oporność, opornik Obwody prądu stałego Kondensatory Prąd sinusoidalnie zmienny Proszę pamiętać o zadaniach domowych! http://main5.amu.edu.pl/~zfp/sm/home.html
I to by było na tyle Dziękuję za uwagę!