С помощью блока Независимое управление моторами можно самостоятельно указать мощность левого и правого колеса:
Режимы работы блока совпадают с режимами работы блока Рулевое управление. От соотношения мощностей будет зависеть скорость и направление движения робота:
Робот xпоедет прямо.
Робот повернёт xнаправоxодним колесом.
Робот повернёт xналевоxна месте.
Составьте следующую программу с помощью которой робот проедет прямо 45 см а потом повернёт направо на 135 градусов с помощью поворота на месте. Значения мощностей и необходимое количество оборотов выберите самостоятельно.
Чтобы проехать 45 см, колеса должны сделать x2.558 оборотов. Для поворота на 135 градусов нужно сделать x0.924 оборотов.
Beginning of dialog window. Escape will cancel and close the window.
End of dialog window.
Задание № 2. Поворот по дуге
Если мощности двигателей не равны друг другу, но имеют одинаковый знак, робот будет двигаться по дуге окружности определённого радиуса.
Получим формулу, с помощью которой можно будет рассчитать соотношение мощностей левого и правого моторов для плавного поворота по окружности радиуса .
Мощности левого и правого колёс относятся как радиусы окружностей, которые описывают левое и правое колесо соответственно: левправУравнение 1 поможет получить значение мощности одного колеса, по выбранной мощности второго колеса, радиусу поворота и ширине колеи робота .
Количество оборотов будем рассчитывать исходя из длины дуги, которую опишет колесо с большим радиус поворота. Используем Уравнение 1 и Уравнение 2, чтобы повернуть робота на 180 градусов по окружности радиусом 20 см. Подставим см и см в Уравнение 1: левправ Мощность лев возьмём равной 20. Значит прав будет равна x41.068.
Рассчитаем количество оборотов с помощью Уравнение 2:
Составьте следующую программу, чтобы проверить правильность вычислений:
Beginning of dialog window. Escape will cancel and close the window.
End of dialog window.
Точность вычислений
Все вычисляемые значения мощностей и количества оборотов приблизительны. Может понадобится вручную подобрать более точные значения, исходя из поверхности, по которой движется робот.
✍️ Сделайте самостоятельно
Восьмёрка
Составьте программу движения робота по фрагменту восьмёрки. Повороты должны быть плавными. Расстояние между бочками - 50 см. Стартовая позиция робота находится на расстоянии 25 см от одной из бочек.
Beginning of dialog window. Escape will cancel and close the window.
End of dialog window.
Условием остановки робота можно считать момент, когда кнопка датчика касания перестаёт быть нажатой.
Задание № 4. Цикл
Многократное повторение команд можно реализовать с помощью блока Цикл:
Как и у многих других блоков, цикл может работать в нескольких режимах: бесконечное повторение до остановки программы, определённое количество повторений, завершение по таймеру и так далее.
✍️ Сделайте самостоятельно
Робот движется между двумя стенами без остановки. Расстояние между стенами может поменяться в процессе работы программы.
Beginning of dialog window. Escape will cancel and close the window.
End of dialog window.
✍️ Сделайте самостоятельно
md`Составьте программу с помощью которой робот проедет по сторонам ${d3.shuffle(["восьмиугольника","семиугольника","шестиугольника"])[0]}. Длина стороны многоугольника - *${d3.shuffle([10,15,20])[0]} см*.`
Составьте программу с помощью которой робот проедет по сторонам семиугольника. Длина стороны многоугольника - 10 см.
В видео показан пример выполнения задания для пятиугольника.