- LiTime Speicher und Akkus         
Ergebnis 1 bis 6 von 6

Thema: Problem mit Turn funktion

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.11.2006
    Ort
    Hamburg
    Alter
    32
    Beiträge
    384

    Problem mit Turn funktion

    Anzeige

    Praxistest und DIY Projekte
    Moin Moin,

    ich habe folgendes Programm geschrieben:
    Code:
    #include "asuro.h"
    
    int main(void) {
    
    Init();
    MotorDir(FWD,FWD);
    MotorSpeed(140,140);
    Msleep(3000);
    MotorSpeed(0,0);
    Msleep(3000);
    Turn(90,140);
    Msleep(3000);
    BackLED(ON,ON);
    	
    
    	
    while (1);
    
      
    	
    	
    return 0;
    }
    In dem Programm soll er erstmal ca. 3 sec. lang geradaus fahren, dann für 3 sec. stehen bleiben sich darauf um 90° drehen und dann die beiden Back leds anschalten.
    Bis auf die 90° Drehung macht er auch alles ich weiß nicht was ich falsch gemacht habe.

    PS.: Mit der Go funktion habe ich ähnliche probleme, obwohl im selftest die Odometrie eigenltich reibungslos funktioniert hat.

    schon mal Danke im vorraus

    mfg
    Erik

  2. #2
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.062
    dir fehlt glaub ich EncodeInit(), oder?
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.11.2006
    Ort
    Hamburg
    Alter
    32
    Beiträge
    384
    Also, wenn ich die encoder intialisiere dreht er sich andauernd im Kreis anstatt den Teil zu überspringen . Das ist zwar schon ein Fortschritt aber er macht trotzdem noch nich wirklich das was er soll.
    Hier nochmal der neue Code
    Code:
    #include "asuro.h"
    
    int main(void) {
    
    Encoder_Init();
    Init();
    
    MotorDir(FWD,FWD);
    MotorSpeed(140,140);
    Msleep(3000);
    MotorSpeed(0,0);
    Msleep(3000);
    Turn(90,140);
    Msleep(3000);
    BackLED(ON,ON);
    	
    
    	
    while (1);
    
      
    	
    	
    return 0;
    }
    mfg
    Erik

  4. #4
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.062
    tu encoder_init mal hinter das normale init.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  5. #5
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.11.2006
    Ort
    Hamburg
    Alter
    32
    Beiträge
    384
    ahh danke nun klappt das, auch wenn die 90° eher 130° waren .

  6. #6
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.062
    dann hast du vermutlich die falschen encoderscheiben aufgeklebt. mit den anderen wird es funktionieren.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

Berechtigungen

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

LiTime Speicher und Akkus