remote_ssh_based_gui
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| remote_ssh_based_gui [2020/03/22 12:17] – 192.168.1.57 | remote_ssh_based_gui [2022/01/09 14:41] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== Remote ssh based GUI ====== | + | ====== GUI ====== |
| + | |||
| + | ===== Remote ssh based GUI ===== | ||
| < | < | ||
| - | ====== Remote browser based GUI ====== | + | ===== Remote browser based GUI ===== |
| + | ==== Overview of html - mqtt - php - sh implemened GUI ==== | ||
| + | |||
| + | {{ :: | ||
| + | ==== simple HTML gui ==== | ||
| + | |||
| + | color codes (see [[https:// | ||
| + | |||
| + | * green: rgb(127, | ||
| + | * yellow: rgb(255, | ||
| + | * cyan: rgb(0, | ||
| + | * skyblue: rgb(135, | ||
| + | * blue: rgb(0, | ||
| + | * violet: rgb(238, | ||
| + | * white: rgb(255, | ||
| + | * lightgray: rgb(211, | ||
| + | * black: rgb(0, | ||
| + | * red: rgb(255, | ||
| + | |||
| + | ==== plotly based HTML gui ==== | ||
| + | |||
| + | Idea: creating images on pi and display these images as html files remotely | ||
| Use lighttpd as minimal webserver on pi | Use lighttpd as minimal webserver on pi | ||
| - | < | + | < |
| sudo pip install plotly | sudo pip install plotly | ||
| </ | </ | ||
| Zeile 33: | Zeile 56: | ||
| < | < | ||
| + | |||
| + | ==== PHP installieren ==== | ||
| + | Only use Python3 | ||
| + | |||
| + | < | ||
| + | sudo apt-get install php7.3-cgi php7.3 | ||
| + | sudo lighty-enable-mod fastcgi-php | ||
| + | sudo service lighttpd force-reload | ||
| + | |||
| + | </ | ||
| + | |||
| + | php- files in / | ||
| + | |||
| + | ==== mqtt Mosquitto installieren ==== | ||
| + | Only use Python3 | ||
| + | |||
| + | < | ||
| + | </ | ||
| + | ==== paho installieren ==== | ||
| + | Paho is needed to call a shell procedure from python. | ||
| + | Only availabe under python 3 | ||
| + | |||
| + | < | ||
| + | |||
| + | ==== sensormqtt.py autostart ==== | ||
| + | |||
| + | / | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Basic code ==== | ||
| + | < | ||
| + | import plotly.graph_objects as go | ||
| + | import random | ||
| + | |||
| + | def nextvalue(): | ||
| + | return (random.randint(10, | ||
| + | |||
| + | def displayserver(): | ||
| + | while True: | ||
| + | fig = go.Figure(go.Indicator( | ||
| + | mode = " | ||
| + | value = nextvalue(), | ||
| + | domain = {' | ||
| + | title = {' | ||
| + | |||
| + | fig.write_html('/ | ||
| + | #fig.show() | ||
| + | |||
| + | # | ||
| + | # Main | ||
| + | # | ||
| + | if __name__== ' | ||
| + | try: | ||
| + | displayserver() | ||
| + | except KeyboardInterrupt: | ||
| + | exit() | ||
| + | </ | ||
| + | |||
| + | ==== shell script lesen DB ==== | ||
| + | getlatestvalue.sh | ||
| + | |||
| + | < | ||
| + | sqlite3 / | ||
| + | .timeout 2000 | ||
| + | select ' ',* from latestvalueLabor_A; | ||
| + | END_SQL | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== hand over values to thermometer.py ==== | ||
| + | < | ||
| + | python3 thermometer.py `getlatestvalue.sh` | ||
| + | </ | ||
| + | |||
remote_ssh_based_gui.1584875827.txt.gz · Zuletzt geändert: (Externe Bearbeitung)
