Hallo community, ich plane für meine Wohnung eine kleine Smart-Home-Steuerung mit einem Raspberry Pi und einem 7" Touchscreen. Die Funktionen, die ich mir bisher grob ausgedacht habe sind folgende: - Steuerung von diversen Aktoren (Lichter, Geräte usw.) - Steuerung der Fußbodenheizung - Auslesen vom Stromverbrauch - Anzeigen von Wetterdaten und Terminen Dafür möchte ich gerne meine eigene Visualisierung (GUI) entwickeln und habe bisher damit schon gute Erfahrungen auf dem Raspberry mit Python gemacht (Modul: PyQt mit dem QtDesigner) Nun möchte ich mit der ganzen Sache etwas Herausforderung mit ins Spiel bringen und suche noch nach alternativen Lösungen zu Python. Ich denke so an C# oder Java. Frage an Euch: Gibt es denn Möglichkeiten mit C# oder mit Java (oder evtl. andere Sprachen) gute und funktioniell anspruchsvolle Oberflächen/Visualisierungen zu realisierien, die mithilfe von Buttons oder Drop-Down Menü's über ein Touchscreen angezeigt werden? Liebe Grüße
Kleiner Tipp. Openhab. Ist das was du möchtest in fertig. Und läuft auch auf einem RPI.
Eine Möglichkeit währe auch die Oberfläche über HTML zu machen. Auf dem Display halt im Browser im Vollbildmodus. Hat den Vorteil das das ganze auch von anderen Geräten steuerbar wird ohne alles noch mal neu zu gestalten. Sascha
Lieber Anonym schrieb: > Kleiner Tipp. Openhab. Ist das was du möchtest in fertig. Und > läuft auch > auf einem RPI. Danke für den Tipp. Da ich aber die Herausforderung suche und dabei gleichzeitig eine neue Programmiersprache (nach Python) erlernen möchte würde ich diesen Weg doch ungerne wählen. @Sascha: HTML ist eine gute Alternative, jedoch ist HTML nur eine "Anzeige". Es sollte dahinter natürlich noch ein Programm laufen, welches für die ganzen Funktionen zuständig ist (z.B. GPIO ansteuern, usw). Eben dieses "Programm" sollte dann auch mit einer GUI laufen. Erweiterbar sollte das ganze dann noch mit einer App sein, von welcher ich die ganze Steuerung über mein Smartphone bediene. Über diverse Schnittstellen sollte das in Echtzeit möglich sein. Wie gesagt, ich weiß dass es solche Bausteine und Apps schon in komplett fertig gibt. Da ich mir aber die Zeit gerne damit vertreibe neue Sachen zu erlernen/auszuprobieren würde ich das Projekt gerne "selbst entwickeln" und dabei noch eine neue Programmiersprache lernen. Die Frage ist nur, ob sich dafür Java oder C/C++/C# am besten eignet?
Wie wäre es mit C++ und Qt... und wenn es bei der Anzeige "mehr" sein soll, dann gibt es noch Qwt... und du hast ja mit Qt schon Erfahrung. :-)
Peter091 schrieb: > Es sollte dahinter natürlich noch ein Programm laufen, welches für die > ganzen Funktionen zuständig ist (z.B. GPIO ansteuern, usw). Eben dieses > "Programm" sollte dann auch mit einer GUI laufen. Du willst doch nicht wirklich deine ganzen GPIO-Leitungen da hin führen, wo das Display für die GUI ist? Da ist es doch wesendlich günstiger, GUI und GPIO auf zwei getrennten Rechnerchen laufen zu lassen, die über (W)LAN verbunden sind (z.B. ESP8266 als Access Point, wenns nichts großes werden soll)
ich würde dir Lazarus empfehlen. Damit ist GUI-Entwicklung bequem Grüße Jürgen
Meine Empfehlung: Apache, PHP, MySQL, Ajax Steuerung in php schreiben, die legt Daten in die MySQL Datenbank Datenhaltung in MySQL Webseite ajax, jquery, liest Daten aus der MySQL Datenbank Zusätzlich noch volkszaehler.org als Datelogger zum Kurven anzeigen
Ich nochmal: Vorteil der Lösung: Kannst du auf deinem Smartphone, PC usw. bedienen, auch aus der Ferne. Anzeige kann man auf einem billigen Tablet über WLAN machen, welches bspw. fest an der Wand installiert ist. Eine in C, C++ programmierte Lösung ist bei weitem nicht so flexibel. Willst du das wirklich??
Hallo, Peter091 schrieb: > Lieber Anonym schrieb: >> Kleiner Tipp. Openhab. Ist das was du möchtest in fertig. Und >> läuft auch >> auf einem RPI. > > Danke für den Tipp. Da ich aber die Herausforderung suche und dabei > gleichzeitig eine neue Programmiersprache (nach Python) erlernen möchte > würde ich diesen Weg doch ungerne wählen. mein Bekannter diskutiert gerade mit OpenHAB. Wenn man mehr als irgendwas übernehmen will, wird es wohl zur Herausforderung. Verhalten des Systems bei Ausfall von OpenHAB durch defekt o.ä. Verhalten des Systems bei Neustart von OpenHAB. Zeitsteuerung ("Schaltuhr"), wo man schnell auf ein anders Zeitprogramm switchen will und Rückkehr zu normal (Party-Taste). Datenbankanbindung für Persistenzen usw. Gruß aus Berlin Michael
Ich bin auch seit einem Jahr dran meine komplett eigene Steuerung zu entwickeln und mache es auf einem Pi mit PHP, Datenbank, µC mit LAN für die Ein-/Ausgänge, Bedienterminal usw. Es macht schon Spaß und immer wenn man mal Lust hat, baut man was neues ein. Ich muss mich aber meinen Vorrednern anschließen, mit einer stationären Lösung musst du für Browser/App alles nochmal extra aufbauen. Das würde ich zumindest von Anfang an einplanen. Es mag Menschen geben die so eine Ausdauer haben, mir ist es selbst so schon manchmal zu viel Arbeit. Meine Einzige stationäre Bedienstelle ist ein Touchpanel ohne Display mit reiner Schaltzustand Anzeige/Steuerung (Bild noch aus der Entwicklung).
:
Bearbeitet durch User
Jup bei mir das selbe Lighttpd + PHP + RRD + Mysql, allerdings hab ich keine Bedieneinheit am LCD sondern nur eine Anzeige, 7" war mir zu klein und größere LCDs mit Touch sind zu schwer zu bekommen und Teuer. Fals es jemanden interessiert auf dem LCD ist die Anzeige mit minimalen Xserver und Conky verbraucht unter <10MB RAM und das Conky script last sich zur Laufzeit verändern, und übernimmt die Änderungen selbstständig. Als Bedienelement hab ich nur einen Kapazitiven Slider um die Graphen durchblättern zu können, Rest Steuere ich per PC,Handy oder halt die normalen Schalter.
Peter091 schrieb: > eine neue Programmiersprache (nach Python) erlernen Python ist keine Programmiersprache sondern eine Krankheit ;)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.