View Single Post
Sitat av afen Vis innlegg
Takker for tipset, @snippsat ! Ser ut til at flask kan være noe å undersøke videre!

Hvis man har en tekstfil som raspi-en oppdaterer med f.eks motor_run true/false og motor_rpm <verdi>, kan man lage en bar graph som henter inn turtallet fra den tekstfila?
Vis hele sitatet...
Ja det går fint,
men kan bli litt avansert viss man ikke kjenner Python,web-utvikling og Flask.

Kan ta et scenario som eksempel.
Parse textfile på server siden.
Man sender man update med jinja2(bygd inn i flask) til klient siden kan man bruke f.eks CanvasJS, Chart.js

Eksempel Server siden:

Kode

from flask import Flask,render_template,request

app = Flask(__name__)
@app.route('/moto_rpm')
def motor_rpm():
    # from parsed text file
    motor_rpm = [300, 356, 500, 100, 200]
    return render_template("index.html", motor_rpm=motor_rpm)

if __name__ == '__main__':
   app.run(debug=True)
Sendes med jinja til JavaScript på klinet siden
Vil se ut noe som dette.

Kode

// line chart data
   var barData = {
   motor_rpm : [{% for rpm in motor_rpm %}
                  "{{ rpm }}",
              {% endfor %}],
   datasets : [
      {
            fillColor: "rgba(151,187,205,0.2)",
            strokeColor: "rgba(151,187,205,1)",
            pointColor: "rgba(151,187,205,1)",
         data : [{% for item in values %}
                      {{item}},
                    {% endfor %}]
      }
      ]
   }
Det er mye verktøy,bibliotek som kan brukes til til hjelp.
Kan bare ta litt om dette.
Flask-SocketIO(Real time Toveis kommunikasjon)
Celery(Real-time message passing).
Bruke Ajax som real time/schedule til og push/pull data.

F.eks kan være moderne og bruke Vue.js.
Denne Pen kaller motor_rpm funksjon på server siden hvert 30 sek.

Tkinter i Phyton er også verdt å sjekke ut. Jeg syns det fungerer bra som GUI/HMI.
Vis hele sitatet...
Tjaa det jo og an lage noe men lite fleksibelt,
vanskeligere og dele fra flere steder og ser ikke på langt nær så bra ut som en web-app med Flask.
Hadde brukt PyQt,WxPython skulle jeg noe med GUI.
Sist endret av snippsat; 30. juni 2017 kl. 13:43.