Forum: Mikrocontroller und Digitale Elektronik Problem mit Servo und A/D Wandler an einem µC


von Max Ritter (Gast)


Lesenswert?

Hallo zusammen,
ich habe folgendes Problem bei dem ich eure Hilfe bräuchte:
An einem Mikrocontroller habe ich einen A/D Wandler nach folgender 
Schaltung angeschlossen: 
http://interface.khm.de/wp-content/uploads/2009/01/ltc2400_3v_sch.png
An diesem hängt ein Infrarotthermometer, das wiederum auf einem 
Dreh/Schwenkneiger bestehend aus zwei Servomotoren befestigt ist. Diese 
beiden Servomotoren werden ebenfalls vom gleichen Mikrocontroller 
gesteuert. Als Stromquelle verwende ich einen 12V Netzadapter, die 
Temperaturwerte des Infrarotthermometers werden über USB an den PC 
übertragen.
Wenn ich nun jedoch die Servomotoren laufen lasse und gleichzeitig von 
den einzelnen Stellpositionen die Temperaturdaten auslesen will, 
schwanken diese wie verrückt... Ich bin Schüler und kenne mich deshalb 
mit der Schaltungstechnik nicht wirklich aus, deshalb weiss ich ehrlich 
gesagt auch nicht an was das liegen könnte. Schwankt durch die Servos 
der ganze Stromkreis und damit auch die Referenzspannung des A/D 
Wandlers ?
Wenn das der Fall wäre könnte ich die Servomotoren an einen extra 
Lipo-Akku anschließen, nur wie schalte ich dann deren Signal-Pin ? Die 
bd. Stromkreise müssten ja irgendwie galvanisch getrennt werden, aber 
ich kenne da nur Relais Schalter und die sind ja wahrscheinlich zu 
langsam/ungenau um damit im Millisekunden-Bereich zu schalten...
Schonmal danke für eure Hilfe !

von Karl H. (kbuchegg)


Lesenswert?

Max Ritter schrieb:


> Dreh/Schwenkneiger bestehend aus zwei Servomotoren befestigt ist.

Sind das normale Servos?
Also solche wie sie auch im Modellbaubereich verwendet werden?
Pulsbreite 1-2ms definiert die Position

> Wenn ich nun jedoch die Servomotoren laufen lasse und gleichzeitig von
> den einzelnen Stellpositionen die Temperaturdaten auslesen will,
> schwanken diese wie verrückt...

Wer schwankt?
Der Arm, respektive die Servos oder die Messwerte?

> gesagt auch nicht an was das liegen könnte. Schwankt durch die Servos
> der ganze Stromkreis und damit auch die Referenzspannung des A/D
> Wandlers ?

Wär möglich

> Wenn das der Fall wäre könnte ich die Servomotoren an einen extra
> Lipo-Akku anschließen, nur wie schalte ich dann deren Signal-Pin ?

Ganz normal.

> Die
> bd. Stromkreise müssten ja irgendwie galvanisch getrennt werden,

aber die Massen müssen miteinander verbunden werden.
Gleiche Massen -> gleiches Bezugspotential -> Das Steuersignal kommt 
sauber durch.


Das naheliegenste wäre allerdings, dass du einen Programmierfehler hast 
:-)

von Karl H. (kbuchegg)


Lesenswert?

Ähm.
Sehe gerade dass du als Referenzspannung für deinen ADC die 
Eingangsspannung des SPannungsreglers benutzt.

> Als Stromquelle verwende ich einen 12V Netzadapter,

Was ist das für ein Netzadapter?

Dessen Ausgangsspannung direkt als Referenzspannung zu benutzen ist .... 
ein wenig gewagt. Da bekommt das Wort 'Referenz' gleich eine ganz andere 
Bedeutung.

von Max Ritter (Gast)


Lesenswert?

> Sind das normale Servos?
> Also solche wie sie auch im Modellbaubereich verwendet werden?
> Pulsbreite 1-2ms definiert die Position

Sind ganz normale Servos, zweimal der Hitec HS-422

> Wer schwankt?
> Der Arm, respektive die Servos oder die Messwerte?

Die Messwerte schwanken, und zwar wie verrückt. Wenn die Servos nicht 
angeschlossen sind ist die Genaugkeit bei +-0.5°C aber mit Servos geht 
gar nichts mehr außer sinnlose Werte die rauskommen.

> aber die Massen müssen miteinander verbunden werden.
> Gleiche Massen -> gleiches Bezugspotential -> Das Steuersignal kommt
> sauber durch.

Ich will eben vermeiden das die Massen miteinander verbunden werden, 
weil dann können sich ja die Servomotoren und die Messwerte nicht mehr 
gegenseitig beeinflussen. Der A/D Wandler Schaltkreis bekäme dann seinen 
Strom vom USB Port und die Servomotoren ihren vom Lipo. Dazu bräuchte 
ich aber eine "Art Relais Schalter", der im hochfrequenten Bereich 
schaltet.

> Was ist das für ein Netzadapter?
>
> Dessen Ausgangsspannung direkt als Referenzspannung zu benutzen ist ....
> ein wenig gewagt. Da bekommt das Wort 'Referenz' gleich eine ganz andere
> Bedeutung.

Ich verwende als Mikrocontroller einen Arduino (www.arduino.cc), an den 
man einen Netzdadapter anschließen kann. Der Arduino hat u.a. einen Pin 
wo 5V rauskommen und da habe ich den LP2950-3 angeschlossen.

Einen Programmfehler würde ich jetzt einfach mal ausschließen, weil 
sobald ich die Servomotoren abstecke der A/D Wandler super funktioniert 
und die Servomotoren ja auch ihren Zweck erledigen nur dabei irgendwie 
den A/D Schaltkreis beeinflussen...

von Ronald S. (mline)


Lesenswert?

Könnte sein das dieses Servo zuviel Strom zieht.

Auf jeden Fall eine gute Idee ist es dem Servo eine eigene 
Spannungsquelle zu geben. Dazu dann GND mit dem Arduino verbinden.
Ausserdem habe ich die Erfahrung gemacht, dass diese 12V Netzteile alle 
eine sehr unsaubere Spannung hergeben. Da bringt die 0815 Glättung auf 
dem Arduino auch nicht mehr viel. Also am besten eine gut stabilisierte 
Quelle verwenden.
Danach dürfte nichts mehr schwanken.

von RainerK (Gast)


Lesenswert?

Karl heinz Buchegger schrieb:
> Sehe gerade dass du als Referenzspannung für deinen ADC die
> Eingangsspannung des SPannungsreglers benutzt.

Ich sehe allerdings, dass Du das nicht richtig siehst.
Nicht immer ist links der Eingang und rechts der Ausgang eines 
Spannungsregler-IC's ;-)
Das ist hier beim LP2950-3 auch nicht so. Die Beschriftung ist IMHO 
eindeutig und außerdem erhält er die bereits stabilisierten 5V vom 
ARDUINO. Max. 450mV dropout sind bei 5V Eingang mehr als ausreichend. 
Damit sollte die 3V-Referenz ausreichend stabil sein.

Die Ursache für die schwankenden Messwerte gibt's mehrere,
z.B. ungünstige Masseverbindungen; d.h. an verschiedenen Stellen 
verzweigt und kein gemeinsamer Punkt dafür.
Die Servomotoren können evtl. das in unmittelbarer Nähe befindliche 
Thermometer stören und/oder die Anschlussdrähte der Servos können die 
Verbindung zwischen Thermometer und Messeingang des AD-Wandlers 
beeinflussen.

Es grüßt RainerK

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.