Вопросы по работе библиотеки Servo
- Войдите на сайт для отправки комментариев
Вопрос к тем, кто уже работал с этой библиотекой и серво не углового типа, а продолжительного вращения.
Как правильно использовать команду Servo.write() при работе с серво с продолжительным вращением?
В документации по библиотеке Servo на сайте www.arduino.cc написано что, при использовании команды Servo.write() с такими серво параметр 0 означает вращение на полной скорости в одну сторону, 90 - отсутствие вращения, 180 - вращение на полной скорости в другую сторону. Написал код по этому алгоритму работы.
Но вот вчера решил проверить какой тип параметров передается этой команде, так как в документации на сайте об этом решили не писать вообще. Открываю файл с описанием этой библиотеки servo.h и читаю, что значение до 200 используется для угловых серво, а для серво с продолжительным вращением используется значения 1500 +-500
Чему верить? Не хотелось бы потом переписывать весь код программы, а серво ещё не приехало. Поэтому проверить сейчас не могу.
Серво такое есть, надо проверить )))
Проверьте если не трудно. Спасибо заранее.
На этом коде не работает, крутит оборота по 2,5 - 3 в одну сторону, а потом в обратную сторону, сильно разбираться не стал, мне серва нужна для имитации аналоговой стрелки на 360 градусов
То есть крутит не 2 секунды подряд, а немного поворачивает и все? А потом через 4 сек в другую сторону? Если так, значит документация кривая на www.arduino.cc выложена. Должно было 2 сек в одну сторону, потом 2 сек пауза, потом 2 сек в другую сторону, потом 5 сек пауза. И так по кругу.
Жаль, придется программу переписывать заново. Спасибо Вам за проверку.
Сегодня проверю, скажу точно, что и как, через пару часиков
скетч работает в точности как написано, то-есть вращение по времени
Значит все нормально. Спасибо Вам ещё раз за проверку.
Значит все нормально. Спасибо Вам ещё раз за проверку.
Не за что! Не могу представить, как это может пригодиться )))
Точного позиционирования ведь не добиться жеж или...???
А зачем мне точное позиционирование? Серво подключены к колесам двухколесного робота. Ардуино принимает через RF модуль команды с headset NeuroSky MindWave и управляет перемещением робота. Мне нужно только будет подогнать интервалы включения и скорость вращения серво для адекватной реакции на команды. Делал подобное просто на DC двигателях с управлением через драйверы, там точность оставляет желать лучшего. А с серво точности вполне достаточно. И управление проше получается.
Если нужно точное позиционирование, тогда нужно использовать шаговые двигатели. Также делал подобный проект для управления CNC гравировальным станком. Там позиционирование очень точное, до 1 шага и меньше с хорошими драйверами.