Отвлекитесь, эмбеддеры! Отвлеченные темы - обсудить проблемы тепловой смерти вселенной, или просто пиво. Этот раздел - для отдыха. |
12.12.2017, 12:15
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от ALEGYR
|
Давай посмотрим!
У тебя ЕЕ_PID_TIME период регулирования в секундах, а integral_err в градусах!
ведь integral_err определяется оператором
integral_err+= PID_curr_err;
а PID_curr_err определяется оператором
PID_curr_err = EE_FUEL_TARGET_TEMP - temp;
где EE_FUEL_TARGET_TEMP это температура уставки
а temp это текущая температура нагрева
Я думаю что строка
if (integral_err‹(EE_PID_TIME*2000)) integral_err += PID_curr_err;
в ТВОЕМ коде написана не от большого ума, а по великой дилетантской глупости!!!
|
От полного отсутствия ума, машка ты тупая, ты продолжаешь нести бред про сравнение градусов с секундами. Мало того, что ты по тупости своей в сотый раз несешь бред про сравнение секунд с градусами, хотя тебе сто раз растолковали, и уже не только я, что нет там для пид-алгоритма ни секунд, ни градусов, ладно, понятно, что это тебя в первом классе по голове сильно стукнули, когда ты в примерах "взяли 8 раз по 3 яблока" яблоки с разами путал, с тех пор так у тебя и заклинило на этом месте. Хрен бы с ним. Но какого черта, овца ты тупая, ты игнорируешь наличие в этой строке коэффициента?!?!?!
*2000
*2000!
*2000!!!!!
*2000!!!!!!!!!!!
Закрой свою лицевую перделку и разуй глаза, дура! Есть коэффициент, на который умножаются "секунды" - значит все, забудь про "секунды", подними руку, как примерная первоклашка и спроси - "Дяденька, а какую размерность имеет данный коэффициент". Потому что это МОИ коэффициенты, и ТОЛЬКО Я решаю, какая у них размерность, не так ли?
А ты не спросил, ты наплел опять страницу идиотской бессмысленной блевоты. Клоун долбаный.
Сообщение от ALEGYR
|
Спрашивается - Нахрена сравнивать сумму ошибок температур нагрева с 1-10 секундами, да еще умножать эти секунды на две тысячи, когда можно сразу написать
if (integral_err‹20000) integral_err += PID_curr_err;
?
Я думаю что строка
if (integral_err‹(EE_PID_TIME*2000)) integral_err += PID_curr_err;
в ТВОЕМ коде написана не от большого ума, а по великой дилетантской глупости!!!
|
Да не умеешь ты думать, пень еловый! Не с "секундами" сравнивается текущее значение накопленной ошибки, а со специально заданной пороговой величиной. Без-раз-мер-ной, дятел. Но зато жестко зависящей от заданного периода регулирования. Потому что от него, если ты еще не заметил, а ты не заметил, ибо тормоз, зависит, какая именно величина в переменной control соответствует 100% мощности, выдаваемой на нагреватель.
И если "сразу написать", как ты предложил, то выполнять свою функцию сия строка будет только при одном из десяти возможных вариантов уставки периода регулирования, а в девяти остальных она будет работать НЕ так, как должна.
Сколько раз тебе повторять, тупое животное? Не можешь понять - спроси, дубина! А не приписывай моему коду какую-то выдуманную тобой совсем не ту функциональность, что он реализует.
Последний раз редактировалось AR_Favorit; 12.12.2017 в 12:24.
|
|
|
|
12.12.2017, 12:20
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от Yuri222
|
На ранее приведенной картинке устройства с ПИД регулятором на выходе этого самого регулятора суммируются пропорц. составляющая (чисто физически - должна выражаться в градусах), интегральная (физически - в градусах*секунда) и дифференциальная (физически - в градусах/секунда).
Т.е. замешиваются в кучу крокодилы, бараны и птеродактили. Которые, как я понимаю, благодаря коэффициентам преобразуются в
условные безразмерные величины.
|
Вот!!! Вот человек - понимает, о чем пишет. И второй человек, поставивший спасибку (не тот, который я), явно тоже понял, что написано первым.
А как же наш разработчик Саньбо? Он как-нить прокомментирует вот этот коротенький текст? А? Давайте дружно позовем Алегирку!
|
|
|
|
12.12.2017, 12:51
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от ALEGYR
|
Тебе можно! Путь хоть эта маленькая радость остается в твоей трудной жизни слесаря кип!
|
Мне все можно в отличии от вас Вы то дедушка и уже не стоит и старость свое берет
__________________
Глаза боятся,а руки делают.
|
|
|
|
12.12.2017, 14:49
|
|
Почётный гражданин KAZUS.RU
Регистрация: 02.07.2009
Сообщений: 1,119
Сказал спасибо: 1,248
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
А теперь осталось понять что формула ПИД выдает ПРОЦЕНТНОЕ значение подаваемой ЭНЕРГИИ за ПЕРИОД РЕГУЛИРОВАНИЯ при данной динамике обьекта.
Я программу писал не для подбора коэффициентов!!!! а для того чтобы можно было понять что от чегозависит и на что влияет!!!! например как при одной и тойже динамичности обьекта - град в сек подьема и град в сек остывания, одних и техже Кп, Ки, Кд на кривую нагрева и регулирования будет влиять ПЕРИОД РЕГУЛИРОВАНИЯ. притом это можно даже прямо во время работы изменять. чтобы сравнить.
|
|
|
Сказали "Спасибо" stalkernet
|
|
|
12.12.2017, 18:46
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
|
|
|
|
12.12.2017, 19:37
|
|
Вид на жительство
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от Yuri222
|
Ну как бы чисто математически интеграл от температуры по времени - это число, показывающее площадь фигуры в координатной плоскости температура-время.
Т.е градус*секунда.
|
Вот именно!
Переменная integral_err и говорит о том - сколько градусов было накоплено за какое-то количество времени нагрева бачка! А параметр E_PID_TIME*2000 говорит о том сколько градусов мы можем накопить, чтобы ВЫРУБИТЬ интегральную составляющую ПИДа из расчета управляющего сигнала control, и превратить ПИД регулятор в ПД регулятор! Ну а поскольку автор кода сознательно пренебрегает влиянием дифференциальной составляющей (см цитату)
Сообщение от AR_Favorit
|
Дифференциальная же составляющая во всем этом веселье может и не участвовать вообще. Более того, ее влияние тут не особо-то и желательно: просто на участках, где скорость нагрева сильно меняется, она будет пытаться в меру заданного ей кефа "прибить" крутизну изменения графика нагрева, причем совершенно безуспешно - инерционность системы такая, что ее влияние будет воспринято гораздо позже того момента, когда оно было применено. И будет скорее вредно, чем полезно.
|
да еще его правильно настроенный PID-алгоритм вырождается в PI-алгоритм
Сообщение от AR_Favorit
|
В итоге правильно настроенный PID-алгоритм в данном случае вырождается в PI-алгоритм, который1) сначала по возможности быстро выдает в нагрузку нужное количество энергии для нагрева до целевой температуры 2) поддерживает достигнутую температуру при нулевой ошибке за счет накопленной интегральной составляющей.
|
то как только его код строкой
if (integral_err‹(EE_PID_TIME*2000)) integral_err += PID_curr_err;
вырубит влияние интегральной составляющей, его PI регулятор превратится в обыкновенный P регулятор, и бачок с маслом будет ВСЕ остальное время нагреваться с системной ошибкой, характерной для P регулятора!!!
То есть, заказчику вдули в уши, что ему, за его деньги, сделают ПИД-регулятор для точного контроля температуры нагрева бачка с маслом, а фактически ему втюхали обыкновенный P регулятор, который только в начале нагрева бачка канает несколько секунд под ПИД-регулятор!!! Вот и весь "профессионализм" разработчика кода!!!
|
|
|
|
12.12.2017, 19:44
|
|
Вид на жительство
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от Yuri222
|
Т.е. замешиваются в кучу крокодилы, бараны и птеродактили. Которые, как я понимаю, благодаря коэффициентам преобразуются в
Цитата:
|
Сообщение от AR_Favorit
Цитата:
|
нет там внутри алгоритма ни секунд, ни градусов
|
|
условные безразмерные величины.
|
Не в условные безразмерные величины, а во вполне конкретные проценты выдаваемой нагревателем тепловой энергии!
|
|
|
|
12.12.2017, 19:50
|
|
Вид на жительство
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от AR_Favorit
|
Еще раз: хочешь кефы для моего алгоритма и графика нагрева твоего фена?
|
Хочу!
Сообщение от AR_Favorit
|
Тогда я тебе их прикину, хотя бы приблизительные.
|
Прикинь, хотя бы приблизительные, я подожду!
|
|
|
|
12.12.2017, 20:18
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от ALEGYR
|
Вот именно!
Переменная integral_err и говорит о том - сколько градусов было накоплено за какое-то количество времени нагрева бачка! А параметр E_PID_TIME*2000 говорит о том сколько градусов мы можем накопить, чтобы ВЫРУБИТЬ интегральную составляющую ПИДа из расчета управляющего сигнала control, и превратить ПИД регулятор в ПД регулятор!
|
Да не превращается при этом ПИД-регулятор ни во что, дятел ты упоротый, сколько раз тебе повторять? При нормальной работе интегральная составляющая столько не накапливает. А при аномалиях - обрыве ТЭНа, или при заливке во внешнюю емкость сильно охлажденного масла, слишком вязкого и убивающего насос, или неправильной настройке коэффициентов - накапливает, стопорится, а в другом месте программы это воспринимается как аварийный сигнал. И все, и ни ПИД, ни ПИ, ни П - никакого регулятора нет, нечего регулировать, установка в аварийном режиме. Дебил тупой, я еще раз повторяю: не понимаешь, что, как и зачем сделано - спроси, тупень, спроси, а не городи свою херню больную.
Последний раз редактировалось AR_Favorit; 12.12.2017 в 20:24.
|
|
|
|
12.12.2017, 20:23
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 16:09.
|
|