cs:supercap
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
| cs:supercap [2016/08/15 13:39] – roman | cs:supercap [Neznámé datum] (aktuální) – upraveno mimo DokuWiki (Neznámé datum) 127.0.0.1 | ||
|---|---|---|---|
| Řádek 9: | Řádek 9: | ||
| Energie uložená modulu je dostatečná pro běh počítače odroid na několik desítek sekund. Tento čas je dostatečný k tomu, aby mohlo dojít například k uložení důležitých dat, nebo k odstavení systému. | Energie uložená modulu je dostatečná pro běh počítače odroid na několik desítek sekund. Tento čas je dostatečný k tomu, aby mohlo dojít například k uložení důležitých dat, nebo k odstavení systému. | ||
| - | Pro automatické vypnutí počítače po odpojení napájení modulu lze využít [[http:// | + | Pro automatické vypnutí počítače po odpojení napájení modulu lze využít [[http:// |
| + | Systém finguje tak, že skript v odroidu periodicky čte pin 83 na který je připojený indikační výstup ze SUPERCAP - Pin PFO. Při výpadku napájení logická hodnota na pinu odroidu přejde na log 0. | ||
| - | # | + | Protože se při startu odroidu může stát, že je potřeba zinicializovat ještě některé periferie atd, Tak je program prvních 30s po spuštění necitlivý na výpadek napájení. |
| - | import wiringpi2 as gpio | + | |
| - | import time | + | === Instalace |
| - | import subprocess | + | |
| - | + | | |
| - | gpio.wiringPiSetupGpio() | + | |
| - | gpio.pinMode(88, 0) | + | |
| - | gpio.pullUpDnControl(88, 0) | + | |
| - | + | ||
| - | + | ||
| - | oldstav = gpio.digitalRead(88) | + | |
| - | + | ||
| - | while True: | + | |
| - | | + | |
| - | + | ||
| - | if stav != oldstav and stav == 0: | + | |
| - | subprocess.call(" | + | |
| - | | + | |
| - | | + | |
| - | time.sleep(1) | + | |
| Pro spuštění tohoto skriptu je potřebné mít nainstalovanou knihovnu [[https:// | Pro spuštění tohoto skriptu je potřebné mít nainstalovanou knihovnu [[https:// | ||
| + | cd ~/repos | ||
| git clone https:// | git clone https:// | ||
| cd WiringPi2-Python | cd WiringPi2-Python | ||
| Řádek 40: | Řádek 27: | ||
| sudo python setup.py install | sudo python setup.py install | ||
| - | S tímto skriptem nastane problém | + | Následně stáhneme skript ze svn. |
| + | |||
| + | cd ~/repos | ||
| + | wget https:// | ||
| + | wget https:// | ||
| + | |||
| + | Nyní by jsme v adresáři repos měli mít nový adresář SUPERCAP s výše zmíněným Python skriptem, Ten nyní stačí spustit, aby začal kontrolovat stav pinu indikujícího výpadek vstupního | ||
| + | |||
| + | sudo ./start.sh | ||
| + | |||
| + | U skriptu je však vhodné aby se spouštěl automaticky při startu systému. | ||
| + | |||
| + | odroid@odroid: | ||
| + | #!/bin/sh -e | ||
| + | # | ||
| + | # rc.local | ||
| + | # | ||
| + | # This script is executed at the end of each multiuser runlevel. | ||
| + | # Make sure that the script will "exit 0" on success or any other | ||
| + | # value on error. | ||
| + | # | ||
| + | # In order to enable or disable this script just change the execution | ||
| + | # bits. | ||
| + | # | ||
| + | # By default this script does nothing. | ||
| + | |||
| + | [ ! -f / | ||
| + | |||
| + | / | ||
| + | |||
| + | exit 0 | ||
| + | |||
| + | <WRAP center round tip 60%> | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | |||
| + | {{: | ||
| + | <WRAP center round todo 80%> | ||
| + | Jestliže se odroid vypne při vysokém napětí na kondenzátoru a kondenzátor se nevybije pod prahovou mez pro reset napájením. Tak nedojde k zapnutí odroidu po opětovném připojení napájení. | ||
| + | Tento problém by mělo být možné vyřešit připojením PG pinu modulu SUPERCAP, na vypínací vstup ODROIDU, který je vyvedený na nezapájený hřebínek odroidu. K tomu je ale potřeba zjistit logické úrovně vypínacího signálu a jeho přesnou polaritu. | ||
| + | </ | ||
cs/supercap.1471268383.txt.gz · Poslední úprava: 2016/08/15 13:39 (upraveno mimo DokuWiki)
