www/getco2pressurelog.php

Thu, 05 Dec 2019 22:47:40 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Thu, 05 Dec 2019 22:47:40 +0100
changeset 563
acdd54144838
parent 507
17f244137a9b
child 600
c136dd22f662
permissions
-rw-r--r--

Added export inventory and profiles in beerxml format. Small fixes in beerxml recipe and product export.

507
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 <?php
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3 require_once('config.php');
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 if (isset($_GET["code"]))
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6 $code = $_GET["code"] . ' ' . $_GET["name"];
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 else
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 $code = "TB0015 Winterbier-2";
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 $filename = 'log/co2pressure/' . $code . '.log';
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 /*
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 * From Stackoverflow, the fastest way to count the lines in a file.
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 */
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14 $file = new \SplFileObject($filename, 'r');
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 $file->seek(PHP_INT_MAX);
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 // $file->key() = lines in the file.
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
18 define ('MAX_INTERVALS', 10);
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
19 $GRAPH_INTERVAL = array ( 0, 1, 5, 15, 30, 60, 120, 240, 480, 720 );
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
20 $GRAPH_DATALINES = array ( 0, 800, 3200, 12000, 24000, 48000, 96000, 192000, 384000, 768000 );
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
22
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23 for ($graphstep = 1; $graphstep <= MAX_INTERVALS; $graphstep++) {
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
24 if ($file->key() < $GRAPH_DATALINES[$graphstep])
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
25 break;
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
26 }
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
27 if ($graphstep > MAX_INTERVALS)
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28 $graphstep = MAX_INTERVALS;
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
30 //echo $code . '.log lines=' . $file->key() . ' interval=' . $GRAPH_INTERVAL[$graphstep] . ' graphstep=' . $graphstep . PHP_EOL;
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
32 /*
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
33 * 2014-11-15 18:39:12,TEMPERATURE,PRESSURE,UUID
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
34 * | | | |
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35 * datetime + | | |
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
36 * temperature ------------+ | |
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
37 * pressure --------------------------+ |
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
38 * unit uuid --------------------------------+
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39 */
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
40
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
41
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
42 $handle = @fopen($filename, "r");
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
43 if ($handle) {
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
44 $lines = 0;
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
45 while (($buffer = fgets($handle, 4096)) !== false) {
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
46
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
47 $buffer = preg_replace( "/\r|\n/", "", $buffer);
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
48 $row = explode(",", $buffer);
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
49
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
50 $hr = intval(substr($buffer, 11, 2));
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
51 if ((($graphstep == 1)) ||
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
52 (($graphstep == 2) && ((substr($buffer, 15, 1) == '0') || (substr($buffer, 15, 1) == '5'))) ||
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
53 (($graphstep == 3) && ((substr($buffer, 14, 2) == '00') || (substr($buffer, 14, 2) == '15') ||
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
54 (substr($buffer, 14, 2) == '30') || (substr($buffer, 14, 2) == '45'))) ||
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
55 (($graphstep == 4) && ((substr($buffer, 14, 2) == '00') || (substr($buffer, 14, 2) == '30'))) ||
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
56 (($graphstep == 5) && (substr($buffer, 14, 2) == '00')) ||
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
57 (($graphstep == 6) && (substr($buffer, 14, 2) == '00') && (($hr % 2) == 0)) ||
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
58 (($graphstep == 7) && (substr($buffer, 14, 2) == '00') && (($hr % 4) == 0)) ||
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
59 (($graphstep == 8) && (substr($buffer, 14, 2) == '00') && (($hr % 8) == 0)) ||
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
60 (($graphstep == 9) && (substr($buffer, 14, 2) == '00') && (($hr % 12) == 0))) {
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
61 // echo $hr . ' ' . $row[1] . ' ' . $buffer;
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
62 $lines++;
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
63
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
64 // $heat_used = $cool_used = 0;
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
65 // if ($row[10] && ($row[10] != "NA") && ($heater_l > 0)) {
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
66 // $heat_used = round((intval($row[10]) - $heater_l) * 100 / ($GRAPH_INTERVAL[$graphstep] * 60));
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
67 // }
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
68 // if ($row[12] && ($row[12] != "NA") && ($cooler_l > 0)) {
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
69 // $cool_used = round((intval($row[12]) - $cooler_l) * 100 / ($GRAPH_INTERVAL[$graphstep] * 60));
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
70 // }
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
71
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
72
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
73 // echo $GRAPH_INTERVAL[$graphstep] . ' ' . $heat_used . ' ' . $cool_used . PHP_EOL;
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
74
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
75 // if (($heat_used <= 100) && ($cool_used <= 100)) {
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
76 $logs[] = array(
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
77 'date' => $row[0],
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
78 'temperature' => $row[1],
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
79 'pressure' => $row[2]
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
80 );
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
81 // }
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
82
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
83 // if ($row[10] && ($row[10] != "NA"))
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
84 // $heater_l = intval($row[10]);
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
85 // if ($row[12] && ($row[12] != "NA"))
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
86 // $cooler_l = intval($row[12]);
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
87 }
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
88
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
89 }
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
90 if (!feof($handle)) {
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
91 echo "Error: unexpected fgets() fail\n";
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
92 }
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
93 fclose($handle);
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
94 }
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
95 header("Content-type: application/json");
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
96 echo json_encode($logs);
17f244137a9b Add refermentation logfile and graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
97 //echo $lines . ' lines' . PHP_EOL;

mercurial