tristar-mppt-60-pod-openwrt
no way to compare when less than two revisions
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Předchozí verzeNásledující verze | |||
— | tristar-mppt-60-pod-openwrt [2012/04/17 21:05] – drama | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
+ | ====Ukládání a vizualizace dat z regulátoru Morningstar Tristar MPPT 60 pod OpenWRT==== | ||
+ | |||
+ | ===Požadavky na hardware=== | ||
+ | * regulátor Morningstar Tristar MPPT 60 | ||
+ | * router, na kterém běží Linuxová distribuce OpenWRT (nejlépe s USB a rozumným množstvím paměti např. Linksys WRT 160-NL) - viz http:// | ||
+ | |||
+ | ===Instalace a konfigurace ukládání dat=== | ||
+ | * nejprve nainstalujeme na router OpenWRT (např. upgrade přes webové rozhraní, nebo tftp klientem), více informací lze nalézt na http:// | ||
+ | * zprovozníme na routeru síť a to jak přístup na internet tak v lokální síti (tj. přístup na Morningstar Tristar MPPT 60) | ||
+ | * pokud budeme data ukládat na USB, zprovozníme USB storage dle http:// | ||
+ | * nainstalujeme collectd démona společně s modulem pro modbus a ukládání do CSV (samozřejmě můžeme nainstalovat jakýkoliv jiný backend např. collectd-mod-mysql):< | ||
+ | opkg update | ||
+ | opkg install collectd collectd-mod-modbus collectd-mod-csv</ | ||
+ | * upravíme konfigurační soubor / | ||
+ | PIDFile | ||
+ | |||
+ | # data ukládat každých 120 sekund, není-li specifikováno jinak | ||
+ | Interval | ||
+ | ReadThreads 2 | ||
+ | |||
+ | # nahrajeme používáné moduly | ||
+ | LoadPlugin modbus | ||
+ | LoadPlugin csv | ||
+ | |||
+ | # kam ukládat data, v tomto případě do /tmp/csv | ||
+ | <Plugin " | ||
+ | DataDir "/ | ||
+ | StoreRates true | ||
+ | </ | ||
+ | |||
+ | # definice vyčítání dat z regulátoru, | ||
+ | <Plugin modbus> | ||
+ | <Data " | ||
+ | RegisterBase 0x018 | ||
+ | RegisterType Uint16 | ||
+ | Type voltage | ||
+ | Instance " | ||
+ | </ | ||
+ | | ||
+ | <Data " | ||
+ | RegisterBase 0x01b | ||
+ | RegisterType Uint16 | ||
+ | Type voltage | ||
+ | Instance " | ||
+ | </ | ||
+ | | ||
+ | <Data " | ||
+ | RegisterBase 0x01c | ||
+ | RegisterType Uint16 | ||
+ | Type voltage | ||
+ | Instance " | ||
+ | </ | ||
+ | |||
+ | <Data " | ||
+ | RegisterBase 0x039 | ||
+ | RegisterType Uint16 | ||
+ | Type voltage | ||
+ | Instance " | ||
+ | </ | ||
+ | | ||
+ | <Data " | ||
+ | RegisterBase 0x023 | ||
+ | RegisterType Uint16 | ||
+ | Type voltage | ||
+ | Instance " | ||
+ | </ | ||
+ | | ||
+ | <Data " | ||
+ | RegisterBase 0x025 | ||
+ | RegisterType Uint16 | ||
+ | Type voltage | ||
+ | Instance " | ||
+ | </ | ||
+ | |||
+ | <Data " | ||
+ | RegisterBase 0x044 | ||
+ | RegisterType Uint16 | ||
+ | Type voltage | ||
+ | Instance " | ||
+ | </ | ||
+ | | ||
+ | <Data " | ||
+ | RegisterBase 0x03A | ||
+ | RegisterType Uint16 | ||
+ | Type voltage | ||
+ | Instance " | ||
+ | </ | ||
+ | | ||
+ | <Data " | ||
+ | RegisterBase 0x032 | ||
+ | RegisterType Uint16 | ||
+ | Type voltage | ||
+ | Instance " | ||
+ | </ | ||
+ | |||
+ | <Data " | ||
+ | RegisterBase 0x033 | ||
+ | RegisterType Uint16 | ||
+ | Type voltage | ||
+ | Instance " | ||
+ | </ | ||
+ | <Host " | ||
+ | # IP adresa regulátoru | ||
+ | | ||
+ | # interval ukládání | ||
+ | | ||
+ | | ||
+ | < | ||
+ | Collect | ||
+ | Collect | ||
+ | Collect | ||
+ | Collect | ||
+ | Collect | ||
+ | Collect | ||
+ | Collect | ||
+ | Collect | ||
+ | Collect | ||
+ | Collect | ||
+ | Instance " | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | * nakonec restartujeme collectd démona a podíváme se, zda se data ukládají tam kam mají | ||
+ | * jakmile máme data, je třeba z nich vytvořit grafy např. pomocí gnuplotu | ||
+ | * nainstalujeme gnuplot< | ||
+ | gnuplot</ | ||
+ | * vytvoříme gnuplot skript a uložíme jej jako / | ||
+ | set terminal png size 700, 450 | ||
+ | set style fill solid 1.0 noborder | ||
+ | set style function filledcurves y1=0 | ||
+ | set clip two | ||
+ | set key top left Left reverse | ||
+ | set output '/ | ||
+ | set xdata time | ||
+ | set xlabel " " | ||
+ | set ylabel " | ||
+ | set y2label "Proud [A]" | ||
+ | unset grid | ||
+ | set grid | ||
+ | set datafile separator "," | ||
+ | set ytics nomirror | ||
+ | set y2tics | ||
+ | set timefmt " | ||
+ | set yrange [0:45] | ||
+ | set y2range [0:45] | ||
+ | plot " | ||
+ | set output '/ | ||
+ | unset y2tics | ||
+ | unset y2range | ||
+ | set y2range [23.8:29.7] | ||
+ | set yrange [23.8:29.7] | ||
+ | set y2label " | ||
+ | set y2tics (" | ||
+ | set grid y2tics | ||
+ | plot " | ||
+ | set output '/ | ||
+ | unset y2tics | ||
+ | unset yrange | ||
+ | unset grid | ||
+ | set grid | ||
+ | set y2label "Vykon [W]" | ||
+ | set y2tics | ||
+ | set ylabel " | ||
+ | set yrange [*: *] | ||
+ | set y2range [*: *] | ||
+ | plot " | ||
+ | </ | ||
+ | * grafy vytvoříme v /tmp/www (viz definice výše) zavoláním ze skriptu< | ||
+ | DATE=$(date " | ||
+ | if [ $DATE -lt 1300860001 ]; then | ||
+ | exit; | ||
+ | fi | ||
+ | gnuplot -e " | ||
+ | </ | ||
tristar-mppt-60-pod-openwrt.txt · Poslední úprava: 2012/04/18 03:15 autor: 127.0.0.1