Корисні функції трансмісії
Протягом цього модуля ми розглянули різні способи руху вперед і повороту за допомогою налаштування зусиль, швидкості та зчитування енкодерів. Однак XRPLib також надає кілька зручних функцій, що полегшують роботу користувача. Ці функції використовують більш складні обчислення, щоб забезпечити плавний рух XRP і точне дотримання потрібної відстані кожного разу.
Ця функція буде рухати робота прямо вперед на відстань у сантиметрах, яку ви вкажете. Інші два параметри є опціональними. Ви можете вказати для них значення, але якщо ви цього не зробите, буде використано значення за замовчуванням.
Виклик функції таким чином: drivetrain.straight(20) змусить
робота проїхати 20 сантиметрів прямо, використовуючи стандартні значення для всього
іншого, тобто максимальне зусилля 50% і відсутність тайм-ауту.
Ви також можете використовувати від’ємне значення для відстані, щоб рухатися назад.
Параметр max_effort визначає, скільки зусиль робот може
застосовувати під час руху. За замовчуванням це 50%, що є достатнім зусиллям для нормального
руху по рівній поверхні..
Параметр timeout визначає час у секундах, протягом якого робот
повинен намагатися рухатися, перш ніж здатися. Наприклад, що робити, якщо ваш робот натрапив на
перешкоду під час руху і колеса застрягли?
Робот буде використовувати енкодери для вимірювання коліс і помітить, що він ніколи не доїхав до заданої вами відстані, тому буде намагатися безкінечно, і жоден з ваших кодів не буде виконуватися після цього.
Тайм-аут дозволяє встановити максимальний час, протягом якого XRP повинен намагатися, перш ніж
здатися. Зазвичай вам не доведеться використовувати цю функцію, але вона є, якщо вам знадобиться.
Ця функція схожа на функцію straight, за винятком того, що вона
обертає робота, а не рухає його вперед.
Параметр turn_degrees дозволяє вказати роботу, на скільки градусів він
повинен повернутись. Позитивні значення означають поворот проти годинникової стрілки, а негативні значення — поворот за годинниковою стрілкою.
Спробуйте
Напишіть код, щоб робот проїхав 20 сантиметрів прямо, а потім повернув на 90
градусів за годинниковою стрілкою. Не забудьте додати оператор
from XRPLib.defaults import * у верхній частині програми.

