Gleich vorweg: Ich weiss, dass ein ähnlichr Beitrag bereits existiert, kann damit aber leider nicht viel anfangen. Zu meinem Problem: Ich möchte für mein Mountainbike eine elektronisch absenkbare Ferdergabel entwickeln. Ich habe aber keine Idee, wie ich kostengünstig (max. 80CHF für Sensor) mit einem Sensor und einem uP das Realisieren soll. Ich möchte die Neigung des Geländes feststellen, habe aber das Problem der Beschleunigung. Für meine Anwendung muss die Neigung ja nicht gerade sehr genau sein (+-5°). Die Schaltung muss aber schläge verkraften können. Ich habe einen einachsigen Sensor gefunden, der meinen Wünschen entspricht, weiss aber nicht ob ich nur mit Software die Beschleunigung rausrechnen kann. Fals jemand einenen anderen Vorschlag hat wähe ich ihm dankbar
Wenn Du Beschleunigungen (und damit ist auch die Erdanziehung gemeint) in allen drei Achsen messen willst, brauchste einen 3-achsigen-Sensor, und nicht nur 1-achsig. Für Deinen Fall sollten 3 Achsen nötig sein, um auch Schräglagen herausrechnen zu können.
Ach ja - Kräfteberechnungen (Technische Mechanik), wie sie im Raum sich auswirken, sollte man natürlich auch können.
Na. Die Neigung ist ein konstanter Vektor im 3D Raum. Die Beschleunigungen sind davon abweichend. Ich fahre selbst Fahrrad. Was soll die Absenkung bringen ?
Radelektroniker schrieb: > Die Schaltung muss aber schläge verkraften können. Wie wärs mit einem Tiefpassfilter höherer Ordnung?
Ha-jetzt Aber schrieb: > Was soll die Absenkung bringen ? Bergabfahrgefühl auch beim Bergauffahren ;-)
Radelektroniker schrieb: > Gleich vorweg: Ich weiss, dass ein ähnlichr Beitrag bereits existiert, > kann damit aber leider nicht viel anfangen. > > Zu meinem Problem: > Ich möchte für mein Mountainbike eine elektronisch absenkbare > Ferdergabel entwickeln. Ich habe aber keine Idee, wie ich kostengünstig > (max. 80CHF für Sensor) mit einem Sensor und einem uP das Realisieren > soll. Ich möchte die Neigung des Geländes feststellen, habe aber das > Problem der Beschleunigung. > Für meine Anwendung muss die Neigung ja nicht gerade sehr genau sein > (+-5°). > Die Schaltung muss aber schläge verkraften können. Ich habe einen > einachsigen Sensor gefunden, der meinen Wünschen entspricht, weiss aber > nicht ob ich nur mit Software die Beschleunigung rausrechnen kann. > > Fals jemand einenen anderen Vorschlag hat wähe ich ihm dankbar Welchen Sensor hast du dazu gefunden? Die störende Beschleunigung must du herausrechnen -- ggf. ist das mit Gyrosysteme d.b. Kombination Neigung & Beschleunigungserfassung zu machen. Hat auch seine Tücken oder wie es Frank Bär erwähnt kannst du das auch mal einfach mit einem TP realisieren da die Erdbeschl. (Neigungsbest.) ja von statischer Natur ist. Ist ne interessante Geschichte... gruss
Eigentlich ist das ziemlich einfach, denn du willst ja wirklich nur die statische Größe Neigung messen. Wenn du einen analogen Sensor hast (was ich bezweifeln möchte), dann nimmst du dazu einen aktiven Tiefpass, wenn es sich um einen MEMS-Sensor handelt (was ich für wahrscheinlich halte), dann benutzt du einen digitalen Tiefpass. Die Grenzfrequenz des TP stellst du sehr niedrig ein, denn du möchtest ja nicht die ganze Zeit auf dem Rad rumhoppeln, nur weil du durch eine kleine Senke fährst. Ich würde da schon einige Sekunden, bzw. wenige zehntel Hertz einstellen. Damit kriegst du definitiv nur die statische Komponente. Irgendetwas rausrechnen bringt in dem Fall wenig bis gar nichts, und da es nicht sonderlich genau sein soll, kannst du dir das sowieso sparen und das Unerwünschte Spektrum einfach wegbügeln. Stellt sich mir trotzdem die Frage, wozu das ganze gut sein soll. Abgesehen davon ist die Betriebssicherheit doch ein ziemlicher Haken an der Sache, abgesehen von den EMV-Ansprüchen würde ich mich an deiner Stelle weitestgehend am Automotive-Bereich orientieren. Lötstellen, insbesondere bleifreier Natur, brechen gern, Temperaturschwankungen und Feuchtigkeitseinwirkung tun ihr übriges. Da möchtest du schon mindestens lackieren, besser noch vergiessen, wenn das System mehr als eine Tour aushalten soll.
Hallo Es gibt auch Neigunssensor-ICs, z.B. von VTI (http://www.vti.fi/en/products/inclinometers/inclinometers/). Wie gut diese auf deine Anwendung passen kann ich leider nicht sagen, sind aber für den Automotivesektor entwickelt. Bezugsquelle wäre Hy-line (http://www.hy-line.de/firmengruppe/hy-line-sensor-tec/hersteller/vti/neigungssensoren.html).
Ob ein Tiefpass den gewünschten Effekt bringt, hängt davon ab, ob man den Frequenzbereich der Beschleunigung von dem der Steigungen voneinan- der trennen kann, d.h. keine Überlappung besteht. Soll die Höhenänderung der Gabel nur bei lang anhaltenden Steigungen oder Gefällen erfolgen, ist der Tiefpass sicher eine Lösung. Überlappen sich die interesseierenden Frequenzbereiche von Steigung und Beschleunigung, kommst du mit einem Einzelsensor nicht weiter. Die Kom- bination aus Neigungssensor und Gyro, wie bereits von Joel vorgeschla- gen, könnte hier ein Ansatz sein. Da der Neigungssensor die absolute Neigung und die Beschleunigung misst, der Gyro im Gegensatz dazu nur die Neigungsänderung, kann versucht werden, die beiden Messwerte mittels eines Kamlman-Filters zu fusionieren. Je nachdem, was mit dem System bezweckt werden soll, ist es aber u.U. gar nicht sinnvoll, die Beschleunigung herauszurechnen. Soll es bspw. dazu dienen, an starken Steigungen, den Schwerpunkt nach vorne bzw. bei Gefällen nach hinten zu verlagern, ist dieser Effekt sicher auch beim Beschleunigen bzw. Abbremsen willkommen. Einen Tiefpass mit kurzer Zeit- konstante braucht man aber immer noch, damit das System nicht schon bei unrundem Tritt oder Bodenunebenheiten anspricht. Zusätzlich braucht man eine geeignete Umrechnung von den gefilterten Sensorwerten in die Gabelabsenkung, das ist dann aber schon alles.
@marcus W: Ich hatte vor den TSCA61T von VTI zu benutzen. @Frankbär: Unsere Firma stellt Geräte für das Militär her, deshalb kenn ich die Beanspruchungen. Das System wird am Schluss vergossen. @Yalu: Der Sensor kann einen analogen Wert oder einen digitalen ausgeben. Ich verstehe aber nicht, weshalb ich dass mit einem Tiefpass machen soll, und nicht mit dem uP. Beim Bremsen und Beschleunigen sollte sich die Gabellänge nicht ändern, da die änderung ca. 20sec dauert. Die Gabel sollte sich erst nach ca 30 sec Steigung absenken(von 150mm auf 100mm) Momentan muss ich das von Hand machen, was während dem Fahren etwas mühsam ist.
Analog Devices: z.B. ADIS16209 (Dual-Axis, Inclination + Acceleration), http://www.analog.com/en/sensors/inertial-sensors/products/index.html#Low_g_iSensor_Accelerometers
Radelektroniker schrieb: > @Yalu: Der Sensor kann einen analogen Wert oder einen digitalen > ausgeben. Ich verstehe aber nicht, weshalb ich dass mit einem Tiefpass > machen soll, und nicht mit dem uP. Mit "Tiefpass" meinte ich nicht unbedingt einen analogen. Ein digitaler bzw. softwaremäßiger geht natürlich genauso. > Die Gabel sollte sich erst nach ca 30 sec Steigung absenken Da eine Beschleunigungs- oder Abbremsphase, die den gleichen Effekt wie ±5° Steigung hat, deutlich weniger lang als 30s dauert, könnte ein (softwaremäßiger) Tiefpass bzw. eine gleitende Mittelwertbildung über 30s schon ganz gut funktionieren.
Hallo, ich erinnere mich da so dunkel an die Äquivalenz von träger und schwerer Masse - wenn Einstein recht hat, kann man Neigung und Beschleunigung grundsätzlich nicht unterscheiden, solange man keinen unabhängigen Anhaltspunkt hat wie die Erdoberfläche. Annähernd könnte man die Erdbeschleunigung als konstant ansehen und abziehen, aber dazu muss der Sensor erstmal genau genug sein. Gruss Reinhard
Reinhard Kern schrieb: > Annähernd könnte man die > Erdbeschleunigung als konstant ansehen und abziehen, aber dazu muss der > Sensor erstmal genau genug sein. Der Sensor ist einer der genausten auf dem Markt. Für das müsste ich aber ein Gyro einbauen oder?
Hallo Radelektroniker, ich weis nicht ob Du die (primäre) Frage gelesen hast, welche mich als Radfahrer auch beschäftigt: >Ha-jetzt Aber (Firma: Aha) (hacky) > ... Ich fahre selbst Fahrrad. Was soll die Absenkung bringen ? Ja was soll die Absenkung bringen? Ich sitze(oder überlege) an einem ähnlichen Projekt für ein Kfz. Meine Intention ist das Bestimmen der momentanen Neigung der Längsachse OHNE hier einen Radsensor für das "Rausrechnen" der Beschleunigung anzuzapfen. Mein Zeitfenster, Aktualisierung aller 1-2sec, würde zwar genügend Rechenoperationen erlauben, aber egal wie ich mein Mech.-Skript wälze, ich finde(noch nicht) keinen gescheiten Ansatz. Gruß Stevko
Stevko R. schrieb: > Hallo Radelektroniker, > > ich weis nicht ob Du die (primäre) Frage gelesen hast, welche mich als > Radfahrer auch beschäftigt: > >>Ha-jetzt Aber (Firma: Aha) (hacky) >> ... Ich fahre selbst Fahrrad. Was soll die Absenkung bringen ? > > Ja was soll die Absenkung bringen? Die Absenkung verhindert, dass ich beim Bergauffahren(>20°) nicht mein Gewicht nach vorne Verlagern muss, und so mein Gewicht vom hinteren "Antriebsrad" nehmen muss. Auserdem hat man mehr Konfort :). Das mit dem Radsensor hast du vermutlich falsch verstanden. Ich möchte einen normalen Einachsigen Neigungssensor verwenden.
>So hier wie versprochen das Pfichtenheft im doc Format
DOC-Format ist Mist. Nimm lieber pdf.
Sorry mache ich bon jetzt an! Mann kann das Doc jedoch ohne Plugin oder Word anschauen. Bei mir (Firefox 3.6) kommt wenn ich auf anzeigen klicke Google-docs und dort kann ich es wie ein pdf betrachten
Ich denke dass die Idee von Yalu mit dem software Tiefpass gut funktionieren sollte. Ich werde aber beides (Tiefpass und Mittelwertbildung) benutzen. Was eignet sich für mich besser ein FIR oder ein IIR. Ich kenne mich mit digitalen Filtern nicht aus :( Wenn ich das richtig sehe ist ein FIR besser aber braucht teurere Hardware? Kann ich das auch mit einem realem Bauteil filtern (MEMS-Sensor) Oder gar den analogen Ausgang nehmen, den filtern und dann auf den uP? Bin für alles offen!!!
Radelektroniker schrieb: > as eignet sich für mich besser ein FIR > oder ein IIR. Ich kenne mich mit digitalen Filtern nicht aus :( Wenn ich > das richtig sehe ist ein FIR besser aber braucht teurere Hardware? Machs nicht gleich so kompliziert und nimm für den Anfang einfach einen gleitenden Mittelwert über 30s. Wenn Dir das nicht gut genug hinhaut kannst Du immer noch aufrüsten der µC hat doch eh nichts zu tun wenn Dein Stellglied eine Zeitkonstante von über 10 Sekunden hat. Dann reicht dir doch eine Abstastfrequenz von max. 1 Hz.
Schlauberger schrieb: > Machs nicht gleich so kompliziert und nimm für den Anfang einfach einen > gleitenden Mittelwert über 30s. > Wenn Dir das nicht gut genug hinhaut kannst Du immer noch aufrüsten der > µC hat doch eh nichts zu tun wenn Dein Stellglied eine Zeitkonstante von > über 10 Sekunden hat. Dann reicht dir doch eine Abstastfrequenz von max. > 1 Hz. wenn ich mit nur 1Hz abtaste kann alles möglich passieren. Z.B treff ich dann 5 mal eine Beschleunigungsphase und noch 3 unwichtige unebenheiten. Ich dachte an ca. 10Hz also 300 Abfragen. Mann muss auch bedenken, dass ich nicht auf Strassen sondern verblockten Trails fahre.
Schlauberger schrieb: > Machs nicht gleich so kompliziert und nimm für den Anfang einfach einen > gleitenden Mittelwert über 30s. Das hätte ich auch getan, und zwar so, wie er hier http://de.wikipedia.org/wiki/Gleitender_Mittelwert unter "Einfacher gleitender Mittelwert" beschrieben ist. Ich glaube, dass das den Erwartungen des Fahrers am nächsten kommt. Bei einer Abtastrate von 10Hz und einem Zeitfenster von 30s müsstest du dazu jeweils die letzten 300 Messwerte im RAM des Controllers speichern, um daraus den Mittelwert berechnen zu können. Da der Sensor laut Datenblatt eine 3dB-Grenzfrequenz von 18±10Hz hat, ist die Abtastrate von 10Hz evtl. zu niedrig (Abtasttheorem). Dadurch kann unter ungünstigen Bedingungen der Fall auftreten, dass bei starken Vibrationen fast nur die Maxima (oder nur die Minima) der Messwerte erfasst werden, so dass der Mittelwert zu groß bzw. zu klein wird. Besser wäre Abtastrate von etwa 1kHz. Dazu müsstest du aber 30000 Messwerte speichern, wofür der Speicher eines Billig-µC nicht ausreicht. Eine Lösung dieses Problems besteht darin, die Messwerte mit einem gewöhnlichen Tiefpass vorzufiltern. Das geht entweder mit einem RC-Glied, wenn du den Analogausgang des Sensors benutzt, oder mit einem einfachen IIR-Filter per Software: http://de.wikipedia.org/wiki/Exponentielle_Gl%C3%A4ttung Beide, das analoge und das digitale Filter haben praktisch die gleichen Eigenschaften. Von diesen vorgefilterten Werten führst du jeden 100sten der gleitenden Mittelwertbildung zu, so dass du dort mit der Speicherung von 300 Werten auskommst. Du kannst natürlich auch versuchen, die komplette Mittelung mit der exponentiellen Glättung (mit entsprechend großer Zeitkonstante) zu machen. Im Gegensatz zur gleitenden Mittelwertbildung werden dabei aber die jüngsten Messwrte stärker gewichtet als die älteren, und selbst sehr alte Messwerte (älter als 30s) haben immer noch einen, wenn auch geringen, Einfluss auf das Ergebnis. Es hängt sicher etwas vom Geschmack des Fahrers ab, welche der beiden Methoden er als angenehmer empfindet. Vielleicht merkt er aber auch überhaupt keinen Unterschied ;-)
Vielen Dank für deine Hilfe Yalu Ich mach es jetzt vermutlich mit einem IIR Filter und dem gleitendem Mittelwert. Das sollte wirklich funktionieren. Später werde ich vermutlich noch eine Funktion einbauen die erkennt ob ich auf einer Strasse oder im Gelände fahre und dann unterschiedlich reagiert. Noch etwas ganz anderes: Was für ein Motortyp könnte ich für das Verstellen des Hebels benutzen? (brauche etwa 100-150N Kraft) Eventual ein Servo? Hätte den Vorteil dass man immer die Position kennt.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.