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

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


Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #90 : 07 Ноябрь, 2013, 18:33:47 pm »
но в вертолетах реально работает так как у меня реализовано.
у тебя курс не держится, вроде...

Оффлайн alienn

  • Сообщений: 104
    • Вадим
    • Юнак
  • Город: Санкт-Петербург
« Ответ #91 : 07 Ноябрь, 2013, 18:35:32 pm »
А на основании чего он будет что-то возвращать, если он находится в стабильном нужном положении?!
Я же говорю - он попытается дернуться, тут-же получит ошибку и вернется. К сожалению, без того чтоб дернуться, тут не получится.
А ты не пробовал никогда включить вертолет, повернуть его на земле руками, а потом поднять в воздух? Он вернется в то положение, которое было когда ты его включил. И сделает это I компонента.

Оффлайн alienn

  • Сообщений: 104
    • Вадим
    • Юнак
  • Город: Санкт-Петербург
« Ответ #92 : 07 Ноябрь, 2013, 18:35:55 pm »
но в вертолетах реально работает так как у меня реализовано.
у тебя курс не держится, вроде...
Держится, как прибитый держится, если I есть.

Оффлайн alienn

  • Сообщений: 104
    • Вадим
    • Юнак
  • Город: Санкт-Петербург
« Ответ #93 : 07 Ноябрь, 2013, 18:46:44 pm »
Сделал отключаемые порывы ветра

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #94 : 07 Ноябрь, 2013, 19:46:19 pm »
И сделает это I компонента.
Неееет!!!! :)
Ладно, не буду с тобой бороться просто расскажи простую вешь..

вот есть у нас вертолёт ( ну пусть соосник, или квадрик, для простоты)...мы вот летим...и включаем удержание ( пусть высоты)... по твоей идее - мы должны выключить двигатель (положение 0) и подождать пока он обратно взлетит благодаря накоплению I компоненты :)

Оффлайн alienn

  • Сообщений: 104
    • Вадим
    • Юнак
  • Город: Санкт-Петербург
« Ответ #95 : 07 Ноябрь, 2013, 20:07:29 pm »
Андрей, ты какие-то примеры все время придумываешь фантастические, не из жизни :)
Ты четко скажи - что на входе у регулятора (чем мы управляем), что измеряет регулятор, куда идет выход регулятора, (чем он управляет) ?
Что значит включили удержание? Что уже известно регулятору в этот момент, какие значения в нем и в управляемом устройстве?
Тогда я тебе по полочкам разложу, что он сделает, чтобы добиться желаемого результата.

Оффлайн alienn

  • Сообщений: 104
    • Вадим
    • Юнак
  • Город: Санкт-Петербург
« Ответ #96 : 07 Ноябрь, 2013, 20:08:24 pm »
Давай вернемся к простому вопросу - о чем мы вообще спорим? :)

Оффлайн alienn

  • Сообщений: 104
    • Вадим
    • Юнак
  • Город: Санкт-Петербург
« Ответ #97 : 07 Ноябрь, 2013, 20:39:26 pm »
Мне тут кстати пришла в голову интересная мысль - нельзя ограничивать глубину интегрирования. Иначе удержание не будет толком работать.
Если сделать глубину интегрирования как 3/4 периода колебания, а колебания хвоста у нас около 2 раз в сек, то при ограниченной длине регулятор будет "забывать" ошибку уже через пол секунды и не сможет вернуть хвост в нужное положение.
А по факту этого не происходит, можно проверить на любом вертолете с удержанием хвоста. Он будет помнить эту ошибку и 10 секунд и 20, и дольше, пока не сможет вернуть хвост обратно и тем самым вернуть I в 0. Попробуй в режиме удержания руками повернуть вертолет. Регулятор сдвинет серву до максимума. И будет ее так держать. Пока ты руками вертолет не вернешь обратно в тоже самое положение.

P.S. Только что на всякий случай проделал этот и предыдущий свой опыт, все так и есть. Так что могу гарантированно, со всей ответственностью заявить, что BRAIN управляет не дельтой положения сервы, а фактическим её положением, а также имеет бесконечную глубину интегрирования. (ну или очень большую, больше 30 сек.). Точно также реализовано в моем эмуляторе.

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #98 : 07 Ноябрь, 2013, 20:40:09 pm »
Давай вернемся к простому вопросу - о чем мы вообще спорим?
Мы спорим о так называемом "смещении", она же "нулевая точка"..т.е. такое положение управляюшего органа системы, при котором оно находится в "нулевом" положении, т.е. когда расхождение параметров  -нуль. В самом простом случае соосника удержание постоянной высоты... высота - константа, скорость - нуль. На ручке газа - стоит некоторое значение, которое поддерживает его на данной высоте. И я утверждаю, что для того, чтобы продолжать удерживать высоту в автоматическом режиме достаточно включить PID регулятор и он должен начать работу от этого положения ручки с изначально нулевыми P I D,и чуть чуть подруливая продолжить висеть.... И в идеальном случае - подруливать не нужно, выход с PIDа  - нуль.

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


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

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #99 : 07 Ноябрь, 2013, 20:42:22 pm »
Он будет помнить эту ошибку
А..ты просто путаешь. Верный курс - он не помнит, он его всегда знает ( условно, как компас - там отдельная игра как он его помнит - это калманить дусы надо, но неважно в целом).

Иначе удержание не будет толком работать.
Удержание - это просто знание того курса, на который надо выйти...


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

А PID регулятор - это способ дойти до этой ЗАДАННОЙ точки...когда ты НЕ ЗНАЕШЬ какое положение сервы соответсвует движению влево, а какое - вправо, а какое - удержанию на месте

Оффлайн alienn

  • Сообщений: 104
    • Вадим
    • Юнак
  • Город: Санкт-Петербург
« Ответ #100 : 07 Ноябрь, 2013, 20:48:14 pm »
А..ты просто путаешь. Верный курс - он не помнит, он его всегда знает ( условно, как компас - там отдельная игра как он его помнит - это калманить дусы надо, но неважно в целом).
А почему тогда при нулевой I компоненте он этого не делает ?? Если он его по твоему помнит и знает.

P.S. Это ты путаешь. :)

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #101 : 07 Ноябрь, 2013, 20:48:28 pm »
 
. Так что могу гарантированно, со всей ответственностью заявить, что BRAIN управляет не дельтой положения сервы, а фактическим её положением
Т.е ты лично калибруешь БРЕЙН, чтобы он знал какое положение сервы соответсвует какой угловой скорости? :)
Спорим, что если ты сдвинешь серву...то ничего не произойдет и он все равно будет работать правильно?

Оффлайн alienn

  • Сообщений: 104
    • Вадим
    • Юнак
  • Город: Санкт-Петербург
« Ответ #102 : 07 Ноябрь, 2013, 20:49:19 pm »
Давай вернемся к простому вопросу - о чем мы вообще спорим?
А ты утверждаешь, что в режиме зависания верт должен выключить мотор ( встать в нуль...) хорошенько разогнаться вниз, начать это всё исправлять и ( если повезёт) добраться до нужной высоты и скорости на I компоненте.
Я не это утверждаю.

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #103 : 07 Ноябрь, 2013, 20:49:37 pm »
А почему тогда при нулевой I компоненте он этого не делает ?
У тебя ошибка в регуляторе :) А спартан просто держит курс и всё :)

Оффлайн AndRay

  • Старейшина клуба
  • Сообщений: 3574
    • Андрей
  • Город: Свято-Питер
« Ответ #104 : 07 Ноябрь, 2013, 20:50:28 pm »
Я не это утверждаю.
Ты согласен что при выходе системы в искомую точку выход ПИДа - нуль?