ArduMower: Perimeterschleife: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
Zeile 16: | Zeile 16: | ||
! width="10%" | Anforderungs-Titel | ! width="10%" | Anforderungs-Titel | ||
! width="10%" | Beschreibung der Spezifikation | ! width="10%" | Beschreibung der Spezifikation | ||
! width="10%" | | ! width="10%" | Teilaufgaben | ||
|- | |- | ||
|0080 | |0080 |
Version vom 25. Januar 2018, 11:47 Uhr
Autoren: Phillip Blunck, Marius Schaffer
Betreuer: Prof. Schneider, Prof. Göbel
Aufgabe
Integration des Leitdrahtes und des Leitdrahtempfängers
Anforderung
Spezifikations-ID | Anforderungs-ID | Anforderungs-Titel | Beschreibung der Spezifikation | Teilaufgaben |
---|---|---|---|---|
0080 | REQ10.2200 | Leitdraht | Für die Ortung und Navigation kann eine Leitdrahtlösung verwendet werden. |
- Senderbox und Empfänger in Betrieb nehmen - Komponenten Zusammenbringung und Test - Integration des Senders und Empfängers - Erfassen der Signale innerhalb und ausßerhalb des Leitdrahtes - Softwaresimulation in Matlab - Softwareumsetzung in Matlab/Simulink - Reparatur und erneute Verlegung der Perimeterschleife - Matched Filter entwickeln in Matlab/Simulink |
Verarbeitung des Signals am Empfänger
Einleitung
Eine Perimeterschleife ist wie ein virtueller Zaun, der den Roboter stoppt, sobald er sich außerhalb der Schleife befindet. Man installiert die Perimterschleife am Rand eines zu mähenden Feldes und sendet mit einem Sender ein erzeugtes Signal hindurch, welches wiederum von dem Empfänger am Ardumower erkannt wird. Umso näher der Roboter der Perimeterschleife kommt, umso kleiner ist die Entfernung zwischen der Perimeterschleife und dem Empfänger. Folglich ist die Signalstärke umso größer, wenn sich der ArduMower nah an der Perimeterschleife befindet. Bei überschreiten der Perimeterschleife ändert sich die Polarität des Signals. Ist der Ardumower innerhalb der Perimterschleife empfängt er ein positives Signal und ist der Ardumower außerhalb der Perimeterschleife, so ist das Signal negativ.
Verwendete Bauteile
Funktionsweise
Sender mit Perimeterschleife
Allgemein besteht der Aufbau der Perimeterschleife aus dem Sender, der direkt mit der eigentlichen Perimeterschleife verbunden ist und der Perimeterschleife.
1. Der Sender erzeugt ein Ausgangssignal mithilfe eines Arduino Nano(mit 3kHz)
2. Das Signal wird mithilfe eines Motortreibers verstärkt und am Ausgang mit der Perimeterschleife verbunden
Empfänger
Als Gegenstück zum Senderaufbau ist ein Empfänger an dem Ardumower untergebracht. Der Sender funktioniert nach einem bestimmten Prinzip:
1. Eine Spule empfängt das Signal
2. Das empfangene Signal wird mithilfe eines Operationsverstärkers verstärkt
3. Der Arduino wandelt das Singal mithilfe des A/D Wandlers in ein digitales Signal
4. Das digitale Signal wird mit einem Digitalfilter gefiltert
5. Das Matched-Filter gibt den entsprechenden Wert aus, also ob sich Ardumower innerhalb oder außerhalb befindet
Das Ausgangssignal wird durch das Umgebungsrauschen so gestört, sodass es nur noch sehr schlecht interpretiert werden kann. Aus diesem Grund sendet der Sender das ausgewählte digitale Signal, welches oben in der Abbildung 1 zu sehen ist. Diese Signal wird mit dem Umgebungsrauschen überlagert und muss nun gefiltert werden. Dies wird mit dem Matched-Filter gemacht. Nach Anwenden des Matched-Filter erhält man ein Signal, was entweder Pieks ins Positive oder Negative zur Folge hat. Anhand dieses Ergebnisses lässt sich einfach bestimmen, ob sich der Ardumower innerhalb oder außerhalb der Perimeterschleife befindet.
Projektdurchführung / Versuchsaufbau
Zur Inbetriebenahme der Perimeterschleife wurde ein Versuchsaufbau aufgestellt. In der Abbildung 2 ist der Testaufbau zu sehen. Als Ersatz für den Akku wird ein Netzgerät verwendet, welches eine Spannung von 24V an das Sendermodul liefert. Am Anschluss an die 24V Spannung befindet sich das Sendermodul (Abb.1). Anschließend wird mithilfe eines DC-DC Spannungswandlers die Spannung von 24V auf rund 10V umgewandelt. Ein Arduino Nano erzeugt dann ein festgelegtes Signal, welches von in der Abbildung 3 zu sehen ist. Zuletzt wird das erzeugte Signal mithilfe eines Motortreibers verstärkt und über den Ausgang an die Perimeterschleife weitergegeben.
Der Empfänger wird im Ardumower mit dem Arduino an der Hauptplatine betrieben. In unserem Testaufbau dient ein Arduino Mega als Spannungsquelle für den Empfänger und auf dem Oszilloskop ist das empfangene Signal zu erkennen. Das Signal ist jedoch noch ungefiltert und muss noch mit dem Matched-Filter gefiltert werden. Unter einem Matched-Filter oder auch Optimalfilter versteht man in der digitalen Signalverarbeitung einen Filter, der das Signal-Rausch Verhältnis optimiert
-
Abb.2: Versuchsaufbau zur Perimeterschleife
-
Abb.3: Sendermodul
Umsetzung und Erklärung des Matched-Filters
Meilensteine
Erledigt
- Erstinbetriebnahme des Senders und Empfängers
- Test mit 13,3 Ohm und 10 Ohm Widerständen
- Sichtprüfung der Perimeterschleife
- Verarbeitung der Perimeterdaten
- Softwareverarbeitungsplan
- Matlab Simulation
- Software Umsetzung mit Simulink
- Perimeterschleife reparieren
- Look-Up Table für die Mähumgebung angepasst
Ausstehend
+ Perimeterschleife neu verlegen
+ Fehlerbehebung
Bewertung des Fortschritts
Meilenstein 2
Die zum Meilenstein zu erreichenden Punkte wurden im Projektrahmen umgesetzt. Nur die Neuverlegung der Perimeterschleife war für den Meilenstein 2 nicht vorgesehen. Somit lässt sich sagen, dass 85% des Meilensteins 2 erledigt wurden. Bis zum Meilenstein 3 sollen die ausstehenden Punkte der Reihe nach erledigt werden. Zuerst wird die Perimeterschleife repariert und neu verlegt und anschließend wird softwareseitig die Signalverarbeitung mithilfe von Matlab umgesetzt.
Meilensein 3
Die zum Meilenstein zu erreichenden Punkte wurden im Projektrahmen umgesetzt. Lediglich ist die Neuverlegung der Schleife nicht umgesetzt worden, da sie für Testzwecke noch verwendet werden muss. Somit lässt sich sagen, dass 90% des Meilensteins 3 erledigt wurden. Es ist möglich geworden anhand eines Matched-Filters die Position des Ardumowers in Bezug auf die Perimeterschleife zu identifizieren. Zusätzlich wird mit einer Look-Up Table auf den Abstand zu Perimeterschleife geschlossen. Bis zum Meilenstein 4 wird die gesamte Perimeterschleife auf der zu mähenden Rasenfläche verlegt sein.
Software
Das Signal, welches am Empfänger erkannt wird, soll mithilfe eines Matched-Filters gefiltert werden und anschließend interpretiert werden. Hierzu wird ein bestimmter Schwellwert ins Positive und ins negative festgelegt. Wird dieser Wert überschritten, sendet das Programm an die Fahrstrategie, ob sich der ArduMower innerhalb oder außerhalb der Perimeterschleife befindet. Diese Software soll mithilfe von Matlab/Simulink umgesetzt werden. Die Software kann in dem Artikel Matched-Filter eingesehen werden.
Zusammenfassung
Meilenstein 2
Zusammenfassend lässt sich sagen, dass bei der Signalverarbeitung der Perimeterschleife einige Schwierigkeiten auftraten, die jedoch im nächsten Semester behoben werden können. Anhand dieses Themas werden die Grundlagen der Elektrotechnik, der Informatik und der digitalen Signalverarbeitung erweitert.
Meilenstein 3
Das Problem der Signalverarbeitung der Perimeterschleife konnte gelöst werden, wodurch der Ardumower die Begrenzung des Mähfeldes lokaliseren und anhand dieser seine Mähstrategie umsetzen kann. Die Erstellung eines Matched-Filters mit dem S-function Builder Blocks bei Simulink erweist sich nach einer angemessen Einarbeitungszeit als einfach umzusetzen. Anhand der Weiterverarbeotung werden die Grundlagen der Elektrotechnik, der Informatik und der digitalen Signalverarbeitung erweitert.
→ zurück zum Hauptartikel: Projekt ArduMower