roboforum.ru

Технический форум по робототехнике.

Управление сервой

Управление сервой

getbraine » 25 июл 2010, 21:50

Нужно реализовать следующий алгоритм дйствий:
Код: Выделить всёРазвернуть
если 1 то {
       повернуть налево на 45 градусов;
       подождать 3 секунды;
       вернуться в исходное положение;
}
если 2 то{
       повернуть налево на (-45) градусов;
       подождать 3 секунды;
       вернуться в исходное положение;
}


собственно ,интересует ,как реализовать последние строчки
Код: Выделить всёРазвернуть
если 2 то{
       повернуть налево на (-45) градусов;
       подождать 3 секунды;
       вернуться в исходное положение;
}

Re: Управление сервой

Angel71 » 25 июл 2010, 22:01

:) написать в гугл просьбу разблокировать аккаун. потом по запросу "arduino servo" в первой же ссылке найти нужную библиотеку. потом прочесть что делает ф-я delay(). потом попытаться понять, что за зверь такой "исходное положение".

Re: Управление сервой

avr123.nm.ru » 25 июл 2010, 22:22

"исходное положение" наверняка то что бывает у вала модельной сервы при импульсе 1500 мкС

Re: Управление сервой

Grem » 25 июл 2010, 22:27

да, 1500мкс это 0 градусов, ТС, если вы умеете отклонить ее на +45 градусов, то на -45 будет 1500 - _величина импульса для +45_

Re: Управление сервой

galex1981 » 25 июл 2010, 22:34

Обычно на стандартных сервах величнна импульсов от крайнего до крайнего положения: 900..2100 мкс. И есть 1500 мкс это 0 градусов, то для таких серв поворот на 45 градусов означает +300 или -300 мкс. То есль влево на 45 градусов это 1200 мкс, вправо на 45 градусов это 1800 мкс

Re: Управление сервой

avr123.nm.ru » 25 июл 2010, 22:41

ИМХО 45 градусов это примерно 400 мкС

Re: Управление сервой

Angel71 » 25 июл 2010, 22:42

avr123.nm.ru :D возможно да, возможно нет. не обязательно же исходное положение должно быть средним. такие же гадания и по поводу длины импульса и угла сервы.
Последний раз редактировалось Angel71 25 июл 2010, 22:47, всего редактировалось 1 раз.

Re: Управление сервой

Grem » 25 июл 2010, 22:46

формула есть, по которой расчитывается точно, а не наугад :)

Re: Управление сервой

Angel71 » 25 июл 2010, 22:50

эт точно - вычислить всегда можно. но сервы-то разные в природе бывают, разброс даже в одной партии может быть относительно немаленьким, да и резючки под/перепаять можно. накой сидеть и гадать?

Re: Управление сервой

Alex Gritsenko » 29 июл 2010, 01:38

У меня лично 45' = 500мкс, расчеты не катят))

Re: Управление сервой

Angel71 » 29 июл 2010, 02:44

Alex Gritsenko писал(а):У меня лично 45' = 500мкс, расчеты не катят))

:) обоснуй, почему и для чего расчёты не катят.
П.С. в моих 995х из последней партии, условно: 750 эт 90° в одну сторону, 2250 эт 90° в другую сторону и 1500 соответственно 0°.

Re: Управление сервой

Alex Gritsenko » 29 июл 2010, 20:05

Первые 500мкс дают 45 градусов поворота, следующие - только 80. График под тангенс косит =)
И да, разбросы значительные - только индивидуальная подгонка под каждую серву/каждой сервы даст желаемый результат. Если конечно не колесо крутить =)

Re: Управление сервой

Kolshik » 02 сен 2010, 07:04

кто нибудь, помогите, овем мозг не варит уже... :shock:
киньте кусочек программы, как пример, управления модерниз. под пост. вращение сервой...
переделать переделал, а справится не могу :cry:
сразу говорю... я очень начинающий :oops:

Re: Управление сервой

SkyStorm » 04 сен 2010, 11:40

Вот хорошая статья про управление сервами при помощи Arduino.
Управление Cервой постоянного вращения(Continuous Rotation Servo), не сильно отличается, чем дальше ты уходишь от центра тем выше скорость вращения.

Re: Управление сервой

Kolshik » 24 сен 2010, 19:47

типо разобрался, 90 гр это стоим на месте.. (тока серва жестко дергается)
и в градусах поворота указываем скорость вращения в ту или иную сторону...


Rambler\'s Top100 Mail.ru counter