====== @amperka/motor ====== Библиотека для управления [[amp>collection/dc-motors|коллекторными моторами]] по протоколу Phase/Enable через H-мост вроде платы [[amp>product/arduino-motor-shield|Motor Shield]] или микросхемы [[amp>product/chip-l293dne|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); ===== Функции и объекты модуля ===== func:: connect(opts) Возвращает новый объект ''HBridge'' для управления моторами через H-мост. В качестве ''opts'' принимается объект с полями: * ''phasePin'' — пин, переключающий направление вращения; * ''pwmPin'' — пин с ШИМ-сигналом, задающий скорость вращения; * ''freq'' — частота ШИМ-сигнала в герцах. Необязательное поле. Если моторы подключены к Motor Shield, для удобства определения пинов используйте объект ''MotorShield''. class:: MotorShield Объект для удобного обращения к управляющим пинам MotorShield. При использовании этого объекта, частота ШИМ-сигнала будет равной 100 Гц. prop:: MotorShield.M1 Пины для управления двигателем, подключённым в клеммник M1. prop:: MotorShield.M2 Пины для управления двигателем, подключённым в клеммник M2. class:: HBridge Класс для работы с H-мостом. Для создания нового объекта, используйте функцию ''connect''. meth:: HBridge.write(speed) Подаёт крутящий момент на двигатель. В качестве ''speed'' принимается число в диапазоне [-1.0; 1.0], определяющее скорость и направление вращения. Примеры значений: * ''-1'' — полный назад; * ''-0.25'' — назад на 25% мощности; * ''0'' — стоп; * ''0.5'' — вперед на 50% мощности; * ''1.0'' — полный вперёд При выходе значения ''speed'' за границы диапазона, оно будет автоматически притянуто к ближайшей границе диапазона.