K |
|||
Zeile 34: | Zeile 34: | ||
+ | Dim svr as integer, svl as integer, A0 as integer, A1 as integer | ||
+ | Dim Max0 as integer, Max1 as integer, Min0 as integer, Min1 as integer | ||
+ | Dim I as integer, Impulsbreite as byte | ||
+ | |||
Config Adc = Single , Prescaler = Auto , Reference = Internal | Config Adc = Single , Prescaler = Auto , Reference = Internal | ||
S0 Alias Getadc(0) | S0 Alias Getadc(0) |
Version vom 11. August 2007, 18:21 Uhr
Eine Begrenzungsschleife oder Induktionsschleife wird verwendet um den Arbeitsbereich eines Roboters festzulegen. Üblicherweise wird diese bei Rasenmäherroboter eingesetzt. Die Induktionsschleife wird dabei um die zu mähende Fläche verlegt. Ein Roboter kann auch entlang einer Induktionsschleife zur Ladestation geleitet werden.
Funktionsprinzip:
Als Induktionsschleife wird ein Kabel (Schaltlitze, Lautsprecherkabel) verlegt. Die Schleife entspricht damit einer Spule mit einer Windung. An die Induktionsschleife wird mit einer Frequenz von 5 bis 200 Hz für wenige ms (Impulsbreite) eine Spannung von etwa 15 - 25 V angelegt. Damit wird für kurze Zeit innerhalb der Schleife ein Magnetfeld erzeugt. Im Roboter wird als Detektor eine Spule mit hoher Windungszahl verwenden. Der Anstieg des Magnetfeldes induziert in dieser Spule eine Spannung. Die Polarität gibt darüber Auskunft, ob sich die Spule innerhalb oder ausserhalb der Schleife befindet. Befindet sich die Spule genau über der Schleife wird keine Spannung induziert. Der anschließende Abfall des Magnetfeldes induziert nochmals eine Spannung in der Detektorspule, deren Polarität aber dem ersten Impuls entgegengesetzt ist.
Entscheidend für die Funktion ist somit nicht das statische Magnetfeld. Hall-Sensoren als Detektoren sind damit ungeeignet. Entscheidend sind ein steiler Anstieg und steiler Abfall des Magnetfeldes, da nach dem Induktionsgestzt die Änderung der Magentfeldstärke pro Zeiteinheit für die Höhe der induzierten Spannung entscheidend ist. Der Widerstand der Induktionsschleife sollte deshalb wenige Ohm nicht überschreiten.
Senderschaltung:
Die Ansteuerung des MOSFET T1 ist über beliebige Timer (NE555, Attiny2313) möglich. Wichtig sind ein Kondensator C1 mit hoher Kapazität zur Pufferung der Spannung am Netzgerät, da bei durchgeschalteten MOSFET fast ein Kurzschluss über die Induktionsschleife vorliegt. Eine Freilaufdiode D1 verhindert, nach dem Abschalten der Spannung die Induktion von Spannungsspitzen am MOSFET und dem Netzteil.
Für eine Impulsbreite von z.B. 2 ms und eine Frequenz von 5 Hz muss R4 2 ms auf Vcc (high) und 200 ms auf 0V (low) gesetzt werden.
Empfangsschaltung:
Eine geeignete Detektorspule kann aus einem Relais (z.B. 12 - 24 V, Widerstand etwa 500 Ohm) ausgebaut werden. Der Bügel muss entfernt werden. Die Verstärkung der induzierten Spannung an der Detektorspule erfolgt über einen Operationsverstärker. Die Detektorspule liegt deshalb zwischen den beiden Eingängen des OPV. Ein Eingang liegt über einen Spannungsteiler an 1/2 Vcc. Der OPV kann deshalb mit 0 und 5 V an –Us bzw. +Us betrieben werden. Eine negative Betriebsspannung ist nicht erforderlich. Ohne Kondensator C würde der Spannungsimpuls nur wenige Mikrosekunden andauern. C und L alleine bilden aber einen Schwingkreis, was eine Wechselspannung am Eingang des OPV zur Folge hätte. Um dies zu vermeiden, wird dieser Schwingkreis durch einen parallel geschalteten Widerstand R gedämpft. Über R2 erfolgt eine negative Rückkopplung auf den - Eingang. Wird keine Spannung in L induziert, stellt sich deshalb am Ausgang ebenfalls etwa 1/2 Vcc ein. R2 / Widerstand der Spule bestimmt in etwa den Verstärkungsfaktor. An- und Abschalten der Spannung an der Induktionsschleife erzeugen jeweils eine, weniger als 0,1 ms dauernde, Spannungsänderung (positiver oder negativer Spike) am Ausgang des OPV.
Auswertung des Ausgangssignals vom OPV:
1. Variante: Um die Spikes zu erfassen, ist die Ansteuerung zweier Schmitt-Trigger denkbar, einer um den positiven, ein anderer um den negativen Spike zu detektieren. Über die beiden Potentiometer kann die Empfindlichkeit eingestellt werden (Potentiometer etwa in Mittelstellung). Jeder Schmitt-Trigger geht an einen Interrupt eines Processors. Beide Interrupt werden demzufolge kurz hintereinander, einer beim An-, der andere beim Abschalten der Spannung an der Induktionsschleife ausgelöst. Die Abfolge der Interrupt ( pos - neg oder neg - pos) zeigt an, ob sich die Detektorspule innerhalb oder ausserhalb der Begrenzungsschleife befindet. Der gleichzeitige Betrieb zweier Begrenzungsschleifen erscheint möglich, wenn die Begrenzungsschleifen mit unterschiedlicher Impulsbreite betrieben werden. Der zeitliche Abstand zwischen den beiden Interrupt sollte der Impulsbreite der Sender entsprechen und eine Zuordnung erlauben (nicht erprobt). Auch eine Übertragung einfacher Kommandos an den Robo wäre hierdurch möglich.
2. Variante:
Die Spannung am Ausgang des OP wird über den ADC eines Microprocessors gemessen. Die Spikes müssen hierzu in einer Programmschleife abgepasst werden. Zu Erläuterung hierzu ein BASIC-Programm zur Verarbeitung von 2 Sensoren. Die Frequenz des Senders muss etwas langsamer sein, als das gesamte Programm durchlaufen wird. Das Programm wartet hierdurch in der For- Next Schleife auf den nächsten Spike. Impulsbreite kann ggf. mitgemessen werden.
Dim svr as integer, svl as integer, A0 as integer, A1 as integer Dim Max0 as integer, Max1 as integer, Min0 as integer, Min1 as integer Dim I as integer, Impulsbreite as byte Config Adc = Single , Prescaler = Auto , Reference = Internal S0 Alias Getadc(0) S1 Alias Getadc(1) Do Dein Programm . Begrenzungsschleife loop
Sub Begrenzungsschleife A0 = S0 : A1 = S1 'Ausgangswerte der Sensoren (ohne Impuls) Max0 = A0 + 30 'oberer Grenzwert Sensor1 (Einstellung Max1 = A1 + 30 'oberer Grenzwert Sensor2 der Empfind- Min0 = A0 - 30 'unterer Grenzwert Sensor1 lichkeit der Min1 = A1 - 30 'unterer Grenzwert Sensor2 Sensoren) For I = 1 To 2000 Svr = S0 '1. Sensor wird gemessen If Svr > Max0 Or Svr < Min0 Then 'Impuls ausserhalb Grenzwerte Svr = S0 : Svl = S1 : Exit For 'Sensorwerte bei Impuls End If Svl = S1 'gleiches für 2. Sensor If Svl > Max1 Or Svl < Min1 Then Svr = S0 : Svl = S1 : Exit For End If Next For Impulsbreite = 1 To 15 'optional, misst If S0 > Max0 And Svr < A0 Then Exit For 'Impulsbreite, also If S0 < Min0 And Svr > A0 Then Exit For 'bis entgegengesetzter Next 'Spike auftritt Svr = Svr - A0: Svl = Svl – A1 'Differenzen Impuls - Ausgangswerte 'z.B. positiv innen, negativ aussen if i >= 2000 then Notaus 'kein Impuls erfasst, (Schleife kaputt) End sub
Tips zum Ausprobieren der Schaltung:
Die Funktion des Senders kann getestet werden, indem die Detektorspule direkt mit einem Kopfhörer verbunden wird. Es knattert mit der Freqeunz des Senders. Wird der Kopfhörer mit dem Ausgang des OP verbunden, ist dies entsprechend lauter. Ein analoges Voltmeter am Ausgang des OP zeigt die Impulse durch kurze Ausschläge an. Ein digitales Voltmeter zeigt wegen der geringen Impulsbreite möglicherweise keine Spannungsimpulse an. Zum Ausprobieren kann man für die Schleife von einer 25 m Rolle mit Schaltlitze (z.B. 0,14mm^2) etwa 10 m abrollen. Im Freien und für größere Flächen kann man dickere Lautsprecherkabel verwenden.
Elektromotore und Stomschwankungen in Zuleitungen und Akkus können die Sensoren stören. Bei Motoren ist eine Abschrimung durch Statorbleche möglich. Sehr starke, wechselnde Magnetfelder, z.B. durch brushless Aussenläufer können mit Mu-Metallfolie (Permeabilität 8000) abgeschirmt werden
FAQ: Warum spricht der Sensor auch in der Mitte einer großen Schleife an ?
Nach dem Laplace´schen Induktionsgesetzt hängt die Magnetfeldstärke H in der Mitte einer Schleife folgendermassen vom Schleifenradius R und der Stromstärke I ab: H = I / 2 / R H nimmt damit nur umgekehrt proportional zu R ab, und nicht zu R^2. I läßt sich bei Vergrößerung der Schleife konstant halten, wenn der Widerstand durch ein dickeres Kabel entsprechend gesenkt wird.
Neben einem geraden Leiter hängt die Magnetfeldstärke wie folgt vom Abstand a ab: H = I / 2pi / a. Vergleicht man beide Formeln stellt man fest, dass z.B. die Magnetfeldstärke in der Mitte einer Schleife mit 6 m Durchmesser etwa so groß ist wie in 1 m Abstand von der Schleife. D.h. in den mittleren 2/3 einer Schleife ist das Magentfeld relativ homogen.
Die in diesem Artikel vorgestellten Schaltungen entstammen eigenen Versuchen. Es wird deshalb keinerlei Haftung übernommen.
Andere Konzepte und Schaltungen für eine Begrenzungsschleife werden im Forum unter
[1]
diskutiert. Fragen und Kommentare bitte ebenfalls an diesen Thread richten.