From: Tomas Mudrunka Date: Thu, 2 Aug 2012 23:22:46 +0000 (+0200) Subject: Sleepcount improved X-Git-Url: https://git.harvie.cz/?a=commitdiff_plain;h=3e5828b5bfdae6ef1457d8e44c551369e12e467b;p=mirrors%2FPrograms.git Sleepcount improved --- diff --git a/c/goertzel/sleepcount.sh b/c/goertzel/sleepcount.sh new file mode 100755 index 0000000..dbfda3e --- /dev/null +++ b/c/goertzel/sleepcount.sh @@ -0,0 +1,12 @@ +#!/bin/bash +seconds=$2 +START=$(head -n 1 "$1" | cut -f 2) +STARTOK=$(tail -n 1 "$1.counts.$seconds" | cut -f 1) +STOP=$( tail -n 1 "$1" | cut -f 2) + +test "$STARTOK" -gt "$START" && START="$STARTOK"; +seq $START $STOP | while read MAX; do + MIN=$(( $MAX - $seconds )) + echo -ne "$MAX\t" + cat "$1" | cut -f 2,5 | grep -v '\s0' | cut -f 1 | egrep $(echo $(seq $MIN $MAX) | tr ' ' '|') | wc -l +done >> "$1.counts.$seconds" diff --git a/c/goertzel/sleepplot.sh b/c/goertzel/sleepplot.sh index 496690e..5b5a92e 100755 --- a/c/goertzel/sleepplot.sh +++ b/c/goertzel/sleepplot.sh @@ -5,14 +5,9 @@ test -z "$1" && { exit 23 } -#Count: +#Count events: seconds=60 -cat "$1" | cut -f 2,5 | cut -d ' ' -f 1 | grep '1$' | while read line; do - time=$(echo $line | cut -d ' ' -f 1); - time=$(( $time + $seconds - $time%$seconds )) - echo "$time" -done | uniq -c | sed -e 's/^\s*//g' | tr ' ' '\t' > "$1.counts" - +./sleepcount.sh "$1" "$seconds" #Approximate size of graph size="$(tail -n 1 "$1" | cut -d . -f 1)" @@ -37,7 +32,8 @@ set timefmt "%s" set grid #set pointsize 0.5 -plot "$1" using 2:5 with steps, "$1.counts" using 2:(\$1/7) with lines +plot "$1" using 2:5 title "Sensor state" with steps,\ +"$1.counts.$seconds" using 1:(\$2/5) title "Activations in last $seconds seconds" smooth csplines EOF