Hi
I have a problem when i try to run my program. The program is to run a differential drive robot.
The problem is whenever I include the print statements, there is nothing in the output, I mean the robot does not run at all... if I just remove the print statements, or atleast some of them, there is some output.
anyidea why this is happening.
void setup()
{
//Initialize Serial Link
//##################################################
Serial.begin(9600);
//Set Initial Encoder Positions
//##################################################
encoderMotorL.setPosition(0);
encoderMotorR.setPosition(0);
//Assign Interrupts for Encoder A and B
//##################################################
attachInterrupt(0, HandleMotorLInterruptA, CHANGE); // Pin 2
attachInterrupt(1, HandleMotorLInterruptB, CHANGE); // Pin 3
attachInterrupt(5, HandleMotorRInterruptA, CHANGE); // Pin 18
attachInterrupt(4, HandleMotorRInterruptB, CHANGE); // Pin 19
//Initialize motor spin direction
//##################################################
digitalWrite(DirMotorL, LOW); digitalWrite(DirMotorR, LOW);
Serial.print("Running \n");
//Initialize Timer1 to 1sec period and attach interrupt
//##################################################
//Serial.print("\nVeld\tXd\tYd\tVxd\tVyd\tAxd\tAyd\tVelL\tVelR\tTheta\tPosX\tPosY\tVx\tVy\tVc\tAc\tv1\tv2\twL\twR\twLa\twRa\n");
Timer1.initialize(500000);
Timer1.attachInterrupt(Control);
}
void loop()
{
--some code--
delay(10);
}
void Control()
{
--again some code --
printall()
}
void printall()
{
Serial.print(Veld);Serial.print("\t");Serial.print(Xd);Serial.print("\t");
Serial.print(Yd);Serial.print("\t");Serial.print(Vxd);Serial.print("\t");
Serial.print(Vyd);Serial.print("\t");Serial.print(Axd);Serial.print("\t");
Serial.print(Ayd);Serial.print("\t");
Serial.print(VelL);Serial.print("\t");Serial.print(VelR);Serial.print("\t");
Serial.print(Theta);Serial.print("\t");
Serial.print(PosX);Serial.print("\t"); Serial.print(PosY);Serial.print("\t");
Serial.print(Vx);Serial.print("\t");
Serial.print(Vy);Serial.print("\t");Serial.print(Vc);Serial.print("\t");
Serial.print(Ac);Serial.print("\t");
Serial.print(v1);Serial.print("\t");Serial.print(v2);Serial.print("\t");
Serial.print(wL);Serial.print("\t");Serial.print(wR);Serial.print("\t");
Serial.print(wLa);Serial.print("\t");Serial.print(wRa);Serial.print("\n");
}
Thanks for your help
ksp