Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| statnice:bakalar:b4b38nvs [2026/05/16 19:02] – [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 mates1n | statnice:bakalar:b4b38nvs [2026/06/06 18:31] (current) – [Obvyklé vstupní a výstupní napěťové úrovně] mates1n | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Návrh vestavných systémů ====== | ====== Návrh vestavných systémů ====== | ||
| - | |||
| Line 67: | Line 66: | ||
| Jinými slovy: Jak moc se změní napětí při malé změně proudu. | 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 a jejich základní vlastnosti |
| Bipolární tranzistory jsou dvou základních typů: **NPN** a **PNP**. | Bipolární tranzistory jsou dvou základních typů: **NPN** a **PNP**. | ||
| + | |||
| {{: | {{: | ||
| Line 80: | Line 80: | ||
| * $I_C$ - proud na kolektoru | * $I_C$ - proud na kolektoru | ||
| * $I_B$ - proud na bázi | * $I_B$ - proud na bázi | ||
| - | * $\beta$ - proudové zesílení | + | * $\beta$ / $h_{21}$ - proudové zesílení |
| == Tranzistor jako spínač == | == Tranzistor jako spínač == | ||
| Line 88: | Line 88: | ||
| * **Vypnuto (cut-off)** - Do báze neteče proud → tranzistor zavřený (nevede) | * **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č) | * **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í === | === Tranzistory MOS s kanálem N a kanálem P, prahové napětí === | ||
| Line 97: | Line 118: | ||
| == N-MOS == | == N-MOS == | ||
| - | Majoritním nosičem **elektrony**. Vede při kladném $V_{GS}$. Má nižší odpor v sepnutém stavu, nejčastěji používaný pro spínání zátěží. | + | Majoritním nosičem **elektrony**. Vede při kladném $V_{GS}$. Má nižší odpor v sepnutém stavu. |
| == P-MOS == | == P-MOS == | ||
| - | Majoritním nosičem **díry**. Vede při záporném (resp. nižším než source) $V_{GS}$. Používá se pro high-side spínání. | + | Majoritním nosičem **díry**. Vede při záporném (resp. nižším než source) $V_{GS}$. |
| == Provozní režimy == | == Provozní režimy == | ||
| Line 112: | Line 133: | ||
| OFF stav – žádný proud mezi D a S | OFF stav – žádný proud mezi D a S | ||
| ON stav – nízký odpor R - DS(on) tranzistor vede | 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č (OZ), jeho vlastnosti a použití; symetrické a nesymetrické napájení OZ, neinvertující zesilovač s OZ. ====== | ||
| - | * Operační zesilovač je integrovaný obvod, který zesiluje rozdíl napětí mezi svými dvěma vstupy: | + | === 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− | * invertující vstup: V− | ||
| * neinvertující vstup: V+ | * neinvertující vstup: V+ | ||
| * výstup: VOUT | * výstup: VOUT | ||
| - | |||
| === Symetrické a nesymetrické napájení OZ === | === Symetrické a nesymetrické napájení OZ === | ||
| - | * Symetrické - třeba +15V a -15V | + | |
| - | * Nesymetrické - 0V a 5V | + | |
| - | === Neinvertující | + | V embedded systémech se operační |
| + | **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: | ====== 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: | ||
| Line 135: | Line 162: | ||
| === Obvyklé vstupní a výstupní napěťové úrovně === | === Obvyklé vstupní a výstupní napěťové úrovně === | ||
| - | * Vstup typicky | + | == Vstup == |
| - | * někdy 5V tolerantní | + | Typicky |
| - | * log 0 - | + | * log 0 - |
| - | * log 1 - | + | * log 1 - |
| * má ochrané diody (většinou) | * má ochrané diody (většinou) | ||
| - | | + | == Výstup == |
| + | | ||
| + | * 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). | ||
| - | === MCU s jádrem ARM Cortex M3, základní vlastnosti === | + | ==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 | * 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í. | * Thumb-2 instrukční sada - Kompaktní (16bit) + plné (32bit) instrukce → menší kód, rychlé provádění. | ||
| * NVIC (Nested Vectored Interrupt Controller) | * NVIC (Nested Vectored Interrupt Controller) | ||
| - | |||
| - | |||
| === Periferie integrované na čipu: | === Periferie integrované na čipu: | ||
| Line 191: | Line 233: | ||
| - | == Typické řady log. obvodů CMOS používaných ve vestavných systémech == | + | === Typické řady log. obvodů CMOS používaných ve vestavných systémech |
| - | * Typické řady: | + | == 4000 series |
| - | * 4000 (např. 4011, 4040, 4093) | + | |
| * Starší řada, vhodná pro široký rozsah napájení (3–15 V). | * Starší řada, vhodná pro široký rozsah napájení (3–15 V). | ||
| * Nízký statický odběr, vhodné pro bateriová zařízení. | * Nízký statický odběr, vhodné pro bateriová zařízení. | ||
| * Pomalejší než řady 74xx. | * Pomalejší než řady 74xx. | ||
| - | * | + | |
| - | | + | ==74HCxxx (High-speed CMOS)== |
| * Napájení: typicky 2–6 V. | * 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. | * Rychlejší než 4000, kompatibilní s TTL logikou. | ||
| * Nízký proudový odběr, ideální pro spojení s MCU. | * Nízký proudový odběr, ideální pro spojení s MCU. | ||
| - | * | + | |
| - | | + | ==74HCTxxx (High-speed CMOS, TTL compatible)== |
| - | * Stejné jako 74HC, ale vstupní úrovně přizpůsobeny TTL (log. 1 od cca 2 V). | + | * Použití tam, kde je potřeba **propojení CMOS a TTL**. |
| - | * 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ší, | * Ještě rychlejší, | ||
| * Vhodné pro vysokorychlostní aplikace. | * 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). | ||
| - | == Proudový odběr CMOS obvodů a MCU == | + | ==Statický odběr (v klidu)== |
| - | * Statický odběr (v klidu): | + | |
| * Velmi malý (nA až μA), když nejsou přechody. | * Velmi malý (nA až μA), když nejsou přechody. | ||
| * Vhodné pro nízkopříkonové aplikace. | * Vhodné pro nízkopříkonové aplikace. | ||
| - | * | + | ==Dynamický odběr== |
| - | * Dynamický odběr: | + | Proud teče hlavně |
| - | | + | |
| - | * Odběr závisí na: | + | |
| - | * frekvenci přepínání (vyšší frekvence → vyšší odběr), | + | |
| - | * zatížení výstupů (větší kapacita → vyšší proud), | + | |
| - | * napětí – vyšší Vdd → vyšší proud. | + | |
| - | * | + | |
| - | * 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). | + | |
| + | 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í 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: |
| - | * Hlavní účel blokování je zajistit: | + | * stabilitu napětí |
| - | * stabilitu napětí, | + | * potlačení rušení |
| - | * potlačení rušení, | + | * omezení špiček při spínání logických stavů |
| - | * omezení špiček při spínání logických stavů, | + | * ochranu před chybami způsobenými kolísáním napájení |
| - | * 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, |
| - | * 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í |
| - | | + | |
| - | * Ochranné | + | Pro **ochranu před přepětím**, |
| - | * 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 |
| - | | + | |
| - | * samovolné restarty, | + | Nedostatečné blokování může způsobit: |
| - | * poruchy v komunikaci (např. UART, I2C), | + | * samovolné restarty |
| - | * chybnou činnost periferií, | + | * poruchy v komunikaci (např. UART, I2C) |
| - | * zvýšený šum v analogových částech obvodu. | + | * 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, | ====== 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, | ||
| === Hodinové signály === | === Hodinové signály === | ||
| - | * Slouží k taktování CPU a periferií. | + | 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. |
| - | * Externí krystal (XTAL) – vysoká přesnost, např. 8 MHz. | + | |
| - | * Krystal pro RTC – 32.768 kHz (2¹⁵ | + | 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 |
| - | * PLL (Phase-Locked Loop) – násobí frekvenci (např. 8 MHz → 72 MHz). | + | |
| === RESET === | === RESET === | ||
| - | * Může být vyvolán tlačítkem (manuálně), | + | Může být vyvolán |
| - | * | + | |
| - | | + | Reset může být aktivován: |
| * tlačítkem „RESET“, | * tlačítkem „RESET“, | ||
| * watchdogem, | * watchdogem, | ||
| Line 281: | Line 324: | ||
| === POR – Power-On Reset === | === POR – Power-On Reset === | ||
| - | * Aktivuje se automaticky při zapnutí napájení. | + | 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. |
| - | * 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 === | === 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). | ||
| - | * Sleduje, zda napětí neklesne pod bezpečnou hranici během běhu. | + | Chrání před: |
| - | * Pokud ano → provede automatický reset, aby se zabránilo: | + | * neplatnými zápisy |
| - | * neplatnému zápisu | + | * chybnými |
| - | * chybnému | + | * zablokování systému |
| - | * zablokování systému. | + | |
| - | * U STM32 může být aktivován například pod 2.0 V (hodnota závisí na konfiguraci). | + | Typicky se používá v systémech s mechanickými akčními členy – tam je bezpečnost kritická. |
| - | | + | |
| - | * | + | |
| - | | + | |
| | | ||
| === Watchdog (WDT – Watchdog Timer) === | === Watchdog (WDT – Watchdog Timer) === | ||
| - | * Dohlíží na běh programu – pokud se program zacyklí/ | + | Dohlíží na běh programu – pokud se program zacyklí/ |
| - | | + | Použití: |
| * Zabezpečení proti zamrznutí aplikace. | * Zabezpečení proti zamrznutí aplikace. | ||
| * Obnovení systému po chybě. | * Obnovení systému po chybě. | ||
| - | * Dva druhy: | + | Druhy: |
| * Interní (součást MCU) – často připojen na systémové hodiny. | * Interní (součást MCU) – často připojen na systémové hodiny. | ||
| * Externí – připojený k MCU zvenčí, spolehlivější. | * Externí – připojený k MCU zvenčí, spolehlivější. | ||
| - | * Signály: | + | Signály: |
| * WDI – vstupní impuls, kterým se watchdog „krmí“. | * WDI – vstupní impuls, kterým se watchdog „krmí“. | ||
| * WDO – výstup reset, pokud impuls dlouho nepřijde. | * WDO – výstup reset, pokud impuls dlouho nepřijde. | ||
| Line 315: | Line 353: | ||
| ==== Čítačové jednotky v mikrořadiči (MCU) ==== | ==== Čítačové jednotky v mikrořadiči (MCU) ==== | ||
| - | == Režimy čítače == | + | === Režimy čítače |
| - | **Input Capture** | + | ==Input Capture== |
| - | | + | Při **příchodu** určité |
| - | | + | |
| - | | + | |
| - | * zaznamenání času události, | + | |
| - | * určování střídy (duty cycle). | + | |
| - | * Možnosti: náběžná/ | + | |
| - | * Přenos hodnoty: | + | |
| - | * programově, | + | |
| - | * pomocí DMA. | + | |
| - | * Analogie: Stopky – když někdo běží, zmáčkneš tlačítko → uloží se čas mezičasu, ale stopky běží dál. | + | |
| + | Využití: | ||
| + | * měření délky pulsu, | ||
| + | * zaznamenání času události, | ||
| + | * určování střídy (duty cycle). | ||
| - | **Output Compare** | + | Možnosti: náběžná/ |
| - | * Čítač běží a porovnává se s hodnotou v registru. | + | |
| - | | + | Přenos hodnoty buď **programově**, nebo pomocí **DMA**. |
| - | * SET – nastaví na 1, | + | |
| - | * RESET – vynuluje, | + | Analogie: Stopky – když někdo běží, zmáčkneš tlačítko → uloží se čas mezičasu, ale stopky běží dál. |
| - | * TOGGLE – překlopí (změní stav). | + | |
| - | * Možné i přerušení nebo událost pro jinou jednotku (např. DMA, ADC...). | + | ==Output Compare== |
| - | | + | |
| - | * generování signálu (např. PWM), | + | **Čítač** běží a **porovnává se s hodnotou v registru**, při shodě změní |
| - | * řízení výkonových prvků (IGBT, tyristory), | + | * SET – nastaví na 1 |
| - | * pulzní řízení motorů. | + | * RESET – vynuluje |
| - | * | + | * TOGGLE – překlopí (změní stav) |
| - | ** PWM – Pulse Width Modulation** | + | |
| - | | + | Využití: |
| - | | + | * generování signálu (např. PWM) |
| - | * čítač opakuje cyklicky pulzy. | + | * řízení výkonových prvků (IGBT, tyristory) |
| - | | + | * pulzní řízení motorů |
| - | * řízení servomotorů, | + | * periodické události v kódu |
| - | * stmívání LED, | + | |
| - | * řízení rychlosti motorů (např. BLDC). | + | ==Pulse Width Modulation |
| + | 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) | ||