Forum: Mikrocontroller und Digitale Elektronik Kurvenschreiber


von Christian H. (netzwanze) Benutzerseite


Lesenswert?

Ich möchte die Signale/Kurven eines 3D-Beschleunigungssensors (Schock) 
aufzeichen und als Kurve darstellen. Die Signale kommen entweder analog 
oder digital über I2C.

Jetzt suche ich eine Java/C/C++-Quelle (Windows oder Linux) die 
ähnliches macht und relativ leicht zu modifizieren ist.

Also:

- mehr als zwei Kanäle
- durchlaufender Echtzeit-Graph (Kurvenschreiber) mit Start/Stop
- durchscrollen von aufgezeichneten Werten
- Zoomfunktion
- gerne 3D-Anzeige der Werte in einem Würfel

Ich suche kein fertiges Programm, sondern einen guten Grundstock auf dem 
ich aufbauen kann ohne das Rad komplett neu zu erfinden.

Das ganze ist ein Privatprojekt und wird, wenn es funktioniert, als 
OpenSource zur Verfügung gestellt.

Gedacht ist das ganze, um den Handschock beim Abschuss eines 
Bogens/Pistole/Gewehr, etc. aufzunehmen und grafisch darzustellen. Im 
Endeffekt soll daraus eine Bewertung abgeleitet werden. Zunächst 
benötige ich dazu einen Datensammler mit grafischer Kontrollfunktion.

Wenn jemand ein passendes Projekt kennt, bitte her damit.
(parallel suche ich natürlich auch selber)

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Ich habe sowas in der Art mal für meinen RS232 Logger in Java 
geschrieben, prinzipiell ist das garnicht soooo schwer, kommt drauf an 
wieviel "Kompfort" du dir wünscht, in der Baisvariante hast du halt 
einfach ein "Blatt" auf welches du Punkte, Linien etc. setzten kannst, 
die Restliche Logik (wie scrollen, Start/Stop) müßtest du halt selbst 
machen ist aber natürlich auch kein Hexenwerk.

von Klaus W. (mfgkw)


Lesenswert?

Zum Darstellen meine Empfehlung:
C++ + Qt + qwt

von ado (Gast)


Lesenswert?

Die Plotlab Bibliothek von mitov wäre sehr interessant.

Kannst du privat verwenden. Ich weiß nicht wie weit man diese

für openSource Projeke verwenden kann.

http://www.mitov.com/html/plotlab.html


Ansonsten kann man so etwas sehr schön in Labview (Studentenversion) 
realisieren, aber du willst das ja lieber in C oder Java machen.

von Hans M. (hansilein)


Lesenswert?

Wäre das vielleicht ein Anfang?
http://www.jfree.org/jfreechart/samples.html

von F. V. (coors)


Lesenswert?

In Java habe ich gute Erfahrungen mit JFreeChart gemacht 
(http://www.jfree.org/jfreechart/). Einfache Punkt- oder Liniengraphen 
lassen sich da prima mit darstellen mit beliebig vielen Kanaelen. 
Allerdings kann man keine 3D Box machen, falls ich mich nicht irre.

Alles andere ist moeglich, allerdings musst du bei "Echtzeit" etwas 
aufpassen. Fuer nen Schreiber von Daten habe ich das mal versucht, 
allerdings war das Problem, dass der komplette Graph fuer jeden Frame 
komplett neu gemacht werden musste. In meinem Fall ging das nicht 
wirklich gut, da es sehr viele Daten waren, so dass ich am ende immer 
nur 2s dargestellt habe und der Graph praktisch mitscrollt. So um die 10 
000 - 100 000 Punkte lassen sich allerdings noch relativ flott 
darstellen, falls dir das reicht.

Ansonsten kannst du beliebig scrollen, zoomen, plots als PNG speichern 
und drucken. Falls du interessiert bist, kann ich spaeter mal nach 
meinem Code suchen.

Felix

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.