URL: https://www.overclockers.at/coding-stuff/gui-programmieren-rpi_245939/page_1 - zur Vollversion wechseln!
Servus,
ich möchte demnächst ein kleines Projekt realisieren
"Universal" Tachometer
RPI mit Display (ev das 7" Touch)
+10Hz GPS
Das ganze fürs Motorrad, sprich Tacho mit Temperaturanzeigen, (GPS-)Speed, RPM, Laptimer und Datalogging.
Ich bin zwar kein kompletter Noob, hab aber nur etwas Erfahrung mit Assembler und Arduino. Jetzt stellt sich mir folgende Frage - mit welcher Porgrammiersprache realisiere ich so etwas am besten, insbesondere wichtig ist mir, das die GUI schnell reagiert (-> Drehzahl!).
Nach Recherche wäre ich auf Python/Kivy gekommen, aber so recht überzeugt bin ich nicht(zwecks mangelndem wissen), kann mich vielleicht jemand aufklären, was eine gute Kombo wäre, bzw hat jemand Erfahrung dazu?
lg
Die Programmiersprache wird eher nicht der Flaschenhals werden, deshalb würd ich sagen, dass du mit Python schon ganz gut beraten bist. Ich hab bisher noch nichts derartiges mit dem RPi gemacht, deshalb kann ich nur dazu meinen Senf abgeben
.
Vermutlich ist es eher interessant wie du an die Daten kommst und welche Bibliothek du für die grafische Darstellung benutzen kannst. Wie kommst du denn an die Daten der Sensoren? GPIO? USB?
GPS ist quasi immer seriell. Da gibts so ungefähr eine Millionen Bibliotheken dafür. 
Vermutlich auch welche mit NMEA Dekodierung.
Kivy wär die GUI-"Lib". Ich hab damit selbst noch nicht gearbeitet, aber laut Homepage ist Kivy ja speziell auf portabel ausgelegt. Ich denke damit hast du wesentlich mehr Freude als etwa mit tcl/gtk/qt... Da sind vermutlich schon diverse "Touch"-API Gschichtln implementiert?
Mal abgesehn davon sehn die Beispiele auf der Kivy Seite imho 1000x besser aus als der klassische ranzige gtk und qt Look. 
/edit
Ah Hoppla, Drehzahl.
Da solltest du dich noch schlau machen welche Methode bei deiner Maschine verwendet wird. Hast du noch ein analoges Signal oder schon was digitales?
Der RPI hat ja soweit ich weiß keine Analog-Eingänge...
Zitat von VinciGPS ist quasi immer seriell. Da gibts so ungefähr eine Millionen Bibliotheken dafür.
Vermutlich auch welche mit NMEA Dekodierung.
Kivy wär die GUI-"Lib". Ich hab damit selbst noch nicht gearbeitet, aber laut Homepage ist Kivy ja speziell auf portabel ausgelegt. Ich denke damit hast du wesentlich mehr Freude als etwa mit tcl/gtk/qt... Da sind vermutlich schon diverse "Touch"-API Gschichtln implementiert?
Mal abgesehn davon sehn die Beispiele auf der Kivy Seite imho 1000x besser aus als der klassische ranzige gtk und qt Look.
/edit
Ah Hoppla, Drehzahl.
Da solltest du dich noch schlau machen welche Methode bei deiner Maschine verwendet wird. Hast du noch ein analoges Signal oder schon was digitales?
Der RPI hat ja soweit ich weiß keine Analog-Eingänge...
)Welche Datenaufbereitung? 
Die Umrechnung von einem gemessenen Dutycycle in eine Drehzahl umfasst im schlimmsten Fall eine Division und eine Multiplikation. Und das Display is was ich gelesen hab via DSI angebunden... Das macht dann vermutlich >100fps wenns müsste... 
Danke für die Aufklärung - sollte also kein Problem darstellen
(Aber ich nehme an, man versteht warum das wichtig ist
)
So, jetzt für mich als noobie
Python Programm schreiben, werte in schönen Variablen ausgeben
Danach GUI "Programmieren" und mit diesen Variablen verknüpfen, geh ich das richtig an? (Wie gesagt, nie gelernt, mehr oder weniger "neu" auf dem Gebiet)
Du kannst dir mal das MVC-Prinzip anschauen. Gilt mehr oder weniger als Leitfeiden für gutes Design, wenns darum geht, GUI und "Backend" zu verknüpfen.
Zitat von InnovasetPython Programm schreiben, werte in schönen Variablen ausgeben
Danach GUI "Programmieren" und mit diesen Variablen verknüpfen, geh ich das richtig an? (Wie gesagt, nie gelernt, mehr oder weniger "neu" auf dem Gebiet)
Code:def knopf_click(self, knopferl): print("Ich wurde gedrückt!")
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025