Çizgi İzleyen Robot Sorunu

Çizgi İzleyen robotumda sol teker ileri ve geri hareketini gayet iyi bir şekilde yaparken sağ teker ileri hareketi yapıyor fakat geri hareketini yapamıyor. Yardımcı olursanız sevinirim ve çok acill!! Kodu aşağı bıraktım.

void Motor_PID(int Main_Iteration)

{

short sol,sag; //Sol ve Sağ PWM değişkeni

sag=(Main_Iteration<0)? Main_Speed+Main_Iteration : Main_Speed; //Motorların gerekli hesaplamalarını yap

sol=(Main_Iteration<0)? Main_Speed : Main_Speed-Main_Iteration;

sag=(sag>255)? 255 :(sag<-255)? -255 : sag;

sol=(sol>255)? 255 :(sol<-255)? -255 : sol;

sag=(sag<-Main_Speed) ? -Main_Speed:sag;

sol=(sol<-Main_Speed) ? -Main_Speed:sol;

Serial.print(sol);

Serial.print(" X-X ");

Serial.println(sag);

Motor(sol,sag);

}