Hallo zusammen. Mal kurz eure Meinung dazu ob man mittels eines IR Sensors, die Drehzahl eines Rotors messen kann. Ich habe mir das ganze so vorgestellt. Ich nehme eine einfache IR Diode, die von unten nach oben gegen die Rotorblätter scheint. Von dort aus reflektiert die Infrarot Strahlung(oder eben nicht) nach unten und trifft auf den IR Empfänger(dachte an einen Entfernungsmesser). Dieser gibt das Signal an den Arduino weiter, welcher dann die Drehzahl berechnet. GGF muss ich die Rotorblätter noch mit IR schluckender oder reflektierender Farbe bestreichen. Das ganze spielt sich bei ca. 3 cm Entfernung ab.
Ist das theoretisch möglich oder ist der Entfernungssensor bei hohen RPM zu langsam bei der Weitergabe um die Drehzahl wieder zu geben?
Das mit der Drehzahl ist eine verdammt gute Frage. Darauf kann ich leider überhaupt keine Antwort geben. Der Rotor sitzt hinter einem Getriebe, aber ich finde auch zu dem Elektromotor keinerlei Angabe. Das ganze ist für meinen Quadrocopter, der zwar ganz okay fliegt, dank Gyrosensor. Ich habe jedoch immer noch Probleme bei der Stabilisierung. Logischerweise, weil ich eben die RPM nicht kenne.
Gibt es denn IR Reflex Lichtschranken, die auf 3cm arbeiten? Direkt an den Rotor kann ich leider nicht. Ich war heute früh kurz bei Conrad, die hatten nichts im Angebot. Aber der Student schien mir auch leicht überfordert.
Für einen Quadrocopter brauchst Du nicht die Drehzahl der Motoren zu wissen. Außerdem werden Motoren mit Getriebe nur bei kleinen Quadrocopter verwendet und darum ist jeder zusätzliche Sensor zuviel Gewicht.
Das Problem ist in der PID Regelung der Motoren und da verweise ich Dich an ein Quadrocopter-Forum.
Nur der Vollständigkeit halber:Ein Phototransistor (hab mal beim SFH 309 nachgeguckt) hat Flankenzeiten < 10 µs. Pulse mit 20 µs Dauer sollte man also leicht erkennen können. Das schafft auch ein Arduino.
Ausser RPM wäre auch die Blattbreite interessant. Mal angenommen, der Rotor deckt nur 5% der Umdrehung ab, muss also eine halbe Umdrehung min. 400 µs dauern. 1000 / s = 60'000 RPM wäre also möglich zu messen.
Nur mal so, um ein Gefühl für elektronische Zeiten im Vergeich zu mechanischen zu entwickeln.
uwefed:
Für einen Quadrocopter brauchst Du nicht die Drehzahl der Motoren zu wissen. Außerdem werden Motoren mit Getriebe nur bei kleinen Quadrocopter verwendet und darum ist jeder zusätzliche Sensor zuviel Gewicht.
Das Problem ist in der PID Regelung der Motoren und da verweise ich Dich an ein Quadrocopter-Forum.
Grüße Uwe
Ja, das weiß ich auch. Aber über die Motordrehzahl + das Getriebe kann ich die max RPM des Rotors ausrechnen um eine ungefähre Angabe zu haben. Mein Copter fliegt auch und das bei über 650 Gramm Gesamtgewicht, wobei du natürlich Recht hast was das Gewicht angeht.
michael_x:
Nur der Vollständigkeit halber:Ein Phototransistor (hab mal beim SFH 309 nachgeguckt) hat Flankenzeiten < 10 µs. Pulse mit 20 µs Dauer sollte man also leicht erkennen können. Das schafft auch ein Arduino.
Ausser RPM wäre auch die Blattbreite interessant. Mal angenommen, der Rotor deckt nur 5% der Umdrehung ab, muss also eine halbe Umdrehung min. 400 µs dauern. 1000 / s = 60'000 RPM wäre also möglich zu messen.
Nur mal so, um ein Gefühl für elektronische Zeiten im Vergeich zu mechanischen zu entwickeln.
Der Rotor ist 11,6cm lang(Radius) und ca. 2cm breit an der Stelle an der ich messen könnte, die 7,5cm vom Mittelpunkt entfernt ist. Bedeutet einen Gesamtumfang von 72,88cm. An der 2cm Stelle von 47,12(Umfang). Ein Rotorblatt macht dort also 4,2% der "Fläche" aus. Vielleicht kann ich den Messpunkt auch noch etwas näher an den Mittelpunkt bewegen.
Wie kommst du auf die 400µs? 60.000RPM halte ich für sehr viel. Das werde ich def. nicht schaffen mit den kleinen Motoren. Das wären 1000 Umdrehungen pro Sekunde.
Danach hab ich großzügig 2*400µs auf 1 ms aufgerundet, weil es ja nur darum ging, dass die möglichen 60'000 RPM deine Anforderungen wohl deutlich übersteigt.
Heimdall:
Der Rotor ist 11,6cm lang(Radius) und ca. 2cm breit an der Stelle an der ich messen könnte, die 7,5cm vom Mittelpunkt entfernt ist. Bedeutet einen Gesamtumfang von 72,88cm. An der 2cm Stelle von 47,12(Umfang). Ein Rotorblatt macht dort also 4,2% der "Fläche" aus.
Jeder Rotor hat zwei Blätter. Etwas doof ausgedrückt.
michael_x:
Wenn 5% 20µs sind, wieviel sind dann 100% ?
Danach hab ich großzügig 2*400µs auf 1 ms aufgerundet, weil es ja nur darum ging, dass die möglichen 60'000 RPM deine Anforderungen wohl deutlich übersteigt.
Okay dann anders gefragt. Wie kommst du darauf, dass 5% = 20µs sind?
Andersrum. Ich bin davon ausgegangen, dass mit dem Fototransistor (und einem Arduino) Pulse von 20 µs Pulsbreite gut zu schaffen sind. Der würde von einem "ca. 5%" breiten Rotorblatt erzeugt.
Als Ergebnis kam dann was um die 60'000 RPM raus. Nur so als Größenordnung.
Hab übrigens mal angenommen, dass du das nicht im Flug, sondern auf einem Prüfstand testen würdest. Wenn man aus LED und Transistor eine "normale" Lichtschranke baut, ist Pulsbreite und Rotorblattbreite vermutlich "gleicher" als bei einer Reflexlichtschranke.
Also ich fliege Copter und bei meinem Acro sind 1200kV (1200Umdreh/V) installiert. Das sind Brushless ohne Getriebe. Ich kann mir vorstellen das man mit Getrieben so seine Probleme bekommt "schnell" genug zu Beschleunigen.
Ich fliege diese mit 4S Akku (14.8V Unenn) 14,8*1200=ca 17500 Umdrehungen bei 2 Blättern am Prob sind das 35000 Unterbrechungen pro Minute=> 583,33 pro sekunde was einer Frequenz von 583,33 Hz entspricht. was eine Unterbrechung alle 1.7ms bedeutet und das nicht bei 50%on und 50%off sondern eher 3-4%on und rest off. Und das ist schon ein Ansage.
was eine Unterbrechung alle 1.7ms bedeutet und das nicht bei 50%on und 50%off sondern eher 3-4%on und rest off. Und das ist schon ein Ansage.
Für das Verhältnis milli / micro hat der Normalsterbliche nicht wirklich ein Gefühl sondern muss rechnen.
3% von 1.7 ms sind 50 µs. Da sind wir in der gleichen Größenordnung.
Sollte von einem Phototransistor und einem 16 MHz Controller zu schaffen sein (das war meine Aussage).
Es geht ja nicht um genaue Bestimmung der Pulsbreite, sondern ums Zählen.