Пятница, 26.04.2024, 00:03
Вы вошли как Гость | Группа "Гости"Приветствую Вас Гость | RSS
Главная | Пропорциональное управление на МК с нуля - Страница 20 - Форум | Мой профиль | Регистрация | Выход | Вход
Обитель RC-инженера
Форма входа
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: ВитГо  
Форум » Разработка электронных устройств » Разрабатываю ! » Пропорциональное управление на МК с нуля (пошаговое строительство пропорционального управления с нуля)
Пропорциональное управление на МК с нуля
uwrteyДата: Четверг, 18.04.2013, 22:20 | Сообщение # 286
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
Вот и я совсем не могу понять как это сделать...
на двух канальных выходах нужно получить ШИМ для управления двигателями ( тут сложность в микшировании каналов )
а на третьем выходе нужно получить "стандартный" ШИМ для управления сервоприводом

для начала я могу попробовать сделать вход в прерывание по ICP
с выводом данных всех трех каналов на экран...
а дальше видно будет... ( хотя, это - не правильный подход )


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Четверг, 18.04.2013, 22:23
 
ВитГоДата: Пятница, 19.04.2013, 11:24 | Сообщение # 287
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
ну это вопрос подхода..

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


Виталий (аka ВитГо)
 
uwrteyДата: Пятница, 19.04.2013, 18:23 | Сообщение # 288
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
вот написал программу, которая входит в прерывание по падающему фронту на ICP
в самом прерывании значение ICR1* читается в регистровую пару "Х"
затем программа выходит из прерывания и зацикливается в Главном цикле, ожидая нового падающего фронта на ICP

вроде все правильно ?
кстати а счетчик таймера нужно обнулять? ил он сам обнулится?

что дальше ? ШИМ для двигателей настроить ? А как программный ШИМ организовать? ( ума не приложу )
Прикрепления: 9436726.asm (4.5 Kb)


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Пятница, 19.04.2013, 22:58
 
ВитГоДата: Суббота, 20.04.2013, 08:43 | Сообщение # 289
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
неее, нифига ! нам же нужно знать длину импульса (спада) !!

поэтому вошли по спаду, сбросили счетчик, установили вход по фронту, и уже попав во второй раз в прерывание по фронту - смотрим значение счетчика..

а то что ты написал даст тебе период сигнала... 20 мс :-) фиксированно и не изменяемо :-)


Виталий (аka ВитГо)
 
ВитГоДата: Суббота, 20.04.2013, 08:44 | Сообщение # 290
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
шим для двигателей делай на аппаратных шимах счетчика !

Виталий (аka ВитГо)
 
uwrteyДата: Суббота, 20.04.2013, 11:48 | Сообщение # 291
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
Цитата (ВитГо)
а то что ты написал даст тебе период сигнала... 20 мс :-) фиксированно и не изменяемо :-)

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


Ну или я что то не понимаю опять..... wacko sad
Прикрепления: 9801835.gif (3.6 Kb)


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Суббота, 20.04.2013, 12:08
 
ВитГоДата: Суббота, 20.04.2013, 15:27 | Сообщение # 292
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
аааа, так ты ppm разбираешь !!?

тьфу, я думал сигнал идущий на сервер решил отдетектить :-) там то период один и тот же..

тогда извиняюсь, не в тему написал :-)


Виталий (аka ВитГо)
 
uwrteyДата: Суббота, 20.04.2013, 17:43 | Сообщение # 293
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
а на какой сервер ? biggrin

не успеваю за своими мыслями......
 
ВитГоДата: Суббота, 20.04.2013, 17:44 | Сообщение # 294
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
ну ты меня понял :-) я тут свое обмозговываю :-)))

Виталий (аka ВитГо)
 
uwrteyДата: Суббота, 20.04.2013, 20:50 | Сообщение # 295
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
в том то и дело, что не понял... sad

не успеваю за своими мыслями......
 
uwrteyДата: Суббота, 20.04.2013, 22:53 | Сообщение # 296
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
Виталий, я не пойму как мне наложить канал_0 ( газ ) на канал_1 ( рысканье ) ( их нужно как то смикшировать )

а уже результат вывести с помощью ШИМ на моторы

---------------------------------------------

программный ШИМ http://habrahabr.ru/post/152299/


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Суббота, 20.04.2013, 23:25
 
ВитГоДата: Суббота, 20.04.2013, 23:23 | Сообщение # 297
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
не понял вопроса :-(

что значит наложить ?


Виталий (аka ВитГо)
 
uwrteyДата: Суббота, 20.04.2013, 23:29 | Сообщение # 298
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
за тягу ( газ ) и за рыскание ( курс ) отвечают основные моторы...
как организовать управление тягой и курсом одновременно ?


не успеваю за своими мыслями......
 
ВитГоДата: Суббота, 20.04.2013, 23:59 | Сообщение # 299
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
у тебя же вроде перекосом серва управляет ?

тяга - это общая константа скорости вращения - меняется для обоих движков

а курс - это разность вращения винтов относительно константы тяги
следовательно скорость одного увеличиваем а другого уменьшаем - это управление по курсу..

или я опять вопрос не понял ?


Виталий (аka ВитГо)
 
uwrteyДата: Воскресенье, 21.04.2013, 08:29 | Сообщение # 300
Генерал-майор
Группа: Администраторы
Сообщений: 3270
Репутация: 11
Статус: Offline
Цитата (ВитГо)
у тебя же вроде перекосом серва управляет ?

у меня серва тангажем управляет.. От автомата перекоса курс не изменить smile

Цитата (ВитГо)
следовательно скорость одного увеличиваем а другого уменьшаем - это управление по курсу..

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


не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Воскресенье, 21.04.2013, 09:46
 
Форум » Разработка электронных устройств » Разрабатываю ! » Пропорциональное управление на МК с нуля (пошаговое строительство пропорционального управления с нуля)
Поиск:


Copyright MyCorp © 2024
Сделать бесплатный сайт с uCoz