Welche Analog Methode meinst du genau?
Im übrigen werden ARM Prozessoren verwendet, sodass es schnell genug zugehen dürfte. ADC Sample Rate ist glaube ich 100kHz wenn ich mich nicht täusche.
Welche Analog Methode meinst du genau?
Im übrigen werden ARM Prozessoren verwendet, sodass es schnell genug zugehen dürfte. ADC Sample Rate ist glaube ich 100kHz wenn ich mich nicht täusche.
Diese Signatur wurde unter der GPL veröffentlicht.
Klau was aus meiner Signatur und du bist tot!
www.twitter.com/skgrobotics
Die Abtastrate eines AVR-ADCs ist deutlich höher:ADC Sample Rate ist glaube ich 100kHz wenn ich mich nicht täusche.
https://www.roboternetz.de/phpBB2/viewtopic.php?t=33070
https://www.roboternetz.de/community...ra-für-den-RP6
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Die analoge Schaltung wäre es so wie im 1. Post angedeutet im 2. Bild. Mit einem ARM Controller sollte die Rechenleistung locker ausreichen um mit ADC Daten bei vielleicht 150-200 kHz Abtastrate den Görtzel-algorithmus laufen zu lassen. Der Erledigt einem die Filterung (fein) und Demodulation. Aus der Form wie sich die Amplitude entwickelt kann man dann eine Funktion für den Abstand berechnen. Das sollte im Idealfall so etwas wie 1/d² sein. Wenn bei geringem Abstand die Begrenzung erreicht wird, muss man das seperat berücksichtigen und nur das Signal mit geringerer Amplitude auswerten.
Vielen Dank für die Antworten, ich werd mir das mal in Ruhe anschauen.
@radbruch: Ich meinte natürlich nicht die Samplerate sondern die Ausleserate des ADCs.
Diese Signatur wurde unter der GPL veröffentlicht.
Klau was aus meiner Signatur und du bist tot!
www.twitter.com/skgrobotics
Also so wie ich das verstanden habe, ist eine Möglichkeit die Entfernung zu bestimmen das Signal per CPU zu filtern und demodulieren, und dann kann man einfach so einen "Block" denn man gefiltert hat in seiner "Stärke" messen und dafür eine Formel ableiten. Wenn der Ball näher dran ist, kann man auch die "niedrigeren Blöcke" betrachten und wiederum eine Formel für die Stärke ableiten.
Für diese Methode brauche ich einen schnellen CPU (es sollen 8 ADC bearbeitet werden, außerdem eine PI Regelung, klappt das mit 120MHz?) und als Beiteile natürlich eine Diode, einen Verstärker, einen Limiter und einen Integrator (was auch immer das sein soll, dazu habe ich noch nichts gefunden).
Statt digital zu filtern und zu demodulieren könnte ich aber auch zwei weitere Bauteile einbauen, dadurch würde ich mir sehr viel Rechenleistung sparen. Die Verarbeitung wäre aber wie oben mit einer Funktion die man ableitet.
Hab ich das so richtig verstanden? Es stellt sich noch die Frage wie genau das ganze auf Nahdistanz (20-30, evtl. 40cm) sein wird. Auf längere Distanzen kann ich glaub ich verzichten.
Würde das auch ohne Elektronik klappen? Ich habe von einer Methode gelesen, bei der die Phototransisoren direkt an den ADC gehängt sind und die Informationen bis ca. 20cm genutzt werden. Das wird denke ich auch wieder aus Signal filtern und Amplitude messen bestehen.
Mit freundlichen Grüßen skg-rob
Diese Signatur wurde unter der GPL veröffentlicht.
Klau was aus meiner Signatur und du bist tot!
www.twitter.com/skgrobotics
Ob das mit 120 MHz Takt und 8 Kanälen gleichzeitig klappt, ist nicht sicher. Das könnte so etwa die Grenze sein. Ich kenne mich aber mit den ARMs nicht wirklich aus, und hab auch den Görtzel algoritmus nicht vor mir. Da wohl nicht gleichzeitig an allen 8 Sensoren ein Ball ist, kann man die Sensoren ohne Ball ggf. vereinfacht behandeln.
Die Genauigkeit wird vermutlich im wesentlichen von der Optik bestimmt. Das ist schwer abzuschätzen. Die Probleme sind da zum einen, dass der Ball nicht nach allen Seiten gleich stark senden wird, und dann Reflexionen (bzw. genauer Streuung) am Boden. Da kann man an der Empfängerseite und bei der Auswertung fast nichts dran ändern. So mit 20-50% Unsicherheit in der in der Intensität muss man wohl schon rechnen. Das wären wegen der Abhängigkeit nach etwa 1/d² dann 10-25% Unsicherheit in der Entfernung.
Bei der Hardware kann man noch etwas sparen, wenn man es digital macht: den Limiter braucht man nicht unbedingt, irgendein anderer Teil wird das auch so schon machen. Den Integrator braucht man auch nicht, das macht schon die Software - ist ja auch schon hinter der Demodulation. Wenn das Signal recht stark ist, könnte schon ein Phototransistor und ein Widerstand dazu reichen.
Wegen der ohnehin begrenzten Genauigkeit wäre vor allem für den Nahbereich auch die Hardwaremäßige Lösung nicht so abwegig. Super genau geht es ohnehin nicht, was den Demodulator etwas vereinfachen kann. Bei viel Intensität im Nahbereich kann auch der Filter einfacher werden, weil man relativ zum Signal weniger Störungen hat. Den Integrator der in der analogen Schaltung gezeigt ist, braucht man nicht unbedingt. Da reicht eigentlich ein Tiefpass, und den Rest macht der µC dann nebenbei besser als extra Hardware.
Hallo,
wir haben das damals komplett analog gelöst. Also am Ende hatten wir eine (stabile) Gleichspannung, wie beim alten Ball,
das man dann mit dem ADC einfach messen konnte. Wobei der Aufwand schon recht groß wird, verglichen mit einer reinen Softwarelösung.
Wir haben damals eine Messreihe gemacht, den Ball so gedreht, dass die maximale Intensität in Richtung Empfänger leuchtet.
Am Fototransistor betrugen die Spannungspegel 0,1-50mV Spitze-Spitze (je nach Abstand 150cm-0cm), das Diagramm dazu
war etwa hyperbelförmig (also 1/d² könnte hinkommen). Unsere Schaltung konnte das auch ein bisschen linearisieren.
Man kann aber fast nur das erste Impulspaket auswerten, das zweite ist schon deutlich schwächer und das dritte lässt sich nur noch erahnen.
Wir haben mit Analogmultiplexern gearbeitet, da der Hardwareaufwand für 16 Sensoren + zugehörige Analogschaltungen viel
zu hoch gewesen wäre. Ganz ohne Analogelektronik geht es natürlich auch nicht, 100µV-50mV lassen sich nämlich nicht leicht verarbeiten.
Einen Vorverstärker brauchst du also schon mal auf jeden Fall.
Grüße,
Bernhard
Lesezeichen