сервопривод тупит
- Войдите на сайт для отправки комментариев
Втр, 02/07/2013 - 00:17
Всем доброго времени суток!!!
Я новичок - сразу говорю.
Есть серва sm-s1121s. Написал прогу такую вот:
#include <Servo.h>
Servo myservo;
void setup()
{
myservo.attach(9);
}
void loop()
{
myservo.write(500); // устанавливаем сервопривод в серединное положение
delay(45);
myservo.write(500); // устанавливаем сервопривод в крайнее левое положение
delay(120);
}
в итоге ни на команду write(), ни на delay() не реагирует никак просто вращается и все на етом.
прогу брал с амперка/вики. Сервопривод может тупит?? Вдруг он постоянного вращения?
помогите плиззз!!
хммм, интересно, почему же вы не можете заметить визуально паузу в 45 ms .. странно все это... болеете может? :)
с нетерпением жду еще одного поста от вашего сервопривода "Хозяин тупит, помогите"
Какая разница между строками
<myservo.write(500); // устанавливаем сервопривод в серединное положение>
и
<myservo.write(500); // устанавливаем сервопривод в крайнее левое положение>
?
Может быть дело в этом?
Если привод вращается без остановки, то он постоянного вращения.
Если привод вращается без остановки, то он постоянного вращения.
логично, но он вроде бы на 60 градусов должен только двигаться... судя по описанию...
Его могли переделать.
Разве в описании не сказано, что параметр должен быть от 0 до 180?
Это не важно, серва должна занять крайнее положение.
И кстати,
так что если значение будет больше 544 то функция будет задавать длинну импульса в микросекундах, а не угол.
пойду достану хрустальный шар :)
maksim! После того, как я закинул на ардуино прогу от пользователя ich, (если зайти в Форум, потом в Аппаратные вопросы, там будет "Прежде чем спросить про Сервомашинку / Servo, посмотри тут.") серва вращается нормально - поворачивается на опред. градус и ОСТАНАВЛИВАЕТСЯ! Так что, дело не в этом.
И никто ничего не переделывал!!
Это не важно, серва должна занять крайнее положение.
И кстати,
так что если значение будет больше 544 то функция будет задавать длинну импульса в микросекундах, а не угол.
maksim, а можно поподробнее о программе и о синтаксисе???
Какая разница между строками
<myservo.write(500); // устанавливаем сервопривод в серединное положение>
и
<myservo.write(500); // устанавливаем сервопривод в крайнее левое положение>
?
Может быть дело в этом?
Нет, не в этом! Я там все эти значения как мог менял, все равно, с этой прогой он без остановки крутится.
Кстати прогу не я писал, если чего, брал на http://wiki.amperka.ru/робототехника:сервоприводы. Сам в этом пока не очень разобрался.
хммм, интересно, почему же вы не можете заметить визуально паузу в 45 ms .. странно все это... болеете может? :)
с нетерпением жду еще одного поста от вашего сервопривода "Хозяин тупит, помогите"
Шутки-шутками, а прога все равно тупит))
delay(45) менял и на delay(450) и на delay(4500) - все одно и то же - так что ничего удивительног, что я не вижу несуществующую остановку сервопривода!))
поворачивается на опред. градус и ОСТАНАВЛИВАЕТСЯ!
Так не бывает на одной серве - либо она вращается, либо поворачивается на определенный угол. Так что что у вас там происходит так и остается загадкой...
Проверь, точно ли на девятый пин подключена серва.
Залей
Результат сообщи:)
Моя серва тупила так:
Так работает, а вот так нет:
в явном задании углов не двигается.
Моя серва тупила так:
Так работает, а вот так нет:
в явном задании углов не двигается.
Я думаю имеет смысл проверить вообще серву, т.е. может ли она управляться ШИМ. Для этого нужно управляющий вход подключить к выходу ШИМ и попробовать погенерить там разный сигнал, хоть с тем же "for". Если все будет хорошо, то будем разбираться дальше.
такое подозрение или она сломаная пришла, или у нее нестандартный шим, т.е она поворачивается не на все значения угла,
в цикле, задавая углы она поворачивается, значит на шим реагирует..
но тут кажется она пропускает некоторые значения между ушей.
Моя серва тупила так:
Так работает, а вот так нет:
в явном задании углов не двигается.
Geronimo, я так и не понял, в сообщении присутствует рабочая программа, или обе неправильные?
первая пашет вторая нет
в первой серва едет в одну строну затем в другую
На сколько градусов едет? на 180? В спецификации она ездиет вроде бы на 60...
вы ее вообще вначале пытались на 500 прокрутить....
Есть вариант другого предположенья, что это не градусы совсем...
Давайте вообще расуждать логически,
Серва поворачивается на 60 градусов в одну сторону и 60 в другую... тоесть общий ход 120 градусов
Серва аналоговая....
тоесть грубо говоря управляется через ШИМ... в цикле она работает, без цикла нет...
может взять библиотеку где нибуть не там где вы уже брали...
и забавно что в инете эту серву только продают... но никто чего то особо с ее использованием не засветился.. вы видимо первый покупатель :)
Проверь, точно ли на девятый пин подключена серва.
Залей
Результат сообщи:)
Та же самая реакция, что ина мои все проги - не помогло..
Всем доброго времени суток!!!
Я новичок - сразу говорю.
Есть серва sm-s1121s. Написал прогу такую вот:
Спасибо всем за ответы и за помощь!!
Просмотрев тех данные, выяснил, что у сервы угол поворота равен 60 градусов. Сл-но, то, что она может вращаться на 360 гр. говорит о том, что ограничитель у сервопривода сломан и он уже больше по-нормальному не программируется. Буду пытать другие сервоприводы, когда попадут ко мне)))