====== @amperka/robot-2wd ======
Библиотека для управления двухколёсным шасси на коллекторных двигателях. Использует библиотеку [[js:motor|'@amperka/motor']] и может работать с [[amp>product/arduino-motor-shield|Motor Shield]].
// Подключаем библиотеку
var marsohod = require('@amperka/robot-2wd')
.connect();
// Двигаемся вперёд на 50-процентной мощности моторов
marsohod.go({l: 0.5, r: 0.5});
===== Функции и объекты модуля =====
func:: connect([opts])
Возвращает новый объект ''Robot''.
В качестве ''opts'' принимается объект с полями:
* ''leftMotor'' — левый двигатель шасси, объект ''Motor'' библиотеки '@amperka/motor';
* ''rightMotor'' — правый двигатель шасси, объект ''Motor'' библиотеки '@amperka/motor';
* ''acceleration'' — ускорение шасси при старте и остановке. Значение в диапазоне [0.0; 1.0].
Если моторы подключены к Motor Shield, оставьте параметр ''opts'' пустым.
class:: Robot
Класс для работы с шасси. Для создания нового объекта, используйте функцию ''connect''.
meth:: Robot.go(opts)
Функция задаёт скорость двигателей в шасси.
В качестве ''opts'' принимается объект с полями ''l'' и ''r'' — скорость левого и правого двигателей соответственно. Скорость задаётся в диапазоне [-1.0; 1.0]. Примеры значений:
* ''-1'' — полный назад;
* ''-0.25'' — назад на 25% мощности;
* ''0'' — стоп;
* ''0.5'' — вперед на 50% мощности;
* ''1.0'' — полный вперёд
При выходе значения за границы диапазона, оно будет автоматически приведено к ближайшей границе диапазона.
// Вращаемся через левое плечо
marsohod.go({l: -0.8, r: 0.5});
meth:: Robot.stop()
Функция резкого останова двигателей. Игнорирует плавное замедление, указанно в параметре ''acceleration''.
meth:: Robot.acceleration([acc])
Функция меняет значение ускорения, выставленного в параметре ''acceleration'' функции ''connect''. Если передать ''acc'' пустым, функция вернёт текущее значение ускорения. Изменение скорости происходит с периодом 20 мс.
// Задаём ускорение двигателей
marsohod.acceleration(0.25);
print(marsohod.acceleration()); // выведет 0.25