Table of Contents
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$
- $I_C$ - proud na kolektoru
- $I_B$ - proud na bázi
- $\beta$ / $h_{21}$ - proudové zesílení
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:
- Vypnuto (cut-off) - Do báze neteče proud → tranzistor zavřený (nevede)
- Zapnuto (saturace) - Do báze teče dostatečný proud → tranzistor plně sepnutý (vede jako uzavřený spínač)
U spínačů vždy zapojuji zátěž na kolektor. Typy spínačů:
- Low-side - zátěž mezi zdrojem a kolektorem (používám NPN)
- High-side - zátěž mezi zemí a kolektorem (používám PNP)
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
- Symetrické - třeba +15V a -15V
- Nesymetrické - 0V a 5V
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
- log 0 - 0V
- log 1 - 3,3V
- Na DAC pinech možné regulovat napětí (0-3,3V)
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)
- Ještě rychlejší, větší odběr.
- Vhodné pro vysokorychlostní aplikace.
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)
- Velmi malý (nA až μA), když nejsou přechody.
- Vhodné pro nízkopříkonové aplikace.
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:
- stabilitu napětí
- potlačení rušení
- omezení špiček při spínání logických stavů
- ochranu před chybami způsobenými kolísáním napájení
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
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.
Hodinové signály
Slouží k taktování CPU a periferií, generovány pomocí oscilátorů (RC nebo krystalických).
- Interní RC oscilátor – levný, nízký odběr, méně přesný.
- Externí krystal (XTAL) – vysoká přesnost, např. 8 MHz.
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:
- neplatnými zápisy do paměti
- chybnými výpočty
- zablokování systému
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í:
- Zabezpečení proti zamrznutí aplikace.
- Obnovení systému po chybě.
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
Input Capture
Při příchodu určité události (např. hrany na pinu) se aktuální hodnota čítače uloží do registru.
Využití:
- měření délky pulsu,
- zaznamenání času události,
- určování střídy (duty cycle).
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,…)
- SET – nastaví na 1
- RESET – vynuluje
- TOGGLE – překlopí (změní stav)
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í:
- řízení servomotorů
- stmívání LED
- řízení rychlosti motorů (např. BLDC)




