Тема: Немного о PID регуляторах, пропорциональная часть.  (Прочитано 59780 раз)

0 Пользователей и 1 Гость просматривают эту тему.


Оффлайн Толик

  • Старейшина клуба
  • Сообщений: 2424
    • Анатолий
    • Ганевич
  • Город: Санкт-Петербург
« Ответ #30 : 06 Ноябрь, 2013, 22:29:42 pm »
Я например жду когда Андрей доберется до практического применения -
Я, четыре года читаю, инструкции, советы, теории, и тоже жду, когда он всё покажет на практике. Но на висении большинство теорий не работает…
С уважением, Ганевич Анатолий.

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #31 : 06 Ноябрь, 2013, 22:34:40 pm »
Ну так я  же "автопилот" :) "Руками" летаю хуже, чем "программно" :)

Оффлайн Толик

  • Старейшина клуба
  • Сообщений: 2424
    • Анатолий
    • Ганевич
  • Город: Санкт-Петербург
« Ответ #32 : 06 Ноябрь, 2013, 22:39:59 pm »
Ну так я  же "автопилот" :) "Руками" летаю хуже, чем "программно" :)
Программно, я не видел…
Андрей,так на поле, нужно брать клавиатуру, вместо пульта, может лучше получится!?
С уважением, Ганевич Анатолий.

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #33 : 06 Ноябрь, 2013, 22:50:12 pm »
Андрей,так на поле, нужно брать клавиатуру, вместо пульта, может лучше получится!?
Если наконец-то получим денег на СКИ локатор-высотомер  - то на высоте 0-20 метров можно будет любого "ручного" пилота порвать :) 

Оффлайн Толик

  • Старейшина клуба
  • Сообщений: 2424
    • Анатолий
    • Ганевич
  • Город: Санкт-Петербург
« Ответ #34 : 06 Ноябрь, 2013, 23:04:45 pm »
А, как же «стая Гоблинов» садящихся на движущийся танк или  "Пятёрка Лого -Хтрим" клином летящие на встречу эсминцу?
Это похоже на сон или чего хуже …
С уважением, Ганевич Анатолий.

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #35 : 06 Ноябрь, 2013, 23:17:18 pm »
А, как же «стая Гоблинов» садящихся на движущийся танк или  "Пятёрка Лого -Хтрим" клином летящие на встречу эсминцу?
Так это просто два куска одного и того же проекта. Посадка - это самая насущная часть (в макете на оптике она работает уже пару лет), а полёт на малых высотах на бортовой РЛС синтезированной апертуры - перспективная.
« Последнее редактирование: 06 Ноябрь, 2013, 23:27:48 pm от AndRay »

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #36 : 07 Ноябрь, 2013, 00:45:15 am »
Мне так вообще захотелось "руками потрогать", поэтому свой эмулятор написал..
а можешь в эмуляторе ввести еще два явных параметра - "задержка исполнения" и "длина интегрирования" для I компоненты? и коэффициент при I может быть как + так и -.

Оффлайн alienn

  • Сообщений: 104
    • Вадим
    • Юнак
  • Город: Санкт-Петербург
« Ответ #37 : 07 Ноябрь, 2013, 09:56:35 am »
а можешь в эмуляторе ввести еще два явных параметра - "задержка исполнения" и "длина интегрирования" для I компоненты? и коэффициент при I может быть как + так и -.
У меня роль задержки играет настраиваемый параметр - скорость серво. Могу вынести его настройку в интерфейс. В алгоритме есть и обычная задержка на передачу сигнала, но она сейчас минимальная, и не уверен, нужна ли она нам здесь, мне кажется скорость серво - более актуальный параметр.

А зачем коэффициент I в -?  Он же будет дестабилизировать систему. Или ты хочешь сэмитировать вариант -I плюс большая задержка? 
В минус периодически работает D компонент.

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #38 : 07 Ноябрь, 2013, 10:27:29 am »
но она сейчас минимальная, и не уверен, нужна ли она нам здесь, мне кажется скорость серво - более актуальный параметр.
На самом деле, оказывается, это два очень разных параметра... Т.к медленная серва, но которая отрабатывает сразу работает сильно по другому, чем быстрая, но с задержкой. Собственно, если бы не было этих неконтролируемых (в плане того, что задержка зависит и от вычислительной мощности и от того, насколько надо "выбрать" люфт редуктора при смене направления) задержек - все бы можно было отрегулировать вообще без PID регулятора каким нибудь регулятором высокого порядка.

А зачем коэффициент I в -?  Он же будет дестабилизировать систему.
А потому что интрегрирование (периодической функции) может само по себе давать результат как + так и - в зависимости сколько полупериодов попало под интеграл. Да и вообще, знак интеграла - штука формальная, зависит от того интегрируем мы слева направо или справа налево. ( а здесь - именно интегрируем "назад").

Оффлайн alienn

  • Сообщений: 104
    • Вадим
    • Юнак
  • Город: Санкт-Петербург
« Ответ #39 : 07 Ноябрь, 2013, 12:10:09 pm »
Добавил в программу новые настраиваемые параметры:
I Acc - Максимальная величина ошибки которая может накопиться в I аккумуляторе.
Servo speed - скорость серво
Задержка - Задержка выполнения устройством команды регулятора в мили секундах. (Люфт, время прохождения сигнала, и т.д.)
Силу ветра - для оценки влияния элемента I

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #40 : 07 Ноябрь, 2013, 13:30:50 pm »
Супер! Получилось то что надо - автоколебания в полной своей красоте!
I Acc - Максимальная величина ошибки которая может накопиться в I аккумуляторе.
Давай уточним что мы понимаем под этим...Я понимаю это "сколько шагов назад" мы интегрируем ( величина от 0 до 1-2 секунд или сколько-то тиков)...  И коэфф. при I - прошу!!! сделай возможность условно от -... до ...+ а не от 0.
И тогда было бы соврешенно замечательно именно эту длину отметить шкалой( статической, не надо чтобы она ехала), чтобы было видно как длина интегрирования будет влиять на периоды автоколебаний.

Кстати, наверное имеет смысл еще хвост сделать "потяжелее-поинерционнее", т.к. в режиме d==0 i==0 и со "стандартными" задержками он должен "заводиться", а то уж сильно всё хорошо выглядит ..( точнее не видна польза от D компоненты - он на одной P стабилизируется)
« Последнее редактирование: 07 Ноябрь, 2013, 13:43:05 pm от AndRay »

Оффлайн ALS

  • Сообщений: 191
    • Александр
    • Сарафанов
  • Город: Екатеринбург
« Ответ #41 : 07 Ноябрь, 2013, 13:41:20 pm »
Включаю ветер 12 единиц и не могу подбором P I D "остановить хвост"))
Подскажите комбинацию?

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #42 : 07 Ноябрь, 2013, 13:44:02 pm »
не могу подбором P I D "остановить хвост"))
D выставить в 0... ( похоже баг в программе)

Оффлайн ALS

  • Сообщений: 191
    • Александр
    • Сарафанов
  • Город: Екатеринбург
« Ответ #43 : 07 Ноябрь, 2013, 13:55:24 pm »
I Acc - Максимальная величина ошибки которая может накопиться в I аккумуляторе.
Сейчас обнаружил, что эта величина "решает" все проблемы - побольше поставить и хвост стабильным становится...
Только получается недопонимаю - чем больше "накопленная" ошибка - тем точнее... 

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #44 : 07 Ноябрь, 2013, 14:00:08 pm »
Только получается недопонимаю - чем больше "накопленная" ошибка - тем точнее... 
ПОхоже в программе вертолёт "безмассовый", т.е. у него инерция почти нулевая... что, в общем виде, не совсем соответствует нашему практическому опыту :) Т.е.там видно что он на одной P компоненте может "притянуться" к нужной точке, а не "пролететь" через неё.