Hallo ich möchte meinen Raspberry bzw. die GPIO's über eine Webseite steuern. Die Werte der Ein/Ausgänge werden in einer Datenbank gespeichert und sollen ein oder ausgelesen werden. Meine frage ist nun mit welchem System erstelle ich eine SCHÖNE grafische Website mit schicken Steuerelementen? PHP, JavaScript, Wordpress, Joomla, aspx...??? Ich weiß die Frage ist etwas ungenau aber wie wird üblicherweise oder oft ein Prozessleitsystem mit Webinterface erstellt ??? Mir geht es eigentlicht nur um die Erstellung des Designs. Welche Software, welches System? Beispiele?
Oh, da hast du aber einfach alles Möglich in einen Topf geworfen ... Mein Vorschlag: - Ein Apache Webserver liefert statische Webseiten an den Web-Browser - PHP Scripte (als Apache-Modul) führen die Kommandos (=Formulare) aus, die der Browser an den Server sendet. - Javascript kannst du optional hinzunehmen, um die Webseiten schön zu machen. Aber schau Dir erstmal die Möglichkeiten von HTML und CSS an. Wenn du diese Komponenten verwendest, wirst du problemlos alle nötigen Anleitungen finden. Denn das sind alte Standards, die auch vom Raspberry Pi einwandfrei unterstützt werden. Schau Dir das mal an, so als Einsteigshilfe: http://kampis-elektroecke.de/?page_id=1659
Ich habe sowas änliches jedoch ohne die Datenbank gemacht. Auf dem Raspi läuft eine App, diese enthält die IO Ansteuerung und ebenfalls eine Socketverbindung. Über diese Sockenverbindung kommuniziert die Webseite via AJAX http GET mit der o.g. App. Damit steuere ich meine 433MHz Funksteckdosen via Internet. Die Webseite kannst du, wenn du HTML/CSS und noch besser dazu auch noch PHP kannst, alles in Notepadd++ umsetzen. Wordpress, Joomla & Co. brauchst du nur, wenn du wirlich was komplexeres hast.
Hi, ich häng mich mal mit rein, denn Webseiten mit PHP und Javascript ja, aber Zugriff auf Hardware? >Geist schrieb: > Auf dem Raspi läuft eine App, Diese möchte ich auch, wie nennt sich die App, läuft das unter Rapsbian? >diese enthält die IO Ansteuerung und ebenfalls eine > Socketverbindung. Über diese Sockenverbindung kommuniziert die Webseite > via AJAX http GET mit der o.g. App. Lg Jott
JO T. schrieb: > Hi, ich häng mich mal mit rein, denn Webseiten mit PHP und > Javascript ja, aber Zugriff auf Hardware? >>Geist schrieb: >> Auf dem Raspi läuft eine App, > Diese möchte ich auch, wie nennt sich die App, > läuft das unter Rapsbian? >>diese enthält die IO Ansteuerung und ebenfalls eine >> Socketverbindung. Über diese Sockenverbindung kommuniziert die Webseite >> via AJAX http GET mit der o.g. App. > Lg Jott Ich habe es für mich umgesetzt und nicht für die breite Masse geschrieben. Es ist keine App in dem Sinne. Sondern eine Application die ich mit Geany IDE und gcc compliler erstellt habe. Meine Idee war damals, dass man evtl. an diese executable via http GET unterschiedlichsten Datenvolgen übergeben kann und somit all möglichen Funksteckdosen abdecken kann. Theoretisch ist es mit ein Paar kleinen Änderungen möglich.
Ich habe an dieser Stelle zwar keinen Raspi im Einsatz, aber das geht schon mit PHP! Ich würde es vielleicht nicht grade in das Internet "entlassen"; intern jedoch... Ich "steuere" meinen Garten damit: http://r-ost.de/atmel/briefkasten/sg_2.png Die grünen Punkte sind betriebsbereite Lampen, die schwarzen Punkte betriebsbereite Versenk-Regner. Die Punkte kann man einzeln "antouchen", um das jeweilige Gerät zu aktiviweren. Wenn Punkt rot: Fehler aufgetreten... Wenn Lampe gelb oder Sprenger blau, dann aktiv... Dazu verwende ich die PHP GD-Bibliothek. Geschrieben habe ich alles mit dem Editor Kate. MfG Elux
OK, wir haben wieder einen anfänger. Ersteinmal: Wieviel willst du selbst machen und hast du schon irgendwelche Vorkenntnisse im Programmieren? Mit Apache und CGI kannst du jede Ausfürbare datei benutzen, um serverseitig ein par Pins zu schalten. PHP ist/war beliebt um serverseitig Webseiten/HTML Code zu generieren, um GPIOs zu steuern sind aber c python oder gar bash besser geeignet. Du musst dich hier auch nicht gross einschränken. PHP und JavaScript sind Programiersprachen. Javascript kann vom Browser cliebtseitig azsgefürt werden, kann aber mit nodejs auch serverseitig genutzt werden. Wordpress und Joomla sind CMS, Content Management System. CMS mag ich nicht besonders, ich denke CMS und DB (datenbank) sind hier etwas übertrieben. C ist nicht gerade die Anfängerfreundlichste sprache, ich empfehle ersteinmal ein Python- oder Bashscript zum Schalten und Abfragen der GPIOs zu erstellen. Um HTML kommt man nicht herum, ust aber auch einfach. Bei html hast du erst den Doctype und dann das "html" Element. Dieses enthält ein "head" und ein "body" Element. Ins head kommen title, meta, link und script tags für den Titel, Seitenmetadaten wie den Author, CSS dateien und JavaScripts. In den "body" kommt der ganze inhalt. Das A und O bei HTML ist, das man eine Baumstruktur hat. Elemente können weitere Elemente enthalten, aber jedes Element kann nur ein Eltern element haben. Einige Elemente wie img oder input können keine unterelemente haben. Diese elemente haben ei Self-closeing tag. Alle andern haben einen öffnenden und einen Schliessenden Tag. Beim Öffnenden/Selfclosing Tag kann man noch Attribute hinzufügen. Wichtig ist, dass alle Zags in der selben reigenfolge Geöffnet und Grschlossen werden.
1 | Öffnender div tag mit attribut class, welches den wert abc hat: |
2 | <div class="abc"> |
3 | Schliessender div tag: |
4 | </div> |
5 | Selfcloseing img tag mit attribut src: |
6 | <img src="path/to/image.png" /> |
CSS ist fürs aussehen. Heutzutage nehmen aber viele einfach das bootstrap framework.
Vielen Dank erstmal !!! Also als Anfänger würde ich mich nicht bezeichen. Es ist ja auch alles schon soweit fertig programmiert. Ich muss quasi nur noch die HMI Schnittstelle realisieren und da es plattformunabhängig sein soll (PC,MAC,iPhone,Android) dachte ich ein Web-Interface ist vielleicht am besten geeignet. Ich wollte nur wissen wie man das grafisch am besten anstellt. @Reiner O.: Das Bild gefällt mir schon ganz gut!!! @Daniel Abrecht: Ich werde mir mal das bootstrap framework anschauen Vielen Dank erstmal!
piUser schrieb: > PC,MAC,iPhone,Android Ich empfehle auch einen blick auf Phonegap und Apache Cordova zu werfen. Damit kann man eine lokale Webseite als iOS/Android/Windowsphone/Ubuntuphone App verpacken. Zum schalten der GPIOs würde ich dann eine Rest-Schnittstelle empfehlen. piUser schrieb: > Es ist ja auch alles schon soweit fertig programmiert. Ich muss quasi > nur noch die HMI Schnittstelle realisieren Ich habe gerade mühe mir vorzustellen, was ohne HMI hier noch gross übrigbleibt.
Vielen Dank! Ich habe ja auch nicht erwähnt dass auf dem Raspberry noch andere Dienste laufen die mit mehreren Arduino's kommunizieren ;)
Ich lese Zustände per Ajax/json aus. Steuerbefehle schreibe ich ebenfalls per Ajax/json in den Raspi. Anfangs hatte ich für beides PHP benutzt, aber der Nachteil war, dass man mit PHP Zustandsänderungen der Raspi-GPIO-Eingänge nicht so gut darstellen kann, weil man zyklisch die Seite neu laden muss. Ajax ist (soweit ich informiert bin) state of the art, wie man so schön sagt.
PHP kann man auch mit AJAX kombinieren. Der limitierende Faktor dazwischen ist eher das HTTP Protokoll - die Programmiersprache spielt dabei nur eine untergeordnete Rolle.
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.