PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : AD-Wandler-Output wird durch Motoren stark beeinflusst



simax
30.09.2009, 18:34
hallo zusammen

ich bin gerade an einem asuro-projekt und brauche dringend hilfe.
mein ziel ist es mit passiv-infrarot-sensoren den asuro dazu zu bringen einen Menschen zu verfolgen (eigentlich das selbe wie Snake Vision, nur selbst gebaut). die zwei PIR-sensoren sind anstelle der linienfolgesensoren eingebaut. die sensoren sind also an den AD-Wandler pins angeschlossen.
Eigentlich funktioniert alles sehr schön, wenn ich die Front-LED damit steuere. Leider funktioniert alles überhaupt nicht mehr so wie es soll, wenn ich die motoren dazu nehme.
ich vermute, dass das einschalten der motoren die spannung beeinflussen und dadurch die sensoren nicht mehr so funktionieren wie sie sollen. Oder vielleicht ist der microcontroller überfodert.

Falls irgendjemand das gleiche problem schon mal hatte oder einen lösungsansatz weiss, wäre ich sehr dankbar für Hilfe.

avion23
30.09.2009, 19:31
Tiefpass digital?

m.a.r.v.i.n
30.09.2009, 20:17
Hallo simax,

ich weiß nicht, ob das mit dem PIR sensor funktionieren kann. Beim SnakeVision werden ja Pyrometer als Sensoren eingesetzt, keine PIRs. Beide beruhen zwar auf dem pyroelektrischen Effekt aber mit einem kleinen Unterschied:
Während der PIR auf Änderungen der Temparatur reagiert (Bewegungsmelder), reagiert das Pyrometer auf die absolute statische Temperatur(-Strahlung) des Objektes (Berührungslose Temperaturmessung) .

Sprich, wenn sich der Roboter bewegt, dann meldet er wohl immer eine Temperatur Änderung, egal ob sich das Objekt selbst sich bewegt oder nicht.
Das Pyrometer dagegen gibt immer die Temparatur des Objektes zurück, egal ob sich der Roboter, das Objet oder beide bewegen.

simax
30.09.2009, 20:40
Ach so, das erklärt schon einiges. leider ist die zeit momentan zu knapp für den kauf eines pyrometers. ich muss mir woll etwas zusammen basteln, softwar- und hardwaretechnisch.
vielleicht kann ich das problem mit den spannungsschwankungen durch eine zusätzliche stromversorgung der motoren beheben, so das wenigstens das signal der sensoren wieder richtig ausgegeben wird. den rest muss ich dann wahrscheinlich mit einem geeigneten programm bewerkstelligen.
vielen dank für deinen tipp. beim nächsten projekt werde ich ihn sicher berücksichtigen. :cheesy:

Arexx-Henk
30.09.2009, 22:25
Hallo,

Mann konnte vielleicht volgendes machen.
1. Die PIR spannung messen
2. Die Batteriespannung messen
3. Die PIR messung mit die Batterie messung korrigieren.

Die messung brauchen nur etwa 14us pro stuck.

Die Batteriespannung kan mann messen wenn mann statt die externe spannung als referenz die internen (ich glaub 2,56V) als referenz selektiert.

Ich hab mahl so etwas gemacht und es funktionierte ganz gut.

Mann konnte auch die Batterie spannung zweimal messen: vorher und nachher den PIR messung und die zwei werte ausmitteln.


Gruss,

Arexx-Henk

Besserwessi
30.09.2009, 23:24
Die Spannungen der PIR Sensoren ist wie bei den Thermopiles ziehmlich klein. Man ist damit ziehmlich empfindlich auf Störungen. Die Störungen werden wahrscheinlich im wesentlichen Wechselsignale sein, denn eine Induktive oder kapazitive Kopplung gibt keine Gleichspannung. Man sollte also wenigstens versuchen die Störungen klein zuhalten.
Dazu:
1) einen analogen Tiefpaß Filter vor den AD Eingang, bzw. im Verstärker. Frequenzen die zu hoch sind das der AD wandler sie richtig erfaßt sollten unterdrückt werden (Antialiasing Filter).

2) Den AD-wandler mehrfach aus lesen und mitteln. Oft ist als Zeit zum Mitteln ein vielfaches von 20 ms sinnvoll, um 50Hz,100Hz usw. zu unterdrücken.


Störungen über die Versorgungsspannung sollten weniger als längerer Spannungseinbruch, sondern mehr in Form einer überlagerten Gleichspannung aufteten. Wenn es gar nicht anders geht, halt nur messen, wenn der Motor steht.

Eine Korrektur anhand der Batteriespannung ist kaum möglich, denn in erster Näherung ist das Signal unabhängig von der Versorgungsspannung.