Довольно многие, кто узнают о существовании блока Motor, почти сразу задают вопрос - а зачем он нужен? Ведь есть блок Move - он может все то же самое?
Правильно было бо сказать почти все.
Во-первых, блок Motor позволяет управлять только одним мотором, в то время как блок Move позволяет управлять одновременно несколькими.
Во-вторых, в этом блоке есть такие параметры как Action, Control и Wait. Причем, Action и Wait доступны только когда движение задается в оборотах или градусах поворота двигателя.
И если с параметром, Wait все более-менее понятно - передавать ли управление сразу следующему элементу программы после включения моторов или нет, то с параметром Action - не все так просто. В нем содержиться три возможных значения: Constant, Ramp Up и Ramp Down.
Значение Constant выставляется по-умолчанию: мотор будет запущен и заданное количество энергии подастся на него сразу же как только блок выполиться.
Значение Ramp Up отвечает за постепенное увеличение энергии, подаваемой на мотор, до заданной величины. Например, если в Power указать 70%, в Duration - 180 degrees, то мотор начнет вращаться медленно, но в течении времени пока он провернется на 180 градусов, мощность его постепенно возрастет до 70%.
Значение Ramp Down действует аналогично Rump Up, но в обратную сторону. Энергия постепенно будет уменьшаться с заданной величины, в течении заданного количества оборотов двигателя.
Обе значения могут применяться тогда, когда резкий старт или остановка нежелательны. Например,
- робот очень высоки и при резком старте может опрокинуться
- колеса робота проскальзывают при резком старте
- робот везет груз, который при резком торможении слетает
- рывки при старте и остановке мешают точности позиционирования робота
Не следует путать эти значение с параметром торможения Coast. Coast отключает энергию от двигателей когда заданное количества движения (количество поворотов) УЖЕ свершилось, в то время как Ramp Down контролирует энергию ДО завершения движения.
Следующие два ролика демонстрируют проявление Ramp Up и Ramp Down при работе двигателей.
Плавное начало движения для тележки с двумя ведущими колесами с помощью блока Motor может выглядеть следующим образом:
Тележка плавно разгоняется в течении первого поворота колеса, а затем едет до возникновения какого-то события. Отметьте, что для предотвращения рывка после завершения первого блока Motor и второго блока Motor, используется Coast параметр торможения.
P.S. Параметр Control (Motor Power) будет пытаться компенсировать движение по сложным поверхностям (прокручивание колес, сопротивление резкому старту на песке и пр.), так чтобы скорость движения по ним была постоянна.
Комментариев нет:
Отправить комментарий