Analogwert visualisieren

Hallo!

Ich bin im Besitz des USB Experimentierboards von Velleman, dieses besitzt wiederum zwei analoge Eingänge, die man mit einem Poti verstellen kann.

Die Befehle einen Analogwert auszulesen und den erforderlichen Treiber für die Kommunikation zwischen Board und Rechner habe ich.

Gibt es eine Möglichkeit ein Kurvenprogramm zu schreiben (wenn ich das Poti hochdrehe, dann soll der Graph ansteigen und umgekehrt)?

Quasi ein Statisch x/y Plotter!

Vielen Dank für´s Lesen und ich hoffe ihr hatte alle ein frohes Fest!

Hallo,

Ich bin im Besitz des USB Experimentierboards von Velleman,
dieses besitzt wiederum zwei analoge Eingänge, die man mit
einem Poti verstellen kann.

Die Befehle einen Analogwert auszulesen und den erforderlichen
Treiber für die Kommunikation zwischen Board und Rechner habe
ich.

Gibt es eine Möglichkeit ein Kurvenprogramm zu schreiben (wenn
ich das Poti hochdrehe, dann soll der Graph ansteigen und
umgekehrt)?

Quasi ein Statisch x/y Plotter!

wenn an das Programm, das Du schreiben möchtest ein Wert zurückgegeben werden kann und die Programmiersprache die Möglichkeit dazu bietet, geht das natürlich.

Womit möchtest Du das tun? Und weißt Du, wie man damit den Treiber verwendet? Wenn es z.B. um VB6 gehen würde, Du zum Auslesen eine .dll hast und weißt, wie man die deklarieren muss, ist das einfach.
Willst Du aber VBS verwenden, wird das nichts.

Gruß Rainer

Hallo Rainer!

Ich verwende Visual Basic 6.0 Professional und den Treiber K8055.dll für das Velleman USB-Board.
Die Befehle bzw. Anweisungen um das Board anzusteuern bzw. Auszulesen habe ich in Form einer PDF Datei.

Mein Problem ist, wie bringe ich so ein Diagramm das den Aktualwert dynamisch, in Form einer Linie, anzeigt in eine VB-Userform?

Ich weiss auch nicht unter welchem Begriff man googel müsste, X/Y Schreiber oder Plotter brachte nicht die gewünschten Ergebnisse. Analogwert visualisieren war auch nicht der Bringer. :frowning:

Man findet wahrscheinlich eine ganze Menge im I-Net, man muss halt nur wissen wonach man sucht.

Gruß Bernd!

Hallo,

Ich verwende Visual Basic 6.0 Professional und den Treiber
K8055.dll für das Velleman USB-Board.
Die Befehle bzw. Anweisungen um das Board anzusteuern bzw.
Auszulesen habe ich in Form einer PDF Datei.

wunderbar, das sind die Informationen, die gefehlt haben.

Ich habe mal etwas funktionierendes getippt, nur so als Vorschlag, wie so etwas aussehen könnte. Ich denke, das wird Dir als Basis für eine eigene Entwicklung reichen.

Alles klar?

Gruß Rainer

Private Declare Sub CopyMemory Lib "kernel32" \_
 Alias "RtlMoveMemory" (pDst As Any, pSrc As Any, \_
 ByVal ByteLen As Long)

Dim pts() As Integer

Private Sub Form\_Load()
 Picture1.AutoRedraw = True
 Picture1.ScaleMode = vbPixels
 ReDim pts(Picture1.ScaleWidth)
 Timer1.Interval = 100
 Timer1.Enabled = True
End Sub

Private Sub Timer1\_Timer()
 Dim i As Integer
 Picture1.Cls

 'hier musst Du Deinen Wert holen, ich simuliere
 'für das Beispiel einen
 '\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*
 Static Wert As Integer, R As Integer
 R = Int(Rnd(1) \* 3) - 1
 If Wert = 0 Then Wert = Picture1.ScaleWidth / 2
 Wert = Wert + R
 If Wert Picture1.ScaleHeight Then Wert = Picture1.ScaleHeight
 '\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

 pts(UBound(pts)) = Wert
 CopyMemory pts(0), pts(1), UBound(pts) \* 2

 For i = 0 To UBound(pts) - 1
 Picture1.PSet (i, pts(i))
 Next
 Picture1.Refresh
End Sub

Hallo und vielen Dank Rainer! :smile:

Ich werde deinen Lösungsansatz so schnell wie mir möglich ausprobieren und Rückmeldung erstatten!

Gruß Bernd