roboforum.ru

Технический форум по робототехнике.
Текущее время: 26 ноя 2024, 22:50

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Алгоритмы управления скоростью
СообщениеДобавлено: 22 июл 2009, 07:03 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2009, 08:59
Сообщения: 2254
Откуда: Екатеринбург
прог. языки: асемблер AVR
Хочу попробовать сделать обратную связь по скорости для робота с двумя ведущими колесами. Исходные данные:
- 2 сервы HS-311 (переделанные на непрерывное вращение)
- 2 колеса с наклеенным на поверхность черно-белым секторным диском
- 2 отражательных оптрона.
Перед созданием темы я прочитал про ШИМ все, что уже обсуждалось, а вопросы остались. И еще: я понимаю что такое ШИМ, с чем его едят и как его делать, ну и про то как работает энкодер я тоже представляю. Теперь перейдем к сути проблемы.
Я себе так представляю решение задачи управления скоростью: я знаю с какой частотой должны вращаться колеса (это моя уставка), если мне надо ехать точно прямо - то с одинаковой, если надо повернуть - то с разной, радиус поворота зависит от разности скоростей, но не меньше чем когда одно колесо - полный вперед, а второе стоит на месте (я не рассматриваю разворот на месте). Итак, я знаю с какой скоростью надо крутить каждое колесо, кроме того я знаю с какой скоростью в данный момент крутится каждое колесо. Мне надо сформировать ШИМ с такими параметрами, которые мне нужны. Вот тут и возникает вопрос: как связаны параметры ШИМ (частота и скважность) со скоростью? Использовать ли сверх низкочастотный ШИМ (подавать полное питание на не очень короткое время), но при этом робот будет двигаться рывками, хотя с этом случае становится все понятным: средняя скорость прямо пропорциональна скважности. Или же использовать высокочастотный ШИМ, выделять из него постоянную составляющую и питать ей H-мост сервы? Но как узнать, какому напряжению питания какая скорость соответствует? Можно конечно опытным путем, но хотелось бы способом проще, тем более что для разных условий одной скорости будут соответствовать разные напряжения, графиков зависимости скорости от напряжения питания я не нашел. Ну и третий способ регулирования скорости каждого колеса - это использование програмных регуляторов. То есть программа в каждом случае сама подбирает параметры ШИМ, пока уставка скорости не станет равна фактической скорости. Метод труден в реализации, скорость будет меняться достаточно медленно, она будет равна заданной с погрешностью. Итак, обобщу вопросы.
1. Какая частота ШИМ лучше для сервы, очень низкая или высокая? (на основе вашего опыта)
2. Каким методом лучше всего управлять скоростью?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритмы управления скоростью
СообщениеДобавлено: 22 июл 2009, 07:52 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Special for you:
[[Перевод статьи "Просто о ПИД-алгоритмах"]]

Частоту ШИМ для серв лучше подсмотреть в проекте http://openservo.org/
.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритмы управления скоростью
СообщениеДобавлено: 22 июл 2009, 08:50 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2009, 08:59
Сообщения: 2254
Откуда: Екатеринбург
прог. языки: асемблер AVR
Спасибо. Жаль, что придется ПИДом заниматься, много экспериментов понадобится. А частоту ШИМа для серв по ссылке не нашел. Там вроде просто в серве заменили начинку, а принцип оставили. Но я склоняюсь к мысли, что нужен именно ВЧ ШИМ с подачей его на питание моста. Мост включаем чтобы ехать в нужную сторону, а скорость управляем напряжением.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритмы управления скоростью
СообщениеДобавлено: 22 июл 2009, 09:01 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
2Radist: Как это не нашли? Там же у них весь исходный код прошивок выложен - из него то 100% можно выцепить частоту ШИМ, но конечно не факт, что это будет за полминуты :) зато 100% рабочее будет.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритмы управления скоростью
СообщениеДобавлено: 22 июл 2009, 09:11 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Radist писал(а):
как связаны параметры ШИМ (частота и скважность) со скоростью?

Сложно. Так как и нагрузка меняется.

Советую сделать приводы как servo - т.е. вы наних подаете команду с какой скоростью крутить, а в них уже встроена ОС по энкодерам например которая позволяет им правильно выполнить вашу команду. пример servo ривода с энкодерами РАБОТАЮЩИЕ реально - это апноут микрочип AN696 и он есть в примерах PROTEUS - можно на ПК помоделировать и понять что там и как. Команды принимает по обычному UART. Код на Си так что принцип можно переложить на любой МК.

Добавлено спустя 1 минуту 41 секунду:
Radist писал(а):
Спасибо. Жаль, что придется ПИДом заниматься, много экспериментов понадобится.

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

Radist писал(а):
А частоту ШИМа для серв по ссылке не нашел.

В исходниках наверно.

Radist писал(а):
Там вроде просто в серве заменили начинку, а принцип оставили.

Похожу документации вы совсем не понимаете.

Долго придется ...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO