release 0.1
This commit is contained in:
parent
1524274303
commit
ff86390bfe
@ -1,4 +1,4 @@
|
||||
#/usr/bin/python
|
||||
#!/usr/bin/python
|
||||
|
||||
import RPi.GPIO as GPIO
|
||||
import time
|
||||
@ -26,12 +26,12 @@ while True:
|
||||
|
||||
|
||||
#write into logfile
|
||||
if (power < lpower + 3500):
|
||||
out = str(current) + ";" + str(round(power,0))
|
||||
else:
|
||||
out = str(current) + ";0"
|
||||
#if (power < lpower + 1800):
|
||||
out = str(current) + ";" + str(round(power,0))
|
||||
#else:
|
||||
# out = str(current) + ";" + str(round(lpower,0))
|
||||
payload = {"val": out}
|
||||
r = requests.post("https://strom.ccc-ffm.de/test.php", data=payload, verify=False)
|
||||
r = requests.post("https://strom.ccc-ffm.de/get.php", data=payload, verify=False)
|
||||
lpower = power
|
||||
last = current
|
||||
GPIO.cleanup()
|
61
powertrans
61
powertrans
@ -1,61 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
### BEGIN INIT INFO
|
||||
# Provides: powertrans
|
||||
# Required-Start: $remote_fs $syslog
|
||||
# Required-Stop: $remote_fs $syslog
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Put a short description of the service here
|
||||
# Description: Put a long description of the service here
|
||||
### END INIT INFO
|
||||
|
||||
# Change the next 3 lines to suit where you install your script and what you want to call it
|
||||
DIR=/srv/powerpi
|
||||
DAEMON=$DIR/transfer.sh
|
||||
DAEMON_NAME=PowerTrans
|
||||
|
||||
# Add any command line options for your daemon here
|
||||
DAEMON_OPTS=""
|
||||
|
||||
# This next line determines what user the script runs as.
|
||||
# Root generally not recommended but necessary if you are using the Raspberry Pi GPIO from Python.
|
||||
DAEMON_USER=pi
|
||||
|
||||
# The process ID of the script when it runs is stored here:
|
||||
PIDFILE=/var/run/$DAEMON_NAME.pid
|
||||
|
||||
. /lib/lsb/init-functions
|
||||
|
||||
do_start () {
|
||||
log_daemon_msg "Starting system $DAEMON_NAME daemon"
|
||||
start-stop-daemon --start --background --pidfile $PIDFILE --make-pidfile --user $DAEMON_USER --chuid $DAEMON_USER --startas $DAEMON -- $DAEMON_OPTS
|
||||
log_end_msg $?
|
||||
}
|
||||
do_stop () {
|
||||
log_daemon_msg "Stopping system $DAEMON_NAME daemon"
|
||||
start-stop-daemon --stop --pidfile $PIDFILE --retry 10
|
||||
log_end_msg $?
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
|
||||
start|stop)
|
||||
do_${1}
|
||||
;;
|
||||
|
||||
restart|reload|force-reload)
|
||||
do_stop
|
||||
do_start
|
||||
;;
|
||||
|
||||
status)
|
||||
status_of_proc "$DAEMON_NAME" "$DAEMON" && exit 0 || exit $?
|
||||
;;
|
||||
*)
|
||||
echo "Usage: /etc/init.d/$DAEMON_NAME {start|stop|restart|status}"
|
||||
exit 1
|
||||
;;
|
||||
|
||||
esac
|
||||
exit 0
|
7
server/create_rrd
Normal file
7
server/create_rrd
Normal file
@ -0,0 +1,7 @@
|
||||
rrdtool create power2.rrd \
|
||||
--step '5' \
|
||||
'DS:power:GAUGE:90:U:U' \
|
||||
'RRA:AVERAGE:0.5:1:720' \
|
||||
'RRA:AVERAGE:0.5:6:1440' \
|
||||
'RRA:AVERAGE:0.5:6:2880' \
|
||||
'RRA:AVERAGE:0.5:12:10080'
|
14
server/get.php
Normal file
14
server/get.php
Normal file
@ -0,0 +1,14 @@
|
||||
<?php
|
||||
if (preg_match("/^[0-9]{10}\.[0-9]{0,2};[0-9]{1,5}\.[0-9]{0,20}$/", $_POST['val'])) {
|
||||
$val = explode(";", $_POST['val']);
|
||||
$updator = new RRDUpdater("power.rrd");
|
||||
$updator->update(array("power" => $val[1]), $val[0]);
|
||||
$fileh = fopen("power.log", "w+");
|
||||
fwrite($fileh, $_POST['val']);
|
||||
fclose($fileh);
|
||||
echo "0";
|
||||
} else {
|
||||
echo "1";
|
||||
}
|
||||
|
||||
?>
|
65
server/index.php
Normal file
65
server/index.php
Normal file
@ -0,0 +1,65 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Stromverbrauch HQ</title>
|
||||
<meta http-equiv="refresh" content="15">
|
||||
<style type="text/css">
|
||||
body {
|
||||
font-family: arial, sans-serif;
|
||||
font-size: 14px;
|
||||
color: #000;
|
||||
background-color: #eee;
|
||||
}
|
||||
dt {
|
||||
font-weight: bold;
|
||||
display: inline;
|
||||
float: left;
|
||||
margin: 0 0 0.3em 0;
|
||||
width: 100px;
|
||||
}
|
||||
dd {
|
||||
display: inline;
|
||||
float: left;
|
||||
margin: 0 0.5em 0 0;
|
||||
}
|
||||
dl dd + dt, dl dd + dd {
|
||||
clear: left;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<h1>Aktueller Stromverbrauch im HQ</h1>
|
||||
<?php
|
||||
$last = file_get_contents("power.log");
|
||||
$last = explode(";", $last);
|
||||
$power= $last[1];
|
||||
$time = date("H:i:s",$last[0]);
|
||||
?>
|
||||
<dl>
|
||||
<dt>Zeitpunkt:</dt>
|
||||
<dd><?= $time ?></dd>
|
||||
<dt>Leistung:</dt>
|
||||
<dd><?= $power ?> Watt</dd>
|
||||
|
||||
</dl>
|
||||
<br clear="both">
|
||||
<br>
|
||||
<strong>Plot der letzten Stunde</strong><br>
|
||||
<img src="power.png" alt="Leistung geplottet über die Zeit" border="0"><br>
|
||||
<strong>Plot der letzten 12 Stunden</strong><br>
|
||||
<img src="power12.png" alt="Leistung geplottet über die Zeit" border="0"><br>
|
||||
<strong>Plot der letzten 24 Stunden</strong><br>
|
||||
<img src="power24.png" alt="Leistung geplottet über die Zeit" border="0"><br>
|
||||
<strong>Plot der letzten Woche</strong><br>
|
||||
<img src="power1w.png" alt="Leistung geplottet über die Zeit" border="0"><br>
|
||||
<strong>Plot des letzten Monats</strong><br>
|
||||
<img src="power1m.png" alt="Leistung geplottet über die Zeit" border="0"><br>
|
||||
<strong>Plot des letzten Quartals</strong><br>
|
||||
<img src="power1q.png" alt="Leistung geplottet über die Zeit" border="0"><br>
|
||||
<strong>Plot des letzten Jahres</strong><br>
|
||||
<img src="power1y.png" alt="Leistung geplottet über die Zeit" border="0"><br>
|
||||
</body>
|
||||
</html>
|
1
server/power.log
Normal file
1
server/power.log
Normal file
@ -0,0 +1 @@
|
||||
1427048612.32;421.0
|
BIN
server/power.rrd
Normal file
BIN
server/power.rrd
Normal file
Binary file not shown.
@ -1,8 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
host="http://datengammelstelle.de/hq_strom"
|
||||
|
||||
while true; do
|
||||
sleep 5;
|
||||
wget $host/get.php?val=$(tail -1 /srv/powerpi/power.out) -O /dev/null -q
|
||||
done
|
Loading…
x
Reference in New Issue
Block a user