- fchao-Sinus-Wechselrichter AliExpress         
Seite 4 von 5 ErsteErste ... 2345 LetzteLetzte
Ergebnis 31 bis 40 von 47

Thema: ASURO für Robotereinsteiger

  1. #31
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    53
    Beiträge
    2.236
    Anzeige

    Powerstation Test
    Hallo Bremer,
    Code hab ich nicht gefunden, aber schnell was zusammengetippt:

    Code:
    #include <stdlib.h>
    #include <string.h>
    #include "asuro.h"
    int main(void) {
    Init();
    int data[2];
    char buffer[10];
    
    
    while(1) {
    	OdometrieData(data);
    itoa(data[0],buffer,10);
    	SerWrite(buffer,strlen(buffer));
    	SerWrite("\n",1);
    }
    
    return 0;
    }
    Bau Dir eine Schleife noch dazu, die auch das rechte Rad abfragt, und vielleicht eine Pause zwischen.

    Gruß Sebastian

    P.S.

    Wenn ich an meinem linkem Rad drehe (mit der Odoscheibe drauf bekomme ich werte zwischen 350-750 je nachdem ob schwarz oder weiß vor den Sensoren ist.

  2. #32
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    53
    Beiträge
    2.236
    nochmal was,
    Ich glaube das wurde hier schon irgendwo in Forum behandelt, aber ich erkläre es Dir nochmal.
    Die ausgelesenen Werte liegen zwar schön in int vor, aber Terminal braucht ASCII Zeichen um sie anzuzeigen.
    Deswegen muß man die int Zahl in ein String umwandeln, und das macht hier die itoa Funktion.

    Gruß Sebastian

    EDIT:
    Ich sehe es gerade....
    Ich glaub ich habe zu wenig mit Wejas erweiterten Bibliothek gearbeitet

    Dort ist die Funktion PrintInt drin, die genau das selbe macht, also zum Vergleich, für später
    Wejas Bibliothek benutzen.

  3. #33
    Benutzer Stammmitglied
    Registriert seit
    19.07.2005
    Ort
    Bremen
    Alter
    40
    Beiträge
    45
    Moin,
    ertsmal Danke für den Code. Ich habe auch ein kleines Programm geschrieben, dass hat mir immer Werte um die 29000 rausgegeben.
    Die Werte haben sich zwar verändert, wenn man die Sensoren betätigt hat aber damit konnte man nicht viel anfangen. In den Code, den Du geschickt hast, habe ich noch eine zweite Schleife eingebaut. ich bekomme damit immer den Wert 1023, egal was ich mache mit den Sensoren. Ich bin immer noch der Meinung, dass meine rechte Reflexlichtschranke einen weg hat. Ich muss die maldurch messen.
    Anbei der Code für das Programm.

    mfG Sebastian

    Code:
    /*************************************************************************** 
    *                                                                          * 
    *   Dieses Programm ist für den ASURO Roboter                              * 
    *                                                                          * 
    *   Odometriedaten über die Terminalprogramm auslesen                      * 
    *                                                                          * 
    ***************************************************************************/ 
    
    
    /*************************************************************************** 
    *                                                                          * 
    *   Mit diesem Programm sollen die Werte der Odometriesensoren ausgelesen  *
    *   werden und über die IR-Schnittstelle an den Computer übergeben werden, *
    *   damit man eventuelle Fehler oder ein Nichtfunktionieren der Sensoren   * 
    *   erkennen und beheben kann. Vor dem aus lesen müssen die Räder und die  *
    *   Encoderscheiben entfernt werden. Außerdem muss das Windows Terminal-   *
    *   programm gestartet werden. Das Terminalprogramm zeigt abwechselnd die  *
    *   Werte von der linken und der rechten Seite an.                         *
    *                                                                          *
    ***************************************************************************/ 
    
    
    /***************************************************************************  
    * 
    *   unsigned int data[2]; = Speicher für Odometriesensoren reservieren 
    * 
    *   data[0] = linker Sensor (T11), data[1] = rechter Sensor (T12)
    * 
    *   Autor: Sebastian Reiff ,2005
    * 
    ****************************************************************************/ 
    
    #include <stdlib.h> 
    #include <string.h> 
    #include "asuro.h" 
    
    int main(void) { 
    Init(); 
    int data[2]; 
    char buffer[10]; 
    
    
    while(1) { 
       OdometrieData(data); 
       itoa(data[0],buffer,10); 
       SerWrite(buffer,strlen(buffer)); 
       SerWrite("\n",1); 
       Msleep(500);
       itoa(data[1],buffer,10); 
       SerWrite(buffer,strlen(buffer)); 
       SerWrite("\n",1);
    } 
    
    return 0; 
    }

  4. #34
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    53
    Beiträge
    2.236
    29000 ??? Das ist etwas viel für einen 10 bit ADC

    1023 ist schon besser,
    aber das bedeutet das an ADC0 und ADC1 5 V anliegt...
    Hast Du da etwa eine Brücke eingebastelt ?
    Selbst wenn die Phototransistoren platt wären dürfte en keine 1023 geben, weil da ein widerstand von 4,7 K gegen VCC liegt.

    Mess mal ADC0 und ADC1 gegen VCC hast Du da 4,7k oder 0 ?

    oder bin ich da auf dem falschem Weg ?

    Gruß Sebastian

  5. #35
    Benutzer Stammmitglied
    Registriert seit
    19.07.2005
    Ort
    Bremen
    Alter
    40
    Beiträge
    45
    Moin,
    ja ich weiß normalerweise kann das nicht stimmen. Das neue Programm zeigt die ganze Zeit den den Wert 1023, egal was ich mit den Sensoren mache. Ich messe die Sensoren morgen durch für heute habe ich keine Lust mehr. Ich mach das morgen früh und stelle die Werte ins Forum.

    mfG Sebastian

  6. #36
    Benutzer Stammmitglied
    Registriert seit
    19.07.2005
    Ort
    Bremen
    Alter
    40
    Beiträge
    45
    Moin,
    ich habe meine Dioden und Transistoren mal durchgemessen und festgestellt, dass an einer Diode 2,8V abfallen. Bischen viel, wie ich fande. Also habe ich sie gegen eine andere aus einer alten Computermaus ausgetauscht und schon gings. Jetzt funktionieren meine ODOs wieder. Wenn kein Transistor betätigt ist, bekomme ich jetzt Werte von 960,welche dann kleiner werden, wenn ich einen oder beide betätige.
    Auch im Selbsttest zeigt meine Status LED jetzt Rot und Grün an, wenn ich ein weißes Blatt vor den Jeweiligen Sensor halte. Also wars nur die Diode.

    mfG Sebastian

  7. #37
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    12.06.2005
    Ort
    Südwestdeutschland
    Beiträge
    1.147
    Blog-Einträge
    3
    Hallo Bremer,
    die Schwelle bei der 10Bit Wandlung sollte so ca. bei 600 liegen. D.h. Werte größer 600 gelten als logisch 1 und Werte kleiner als 600 als logisch 0.
    Waren jetzt eigentlich die Dioden oder die Fototransistoren kaputt ?
    Ich glaube, Du hast da was verwechselt.
    Normalerweise sollten die Odometriesensoren immer noch auf Tageslicht reagieren, wenn die Beleuchtungsdioden kaputt sind.

    Gruss,
    stochri

  8. #38
    Benutzer Stammmitglied
    Registriert seit
    19.07.2005
    Ort
    Bremen
    Alter
    40
    Beiträge
    45
    Moin,
    ich habe die rechte IR-Diode ausgetauscht und schon ging alles wieder. Also muss es doch diese Diode gewesen sein oder nicht ? Ich habe die Tests mit den ODOs immer im leicht abgedunkelten Raum gemacht ohne Tageslicht. Aber dann kommt das doch hin mit den Werten, die waren ja von beiden Sensoren.

    mfG Sebastian

  9. #39
    Benutzer Stammmitglied
    Registriert seit
    19.07.2005
    Ort
    Bremen
    Alter
    40
    Beiträge
    45
    Moin,
    ich habe ein kleines Problem. Ich möchte meine ASURO eine definierte Strecke fahren lassen. Dazu möchte ich die Radencoder benutzen. Hierzu habe ich mir gedacht, dass ich die Hell-Dunkelübergänge erfasse und durch eine for-Schleife zählen lasse um daraus eine Strecke vorzugeben. Leider reichen meine immer noch bescheidenen Programmierkenntnisse nicht aus, um diese Aufgabe zu lösen. Kann mir jemand helfen ? Oder hat jemand eine bessere Idee das Problem zu lösen ? Danke.

    mfG Sebastian

  10. #40
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    53
    Beiträge
    2.236
    Hi Bremer,
    Willst Du das selber schreiben, oder lieber was fertiges benutzen ?

    Suche im Forum nach der erweiterten Asuro Bibliothek!
    Dort findest Du schon fertige Routinen!
    Dein Problem hatten hier schon ein paar Leute, und haben es für Dich, naja für uns alle
    gelöst.

    Gruß Sebastian

Seite 4 von 5 ErsteErste ... 2345 LetzteLetzte

Berechtigungen

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

LiFePO4 Speicher Test