picabsic +rc servomotor (рулевая машинка) - Форум Picbasic.ru
Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: ivan_fd 
Форум Picbasic.ru » Программирование МК » PicBasicPro » picabsic +rc servomotor (рулевая машинка)
picabsic +rc servomotor (рулевая машинка)
sa137 Дата: Чт, 22.11.2012, 21:17  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 33
Репутация: 0   ±
Замечания:   ±
На сайте с 04.07.2011

Статус: Offline

пытаюсь сделать мешалку электролита в ванне гальваники.
раз в 30 секунд нужно со среднего состояния пройтись туда-обратно и вернуться в первоначальное.
машинка MG995.

спрашивал разных людей - одни говорят, что нужно в нее "вливать" импульсы постоянно, другие говорят, что только когда нужно изменить положение...
в общем, если кто знает просветите..

от безысходности передрал пример с 6 главы книжки Хелбрука
незначащее начало здесь пропустил (и переназначил правильные ноги своего пика 12f629)



но, не делает она того, что должна - доходит в одно из крайних положений (причем не всегда) и шоркается там...

мой изначальный код выглядит так
ЯНДЕКС Дата: 22.11.2012
shaman Дата: Чт, 22.11.2012, 22:08  |                                                                                                                Сообщение # 2
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 176
Репутация: 5   ±
Замечания:   ±
На сайте с 07.11.2011

Статус: Offline

Доброй ночи,если у Вас имеется схема в протеусе ,скиньте пожалуйста.
anatol Дата: Чт, 22.11.2012, 23:19  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 535
Репутация: 13   ±
Замечания:   ±
На сайте с 10.02.2010

Статус: Offline

Управление сервомашинками обычно происходит с помощью широтно-импульсной модуляции. Каждые 20 мс подается импульс, ширина которого кодирует заданный угол поворота. Импульс шириной 1 мс обычно соответствует крайнему левому положению, а 2 мс - крайнему правому. Промежуточные положения кодируются импульсами шириной от 1 до 2 мс, к примеру, центральному положению соответствует импульс 1.5 мс. В некоторых случаях возможно небольшое расширение рабочего диапазона заданием импульсов меньше 1мс или больше 2мс. Существуют сервомашинки и с другими стандартами.
Дрожание бывает при плохом питании. Попробуйте конденсатор навесить прямо на привод.
_____________________________________________________________________________________
Сервопривод MG995
Рабочий диапазон: 0°-90° (импульсы 1-2 мс соответственнно).
Выводы: коричневый - "земля", красный - питание (+), оранжевый - управляющий.
Зона нечувствительности: 5 мкс. - т.е. в программе дробить меньне 5 не стоит.
4мкс=1мгц генератору=1такту. Т.е кварц бери не ниже 20 мгц.

Сообщение отредактировал anatol - Чт, 22.11.2012, 23:24
sa137 Дата: Чт, 22.11.2012, 23:53  |                                                                                                                Сообщение # 4
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 33
Репутация: 0   ±
Замечания:   ±
На сайте с 04.07.2011

Статус: Offline

спасибо за отклики, но все равно не пойму...

в машинку нужно всегда слать импульсы, даже когда она просто стоит?
я в общем пробовал и так, у меня начинает греться кренка в to252 корпусе + 3см2 меди (при входном 8вольт). ведь не может эта двигатель отъедать столько?
причем сама фаза движения туда обратно занимает от силы 3-4 секунды.

посмотрите код в первом сообщении - вроде логику работы я так и описал (менял длительность импульса)...в коде ошибок нет? проблема только в питашке?

p.s.
схемы нет. она примитивная до ужаса:
кренка, кондеры, пик два светодиода с резисторами и 2 разъема.

'pin1 +V power
'pin2 GPIO5 OUT servomotors
'pin3 GPIO4 free
'pin4 GPIO3 free
'pin5 GPIO2 OUT LED
'pin6 GPIO1 input mode sel
'pin7 GPIO0 input mode sel
'pin8 GND
anatol Дата: Пт, 23.11.2012, 00:33  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 535
Репутация: 13   ±
Замечания:   ±
На сайте с 10.02.2010

Статус: Offline

Гладко было на бумаге....
Проведи эксперимент. Задай длительность соответствующую углу поворота (левый край- центр -правый край) переключаемым от кнопки
и разорви выход на сервомотор. Если будет держать значит постоянно не надо, не будет - придется гнать импульсы.
Зы. у вас есть все. У меня серво только от корректора фар с управлением постоянкой.
В основе сервомашинки примитивный двигатель постоянного тока+редуктор+потенциометр сравнения. В этих китайских примитивах нет шаговиков.
_____________________________________________________________________________________________________________________________
PS
Предполагаю что стоит на входе управления обычный ФНЧ и ШИМ превращается в постоянку управления рассогласования.
Поэтому "плыть должно"

Сообщение отредактировал anatol - Пт, 23.11.2012, 00:38
sa137 Дата: Пт, 23.11.2012, 18:16  |                                                                                                                Сообщение # 6
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 33
Репутация: 0   ±
Замечания:   ±
На сайте с 04.07.2011

Статус: Offline

по разбирался... а полярность то какая должна быть?



у меня pulsout выдает в такой ...
anatol Дата: Пт, 23.11.2012, 20:36  |                                                                                                                Сообщение # 7
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 535
Репутация: 13   ±
Замечания:   ±
На сайте с 10.02.2010

Статус: Offline

happy Подразумевается что импульс положительной полярности.
MiXaS Дата: Пн, 07.01.2013, 14:13  |                                                                                                                Сообщение # 8
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 613
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

Всем привет! Буквально на новогодних праздниках решил сделать ПИ регулятор, на выходе которого должен стоять серво привод, который будет регулировать расход теплоносителя...
Решил начать с простого. Как заставить работать привод. anatol прав. Я взял со своей модели машины привод ACE RC s 3003. Взял готовый код с книжки Хилинского, подключил, но не задача. не работатет, точнее колбасит в разные стороны, причем без определённых закономерностей. Взял осцилограф подключил серво к родному приемнику, включил всё и посмотрел на форму сигнала. Частота 51 Гц, сигнал П-образный (самособой), скважность от ~8,27%-~8,47% вроде около того. Написал свой код с учетом осцилограммы. Нем ного ситуация изменилась, но всё-равно работало бредово. Решил проверить работоспособнотсь устройства. Написал несколько строк, которые заставляют LED мигать. А вот тут собака и порылать. В тексте LED должен гореть 500мс и столько же не гореть. Но в реале это было похоже на предсмертные конвульсии. bash Схема была собрана на "Макетная плата для монтажа без пайки, 840 точек, габариты 165 x 55 мм (аналог EIC-102)" и с применением специальных соединительный проводов. Судя по всему, длина ножек конденсаторов и кварцевого резонатора+ недостаточный контакт соединений привел в нестабильной работе тактового генератора evil Пришлось собирать нормальный отладочник (пропаянный). Всё после этого всё заработало, и мой код и код Уважаемого автора книги "учимся программировать микроконтроллеры pic" Владимира Хилинского.

После этих успешных экспериментов решил заказать себе сервопривод. Заказал. Пока в пути. Но есть одно интересное НО! Серво, который я использовал был точно аналоговый, а я заказал по невнимательности цифровой. У уважаемого sa137 MG995, а я купил MG996. Так что у вас sa137 тоже цифровой
Разницу между цифровыми и аналоговыми я знаю, но не кто мне не может сказать, есть ли разница в интерфейсе? Цифровые также работают по ШИМ или какой нибудь 1 wire интерфейс используют или ещё какий особенности?
Спасибо! faint

Сообщение отредактировал MiXaS - Пн, 07.01.2013, 14:15
sa137 Дата: Пн, 07.01.2013, 21:08  |                                                                                                                Сообщение # 9
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 33
Репутация: 0   ±
Замечания:   ±
На сайте с 04.07.2011

Статус: Offline

моя задача не решилась, но прояснились детали...

машинка оказалась битой. то есть с аппаратурой она тоже не работала.

на радиокоте нашлись люди, которые вскрыли машинку и показали нутро. есть большое подозрение, что в моей машинке не правильно распаян резистор обратной связи (провода перекрестили).
в общем, нужно собрать ее назад, и проверять.

допускаю, что мой код вообще был и есть работоспособным....

p.s.
по моему без разницы что там внутри, сигналы управления должны быть одни и те же..
MiXaS Дата: Вт, 08.01.2013, 01:04  |                                                                                                                Сообщение # 10
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 613
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

Цитата (sa137)
по моему без разницы что там внутри, сигналы управления должны быть одни и те же..

Я тоже на это надеюсь!
Вот только вопрос. У цифрового серво только мозг цифровой, или управлять им тоже надо побитно???
fool
Форум Picbasic.ru » Программирование МК » PicBasicPro » picabsic +rc servomotor (рулевая машинка)
Страница 1 из 11
Поиск: