- fchao-Sinus-Wechselrichter AliExpress         
Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 26 von 26

Thema: [ASURO] Eure Programme

  1. #21
    Neuer Benutzer Öfters hier
    Registriert seit
    24.03.2005
    Beiträge
    5
    Anzeige

    Praxistest und DIY Projekte
    Ohh sehe grad die Antwort von Weja.
    Dann liege ich wohl gar nicht so falsch mit meiner Vermutung.
    Evtl langt schon eine Diode vor R23 um Abhilfe zu schaffen und die Batterien länger nutzen zu können.

    Hat jemand von Euch schon ein funktionierendes Programm mit Auswertung der Odometrie?
    Ich bin noch etwas ratlos wie ich die OdometrieDaten sinnvoll verwende. Für einen kleinen Denkanstoss wäre ich sehr dankbar.

    MfG
    Chris

  2. #22
    Benutzer Stammmitglied
    Registriert seit
    01.12.2004
    Ort
    Buxtehude
    Beiträge
    70
    Hallo Chris,
    wegen der Odometrie Sache siehe mal unter:
    https://www.roboternetz.de/phpBB2/viewtopic.php?t=7571
    Wie Du die Tasten auch bei eingeschalteten Motoren und schwachen Batterien korrek ausliet kommt da auch, aber teste erstmal die Odometrie Funktion.
    Gruß, Weja

  3. #23
    Neuer Benutzer Öfters hier
    Registriert seit
    29.07.2005
    Ort
    Bonn
    Alter
    43
    Beiträge
    6
    Hi Leutz,

    haben wohl viele Leute, wie auch ich, die Idee von nem ASURO der rumfährt und bei Bedarf zurücksetzt und in einer anderen Richtung weiter fährt.
    Habs mal probiert und das ist raus gekommen:
    Code:
    /* fahren(Kai) */
    /* langsam fahren, irgendwo anstoßen, schnell zurücksetzen, 90°drehen, weiterfahren */
    /* 02.08.2005 vom Kai */
    
    #include "asuro.h"
    
    int main(void){
    	
    	int i;
    	
    	Init();
    	
    	while(1){
    		if(PollSwitch()>0){						/* falls taster gedrückt --> */ 
    			StatusLED(RED);
    			BackLED(ON,ON);
    			MotorDir(RWD,RWD);						/* fahre rückwärts -->*/
    			MotorSpeed(200,200);
    			for(i=0;i<=270;i++){					/* --> für diese wilkürliche zeitspanne */
    				Sleep(255);
    				if(i==270){						/* ist die zeit abgegelaufen--> */
    					StatusLED(YELLOW);
    					MotorDir(RWD,FWD);				/* --> dreh linksherum --> */
    					MotorSpeed(152,150);
    					for(i=0;i<=120;i++){			/* --> für diese wilkürliche zeitspanne */
    						Sleep(255);
    					}
    				}	
    			}	
    		}	
    		else{										/* falls kein taster gedrückt --> */
    			StatusLED(GREEN);
    			BackLED(OFF,OFF);
    			MotorDir(FWD,FWD);						/* fahre vorwärts */
    			MotorSpeed(150,150);
    		}
    	}
    	return 0;
    }
    und weil mir das noch nicht gereicht hat, hab ich mal versucht das noch ein bißchen schöner zu machen:
    Code:
    /* fahrenfeiner2 */
    
    #include "asuro.h"
    
    
    int main(void){
    
    	int j,i;
    
    	Init();
    	
    	
    	
    	while(1){
    		if(PollSwitch() > 0 && PollSwitch() < 8){
    			StatusLED(RED);
    			BackLED(ON,ON);
    			MotorDir(RWD,RWD);						
    			MotorSpeed(200,202);
    			for(i=0;i<=270;i++){					
    				Sleep(255);
    				if(i==270){						
    					StatusLED(YELLOW);
    					BackLED(ON,OFF);
    					MotorDir(RWD,FWD);				
    					MotorSpeed(150,150);
    					for(j=0;j<=120;j++){			
    						Sleep(255);
    					}
    				}
    			}	
    		}	
    		else if(PollSwitch() > 7 && PollSwitch() < 60 && PollSwitch() != 12 && PollSwitch() != 18 && PollSwitch() != 30){
    			StatusLED(RED);
    			BackLED(ON,ON);
    			MotorDir(RWD,RWD);						
    			MotorSpeed(200,202);
    			for(i=0;i<=270;i++){					
    				Sleep(255);
    				if(i==270){						
    					StatusLED(YELLOW);
    					BackLED(OFF,ON);
    					MotorDir(FWD,RWD);				
    					MotorSpeed(150,150);
    					for(j=0;j<=120;j++){			
    						Sleep(255);
    					}
    				}	
    			}		
    		}
    		else if(PollSwitch() == 12 || PollSwitch() == 18 || PollSwitch() == 30){
    			StatusLED(RED);
    			BackLED(ON,ON);
    			MotorDir(RWD,RWD);						
    			MotorSpeed(200,200);
    			for(i=0;i<=270;i++){					
    				Sleep(255);
    				if(i==270){						
    					StatusLED(YELLOW);
    					BackLED(ON,ON);
    					MotorDir(RWD,FWD);				
    					MotorSpeed(152,150);
    					for(j=0;j<=200;j++){			
    						Sleep(255);
    					}
    				}	
    			}
    		}
    		else{
    		StatusLED(GREEN);
    			BackLED(OFF,OFF);
    			MotorDir(FWD,FWD);						
    			MotorSpeed(150,150);
    		}	
    	}
    	return 0;
    }
    Sorry habs leider noch nicht geschafft mir die anderen Beiträge anzuschauen. Sind bestimmt ganz ähnliche Sachen dabei.
    Und habs auch noch nicht geschafft die Dokumentation zu schreiben; aber ist ja eigentlich auch ganz einfach das Programm.
    Jetzt will ich fahrenfeiner2 mit noch nen paar Funktionen und vielleicht auch mit einer anderen Struktur verfeinern.
    @freq.9: fahren und fahrenfeiner funktionieren ziemlich gut auf meinem ASURO
    @Banzai: Das klingt echt gut was du da gemacht hast werd ich direkt mal ausprobieren
    @Moebius: Deine Idee mit der Befreiungsschleife gefällt mir, werd ich auch mal probieren in fahrenfeiner2 einzubauen

  4. #24
    Neuer Benutzer Öfters hier
    Registriert seit
    29.07.2005
    Ort
    Bonn
    Alter
    43
    Beiträge
    6
    Hi Leutz,

    haben wohl viele Leute, wie auch ich, die Idee von nem ASURO der rumfährt und bei Bedarf zurücksetzt und in einer anderen Richtung weiter fährt.
    Habs mal probiert und das ist raus gekommen:
    Code:
    /* fahren(Kai) */
    /* langsam fahren, irgendwo anstoßen, schnell zurücksetzen, 90°drehen, weiterfahren */
    /* 02.08.2005 vom Kai */
    
    #include "asuro.h"
    
    int main(void){
    	
    	int i;
    	
    	Init();
    	
    	while(1){
    		if(PollSwitch()>0){						/* falls taster gedrückt --> */ 
    			StatusLED(RED);
    			BackLED(ON,ON);
    			MotorDir(RWD,RWD);						/* fahre rückwärts -->*/
    			MotorSpeed(200,200);
    			for(i=0;i<=270;i++){					/* --> für diese wilkürliche zeitspanne */
    				Sleep(255);
    				if(i==270){						/* ist die zeit abgegelaufen--> */
    					StatusLED(YELLOW);
    					MotorDir(RWD,FWD);				/* --> dreh linksherum --> */
    					MotorSpeed(152,150);
    					for(i=0;i<=120;i++){			/* --> für diese wilkürliche zeitspanne */
    						Sleep(255);
    					}
    				}	
    			}	
    		}	
    		else{										/* falls kein taster gedrückt --> */
    			StatusLED(GREEN);
    			BackLED(OFF,OFF);
    			MotorDir(FWD,FWD);						/* fahre vorwärts */
    			MotorSpeed(150,150);
    		}
    	}
    	return 0;
    }
    und weil mir das noch nicht gereicht hat, hab ich mal versucht das noch ein bißchen schöner zu machen:
    Code:
    /* fahrenfeiner2 */
    
    #include "asuro.h"
    
    
    int main(void){
    
    	int j,i;
    
    	Init();
    	
    	
    	
    	while(1){
    		if(PollSwitch() > 0 && PollSwitch() < 8){
    			StatusLED(RED);
    			BackLED(ON,ON);
    			MotorDir(RWD,RWD);						
    			MotorSpeed(200,202);
    			for(i=0;i<=270;i++){					
    				Sleep(255);
    				if(i==270){						
    					StatusLED(YELLOW);
    					BackLED(ON,OFF);
    					MotorDir(RWD,FWD);				
    					MotorSpeed(150,150);
    					for(j=0;j<=120;j++){			
    						Sleep(255);
    					}
    				}
    			}	
    		}	
    		else if(PollSwitch() > 7 && PollSwitch() < 60 && PollSwitch() != 12 && PollSwitch() != 18 && PollSwitch() != 30){
    			StatusLED(RED);
    			BackLED(ON,ON);
    			MotorDir(RWD,RWD);						
    			MotorSpeed(200,202);
    			for(i=0;i<=270;i++){					
    				Sleep(255);
    				if(i==270){						
    					StatusLED(YELLOW);
    					BackLED(OFF,ON);
    					MotorDir(FWD,RWD);				
    					MotorSpeed(150,150);
    					for(j=0;j<=120;j++){			
    						Sleep(255);
    					}
    				}	
    			}		
    		}
    		else if(PollSwitch() == 12 || PollSwitch() == 18 || PollSwitch() == 30){
    			StatusLED(RED);
    			BackLED(ON,ON);
    			MotorDir(RWD,RWD);						
    			MotorSpeed(200,200);
    			for(i=0;i<=270;i++){					
    				Sleep(255);
    				if(i==270){						
    					StatusLED(YELLOW);
    					BackLED(ON,ON);
    					MotorDir(RWD,FWD);				
    					MotorSpeed(152,150);
    					for(j=0;j<=200;j++){			
    						Sleep(255);
    					}
    				}	
    			}
    		}
    		else{
    		StatusLED(GREEN);
    			BackLED(OFF,OFF);
    			MotorDir(FWD,FWD);						
    			MotorSpeed(150,150);
    		}	
    	}
    	return 0;
    }
    Sorry habs leider noch nicht geschafft mir die anderen Beiträge anzuschauen. Sind bestimmt ganz ähnliche Sachen dabei.
    Und habs auch noch nicht geschafft die Dokumentation zu schreiben; aber ist ja eigentlich auch ganz einfach das Programm.
    Jetzt will ich fahrenfeiner2 mit noch nen paar Funktionen und vielleicht auch mit einer anderen Struktur verfeinern.
    @freq.9: fahren und fahrenfeiner funktionieren ziemlich gut auf meinem ASURO
    @Banzai: Das klingt echt gut was du da gemacht hast werd ich direkt mal ausprobieren
    @Moebius: Deine Idee mit der Befreiungsschleife gefällt mir, werd ich auch mal probieren in fahrenfeiner2 einzubauen

  5. #25
    Neuer Benutzer Öfters hier
    Registriert seit
    29.07.2005
    Ort
    Bonn
    Alter
    43
    Beiträge
    6

    Fahren

    Fahren jetzt noch feiner:
    Code:
    /* fahrenfeiner3 */
    
    #include "asuro.h"
    
    int back(void){
    
    	int i;
    
    	StatusLED(RED);
    	BackLED(ON,ON);
    	MotorDir(RWD,RWD);						
    	MotorSpeed(200,202);
    	for(i=0;i<=270;i++){					
    		Sleep(255);
    	}
    }	
    
    int taster(void){
    
    	if(PollSwitch() > 0 && PollSwitch() < 8)
    		return 0;
    	else if(PollSwitch() > 7 && PollSwitch() < 60 && PollSwitch() != 12 && PollSwitch() != 18 && PollSwitch() != 30)
    		return 1;
    	else if(PollSwitch() == 12 || PollSwitch() == 18 || PollSwitch() == 30)
    		return 2;
    }		
    
    int main(void){
    
    	int j;
    
    	Init();
    	
    	
    	
    	while(1){
    		if(PollSwitch() != 0){
    		taster();
    		taster();
    		taster();
    			switch(taster()){
    				case 0:
    					back();
    					StatusLED(YELLOW);
    					BackLED(ON,OFF);
    					MotorDir(RWD,FWD);				
    					MotorSpeed(150,150);
    					for(j=0;j<=120;j++){			
    						Sleep(255);
    					}	
    				break;
    				case 1:	
    					back();
    					StatusLED(YELLOW);
    					BackLED(OFF,ON);
    					MotorDir(FWD,RWD);				
    					MotorSpeed(150,150);
    					for(j=0;j<=120;j++){			
    						Sleep(255);
    					}	
    				break;
    				case 2:	
    					back();
    					StatusLED(YELLOW);
    					BackLED(ON,ON);
    					MotorDir(RWD,FWD);				
    					MotorSpeed(152,150);
    					for(j=0;j<=200;j++){			
    						Sleep(255);
    					}
    				break;
    			}
    		}	
    		else{
    			StatusLED(GREEN);
    			BackLED(OFF,OFF);
    			MotorDir(FWD,FWD);						
    			MotorSpeed(150,150);
    		}
    	}	
    	return 0;
    }
    So und jetzt werd ich das mal alles ausbauen.

    Schönen Abend

  6. #26
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    14.03.2007
    Ort
    VIGO
    Beiträge
    158
    moibius sehr einfaches program ,gefaelt mir aber sehr gut

Seite 3 von 3 ErsteErste 123

Berechtigungen

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

LiFePO4 Speicher Test