[AJUDA] error: expected unqualified-id before numeric constant

Estou fazendo um seguidor de linha e agora quando creio que ja terminei meu codigo aparece este seguinte erro ( error: expected unqualified-id before numeric constant ) ele não identifica nem um alinha so apresenta o erro. Pesquisei por esse erro mas não descobri o que ele significa e não consigo identificar o problema em meu codigo. Se alguem poder me ajudar fico grato

//Definições para controlar o Motores
#define enable1 12 // velocidade motor 1
#define enable2 13 // velocidade motor 2
#define A1  8  // motor 1
#define A2  9 
#define B1  10 // motor 2
#define B2  11

//Definição dos pinos onde estão os sensores
#define linha1 22
#define linha2 24
#define linha3 26
#define linha4 28
#define linha5 30
#define linha6 32
void setup()
{
  //Define pinos como saída
  pinMode(enable1, OUTPUT);
  pinMode(enable2, OUTPUT);
  pinMode(A1, OUTPUT);
  pinMode(A2, OUTPUT);
  pinMode(B1, OUTPUT);
  pinMode(B2, OUTPUT);
}
void loop(){
int val_sensores = lesensores();
if (val_sensores == 0 || val_sensores == 10 || val_sensores == 20 )
{
  IrFrente();
}
 else if (val_sensores == 5 || val_sensores == 15 || val_sensores == 25 )
 {
 IrDireita();
 }
 else if (val_sensores == 3 || val_sensores == 13 || val_sensores == 23 )
 { 
  IrEsquerda();
 }
 else if (val_sensores == 7 || val_sensores == 22 || val_sensores == 32 )
 {
 girar90grausDireita();
 }
 else if (val_sensores == 1 || val_sensores == 14 || val_sensores == 24 )
 {
 girar90grausEsquerda();
 }

 }




void IrFrente(){
    analogWrite(enable1, 255); 
    analogWrite(enable2, 255);
    digitalWrite(A1, LOW);
    digitalWrite(A2, HIGH);
    digitalWrite(B1, LOW);
    digitalWrite(B2, HIGH);
    }
    
void IrEsquerda(){
      analogWrite(enable1, 255);
      analogWrite(enable2, 0); 
      digitalWrite(A1, LOW);
      digitalWrite(A2, HIGH);
      digitalWrite(B1, LOW);
      digitalWrite(B2, HIGH);
      }

void IrDireita(){
      analogWrite(enable1, 0); 
      analogWrite(enable2, 255);
      digitalWrite(A1, LOW);
      digitalWrite(A2, HIGH);
      digitalWrite(B1, LOW);
      digitalWrite(B2, HIGH);
      }
 
 void girar90grausDireita(){
analogWrite(enable1, 200);
analogWrite(enable2, 200);
digitalWrite(A1, LOW);
digitalWrite(A2, HIGH);
digitalWrite(B1, HIGH);
digitalWrite(B2, LOW);
delay(450); 
}
 
 void girar90grausEsquerda(){
analogWrite(enable1, 200);
analogWrite(enable2, 200);
digitalWrite(A1, HIGH);
digitalWrite(A2, LOW);
digitalWrite(B1, LOW);
digitalWrite(B2, HIGH);
delay(450); 
}
 


int lesensores(){
//--------------------
  int sensores = 0;
  pinMode( linha1, OUTPUT );
  digitalWrite( linha1, HIGH );
  delayMicroseconds(10);
  pinMode( linha1, INPUT );
  long time1 = micros();

  while (digitalRead(linha1) == HIGH && micros() - time1 < 3000);
  int diff1 = micros() - time1;
if (diff1 > 1600)
    sensores += 1;
    
//---------------------
  pinMode( linha2, OUTPUT );
  digitalWrite( linha2, HIGH );
  delayMicroseconds(10);
  pinMode( linha2, INPUT );
  long time2 = micros();

  while (digitalRead(linha2) == HIGH && micros() - time2 < 3000);
  int diff2 = micros() - time2;

  if (diff2 > 1600)
    sensores += 3;
//------------------------
pinMode( linha3, OUTPUT );
  digitalWrite( linha3, HIGH );
  delayMicroseconds(10);
  pinMode( linha3, INPUT );
  long time3 = micros();

  while (digitalRead(linha3) == HIGH && micros() - time3 < 3000);
  int diff3 = micros() - time3;
if (diff3 > 1600)
    sensores += 10;
//-----------------------------      
    pinMode( linha4, OUTPUT );
  digitalWrite( linha4, HIGH );
  delayMicroseconds(10);
  pinMode( linha4, INPUT );
  long time4 = micros();

  while (digitalRead(linha4) == HIGH && micros() - time4 < 3000);
  int diff4 = micros() - time4;
if (diff4 > 1600)
    sensores += 10;
//----------------------    
    pinMode( linha5, OUTPUT );
  digitalWrite( linha5, HIGH );
  delayMicroseconds(10);
  pinMode( linha5, INPUT );
  long time5 = micros();

  while (digitalRead(linha5) == HIGH && micros() - time5 < 3000);
  int diff5 = micros() - time5;
if (diff5 > 1600)
    sensores += 5;
//--------------------------    
    pinMode( linha6, OUTPUT );
  digitalWrite( linha6, HIGH );
  delayMicroseconds(10);
  pinMode( linha6, INPUT );
  long time6 = micros();

  while (digitalRead(linha6) == HIGH && micros() - time6 < 3000);
  int diff6 = micros() - time6;
if (diff6 > 1600)
    sensores += 7;
    
  return sensores;
}

Vou fazer uma breve explicação do codigo para tentar deixa-lo mais claro:

No meu codigo estabeleço um valor para cada um dos 6 sensores, pela soma total dos valores consigo localizar a posição da linha
os valores que estabeleci são:
sensor1 = 1
sensor2 = 3
sensor3 = 10
sensor4 = 10
sensor5= 5
sensor6 = 7

o valor de posição ideal é 20 quando a linha esta no centro do robo sobre os sensores 3 e 4.

Desta forma a cada valor de posição poso escolher a ação dos motores para corrigi-lo, ex: o valor total deu 15 isto indica que a linha esta sobre os sensores 4 (valor 10) e sobre o sensor 4 (valor 5) então a linha esta mais a direita do centro

O erro que te dá é este:

In file included from C:\Users\XXXX\Documents\arduino-1.0.3\hardware\arduino\cores\arduino/Arduino.h:12,
from sketch_jun21a.ino:16:
C:\Users\XXXX\Documents\arduino-1.0.3\hardware\arduino\cores\arduino/binary.h:12:1: warning: "B1" redefined
sketch_jun21a.ino:6:1: warning: this is the location of the previous definition
In file included from C:\Users\XXXX\Documents\arduino-1.0.3\hardware\arduino\cores\arduino/Arduino.h:213,
from sketch_jun21a.ino:16:
C:\Users\XXXX\Documents\arduino-1.0.3\hardware\arduino\variants\standard/pins_arduino.h:50: error: expected unqualified-id before numeric constant
C:\Users\XXXX\Documents\arduino-1.0.3\hardware\arduino\variants\standard/pins_arduino.h:51: error: expected unqualified-id before numeric constant

Se fores aos ficheiros pins_arduino.h e procurares as linhas 50 e 51...

aparece-te isto:

static const uint8_t A1 = 15;
static const uint8_t A2 = 16;

o static indica que estas variáveis são inicializadas uma vez e depois ficam sempre com o mesmo valor.
o const indica que são constantes... ou seja, ninguém pode alterar o seu valor.

Quando tu fazes isto:

#define A1  8  // motor 1
#define A2  9

Estás efectivamente a criar um símbolo duplicado... e é o erro que vês.
Muda o nome das variáveis e isso fica resolvido.