Jump to content

borg

Administrators
  • Gesamte Inhalte

    3.550
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    51

Alle erstellten Inhalte von borg

  1. @fjahn: Hier ist erklärt wie man einen Brick flasht: http://www.tinkerforge.com/doc/Software/Brickv.html#brick-firmware-flashing Vor allem auch unten den "note" beachten und atm6124_cdc.inf installieren falls notwendig.
  2. Naja, die Lösung ist ein weiterer Master (die kannst du ja aufeinander stecken). Alternativ halt einer der Motortreiber Bricks, falls du auch einen Motor steuern möchtest .
  3. Hast du den Joystick schonmal im Brick Viewer getestet? Funktioniert der Button da (der Punkt sollte aufleuchten wenn du drückst)?
  4. Das geht über einen Treiber im Betriebssystem der Hardwarenahen Zugriff auf die Protokolle erlaubt, nichts was man selber machen könnte .
  5. Das ist nicht möglich, so funktionieren Sockets nicht. Du kannst dir aber mit Programmen wie Wireshark angucken was auf der Verbindung passiert!
  6. Gut geeignet für Schrittmotren ist dieses Netzteil: http://www.pollin.de/shop/dt/NzMwOTQ2OTk-/Stromversorgung/Netzgeraete/Festspannungs_Netzgeraete/Schaltnetzteil_KSAS1202400500M2_24_V_5_A.html Zum einen passt das zum DC Jack Adapter und zum anderen bringt das auch wirklich die 5A Leistung (oft bringen billige Netzteile die 2A angeben nur 1A o.ä.). Du darfst auch nicht vergessen das so ein Schrittmotor der offiziell 1,5A zieht durchaus auch mal kurzzeitig 4A im Peak ziehen kann! Wenn es wichtig ist das kein Schritt verloren geht muss die Stromversorgung das auch entsprechend hergeben!
  7. borg

    Anzahl der Bricks

    Der maximale Stack besteht aus Step-Down Power Supply + Master (+ 4 Bricklets) + 8 Bricks (+ x Bricklets) + 2 Extensions Support für mehr als eine Extension ist noch nicht implementiert!
  8. Mh, von der Software her sehe ich da leider keine Möglichkeit die Sendeleistung noch zu erhöhen.
  9. Habs mir mal auf die TODO Liste geschrieben mir das genauer anzugucken.
  10. Edit: Ich hatte Blödsinn geschrieben . Das scheint nicht kompatibel zu RFID zu sein.
  11. Das ist echt komisch. Distance IR und Rotary Poti sollten z.B. elektrisch absolut identisch sein für den Brick. Da weiß ich jetzt auch nicht mehr woran das liegen könnte, wenn du die Bricklet Ports brauchst kann ich dir anbieten das wir den IMU Brick austauschen.
  12. Cool! Ist das generiert oder per Hand geschrieben? Hast du was dagegen das wir einen Generator darauf basierend schreiben und die Bindings offiziell aufnehmen?
  13. Der Viewer konfiguriert auf Input wenn du ihn anmachst. Du sagst ja das es funktioniert wenn du den Viewer anmachst. Das lässt mich vermuten dass bisher immer der Viewer auf Input konfiguriert hat .
  14. Ist denn der Port auf input Konfiguriert? Also set_port_configuration('a', 0xFF, 'i', true)
  15. Mh. Geht denn irgendein Bricklet an der IMU oder funktionieren Bricklets einfach gar nicht mit der IMU?
  16. Wir hatten schonmal ein Captcha drin. Der Captcha von der Forensoftware die wir nutzen scheint allerdings nicht besonders gut zu sein, hat nämlich nichts gebracht . Dann haben wir einfach eine simple zu beantwortende Frage reingestellt (X+Y = Z), was für eine ganze weile ruhe gesorgt hat. Allerdings scheinen die Bots jetzt auch da hintergekommen zu sein. Mal schauen was wir als nächstes machen.
  17. That sounds like a good idea indeed. The big question is: What functions on which Bricks/Bricklets would need such a timer. Having a timer (and reset) for every available function would totally blow up the API.
  18. @FabianB: Eigentlich sollte das in der Tat gehen. Welche Version haben denn deine Java Bindings?
  19. borg

    Mein IMU-Brick rotiert

    @ROSEDOLA: Oh, das sehe ich ja jetzt erst, dein Ruby Code tut ja schon genau das gleiche . Aber deine Formeln für x,y,z angle entsprechen irgendwie nicht denen die ich hab: x_angle = int(math.atan2(2.0*(y*z - w*x), 1.0 - 2.0*(x*x + y*y))*180/math.pi) y_angle = int(math.atan2(2.0*(x*z + w*y), 1.0 - 2.0*(x*x + y*y))*180/math.pi) z_angle = int(math.atan2(2.0*(x*y + w*z), 1.0 - 2.0*(x*x + z*z))*180/math.pi)
  20. borg

    Mein IMU-Brick rotiert

    @Plenz: Das neue Beispielprogramm tut was du möchtest, ziemlich sicher. Edit: @ROSEDOLA: Für dich könnte das neue Beispiel auch interessant sein: http://www.tinkerforge.com/doc/Hardware/Bricks/IMU_Brick.html#how-to-get-angles-that-are-independent zumindest die Berechnung von z_angle
  21. borg

    Mein IMU-Brick rotiert

    Habs gerade nochmal getestet, bei mir funktionierts. D.h. der Callback kommt genau einmal? Funktionieren Callbacks denn im Allgemeinen bei dir? Wenn du das Beispiel mal soweit verkleinerst das nur noch die Callbackperiode und der Callback gesetzt wird, gehts dann? Geht das Beispiel aus der Doku: http://www.tinkerforge.com/doc/Software/Bricks/IMU_Brick_Python.html#imu-brick-python-examples?
  22. borg

    Mein IMU-Brick rotiert

    Also du hast einmal das Koordinatensystem was die Quaternionen standardmäßig ausgeben. Die "Nullstellung" kannst du einfach suchen indem du dir die Quaternionen ausgeben lässt und guckst wo 0, 0, 0 rauskommt. Das IMU Brick "aufm Kopf" halten und USB Stecker 45° von Norden nach rechts, so ungefähr. Dieses Koordinatensystem ist aber nicht wichtig, da muss man nicht drin rechnen. Das "Weltkoordinatensystem" hab ich jetzt in dem Beispiel "base system" genannt. Dazu speicherst du einfach die Quaternionen an der Stelle wo du die 0, 0, 0 Position haben willst und multiplizierst die dann immer mit dem konjugierten der Quaternionen die du bekommst. Wo für dich unten/oben ist und auch wo die Himmelsrichtungen sind ist ja abhängig davon wie du die IMU einbaust! Aber wie gesagt, die Umrechnung dafür ist nur eine Quaternionen Multiplikation. Wie man dann zu unabhängigen Winkeln kommt ist auch in dem Beispiel drin. Echte Eulerwinkel (die man nacheinander Anwenden kann um zurück zum Nullpunkt zu kommen) gibt es mit der getOrientation Funktion. IMO sollten damit jetzt schon die meiste notwendige Mathematik abgedeckt sein . Edit: Eins noch: Wie man von Quaternionen zu Rotationsmatrizen kommt (z.B. zur Darstellung in Opengl/DirectX oder zur Berechnung von Gimbal Lock freien Winkel ohne Quaternionen) ist in der API Dokumentation zu den jeweiligen Sprachen beschrieben!
  23. borg

    Mein IMU-Brick rotiert

    Sorry, irgendwas klappt mit dem Programm nicht. Nach "Press key to exit" tut sich überhaupt nichts, erst nach dem Tastendruck kommt einmal "x: 0, y: 0, z:0". Der Code ist ja an sich verständlich, ich kann den Fehler nicht finden. UID angepasst?
  24. borg

    Mein IMU-Brick rotiert

    So, nächster Versuch . In dem neuen Beispiel sollte alles untergebracht sein was hier gefragt war: http://www.tinkerforge.com/doc/Hardware/Bricks/IMU_Brick.html#how-to-get-angles-that-are-independent Erst wird eine Bezugsposition festgelegt, diese Position legt fest wo 0 Grad für alle Winkel sind. Danach sollten die Winkel für x, y und z berechnet werden. Gimbal Locks sind bei +90 und -90° bei allen Achsen, in etwa einem 15° Radius um den Gimbal Lock fangen die Werte an ungenau zu werden und beim Überspringen können Achsen um 180° springen (das ist korrektes verhalten). Wenn das nicht ausreicht oder das zu ungenau ist für eure Anwendung müssen entweder Rotationsmatrizen oder direkt die Quaternionen benutzt werden, da geht kein weg dran vorbei. Hab heute den halben Tag rumprobiert, eine bessere Darstellung kriege ich mit Eulerwinkel nicht hin !
×
×
  • Neu erstellen...