Schéma a popis navrhovaného HW 2.0
Uvedené schéma je zatím jen moje idea. Jsem ve stádiu přípravy pokusného prototypu. Pokud by se ke schématu chtěl někdo vyjádřit s radami a připomínkami, budu rád. Ať už v komentáři na konci článku, nebo v diskuzním fóru tady. Jakmile prověřím funkčnost návrhu, napišu sem další info.
Obr.1 - Schéma navrhovaného zapojení HW 2.0
Propojení s GPIO piny Raspberry Pi 3 bude jiné, než u verze HW 1.0. Důvodem jsou HW kanály PWM a ovládání servomotoru, které mají pevně stanovené piny, ale v HW 1.0 už byly tyto piny použity na něco jiného. Popis GPIO konektoru je na následujícím obrázku.
Obr. 2 Popis konektoru GPIO Raspberry Pi
Výstupy z počítače jsou nově rozmístěny takto:
- GPIO12 (Pin32) Zapnout / vypnout motor elevace (HW PWM)
- GPIO13 (Pin33) Zapnout / vypnout motor azimutu (HW PWM)
- GPIO17 (Pin11) Změnit směr motoru elevace
- GPIO4 (Pin7) Změnit směr motoru azimu
- GPIO18 (Pin12) Ovládání servomotoru (HW PWM)
Vstupy do počítače jsou nově rozmístěny takto:
- GPIO19 (Pin35) Čidlo A motoru elevace
- GPIO26 (Pin37) Čidlo B motoru elevace
- GPIO20 (Pin38) Čidlo A motoru azimutu
- GPIO21 (Pin40) Čidlo B motoru azimutu
- GPIO16 (Pin36) Spínač nulové polohy elevace
- GPIO6 (Pin31) Spínač nulové polohy azimutu
Uvedené použití pinů je zatím dočasné, během návrhu plošného spoje se díky optimalizaci ještě může změnit.
Výstupy z Raspberry Pi 3 jdou nejprve na oddělovací optočlen, který by měl chránit GPIO piny s napětím 3,3V. V této konstrukci je ale situace poněkud komplikovanější, než v HW verzi 1.0. Výkonový budící můstek L6203 je ovládán napětím 5V. Správně by měl být pro toto napětí použitý samostatný zdroj. Ale to se mi zatím zdá přehnané. Chci vyzkoušet, jestli bude stačit, když 5V pro mou desku nepůjde přes obvody Raspberry Pi 3. Napájecí napětí ze zdroje 5V jde nejprve na můj plošný spoj a teprve potom je vedeno do počítače. Vím, že je to špatně. V případě poruchy L6203 se může napětí 24V dostat touto cestou až k Raspberry Pi 3. Ale zatím to tak chci zkusit.
Vstupy IN1 a IN2 obvodu L6203 rozhodují o tom, jaké napětí bude na kterém jeho výstupu. Pro moje použití musí být vždy v opačné fázi. To zajišťuje obvod 74SL05, respektive jedno jeho hradlo. Tak se přepíná polarita napětí na ovládaném motoru. Rychlost otáčení se řídí vstupem ENABLE. Princip PWM spočívá v tom, že se na motor přivádí napájecí napětí v podobě impulzů. Frekvence těchto impulzů musí být přizpůsobená konstrukci motoru, obvykle je ale 50 až 200 Hz. Střída těchto impulzů pak stanovuje rychlost otáčení motoru. Výhoda tohoto způsobu regulace otáček je v tom, že se k motoru vždy připojuje plné napájecí napětí, takže se příliš nesnižuje síla motoru při nízkých otáčkách. Jakou frekvenci použiji ve své konstrukci budu muset zjistit experimentálně podle chování motorů. Střída 0% znamená, že motor je vypnutý. Střída 100% znamená chod motoru plnou rychlostí.
Servomotor MG996R lze ovládat přímo signálem 5V podle normy TTL. Není tedy potřeba žádný výkonový spínací prvek. Pro jistotu jsem i zde použil oddělovací optočlen, ten ale obrátí polaritu signálu. Proto jej musíme vrátit na původní stav hradlem z obvodu 74LS05. I když je servo určené pro napájecí napětí 6V, i 5V stačí pro dostatečnou sílu motoru. Princip ovládání servomotoru je stejný jako u PWM. Rozdíl je v tom, že rozsah střídy ovládacích impulzů je přesně stanovený a poměrně úzký. Používá se frekvence 50 Hz, tedy délka jedné periody 20 mS. Délka impulzu 1,5 mS nastaví rotor serva do střední polohy. Délka impulzu 0,5 mS nastaví rotor do jedné krajní polohy a délka impulzu 2,5 mS do druhé krajní polohy.
Zpracování vstupních signálů je navrženo stejně jako ve verzi 1.0. Vstupní odporová síť napájí LED diody v oddělovacích optočlenech. Zatím uvažuji o dvou variantách HW, 24V pro EGIS a 36V pro táhlové motory. Jestli půjde pro oboje napájecí napětí použít stejnou odporovou síť prověřím až experimentálně na prvním prototypu. Změřím proudy vstupními LED optočlenů a podle zjištěných hodnot se rozhodnu pro konečnou variantu. I když v konstrukci vstupů nic zásadního neměním, chtěl bych vyzkoušet, jestli vše bude spolehlivě fungovat i při propojení s EGISEM nestíněnými kabely o délce 10m. Tato délka kabelů by v mém případě umožnila schovat řídící elektroniku na půdu nedalekého domu. Tím by se zjednodušila ochrana před vlivy počasí.
V následující tabulce je soupis použitých součástek:
Číslo součásti | Název | Počet kusů |
---|---|---|
19 | IDE kabel plochý 40 pin | 1 |
18 | Raspberry Pi 3 + zdroj + SD karta | 1 |
17 | Zdroj MEAN WELL LRS-75-24 | 1 |
16 | Konektor MLW40G | 1 |
15 | Svorkovnice ARK500/2EX | 2 |
14 | Svorkovnice ARK500/3EX | 4 |
13 | Kondenzátor 220nF | 2 |
12 | Kondenzátor 22nF | 2 |
11 | Kondenzátor 15nF | 4 |
10 | Kondenzátor 1nF | 2 |
9 | Odpor 3k3 | 5 |
8 | Odpor 1k5 | 12 |
7 | Odpor 680Ω | 6 |
6 | Odpor 560Ω | 6 |
5 | Odpor 410Ω | 5 |
4 | Odpor 10Ω | 2 |
3 | 6x invertor s otevřeným kolektorem SN74LS05 | 1 |
2 | Optočlen PC844 | 3 |
1 | Můstkový výkonový spínač L6203 | 2 |