Движение по линии с двумя датчиками

Вы уже знаете алгоритм движения робота по черной линии с использованием одного датчика. Сегодня рассмотрим движение по линии с использованием двух датчиков цвета.
Датчики нужно установить таким образом, чтобы черная линия проходила между ними.
robo2sens
roboline
Алгоритм будет следующий:
• Если оба датчика видят белый цвет – двигаемся вперед;
• Если один из датчиков видит белый, а другой черный – поворачиваем в сторону черного;
• Если оба датчика видят черный цвет – мы на перекрестке (например, остановимся).

Для реализации алгоритма нам потребуется отслеживать показания обоих датчиков, и только после этого задавать движение роботу. Для этого будем использовать переключатели, вложенные в другой переключатель. Таким образом, мы опросим сначала первый датчик, а потом, независимо от показаний первого, опросим второй датчик, после чего зададим действие.
Подключим левый датчик к порту №1, правый – к порту №4.

Программа с комментариями:

2sensline

Не забывайте, что моторы запускаем в режиме «Включить», чтобы они работали столько, сколько необходимо исходя из показаний датчиков. Также, часто забывают о необходимости цикла — без него программа сразу завершится.

4 Комментарии

  1. Олег

    подскажите как в программе заставить работать одновременно два конструктора моих блоков? есть два средних мотора и датчик цвета, который работает с одним из моторов, команды выполняются по очереди, т.е. сначала алгоритм одной программы со средним мотором, потом программа со вторым средним мотором и датчиком цвета

    1. Denis_K (Автор записи)

      Если я правильно понял вопрос, то их надо запустить параллельно. Пример на скриншоте https://drive.google.com/open?id=13e_EB9LNvjerhPOuSpu1BaKMoTMSy_yJ

      1. Олег

        совершенно верно, запуск их должен быть параллельным. в цикл возводить не нужно?

        1. Denis_K (Автор записи)

          Для повтора да, нужно каждый блок поместить в цикл.

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *