Skip to content

CaravanPi Datenbank anlegen

Josef Spitzlberger edited this page Dec 31, 2023 · 7 revisions

neue Datenbank für den CaravanPi generieren

sudo mysql -uroot -p
CREATE DATABASE CaravanPiValues;

Unserem User alle Rechte geben

GRANT ALL PRIVILEGES ON CaravanPiValues.* TO 'caravanpi'@'localhost';
FLUSH PRIVILEGES;

Achtung, falls der Zugriff (auch) von einem anderen System aus möglich sein soll, bitte nachfolgenden Artikel beachten: https://webdock.io/en/docs/how-guides/database-guides/how-enable-remote-access-your-mariadbmysql-database

Einloggen als User caravanpi direkt in die Datenbank CaravanPiValues

sudo mysql -ucaravanpi -p CaravanPiValues

alles weitere kann auch in phpmyadmin komfortabel durchgeführt werden

Erzeugen der Tabellen für den CaravanPi

create table temperatursensor (sensor_id VARCHAR(20) NOT NULL, zeitstempel TIMESTAMP NOT NULL, temperatur FLOAT(10,2) NOT NULL);

create table klimasensor (sensor_id VARCHAR(20) NOT NULL, zeitstempel TIMESTAMP NOT NULL, temperatur FLOAT(10,2) NOT NULL, luftdruck FLOAT(10,2) NOT NULL, luftfeuchtigkeit FLOAT(10,2) NOT NULL);

create table gasfuellgrad (sensor_id VARCHAR(20) NOT NULL, zeitstempel TIMESTAMP NOT NULL, gewicht FLOAT(10,0) NOT NULL, fuellgrad FLOAT(10,0) NOT NULL);

create table ausrichtung (zeitstempel TIMESTAMP NOT NULL, aktuell_x FLOAT NOT NULL, aktuell_y FLOAT NOT NULL, aktuell_z FLOAT NOT NULL, toleranz_x FLOAT NOT NULL, toleranz_y FLOAT NOT NULL, letztes_x FLOAT, vorletztes_x FLOAT, differenz_hinten_links INT NOT NULL, differenz_hinten_rechts INT NOT NULL, differenz_vorne_links INT NOT NULL, differenz_vorne_rechts INT NOT NULL, differenz_zentral_links INT NOT NULL, differenz_zentral_rechts INT NOT NULL, differenz_deichsel INT NOT NULL);

create table tankfuellgrad (tank_id VARCHAR(20) NOT NULL, zeitstempel TIMESTAMP NOT NULL, fuellgrad FLOAT(10,0) NOT NULL);

create table spannung (quellen_id VARCHAR(20) NOT NULL, zeitstempel TIMESTAMP NOT NULL, spannung FLOAT(15,3) NOT NULL);

create table raspberrypi (zeitstempel TIMESTAMP NOT NULL, cpu_temp FLOAT(15,2) NOT NULL, gpu_temp FLOAT(15,2) NOT NULL, cpu_usage FLOAT(15,2) NOT NULL, ram_usage FLOAT(15,2) NOT NULL, disk_usage FLOAT(15,2) NOT NULL, net_traffic_MB FLOAT(15,2) NOT NULL, process_count FLOAT(15,2) NOT NULL);

Datenbank Struktur

Ausgeben von Warnings und Errors einschalten

SHOW WARNINGS [LIMIT [offset,] row_count]
SHOW ERRORS [LIMIT row_count OFFSET offset]
SHOW COUNT(*) WARNINGS

Importieren vorhandener Werte aus bisherigen Daten-Dateien Achtung, vorher prüfen, ob keine Leerzeilen drin sind.

Kühlschrank Temperaturen

LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/28-012032d4dd5a' INTO TABLE temperaturen FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/28-012033251e15' INTO TABLE temperaturen FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/28-01203392085f' INTO TABLE temperaturen FIELDS TERMINATED BY ' ';

Klimasensoren

LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/BME280-96-118' INTO TABLE klimawerte FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/BME280-96-118.1' INTO TABLE klimawerte FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/BME280-96-118.2' INTO TABLE klimawerte FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/BME280-96-119' INTO TABLE klimawerte FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/BME280-96-119.1' INTO TABLE klimawerte FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/BME280-96-119.2' INTO TABLE klimawerte FIELDS TERMINATED BY ' ';

Gaswaage

LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/gasScale1' INTO TABLE gasfuellgrad FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/gasScale1.1' INTO TABLE gasfuellgrad FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/gasScale1.2' INTO TABLE gasfuellgrad  FIELDS TERMINATED BY ' ';

Tanks

LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/tank1' INTO TABLE tankfuellgrad FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/tank1.1' INTO TABLE tankfuellgrad FIELDS TERMINATED BY ' ';
LOAD DATA LOCAL INFILE '/home/pi/CaravanPi/values/tank1.2' INTO TABLE tankfuellgrad   FIELDS TERMINATED BY ' ';

Testdaten aus vorhandenen erzeugen in myphpadmin Erzeugen temperaturen_temp mit testdaten, die vollständige Tage abdecken

UPDATE `temperaturen_temp` SET `zeitstempel`= DATE_ADD(`zeitstempel`, INTERVAL 24 Day) WHERE 1
INSERT INTO `temperaturen` SELECT * FROM`temperaturen_temp`

mehrmals ausführen

UPDATE gasfuellgrad_temp SET zeitstempel= DATE_ADD(zeitstempel, INTERVAL 2 Day),gewicht=gewicht-150,fuellgrad=fuellgrad-5 WHERE 1 UPDATE gasfuellgrad SET zeitstempel=zeitstempel,gewicht=2860-150-120-75-180-130-150-75-120 WHERE zeitstempel > "2022-09-14 17:00:00"

CaravanPi Wiki

1 Installationsanleitung

2 Bauanleitung

Grundaufbau

Sensoren, etc. installieren

Anzeigen installieren

Raspberry stabilisieren

Platine entwerfen

3 ursprüngliche Entwicklung

4 Dokumentation

5 Updates

ab hier altes WIKI, muss noch umgezogen werden

XX = in Bearbeitung NEU = neue Funktion in letzter Version

Einbau im Caravan

Inbetriebnehmen und Kalibrieren

CaravanPi Updates

Erweiterungen

Grafische Auswertungen

Statuswebsite

weitere Sensoren

Clone this wiki locally