Der Martin: Dynamische Webseiten + Embedded Webserver

Beitrag lesen

Hallo Stefanie,

Bei meiner Diplomarbeit habe ich einen Atmega128 Microcontroller, der Sensordaten empfängt (einen pro Minute von ca. 6 verschiedenen Sensoren).

Also einen kompletten Mini-Webserver auf dem µC? Ich glaube, ich hab mal mit einem ähnlichen System experimentiert. Das war allerdings kein ATMega-Prozessor, sondern nur ein "kleiner" 8051-Clone, kann mich im Augenblick nicht an die Typenbezeichnung erinnern.

Ich möchte den zeitlichen Verlauf dieser Werte auf einer Webseite darstellen, der sich automatisch aktuallisieren soll. Bis jetzt habe ich ein kleines Betriebssystem mit einem Webserver.

In diesem Absatz stecken mehrere Informationen, die teilweise neue Fragen aufwerfen.
Zeitlicher Verlauf: In welcher Form? Als fortlaufende Wertetabelle? Das wäre mit vertretbarem Aufwand zu machen. Oder als Diagramm? Dann müsstest du auf dem Mini-Webserver eine Grafik (z.B. GIF) erzeugen - sehr anspruchsvoll.
Automatisch aktualisieren: Das ist eine Frage des verwendeten Browsers. Das HTTP-Protokoll selbst gibt dafür nichts her. Du kannst eventuell eine <meta refresh> Anweisung in der ausgelieferten Webseite unterbringen, dann hast du eine sehr große Chance, dass die Browser das verstehen und entsprechend reagieren.

Mit welcher Programmiersprache kann ich am besten eine solche Webseite programmieren? Was muß ich beachten?

Das Mini-System, das ich damals verwendet habe, war komplett in C (mit kleinen Teilen in Assembler) geschrieben und wurde mit einem passenden Compiler und einigen Beispielprojekten geliefert. Falls du neu in die C-Programmierung einsteigen müsstest, wäre das aber eine stramme Herausforderung.

Wissen Sie, wieviel Speicher (EEPROM, SRAM, Flash) für eine solche Aufgabe in etwa notwendig ist?

Vergiss das "Sie", das ist hier im Forum absolut unüblich (okay, wenn jemand Wert drauf legt)...
Ich schätze mal, dass man mit 32k Festwertspeicher bei so einem µC schon sehr weit kommt. Eventuell noch ein Keks mit 8k RAM, damit wäre das System IMHO schon üppig ausgestattet (ich hab schon Minimalsysteme gesehen, die mit 8k EPROM und 1k RAM auskamen).
Was die Art des Speichers angeht, würde ich EEPROM für den Programmspeicher empfehlen, ein SRAM (evtl. mit einer Lithiumbatterie gepuffert) als Datenspeicher. Falls du größere Datenmengen für längere Zeit speichern musst (Langzeitprotokoll), könnte man über Flash nachdenken. CF-Cards sind relativ einfach anzusteuern, da die CF-Schnittstelle weitgehend mit IDE identisch ist.

Haben Sie ein paar Tipps, mit welchen Tutorials/Büchern man am Besten eine solche Seite programmieren kann?

Leider nein. :(

Kann ich eine solche Seite schon einmal aus dem Computer entwickeln und simulieren?

Sicher. Die Webseite, die der µC später ausliefern soll, kannst du natürlich schon als statische HTML-Seite am PC entwerfen. Aber das ist wahrscheinlich der geringste Aufwand. Viel wichtiger ist, dass du für den µC ein lauffähiges Programm hinbekommst. Falls du da einen Compiler und vor allem einen Emulator hast, ist das eine große Hilfe. Dann kannst du das Zeug tatsächich am PC austesten und debuggen.

Good luck,

Martin