Официальный сайт компании Arduino по адресу arduino.cc
Поворотная видеокамера. ШД noname, драйвер A4988
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Вс, 07/02/2016 - 22:36
Видеокамера будет установлена на платформу управляемую 2мя ШД (маркировки нет, достались из неисправный поворотной камеры, 4 вывода) с помощью джойстика. Драйвер а4988. 2шт схема включения стандартная.
2 оси
Горизонталь поворот 360
Вертикаль 90(но возможно до 180)
Прошу помощи от уважаемых форумчан как связать возвращаемое значение analogRead от 0 до 1023 связать с командами для ШД? И также камера в случае покоя должна остаться под заданным углом, (шд должны удерживать заданное положение, т.к. боюсь что от веса под действием центра тяжести она будет опускаться вниз) - мне нужно использование библиотеки Accelstepper для данной задачи?
Благодарю всех откликнувшихся.
Данный код не работает. При отклонении рычага джойстика ШД делает 1 шаг, при отклонении в др сторону делает 1 шаг в ту же сторону что и первый раз.
Здесь http://pacpac.ru/forum/viewtopic.php?p=919 код рабочий.
Спасибо vladimir62 за ссылку на код. Изменил под свои нужды.
Помогите доработать остановку при достижении двигателем поворота 360 градусов. Используется оптопара, на платформе закреплена заслонка которая управляет оптопарой. 33 открыт 215 закрыт. Код работает но логика глупая, Помогите пожалуйста с логикой
Кусок скетча с 26 по 34 останавливает и запускает ШД на 1 шаг каждые 0.5 сек пока я не поменяю направление вращения.
Заранее всем спасибо.
чего-то я не понял, а где указание на направление вращения? обычно в библиотеке это отдельные параметры как и строки 9,10,27 (пост 3) т.е. нехватает еще одного параметра, где пример тестового кода?
Хм, мне сложно объяснить, но опытным путем проверено - джойстик управляет мотором в обе стороны, код составлял брав за основу код и поста выше по ссылке.
Левое положение джойстика вернет 1, 1 - 512 равно -511 ранспид(-511) крутит его в обратную сторону. Вся соль в 13й строке).
Да и для работы ШД нужно задать только макс.скорость и ускорение
Можно упростить запись
|| и && - логические операторы
Чтобы все крутилось в нужную сторону, необходимо добавить условие. Скетч выполняется в loop по кругу, по очереди, с верху в низ. Соответственно, условия должны проверяться и исполнятся без противоречий.
Я бы добавил что-то типа:
Спасибо Вам за помощь, только в тот момент как оптопара будет закрыта, ШД исходя из кода не будет двигаться никуда, т.е. код работает только до момента пока он не встретит оптопару. Видимо нужно вводить еще одно условие при котором stopR ==0(ШД сделал 360 гр и замер в положении с закрытой оптопары) и нужно узнавать что оператор поменял направление джойстика(разностью значений Х в конце программы и Х в новом цикле) и тогда нужно снова запускать ШД, но как это выразить к коде пока не знаю.