3.6. Základy elektroniky

Ovládání čehokoli externího z GPIO pinu vyžaduje na druhé straně pinu obvod. Tři pojmy ze základů elektroniky – napětí, proud a vztah mezi nimi přes rezistor – se objevují v každém takovém obvodu.

3.6.1. Napětí, proud, odpor

  • Napětí (volty, V) je potenciálový rozdíl mezi dvěma body v obvodu. Napájecí větev čipu může být na 3,3 V vůči zemi; GPIO pin nastavený do vysoké úrovně je na stejných 3,3 V.

  • Proud (ampéry, A, nebo miliampéry, mA) je tok náboje vodičem. Proud se vždy vrací tam, odkud přišel, takže aby vůbec nějaký proud tekl, musí obvod tvořit uzavřenou smyčku od napájení zpět k zemi.

  • Odpor (ohmy, Ω) udává, jak moc cesta tomuto toku odporuje. Účelem rezistoru je nastavit proud na známou hodnotu při známém napětí.

Ohmův zákon je spojuje dohromady:

Trojúhelník rozdělený na tři oblasti označené V nahoře, I a R dole; kolem něj se objevují přeskupené tvary V = IR, I = V/R, R = V/I.

Ohmův zákon ve svých třech tvarech.

Slovy: napětí na rezistoru se rovná proudu, který jím protéká, krát odpor. Známe-li libovolné dvě ze tří veličin, třetí získáme algebraicky.

3.6.2. Diody

Dioda je dvouvývodová součástka, která vede proud v jednom směru (od anody ke katodě) a v opačném směru jej blokuje.

Schematická značka diody -- trojúhelník směřující doprava do svislé čárky -- s anodou označenou vlevo a katodou vpravo. Varianta LED přidává vedle značky dvě šipky směřující ven, naznačující vyzařované světlo.

Dioda vede pouze od anody ke katodě. LED je dioda, která při vedení proudu vyzařuje světlo.

Dioda má také prahové napětí (Vf) – úbytek napětí na ní, když proud teče ve vodivém směru. Jakmile přiložené napětí dosáhne Vf, chová se dioda zhruba jako vodič; pod touto hodnotou neteče téměř žádný proud.

3.6.3. LED diody

Světlo vyzařující dioda (LED) je dioda, která svůj vodivý proud převádí na viditelné nebo infračervené světlo. Jas roste s proudem; barva je dána chemickým složením LED, nikoli buzením.

Typická prahová napětí LED:

  • Červená: 1,8 – 2,2 V

  • Zelená nebo žlutá: 2,0 – 2,4 V

  • Modrá nebo bílá: 2,8 – 3,4 V

Užitečný provozní proud pro indikační LED je 5 – 20 mA. Vyšší proudy znamenají vyšší jas, ale zkracují životnost LED a mohou překročit proudový limit GPIO pinu.

3.6.4. Proud omezující rezistor

Připojení LED přímo mezi GPIO pin a zem by umožnilo téměř neomezený tok proudu: jakmile je dosaženo prahového napětí, vypadá LED jako téměř zkrat. Sériový rezistor mezi pinem a LED nastaví proud na bezpečnou hodnotu.

Obvod: GPIO pin se přes rezistor R připojuje k anodě LED; katoda LED jde na zem. Popisky označují Vsupply na pinu, V_R na rezistoru, Vf na LED a proud If tekoucí kolem smyčky.

Sériový rezistor nastaví proud LED.

Napájecí napětí se rozdělí mezi rezistor a LED: LED ubere své prahové napětí, rezistor ubere zbytek. Podle Ohmova zákona:

R = (Vsupply - Vf) / If

Pro červenou LED (Vf 2.0 V) buzenou z 3,3 V GPIO pinu při 10 mA:

R = (3.3 - 2.0) / 0.010 = 130 Ω

V praxi zvolte nejbližší vyšší standardní hodnotu (150 Ω nebo 220 Ω). Výsledkem je o něco méně jasná LED se zdravější bezpečnostní rezervou. Pokud na přesném jasu nezáleží, sáhněte jako rozumnou výchozí volbu po 200 – 470 Ω.

3.6.5. Proč na každé části záleží

Tvar každého GPIO výstupního obvodu vychází ze čtyř výše uvedených myšlenek:

  • Napětí určuje energii dostupnou na pinu. GPIO o napětí 3,3 V má k dispozici 3,3 V, které může rozdělit mezi cokoli zapojeného mezi ním a zemí.

  • Dioda (v tomto případě LED) spotřebuje část tohoto napětí jako svůj prahový úbytek a odmítá vést v nesprávném směru – určuje kterým směrem a pevný podíl.

  • Proud omezující rezistor spotřebuje zbývající napětí a přemění zbytkový rozpočet na řízený proud. Bez něj by LED odebírala jakýkoli proud, který pin dokáže dodat – obvykle dost na to, aby zničil jeden nebo oba prvky.

  • Ohmův zákon je to, co umožňuje hodnotu rezistoru vypočítat: z daného zbytkového napětí a požadovaného proudu vyjde R algebraicky.

Napětí, proud, odpor, diody a jedna přeskupená rovnice stačí k návrhu každého základního GPIO výstupního stupně.

Stejné součástky se celou dobu skrývaly za palubní LED. machine.LED("LED_RED").on() rozsvítí LED, protože deska kamery už kolem ní poskytuje vše – proud omezující rezistor, vodič k zemi i samotnou LED – a třída za nimi pouze přepíná GPIO křemíku. Pohled „jeden řádek rozsvítí LED“ je pravdivý; je to jen zkratka pro „buď tento obvod“. Sloupněte abstrakci a zůstane přesně výše uvedený obvod.

machine.Pin je tentýž křemík vystavený bez okolních součástek. Skript řídí napětí pinu přímo; rezistor (dimenzovaný podle Ohmova zákona), LED a zpětnou cestu k zemi dodáváte vy. Stejné čtyři myšlenky se vracejí, v mírně odlišných kombinacích, za odrušením spínačů, filtrací PWM a buzením motorů.