- LiFePO4 Speicher Test         
Seite 3 von 9 ErsteErste 12345 ... LetzteLetzte
Ergebnis 21 bis 30 von 85

Thema: NIBO2 - Test Bodensensoren

  1. #21
    Erfahrener Benutzer Fleißiges Mitglied Avatar von elektrolutz
    Registriert seit
    20.04.2010
    Ort
    Werl
    Alter
    66
    Beiträge
    139
    Anzeige

    Powerstation Test
    Hallo Lisbeth2010,

    Umfang = Durchmesser * Pi
    Bei dir also U = 35mm * 3,14 = 110mm.

    Hast du andere Räder auf deinem Nibo2?
    Bei meinem Nibo2 ist bei originalen Reifen D = 44mm => U = 138mm.
    Oder meinst du den Nibobee mit D = 37mm => U = 116mm?
    Gruß aus Werl
    elektrolutz

    Theorie ist, wenn man weiß, wie alles funktioniert. Praxis ist, wenn alles klappt und keiner weiß warum!

  2. #22
    Benutzer Stammmitglied
    Registriert seit
    17.05.2010
    Beiträge
    37
    Hallo Elektrolutz,
    ich habe doch den "ausgestorbenen" Nibo (1). Der hat einen Radurchmesser von 35 mm. Ich frag nur deshalb, weil 123_Hero 40 Ticks pro Sekunde mit 14 cm/s angibt. Wenn aber 20 Ticks eine Umdrehung sind, dann sind 40 Ticks/s = 2*138mm/s = 27.6 cm/s bei Nibo 2 und nicht 14 cm/s oder nicht?
    Was weiß man über den "Bremsweg"?
    Viele Grüße
    Lisbeth2010

  3. #23
    Benutzer Stammmitglied
    Registriert seit
    17.05.2010
    Beiträge
    37
    Hallo, zum Thema Thead: man kann als BS mal freeRTOS einsetzen. Hab ich mal vor ein paar Jahren beim Asuro gesehen, der den ATmega8 verwendet. Hab ich aber für den Nibo (noch) nicht ausprobiert. Wär aber eigentlich ganz interessant...
    Viele Grüße
    Lisbeth2010

  4. #24
    Hero_123
    Gast
    Hi

    @oberallgeier

    danke für die Info, ich habe aber 2 Probleme
    -die ISP des Atmega88 ist nicht zugänglich (da müßte ich an der Plantine und der SW rumbasteln, wobei die SW nicht das ganz große Problem sein dürfte)
    - ich bin - was das Löten und Basteln mit SMDs angeht - ein "blutiger Anfänger" (und habe derzeit nicht mal die Lötausrüstung dafür und muß mir auch eine entsprechende Lupenausrüstung zulegen)

    aber deine Lösung sieht sehr interessant aus




    @ Lisbeth2010

    in der Doku der nibolib steht ( bei copro_setSpeed(...):

    - 40 Ticks entsprechen 1 Radumdrehung
    - 29 Ticks/s fahren (= 10cm/s) -> bei 40 Ticks/s = 13, 8cm/s(= ca 14cm/s)

    wenn er somit mit 20 Ticks/s macht -> fährt er ca 7cm/s

    nb - habe den Raddruchmesser auch gemessen und daraus den Umfang ermittelt - Vertrauen ist gut, Kontrolle ist besser

    Ich habe nicht geschrieben, daß 20 Ticks 1 Radumdrehung sind; klar ist nur, daß 40 Ticks = 1 Radumdrehung = ca 14cm (genau 13,8 cm, aber die 2mm habe ich mir geschenkt)

    Bremsweg - man muß nach erkennen des Absturzes
    - noch die zurückgelegten Ticks (per odometriedaten) einlesen (zählen), die der Nibo macht, bis er steht, diese speichern und dann anzeigen (Display oder per UART an den PC senden)...
    - die Zeit messen, die vergeht von "Absturzerkennung" bis Stillstand (die Ticks ändern sich nicht mehr)
    -> dann weiß man, wie weit er noch gefahren ist und wann er zum Stllstand gekommen ist (so müßte es gehen..)
    wobei der zurückgelegte Bremsweg (zumindest nach meinen Messungen) von der Anfangsgeschwindigkeit abhängt - wie im realen Leben!!!! Je schneller, desto mehr Bremsweg!!

    hast Du den "Bremsweg" deines NIBO1 mal gemessen?

    mfg

    Hero_123

  5. #25
    Hero_123
    Gast
    Hi Lisbeth2010

    Thema thread - habe mir mal die AVR-Threads library 1.3 von Dean Ferreyra runtergeladen und installiert, bin jedoch noch nicht zum Testen gekommen, da zuwenig Zeit

    ein anderes BS wie z.B. freeRTOS - ich habe da mal ne Abhandlung gelesen, da wird davon abgeraten, da zuviel Speicher für diese Prozesse benutzt wird (s. u.a. die Bachelorarbeit von P. Teske "Entwicklung einer Bibliothek als Basis für die Programmierung und Steuerung des c'bot", S/30)

    Du scheinst ja c-mässig "sehr gut drauf" zu sein

    mfg

    Hero_123

  6. #26
    Erfahrener Benutzer Fleißiges Mitglied Avatar von elektrolutz
    Registriert seit
    20.04.2010
    Ort
    Werl
    Alter
    66
    Beiträge
    139
    Hallo zusammen,

    was ist denn nun richtig????
    In der Doku der NiboLib 2.8 steht, wie schon oben zitiert: "40 Ticks entsprechen 1 Radumdrehung"
    Unter http://www.nibo-roboter.de/wiki/Moto...irmware <br /> liest man: "...ein Tick ist 1/20 einer kompletten Radumdrehung."


    Welche Werte sind denn zu "uint8_t copro_setSpeedParameters ( int8_t kp, int8_t ki, int8_t kd )" eingesetzt? Hat denn schon mal jemand die Regler optimiert? Da die Motore sicherlich einer gewissen Fertigungsstreuung unterliegen und die selbst zusammengelötete Getriebelagerungen auch "kleinen" Streuungen unterliegen, darf man nicht voraussetzten, das die Regler werksseitig auf idealen Werten stehen - das dürft bei jedem Nibo2 anders sein. Je nach Bodenbeschaffenheit kaben die Räder Schlupf und das Gleitpad unterschiedliche Bremswirkung.


    Grundsätzlich bekannt ist, dass die Printanweisungen unter C "ZEIT" kosten, siehe Erkenntnis, dass ohne Grafik-Befehle der Bremsweg kürzer ist. (Beim Fahren das ist Displayablesen doch nicht wirklich erforderlich, oder? Mögliche Anwendung: Werte nur bei gedrückter linker Taste zur Anzeige bringen.)


    Die Motorregelung läuft auf dem CoProz um nicht vom Programm auf dem Hauptproz zeitlich gestört zu werden. Da macht es wenig Sinn ein wichtiges STOP-Signal im langsamen Programmteil zu ermittel, um es dann irgendwann zum Motorregler weiterzureichen. Da die Bodensensoren direkt an den Hauptproz angeschlossen sind, kann der CoProz diese nicht direkt abfragen und ist auf Signale vom Hauptprozessor angewiesen. Um möglichst kurze Reaktionszeiten zu erreichen bleibt also nur die Einbettung in eine Interrupt-Routine.
    Gruß aus Werl
    elektrolutz

    Theorie ist, wenn man weiß, wie alles funktioniert. Praxis ist, wenn alles klappt und keiner weiß warum!

  7. #27
    Benutzer Stammmitglied
    Registriert seit
    17.05.2010
    Beiträge
    37
    Hallo,
    der elektrolutz hat ja so recht!
    Frage 1: Hat jemand das Problem mit dem 1. (nullten) AD-Wert auch?
    Frage 2: Die Clock-Division beim Timer 2 ist zumindest in der Simulation des ATmega128 falsch. weiß da jemand was darüber oder sollte ich mal in anderen Foren suchen?
    Frage 3: Hat jemand ein Beispiel für das Auslesen der Ticks, die in der ISR noch gemessen werden?
    Sonst noch: ja, der Nibo (1) hat andere Räder als der Nibo 2 und offensichtlich auch andere Ticks pro Umdrehung.
    Liebe Grüße
    Lisbeth

  8. #28
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.678
    Hallo Lisbeth.
    Zitat Zitat von Lisbeth2010
    ... Frage 1: Hat jemand das Problem mit dem 1. (nullten) AD-Wert auch ...
    Die schlechten Nachrichten zuerst. Ich habe keine Erfahrung mit den Nibo´s, einige mit dem Nibobee aber keine mit dem mega128. Es wird schlechter: in den Datenblättern der AVR-Controller (die ich gelesen hatte) steht meist etwas über mangelhafte Vertrauenswürdigkeit des ersten Messwertes einer Wandlung.
    Zitat Zitat von A[size=1
    [/size]VR-doc zum m328p]22. Analog Comparator
    • Bit 6 – ACBG: Analog Comparator Bandgap Select

    When this bit is set ... certain time for the voltage to stabilize. If not stabilized, the first conversion may give a wrong value. See ...
    Und diese Warnung steht bei mehreren Bedingungen. Eine übliche Verfahrensweise, die ich in diesem Forum gelernt habe: ersten Messwert (grundsätzlich) wegwerfen.

    Die gute Nachricht: ich messe öfters mit dem ADC. Mit recht gutem Erfolg, z.B. bei schnellen Wandlungen in einer Balancier-Regelung.
    Ciao sagt der JoeamBerg

  9. #29
    Benutzer Stammmitglied
    Registriert seit
    17.05.2010
    Beiträge
    37
    Hi Jo,
    in einem anderen Projekt haben wir eine bestimmte Zeit nach Setzen des channels gewartet(ungefähr 10 µs). Dann paßt's. Ich probier das morgen mal aus.
    Danke für die Antwort.
    Lisbeth2010

  10. #30
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.678
    Zitat Zitat von Lisbeth2010
    ... in einem anderen Projekt haben wir ... gewartet(ungefähr 10 µs) ...
    Ungefähr ist nicht dasselbe wie ungefähr-lich *ggg*.
    Zitat Zitat von At[size=1
    [/size]mel, im gleichen doc wie oben,]23.4 Prescaling and Conversion Timing
    ... A normal conversion takes 13 ADC clock cycles. The first conversion after the ADC is switched on (ADEN in ADCSRA is set) takes 25 ADC clock cycles in order to initialize the analog circuitry.
    When the bandgap reference voltage is used as input to the ADC, it will take a certain time for the voltage to stabilize. If not stabilized, the first value read after the first conversion may be wrong ...
    Da kein vernünftiger Hardwarebauer das Rad jedes Mal neu erfindet, dürfte das auch für Deine(n) Controller passen.

    Nachtrag: ! ADC clock cycles !
    Ciao sagt der JoeamBerg

Seite 3 von 9 ErsteErste 12345 ... LetzteLetzte

Berechtigungen

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

LiFePO4 Speicher Test