- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 9 von 9

Thema: Höhenmesser mit AD-Auswertung für µC

  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    17.08.2004
    Beiträge
    1.065

    Höhenmesser mit AD-Auswertung für µC

    Anzeige

    E-Bike
    Moin zusammen.

    Ich möchte ein kleines Miniprojekt machen, was später in anderen Projekten eingebaut werden kann.
    Ziel ist es einen Drucksensor von Freescale (Typ MPX4115) so anzusteuern, dass der Ausgang mit einem 10bit oder 12bit AD-Wandler ausgewertet eine Auflösung hat, die auf 10cm Höhenunterschied genau sein kann. Dabei ist das natürlich nur eine theoretische Auflösung, da lokale Druckschwankungen, wie vorbeifahrende LKW das Ergebnis verfälschen können, allerdings solls reichen, um einen Sensor fürs Aufnehmen und Regeln der Höhe von z.B. Fluggeräten in Händen zu halten. Dazu ein paar Zeilen Quellcode, der die Höhe anhand des Luftdrucks berechnet.
    Geplant ist es den Drucksensor, der 15kPa bis 115kPa in eine Ausgangsspannung von 0,2-4,8V umwandelt, in seiner Bandbreite zu beschränken und dafür die Auflösung zu erhöhen. Geplant ist, das Ergebnis auf eine Referenzspannung von 3,3V zu beziehen.

    Sowas haben schon einige bereits gemacht, z.B. bei Mikrokopter.de, aber ich möchte es nochmal wiederholen, um eigene Erfahrungen zu sammeln.

    Es gibt übrigens den Sensor sowohl bei Reichelt als auch anderen Distributoren, aber vor allem auch in einer kostengünstigen Variante, bei Freescale kann man direkt einige Typen als Sample bestellen, darunter auch den MPXAZ4115A, welcher im SMD Gehäuse daherkommt und resistent gegen Chemikalien ist.

    Ich Suche noch ein oder zwei Köpfe, die auch interesse an so etwas haben und mitmachen wollen.
    ...

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.685

    Re: Höhenmesser mit AD-Auswertung für µC

    Zitat Zitat von the_Ghost666
    .. reichen, ... der Höhe von z.B. Fluggeräten ... Sensor ... resistent gegen Chemikalien ist...
    ... das soll wohl eher etwas für den Tiefflug sein ? Durch das Chemikalienlager von der BASF oder so?
    Ciao sagt der JoeamBerg

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    05.02.2006
    Alter
    60
    Beiträge
    114
    Auflösung und Genauigkeit sind verschiedene Sachen. Eine Auflösung von 10cm bekommst du schon hin, eine Genauigkeit (max. Fehler) von 10 cm ist mit dem Sensor problematisch.
    Habe das selber mal ausprobiert (Fehler von 1 m ist machbar).Du brauchst unbedingt einen 14-Bit A/D Wandler und eine superstabile Referenzspannung. Die Versorgungsspannung sollte möglichst auch nicht zu stark schwanken.Alles Fehlerquellen.
    Ich würde aus obigen Gründen keinen analogen Sensor mehr nehmen, sondern einen, der das Signal selber digitalisiert und z.B. über I2C ausgibt.
    Höhere Genauigkeit bei kleinerem Aufwand.

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    17.08.2004
    Beiträge
    1.065
    @oberallgeier
    Nein, aber die Sensoren sind auch für Anwendungen in Einspritzanlagen oder zur Füllstandsmessung geeignet, daher die Chemikalienresistenz. Es ist halt nur noch dieser Typ als Sample zu beziehen.

    @phaidros
    Hast du damals den Spannungsbereich nur teilweise betrachtet oder die volle Spanne? Ein Kollege arbeitet mit dem Ding als Barometer, und er hat einen 16bit ADC mit I2C Ausgang genutzt. Ich will nur den Bereich von 3,3-4,3V (entspricht 1500m bis -350m) verstärken und noch eine Bereichsumschaltung einsetzen, um die Auflösung zu steigern. Die oben genannte Quelle Mikrokopter kommt auf ähnliche Werte und die schaffen mit einem PID Regler 10cm Positioniergenauigkeit.


    Als erstes soll das Teil übrigens mit einem Beschleunigungssensor Höhe und Neigung in einem Modellflugzeug mitloggen.
    ...

  5. #5
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.685
    Zitat Zitat von the_Ghost666
    Sensoren ... für Anwendungen in Einspritzanlagen oder zur Füllstandsmessung ...
    Ok, danke - es ist also eine Möglichkeit und nicht Dein Pflichtenheft.

    Aus meiner Erfahrung:
    Mein (digitaler) Barograf (Fluginstrument) löst auf 1m auf - aber natürlich nur relativ - die absolute Messung kann wegen der Meteorologie nie so genau sein. Das Signal muss wesentlich genauer sein: Ich bekomme eindeutig das differenzierte Signal - also Steigen oder Sinken - mit einer Genauigkeit von etwa 0,1 m/s angezeigt.

    Mein analoges elektronisches Variometer, eines der besten die ich kenne, zeigt offensichtlich deutlich geringer als 0,1 m/s an - ich weiss das, weil ich (wie alle Thermikflieger) den Toneinsatz des Akustikteils knapp aber sicher über +- 0 Steigen habe.

    Der 0,1 m/s Abstand ist ohne Nachkalibrieren auch über Monate da.

    Das analoge Vario hat eine vom Hersteller selbst aufwendig gebaute Druckmessdose. Der digitale Barograf hat vermutlich einen Standardsensor - da könntest Du vielleicht beim Hersteller - frag Wolf Willershausen - nach dem Typ fragen, vielleicht sagt er was. Aber beschreib ihm Deinen Einsatz.
    Ciao sagt der JoeamBerg

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    17.08.2004
    Beiträge
    1.065
    Also ich habe mir mal ausgerechnet, dass eine Änderung von 10cm in Bodennähe einer Druckänderung von 0,013mbar oder hPa ergibt. In der Höhe darf der Wert auch gerne etwas ungenauer sein. Am Sensor würde dass in einem Spannungunterschied von 0,057mV erkennbar sein.
    Bei 10bit Auflösung ist ein Digit ca 3,22mV breit.
    Wenn ich nun den Spannungswert des Sensors um 56 verstärke, erhalte ich die entsprechende Auflösung von ca. 10cm/digit. Kann man mir soweit folgen?
    Dabei ist dann mein Messbereich aber auf 1024*10cm beschränkt, als nur gut 100m.
    Jetzt muss eine Bereichsumschaltung mittels Portpins her, am liebsten so wenige wie möglich. Wenn ich das so umsetzen will, möchte ich, dass meine Messung bei 3,3V beginnt, dh ich benutzte ne stabiliserte Referenz von 3,3V, muss danach aber durch schalten von TTL Pegeln die Spannung anheben.
    Weiß jemand wo ich dafür beispiele finden könnte? Ich würde einen Subtrahierer aufbauen, der die nötige Verstärkung bringt. Gibt es bessere Ideen?


    Ich habe mich über meine Beispielschaltung bei Mikrokopter nochmal informiert, die benutzen eine Addiererschaltung und 2 PWM-Kanäle des µC zur Bereichs-Verschiebung. Mh interessante Sache, allerdings weiß ich nicht, ob ich die PWMs entbehren kann.
    ...

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    05.02.2006
    Alter
    60
    Beiträge
    114
    Ich brauchte das Ding nur als Höhenmesser fürs Bergsteigen. Daher hab' ich schon den vollen Bereich ausgenutzt. Die Anzeigeauflösung habe ich daher auch auf 1 m begrenzt. Ich will also nicht behaupten, dass es nicht geht.

    Wenn du auf analogem Sensor bestehst, nimm doch gleich einen A/D Wandler mit 24 Bit Auflösung, z.B. den LTC2400.
    Dann sparst du dír die Bereichsumschaltung. Bei der Verstärkung verstärkst du doch das Rauschen auch mit.

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.214
    Warum nimmst Du eigentlich keinen digitalen Absolutdrucksensor, wie den MS5534 von Intersema ?
    Das Ding hat den benötigten A/D Wandler eingebaut, bringt 1m Auflösung und ist per SPI mit dem Microcontroller auslesbar.
    Die Korrekturwerte sind auf dem Chip hinterlegt, das bedeutet, das kein Abgleich notwendig ist. Lediglich eine anpassung an den aktuell herrschenden Luftdruck ( wg. Höhenmessfunktion ) musst Du wohl machen.
    Das Teil ist bei ELV für um die 20,-€ zu kriegen.

    Im RC Lineforum in Elektronikforum haben die auch mal einen Digitalsensor mit 10cm Auflösung genannt, der kostete aber schon um die 40,-€.

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    17.08.2004
    Beiträge
    1.065
    Um bei 24bit noch saubere Ergebnisse zu bekommen, braucht man garantiert eine bombensichere Referenzspannung und ne Blechdose, damit nichts von aussen in die Leiterbahnen einstrahlt. Die Versorgungsspannung des Sensors wird auch nur mit einem Festspannungsregler aus einer Akkuspannung erzeugt, also ist das alles relativ. Die hohe Bitzahl wird hier nicht viel an der Auflösung machen, weil der Sensor selber rauscht, und der Umgebungsdruck schwankt, im Endeffekt bekommt man wenige Bits mehr und zahlt dafür mit höheren Bauteilkosten und längeren Wandlungszeiten.
    Der MS5534 ist ne nette Sachen, aber der Punkt Nr.1 ist, dass ich den MPX-Sensor mittlerweile 4x zu Hause liegen habe, und nicht nochmal 20€ investieren möchte. Ausserdem ist er weit verbreitet und anpassungsfähiger, als eine komplett integrierte Lösung. Mit dem MS5534 kann ich nur die Modi verwenden, die mir das Ding gibt, an der Auflösung zu drehen ist nicht möglich. Da es an einen Microcontroller soll, ist es sowohl vom Bauteilaufwand, der Platinenfläche und von der Software einfacher, den internen ADC zu nutzen.
    Und für mich ist die Nutzung eines OPs interessant Aufgrund des Lernwertes. Mir ist schon klar, dass ich für n bestimmten Betrag auch eine Fertiglösung kaufen kann, vielleicht sogar mit Softwaretreiber, sodass ich nichts mehr machen muss.
    Mir reicht eine relative Höhe zur Startposition erstmal völlig aus.
    ...

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen