Forum: Mikrocontroller und Digitale Elektronik Messwerte als HTML mit Grafik speichern


von Pete K. (pete77)


Lesenswert?

Hallo,

ich wollte einen Webserver mit Datalogger bauen, d.h. die gemessenen 
Werte sollen grafisch (XY-Diagramm) auf einer HTML-Seite ausgegeben 
werden.

Die Daten liegen als CSV-Datei (im Speicher) bzw. auf SD-Karte vor. Aber 
wie macht man mit einem AVR daraus eine HTML-Seite mit Grafik?

Hat das schon jemand mal gemacht? ...... bestimmt :-)

VG,
Pete

von gb (Gast)


Lesenswert?

html5 und canvas wäre eine elegante Methode.

von Foobar (Gast)


Lesenswert?


von Christian B. (casandro)


Lesenswert?

OK, auf die Gefahr hin, dass Du nur ein Troll bist, der seine Arbeit auf 
alle abwälzen will...

Das ist nicht ganz trivial. Willst Du wirklich ein Bitmap-Bild ausgeben, 
so müsstest du für jeden Pixel bestimmen, ob er dunkel oder hell ist.
Idealerweise baust Du Dir hierbei 2 Arrays in denen Du den höchsten und 
den niedrigsten Wert für jede Pixelspalte speicherst.

Eine andere Möglichkeit wäre es eine SVG-Graphik zu generieren. Da gibt 
es ein Polygon oder Polyline Objekt welches einen "Pfad" hat. Du 
müsstest dann den Pfad generieren. Das sollte deutlich einfacher sein 
als ein Bitmap zu erstellen, funktioniert aber mit dem Windows-Browser 
nicht.
Der große Vorteil ist, dass Du die Werte nur skalieren musst.

von gb (Gast)


Lesenswert?

>http://www.jqplot.com/
Vergiss, was ich gesagt habe.
Noch einfacher als mit jqplot kann ich's mir nicht vorstellen.

von holger (Gast)


Lesenswert?


von Login vergessen (Gast)


Lesenswert?

Eigentlich brauchst Du ja nur ein Bildchen "lang ziehen".

Man lege sich ein Bildchen, mit einer Größe von 1 mal 1 Pixel, an.

Daraus kann man dann Balken mit den HTML-Parametern "width" und "height" 
machen.

von otto (Gast)


Lesenswert?

Mit Linux kein Problem. Mit gnuplot eine Grafik bauen und auf der 
Webseite anzeigen, gnuplot gibt es für Linux (und auch Windows) und ist 
scriptgesteuert, ist also easy einzubinden.

Mit einem AVR und einem Mini-Webserver ??? Das dürfte schwierig werden.

Ggf. eines der zahlreichen ARM-Boards nehmen, für die es Linux gibt.

von Barcharter (Gast)


Lesenswert?

Login vergessen schrieb:
> Eigentlich brauchst Du ja nur ein Bildchen "lang ziehen".
>
> Man lege sich ein Bildchen, mit einer Größe von 1 mal 1 Pixel, an.
>
> Daraus kann man dann Balken mit den HTML-Parametern "width" und "height"
> machen.

...das in einer Tabelle/Zelle und schon hat man Charts. Ich habe im 
Hintergrund eine XSLT- Transformation die das generiert. Funzt ganz 
gut..

von Barcharter (Gast)


Lesenswert?


von Pete K. (pete77)


Lesenswert?

Danke für die vielen Anregungen. Ich werde es mal mit jqplot versuchen, 
das scheint ja relativ einfach zu sein :-)

von Verwirrter Anfänger (Gast)


Lesenswert?

Ich würde einfach auch mal SVG in den Ring werfen, das skaliert so 
schön...

von R. B. (rabis)


Lesenswert?


von Pete K. (pete77)


Lesenswert?

Kann mir jemand mal eine komplette HTML-Seite zeigen, die einen jqplot 
Graphen zeichnet? Ich bekomme es nicht hin und die Beispiele bei jqplot 
zeigen nie eine komplette Webseite.

von heinzhorst (Gast)


Lesenswert?

google charts

von Sebastian H. (sh______)


Lesenswert?

gb schrieb:
> html5 und canvas wäre eine elegante Methode.

Würde ich auch empfehlen, das ganze als JavaScript auf den Client 
auszulagern. Dann hat der µC mehr Freizeit :)

von Pete K. (pete77)


Lesenswert?

Hallo heinzhorst,

vielen Dank für den Hinweis. Damit ist es wirklich einfacher :-)

Pete

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
Noch kein Account? Hier anmelden.