- 3D-Druck Einstieg und Tipps         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 19 von 19

Thema: Mein erstes Programm

  1. #11
    Neuer Benutzer Öfters hier
    Registriert seit
    03.10.2010
    Ort
    Oberplatz
    Alter
    30
    Beiträge
    12
    Anzeige

    LiFePo4 Akku selber bauen - Video
    ah wieder einbischen was gelernt

  2. #12
    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

    Wenn ich das richtig sehe hast gleich voll zugeschlagen und dir den RP6 mit M32 und dem LCD angeschafft. Das alles zusammen zu betreiben ist schon nicht ganz einfach und für Einsteiger schwer zu überblicken.

    Der beste Einstieg sind wohl kleine Spielereien wie LEDs blinken lassen oder Sensoren einlesen und Werte zum Terminal (RP6Loader) senden. Basis können dabei die vielen mitgelieferten Beispiele sein die man variiert und kombiniert. Das intensive Studium der mitgelieferten Doku ist allerdings trotzdem Pflicht!

    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!

  3. #13
    Neuer Benutzer Öfters hier
    Registriert seit
    03.10.2010
    Ort
    Oberplatz
    Alter
    30
    Beiträge
    12
    Zitat Zitat von radbruch
    Das intensive Studium der mitgelieferten Doku ist allerdings trotzdem Pflicht!
    Das hab ich Gestern abend bist um 4 uhr nachts durch gelesen und auch verstanden bin gerade dabei die Bumper eine funktion zuzuweißen aber das klappt nicht (aber ich versuche es so lange bis es funktioniert, dafür gibt es ja diverse Möglichkeiten dank den "World Wide Web" herauszufinden wie man einen Bumper ansteuer das in der verfassten .pdf kann mir dort nicht so weiter helfen )

    Mit freundlich Grüßen Michael K.

  4. #14
    Neuer Benutzer Öfters hier
    Registriert seit
    03.10.2010
    Ort
    Oberplatz
    Alter
    30
    Beiträge
    12
    Also irgendwie bekomme ich es nicht hin die Bumper so zu programmieren das wen man sie drück das der RP6 zurück fährt .... =(

  5. #15
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Leider sind die Akkus meiner Glaskugel nicht aufgeladen. Könnest du vielleicht das Problem genauer beschreiben und deinen Quellcode posten?

    "bis um 4 uhr nachts durchgelesen..." Ich weiß schon, dass der RP6 "süchtig" machen kann, aber solltest du dir nicht auch mal eine Pause gönnen?
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  6. #16
    Neuer Benutzer Öfters hier
    Registriert seit
    03.10.2010
    Ort
    Oberplatz
    Alter
    30
    Beiträge
    12
    Aber ich möchte auch so gern das Programmieren können, verstehste das? Und mal einen Erfolg sehen, das ganze jahr schon war irgendwie alles nicht so gelaufen wie ich es mir vorgestellt hatte, und jetz will ich endlich mal etwas können was andere bei uns in der gegend nicht können

    Code:
    #include "RP6RobotBaseLib.h"
    
    void task_Bumpers(void)
    
    int main(void)
    {
       initRobotBase();
       setLEDs(0b001001);
       powerON();
    
       moveAtSpeed(50,50);
       //getLeftSpeed(50,30)
       //getRightSpeed(30,50)
       startStopwatch1();
       startStopwatch2();
    
    
       while(true)
       {
    		setLEDs(0b000001);
    		setLEDs(0b000010);
    		setLEDs(0b000100);
    		setLEDs(0b001000);
    		setLEDs(0b010000);
    		setLEDs(0b100000);
    		setLEDs(0b111111);
    														
          if(getStopwatch1() > 4000)
         {
    			move(60, FWD, DIST_MM(300), true);
    				rotate(30, LEFT, 180, true);
    			move(60, FWD, DIST_MM(300), true);
    				rotate(30, LEFT, 90, true);
    			move(60,FWD,DIST_MM(200), true);
    				rotate(30, RIGHT, 45, true);
    		setStopwatch1(0);
         }
    		if(getStopwatch2() > 200)
    	{
    		if(getBumperLeft() && getBumperRight()) escape();
    			else if(getBumperLeft()) 
    					escapeLeft(move(30, BWD, DIST_MM(100), true), rotate(20, RIGHT, 45, true));
    			else if(getBumperRight()) 
    					escapeRight(move(30, BWD, DIST_MM(100), true), rotate(20, LEFT, 45, true));
    			mSleep(50);
    			setStopwatch2(0);
    	}
          task_motionControl();
    	  task_Bumpers();
       }
       return 0;
      }
    PS:Bin erst heute um 9:30 aufgestanden

  7. #17
    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

    Ja, das kann ich schon verstehen. Aber verzwingen kann man es auch nicht. Hier mal eine fehler- und warnungsfrei kompilierbare Version deines Programms:

    Code:
    #include "RP6RobotBaseLib.h"
    
    void bumpersStateChanged(void)
    {
       writeString_P("\nBumper Status hat sich geaendert:\n");
       if(bumper_left)writeString_P(" - Linker Bumper gedrueckt!\n");
       	else writeString_P(" - Linker Bumper nicht gedrueckt.\n");
       if(bumper_right) writeString_P(" - Rechter Bumper gedrueckt!\n");
       	else writeString_P(" - Rechter Bumper nicht gedrueckt.\n");
    }
    
    int main(void)
    {
       initRobotBase();
       BUMPERS_setStateChangedHandler(bumpersStateChanged);
       setLEDs(0b111111);
       powerON();
    
       moveAtSpeed(50,50);
       //getLeftSpeed(50,30)
       //getRightSpeed(30,50)
       startStopwatch1();
       startStopwatch2();
       startStopwatch3();
       setLEDs(0b000000);
    
       while(true)
       {
       	if(getStopwatch1() > 4000)
         	{
             move(60, FWD, DIST_MM(300), true);
             rotate(30, LEFT, 180, true);
             move(60, FWD, DIST_MM(300), true);
             rotate(30, LEFT, 90, true);
             move(60,FWD,DIST_MM(200), true);
             rotate(30, RIGHT, 45, true);
          	setStopwatch1(0);
         	}
       	if(getStopwatch2() > 300)
       	{
          	writeString_P("\nADC Lichtsensor Links: ");
             writeInteger(adcLSL, DEC);
             writeString_P("\nADC Lichtsensor Rechts: ");
             writeInteger(adcLSL, DEC);
             writeString_P("\nADC Akku: ");
             writeInteger(adcBat, DEC);
             writeChar('\n');
          	if(adcBat < 600) writeString_P("Warnung! Akku ist bald leer!\n");
          	setStopwatch2(0);
       	}
          if(getStopwatch3() > 200)
       	{
          	if(getBumperLeft() && getBumperRight())
          	{
                move(30, BWD, DIST_MM(100), true);
    				rotate(20, RIGHT, 180, true);
          	}
          	else if(getBumperLeft())
          		{
                	move(30, BWD, DIST_MM(100), true);
    					rotate(20, RIGHT, 45, true);
    				}
             	else if(getBumperRight())
             		{
    						move(30, BWD, DIST_MM(100), true);
    						rotate(20, LEFT, 45, true);
    					}
          	mSleep(50);
          	setStopwatch3(0);
       	}
       	task_RP6System(); // alle Tasks auf einmal
       }
       return 0;
    }
    Obwohl ich meinen RP6 jetzt reaktiviert habe, kann ich es trotzdem noch nicht testen:

    Code:
    RP6Loader Terminal - type ".help" for command list!
    
    [RP6BOOT]
    
    [READY]
    
    [READY]
    
    ADC Lichtsensor Links: 135
    ADC Lichtsensor Rechts: 135
    ADC Akku: 524
    Warnung! Akku ist bald leer!
    
    ADC Lichtsensor Links: 133
    ADC Lichtsensor Rechts: 133
    ADC Akku: 527
    Warnung! Akku ist bald leer!
    
    [RP6BOOT]
    
    [READY]
    
    ADC Lichtsensor Links: 140
    ADC Lichtsensor Rechts: 140
    ADC Akku: 524
    Warnung! Akku ist bald leer!
    
    ADC Lichtsensor Links: 138
    ADC Lichtsensor Rechts: 138
    ADC Akku: 527
    Warnung! Akku ist bald leer!
    
    [RP6BOOT]
    
    [READY]
    
    Bumper Status hat sich geaendert:
     - Linker Bumper nicht gedrueckt.
     - Rechter Bumper gedrueckt!
    
    [RP6BOOT]
    
    [READY]
    Muss wohl erst die Akkus laden, weil sich der RP6 sofort resetet ;)

    Gruß

    mic
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken rp6-unterspannung.jpg  

  8. #18
    Neuer Benutzer Öfters hier
    Registriert seit
    03.10.2010
    Ort
    Oberplatz
    Alter
    30
    Beiträge
    12
    Hallo,

    da ich einen Thread offen habe, frag ich einfach einmal hier nach.
    Ob diese Aufkleber für den RP6 passen:
    http://www.conrad.de/ce/de/product/1...LEBERN/2420181

    Mfg Michi

  9. #19
    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

    Obwohl das nicht in der Beschreibung erwähnt wird, enthält dieses Set auch die Codeaufkleber für den RP6:
    http://www.conrad.de/ce/de/product/191346/

    https://www.roboternetz.de/phpBB2/ze...=404960#404960
    +folgender Beitrag von SlyD.

    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!

Seite 2 von 2 ErsteErste 12

Berechtigungen

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

LiFePO4 Speicher Test