@amperka/motor

Библиотека для управления коллекторными моторами по протоколу Phase/Enable через H-мост вроде платы Motor Shield или микросхемы L293D.

// Подключаем библиотеку
var Motor = require('@amperka/motor');
 
// Подключаем мотор канала M1 на Motor Shield
var myMotor = Motor.connect(Motor.MotorShield.M1);
 
// Альтернативный способ подключения с указанием пинов
//var myMotor = Motor.connect({phasePin: P4, pwmPin: P5, freq: 100});
 
// Крутим мотор назад на 85% мощности
myMotor.write(-0.85);

Функции и объекты модуля

connect(opts)

Возвращает новый объект HBridge для управления моторами через H-мост.

В качестве opts принимается объект с полями:

  • phasePin — пин, переключающий направление вращения;
  • pwmPin — пин с ШИМ-сигналом, задающий скорость вращения;
  • freq — частота ШИМ-сигнала в герцах. Необязательное поле.

Если моторы подключены к Motor Shield, для удобства определения пинов используйте объект MotorShield.

MotorShield

Объект для удобного обращения к управляющим пинам MotorShield. При использовании этого объекта, частота ШИМ-сигнала будет равной 100 Гц.

MotorShield.M1

Пины для управления двигателем, подключённым в клеммник M1.

MotorShield.M2

Пины для управления двигателем, подключённым в клеммник M2.

HBridge

Класс для работы с H-мостом. Для создания нового объекта, используйте функцию connect.

HBridge.write(speed)

Подаёт крутящий момент на двигатель.

В качестве speed принимается число в диапазоне [-1.0; 1.0], определяющее скорость и направление вращения. Примеры значений:

  • -1 — полный назад;
  • -0.25 — назад на 25% мощности;
  • 0 — стоп;
  • 0.5 — вперед на 50% мощности;
  • 1.0 — полный вперёд

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