Analoges Signal per USB in PC einlesen unter Visual Studio

OP (Firma: KPF-Zeller) #3796758
Lesenswert?

Hallo Forum!

Wir haben einen Widerstand, der sich durch gewollte Einfluesse von 
unendlich bis ca. 30 kilo-Ohm veraendert.

Welche Bauteile koennen Sie uns empfehlen, um dieses analoge Signal per 
USB in einem Visual-Studio-Programm weiter zu verarbeiten?

Wichtig ist fuer uns vor allem, dass es einen geeigneten Quelltext in 
Visual Basic gibt, sonst sind wir mit unserem Latein schnell am Ende.

Löten und das Erstellen einer eigenen Platine stellt kein Problem dar.
Es sollte halt alles so einfach wie nur moeglich sein.

Die Aufloesung des analogen Signals: 6 Bit genuegen vollkommen.

Ich hoffe, ich bin mit meiner Anfrage hier richtig und freue mich auf 
hilfreiche Antworten.

Vielen Dank!

Rolf Weber
#3796785
Lesenswert?

Das Problem hier ist, dass ein widerstand per se kein analoges signal 
ist. Dafür brauch man eine Spannung. Diese muss bekannt sein um die 
passenden Bauteile zu suchen. Die Auflösung hast du ja genannt, es fehlt 
noch die Spannungsangabe und die Geschwindigkeit.

Das ganze wird dann auf einen kleinen Mikrocontroller wie den attiny 
hinauslaufen und einen virtuellen comport.
Gast #3796789
Lesenswert?

Man müsste erst einmal wissen, welcher maximale Widerstand überhaupt 
noch erfasst werden soll. Und direkt über USB einlesen funktioniert 
natürlich nicht. Man könnte einen kleinen Controller verwenden, der dann 
praktischerweise (über USB) über eine virtuelle serielle Schnittstelle 
angesprochen werden kann. Das geht auch in VB.
Gast #3796861
Lesenswert?

Rolf Weber schrieb:

> Wir haben einen Widerstand, der sich durch gewollte Einfluesse von
> unendlich bis ca. 30 kilo-Ohm veraendert.

Widerstände kann man direkt nicht messen, unendliche schon garnicht. USB 
hin, VS und VB her, das spielt alles erstmal keinerlei Rolle.

Ihr müßt euch zuerst mal ein anwendbares Meßprinzip ausdenken. Oder 
zumindest klarstellen, bis zu welchem höchsten Widerstand gemessen 
werden soll. Alles darüber könnt ihr dann ja gern als "unendlich" 
betrachten.

Auch wenn es natürlich niemals unendlich sein kann, denn unendliche 
Widerstände sind sinnlos, eine Singularität, die es mathematisch nicht 
geben kann und somit natürlich auch nicht in der realen Welt. Unendliche 
Widerstände sind einfach nur: nicht vorhandene Widerstände.

> Welche Bauteile koennen Sie uns empfehlen, um dieses analoge Signal per
> USB in einem Visual-Studio-Programm weiter zu verarbeiten?

Das kann man erst sagen, wenn ihr die Idee der Messung einer nicht 
einmal mathematisch existenten Entität durch was sinnvolles ersetzt. 
Also die Frage beantwortet, welche Obergrenze des Widerstands noch 
erfaßt werden soll.

> Die Aufloesung des analogen Signals: 6 Bit genuegen vollkommen.

Das ist doch Unsinn. Woher wollt ihr wissen, daß 6 Bit zur Abbildung 
eines Bereiches genügen, wenn ihr nicht mal in der Lage seid, diesen 
Bereich zu definieren...

Da kann man doch echt nur mit dem Kopf schütteln...
#3796877
Lesenswert?

Rolf Weber schrieb:
> Die Geschwindigkeit..........damit meinen Sie eine Art von Abtastrate?
> Einmal pro Sekunde den Wert einlesen genuegt vollauf.

Ja, Abtastrate.

Zur Messung des Widerstandes.
Eine einfache Art diesen zu Messen wäre ein Spannungsteiler. Das 
funktioniert wenn der Widerstand einzeln vorliegt, also in keinem 
Stromkreis angeschlossen ist.
Das würde dann so aussehen:

5V - zu messender Widerstand - 100kOhm - Ground

Nun hast du einen einfachen Spannungsteiler, wobei die Spannung über 
jeden Widerstand das gleiche Verhältnis wie beide Widerstandwerte 
zueinander hat. Misst du die Spannung über den 100kOhm Widerstand gilt:

V_mess = 5V * 100kOhm / (R_Mess + 100kOhm)

Dies muss nur nach R_Mess umgestellt werden.

Das kann so funktionieren, muss aber nicht, da der Spannungsteiler 
aufgrund deines hohen Widerstandes sehr hochohmig ist. Eventuell muss 
ein Spannungsfolger (OPV Grundschaltung, ist hier links erklärt) 
nachgeschalten werden mit einem Rail2Rail Operationsverstärker 
(Rail2Rail = er kann Spanungen (fast) bis zur Versorgungsspannung 
ausgeben).

Dann hast du eine messbare Spannung. Diese Spannung muss nun gemessen 
werden, und an den PC übertrage werden. Ich wüsste genau, wie ich das 
machen würde (Attiny und ein seriel2USb Wandler). Ist an sich relativ 
wenig zu programmieren, aber hierfür muss man allerdings AVR flashen 
können (Programmer kostet ca. 20€).
Außerdem muss mit Visual Studio auf den "virtuelen COMPort" zugegriffen 
werden können, was warscheinlich sehr einfach mit der SerialPort-Klasse 
geht, ich haber noch nicht gemacht habe. Es gibt allerdings 
wahrscheinlich auch Kauflösungen, da kenne ich mich aber nicht aus. Eine 
Spannung wie z.B mit dem Spannungsteiler muss trotzdem zum messen 
bereitgestellt werden.

edit: Je nachdem welcher Bereich des Widerstandes interessant ist (30k 
bis unendlich ist ein sehr großer Bereich ^^), kann man auch den 
Widerstand zum Bauen eines Logarithmierers nehmen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren