- fchao-Sinus-Wechselrichter AliExpress         
Seite 4 von 6 ErsteErste ... 23456 LetzteLetzte
Ergebnis 31 bis 40 von 60

Thema: Asuro Programme gesucht

  1. #31
    Beaverhead
    Gast
    Anzeige

    LiFePo4 Akku selber bauen - Video
    Ich würde gerne Versuchen, das die räder sich beim vorwärtsfahren anpassen, sodass er exakt geradeausfährt.
    Code:
    #include "asuro.h"
    
    int main(void){
    	Init();
    	
    	int zeit;
    	
        while(1)	{
    	MotorDir(FWD,FWD);                       // Beiden Motoren auf Vorwärts
        MotorSpeed(120,150);        			 // Die Motoren arbeiten ungleichmäßig stark, so gehts geradeaus
        StatusLED(GREEN);           			 // Status-Leuchtdiode auf grün schalten
        while (PollSwitch()==0) {              // Kollisionskontakte prüfen und solange keine Kollision erfolgt...
                    SerWrite("Los gehts!\n",9); // ...weiterfahren
    				
        }
        MotorSpeed(0,0);            			// Kollision! sofort anhalten!
        StatusLED(RED);             			// Status-Leuchtdiode auf rot schalten
        for(zeit=0;zeit<1000;zeit++){         // Ne pause von 1000 millisekunden
    	Sleep(72);}	
    	BackLED(ON,ON);                        // Rückleuchten anschalten
    	MotorDir(RWD,RWD);                     // Rückwärtsgang einlegen
        MotorSpeed(120,150);	               // losfahren 
        SerWrite("Wech hier!\n",10);		   // "Wech hier!" schicken
        for(zeit=0;zeit<1000;zeit++){		   // wieder Pause
    	Sleep(72);}	  
    	MotorSpeed(0,0);					   // Motoren ausschalten
    	            SerWrite("Uff! Das war knapp.\n",16);
    	StatusLED(GREEN);					   // StatusLED wieder grün schalten
    	BackLED(OFF,OFF);					   // und Rückleuchten wieder aus
    	for(zeit=0;zeit<1000;zeit++){        // schon wieder Pause
    	Sleep(72);}	
        MotorDir(FWD,RWD);					  // Den linken Motor vorwärts und den rechten Rückwärts schalten,
    	StatusLED(YELLOW);					  // StatusLED  gelb schalten,
    	MotorSpeed(100,129);                 // Beide Motoren einschalten
    	            SerWrite("Drehn! Drehn! Drehn!\n",18); // und sich drehen
    	for(zeit=0;zeit<1000;zeit++){                     // wieder kurz warten...
    	Sleep(72);}	
    	MotorSpeed(0,0);
    	for(zeit=0;zeit<1000;zeit++){
    	Sleep(72);}                                        // ...und dann alles von vorne
    	}
    	
    }

  2. #32
    Schalter
    Gast

    zwei magische Zeilen

    Hallo!!
    Ic habe nicht viel Ahnung von Programmiersprachen, kann mir jeman bitte erklären was diese zwei Zeilen aus dem oberen Programm bedeuten?

    void search_left(void); //Funktionsprototyp
    void search_right(void); // "


    vielen Dank !!


  3. #33
    Erfahrener Benutzer Roboter Genie Avatar von m.a.r.v.i.n
    Registriert seit
    24.07.2005
    Ort
    Berlin
    Beiträge
    1.247
    Hi,

    Die beiden Zeilen sind Funktionsdeklarationen (Prototypen). Jede Funktion die in einem C-Programm verwendet wird, muß vor der Verwendung deklariert werden (Name der Funktion, Funktionsparameter, Rückgabewert), sonst meckert der Compiler. Näheres siehe auch im C-Tutorial

    Gruß m.a.r.v.i.n

  4. #34
    Einen Wunderschönen guten Morgen.
    Also ich bzw wir haben folgendes problem mit unserem Asuro. Wir haben Projektwoche in der Schule und befinden uns beim vorletzen Tag an dem wir efektiv an dem Roboter arbeiten können . Der Robo ist zusammengebaut und funktioniert soweit. Nach kleineren und größeren start problem lief auch das testprogrammm irgend wann. Lämpchen blinken auf er fuhr rückwerts,drehte ich im kreis etc. So dann wollten wir das flashen anfangen ...was aus irgend welchen gründen nicht funktonierte. Bis wir dann herausgefunden haben das wenn wir den Robo beim Flashen aus-an-aus schalten er geflasht wird. Soo test programm von der CD in den Prozzesor geflashed...nix tut sich nur lämpchen blinken auf. Eigen geschriebene Programme...nix funktonier ...kann uns /mir jemand helfen? Ich hab mir auch ma das programm

    • #include "asuro.h"

      int Main(void)
      {
      unsigned char sw;
      Init();
      sw = PollSwitch() ;
      MotorDir(FWD,BREAK) ;
      MotorSpeed(0, 0) ;
      if (sw & 0x01)
      MotorSpeed(30, 30) ;
      if (sw & 0x02)
      MotorSpeed(50, 50) ;
      if (sw & 0x04)
      MotorSpeed(80, 80) ;
      if (sw & 0x0
      MotorSpeed(120, 120) ;
      if (sw & 0x10)
      MotorSpeed(160, 160) ;
      if (sw & 0x20)
      MotorSpeed(250, 250) ;
      }

    aus dem forum geklaut und es probiert aber es tut sich trozdem nix.evtl weis wer rat

    MFG

  5. #35
    Erfahrener Benutzer Roboter Genie Avatar von m.a.r.v.i.n
    Registriert seit
    24.07.2005
    Ort
    Berlin
    Beiträge
    1.247
    Hallo Soko,

    da hast du dir kein sehr gutes Codebeispiel geklaut. Probier mal alles hinter Init() in eine Endlosschleife zu packen, dann sollte es funktionieren.

    Code:
    #include "asuro.h"
    
    int Main(void)
    {
      unsigned char sw;
      Init();
      while(1)   // Endlosscheife
      {
        sw = PollSwitch() ; 
        ...
       }
    }
    btw, für Programmcode heißt das Metatag 'code' nicht 'list'.

  6. #36
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Dein Progamm sollte in einem "Grundgerüst" sein:

    Code:
    #include "asuro.h" 
    
    int main(void) {
    
    unsigned char sw; 
    
    Init();
    
    do{
    
    sw = PollSwitch() ; 
    MotorDir(FWD,BREAK) ; 
    MotorSpeed(0, 0) ; 
    if (sw & 0x01) 
    MotorSpeed(30, 30) ; 
    if (sw & 0x02) 
    MotorSpeed(50, 50) ; 
    if (sw & 0x04) 
    MotorSpeed(80, 80) ; 
    if (sw & 0x08) 
    MotorSpeed(120, 120) ; 
    if (sw & 0x10) 
    MotorSpeed(160, 160) ; 
    if (sw & 0x20) 
    MotorSpeed(250, 250) ; 
    
    }while (1);
    return 0;
    }

    Ausserdem:

    if (sw & 0x01)

    sollte besser

    if (sw && 0x01)

    heisen. Bei einem & wird bitweise und-verknüpft und das Ergebniss in sw gespeichert. Alle weiteren sw-Abfragen funktionieren dann nicht mehr so wie gedacht. Bei && wird wird nur das Ergebnisse eines logischen Und gebildet und ausgewertet, sw bleibt dabei unverändert. (Das gilt natürlich auch für alle anderen IFs in deinem Code!)

    Längerer Programmcode sollte in Code-Tags gepostet werden.

    Meine asuro dreht die Rädchen erst bei MotorSpeed()-Werten ab ca. 100.

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  7. #37
    Mhh okay ich hab nu verschiedenes ausprobiert. Mit einer while endloschleife, mit do er fährt aber immer noch nicht ...Wir haben uns ne hex ausem i-net geladen die funz aber wir wissen nicht wie die programmiert ist...da sie sich net auslesen läst

  8. #38
    Also unser Roboter fährt nu vorwärst rückwärts ect . Aber die Sensoren wollen nicht wie wir . Funktionieren tun sie haben es mit einer hex ausem i-net getestet.Aber wenn wir nu unser eigene Programme schreiben funktionieren sie nicht.

    Code:
    #include “asuro.h”
    int main(void) {
    Init ()
    MotorDir(FWD,FWD); // Beide Motoren auf vorwärts
    MotorSpeed(120,120); // Beide Motoren etwa halbe Kraft voraus
    StatusLED(GREEN); // Status-Leuchtdiode auf grün schalten
    while (PollSwitch()==0) { // Solange keine Kollision erfolgte...
    SerWrite(“Alles OK!\n”,10); // ... Euphorie verbreiten
    }
    MotorSpeed(0,0); // Kollision! Sofort anhalten!
    StatusLED(RED); // Statusleuchtdiode rot schalten
    while (1) {
    SerWrite(“Aua!\n”,5); // und weinen!
    }
    }
    Was machen wir falsch?

  9. #39
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    38
    Beiträge
    4.066
    dieses programm habt ihr nicht selbst geschrieben, sondern irgendwo kopiert. wichtig ist, dass das "asuro.h" in normalen anführungszeichen steht (SHIFT+2). wenn man solche quelltexte kopiert, dann wird dieses zeichen oftmals zerstört, in eurem codefenster oben sieht man deshalb nur nich solche blöcke. das gilt natürlich für sämtliche anführungszeichen im code.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  10. #40
    Der code ist ausem manual vom Asuro kopiert...und in der ver in der wirs getestet haben waren die "" auch ""

Seite 4 von 6 ErsteErste ... 23456 LetzteLetzte

Berechtigungen

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

Solar Speicher und Akkus Tests