Hallo an alle!
Ich suche nun schon eine Weile nach einer Lösung für folgende Aufgabe:
Ein Sender (Beacon, Blinklicht, egal) sendet konstant/regelmässig ein Signal.
Nun möchte ich per Sensor feststellen in welcher Richtung das Signal genau ist.
Das Ziel möchte ich gerne anpeilen, also den Sensor per Servo oder Schrittmotor auf das Ziel ausrichten bis es in der Mitte ist.
Ich müsste also einen Sensor haben der den Eintrittswinkel feststellt um sich genau auszurichten.
Bis das Signal empfangen wird, kann ich den Sensor wie einen Radar drehen lassen.
Anwendungsziel
Ein Modelschiff (Feuerlöschboot mit Löschmonitor -> Empfänger) löscht ein Feuer auf einem anderen Schiff (Signalgeber)
Ein Roboter stellt fest wo das Ziel ist, dreht sich und fährt hin (dies ist aber nicht mein Thema )
Bei einem Modellschiff ist Sender(Ziel) und Empfänger (Löschboot) also in Bewegung (nicht mit Vollgas ).
Zudem wird die Entfernung sich verändern.
Um Entfernung festzustellen könnte man einen KY-050 Ultraschall-Abstandssensor benutzen.
Aber wie kann ich den Sender anpeilen und den Winkel finden?
Da so ein Modellschiff im Schnitt ca. 1 m lang ist, kann auch vorne und hinten ein Sensor montiert werden um die Peilung exakter zu erhalten.
Externe fest verbaute Sensoren ausserhalb des Schiffes in der Umgebung scheiden aus (ist auf einem See oder im Schwimmbad nicht machbar).
Bisher finde ich "nur" Sensoren die das Signal zwar erhalten aber nicht feststellen aus welchem Winkel.
Per GPS ist bei einem so geringen Abstand zu ungenau.
Hat jemand eine Idee?
DANKE.
Achja...ich bin Anfänger, also wäre es toll wenn Ihr langsam schreibt, damit ich mitkomme
Herzlich Willkommen im besten Arduino Forum der Welt.
Du brauchst einen Empfänger, der ein Signal der Empfangssignalstärke bereitstellt und ein entsprechendes Antennensystem.
Und hier kann ich dir den Tipp geben: Besuche deinen lokalen Amatuerradio Club, um dafür ein paar gute Ideen einzusammeln, da dieses Antennensystem für die Gegebenheit gebaut werden muss.
Da Du nicht darauf angewiesen bist, ein bestimmtes Signal zu senden oder eine gewisse Technologie verwenden zu müssen, würde ich vorschlagen Du sendest 360° ein getaktetes IR Signal mit einer bestimmten Frequenz und als Empfänger nimmst Du einen IR Fernsteuerungs-Empfänger der am Ende eines Rohrs sitzt ( einige mm Durchmesser und ca 5 cm länge). Den Empfänger bewegst Du mit einem Servo sodaß Du einen großen Winkel abskannst. Wenn Du nur 2 von den Dingern in etwas abstand hast kannst Du durch Triangulation auch in etwa den Abstand bestimmen. Das ganze kann auf einen Abstand von 5 bis 10m in heller Sonne funktionieren.
Den gepulsten IR Signal kann mit einem NE555 realisiert werden zB ein 38kHz Signal das zB mit einem TSOP4838 empfangen werden. Andererseits kannst Du auch einen NANO als Sender verwenden und ein bestimmtes Signal senden. So kannst Du verschiedene Sender unterscheiden.
Das gleiche funktioniert teoretisch auch mit Elektromagnetischen Wellen. Da muß aber der Empfänger eine Richtantenne haben. Bei (IR) Licht ist das einfacher zu realisieren.
Wie wäre es mit 5 IR Empfänger
4 im Quadrat angeordnet (auf einer Spitze stehend)
1 gerade aus nach Vorne
mit den 3 vorderen Sensoren ermittelt man die grundsätzliche Richtung nach vorne zum Ziel.
Empfängt ein IR Sensor von hinten ein Signal, muss stark in die Gegenrichtung gelenkt werden.
Empfängt man Vorne und vl muss man etwas nach rechts.
Empfängt man Vorne und vr muss man etwas nach links.
Evtl. den Empfangsbereich des Vorne Sensors schmäler machen als die anderen, solange nur dieser Empfängt - fährt man genau auf das Ziel zu.
Mit zwei solchen Sensoren als Empfänger kann man aus der Phasenlage der Signale den Winkel zum Sender berechnen. Im einfachsten Fall dreht man das Schiff oder die Antennenanalage so lange, bis beide Signale deckungsgleich sind, ohne Phasenverschiebung.
Von welchen Entfernungen wird denn gesprochen?
Auf dem "Sender" einen Rotationslaser und auf dem Empfänger einen rotierenden Empfänger.
Das Ganze wird beim Start mit einem Endschalter so abgeglichen, dass Du während des laufenden Betriebes merkst, in welcher Position abweichend von der Bugspize sich der Sender befindet und darauf mit dem Ruder reagieren kannst.
Ja sicher. Aber bei einem Encoder kommt es nur darauf an welcher Kanal zuerst. Egal wie groß der Zeitunterschied ist.
Wenn man Phasenverschiebung messen will dann braucht man
eine genaue Messung um wie viel Grad sind denn die Phasen gegeneinander verschoben.
Und Phasenverschiebung meint du müsstest messen wie viel zeitlichen Versatz haben die Nulldurchgänge der beiden 40 kHz Ultraschallwellen. Bei 40 kHz hat man alle 25 Mikrosekunden den nächsten Nulldurchgang. Und jetzt müsste man wenigstens mit 1/10tel dieser Zeit also 2,5 Mikrosekunden Auflösung den zeitlichen Versatz zwischen den Nulldurchgängen erfassen. Bei einem Messprinzip bei dem sich das Signal kugelförmig im Raum ausbreitet und sich die beiden Signale überlagern. Also mit Phasenverschiebung wird das glaube ich gar nichts.
Was evtl. gehen könnte ist Unterschied in der Laufzeitmessung / unterschiedlicher Abstand.
Aber auch das Bedarf einer rechnerischen Untersuchung in welchem Zahlenbereich bewegt man sich da.
Nehmen wir mal an die beiden Sensoren haben 50 cm Abstand voneinander. Das Ziel ist in 2m Entfernung.
Dreieck:
1ne Seite ist die Sensorachse = geradlinige Verbindung zwischen den beiden Sensoren
Der günstigste Fall wäre dann ein Sensor schaut im rechten Winkel auf das Ziel
Der andere "schräg" Ergibt ein rechtwinkliges Dreieck
Bei 90 Grad Satz des Pythagoras
Abstand "schräg-Sensor" Wurzel aus (50² + 200²) = 206,16 cm.
Laufzeit Sensor 1: 2,000 m / 340 m/sec = 5,88 Millisekunden
Laufzeit Sensor 2: 2,0616 m / 340 m/sec = 6,063 Millisekunden
Laufzeitdifferenz: 183 Mikrosekunden. Also ich weiß nicht recht.
So aus dem Bauch heraus würde ich sagen wird schwierig.
Wie groß ist das Modellschiff?
20 cm?
50 cm?
2 m?
Was bedeutet hier "Löschmonitor" ? Was macht der? wie funktioniert der?
Ein irgendwie gearteter Sender tut so als ob das Feuer wäre.
Das Löschboot muss die Richtung aus der das Signal kommt erfassen.
Es gibt ja eine Menge Sensoren für alles mögliche da ist die Grundidee Sensor der mir den Winkel misst natürlich naheliegend. Aber in dem speziellen Fall wird das richtig teuer oder man muss sich selbst etwas bauen.
Gepulste Infrarotsendediode plus Infrarot-Empfänger mit ganz stark eingeschränktem Sichtfeld der per Servo hin- und her gedreht wird könnte gehen.
Noch eine Idee:
Dieser Lasersensor mit gepulstem Laser wird mit einer Reichweite 0,8m bis 1,5m angegeben.
Diese Reichweite gilt für Oberflächen die das Licht streuen.
Wenn man ein "Katzenauge" verwendet dann funktioniert der locker über 10 m, weil ein Katzenauge das Licht genau in die Richtung zurückreflektiert aus der das Licht kommt.
Das würde heißen man hat auf dem "brennenden" Boot ein Katzenauge oder eben ein 12-Eck mit Katzenaugen damit es rund um reflektiert und auf dem Löschboot diesen Sensor der per Gimbal bewegt wird.
Hm... --- ... ganz schön aufwendig.
Mehrere IR-Sensoren die sich am hinteren Ende von engen Röhrchen befinden um das Sichtfeld einzuengen. Die Röhrchen blicken in 15-Grad Abständen in verschiedene Richtungen.
Einmal horizontal in verschiedene Richtungen und 3 bis 4 unterschiedliche Neigungswinkel Richtung Himmel jeweils vielleicht 5 Grad Abstand.
Je nach Abstand ist die Blinkrichtung eben auch mal steiler oder flacher nach oben
Dann diese Vorrichtung ebenfalls schwenken. Dadurch dass es viele Sensoren sind die in verschiedene Richtungen blicken wird man den Sender schneller entdecken.
Ein paar Ideen gab es ja schon. Ich kann leider keine weitere beisteuern, aber ein Kriterium erwähnen, das m.E. noch zu wenig Aufmerksamkeit erfahren hat: Das Ganze spielt sich nicht nur in einer Ebene ab.
Auch Modellschiffe (ca. 1m hatte ich gelesen) unterliegen Schwankungen durch Wellengang, in dem Fall beide - Havarist und Löschboot.
Das ist das Ding, wo dann am Ende das Wasser rausstrullert
Ein einfaches AND (oder XOR) Gatter macht aus der Phasendifferenz ein PWM Signal, das bekanntermaßen per Tiefpaß in eine analoge Spannung umgewandelt werden kann.
Man kann aber auch Ping für große Winkelunterschiede benutzen (mehrere Wellenlängen) und im Feintuning einen Komparator der Signale. Mit Hysterese oder mithilfe der Trägheit der Regelstrecke (Fahrtrichtung).
Zu den (halb) offenen Fragen:
Ein Löschmonitor ist das Ding wodurch die Pumpe das Wasser strullert um das Feuer zu löschen.
Meine Schiffe sind ca.1 m lang. Wenn ich sie kleiner machen würde, wäre es mir persönlich zu fummelig. Wenn ich sie grösser mache, bekomme ich Ärger mit meiner Frau wegen dem Platz und zudem möchte ich pro Schiff keinen Autoanhänger kaufen (anderen ist das egal)
Für alle die noch nie in so ein Ding reingeschaut haben: im Rumpf ist relativ viel Platz um alles unter zu bringen. In der Regel braucht man Zusatzgewichte damit es nicht wie ein Korken auf dem Wasser tanzt oder die Deckaufbauten sorgen dafür das sich das Schiff umdreht und der Rumpf nach oben kommt.
Bei dem beschriebenen Vorhaben "tänzeln" beide Schiffe auf dem Wasser. Ein exakter Laser würde also fast nie das Ziel treffen. Zumindest nach oben und unten sollte es also eine grössere Tolleranz geben. Die Idee mit einem Rohr und der somit verbunden Bündelung finde ich sehr spannend. Ich werde mich mal dran machen und das Ganze versuchen.
Ich komme sicherlich mit Folgefragen, aber bis hierhin: VIELEN DANK noch einmal!
Du kannst mit einem Laser auch einen senkrechten "Strich" ziehen.
Das heisst, es ist vollkommen egal wie das Ding schaukelt.
Selbst wenn es kränkt oder der Bug eintaucht, bekommst Du immer ein auswertbares Signal.
Ist der Laser "aufgehangen" wie in so einem Kreuzlaser von der Baustelle, hast Du nicht mal mehr Abweichungen auf der Gesamtstrecke (Die mit Annäherung ja sowieso immer kleiner wird)