Перевернутый маятник на модуле OpenRobotics

Обсуждаем рождающиеся мысли и результаты экспериментов.

Перевернутый маятник на модуле OpenRobotics

Сообщение runaway » 13 авг 2009, 10:10

Начало обсуждения этой темы можно увидеть здесь:
viewtopic.php?f=4&t=6380&p=112753#p112753

Эволюцию проекта можно проследить, ознакомившись с материалами темы "Кобра":
http://forums.airbase.ru/2007/01/t53182--kobra.html

Текста там много, поэтому в самое ближайшее время я планирую сделать подборку прямых ссылок на те сообщения, которые в данный момент представляются мне наиболее значимыми. Перенос обсуждения с Ракетомодельного форума Авиабазы на Робофорум вызван желанием автора возобновить практические работы над проектом в части цифрового двухканального ПИД-регулятора, программное обеспечение которого явилось в свое время основным камнем преткновения для энтузиастов ракетного моделирования.

С глубоким уважением и твердой уверенностью в плодотворном сотрудничестве -
runaway (Non-conformist)
Аватара пользователя
runaway
 
Сообщения: 48
Зарегистрирован: 27 сен 2007, 12:34
Откуда: г. Чернигов, Украина
Skype: a_schabanow

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение avr123.nm.ru » 13 авг 2009, 10:17

Формулируй пожалуйста ТехЗадание ( указывай параметры диапазонами - например не 9 вольт, а от 7 до 10 - это будет четко ) и укажи наконец линки на конкретный модуль на который ты "заришся" :D

Не спеши, лучше проработай документ.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение =DeaD= » 13 авг 2009, 10:27

Перенес тему в проекты. Потому как она не про готовые модули.

Надо решить, какие приводы для управления будут. Скорее всего коллекторники? Тогда [[OR-AVR-M32-D]], у него разъем для 2 коллекторников как раз специальный есть - [[RoboMD2]] и драйвер двигателей к этому разъему тоже есть, если что, на мосфетах.

Добавлено спустя 5 минут 29 секунд:
Кстати, да, может иметь смысл сделать сенсор направления на солнце на базе датчика от оптической мыши :)

Добавлено спустя 1 минуту 59 секунд:
Однако надо понять как тестировать такую систему - ведь ПИД-регулятор написать не проблема - проблема его качественно настроить.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение MiBBiM » 13 авг 2009, 10:36

avr123.nm.ru писал(а):укажи наконец линки на конкретный модуль

+1. И не помешает здесь же указать, какую задачу решает конструкция.
Последний раз редактировалось MiBBiM 13 авг 2009, 10:40, всего редактировалось 1 раз.
Tomorrow will be. Better
Аватара пользователя
MiBBiM
 
Сообщения: 1866
Зарегистрирован: 29 окт 2007, 18:11
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение =DeaD= » 13 авг 2009, 10:40

А еще лучше завести страницу проекта в вики :) там можно будет видеть, что поменялось и актуальное состояние. Тут тоже можно актуальное состояние поддерживать, но вот кто пропустил 1 неделю запарится искать изменения :)

Добавлено спустя 30 секунд:
А если над кодом будет работать несколько человек - можно попросить Vooon'а сделать репозитарий.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение Master » 13 авг 2009, 11:25

Срри за офф.
Кстати, да, может иметь смысл сделать сенсор направления на солнце на базе датчика от оптической мыши

Это наверное в тему про солнечный концентратор?

ПИД-регулятор написать не проблема

А кстати есть ли где посмотреть реализаюцию этой "непроблемы"

Пойдет ли такой вариант?
Код: Выделить всё
void pid (void)
{
double Kp; //Коэффициент усиления линейного усилителя
double Ki; //Коэффициент усиления интегратора
double Kd; //Коэффициент усиления дифференциатора
double delta;

Kp=0.2;
Ki=0.00390625;
Kd=1.0;

delta=adc3-adc2; //Величина ошибки

//integ2 и difer2 - глобальные, тоже double
integ2=integ2+delta*Ki;

pwm=pwm+delta*Kp+integ2+(delta-difer2)*Kd;
//370.0 Это постоянное смещение, нужное конкретно мне.
//pwm - выходная величина

difer2=delta;
}
Аватара пользователя
Master
 
Сообщения: 4468
Зарегистрирован: 21 дек 2006, 19:56
Откуда: Украина, г.Одесса
прог. языки: Delphi и С

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение =DeaD= » 13 авг 2009, 11:39

Датчик от оптической мыши - нет, это в тему про наведение на солнце :) в этом проекте.

Примеры реализации ПИД-регуляторов - а их что обязательно вот сюда все собирать? В инете полно, в статье, которую я переводил, приводятся примеры, разве мало?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение runaway » 13 авг 2009, 12:25

Генеральный отлуп мышиного датчика:
http://balancer.ru/2007/01/25/post-1025824.html

Моторы коллекторные, в составе актуаторов ЦЗ автомобиля. Этот вопрос не обсуждается. :) Механика практически готова, вот фотки и ролик:
http://balancer.ru/2008/12/19/post-1766322.html
http://balancer.ru/2008/12/22/post-1769065.html
Чертеж механической части можно посмотреть во вложении (кардан маршевого двигателя не показан).

Импульсный датчик положения штока АКТУАТОРА (тупиковый путь, но может кому-то покажется интересным посмотреть на это очумельство):
http://balancer.ru/2008/12/03/post-1747290.html

Прототип аналогового оптического датчика положения КАРДАНА маршевого двигателя:
http://balancer.ru/2009/01/30/post-1815674.html

Аналоговый оптический датчик положения кардана, первая редакция:
http://balancer.ru/2009/03/03/post-1854752.html

ЦИФРОВОЙ магнитный датчик положения кардана маршевого двигателя (ВЕСЬМА перспективный вариант именно для ЦИФРОВОГО ПИД-а; при прохождении украинской таможни сэмплы были задержаны - предложили заплатить выкуп, но по причине дороговизны я отказался):
http://balancer.ru/2009/03/10/post-1862688.html

Попытка "охватить одним взглядом" всю конструкцию; полетное задание, тезисно:
http://balancer.ru/2008/11/11/post-1722635.html


***
Прошу извинить за некоторый сумбур, но даже мне, как автору темы, оказалось непросто ориентироваться в шестидесяти страницах обсуждения. Некоторые моменты, которые мне хотелось бы здесь анонсировать, я пока так и не обнаружил...
Вложения
favorit.pdf
(28.53 КиБ) Скачиваний: 15
Аватара пользователя
runaway
 
Сообщения: 48
Зарегистрирован: 27 сен 2007, 12:34
Откуда: г. Чернигов, Украина
Skype: a_schabanow

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение =DeaD= » 13 авг 2009, 12:40

Про мышинные датчики не понял - проблема была только в цене? Впрочем это не важно, главное чтобы датчики давали достаточно информации о направлении на солнце (об угле отклонения) для ПИД-регулятора.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение boez » 13 авг 2009, 13:00

подозреваю что у мышиных датчиков проблема в быстродействии. А еще они не дают быстро абсолютной позиции. Я когда-то ковырял даташит на такой датчик - он умеет выдавать dx,dy (смещения по координатам) довольно быстро, кажется порядка килогерца, и еще в каждом ответе выдает 1 бит из кадра. Поэтому чтобы выкурить все 256 бит (16х16) надо 256 мс, получается 4 кадра в секунду, что ни разу не приемлемо... Хотя возможно если совместить с какими-то подходящими фильтрами положение солнышка в кадре и проинтегрированные dx,dy - может и получиться. Ну примерно как инерциальный компас корректируют по магнитному.

Да, я какие-то куски темы про кобру конечно читал, но уже подзабыл - а что предполагается делать если солнце не в зените? Держать соотношение яркостей или лететь на солнце?
boez
 
Сообщения: 1981
Зарегистрирован: 27 авг 2008, 10:45
Откуда: Харьков
прог. языки: С/С++

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение runaway » 13 авг 2009, 13:13

> Про мышинные датчики не понял - проблема была только в цене?
Нет, не только в цене, но это основное соображение. Имхо надо стремиться рационально расходовать средства - к чему видеокамера там, где с задачей прекрасно справляются четыре фотодиода? А вот австрийские цифровые датчики Холла (см. ссылку выше) надежно сняли бы проблему датчика положения маршевого двигателя, но как сэмплы мне они недоступны, к моему большому сожалению. Никто из россиян не может помочь в этом вопросе?

***
2_avr123.nm.ru:
wiki/OR-AVR-M32-D

LPT на моем компе имеется (25-контактный разъем, рядом с символом принтера); а вот COM-a я в упор не обнаружил, а смотрел тщательно. Зато есть DVI и IEEE1394. :) Программатор, насколько я знаю, можно сделать на пяти резисторах и паре стабилитронов, или что-то в этом роде? Или такое не подойдет? Денег у меня лишних нет, хочется приобрести только то, что ДЕЙСТВИТЕЛЬНО необходимо / рационально.


***
> ... а что предполагается делать если солнце не в зените?

Лететь на Солнце! В этом и состоит зрелищность минометного старта - ракета выбрасывается вертикально, и запустив двигатель, лихо разворачивается, устремляясь к цели. Т.е. если иметь в виду минометный старт (С-300, МБР подводного базирования), то "незенитное" Солнце средних широт - как раз самый цимус!
Аватара пользователя
runaway
 
Сообщения: 48
Зарегистрирован: 27 сен 2007, 12:34
Откуда: г. Чернигов, Украина
Skype: a_schabanow

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение =DeaD= » 13 авг 2009, 13:23

Главное чтобы 4 фотодиода реально справлялись - на вход ПИД алгоритма надо ошибку, а не "лево или право", иначе оно не работает.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение boez » 13 авг 2009, 13:27

Программатор можно сделать и просто на 4 резисторах (он же "5 проводков)". Я таким пользовался несколько лет, ни одного порта не спалил. Вот только у меня все девайсы питались от компа - поэтому я сначала соединял землю и питание, а потом уже ноги программатора. А так лучше все же поставить 244-й буфер за 80 копеек (не, наверное он щас гривны полторы будет стоить). Схему наверное можно найти у avr123 в курсе, он говорит там все есть :)

=DeaD= писал(а):Главное чтобы 4 фотодиода реально справлялись - на вход ПИД алгоритма надо ошибку, а не "лево или право", иначе оно не работает.


Справятся, если делать датчик не так, как мы советовали автору солнечного коллектора (с перегородками), а просто 4 фотодиода, разведенные в стороны. За счет диаграмм направленности получится нужная характеристика.
boez
 
Сообщения: 1981
Зарегистрирован: 27 авг 2008, 10:45
Откуда: Харьков
прог. языки: С/С++

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение =DeaD= » 13 авг 2009, 13:44

2boez: По датчикам - что-то не уверен я в этом, надо тестировать отдельно этот вопрос.
По программатору - наш контроллер рассчитан на логические уровни 3.3В, так что программатор 5 проводков будет нарушением этого правила - хотя в данном контексте думаю всё будет работать.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Перевернутый маятник на модуле OpenRobotics

Сообщение avr123.nm.ru » 13 авг 2009, 14:24

runaway писал(а):2_avr123.nm.ru:
wiki/OR-AVR-M32-D

Понял. У меня есть старая папка "Kobra" Щас сделаю "Kobra 2" и начну туда класть документацию.

runaway писал(а):LPT на моем компе имеется (25-контактный разъем, рядом с символом принтера)

Это 25 отверстий "мама" - хорошо бы убедится что он исправен - подключить принтернепример и напечатать что-то.

runaway писал(а):я знаю, можно сделать на пяти резисторах и паре стабилитронов, или что-то в этом роде ?
Великолепный программатор прекрасно программирует из CVAVR - я на нем долго програмил пока СикьюитСелла мне программаторов AVRISP на контест не наслали - я их как макетки использовал :D :D

Схема программатора и как им программаировать по шагам расписано на страничке http://proavr.narod.ru/07.htm
Резисторы подойдут 150-300 Ом Для безопасности желательно питать программируемое устройство от ПК - открыть ПК и вывести наружу его разъем питания - у меня это сделано через окошко в задней стенке.
Землю программируемого устройства можно надежно соединить отдельным проводом с корпусом ПК а можно крокодильчиком. Сразу планируй так чтобы устройство удобно располагалось относительно ПК. На первом этапе ни чего силового не надо.

Первый этап - тебе надо будет научится просто "заливать" прошивки которые я буду делать в микроконтроллер. И еще открывать присланые проекты в PROTEUS и там симулировать - это архи просто. Такая уж программа !

Ссылки на CVAVR и PROTEUS я пришлю тебе в личку.

Как ты знаешь Serge77 прекрасно освоил AVR и делает на них себе примочки разные. Ни какого шаманства там нет.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва

След.

Вернуться в Идеи

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

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