-         

Seite 1 von 6 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 53

Thema: erweiterte ASURO Bibliothek

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    01.12.2004
    Ort
    Buxtehude
    Beiträge
    70

    erweiterte ASURO Bibliothek

    Anzeige

    Hallo,
    mir ist aufgefallen, daß mit den mitgelieferten Funktionen in asuro.h es schwer ist, gerade für Anfänger, gute Programme zu schreiben. Eine erweiterte Bibliothek kann da hilfreich sein. Natürlich muss dabei auf den kleinen Speicher geachtet werden. Ich würde mich freuen, wenn hier Verbesserungen zusammengetragen werden. Ich hab schon mal einen Anfang gemacht und 3 hilfreiche Funktionen in der angefügten Datei zusammengestellt.
    1. Encoder_Init()
    initialisiert einen Hintergrund Odometrie-Zähler
    2. Encoder Signal(Interrupt) routine
    setzt ständig die neuen Werte.
    In der globolen Variable encoder(LEFT) und encoder(RIGHT) steht immer der aktuelle Zählerwert. Zurückgesetz wird mit z.B. encoder(LEFT)=0
    3. Msleep(int Dauer) wartet die angegebene Zeit in ms.

    als weitere Funktionen wünsche ich mr z.B. eine einfache formatierte Ausgabe und ein simples Multitasking oder watchdog-handling. Eine Verbesserung von PollSwitch() mit einer Rückgabe als BitFeld.......
    Übrigens: Kann mir jemand StartSwitch(), StopSwitch() aus asuro.c erklären ?
    Ich hoffe auf rege Beteiligung (was hälst Du davon Henk?)
    Gruß
    Weja
    Angehängte Dateien Angehängte Dateien
    • Dateityp: c aslib.c (2,3 KB, 474x aufgerufen)

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    01.12.2004
    Ort
    Buxtehude
    Beiträge
    70
    schätze mal, ich hab nicht genau genug erklärt was ich mir vorstelle oder der Sinn der obigen Funktionen ist nicht klar.
    Ich programmiere den Asuro mit Kindern ab 11 Jahren, und die sollen sich nicht mit dem Innenleben des Controllers herumschlagen.
    Wir möchten eine Bibliothek benutzen, die auch andere verwenden, damit man Ideen besser austauschen kann ("Roboternetz Asuro Bib"). Arexx bezieht sich in seiner Dokumentation auf diese Forum, daher hoffe ich auf Mitarbeit. Eine Idee hab ich schon im Thema "Asuro eure Programme"
    gefunden (Prozentangabe für Speed).

    Man kann mit den Funktionen aus der Bibliothek von oben den Asuro dynamisch geradeaus fahren lassen, da stören auch keine Teppichkanten oder das kurze Bremsen eines Rades. Das geht z.B.so:
    ________________________________________________
    #include "asuro.h"
    #include "aslib.c"
    int main(void)
    { int diff;
    Init();
    Encoder_Init();
    MotorDir(FWD,FWD);
    MotorSpeed(175,175);
    while(1){
    div=encoder[RIGHT]-encoder[LEFT];
    MotorSpeed(175+diff,175-diff);}
    while(1);
    return 0;
    }
    __________________________________________________ _
    Ich danke hier schonmal allen die sich beteiligen.
    Weja

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    01.12.2004
    Ort
    Buxtehude
    Beiträge
    70
    sorry, kleiner Fehler in der 10.Zeile muß heissen:
    diff=encoder[RIGHT]-encoder[LEFT]; // diff statt div

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    06.03.2005
    Alter
    52
    Beiträge
    28
    Hallo,

    ích habe meinen Asuro erst seit 2 Tagen.

    Bin deswegen für Programmierhilfen sehr dankbar.

    Gruß, Foxbat

  5. #5
    Gast
    Leider haben wir z.Z.nur 1 Asuro zur Verfügung, aber unsere neuen Befehle sollen natürlich allgemeingültig sein. Deshalb kopiere bitte die Datei aslib.c in dein Asuro-Arbeitsverzeichnis und probiere einmal das Programm zum geradeausfahren aus und teile mit, ob es einwandfrei funktioniert.
    Schreib auch, wenn Du sonst wo auf Probleme bei der Programmierung stösst. Vielleicht passt das Problem ja hier mit rein.
    Gruß, Weja

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    06.03.2005
    Alter
    52
    Beiträge
    28
    Danke, ich werde es am Sonntag mal testen.

    Poste das Ergebnis dann hier.

    Gruß, Foxbat

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    05.03.2005
    Beiträge
    36

    Test

    Hi Leutz,

    hab das Progrämmchen gerade ausprobiert! Hatte 200x soviel Codezeilen und es NICHT hinbekommen, was mal wieder beweist, daß die einfachsten Lösungen meistens die besseren sind... *g*.

    Weiter so...

    cu

    Banzai

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    01.12.2004
    Ort
    Buxtehude
    Beiträge
    70
    Vielen Dank für die Rückmeldung. Es freut mich sehr, zu lesen, dass das Programm auch mit min. einem anderem Asuro funktioniert. (Was ist mit den anderen 38 Downloads?)
    Ich teste gerade verbesserte Zeitfunktionen und Tastenabfrage. Wie man das alles gleichzeitig und einfach nutzen kann stelle ich wohl morgen hier vor.

    Gruß
    Weja

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    24.03.2005
    Beiträge
    5
    Hallo Weja,

    in dem Int-Auswertung: SIGNAL (SIG_ADC)
    vergleichst du den ADCH mit dem dez-Wert "160".
    Woher kommt dieser Wert? Habe lange drann rumgerechnet aber es macht für mich einfach keinen Sinn. Ich hätte wohl mit "128" verglichen.

    Gruß Chris

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    01.12.2004
    Ort
    Buxtehude
    Beiträge
    70
    Hallo Chris,
    den Wert habe ich nicht errechnet, sondern experientell ermittelt.
    Durch immer vorhandenes Umgebungslicht liegt der Mittelwert eben etwas höher. Du kannst ja mal 128 einsetzen und prüfen, ob es einen Unterschied macht. Bei einer Abschirmung der Odometrie Sensoren ist 128 bestimmt besser.
    Gruß
    Weja

Seite 1 von 6 123 ... LetzteLetzte

Berechtigungen

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