Jen malá aktualizace. Díky novému solárnímu regulátoru mám vysoké přebytky energie a tak jsem upravil program aby při stavu baterky nad 95% nevypínal BT a vysílal zprávy každou minutu. Při tom bude blikat LEDkou. Uvidíme jak to bude vypadat nyní. Případně přidám další plýtvátka 🙂
Máme tu další vylepšení mého NEDsatu (1), (2), (3)
Tentokrát jsem to vzal z gruntu. Nechal jsem vyrobit DPS, vyměnil jsem solární regulátor a hodně jsem rozšířil kód který má nyní 588 řádků (v.1 měla 92 řádků).
DPS obsahuje indikační LEDku, RF vysílač, BT vysílač vypínaný MOSFETem, teplotní čidlo DS18B20 a MCU ATmega328P. Dále tu máme měřič baterie DFRobot Gravity, čidlo INA219 měřící proud z panelu a solární nabíječku SDBK03TA CN3158.
První revize DPS měla pár chyb které jsem opravil a v podkladech už je vše v pořádku
Program je dost upravený ale základ je stejný, hlavní smyčka běží na 8MHz a provádí vysílání morseovky a případně i BT, střídané se spánkem, který trvá dle nabití baterie.
Režimy jsou následující:
BAT > 80%, vysílání BT + RF, spánek 5 minut
BAT > 50%, vysílání BT + RF, spánek 10 minut
BAT > 20%, vysílání RF, spánek 20 minut
BAT > 10%, vysílání RF, spánek 30 minut
BAT < 10%, vysílání RF, spánek 60 minut
Režim spánku je jen čekání instrukcí delay s podtaktovaným MCU na 125kHz při kterém je spotřeba jen 1,8mA.
Nový solární regulátor dokáže dostat z panelu víc energie i při nízkém osvitu a tak není potřeba velkého šetření.
Nově je při aktivním BT možné se připojit a odesláním znaku „e“ aktivovat příkazovou konzoly. Jsou implementované následující příkazy:
Program je snad dost přehledný a snažil jsem se ho okomentovat aby bylo vše přehledné. Všechny zprávy odesílané na BT jsou vysílané 3x pro spolehlivost.
Základní HW zůstal původní. Přidal jsem čidlo teploty DS18B20 a modul na měření proudu z panelu INA219.
HW v.2.0
Větší změny proběhly v SW. Pro úsporu energie jsem upravil RF vysílání, nyní jsou výstupní pulsy generovány PWM; LED dioda bliká v kratších intervalech; čekání na připojení k BT je zkráceno na 1 minutu; jsou vypnuté některé obvody v MCU; a hlavně je MCU v době čekání podtaktováno na 125kHz. Díky těmto úpravám klesnul proud v IDLE na 1,8mA (z původních 4mA); zkrátil se vysílací čas a tím snížil o trochu proud v probuzeném stavu.
Zkusil jsem monitorovat proud z panelu externím čidlem při slunečném dnu a mám tu pěkný graf:
Je poznat že ve špičkách dával panel i 500mA. Proud je ovlivněný stavem nabití akumulátoru takže není moc vypovídající o tom co panel zvládne.
Už je to 3 roky od prvního konceptu NEDsatu a konečně jsem se dostal k realizaci. Sice oproti původnímu návrhu je značně odlišný ale účel je stejný „především seznámení se a otestování konstrukce se solárním napájením, stavba a naprogramování konstrukce s ohledem na minimální spotřebu, možnost vzdálené komunikace a konfigurace s otestováním maximální komunikační vzdálenosti, a hlavně udržet vše v chodu bez servisního zásahu po co nejdelší dobu. Prostě v principu vesmírný satelit či meziplanetární sonda.“
Tento ručně vyrobený cyberdeck je navržen jako odolný, kompaktní a plně funkční mobilní systém inspirovaný postapokalyptickou estetikou.
💾 Srdcem cyberdecku je Raspberry Pi 4 Model B (4GB), doplněný o 120GB SSD. Napájení zajišťují tři 10Ah Li-Pol baterie (111Wh). 🖥 Hlavní ovládání je přes 7″ LCD dotykovou obrazovku, vestavěnou kompaktní klávesnici a přehledný ovládací panel. ⚡ Cyberdeck je vybaven řadou vstupů a výstupů pro rozšíření včetně zdířek pro regulovaný zdroj (1,2-39V), univerzálních I/O zásuvek s podporou I2C, 1-Wire a dalších rozhraní, osciloskopu a funkčního generátoru. 🚀 Cílem je vytvořit vysoce odolné a funkční zařízení, které zvládne extrémní podmínky a umožní i práci v terénu. Základní koncept je jasný – nezničitelný cyberdeck s dlouhou životností a širokými možnostmi připojení.
Každý pořádný počítač potřebuje výstup na monitor, já jsem se rozhodl pro standartní VGA výstup. Karta nabízí monochromatické zobrazení v textovém módu 80 znaků na 24 řádků a grafiku v rozlišení 480 x 288 pixelů.