Доброго дня. Требуется помощь в программной части проекта,а именно написать скетч для ардуино уно. Имеется ардуино уно,акселерометр,коллекторный моторчик и драйвер моторов. Собрал схему,написал 2 скетча.1ый скетч выводит показания акселерометра,второй управляет мотором(вращает в одну сторону-пауза-вращается в обратную сторону). Суть вопроса-нужна помощь в написании скетча,который при определенных пределах отклонениях акселерометра приводил в действие мотор.Грубо говоря,когда акселерометр перемещается в пространстве включается мотор,как только акселерометр успокаивается-мотор отключается. Заранее спасибо
Желательно,но не обязательно.Главное,чтоб мотор приводился в действие(натягивал на вал тросик) когда акселерометр фиксирует колебания и успокаивался,то есть вращался обратно,чтоб вернуть тросик в первоначальный вид. Для мотора использовал примитивный скетч(спасибо гуглу): digitalWrite (IN2, HIGH); digitalWrite (IN1, LOW); delay(4000); digitalWrite (IN2, LOW); delay(500); digitalWrite (IN1, HIGH); delay(4000); digitalWrite (IN1, LOW);
Вы не полностью сформулировали свою задачу. Сколько вращаться, что значит первоначальный вид и чем он будет у вас определяться
К валу мотора прикреплен тросик,который в свою очередь прикреплен к колеблющийся системе.Как только система входит в состояние колебаний,срабатывает акселерометр(фиксирует отклонение по 3м осям),мотор приходит в действие и вращается(наматывает на вал тросик) до тех пор,пока акселерометр не покажет диапазон приемлемых значений(колебательная система пришла в состояние покоя),система в покое,мотор вращается обратно,чтоб размотать тросик с вала мотора. Вобще,система предназначена для гашения отклонения проводов и автоколебаний. Вобще конечно можно упростить,мотор может натягивать тросик(после возникновения отклонения) определенное время,то есть команду заставляющую мотор вращаться в обратную сторону привязать не к акселерометру,а временному промежутку.
таким образом вы мотор в исходное положение никогда не вернёте. нужна обратная связь (датчик, энкодер, концевик, геркон, ....)
Хорошо,а если вращение сделать по времени?То есть старт вращению будет придавать сигнал акселерометра,а дальше по коду,который упомянут выше,так возможно?
Так я говорил же,скорость вращения не важна,делается это всё в макетных размерах,больших точностей и мощностей не нужно.Я конечно понимаю,что из за разной скорости,тросик не будет делать всегда фиксированное кол-во оборотов вокруг вала.Или не понимаю и затея без доп.оборудования мертва?
при изменении данных мотор намотает 50 мм тросика. данные вернулись в допуск. мотор отпустит 55 мм или 45 мм (как пример) Или не понимаю и затея без доп.оборудования мертва? --- да для корректной работы система должна возвращаться в исходное положение
А если погрешность будет постоянно в одну сторону (а скорее всего оно так и будет, наматывает, например, меньше, отпускает больше) то рано или поздно все упрется в ограничения (тросик кончится, поскольку весь будет выпущен).
Я проектировал систему для гашения автоколебаний на жд.Там использовал рулевую машинку,у неё есть редуктор и проблем с возвратом тросика не было.Действующий образец работает отлично,но нужен макет,решил ардуино использовать. Как вариант,думал оставить с погрешностью(как разовый образец,почему бы и нет?Главное наглядный принцип ),но в сам тросик врезать пружинку.Эдакий редуктор) Как 1 раз показать реализуемо?Макет раз показать людям и забыть