PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 16 Entfernungssensoren, welchen Multiplexer, wieviel ADC Kanäle opfern



µautonom
02.04.2014, 13:20
Hi,

ich habe 13 Sharp Entfernungssensoren (alle analog), da ich nur eine begrenzte Anzahl von ADC Kanälen habe, überlege ich einen analogen Multiplexer einzusetzen.
Insgesamt habe ich 10 unbelegte ADC-Kanäle.

Jetzt stellt sich natürlich die Frage wieviele Kanäle opfer ich (ein paar ADC-Kanäle auf Reserve wäre sicher gut) und wieviele Kanäle soll der Multiplexer haben?

Variante 1: 1:8 (8 Sensoren, 2 ADC-Kanäle), 74HC4051 davon bräuchte ich dann zwei, für alle 13 Sensoren
Variante 2: 8:16 (2 Sensoren 8 ADC-Kanäle) ADG406
Variante 3: 1:16 (13 Sensoren 1 ADC-Kanal) 74HC4067
Der Ron entspricht bei allen 3 MUX in etwa 80 Ohm.

Der ADC-Wandler wird mit 14 MHz getaktet, damit erreiche ich eine Wandlungszeit von 1 µs pro Kanal.
Das entspricht in etwa der Abtastrate. Der Mikrocontroller ist ein STM32F103RBT6

In Summe brauche ich für alle Sensoren 13 µs zum wandeln.

Hat jemand Erfahrung damit und kann mir vielleicht sagen, welche Zeit ich zum Abtasten der Sensoren anpeilen sollte?

Ich tendiere zum 1:16, zum einen weil günstig und ich nur einen ADC-Kanal opfere. Außerdem verschwende ich nicht weitere I/Os zum Steuern des MUX
Denke die Abtastzeit wird nicht dadurch bestimmt welchen MUX ich auswähle, abtasten muss ich ja eh alle 13 Sensoren.

Was meint ihr, richtig durchdacht oder hab ich das ein oder andere wichtige Detail vergessen?

Grüße µautonom

PICture
02.04.2014, 14:28
Hallo!

Das musst du leider selber entscheiden, was du genau willst. Ich denke, dass du gesamte Pinzahl für ADC und dafür nötige Adress- und evtl. Enablebits vom MUX betrachten solltest. Beispielweise bei Variante 1 werden 2xADC + 3xMUX, also gesamt 5 Pins vom µC nötig.

Bei Enfernungmessung könnte noch Abwarten an Echo zwischen ADC Wandlungen nötig sein. ;)

µautonom
02.04.2014, 20:40
Denke ich fahre ganz gut, wenn ich so viel Pins wie möglich einspare. Für Ultraschallsensoren würde ich dann einen separaten MUX verwenden.

EZ81
03.04.2014, 02:18
Hat jemand Erfahrung damit und kann mir vielleicht sagen, welche Zeit ich zum Abtasten der Sensoren anpeilen sollte?

Schön, dass das Editorfenster meinen Text löscht, wenn ich nachträglich ein Zitat einfüge. Auf ein neues:
Die analogen IR-Abstandsmesser a la GP2Y0A21YK sind langsam und ändern ihren Ausgangswert nur alle ~39ms. Mit zig kHz abzutasten ist da etwas übertrieben.

µautonom
03.04.2014, 11:00
Stimmt, eben nochmal ins Datenblatt geguckt, hatte die 39 ms überlesen und nur die 5 ms gesehen. Von daher reicht es allemal nur einen ADC-Kanal zu verwenden, µC langweilt sich ja ;)

PICture
03.04.2014, 11:08
Möglicherweise kann der µC in Pausen zwischen Ablesungen von Sensoren auch noch etwas tun (z.B. die Messergebnisse am Display anzeigen). ;)

µautonom
03.04.2014, 11:15
Hab noch weitere Sensoren die dazukommen, 4 Thermopiles 3 Ultraschallsensoren und dann kommt ja noch die Auswertung für die selbst gebastelte Drehzahlmessung für die 4 Motoren mit Hall Sensor und Magnetscheibe ;) Auf der faulen Haut wird der µC schon mal nicht liegen :) Den werde ich hart arbeiten lassen ;)

Hier mal ein kleines Bild von der Drehzahlerfassung, falls es jemanden interessiert :P

27929

PICture
03.04.2014, 11:49
Dann hast du mich berühigt. Du musst aber aufpassen, dass du nicht (wie ich mal) unbemerkt zum Entwickler werdest. :)

µautonom
03.04.2014, 12:57
:D denke das wird nie passieren.

Das wird schon ne ganze Herausforderungen was die Auswertung mit den viele Sensoren betrifft. Bin schon mal gespannt darauf, wie ich alle unter einen Hut bekomme ;)

BMS
03.04.2014, 16:41
Hallo,
zu beachten ist auch noch, dass die Sensoren kurzzeitige Spitzenströme zum Schalten der Infrarot-LED benötigen (was allerdings im Datenblatt verschwiegen wird :roll:). Die Betriebsspannung der Sharp-Sensoren muss deswegen gut mit Elkos abgeblockt werden (oder RC/LC-Filter in der Versorgung), vor allem wenn so viele auf einmal betrieben werden. Ansonsten wird die Spannungsversorgung eine hohe ungewollte Welligkeit haben.
Siehe auch:
https://www.roboternetz.de/community/threads/33656-GP2D120-mit-St%C3%B6rung-oder-oder-ist-das-Normalbetrieb
http://www.segor.de/L1Bausaetze/gp2d12.shtml
Grüße, Bernhard

µautonom
03.04.2014, 16:58
Ja das ist mir auch shcon aufgefallen als ich mir Versorgungsspannung auf dem Oszi angeguckt habe, grausam...
Wie du schon sagtest hab ich mit 47µF Elko gepuffert. Damit sieht es wesentlich weniger verrauscht aus.

Danke für die Links, werd ich gleich mal durchlesen.