Максим3230

ROB-26240

Робот для езды по узкой черной линии использует три инфракрасных датчика плотно прижатых к поверхности поля. Ширина трёх датчиков равна ширине линии.

Когда линия находится под тремя датчиками робот едет вперед, когда робот съехал левым датчиком с линии, робот поворачивается вправо, когда съехал правым - влево.

Пример программы представлен ниже


while(1)
{
if(ir(1,950,NONE)==TRUE&&ir(2,0,NONE)==TRUE&&ir(3,950,NONE )==TRUE)
{
dc_motor(LEFT_MOTOR_1,FORWARD_DIRECTION,10);
dc_motor(RIGHT_MOTOR_1,FORWARD_DIRECTION,10);
}
if(ir(1,950,SENSE)==TRUE&&ir(2,950,NONE )==TRUE&&ir(3,0,NONE)==TRUE)
{
dc_motor(LEFT_MOTOR_1,FORWARD_DIRECTION,10);
dc_motor(RIGHT_MOTOR_1,BACKWARD_DIRECTION,-10);
}
if(ir(1,0,NONE)==TRUE&&ir(2,950,NONE)==TRUE&&ir(3,950,SENSE)==TRUE)
{
dc_motor(LEFT_MOTOR_1,BACKWARD_DIRECTION,-10);
dc_motor(RIGHT_MOTOR_1,FORWARD_DIRECTION,10);
}
}