Araña paseante y seguidor solar

Buenas noches.
Estoy liado haciendo una araña con las patas de Theo Jansen a motor y encima de ellas, un seguidor solar que tengo casi terminado, a fala de corregir un pequeño problema para el que espero me ayuden.
Ya que la araña se va a dedicar a dar vueltas por ahí, he puesto un motor dc en vez de un servo para el movimiento horizontal del seguidor solar. Probé primero con un paso a paso pero era muy lennnnto. El caso es que no consigo que el motor se pare una vez localizado el foco de luz. queda permanentemente girando en un sentido u otro. Les paso el código que lo controla a ver si pueden echarme una mano.

 // aqui empieza el movimiento del motor
  if (-1*tolerancia_motor > difHORIZON || difHORIZON > tolerancia_motor) // revisar la diferencia para cambiar al angulo horizontal
  {
  if (avIZQ > avDRCH){
              motor_izquierda();
   }else if (avIZQ < avDRCH){
     motor_derecha();
  }else if (avIZQ = avDRCH){
   
  }
  }
   delay(dtime);
}
void motor_derecha ()  // motor dc
{
 //Direccion motor A
 digitalWrite (IN1, HIGH);
 digitalWrite (IN2, LOW);
 analogWrite (ENA, 100); //Velocidad motor A
}

void motor_izquierda ()    // motor dc
{
 //Direccion motor A
 digitalWrite (IN1, LOW);
 digitalWrite (IN2, HIGH);
 analogWrite (ENA, 100); //Velocidad motor A
  
}

Quedo a la espera de consejos. Gracias