Pages: [1]   Go Down
Author Topic: Wall-e tut nicht was er soll  (Read 376 times)
0 Members and 1 Guest are viewing this topic.
Germany-Leipzig
Offline Offline
Newbie
*
Karma: 0
Posts: 43
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Habe ein fertigen Sketch. Dieser funktioniert einwandfrei.
Wenn ich aber noch eine Funktion einfüge in meinen void loop(),
dann wird er nicht mehr ausgeführt.

wenn ich die 2. Funktion auskommentiere (  //walletouch  ), funktioniert alles wie bisher.

Hat einer ne Ahnung woran das liegt?

Code:
Code:
void loop()
{

  scan();  
  if(!cornerNav()){
    bumpSteer();
  }
  //delay(90000);
  //walletouch();

}


void walletouch(){
  rightWheel.write(R_STOP);
  leftWheel.write(L_STOP);
  head.write(CENTER);
  delay(400);
  head.write(LEFT);
  delay(1500);
  head.write(CENTER);
  delay(1000);
  head.write(RIGHT);
  delay(1500);
  //Sprechen kommt noch
  head.write(CENTER);
  delay(500);
  leftArm.write(RIGHT);
  rightArm.write(LEFT);
  delay(1000);
  leftWheel.write(L_FULL_REVERSE);
  rightWheel.write(R_FULL_REVERSE);
  delay(1000);
  rightWheel.write(R_FULL_REVERSE);
    leftWheel.write(L_FULL_FORWARD);
  delay(1500);
  scan();  
  if(!cornerNav()){
    bumpSteer();
    }
  delay(5000);
  rightWheel.write(R_FULL_FORWARD);
    leftWheel.write(L_FULL_REVERSE);
  delay(1500);
  scan();  
  if(!cornerNav()){
    bumpSteer();
    }
  delay(5000);
}

Es ist ein Hack eines Wall-e Spielzeuges, gesteuert durch Arduino, 5 Servos, 1 Sharp IR Sensor.

Wenn ihr mehr Information braucht oder mehr als diesen Programmschnipsel, sagt bitte bescheid.

Danke Chris
Logged

Germany-Leipzig
Offline Offline
Newbie
*
Karma: 0
Posts: 43
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Habs selber gelöst.

in meinem Sketch wurde scan() nur einmal ausgeführt und dann 90000 millis gewartet.

Hab jetzt ne While-Schleife genommen.

Code:
void loop()
{
while(schleife<1000)
{
  scan();  
  if(!cornerNav()){
    bumpSteer();
  }
}
  walletouch();
  schleife = 0;
while(schleife<2000)
{
  scan();  
  if(!cornerNav()){
    bumpSteer();
  }
}
walletouch();
  schleife = 0;

}
Logged

Pages: [1]   Go Up
Jump to: