- Akku Tests und Balkonkraftwerk Speicher         
Seite 6 von 9 ErsteErste ... 45678 ... LetzteLetzte
Ergebnis 51 bis 60 von 81

Thema: SUMO ASURO ... eine Beschäftigung für Weihnachten

  1. #51
    Benutzer Stammmitglied
    Registriert seit
    04.01.2008
    Beiträge
    39
    Anzeige

    Praxistest und DIY Projekte
    Das Ziel war es den asuro im ring zu halten und das er die becher aus dem Ring schiebt wie in diesen Video von robo.fr http://www.youtube.com/v/oscbdxMhX_4

  2. #52
    Benutzer Stammmitglied
    Registriert seit
    04.01.2008
    Beiträge
    39
    Ich hab jetz ein programm gemacht womit wen er einen becher sieht auf ihn zufährt und dann wegschiebt und wenn er keinen siht dann nur im kreiß fährt abber ich weis jetz nicht wie ich es auch noch unterbringen kann dass er imring bleibt
    Hier ist das eine programm
    Code:
    /***************************************************************************
     *   This program is free software; you can redistribute it and/or modify  *
     *   it under the terms of the GNU General Public License as published by  *
     *   the Free Software Foundation version 2 of the License,                *
     *   If you extend the program please maintain the list of authors.        *
     *   If you want to use this software for commercial purposes and you      *
     *   don't want to make it open source, please contact the authors for     *
     *   licensing.                                                            *
     ***************************************************************************/
    
    #include "asuro.h"
    #include <stdlib.h>
    
    /*************************************************************************
    
    	uint8_t objekt_sichtbar(uint8_t abstand)
     
     	Ist ein Objekt in der Entfernung kleiner oder gleich
    	dem Eingangsparameter "abstand" erkennbar?
    
    	objekt_sichtbar(7) liefert TRUE zurück, falls überhaupt 
    	ein Object detektierbar.
    	
    	abstand:
    	0: 5cm
    	1: 7cm 
    	2: 13cm
    	3: 15cm
    	4: 16cm
    	5: 17cm
    	6: 18cm
    	7: 22cm
    
    	( Testobjekt: Joghurtecher, Umgebungsbeleuchtung: Zimmer )
    
    	return: TRUE falls Objekt gefunden
    			FALSE wenn nicht
    
    	Zeitbedarf: 5ms
    
    *************************************************************************/
    uint8_t objekt_sichtbar(uint8_t distance)
    {
    	uint16_t j,z;
    	
       	DDRD |= (1 << DDD1);   // Port D1 als Ausgang
       	PORTD &= ~(1 << PD1);   // PD1 auf LOW
    
    	OCR2  = 254-distance;   // wenn OCR2=0xFE dann Objekt sehr nahe 
    	z=0;
    	for(j=0;j<30;j++) // loop time: 5ms
    	{
    		if (PIND & (1 << PD0))z++;
    		Sleep(6); // 6*Sleep(6)=1ms
    	}
    	if (z>=29) return FALSE; // Objekt nicht gefunden
    	else return TRUE;
    }
    /*************************************************************************
    
    	uint8_t abstand()
     
     	Abstandsermittelung über IR-Sendiode / IR-Empfänger.
    	0:kleinster Abstand
    	7:größter Abstand
    	255: kein Objekt
    
    	Zeitbedarf: 5ms*9=45ms
    
    	author: robo.fr, christoph ( ät ) roboterclub-freiburg.de
    	date: 2008
    
    *************************************************************************/
    uint8_t abstand()
    {
    	uint8_t k,n;
    	
    	k=255;
    	for(n=0;n<8;n++)
    	{
    	  if (!objekt_sichtbar(n)) k=n; // solange kein Objekt, Distanz erhoehen
    	}  
    	return k;
    }
    /*************************************************************************
    
    	Hauptprogramm
    
    *************************************************************************/
    int main(void)
    {
       	uint8_t n;
       
       	Init();
    
    	FrontLED(ON);
       	while(1)
    	{
    	   	n=abstand();
    		StatusLED(OFF);
    	   	BackLED(OFF,OFF);
    		MotorSpeed(200,200);
    	   		
    		if(n!=255)
    	   	{
    		    if (n<11) MotorSpeed(0,200);
    		    if (n<10) MotorSpeed(0,200);
    		    if (n<9) MotorSpeed(0,200);
    		    if (n<8) MotorSpeed(0,200);
    	   		if (n<7) MotorSpeed(0,200);
    	   		if (n<6) MotorSpeed(0,200);
    	   		if (n<5) MotorSpeed(0,200);
    	   		if (n<4) MotorSpeed(0,200);
    			if (n<3) MotorSpeed(0,200);
    			if (n<2) MotorSpeed(200,200);
    			if (n<1) MotorSpeed(200,200);
    			Msleep(10);
    		}
    	}
    }

  3. #53
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    38
    Beiträge
    4.068
    if(n!=255)
    {
    if (n<11) MotorSpeed(0,200);
    if (n<10) MotorSpeed(0,200);
    if (n<9) MotorSpeed(0,200);
    if (n< MotorSpeed(0,200);
    if (n<7) MotorSpeed(0,200);
    if (n<6) MotorSpeed(0,200);
    if (n<5) MotorSpeed(0,200);
    if (n<4) MotorSpeed(0,200);
    if (n<3) MotorSpeed(0,200);
    if (n<2) MotorSpeed(200,200);
    if (n<1) MotorSpeed(200,200);
    Msleep(10);

    das ist doch quatsch... warum fragst du nach dem wert, wenn du egal welcher wert kommt immer die gleiche motorgeschwindigkeit nimmet? da brauchst du doch nur eine if-schleife, welche prüft ob der wert unter 2 liegt...

    aber lass doch einfach in der main funktion noch auf die liniensensoren reagieren..
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  4. #54
    Benutzer Stammmitglied
    Registriert seit
    04.01.2008
    Beiträge
    39
    ich habe es jetz so bearbeitet das es kompilirbar ist abber wen ich es auf den asuro flashe macht er nur die Front led an und die statusled auf orange abber bewegt sich kein stück irgendwo muss sich etwas dagegenstellen das er losfährt ich weis abber nicht was
    Code:
    /***************************************************************************
     *   This program is free software; you can redistribute it and/or modify  *
     *   it under the terms of the GNU General Public License as published by  *
     *   the Free Software Foundation version 2 of the License,                *
     *   If you extend the program please maintain the list of authors.        *
     *   If you want to use this software for commercial purposes and you      *
     *   don't want to make it open source, please contact the authors for     *
     *   licensing.                                                            *
     ***************************************************************************/
    
    #include "asuro.h"
    #include <stdlib.h>
    #define LIMIT 20 // Helligkeitsveraenderung, bei der eine Linie detektiert wird 
    #define TIEFPASS 50 // grosser Wert=grosse Zeitkonstante 
    // globale Variablen 
    uint16_t HellLinks; 
    uint16_t HellRechts;
    
    /*************************************************************************
    
    	uint8_t objekt_sichtbar(uint8_t abstand)
     
     	Ist ein Objekt in der Entfernung kleiner oder gleich
    	dem Eingangsparameter "abstand" erkennbar?
    
    	objekt_sichtbar(7) liefert TRUE zurück, falls überhaupt 
    	ein Object detektierbar.
    	
    	abstand:
    	0: 5cm
    	1: 7cm 
    	2: 13cm
    	3: 15cm
    	4: 16cm
    	5: 17cm
    	6: 18cm
    	7: 22cm
    
    	( Testobjekt: Joghurtecher, Umgebungsbeleuchtung: Zimmer )
    
    	return: TRUE falls Objekt gefunden
    			FALSE wenn nicht
    
    	Zeitbedarf: 5ms
    
    *************************************************************************/
    uint8_t objekt_sichtbar(uint8_t distance)
    {
    	uint16_t j,z;
    	
       	DDRD |= (1 << DDD1);   // Port D1 als Ausgang
       	PORTD &= ~(1 << PD1);   // PD1 auf LOW
    
    	OCR2  = 254-distance;   // wenn OCR2=0xFE dann Objekt sehr nahe 
    	z=0;
    	for(j=0;j<30;j++) // loop time: 5ms
    	{
    		if (PIND & (1 << PD0))z++;
    		Sleep(6); // 6*Sleep(6)=1ms
    	}
    	if (z>=29) return FALSE; // Objekt nicht gefunden
    	else return TRUE;
    }
    /*************************************************************************
    
    	uint8_t abstand()
     
     	Abstandsermittelung über IR-Sendiode / IR-Empfänger.
    	0:kleinster Abstand
    	7:größter Abstand
    	255: kein Objekt
    
    	Zeitbedarf: 5ms*9=45ms
    
    	author: robo.fr, christoph ( ät ) roboterclub-freiburg.de
    	date: 2008
    
    *************************************************************************/
    uint8_t abstand()
    {
    	uint8_t k,n;
    	
    	k=255;
    	for(n=0;n<8;n++)
    	{
    	  if (!objekt_sichtbar(n)) k=n; // solange kein Objekt, Distanz erhoehen
    	}  
    	return k;
    }
    /*************************************************************************/
    unsigned char testhell(void) 
    { 
       uint8_t ergebnis=0; 
       uint16_t lineData[2]; 
    
       LineData(lineData); 
       HellLinks=(HellLinks*TIEFPASS+lineData[0])/(TIEFPASS+1); 
       HellRechts=(HellRechts*TIEFPASS+lineData[1])/(TIEFPASS+1); 
       StatusLED(YELLOW); 
       if((lineData[0]+LIMIT)<(HellLinks)) ergebnis|=1; 
       if((lineData[1]+LIMIT)<(HellRechts)) ergebnis|=2; 
    
       Msleep(10); 
       return ergebnis; 
    } 
    
    /*************************************************************************
    
    	Hauptprogramm
    
    *************************************************************************/
    int main(void)
    {
       	uint8_t n;
       
       	Init();
    	StatusLED(RED); 
       FrontLED(ON); 
    
       // mittlere Helligkeit im Stand ermitteln 
       for(n=0;n<300;n++) 
       { 
          testhell(); 
       } 
       StatusLED(YELLOW); 
    
       MotorDir(FWD,FWD); 
       MotorSpeed(150,150); 
    	
       	while(1)
    	FALSE;
    	{
          n=testhell(); 
    
          BackLED(n&0x01,n&0x02); 
          StatusLED(YELLOW); 
    
          if(n!=0) // Falls Linie erkannt, dann drehen und zurück 
          { 
             StatusLED(GREEN); 
             MotorDir(RWD,RWD); 
             MotorSpeed(150,100); 
    
             Msleep(600); 
    
             MotorDir(RWD,FWD); 
             MotorSpeed(200,200); 
    
             Msleep(600); 
    
             MotorDir(FWD,FWD); 
             MotorSpeed(150,150); 
          } 
    
          Msleep(10);
    	
        }
    	TRUE;
    	{
    	   	n=abstand();
    		StatusLED(OFF);
    	   	BackLED(OFF,OFF);
    		MotorSpeed(200,200);
    	   		
    		if(n!=255)
    	   	{
    		
    			if (n<2) MotorSpeed(200,200);
    			if (n<1) MotorSpeed(200,200);
    			Msleep(10);
    		}
    	}
    
    }
    Hilft mir bitte

    Gruß
    chief 2

  5. #55
    Erfahrener Benutzer Begeisterter Techniker Avatar von M1.R
    Registriert seit
    02.06.2007
    Ort
    Freiburg
    Beiträge
    213
    Hallo,

    jetzt hat mein ASURO auch einen IR-Adapter:

    Bild hier  

    @robo:
    da ich den kleinsten Abstand ermitteln wollte, habe ich dein Testprogramm folgendermaßen geändert:
    Code:
    if(n!=255)
    	   	{
    	   		if (n<6) StatusLED(GREEN);
    	   		if (n<4) StatusLED(YELLOW);
    	   		if (n<3) StatusLED(RED);
    	   		//if (n<2) BackLED(ON,ON);
    			   if (n<1) BackLED(ON,ON);
    			Msleep(10);
    		}
    aber anscheinend wird n nie 0, da die BackLEDs nicht leuchten?
    Gruss
    M.

  6. #56
    Erfahrener Benutzer Begeisterter Techniker Avatar von JensK
    Registriert seit
    27.02.2007
    Ort
    Hamburg
    Alter
    33
    Beiträge
    254
    wahrscheinlich wird n nie null, da die ir immer irgendwlche strahlen empfängt... versuchs mal im dunkeln. evtl hilft das ja... außerdem sollte keine fernbedingung oder sonstiges mit IR in der nähe sein, da dass alles stören kann...

    und was is das da für ein "knubbel" auf der schraube?

    ich hoffe ich konnte helfen

    mfg
    jens

  7. #57
    Erfahrener Benutzer Roboter Genie Avatar von pinsel120866
    Registriert seit
    18.12.2007
    Ort
    Hohenems
    Alter
    58
    Beiträge
    847
    Hi M1.R,

    wäre nett, wenn du den Bauplan für den IR Adapter man postest!

    (falls es einen gibt )

  8. #58
    Neuer Benutzer Öfters hier
    Registriert seit
    25.12.2007
    Beiträge
    7
    Hi Leute,
    Ich steh ganz am Anfang der Softwar des Asuros.
    Ich schaffe es nicht die test.c Datei in eine test.hex Datei umzuwandeln, vermutlich liegt es daran, dass ich das ,,Schreibgeschützt nicht weg bekomme. Kann mir jm. helfen ?
    Der selbst Test des Asuros hat einwandfrei geklappt und jetzt scheitert es an einer blöden Windows Einstellung.
    Danke

  9. #59
    Erfahrener Benutzer Begeisterter Techniker Avatar von M1.R
    Registriert seit
    02.06.2007
    Ort
    Freiburg
    Beiträge
    213
    Zitat Zitat von pinsel120866
    wäre nett, wenn du den Bauplan für den IR Adapter man postest!
    https://www.roboternetz.de/phpBB2/vi...=343829#343829

    Gruss
    M.

  10. #60
    Erfahrener Benutzer Begeisterter Techniker Avatar von JensK
    Registriert seit
    27.02.2007
    Ort
    Hamburg
    Alter
    33
    Beiträge
    254
    ahhhhhhhhhhhhhhhhh das isn storch XDD von vorn schaut es wie eine undefinierbare kugel aus kaugummi aus sry sry... das is doch der asuro, der vogegezwitscher auf xoutube gemacht hat oder? :P

Seite 6 von 9 ErsteErste ... 45678 ... LetzteLetzte

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress