Table of Contents
-
-
Podpůrné a dohlížecí bloky MCU (hodinový generátor, Reset, POR, BOR , RTC, Watch Dog,..); čítačové jednotky v MCU (PWM, „input capture“, output compare,..) jejich funkce a využití. Vstupy a výstupy VS, bloky komunikace s obsluhou ve VS, tlačítka, klávesnice a zobrazovače, vstupy a výstupy s posuvnými registry.
Návrh vestavných systémů
Elektronické obvody a prvky pro vestavné systémy. Mikrořadiče - struktura, vlastnosti a programování. Návrh vest. systémů s mikrořadiči a dalšími vstupně- výstupními obvody a bloky. Řešení jejich spolupráce.
Základy el. obvodů: odporový dělič, Theveninův teorém, zatížený odporový dělič, měření proudu ve vestavném systému. V/A charakteristika diod Si a LED, diferenciální (dynamický) odpor, bipolární tranzistory a jejich základní vlastnosti, tranzistor jako spínač, tranzistory MOS s kanálem N a kanálem P, prahové napětí.
Operační zesilovač (OZ), jeho vlastnosti a použití; symetrické a nesymetrické napájení OZ, neinvertující zesilovač s OZ.
Mikrořadič – microcontroller (MCU) jako logický obvod CMOS, obvyklé vstupní a výstupní napěťové úrovně, vstupní napěťová tolerance. MCU s jádrem ARM Cortex M3, základní vlastnosti; periferie integrované na čipu:-GPIO, UART, SPI, IIC Bus,..; jejich vlastnosti a použití.
Typické řady log. obvodů CMOS používaných ve vestavných systémech (VS), jejich základní vlastnosti; dynamický proudový odběr MCU a logických obvodů CMOS. Blokování napájení MCU a log. obvodů - způsob, důvod, použité součástky.
Podpůrné a dohlížecí bloky MCU (hodinový generátor, Reset, POR, BOR , RTC, Watch Dog,..); čítačové jednotky v MCU (PWM, „input capture“, output compare,..) jejich funkce a využití. Vstupy a výstupy VS, bloky komunikace s obsluhou ve VS, tlačítka, klávesnice a zobrazovače, vstupy a výstupy s posuvnými registry.
Základy el. obvodů: odporový dělič, Theveninův teorém, zatížený odporový dělič, měření proudu ve vestavném systému. V/A charakteristika diod Si a LED, diferenciální (dynamický) odpor, bipolární tranzistory a jejich základní vlastnosti, tranzistor jako spínač, tranzistory MOS s kanálem N a kanálem P, prahové napětí.
Odporový dělič
Theveninův teorém
Théveninova poučka (Théveninův teorém) o náhradním zdroji napětí tvrdí, že libovolně složitý lineární dvojpól lze nahradit obvodem složeným z ideálního zdroje napětí a sériově zapojeným odporem.
Dvojpól - obvod se dvěma svorkami (póly), u kterého platí linearita vztahu mezi napětím a proudem.
Zatížený odporový dělič
Paralelní odpor co vznikne připojením zátěže k děliči se převede na jeden odpor podle paralelního vzorečku
Měření proudu ve vestavném systému
Proud se neměří přímo, ale nepřímo pomocí převodu na napětí nebo digitální signál, který je následně zpracován ADC nebo specializovaným senzorem.
Měření pomocí shunt rezistoru
Do série se zátěží se vloží malý rezistor (shunt), na kterém se měří úbytek napětí.
$I = \frac{U}{R_{shunt}}$
Hallova sonda
Měření magnetického pole vznikajícího proudem v vodiči.
Integrované proudové senzory
Externí zařízení. Používají buď rezistor, nebo Hallovu sondu, následně komunikují s MCU buď přes I2C nebo SPI.
V/A charakteristika diod Si a LED, diferenciální (dynamický) odpor
LED
Si dioda
Úbytek napětí na diodě
| Dioda | Úbytek (V) |
| Sch | 0,2-0,4 |
| Si | 0,6-0,7 |
| LED (R) | 1,8-2,1 |
| LED (G) | 2,2 |
| LED (B) | 3-3,5 |
Diferenciální (dynamický) odpor rd
Udává lokální odpor diody při daném pracovním bodě. Je definován jako derivace: $r_d= \frac{dU}{dI}$, resp $R_{diff} = \frac{\Delta U_L}{\Delta I_L}$ (Fischerova definice).
Jinými slovy: Jak moc se změní napětí při malé změně proudu.
Bipolární tranzistory a jejich základní vlastnosti
Bipolární tranzistory jsou dvou základních typů: NPN a PNP.
U bipolárních tranzistorů rozlišujeme mezi aktivním a spínacím režimem .
Aktivní režim
Při zapojení se společným emitorem tranzistor zesiluje proud – malý proud bází řídí větší proud mezi kolektorem a emitorem.
$I_C=\beta⋅I_B$
Tranzistor jako spínač
Tranzistor je buzen malým proudem do báze, čímž umožní průchod většího proudu mezi kolektorem a emitorem. Pro dosažení saturace je nutné bázi buzit větším proudem, než odpovídá jmenovitému zesílení tranzistoru. V návrhu se používá tzv. forced beta, což je zvolené (záměrně snížené) proudové zesílení pro spínací režim (typicky $\beta_{forced} \approx 10-20$).
V režimu spínače pracuje ve dvou stavech:
U spínačů vždy zapojuji zátěž na kolektor.
Typy spínačů:
Spínače lze spojit a vytvořit tak tranzistorový driver.
Typy zapojení BJT
Společný emitor (CE)
Emitor je připojen na společný potenciál.
Společný kolektor (CC)
Kolektor je připojen na společný potenciál.
Společná báze (CB)
Báze je připojena na společný potenciál.
Tranzistory MOS s kanálem N a kanálem P, prahové napětí
MOSFET (Metal–Oxide–Semiconductor Field-Effect Transistor) je tranzistor řízený elektrickým polem. Oproti bipolárnímu tranzistoru (BJT) je řízen napětím na gate, nikoli proudem.
Prahové napětí je minimální napětí mezi gate (G) a source (S). Při jeho překročení se tranzistor začne otevírat – tzn. vytvoří se vodivý kanál mezi drain (D) a source (S).
N-MOS
Majoritním nosičem elektrony. Vede při kladném $V_{GS}$. Má nižší odpor v sepnutém stavu.
P-MOS
Majoritním nosičem díry. Vede při záporném (resp. nižším než source) $V_{GS}$.
Provozní režimy
MOSFET pracuje v několika režimech:
Cut-off (vypnuto) – $V_{GS} < V_{th}$ - tranzistor nevede
Lineární (ohmický) režim – chová se jako odpor
Saturační režim (aktivní oblast) – proud je řízen $V_{GS}$
MOSFET jako spínač
V digitálních a výkonových aplikacích se MOSFET používá jako spínač:
OFF stav – žádný proud mezi D a S
ON stav – nízký odpor R - DS(on) tranzistor vede
High- a Low-side spínání stejné jako u bipolárních tranzistorů.
Operační zesilovač (OZ), jeho vlastnosti a použití; symetrické a nesymetrické napájení OZ, neinvertující zesilovač s OZ.
Operační zesilovač
Operační zesilovač je integrovaný obvod, který zesiluje rozdíl napětí mezi svými dvěma vstupy:
invertující vstup: V−
neinvertující vstup: V+
výstup: VOUT
Symetrické a nesymetrické napájení OZ
V embedded systémech se operační zesilovače používají nejčastěji s jedním (a tedy nesymetrickým) napájecím napětím (+3 nebo +5V).
Virtuální nula (Virtual Ground): pro zapojení ve zpětné vazbě (tj. invertující vstup je z obvodu za OZ) nemá invertující vstup přímou referenci na 0, tj. 0 je rozdíl napětí mezi vstupy ($U_{-} = U_{+}$). Díky tomu lze, při dostatečném napětí zátěže, udělat např. emitorový sledovač NPN, který reguluje proud na zátěži (na kolektoru) pouze přes napětí na vstupu a rezistor na emitoru (a díky velkému zesílení vyloučí působení napětí $U_{BE}$).
Neinvertující zesilovač s OZ.
Mikrořadič – microcontroller (MCU) jako logický obvod CMOS, obvyklé vstupní a výstupní napěťové úrovně, vstupní napěťová tolerance. MCU s jádrem ARM Cortex M3, základní vlastnosti; periferie integrované na čipu:-GPIO, UART, SPI, IIC Bus,..; jejich vlastnosti a použití.
Obvyklé vstupní a výstupní napěťové úrovně
Vstup
Typicky 0-3.3V, někdy 5V tolerantní (v datasheetu pin označen FT)
log 0 - $U_{in} < 0.3 * U_{cc}$
log 1 - $U_{in} > 0.7 * U_{cc}$
má ochrané diody (většinou)
Výstup
Vstupní a výstupní brány
General Purpose Input and Output (GPIO).
Vstup
Floating (Plovoucí) - bez připojeného potenciálu - napětí se volně pohybuje vlivem šumu, nepředvídatelná logická úroveň
PULL-UP - rezistor na $U_{dd}$, pokud je pin bez signálu → HIGH
PULL-DOWN - rezistor na GND, pokud je pin bez signálu → LOW
Výstup
PUSH-PULL - používá dva tranzistory na přepínání mezi GND a $U_{dd}$
OPEN-DRAIN - tranzistor na GND - tranz. sepnut→ LOW, rozepnut→ undefined, připnuto GND - pro log. 1 potřebuje pull-up rezistor na ${U_{dd}}$
U výstupu lze zvolit rychlost: low, medium, high, very high - tvrdost buzení výstupu. Pokud je zbytečně vysoká, vznikají napěťové špičky přes indukčnost cesty na PCB nebo kabelu.
MCU s jádrem ARM Cortex M3, základní vlastnosti
Cortex-M3 je 32bitové RISC jádro od firmy ARM, navržené specificky pro vestavěné systémy
Thumb-2 instrukční sada - Kompaktní (16bit) + plné (32bit) instrukce → menší kód, rychlé provádění.
NVIC (Nested Vectored Interrupt Controller)
Periferie integrované na čipu:-GPIO, UART, SPI, IIC Bus,..; jejich vlastnosti a použití.
GPIO
Programovatelný pin – může být vstupem nebo výstupem.
Možnost pull-up / pull-down rezistorů (vnitřních)
LED, tlačítka, relé, spínače.S
Stavové signály, řízení periferií.
Detekce událostí na pinech (tlačítko → přerušení).
UART
Asynchronní sériová komunikace (TX, RX).
Podpora rychlostí (např. 9600 – 115200 baud, klidně víc).
Možnost přenosu dat v 8/9 bitech, parita, stop bity.
Často podpora DMA.
Někdy více UART kanálů.
SPI
Sériová synchronní komunikace (MOSI, MISO, SCK, SS).
Master/slave režim.
Rychlosti až jednotky Mbit/s (záleží na MCU).
Full-duplexní – zároveň odesílá a přijímá.
Možnost více slave zařízení (s více CS piny).
IIC Bus
Sběrnice s dvěma vodiči: SDA (data), SCL (hodiny).
Master/slave komunikace, více zařízení na jedné sběrnici.
Adresace zařízení (7bit nebo 10bit).
Rychlosti: standardní (100 kHz), fast (400 kHz), fast+ (1
MHz).
Pull-up rezistory nutné na SDA a SCL.
Typické řady log. obvodů CMOS používaných ve vestavných systémech (VS), jejich základní vlastnosti; dynamický proudový odběr MCU a logických obvodů CMOS. Blokování napájení MCU a log. obvodů - způsob, důvod, použité součástky.
Typické řady log. obvodů CMOS používaných ve vestavných systémech
4000 series (např. 4011, 4040, 4093)
Starší řada, vhodná pro široký rozsah napájení (3–15 V).
Nízký statický odběr, vhodné pro bateriová zařízení.
Pomalejší než řady 74xx.
74HCxxx (High-speed CMOS)
Napájení: typicky 2–6 V.
log. $0 - V_{IL} \le 0,3 \cdot V_{in}$
log. $1 - V_{IH} \ge 0,7 \cdot V_{in}$
Rychlejší než 4000, kompatibilní s TTL logikou.
Nízký proudový odběr, ideální pro spojení s MCU.
74HCTxxx (High-speed CMOS, TTL compatible)
Použití tam, kde je potřeba propojení CMOS a TTL.
Stejné jako 74HC, vstupní úrovně přizpůsobeny TTL
log. 0 - max. 0,8V
log. 1 - min. 2V
74AC / 74ACT (Advanced CMOS / TTL Compatible)
Proudový odběr CMOS obvodů a MCU
Spotřeba MCU se odvíjí hlavně od:
frekvence hodinového signálu (CPU, sběrnice, periferií),
aktivních periferií (např. ADC, USART),
neoptimalizovaného kódu (např. polling místo přerušení),
použití spánkových režimů (sleep, stop, standby).
Statický odběr (v klidu)
Dynamický odběr
Proud teče hlavně při přechodu logických stavů (0 ↔ 1)
Napájecí proud CMOS - $I_{CC} = f\cdot U_{CC}\cdot \sum{C}$
Ztrátový výkon CMOS $P = f\cdot U_{CC}^2\cdot \sum{C}$
Odběr závisí na:
frekvenci přepínání (f) - vyšší frekvence → vyšší odběr
zatížení výstupů (větší kapacita → vyšší proud)
napětí – vyšší Vdd → vyšší proud
Blokování napájení MCU a logických obvodů
Blokování napájení je klíčové pro stabilní a spolehlivý chod mikrořadiče a připojených digitálních obvodů.
Hlavní účel blokování je zajistit:
Při náběhu napájecího napětí může dojít k nestabilitám, které mohou způsobit špatnou inicializaci MCU – blokovací prvky tomuto zabraňují. V blízkosti každého napájecího pinu MCU by měl být umístěn keramický kondenzátor s kapacitou přibližně 100 nF. Umisťuje se co nejblíže k pinu.
Pro vyrovnání větších změn v odběru napájení a filtrování nižších frekvencí se používají elektrolytické kondenzátory o kapacitách v řádu 10 až 100 µF. Ty se dávají na vstup nebo výstup stabilizátoru, případně na hlavní napájecí větev. V kombinaci s nimi ferritové tlumivky nebo ferritové perle, ty slouží jako vysokofrekvenční filtr, který odfiltruje šum z napájení (nedávají se mezi napájení a zem, ale pouze na napájecí větev).
Pro ochranu před přepětím, nebo elektrostatickým výbojem, se používají ochranné součástky, jako jsou Zenerovy diody, TVS diody nebo klasické diodové ochrany. V systémech s citlivým napájením (např. analogové měření nebo RTC) je vhodné použít LDO stabilizátor s nízkým výstupním šumem, který zajistí konstantní napětí 3,3 V nebo 1,8 V.
Při návrhu PCB je důležité správně rozmístit blokovací prvky tak, aby tvořily krátké smyčky mezi napájecím a zemním vodičem – tím se dosáhne co nejvyšší účinnosti filtrace.
Nedostatečné blokování může způsobit:
samovolné restarty
poruchy v komunikaci (např. UART, I2C)
chybnou činnost periferií
zvýšený šum v analogových částech obvodu
Hodinové signály
Slouží k taktování CPU a periferií, generovány pomocí oscilátorů (RC nebo krystalických).
V MCU je Real Time Clock (RTC) blok, který slouží k měření reálného času. Jeho krystal generuje frekvenci 32,768 Hz (2$^{15}$), dá se tak snadno dělit na 1 Hz. Mikrokontrolery obsahují také Phase-Locked Loop (PLL) obvod, který násobí nižší frekvenci racionálním číslem (např. 8 MHz → 72 MHz). Více o PLL na stránce LSP.
RESET
Může být vyvolán RESET tlačítkem (manuálně), nebo automaticky jiným obvodem. Po resetu se mikrořadič vrátí do výchozího stavu (spustí se inicializace a start programu od začátku).
Reset může být aktivován:
tlačítkem „RESET“,
watchdogem,
poklesem napájení (BOR),
programově (v SW).
POR – Power-On Reset
Aktivuje se automaticky při zapnutí napájení, MCU zůstává ve stavu „držení v resetu“, dokud se napájecí napětí dostatečně neustálí. Zabrání rozběhnutí procesoru v nestabilních podmínkách (např. napětí roste pomalu → procesor by mohl začít běžet s chybami). U STM32 se aktivuje, když VDD překročí definovanou mez.
BOR – Brown-Out Reset
Automatický reset v případě, že napětí během běhu programu klesne pod bezpečnou (předem konfigurovanou) hranici (např. 2.0V).
Chrání před:
Typicky se používá v systémech s mechanickými akčními členy – tam je bezpečnost kritická.
Watchdog (WDT – Watchdog Timer)
Dohlíží na běh programu – pokud se program zacyklí/zasekne a neobnoví watchdog, provede reset.
Použití:
Druhy:
Interní (součást MCU) – často připojen na systémové hodiny.
Externí – připojený k MCU zvenčí, spolehlivější.
Signály:
WDI – vstupní impuls, kterým se watchdog „krmí“.
WDO – výstup reset, pokud impuls dlouho nepřijde.
Čítačové jednotky v mikrořadiči (MCU)
Režimy čítače
Při příchodu určité události (např. hrany na pinu) se aktuální hodnota čítače uloží do registru.
Využití:
Možnosti: náběžná/spádová/jakákoli hrana.
Přenos hodnoty buď programově, nebo pomocí DMA.
Analogie: Stopky – když někdo běží, zmáčkneš tlačítko → uloží se čas mezičasu, ale stopky běží dál.
Output Compare
Čítač běží a porovnává se s hodnotou v registru, při shodě změní výstupní pin stav, nebo vygeneruje přerušení či událost (DMA, ADC,…)
Využití:
generování signálu (např. PWM)
řízení výkonových prvků (IGBT, tyristory)
pulzní řízení motorů
periodické události v kódu
Pulse Width Modulation (PWM)
Speciální režim čítače, kde čítač opakuje cyklické pulzy podle nastavené hodnoty duty cycle (střída). Střída je podíl z délky cyklu, kdy je pin v log. 1 (0-100 %)
Využití: