- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 15

Thema: Projekt: FreeRTos auf RP6

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie Avatar von SlyD
    Registriert seit
    27.11.2003
    Ort
    Paderborn
    Alter
    40
    Beiträge
    1.516
    Hallo,

    dafür sind in der Version da oben noch zu viel Macken drin. Ich werde aber demnächst eine Version mit kleinem Testprogramm rausgeben..
    OK.

    also Rechenoperationen mit Kommazahlen (x * 0.25) sind immer komplizierter
    Rolf, das kommt in der RP6Lib doch gar nicht vor!
    Intern arbeitet die Lib rein mit Encoder Ticks, die Makros machen das Programm nur lesbarer.
    Und die Makros werden schon vom Präprozessor berechnet und in Integer umgewandelt.
    --> wenn man tatsächlich im AVR Programm die Einheiten konvertieren möchte, dann skaliert man das halt zuvor um Faktor 100.

    Nachkommastellen hat man auch bei nahezu allen anderen möglichen Drehgeber Auflösungen bei gegebener Übersetzung und Raddurchmesser.
    Es wird eher noch schlimmer. Immerhin hat man so exakt 625 Zähler pro Umdrehung und nicht 312,5 oder 208,333333 oder 156,25 oder sowas krummes

    Selbst wenn sich zufällig alles für 1mm pro Tick ergeben würde: weicht der Raddurchmesser leicht ab, haste doch wieder 0,984mm :-/


    Daher weis ich aber auch, das es dafür keiner neuer Formen sondern nur Änderungen an den vorhandenen Formen bedarf - die nicht so teuer sind.
    Ne um das gescheit einzubauen wären schon noch ein paar weitere Änderungen gemacht worden wo man nicht so einfach die Form für das Chassis hätte ändern können.


    was man von dem Antriebssystem im RP6 erwarten kann..
    139 Euro sind gar nix im Robotikbereich. Ich hab schon mit professionellen Systemen (zig tausend Euro) gearbeitet und entwickle gerade selbst was in dem Bereich. Auch da hat man mit zig Problemen zu kämpfen und nichts ist genau, da muss sogar sehr viel mit Wahrscheinlichkeiten gearbeitet werden um die wahrscheinlichste Roboterposition zu bestimmen. Niemand verlässt sich dafür auf Odometrie, die ist für die Motorregelung da und als grober Anhaltspunkt, dass sich der Roboter bewegt.
    Sobald man offroad fährt ist es damit eh vorbei.


    139 Euro zahlt man bei richtigen Plattformen übrigens mal locker für einen einzigen Motor, ohne alles
    Der RP6 ist für Hobbyanwender, Schüler und Studenten gedacht und daher möglichst kostengünstig gestaltet.


    > das magels Getriebe kein Verschleiß entsteht.

    Nur ist der Energiebedarf meist höher, die Teile sind recht schwer und werden unhandlich groß wenn das Drehmoment ähnlich
    wie bei einem kleinen Motor mit Getriebe sein soll.
    Der viel höhere Preis kommt auch noch dazu
    Drehgeber braucht man auch da, es können ja Schritte verloren gehen.
    Bringt fast nur Nachteile für einen Roboter wie den RP6.
    Und sollte doch mal das Getriebe draufgehen (was schon einige Zeit dauern wird): Ersatz kostet bei Conrad 3,95 Euro inkl. Encoder Musterscheiben.

    Die Bauteile im RP6 wurden nicht per Zufall ausgewählt

    MfG,
    SlyD

  2. #2
    Erfahrener Benutzer Roboter-Spezialist Avatar von RolfD
    Registriert seit
    07.02.2011
    Beiträge
    414
    Eine recht wichtige Info am Rande... für Leute die mit freeRTOS spielen...
    Im Port ATMega323, welchen ich auch hier nutze, fehlt in portmacro.h eine definition für "portPOINTER_SIZE_TYPE"
    Diese wird bei nichtvorhandensein einer Definition in FreeRTOS.h mit
    #ifndef portPOINTER_SIZE_TYPE
    #define portPOINTER_SIZE_TYPE unsigned long
    #endif
    gesetzt.
    Um das zu verhindern (der ATmega32 hat ja nur ein 16 bit Pointer) sollte man daher
    #define portPOINTER_SIZE_TYPE uintptr_t
    in die portmacro.h und da in der Nähe von den /* Type definitions. */ setzen.
    Zum einen beseitigt das 2 Warnings, zum anderen scheint sich das auf die Stackberechnung in pxTopOfStack aus task.c auszuwirken.

    @Slyd
    139 Euro sind gar nix im Robotikbereich.
    Ich weis das man da auch sehr viel mehr ausgeben kann... mir gehts auch nicht um die Qualität des RP6... die ist ok.
    Wer stabilere Ritzel braucht, kann sich ja bei nem 3D-Druckdienst im Web Titanzahnräder anfertigen lassen... die kosten inzwischen auch nicht mehr so viel mehr als die Plastikräder vom großen C.
    --

    Dann muss ich ein Fehler in eigener Sache korrigieren... bei den Berechnungen für die ENCODER_RESOLUTION entstehen Fehler im Bereich von 2 10ntel.. nicht 2 100stel pro Enc.-Step. Da dies doch nennenswert mehr als oben berechnet ist, sollte man die Berechnungen entgegen meiner Aussage oben mit ENCODER_RESOLUTION ausführen und nicht nur einfach >>2 rechnen.

    Ansonsten arbeite ich weiter an der Geschichte... nachdem ich feststellte, das die Writechar Funktion den Prozessor in der ISR blockt bis der UART frei ist "while (!(UCSRA & (1<<UDRE)));" , hab ich nun erst mal den Ersatz der UART Funktionen durch gequeute ISR Übertragung vorgezogen. Bei der Fehlersuche bin ich auch auf portPOINTER_SIZE_TYPE gestoßen. Der PID Regler tuts... wobei ich da bald am verzweifeln war... aber egal... die move und movecirc Funktion auch nachdem ich da noch paar Fehler fand.
    Bis jetzt ist aber noch nichts so Reif, das man es zeigen kann.. daher .. und auch wegen eines PC-Virus den ich mir die Tage einfing.. dauerts noch bissel bis zur nächsten Veröffentlichung des aktuellen Quellcodes.

    LG Rolf
    Sind Sie auch ambivalent?

  3. #3
    Max Web
    Gast
    Hallo RolfD,

    wieder einmal ein klasse Projekt!
    Wie ist denn der momentane Stand?
    Sehr praktisch wäre ein Versionsverwaltungssystem wie SVN/Git etc: So geht kein Code durch Viren verloren und alle am Projekt Interessierten können jederzeit den aktuellen Code einsehen.

    Grüße,

    Max

  4. #4
    Erfahrener Benutzer Roboter-Spezialist Avatar von RolfD
    Registriert seit
    07.02.2011
    Beiträge
    414
    Hallo Max, leider schleift es etwas aber ich bin ansich noch dran.
    SVN/Git (warscheinlich über Surgeforge) überleg ich mir nach der ersten wirklich vorzeigbaren Release.
    Zur Zeit versuche ich die UART Lib anzupassen und da gibts noch ein Problem .. danach kann das aber mal begutachtet werden.

    LG Rolf
    Sind Sie auch ambivalent?

  5. #5
    Erfahrener Benutzer Roboter-Spezialist Avatar von RolfD
    Registriert seit
    07.02.2011
    Beiträge
    414
    Ich werde das Projekt erst mal auf Eis legen, ich hab leider grade zu viel anders um die Ohren als das ich da z.Z. effektiv dran arbeiten könnte. Als Zusammenfassung kann ich jedoch sagen, das RTOS auf der Base läuft und bei 500 Ticks/sec auch eine gute Performance bringt.
    Allerdings scheint es da ein Problem mit dem Port für den Atmega32 in Verbindung mit Interrupts zu geben, welches ich seid einiger Zeit erfolglos versuche zu jagen. Da ich z.Z. kein JTAG/ISP Debugger habe, ist es aufwändig und ein Fischen im Trüben.
    Für die meisten dürfte freeRTOS auch zu komplex und klobig sein, als das es sich lohnt da so mehr Zeit zu investieren. Es gibt jedenfalls diverse einfache Scheduler, die vermutlich besser (weil kleiner) für den RP6 geeignet, und einfacher zu handhaben sind. Als Empfehlung sei z.b. mal Nano OS genannt. (wo ich auch schon weiter gekommen bin als mit freeRTOS) http://sourceforge.net/projects/nanoos/

    Aus einem "Abfallprodukt" der Arbeit mit dem freeRTOS entsteht jedoch z.B. grade ein Eigenbau Gerätetreiber Konzept für den RP6 bzw. ATmega32, welches nicht an freeRTOS oder sonstige OS'e gebunden ist. Es dürfte auch für die RP6Lib Nutzer interssant sein.

    Wenn also jemand am freeRTOS weiter machen möchte, nur zu... irgendwann werde ich mich auch wieder dran setzen.
    LG Rolf
    Sind Sie auch ambivalent?

  6. #6
    Max Web
    Gast
    Hallo Rolf,

    schade, dass Du das Projekt nicht weiter verfolgen kannst. Ich bin weiterhin sehr interessiert an Deinem letzten Stand, da ich ebenfalls ein FreeRTOS auf dem RP6 plane - allerdings erst dann, wenn mein RoboBridge-Projekt abgeschlossen ist.
    Könntest Du Deinen aktuellen Stand vielleicht irgendwo hochladen?

    Grüße,

    Max

  7. #7
    Erfahrener Benutzer Roboter-Spezialist Avatar von RolfD
    Registriert seit
    07.02.2011
    Beiträge
    414
    @Max
    PN
    LG Rolf
    Sind Sie auch ambivalent?

Ähnliche Themen

  1. FreeRTos auf RP6?
    Von RolfD im Forum Robby RP6
    Antworten: 11
    Letzter Beitrag: 29.07.2012, 22:58
  2. Xmega Eval board Projekt (Foren Projekt)
    Von Rasieel im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 65
    Letzter Beitrag: 26.01.2010, 12:49
  3. Das Projekt II
    Von PhilippW im Forum Staubsaugerroboter / Reinigungs- und Rasenmähroboter
    Antworten: 93
    Letzter Beitrag: 26.07.2007, 11:50
  4. freeRTOS.org
    Von Superhirn im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 24.11.2006, 19:07
  5. Projekt
    Von Terfagter im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 7
    Letzter Beitrag: 25.11.2004, 20:47

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen