roboforum.ru

Технический форум по робототехнике.


ПИД-алгоритмы - перевод статьи про PID

Автомат, адаптивный автомат ... разум

Re: Перевод статьи про ПИД-алгоритмы

Сообщение =DeaD= » 04 авг 2008, 18:46

Ну наконец-то мы перешли к конкретике.

avr123.nm.ru писал(а):4)
Рисунок 7 показывает зависимость поведения системы от изменения Vd.
Вообще не понял я, может новички конечно поймут не замыленым мозгом.

Тут согласен, перевел не очень удачно, ща попробую поправить.

avr123.nm.ru писал(а):И МНЕ не понятно почему нагрев на графике 7 пришел именно к 1 в итоге, а не перегреляся или недогрелся - КАК ОНО В ЖИЗНИ бывает.

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

avr123.nm.ru писал(а):
avr123.nm.ru писал(а):Например: Рисунок 3. График положения вала при старте "Из графика видно, что мотор не сразу набирает соответствующую напряжению скорость, но после того, как набрал (при t=0.2), дальше он её поддерживает."

Не вижу я "её поддерживает" после t=0.2 , я вижу она и дальше растет. Потому и не понятно.

Да вы педант.


avr123.nm.ru писал(а):Добавлено спустя 2 минуты 54 секунды:
5) Рисунок 8.
то двигатель конечно более быстро достигает требуемого положения, но дальше идёт "перелёт", из-за чего система ...

А почему перелет происходит ?

Я полагаю вы не понимаете почему дальнейшее объясняет перелёт, а не где это объяснено, поэтому это оставим без комментов.

avr123.nm.ru писал(а):
Система двигателя с редуктором "перелетает" необходимое положение при больших коэффициентах из-за задержки с реакцией на управляющее воздействие.

Мистика какая-то !

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

avr123.nm.ru писал(а):
Эта задержка, плюс задержка обратной связи по датчику - вот что приводит к "перелёту" через требуемое положение на рисунке 8.

Перелет происходит по тому что есть скорость и инерция.

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

Re: Перевод статьи про ПИД-алгоритмы

Сообщение Vooon » 04 авг 2008, 19:07

Спасибо за перевод!
Статья доходчиво обьясняет что, как и зачем,
нужно лишь немного представлять как себя ведут обьекты управления.

ПС: Побольше бы таких статей в робовике!
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Re: Перевод статьи про ПИД-алгоритмы

Сообщение avr123.nm.ru » 04 авг 2008, 21:38

=DeaD= писал(а):Инерция - это причина задержки реакции системы.

Нет конечно ! Речь то идет об инерции обекта регулирования, а не о инерции элементов управления.

=DeaD= писал(а):инерция - это далеко не единственная причина задержек в системе.

Инерция объекта регулирования вообще не является причиной задержек в системе.

Добавлено спустя 12 минут 26 секунд:
=DeaD= писал(а):
avr123.nm.ru писал(а):
Система двигателя с редуктором "перелетает" необходимое положение при больших коэффициентах из-за задержки с реакцией на управляющее воздействие.

Мистика какая-то !

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


Если вам это очевидно то открою тайну ! - Ваше ЭТО (не в статье) толкование НЕ ВЕРНО !

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

Т.е. перелет вызван именно наличием не нулевой скорости и инерцией объекта регулирования.
И не устраним даже при задержке реакции в 0 сек.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: Перевод статьи про ПИД-алгоритмы

Сообщение blindman » 04 авг 2008, 21:50

avr123.nm.ru писал(а):Т.е. перелет вызван именно наличием не нулевой скорости и инерцией объекта регулирования.
И не устраним даже при задержке реакции в 0 сек.

А разве не для этого предназначен компонент D PID-системы?
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!

Аватара пользователя
blindman
 
Сообщения: 4130
Зарегистрирован: 29 апр 2008, 21:15
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич

Re: Перевод статьи про ПИД-алгоритмы

Сообщение avr123.nm.ru » 04 авг 2008, 22:37

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

Re: Перевод статьи про ПИД-алгоритмы

Сообщение =DeaD= » 04 авг 2008, 22:48

avr123.nm.ru писал(а):
=DeaD= писал(а):Инерция - это причина задержки реакции системы.

Нет конечно ! Речь то идет об инерции обекта регулирования, а не о инерции элементов управления.

Вообще-то система включает в себя объект управления, а у вас другое мнение?

avr123.nm.ru писал(а):
=DeaD= писал(а):инерция - это далеко не единственная причина задержек в системе.

Инерция объекта регулирования вообще не является причиной задержек в системе.

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

Даже если бы единица была равна нулю, всё равно бы два не было равно единице. Что-то типо такого вы сейчас сказали. Вы бы сначала разобрались что я имею в виду, или сделали бы ссылку на то, какой терминологией вы пользуетесь, а то как-то пока всё мимо.

Я вам говорю что инерция есть причина по которой система не сразу меняет скорость и что это называю задержкой системы в данном случае, а вы начинаете мне рассказывать что если бы даже задержки (под которой я имею в виду инерцию) не было бы вообще, то инерция бы была всё равно. Из чего следует, что вы сами себе противоречите.

avr123.nm.ru писал(а):Т.е. перелет вызван именно наличием не нулевой скорости и инерцией объекта регулирования.
И не устраним даже при задержке реакции в 0 сек.

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

Re: Перевод статьи про ПИД-алгоритмы

Сообщение avr123.nm.ru » 04 авг 2008, 23:05

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

Re: Перевод статьи про ПИД-алгоритмы

Сообщение =DeaD= » 04 авг 2008, 23:29

Ну и давайте я буду конкретен. Пусть вся система обладает какой-то инертностью "m". Пусть мы зафиксировали какой-то шаг по времени "dt", скажем dt=0.01. Пусть мощность двигателя "F". Очевидно существует настолько малая скорость "Vmin" нашей системы, что эту скорость можно сбросить до нуля двигателем мощностью "F" за время "dt" (например, Vmin=dt*F/m). Теперь возьмем Vx=Vmin/10 и попробуем прикинуть - насколько будет отличаться изменение положения вала с учетом инерции и без её учета, если ни в какой момент времени скорость системы не превышает Vx. Я утверждаю, что отклонение будет не более 10%.

Итак если мы возьмем систему с pGain=Vx, то она с учетом инерции будет приближаться к целевому положению не быстрее чем система с pGain'=Vx*1.1 без учета инерции, однако посчитаем как себя будет вести система с pGain=Vx*1.1, поскольку мы выбирали Vx достаточно малым, то можем рассмотреть здесь Vx=1/1.1, => pGain'=1

Пусть на шаге N эта система была в положении p[N] из интервала (0,1). Тогда на шаге N+1 эта система будет в положении p[N]+v[N]*dt=p[N]+dt*pGain'*(1-p[N])=p[N]+0.01*(1-p[N])=0.99*p[N]+0.01, что явно больше 0, но меньше 1.

Итак мы только что показали, что при достаточно малом pGain любая инерционная система такого сорта может быть стабилизирующейся снизу к нужному нам положению только пропорциональным управлением, хотя и достаточно долго это будет.

Надеюсь и вы будете конкретны в своих утверждениях и не будете закидывать меня шапками.

ps: Я как математик привык отстаивать свою точку зрения четкими доказательствами, а не большими цветными буквами. С надеждой на понимание и адекватные ответы.

Добавлено спустя 7 минут 38 секунд:
blindman писал(а):
avr123.nm.ru писал(а):Т.е. перелет вызван именно наличием не нулевой скорости и инерцией объекта регулирования.
И не устраним даже при задержке реакции в 0 сек.

А разве не для этого предназначен компонент D PID-системы?

Перелёт устраним и без D-компоненты, только долго это и нудно, да и не всегда его нужно полностью устранять.

Добавлено спустя 2 минуты 26 секунд:
Vooon писал(а):Спасибо за перевод!

Пожалуйста :) помогло? или уже знал до этого про ПИД-управление?

Vooon писал(а):ПС: Побольше бы таких статей в робовике!

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

Re: Перевод статьи про ПИД-алгоритмы

Сообщение avr123.nm.ru » 05 авг 2008, 00:06

=DeaD= писал(а): Надеюсь и вы будете конкретны в своих утверждениях и не будете закидывать меня шапками.


Я КОНКРЕТНО написал о причине "перелета" и о том что вы указали не верную причину.

Я не писал что не возможно избежать "перелета" ни когда в жизни. Я написал КОНКРЕТНО о том КОНКРЕТНОМ примере который обсуждается.

КОНКРЕТНО в том КОНКРЕТНОМ примере говорится что ПЕРЕЛЕТ есть ! Он данность, он существует в том КОНКРЕТНОМ примере.

И я назвал его причину - не нулевая скорость в том КОНКРЕТНОМ примере и инерция регулируемого объекта.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: Перевод статьи про ПИД-алгоритмы

Сообщение =DeaD= » 05 авг 2008, 00:13

avr123.nm.ru писал(а):Я КОНКРЕТНО написал о причине "перелета" и о том что вы указали не верную причину.

Кто виноват, кроме вас самих, что в поняли слово "задержки в системе" как-то по своему, посчитав что туда не относится инертность системы?

avr123.nm.ru писал(а):Я не писал что не возможно избежать "перелета" ни когда в жизни. Я написал КОНКРЕТНО о том КОНКРЕТНОМ примере который обсуждается.

КОНКРЕТНО в том КОНКРЕТНОМ примере говорится что ПЕРЕЛЕТ есть ! Он данность, он существует в том КОНКРЕТНОМ примере.

И я назвал его причину - не нулевая скорость в том КОНКРЕТНОМ примере и инерция регулируемого объекта.

Полная чушь. Вы сказали:
avr123.nm.ru писал(а):Т.е. перелет вызван именно наличием не нулевой скорости и инерцией объекта регулирования.
И не устраним даже при задержке реакции в 0 сек.

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

Re: Перевод статьи про ПИД-алгоритмы

Сообщение avr123.nm.ru » 05 авг 2008, 00:19

Бейтесь И дальше головой об стену ! :durak:

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

Re: Перевод статьи про ПИД-алгоритмы

Сообщение =DeaD= » 05 авг 2008, 00:33

avr123.nm.ru писал(а):Бейтесь И дальше головой об стену ! :durak:

Я вот не пойму - откуда столько эмоций и агрессии? Вы не можете русским языком объяснить чего вам не нравится в задачке школьного уровня человеку с высшим образованием? Мне тяжело вам помочь тогда. Пока кроме криков о полной моей тупости я ничего не услышал. Ну разве что вы сказали что в вашем понимании задержки в системе это не имеет отношения к инерции. Хотя потом как-то оставили это и начали просто ни о чем вести беседу.

avr123.nm.ru писал(а):Но лучше статью подредактируйте. И сами понять постарайтесь о чем рисунок 3.

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

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

Re: Перевод статьи про ПИД-алгоритмы

Сообщение avr123.nm.ru » 05 авг 2008, 00:55

=DeaD= писал(а):Мне тяжело вам помочь тогда.

Я помощи не просил.

ВЫ ПРОСИЛИ "КИДАТЬСЯ НЕ ПОТРЕБЩИНОЙ" в первом посте топика.

=DeaD= писал(а):криков о полной моей тупости

Я не писал ни чегопро вашу тупость.

Добавлено спустя 5 минут 26 секунд:
=DeaD= писал(а): вписывать слово инерция - специально не буду, потому как до некоторых вещей из школьного курса физики неплохо бы и самому догадываться если уж за ПИД-алгоритмы взялся.


Вы так и не поняли что не сама по себе инерция вызывает "перескок" !!!
А совокупность инерции и не нулевой скорости.

=DeaD= писал(а): Если каждый график разжёвывать с точки зрения матмодели, тогда это будет небольшая книжка а не статья и вся простота изложения скроется за тучей формул.


А нельзя ли вместо ПУСТОЙ АБСОЛЮТНО фразы: "Уравнения, описывающие движение такой системы достоточно просты." написать эти ПРОСТЫЕ уравнения ??? Вы ж математик !

Кроме того вы не тупо игнорируете то что я вам написал что в примере с динамиком ОБЕЩАНОЙ параболы НЕ БУДЕТ.

Вы КАК МАТЕМАТИК когда это на клаве печатали НЕ ПОНИМАЛИ ?
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: Перевод статьи про ПИД-алгоритмы

Сообщение FireFly » 05 авг 2008, 01:53

да угомонитесь блин :shock:

буржуй написал, Dead перевел... УСЕ!
Домашняя робототехника - RoboZone.SU
горючее...- пиво... много... :)
Аватара пользователя
FireFly
 
Сообщения: 1576
Зарегистрирован: 19 июн 2005, 18:27
Откуда: Камышин

Re: Перевод статьи про ПИД-алгоритмы

Сообщение Сергей » 05 авг 2008, 02:28

Ребят, харэ уже. Статья нормально переведена, кому что не понятно может либо в нете поискать ответ и сюда прикрепить либо задать сразу нам вопрос, зачем столько "крика"?
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Пред.След.

Вернуться в Алгоритмы

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

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