Forum: Mikrocontroller und Digitale Elektronik Höhenmessung


von Marc O. (finalcu)


Lesenswert?

Hallo Zusammen

Als allfällige Entschuldigung für mein Unwissen, möchte ich betonen, 
dass ich noch Student bin. Und wie es als Student so üblich ist versteht 
man die Theorie hat aber keine Ahnung von der Praxis :).

Ich würde mich freuen, wenn mir jemand eine kleine Starthilfe für mein 
Problem geben könnte, am besten womit ich beginnen soll, was ich 
verwenden soll etc... (über die Funktion der einzelnen Komponenten werde 
ich mich dann informieren, dafür gibt es ja zahlreiche tutorials).

Und nun zu meinem Problem: Ich möchte einen Höhenmesser für meine 
Flyjumpers kreieren (für jene die nicht wissen was flyjumper sind; 
http://www.youtube.com/watch?v=MutvUfQcmMg ). Die Jumpers machen einen 
charakteristischen "Lärm" beim Abspringen und Landen. Ich nehme an, dass 
dieser Klang anhand seiner Frequenz einfach von den Umgebungsgeräuschen 
zu unterscheiden ist und daher auch einfach mit Sensoren registrierbar 
ist. Ein Timer, der durch den Sensor aktiviert wird, soll die 
Hundertstelsekunden vom Absprung bis hin zur Landung messen. Soweit der 
analoge Teil.

Der Timer gibt die Zeit in Binärdaten aus (8-bit dürften reichen). Eine 
Digitale Schaltung berechnet die Höhe nach h=1/2*g*(t/2)^2 und gibt sie 
auf einer LED-Anzeige an.

Folgende Probleme müssten berücksichtigt werden:

- Der Wert (auf der LED-Anzeige) soll erst aktualisert werden, wenn man 
höher springt als die aktuell angezeigte Höhe oder den Reset-Button 
betätigt.

- Der Timer dürte erst nach dem Signal vom Sensor die gemessene Zeit 
ausgeben und müsste unmittelbar danach zurückgesetzt werden und von neu 
an zählen. Ich weiss nicht wie ein Timer funktioniert (ob es die 
überhaupt in solcher Form gibt), falls die gemessene Zeit jedoch 
kontinuierlich am Ausgang anliegen würde, könnte man den Ausgang 
allenfalls mit dem Signal vom Sensor "verunden".

Diese Mess-Apparatur dürfte rein physikalisch gesehen sehr exakte Werte 
im Zentimeter Bereich liefern.


lg finalcu

von Danny (Gast)


Lesenswert?

Die höhe anhand der vergangenen Zeit berechnen.... Funktioniert aber nur 
solange ich nur in die Höhe (Y-Achse) springe und nicht weit 
springe(X-Achse). Oder willst Du die Sprungdistanz mitmessen?

von Michael (Gast)


Lesenswert?

Moin moin,
der Gedanke von Danny war auch das erste, was mir dazu durch den Kopf 
schoß.
Eine Lösung für dein Problem habe ich nicht, aber ich glaube flyjumper 
sind nur was für echte freaks. Da fühle ich mich mit meinen 38 Jahren 
eindeutig viel zu alt dafür, und immerhin bin ich früher Motocross 
gefahren.
Viele Grüße Michael

von Obelix (Gast)


Lesenswert?

... und in den Viedeos sieht man ja auch das herunter Springen von 
Dächern oder Treppen, das würde bei der Berechnung auch nicht 
berücksichtigt.

von Marc O. (finalcu)


Lesenswert?

Danny wrote:
> Die höhe anhand der vergangenen Zeit berechnen.... Funktioniert aber nur
> solange ich nur in die Höhe (Y-Achse) springe und nicht weit
> springe(X-Achse). Oder willst Du die Sprungdistanz mitmessen?

Das dachte ich auch... Aber wenn ich mich nicht täusche, so spielt es 
keine Rolle ob man sich nebenbei noch in x-Richtung bewegt. Anders 
formuliert: Eine Kugel, die man von 10m fallen lässt, trifft genau zur 
gleichen Zeit auf dem Boden auf, wie eine, die man aus der gleichen Höhe 
mit einer beliebigen Geschwindigkeit in x-Richtung abwirft (ohne den 
Luftwiderstand zu berücksichtigen natürlich). Das liegt daran, dass mam 
den Geschwindigkeitsvektor in x und y Richtung aufteilen kann. Die 
Geschwindigkeit in y-Richtung ist bei beiden dieselbe, da beide Kugeln 
mit derselben Fallbeschleunigung (9.81 ms^-2) beschleunigt werden...

mfg

PS: Das mit den Dächern stimmt... es würde natürlich nur funktionieren, 
wenn man auf gleicher Höhe abspringt/landet.

von ka-long (Gast)


Lesenswert?

Hi Marc,

Deine Annahme mit der Kugel ist im Vakuum sicherlich richtig.
Das ist ähnlich der Tatsache, dass eine Feder im Vakkuum genauso schnell 
fällt wie 1 Tonne Gold.


Da Du aber in einer Atmosphäre Deine Messungen machen möchtest....

Auch ein Fallschirmspringer erreicht eine endliche Geschwindigkeit.

Denk an eine Papier-Schwalbe, die in eine Richtung (x) geworfen wird und 
sie fliegt und fliegt und fliegt. Einfach nur losgelassen und...schade 
schon vorbei.

Also hat die Geschwindigkeit in x-Richtung auf alle Fälle einen Einfluß, 
da Du auf der vorhandenen Luft anfängst zu "gleiten"

Wie groß der Fehler bei Deinen flyjumpers sein kann, weiss ich nicht. 
Aber dass Du einen Fehler machst kannst Du daran sehen, das in dem Video 
die Jungs die Arme ausbreiten. Das machen sie ja nicht zum Spaß, sondern 
um das ganze etwas zu kontrolliern. Und da hilft die Reibung in der Luft 
mit.


Was vielleicht eine gute Idee wäre, einen von diesen 
3D-Beschleunigungssensoren (falls deren Messbereich groß genug ist).


Gruß ka-long

von groc (Gast)


Lesenswert?

Hoehe und Zeit werden wenig mit einander korrelieren. Dies, da es noch 
eine Weite gibt und Rotationen. Als Sensoren waeren 
Beschleunigungssensoren passender.

g

von Marc O. (finalcu)


Lesenswert?

Danke erstmals für eure Mithilfe...

@ka-long: Denkst du die Luftreibung wird die Berechnung entscheidend 
beinflussen?

Beschleunigungssensoren hört sich toll an... ich dachte bisher die sind 
aber relativ kompliziert, da müsste man wohl sehr viel mehr Ahnung 
haben.

von ka-long (Gast)


Lesenswert?

Hi Marc,

Du hast einige Faktoren:
* Dein Gewicht
* Die x-Geschwindigkeit
* Deine "Form" -> Im einfachsten Fall: Arme am Körper anliegend oder 
ausgestreckt
* starker Wind

Weitere weniger beieinflussende Faktoren wären:
* Thermik
* Luftdruck


Desweiteren rechnest Du mit t/2. Da setzt Du voraus, dass Steig- und 
Fallzeit identisch ist, was wegen der gennanten Gründe und Gefälle des 
Geländes ein Problem sein könnte.

1/10 Sekunde Fehler in der Zeit entspricht etwa 5cm Fehler in der Höhe.
5/10 Sekunde sind schon 1.2m Fehler.

Ich befürchte, dass die Zeitmessung anhand der Geräusche schon einen 
Fehler macht.

Geh mal davon aus das der Fehler quadratisch mit der Zeit, der Du in der 
Luft bist, steigt.

Fehler = k(t)*(t/2)^2

Wie groß k ist kann ich nicht abschätzen.


Beschleunigungssensoren soind besser :-)

Gru0ß ka-long





von AVRNoob (Gast)


Lesenswert?

Map Sensor aus einem Autosteuergerät ausbauen, gibt dir eine Schöne 
Spannungkennlinie für den Druck und deine aktuelle höhe, ob das ding SO 
genau is weiss ich aber nicht ...

von Obelix (Gast)


Lesenswert?

... ansonsten Versuch mach Kluch ...

von Marc O. (finalcu)


Lesenswert?

Hi ka-long

Ich denke nicht, dass man eine grössere Abweichung als 2/10 Sekunden 
erhalten würde... aber du hast natürlich Recht. Schon 2/10 wären eine 
Abweichung von 20cm. Bei einer maximalen Sprunghöhe von 2m wären das 
10%, was vielleicht gerade noch vertretbar ist. Aber eine grössere 
Abweichung würde wie du bereits gesagt hast fatale Fehler ergeben.

Kann man mit Beschleunigungssensoren alle 3 Richtungen erfassen? Könnte 
ich also aus meinem anfänglichen Projekt ein Multifunktionalgerät 
basteln, das sowohl Sprunghöhe, Sprungweite und eventuell sogar die 
Geschwindigkeit anzeigt?

mfg

von Axel R. (Gast)


Lesenswert?

>Kann man mit Beschleunigungssensoren alle 3 Richtungen erfassen?

Kann man! Und zwar sehr gut...

http://www.vti.fi/en/products-solutions/products/accelerometers/sca3000-accelerometers/
http://www.hy-line.de/co/sensor-tec/downloads/vti/index.html

/XlR.

von ka-long (Gast)


Lesenswert?

Oder:
http://www.bosch-sensortec.com/content/language1/downloads/SMB360_V1_1105.pdf


Gruß ka-long


PS : Ich glaube, der Fehler ist größer...aber kleiner als 5/10s...naja 
ohne das praktisch zu Messen, werden wir es nie erfahren.

von Marc O. (finalcu)


Lesenswert?

Wo würde man den Sensor am besten befestigen? Am Arm wäre sicherlich 
keine gute Idee, da man mit dem Arm viele Störbewegungen macht... 
Irgendwo in der Bauchnähe denke ich.

Was bedeutet SPI Output?

mfg

PS: Wofür braucht man Beschleunigungssensoren im +-18G Bereich? :D

von Axel R. (Gast)


Lesenswert?

>Wo würde man den Sensor am besten befestigen?

Na am Jumptreter selbst. Genug Platz ist ja vorhanden.

+-18G braucht man fürn Airbag.

von ka-long (Gast)


Lesenswert?

Hi,

Du mußt Dir überlegen, was Du messen möchtest, die 
Beschleunigungssensoren sind recht klein. Sollte nur nicht lose im 
Rucksack liegen sondern einigermaßen fest verbunden sein.
Vielleicht so wie eine Pulsuhr oder einfach Hosentasche oder so....


SPI ist ein einfaches serielles Interface.

Wenn Dir SPI nichjt sagt schieb es in die Kategorie I2C/RS232 
Bussysteme.


Gruß ka-long

von Wolfgang Horn (Gast)


Lesenswert?

Hi, marc

Du: "Als allfällige Entschuldigung für mein Unwissen, möchte ich 
betonen,
dass ich noch Student bin. Und wie es als Student so üblich ist versteht
man die Theorie hat aber keine Ahnung von der Praxis :)."

Ich kalkuliere messerscharf: Du mußt ein Student der 
Ingenieurwissenschaften oder Informatik sein.

Denn manche Deiner Kollegen von der Sparte BWL meinen, sie hätten 
genügend Erfahrung, um Unternehmen in Organisationsfragen kompetent 
beraten zu können.

Bist Du nun zu sorgfältig und zu qualitätsbewußt oder die anderen zu 
naiv?



:-)

Wolfgang Horn

von Danny (Gast)


Lesenswert?

Ich wollte eigentlich noch 3-Achs-Beschleunigungssensoren vorschlagen, 
musste aber los zur Arbeit, die Bahn wartet nicht;-). Der vorteil ist 
noch, Du kannst die erfassten Daten im Flash speichern und zuhause 
auswerten wann es Dich, bei welcher Höhe und Geschwindigkeit, zerlegt 
hat ;-).

von Tilo (Gast)


Lesenswert?

Gibt dein Flyjumper permanent ein Geräusch von sich?
Wenn ja, könnte man vielleicht über den Dopplereffekt
die Geschwindigkeit und daraus die Höhe berechnen.

von Fliegender Rahul (Gast)


Lesenswert?

Die Auswertung zu Hause, das kanns ja nicht sein...

Also ich finde du solltest es auf jeden Fall mit der Zeit-Messung 
versuchen.
Der von den anderen prophezeite Fehler durch den Luftwiderstand wird 
meiner Meinung nach kleiner sein als oben beschrieben. Der 
Luftwiderstand wird erst bei höheren Geschwindigkeiten ins Gewicht 
fallen.
Aber bei deiner Messmethode vom Abhebe- und Landezeitpunkt habe ich so 
meine Zweifel obs so was wird...

von Axel R. (Gast)


Lesenswert?

Was spricht denn nun gegen den Einsatz eines 
3Achs-Beschleunigungssensors (welchen nun auch immer)???
Du kannst die Höhe, die Weite, die Geschwindigkeit und die verwendete 
Leistung in KW berechnen lassen und alles auf einem LCD anzeigen lassen.

von Sonic (Gast)


Lesenswert?

Mit einem Beschleunigungssensor wirst du auch nicht sehr glücklich 
werden, da du nur die Beschleunigung messen kannst, nicht aber eine 
konstante Bewegung durch die Luft, da ist die Beschleunigung gleich 
null. Wie beim Fahrstuhlfahren, da kriegst du nur das Anfahren und 
Abbremsen gemessen, die konstante Fahrt  aber nicht.

von Axel R. (Gast)


Lesenswert?

Sonic wrote:
> Mit einem Beschleunigungssensor wirst du auch nicht sehr glücklich
> werden, da du nur die Beschleunigung messen kannst, nicht aber eine
> konstante Bewegung durch die Luft, da ist die Beschleunigung gleich
> null. Wie beim Fahrstuhlfahren, da kriegst du nur das Anfahren und
> Abbremsen gemessen, die konstante Fahrt  aber nicht.

Die Zeit zwischen "Anfahren" und "Abbremsen" könnte evtl. die Zeit sein, 
die man "fährt"?
Habe ich jetzt in Physik gefehlt, oder wer?
Die Zeit, die Du mit "Anfahren" verbringst und das Maß der 
Beschleunigung ist deine Geschwindigkeit. Die Geschw. ist nach dem 
"Abbremsen" (Zeit und Maß der nun negativen Beschleunigung) wieder 
ziemlich exakt null.
Da alle drei Achsen zur Messung zur Verfügung stehen, lässt sich sogar 
die Richtung des Sprunges anzeigen.

Baut euch Mikrotaster oder Piezogeber an den Jumptreter und vergesst den 
Beschl.sensor;-)) Geht mich ja nichts an.

von Marc O. (finalcu)


Lesenswert?

Wolfgang Horn wrote:

> Ich kalkuliere messerscharf: Du mußt ein Student der
> Ingenieurwissenschaften oder Informatik sein.

Hehe... Elektrotechnik und Informationstechnologie um genau zu sein...

>Denn manche Deiner Kollegen von der Sparte BWL meinen, sie hätten
>genügend Erfahrung, um Unternehmen in Organisationsfragen kompetent
>beraten zu können.

da kenne ich einige und kann dir nur zustimmen ;-)

Vielen Dank euch allen. Ich werds nächste Woche (nach meiner letzten 
Prüfung) ausprobieren :)

mfg

Marc

von Marc O. (finalcu)


Lesenswert?

Da fällt mir soeben noch was ein. Nur der Vollständigkeit halber: Die 
Datenübtragung (von den Sensoren zum mikrocontroller beispielsweise) 
basiert auf serieller Übertragunsgtechnik?

von Fliegender Rahul (Gast)


Lesenswert?

Hallo!

Willkommen an der ETH :)
Bei der Datenübertragung gibt es viel Möglichkeiten:
- parallel: bei hohen übertragungsraten, wie z.B. RAM
- seriell: bei kleineren Datenraten, vorteil: weniger Leitungen
Und dann gibt es vorallem bei Sensoren noch eine ganze Reihe weiterer:
- analog: Bsp.: ein Beschleunigungssensor gibt eine Spannung 
proportional zur Beschleunigung aus, die dann per AD-Wandler eingelesen 
wird
- PWM: Das Low-High-Verhältnis des Signals proportional zur Messgrösse

- und nund und... fällt mir aber nichts gängiges mehr ein.

Was nun vorhanden ist hängt immer vom Sensor ab, es gibt meistens von 
der gleichen Art Sensor mehrere Möglichkeiten die Daten zu übertragen, 
wobei parallel doch eher selten vorkommt.

von mr.chip (Gast)


Lesenswert?

> Willkommen an der ETH :)

Hallo auch :-) (BTW: Im ersten Semester gabs bzw. gibts ein Fach, das 
einem eigentlich genau für solche Fragestellungen sensibilisieren 
sollte...)

So lange man relativ gerade hüpft (d.h. in vertikaler Richtung abspringt 
und sich nicht um die x-Achse dreht) sollte es mit 
Beschleunigungssensoren gehen, oder auch mit dem erfassen des 
Geräusches. Alles andere geht wohl nur über die genaue Erfassung des 
zurückgelegten Weges mit Beschleunigungssensoren und Kreiseln.

von Marc O. (finalcu)


Lesenswert?

mr.chip wrote:

> Hallo auch :-) (BTW: Im ersten Semester gabs bzw. gibts ein Fach, das
> einem eigentlich genau für solche Fragestellungen sensibilisieren
> sollte...)

Jop. Wie schon gesagt, die verschiedenen Techniken sind mir schon 
vertraut. Ich wusste bisher einfach nicht so richtig wo sie jeweils in 
der Praxis angewandt werden, ob jetzt ein Beschleunigungssensor ein 
analoges Signal oder bereits digitalisiertes Signal ausgibt etc...

von Rolf Magnus (Gast)


Lesenswert?

> Die Zeit, die Du mit "Anfahren" verbringst und das Maß der
> Beschleunigung ist deine Geschwindigkeit. Die Geschw. ist nach dem
> "Abbremsen" (Zeit und Maß der nun negativen Beschleunigung) wieder
> ziemlich exakt null.

Etwas kürzer: Wenn man die Beschleunigung nach der Zeit integriert, 
bekommt man die Geschwindigkeit. Dazu muß man aber beim Einschalten 
absolut ruhig stehen. Ein Problem könnte sein, daß sich Fehler mit der 
Zeit kumulieren.

von Isipisi (Gast)


Lesenswert?

Beschleunigungssensor zur Höhenmessung geht nur,
wenn ebenfalls die Richtung des Gravitationsvektors
bekannt ist, damit die senkrechte Absprungshöhe bestimmt
werden kann. Bereits ein Messfehler von 10 Grad ergibt hier
einen zusätzlichen systematischen Fehler von ca.
17% bei der Höhenmessung.

Wohl zu kompliziert und zu teuer.

von Axel R. (Gast)


Lesenswert?

>die Richtung des Gravitationsvektors bekannt ist
kann der SCA3000

von Isipisi (Gast)


Lesenswert?

Interessantes Bauteil ! Scheint für die Anwendung geeignet. Macht Lust, 
mal etwas damit herumzuspielen... Werde mir mal einen bestellen.

von Axel R. (Gast)


Lesenswert?

Sag mir mal Bescheid, von wo und was einer kostet.
Ich spiele auch mit dem Gedanken. Ich würde dann mit I2C arbeiten 
wollen.

von Marc O. (finalcu)


Lesenswert?


von Axel R. (Gast)


Lesenswert?

Cool, Danke für den Link!
Das Testboard kostet 119 CHF -> also etwas über 30Euro. Nicht schlecht!
Werd ich mal den SCA3000-D02-PWB ordern.
Ich werde mal vorher noch in D nach Einzelstückzahlen "forschen" :-))

von Axel R. (Gast)


Lesenswert?

Auwei: 74Euro
http://www.mercateo.com/p/live~s.0*115-647365/Beschleunigungssensorboard_SCA3000_D02_PWB.html

schon besser: 47Euro
http://dkc3.digikey.com/PDF/T071/2019.pdf

naja so ist das mit den Mustern, eines  - kein Problem -.
Wehe, man braucht paar mehr. Schön, das sich die Liefersituation 
mittlerweile drastisch verbessert hat.
Wäre ich jetzt garnicht drauf gekommen, einfach mal bei 
Katalogversendern zu suchen ;-))

Wie steuert man aber ein I2C-Device mit einer 10Bit-Adresse mit einem 
AVR unter Nutzung des Hardware-TWI-Moduls an???

siehe auch hier meine Anfrage dazu:
Beitrag "SCA3000-D02 von VTI via I2C  Erfahrungen?"
Ich mache das jetzt per Software-I2C und schummle ihm das untere 
Adressbyte als erstes Datenbyte unter. Der AVR kann nicht zwischen 
SLAVE-ACK und DATA-ACK unterscheiden. Könnte man bei Gelegenheit mal im 
anderen Thread klären. Will den hier nicht "hijacken".

Danke
AxelR.

von mr.chip (Gast)


Lesenswert?

> Das Testboard kostet 119 CHF -> also etwas über 30Euro. Nicht schlecht!

Seltsamer Wechselkurs :-) Ein 1 EUR ist ungefähr 1.5 CHF.

von Axel R. (Gast)


Lesenswert?

Marc Osswald wrote:
> 
http://www.distrelec.com/ishopWebFront/search/luceneSearch.do;jsessionid=07B307B5D576B59D751F434705B4F8FC.chdist51?dispatch=find&showImage=on&artnrPhrase=SCA3000&typePhrase=&keywordPhrase=&vendorPhrase=
>
> für ca. 20 Euro das Stück...

Jetzt gibt es sie garnicht mehr, wollte eben noch mal nachsehen:
"These articles are no longer available."
Habe ich mich (im Kopf) verrechnet, war ja klar ;-))

von löti (Gast)


Lesenswert?

Also um mal auf das Ursprungsthema zurückzukommen. Ich würde an deiner 
Stelle erstmal einen Controller programmieren, mit zwei einfachen Federn 
oder sowas als kontakten an den Flyjumperfüssen, die Zeit messen, Höhe 
daraus berechnen und am LCD ausgeben. Dann würd ich mal mit nem 
zollstock oder so gucken ob die Höhe stimmt.
-Und wenn das alles geklappt hat, würd ich mir Gedanken zu den 
Ein/Aus-schaltern machen, ob du die mit Beschleunigungssensoren, 
Ultraschall-Abstandssensoren, Akustik,Infrarot, Meschanisch, ...

Eine Idee kam mir noch_: du hast doch sicher eine Feder oder sowas an 
den Flyjumpers, wenn du diese nun oberhalb der Jumperfüsse abfragst(...) 
, ob die Feder im Ursprungsstustand gestreckt ist oder weiter, dann soll 
die messung starten.

Aber Ich würde eigentlich mal Ultraschallsensoren testen, mit ADC vom 
Microcontroller abfragen in hoher Abfragerate..

So. Soweit mein Senf.

von Marc O. (finalcu)


Lesenswert?

Hallo

Ja das ging mir auch schon durch den Kopf. Das Problem ist, dass man 
meistens auf dem anderen Fuss landet wie man abgesprungen ist. Das würde 
voraussetzen, dass man zwei Sensoren hätte (an jedem Fuss einen), die 
drahtlos mit einander kommunizieren würden.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.