Go Down

Topic: Ayuda con Arduino YUN y Motor Shield (Read 703 times) previous topic - next topic

ecopika

Nov 26, 2013, 11:16 am Last Edit: Nov 26, 2013, 12:01 pm by ecopika Reason: 1
Hola buenas,

Tengo un problema con Arduino Yun la cosa es que, tengo un Sketch que controla un Stepper a través del Nunchuk de la Wii, y resulta que todo funcionaba a la perfección con Arduino UNO, pero recientemente me ha llegado la Arduino YUN y no entiendo porqué pero el Sketch no funciona con YUN no hace nada ni tan siquiera mueve el Stepper, y por separado tampoco me detecta ni el Nunchuk ni mueve el motor ni hace nada de eso y me gustaría saber que modificaciones debería hacerle al siguiente Sketch, o como debería hacerlo para que funcionase.

Gracias!!!

Sketch:
Code: [Select]

#include <Wire.h>
#include <WiiChuck.h>
#include <Stepper.h>


const int ppr = 200;//passos totals per fer una volta
Stepper stepper1(ppr, 12,13);

WiiChuck chuck = WiiChuck();

const int pwmA = 3;
const int pwmB = 11;
const int brakeA = 9;
const int brakeB = 8;
const int dirA = 12;
const int dirB = 13;
int vel = 40;
void setup() {

 
 Serial.begin(115200);
 chuck.begin();
 chuck.update();
 pinMode(pwmA, OUTPUT);
pinMode(pwmB, OUTPUT);
pinMode(brakeA, OUTPUT);
pinMode(brakeB, OUTPUT);
digitalWrite(pwmA, HIGH);
digitalWrite(pwmB, HIGH);
digitalWrite(brakeA, LOW);
digitalWrite(brakeB, LOW);
stepper1.setSpeed(50);

}

void loop() {
 delay(20);
 chuck.update();

 
 Serial.print(chuck.readJoyY());
   Serial.print(", ");  

   Serial.println();

if(chuck.readJoyY() > 7 && chuck.readJoyY() < 40){
 stepper1.setSpeed(10);
 stepper1.step(1);
 

}

else if(chuck.readJoyY() > 40 && chuck.readJoyY() < 60){
 stepper1.setSpeed(vel);
 stepper1.step(5);

 if(vel<30){
     vel++;
 }

}

else if(chuck.readJoyY() > 60 && chuck.readJoyY() < 80){
   stepper1.setSpeed(80);
 stepper1.step(10);
 

}

else if(chuck.readJoyY() > 80 ){
   stepper1.setSpeed(100);
 stepper1.step(15);

}



else if(chuck.readJoyY() < -30 && chuck.readJoyY() > -50){
  stepper1.setSpeed(40);
 stepper1.step(-1);
}

else if(chuck.readJoyY() < -50 && chuck.readJoyY() > -80){
  stepper1.setSpeed(60);
 stepper1.step(-5);
}

else if(chuck.readJoyY() < -80 && chuck.readJoyY() > -100){
  stepper1.setSpeed(80);
 stepper1.step(-10);
}

else if(chuck.readJoyY() < -100){
  stepper1.setSpeed(100);
 stepper1.step(-15);
}

else
 stepper1.step(0);



}


Go Up