M4ST3R Geschrieben May 8, 2012 at 16:04 Geschrieben May 8, 2012 at 16:04 Hallo zusammen, hier mal ein kleiner Versuchsaufbau von mir, da mich bereits einige gefragt hatten was ich so mache: Komponenten: Master BrickStep Down Power SupplyServo BrickIO16 BrickletJoystick Bricklet2x Turnigy 25A BSC2x Turnigy BL Motor 1200 kv 150w2x Master Airscrew CombatPaar LEDsAuto Batterie 12 V 45Ah Paar Kabel Über das Joystick Bricklet lassen sich die beiden Motoren hochfahren. Allerdings ist bisher nicht das Maximum eingestellt, weil die Motoren doch etwas mehr Leistung bringen als erwartet mit der Schraube Unter die Motoren sind jeweils Styroporstücke gesteckt damit die Propeller nicht gleich umkippen. Sobald meine Servo bzw. ESC Verlängerungen da sind werde ich den ersten Flugversuch starten, momentan ist mir das zu nah an meinen Bricks. Da es vermutlich sehr unkontrolliert durch die gegen fliegen wird Für die Strom Anbindung ist das Power Brick mit einem der schwarzen Zweipinstecker verbunden worden. Die ESC habe ich über Stecker aus einem Computer verbunden (ein Y-Stecker musste dafür her halten) Sind zwar eigentlich nicht für höhere Ströme gedacht, aber funktioniert soweit super. Zudem bieten sie 4 Kabelverbinder und sind damit optimal für 2 ESC (3 Stecker würden auch reichen..) So ich weiß nicht ob das hier jemandem für irgendetwas hilft. Aber vielleicht hat jemand vor was mit ESC zu machen. WICHTIG: wenn euer ESC BEC bestückt ist, unbedingt das rote Kabel entfernen (siehe Doku) Bisher scheint es allerdings mit einem der Motoren ein Problem zu geben. Der dreht zwischendurch unkontrolliert in "Stößen" hoch. Hab allerdings noch keine Ahnung wodran das liegt. Zitieren
M4ST3R Geschrieben May 8, 2012 at 23:54 Autor Geschrieben May 8, 2012 at 23:54 So hier mal der Java Source Code. Die Compilierte Version ist leider größer als 192 Kb daher kann ich die nicht anhängen. Daher nur der Code im Anhang. (@TF 192 kb? Könnt ihr das nicht erhöhen?) Die Belegung: Servo Brick 0,6IO16 Bricklet a0 = blau, a1= rot, a2= weiß (auf 5V aber das ist egal) Die Connection ist als Singleton Pattern umgesetzt, ist vielleicht für jemanden interessant, der jedes Mal eine neue Verbindung zu den Bricks / Bricklets aufbaut. Dürfte etwas Performance in die Sache bringen. Wenn jemand Anmerkungen zum Code, Programm oder sonstigem hat einfach einen Kommentar oder PM an mich. Der Code kann selbstverständliche verändert und uneingeschränkt genutzt werden FlyApplikation.7z Zitieren
AuronX Geschrieben May 9, 2012 at 06:38 Geschrieben May 9, 2012 at 06:38 Habe nur kurz in die Klasse geschaut wo du die Servos ansteuerst. Es sieht so aus als würden deine Motoren aus sein, wenn die Servos voll links eingeschlagen sind. Dafür rufst du setPosition mit -9000 auf. In der Doku steht, dass du diesen Bereich aber frei wählen kannst, dann wären die Zahlen auch intuitiver. Zum Beispiel: setPosition(0) <-- Motor steht setPosition(18000) <-- maximale Drehzahl (hier kannst du auch was anderes nehmen ^^) Hab grad geschaut, die FUnktion dazu heißt setDegree() Zitieren
M4ST3R Geschrieben May 9, 2012 at 09:29 Autor Geschrieben May 9, 2012 at 09:29 oh super, dass du da rein geschaut hast. Du hast recht mit setDegree() kann man an dieser Stelle die "0" Position des Motors verschieben. Allerdings ist das auch ein wenig mit try and error verbunden. Ganz auf 0 komme ich nicht, was sicherlich auch mit dem verbauten Material zusammen hängt. Bei einem setDegree (0, -3510, 18000) läuft der Motor weiter. Stoppe ich ihn und setz den Wert so, läuft er aber nicht los. So ganz genau kann ich mir das alles noch nicht erklären, aber ich arbeite daran Man kann normalerweise auch den ESC auf die vorgegebene Pulsweite eichen. Macht man mit der Fernbedienung ja auch. Allerdings sind das meine ersten BL Motoren + Regler da braucht das noch etwas Zeit bis ich das alles verstanden habe. Zitieren
AuronX Geschrieben May 9, 2012 at 09:47 Geschrieben May 9, 2012 at 09:47 Bei einem setDegree (0, -3510, 18000) läuft der Motor weiter. Stoppe ich ihn und setz den Wert so, läuft er aber nicht los. Also ein ähnliches Phänomen kenne ich von Gehäuselüftern (die ja auch nur per PWM gesteuert werden), da ist das Problem, dass das Anlaufen schwerer ist als das "laufen lassen", denn der Rotor ist ja dann schon in Schwung und kann seine Trägheit nutzen. Deswegen ist es tatsächlich möglich nach dem Anlaufen des Motors die Drehzahl wieder zu reduzieren. Ist natürlich tricky, weil wenn du jetzt mit dem Finger den Rotor stoppst (bei Lüftern geht das ohne Verletzung ^^) läuft er wieder nicht an. Man kann normalerweise auch den ESC auf die vorgegebene Pulsweite eichen. Bei guten ESCs geht das definitiv, aber ich besitze auch welche die das nicht können ^^ Zitieren
Plenz Geschrieben May 9, 2012 at 10:11 Geschrieben May 9, 2012 at 10:11 da ist das Problem, dass das Anlaufen schwerer ist als das "laufen lassen", denn der Rotor ist ja dann schon in Schwung und kann seine Trägheit nutzen. Nein, der Grund ist, dass die Haftreibung immer größer ist als die Gleitreibung. Außer man benutzt Kugellager. Zitieren
M4ST3R Geschrieben May 9, 2012 at 13:38 Autor Geschrieben May 9, 2012 at 13:38 Ich denke solange man keine Möglichkeit hat die Drehzahl des Motors abzufragen, wird man dafür keine Lösung bekommen. Wäre natürlich toll, wenn das möglich wäre, da ich ja zwei Motoren gleichzeitig betreibe. Ist alles schon merkwürdig, manchmal läuft der Motor auch langsam falsch herum an. Was natürlich nicht wirklich funktioniert... Möglicherweise der billigen Hardware geschuldet Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.