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

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

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

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

2sensline

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

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

  1. Олег

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

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

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

      1. Олег

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

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

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

  2. j.bai.

    Выложите пожалуйста иструкцию,. Как делать этого робота)))

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

      Основа робота эта: http://rbs.felk.cvut.cz/files/RileyRover_BI.pdf
      Ну и самостоятельно придумываем, как прикрепить датчики, вариантов много)

  3. Долганов Артём

    Подскожи какая нужна команда чтобы шагающий робот ездил по линие

  4. Андрей Баженов

    Подскажите как сделать чтобы робот остановился после пересеченя черной линии 6 раз

  5. Ернар

    Помогите пожалуйста не могу обяденить программу линий и лабиринта вместе ,чтоб когда датчик увидел синий цвет он автоматически переключался на лабиринт !
    Фото полигона который я хочу пройти с роботом https://vk.com/wall-180770810_6

  6. Гульнара

    почему у меня не получилось запустить эту программу с двумя датчиками. Помогите пожалуйста с программой для гонок по линии с двумя датчиками. чтобы робот был скоростной.

  7. Серик

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

  8. Екатерина

    Подскажите пожалуйста как ездить с двумя датчиками по черной линии с перекрестками

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

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

  9. Валерий

    Подскажите, пожайлуста, как организовать схожий механизм действий для средних моторов?

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

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

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

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