Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Отвлекитесь, эмбеддеры! Отвлеченные темы - обсудить проблемы тепловой смерти вселенной, или просто пиво. Этот раздел - для отдыха.

 
Опции темы
Непрочитано 12.12.2017, 02:20  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от AR_Favorit Посмотреть сообщение
И еще раз, еще очередной прекрасный раз ты подтвердил, ламер, неуч, невежДа, не понимающий, как работает ПИД. Ну с чего в твоем крохотном мозгу укоренилась мысль, что с ПИДом нагрев будет подниматься к точке уставки "тихо и медленно"?! У тебя начальная ошибка сколько? для 300 градусов уставки? При комнатной температуре 25 градусов цельсия? 275!!! А макс выходной сигнал 255. Сколько у тебя был пропорциональный кеф? 30.0?
У тебя действительно нагрев твоего бачка с маслом происходит "тихо и медленно"!
А у меня нагрев фена до температуры 280 градусов (при уставке 300)происходит на максимальной мощности, без использования ПИД. И только со значения 281 градус включается ПИД, и первая значение ошибки рассогласования будет не 275 градусов а всего 19, и ВСЕГДА 19 для любой уставки выше 40 градусов!!!
У тебя же, с каждой секундой после запуска, мощность нагревания постоянно снижается! А это значит что все твои 50 градусов нагрева бачок будет нагреваться на за минуту-две, а за 5-10 минут!!! То есть в 2-5 раз медленнее чем могло бы быть!

Сообщение от AR_Favorit Посмотреть сообщение
У тебя при первой же итерации ПИДа с этим коэффициентом ошибка (275) умножается на кеф 30 и результирующее значение пропорциональной составляющей становится 8250. Выходной ограничитель выставляет 255, фен жарит на 100%, всё греется по максимуму. Через секунду ошибка 274, результирующее значение пропорциональной 8220. На выходе 255, ничего не изменилось. И одна только пропорциональная составляющая будет давать вклад в 100% выходной мощности аж до 291 градуса! Понимаешь, кретин? С 25 до 291 градуса твой ПИД жарит на 100% мощности только за счет одной пропорциональной компоненты!
У меня на первой итерации ошибка (19) умножается на кеф 30 и результирующее значение пропорциональной составляющей становится 570! На второй еще меньше итд. Если я вижу что за 19 градусов я вылетаю за уставку, то я просто уменьшаю пропорциональный коэффициент, одновременно корректируя интегральный.

Сообщение от AR_Favorit Посмотреть сообщение
Смотри сюда, клоун: температура 291, уставка 300, ошибка 9, умножаешь на свой кеф 30 - получаешь 270, что ограничивается на выходе до 255 - 100% мощности! И только когда намеряется 292 - пропорциональная компонента выдаст "всего" 240, уже не 100% выходной мощности, а "всего" 94%...
Мне нравится ход твоих мыслей, но ты забываешь о том, что между попугаями управляющего сигнала и реальным нагревом микрухи есть не только нагревающий элемент, но и охлаждающий вентилятор! Оба этих элемента имеют СВОИ передаточные характеристики, преобразующие попугаи управляющего сигнала пид регулятора в градусы тепла, и СВОИ коэффициенты передачи! При этом эти коэффициенты передачи не могут быть больше 1, а это милый друг уже не так прямолинейно как тебе кажется!
Так что я точно знаю, что даже приняв пропорциональный коэффициент 30, при Ki и Kd равными 0, я НЕ достигаю уставки градусов на 10-15!!! А это мне как раз и позволяет, подбором Ki и Kd, плавно выходить на уставку!!!
Так что игорек, я спокойно получаю то что хочу и даже могу тебе это показать! В отличие от твоего пустого трындежа про огромное влияние интегральной составляющей, которую тебе даже приходиться ограничивать и даже делить на 1000!!!
ALEGYR вне форума  
Непрочитано 12.12.2017, 04:04  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от AR_Favorit Посмотреть сообщение
Ты в очередной раз обосрался, клоун, спутав просто величину накопления (которая ограничивается и фиксируется в случае превышения данной строкой) с величиной накопления, умноженной на маленький коэффициент. ТЫ нереально тупой! При чем тут вообще размер регистра, дебил?
А зачем эта строка - ты бы понял, если бы сообразил, что в реальном устройстве необходимо предусмотреть не только нормальный режим работы, но и что будет, например, если один из ТЭНов (или управляющих ими оптореле) и проч. перестал работать. Или все перестали работать. Или, что самое неприятное, то работают, то нет.
Вот в этом случае нагрев будет уже не 600 секунд, и накопленная ошибка может оказаться побольше, чем смог сосчитать твой восьмибитный мозжечок. И по величине интегральной компоненты другая часть программы в нужный момент определит непорядок и переведет устройство в аварийный режим. Для тебя это слишком сложно, на твоем детсаловском уровне понимания? Да, слишком сложно. Ты ардуинный говноподельщик, а не разработчик же.
Чудик, у меня четко написано значение интегральной ошибки, а не значение интегральной составляющей управляющего сигнала ПИД регулятора!!! см цытату
Сообщение от ALEGYR Посмотреть сообщение
значение интегральной ошибки достигает своего предельного значения за ВСЕ (то есть за 600 секунд) время выхода на уставку, и в дальнейшем почти не изменяется, достигнув в максимуме 55 * 600 = 33 000!
А это значит, что даже если у тебя ВСЕ твои тэны перестанут работать, то и в этом случае твое условие

if (integral_err‹(EE_PID_TIME*2000)) integral_err += PID_curr_err;

будет лишним!!! Не говоря уже о том что оно лишнее когда ВСЕ твои тэны начнут жарить как солнце на соей поверхности!!! Ведь PID_curr_err просто быстрее снизится до нуля и integral_err достигнет своего предельного значения ни за 300 секунд а за 100 или даже 50!!!
Мало того, если бы ты, как приличный разработчик, действительно задумывался о поведении своего устройства в экстремальных режимах работы, а не придумывал бы свои жалкие оправдалки на ходу, то ты бы вообще не стал ссылаться на это бредовое условие! Ведь оно никоим образом не говорит о сбое в работе, а просто тупо ВЫРУБАЕТ изменение интегральной ошибки, заменяя ее константой после нескольких секунд нагрева бачка. Причем условие сбоя проверяется не по условию превышения некоторого критического значения температуры, а по условию "Если в огороде растет бузина, то в Киеве должен жить дядька!"

Ведь сумма интегральной ошибки integral_err имеет размерность ГРАДУСОВ, а ты в этом условии ГРАДУСЫ сравниваешь со временем EE_PID_TIME, то есть СЕКУНДАМИ!!!

Вот и получается что говноподельщик тут ты! А я просто хороший профессионал, который даже из говна может сделать конфетку!!!
ALEGYR вне форума  
Непрочитано 12.12.2017, 05:31  
AR_Favorit
Почётный гражданин KAZUS.RU
 
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
AR_Favorit на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от ALEGYR Посмотреть сообщение
У тебя действительно нагрев твоего бачка с маслом происходит "тихо и медленно"!
Разумеется. Масло-то в бачке теплоемкое, сам корпус тэна и стенки бачка тоже надо прогреть.

И получается такая картина: включаем, например, нагреватель-тэн тупо в розетку, безо всякого пида, и за семь минут температура достигает градусов 55. При постоянно включенном нагревателе.

И тут мы выключаем нагреватель из розетки. Совсем. А температура масла в контрольной точке - продолжает расти. Сечешь, Машуля? Догадаешься своим полудохлым мозжечком, почему? Не догадаешься, придется объяснять. Унутре у этого самого тэна потрошки прогреты далеко за 100 градусов. И сами стенки тэна заметно горячее, чем масло в нашей удаленной от него контрольной точке. И масло возле тэна тоже горячее. И вот это все тепло продолжает распределяться по всему бачку, повышая его температуру. И за две-три минуты вся система приходит в тепловое равновесие - при температуре в 70 градусов. Прикольно, да? Это тебе не фен с постоянным потоком воздуха.

При этом в первые минуты температура в контрольной точке почти совсем не растет! ТЭН прогревает в основном себя и понемногу греет масло около себя, которое через прямую теплопроводность часть полученного тепла понемногу отдает теплоту в весь объем бачка. Затем температура потрохов, а за ними и стенок ТЭНа становится уже довольно большой, и масло в непосредственной близости становится нагрето сильно, и в это время, если открыть бачок, можно увидеть, что масло заметно бурлит: нагретое тэном выталкивается архимедовой силой на поверхность уже довольно быстро, в баке вместо спокойно стоящего масла идет перемешивание конвекционными потоками, и нагрев в контрольной точке происходит уже с приличной скоростью. И когда мы выдернули тэн из розетки - бурление понемногу утихает, теплота продолжает перераспределяться, и наконец, при примерно наших 70 градусах, все затихает в равновесии. И мееееедленно начинает остывать.

Это опять же не твой примитивный с точки зрения физики фен с постоянным потоком воздуха.

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

Это вот самая первая, начальная фаза работы установки.

Что же происходит с ПИДом при условии его правильной настройки?

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

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

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

Дифференциальная же составляющая во всем этом веселье может и не участвовать вообще. Более того, ее влияние тут не особо-то и желательно: просто на участках, где скорость нагрева сильно меняется, она будет пытаться в меру заданного ей кефа "прибить" крутизну изменения графика нагрева, причем совершенно безуспешно - инерционность системы такая, что ее влияние будет воспринято гораздо позже того момента, когда оно было применено. И будет скорее вредно, чем полезно. В некоторых реализациях алгоритма даже встречается ее расчет, исходящий из среднего значения производной скорости изменения ошибки за несколько периодов. Извращение-с, но в пределах допустимого.

В итоге правильно настроенный PID-алгоритм в данном случае вырождается в PI-алгоритм, который1) сначала по возможности быстро выдает в нагрузку нужное количество энергии для нагрева до целевой температуры 2) поддерживает достигнутую температуру при нулевой ошибке за счет накопленной интегральной составляющей.

Что будет, если неоптимально завысить Kp? Будет перерегулирование (перегрев) с последующим полным выключением нагревателя на довольно долгое время (пока ошибка опять не станет положительной), и только после довольно заметного охлаждения снова начнет греть - до несколько меньшей перерегулировки и обратно. То есть будут колебания. Если не слишком задрано - затухающие. Если слишком - незатухающие. И пропорциональная, и интегральная составляющие несколько раз поменяют знак, прежде чем установится равновесие. Если установится.
Именно это, кстати, мы наблюдаем в твоей реализации, если включить ее с начала нагрева - 100% мощности до минимального значения ошибки за счет одной только пропорциональной составляющей, и дикий перелет за счет накопленной интегральной

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

Что будет, если неоптимально завысить Ki? За время прогрева системы накопится слишкоом большое значение - будет перерегулировка (перегрев), тем большая, чем больше завышен кеф. После чего незатухающие в большинстве случаев колебания.
Это опять таки твой случай - если включить твою реализацию с начала нагрева - интегральная составляющая за время прогрева накопится до самого 100% ограничения, хотя она должна в районе уставки выдавать всего-навсего 25-30%, если верить числам на твоем графике

Сообщение от ALEGYR Посмотреть сообщение
А у меня нагрев фена до температуры 280 градусов (при уставке 300)происходит на максимальной мощности, без использования ПИД. И только со значения 281 градус включается ПИД, и первая значение ошибки рассогласования будет не 275 градусов а всего 19, и ВСЕГДА 19 для любой уставки выше 40 градусов!!!
И это только потому, что ты, дубина стоеросовая, не смог подобрать суммарно пропорциональный и интегральный кефы так, чтобы с использованием ПИД была именно такая картина. ПОэтому и пришлось тебе включать ПИД стрго на 19 градусах ошибки - при любом бОльшем значении твои коэффициенты пускают систему вразнос, потому как ты, скотина тупорылая, их высосал непонятно из чего.


Сообщение от ALEGYR Посмотреть сообщение
У тебя же, с каждой секундой после запуска, мощность нагревания постоянно снижается! А это значит что все твои 50 градусов нагрева бачок будет нагреваться на за минуту-две, а за 5-10 минут!!! То есть в 2-5 раз медленнее чем могло бы быть!
И снова ты подтвердил высокое звание дебильного кретина. У меня мощность нагрева начнет снижаться не с каждой секундой после запуска, а строго когда ее нужно начать снижать. Ты, утенок туалетный, типа не понимаешь ,что можно выбрать Кр совершенно без труда такой, что до все значения ошибки, которые меньше заданного, при умножении на этот кеф будут давать выходную мощность 100%?! Твой же кеф 30 делает так аж до 8 градусов ошибки! Ты реально такой тупой или пытаешься меня выбесить?

Идиот! Лупалки свои бестолковые разуй и посмотри на мой код. Время регулирования секунда, ок. 100% выходного сигнала - control = 1000, ок. Стартовая ошибка 50, ок. Ошибка, до которой я хочу, чтоб грелось 100%, 20 ок. Что сделать, чтоб от 25 до 50 градусов грело 100%, а потом начало снижать? Арифметику в первом классе проходила, мальвина? берем, например, пропорциональный кеф 50. Что получается? Пока ошибка будет меняться с 50 до 20 - пропорциональная составляющая будет принимать значения от 2500 до 1000. Что будет трактоваться в моем случае исполнительной частью (а в твоем - выходным ограничителем в алгоритме) как 100% мощности.

Доперла, дурочка ты наша?

Ошибка 50 - нагреватель на 100%. Ошибка на 49 - нагреватель на 100%. Ошибка 21 - нагреватель на 100%. Ошибка 20 - нагреватель на 100%. Ошибка 19 - нагреватель на... а вот тут важно сообразить, что мы все это время еще и копим интегральную составляющую, и к этому времени она начнет вносить свой скромный вклад. Пропорциональная же выдаст уже 850, то есть 85% мощности.


Сообщение от ALEGYR Посмотреть сообщение
У меня на первой итерации ошибка (19) умножается на кеф 30 и результирующее значение пропорциональной составляющей становится 570! На второй еще меньше итд. Если я вижу что за 19 градусов я вылетаю за уставку, то я просто уменьшаю пропорциональный коэффициент, одновременно корректируя интегральный.
Дурилка ты картонная, ну так зачем, зачем тебе включать ПИД строго на ошибке в 19 градусов? Если ьы включишь его на любой бОльшей ошибке, у тебя все равно ошибка, умноженная на кеф 30, даст 100% выходной мощности нагревателя! Зачем ты вводишь вот эту странную величину "ошибка, при которой начинает работать пид", которой нет ни в теории ПИД-регулятора, ни в грамотной реализации? Объяснение одно, и оно очень простое: ты просто не сумел настроить свой алгоритм на нормальную работу при любом возможном значении ошибки.

Сообщение от ALEGYR Посмотреть сообщение
Мне нравится ход твоих мыслей, но ты забываешь о том, что между попугаями управляющего сигнала и реальным нагревом микрухи есть не только нагревающий элемент, но и охлаждающий вентилятор! Оба этих элемента имеют СВОИ передаточные характеристики, преобразующие попугаи управляющего сигнала пид регулятора в градусы тепла, и СВОИ коэффициенты передачи! При этом эти коэффициенты передачи не могут быть больше 1, а это милый друг уже не так прямолинейно как тебе кажется!
Я не только НЕ забываю об этом, я вообще знать НЕ должен об этом, поскольку у меня перед глазами выложенный лично тобой график нагрева, где очень отчетливо видно, что в отличие от вышеописанного бачка с маслом, в одном месте которого тэн, а в другом термодатчик, температура у тебя растет при нагревателе, включенном на 100%, весьма и весьма линейно. В любом из промежутков во время нагрева одному и тому же приращению времени соответствует одно и то же приращение температуры. Что делает бессмысленным обезьяньим действием установку дифференциального коэффициента, кстати, как ты его ни ставь, а диф составляющая у тебя всегда ноль, а когла она не ноль - она делает ровно то, чего тебе точно не надо - по мере сил противодействует работе остальных частей твоего алгоритма, пытающихся выдержать заданный график)))...

Сообщение от ALEGYR Посмотреть сообщение
Так что я точно знаю, что даже приняв пропорциональный коэффициент 30, при Ki и Kd равными 0, я НЕ достигаю уставки градусов на 10-15!!! А это мне как раз и позволяет, подбором Ki и Kd, плавно выходить на уставку!!!
Вот только получилось это у тебя не подбором коэффициентов, а подбором значения ошибки, при котором ты запускаешь в действие свой горе-алгоритм))))

Сообщение от ALEGYR Посмотреть сообщение
Так что игорек, я спокойно получаю то что хочу и даже могу тебе это показать! В отличие от твоего пустого трындежа про огромное влияние интегральной составляющей, которую тебе даже приходиться ограничивать и даже делить на 1000!!!
Игорек - это твой муж, мразина. А меня зовут Андрей. А для тебя - господин Андрей, усеки себе на своем обоссаном носу, ушлепок))))

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

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

Вот так всё просто можно было реализовать в твоем случае. И это бы работало абсолютно не хуже.


А вот что ты точно не сможешь получить: взять свою термопару, сунуть ее в чайник, подключенный вместо твоего фена, и заставить его поддерживать любую заданную температуру от текущей комнатной до 100 гр.С. А я - могу. У меня ПИД работает при старте с любого значения ошибки, а у тебя - только при старте с ошибки в 19 градусов. То есть при 25 гр.с в комнате получить выходную температуру 40 гр. С ты не сможешь, кефа-то из хрена высосаны, а не подобраны под систему, и при запуске с ошибкой, меньшей той, что ты подобрал, чтоб все работало - будет беда. Это потому, что ты, саньбо, дурачок безмозглый. Не был бы ты дурачком - уже давно бы подобрал два кефа, выкинул идиотскую проверку "достигла ли ошибка 19 градусов" и похвастался бы результатом. А ты продолжаешь с гордостью расписывать, как криво у тебя получилось, и каким костылем ты это подпер, чтоб оно работало.
AR_Favorit вне форума  
Непрочитано 12.12.2017, 05:59  
AR_Favorit
Почётный гражданин KAZUS.RU
 
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
AR_Favorit на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от ALEGYR Посмотреть сообщение
Я и говорю, что твой профессиональный уровень, как кодера микроконтроллеров, это вывести на экран слова "Здравствуй Мир!" и раскрасить эти буквы в различные цвета! Чтобы для людей было красиво! Беда только в том, что к ПИД регулированию это не имеет никакого отношения! Даже если и приходится нагревать трехлитровый теплоизолированный бачок масла с полукилограммовым тэном.
Конечно, не имеет. Экранчики - это экранчики, а пид - это пид. Шесть строк, которые тебе, клоуну показаны - работают в реальном устройстве. А у тебя где реальное устройство?

Сообщение от ALEGYR Посмотреть сообщение
Я не забыл, что у тебя все в интах!
Если забыл, то забывчивый, а если не забыл, то идиот, раз предлагаешь поделить в интах 5 на 1000, а результат сохранить и где-то -там использовать. А скорее всего ты просто забывчивый идиот.

Сообщение от ALEGYR Посмотреть сообщение
Ведь ты используешь крутой контролер, а он боится флоатов как огня!
Он не боится. Просто я не такой дебил как ты, лепить флоаты туда, где их не надо. Потому у меня контроллер может между делом и буквы с пиктограммами нагрисовать на экране красиво.

Сообщение от ALEGYR Посмотреть сообщение
Мне вот так сильно не повезло с ардумной! Она, дура, спокойно делит и множит флоаты друг с другом, и не парится с лишними умножениями на кое-что, чтобы последующими операциями деления получить нечто!
Строго наоборот - это абдурине не повезло с тобой. Сколько длится цикл умножения во флоатах ты не знаешь, а лепишь их куда попало, про профилирование не в курсе, и занимается она у тебя ненужной работой не один такт из нескольких миллионов, как у меня, когда что-то-там на тыщу делится, а много, много тактов, которых у тебя и так в ней немного, и уже и расчет полиномиальной функции приходится сводить к идиотской портянке интов, оправдываясь - чтобы ардуине не пришлось много считать

Сообщение от ALEGYR Посмотреть сообщение
Я понимаю что ты свой дилетантизм компенсируешь крутизной применяемого контроллера! Беда только в том, что от этого ты не становишься ни умнее ни профессиональнее! Хорошо правда, что твои заказчики об этом не знают!
Мой "дилетантизм" позволяет мне реализовать аналогичное устройство и на более слабом контроллере типа меги, что я с успехом делал все те годы, когда эти контроллеры были дешевле других. Становлюсь я умнее и профессиональнее - тебе не определить, поскольку ты, ламер-дебил, на порядки ниже меня в данном деле. И это должно быть очень обидно, учитывая, что даже на этом форуме есть люди, на те же порядки меня в этом деле превосходящие. То есть ты позорное днище. А мои заказчики люди простые. Я им работающие как надо устройства, они мне деньги. А где заказчики на твои разработки, разработчик Саньбо?


Сообщение от ALEGYR Посмотреть сообщение
Милый, где ты в строке
if (integral_err‹(EE_PID_TIME*2000)) integral_err += PID_curr_err;

увидел мааааленький коэффициент?
Кретин, маааааленький коэффициент в другой строке. Для тебя, дебила, подсказка: там есть коэффициент, и есть деление на тысячу. Пипец ты упоротый

Сообщение от ALEGYR Посмотреть сообщение
Так я тебя вроде и не спрашивал где я могу ознакомиться с бачками с маслом! Я тебя просил озвучить значения СВОИХ правильных коэффициентов Kp Ki и Kd, на которые ты закладывался, когда писал СВОЙ код! Ты же ведь не хотел чтобы твой код вывел в разнос нагреваемый бачок с маслом, а значит должен был предвидеть правильные, с твоей точки зрения, коэффициенты!!!
Ты все-таки неисправимый кретин. А чем тебе помогут любые коэффициенты без параметров самой установки?

Ты начнешь опять выдумывать из своей больной головы, на какой секунде какое значение температуры измерено, и с действительностью это опять же не будет иметь ничего общего. Потому как там в отличие от твоего фена система "немного" не так прямолинейно реагирует. Я выше расписал, как это примерно выглядит.

Вот я и говорю тебе, олуху - хочешь видеть, как это работает - иди и смотри, что нормальные люди делают. Не хочешь идти - закрой мурло и обтекай.

Или, может, ты хочешь кефы для своего фена? Твоя система перед глазами, сам можешь подобрать, если не можешь - скажи, я напишу, при каких она будет работать. С нуля и до максимума. В интах. Только кинь еще раз полный график нагрева, а то хрен его найдешь в этих твоих помойных излияниях уже.

Сообщение от ALEGYR Посмотреть сообщение
нормальные специалисты о тебе могут плохо подумать, предположив что представленный тобой код не твой код, либо твой код это твой код, но он не имеет никакого отношения к ПИД регулятору нагрева бачка с маслом
Нормальные - они на то и нормальные, что
а) понимают, что "представленный код" гораздо быстрее просто написать с нуля, чем где-то нагуглить. Ибо там сраные шесть строк алгоритма и две выходного контроллера. Их школьник начинающий способен написать, прочитав какую-нить статью типа "пид для чайников", не говоря о человеке, у которого в дипломе "Автоматика и телемеханика" Только последнее днище с ардуиной и "дипломом" из кулинарного техникума станет это гуглить и копипастить.
б) прекрасно понимают ,что это пид регулятор, и что и как в нем работает, даже вон момент, который его стопорит углядели враз.
Ты за нормальных специалистов не распинайся, им такие детские вещи, которые я тебе растолковать пытаюсь - даже и неинтересны.

Последний раз редактировалось AR_Favorit; 12.12.2017 в 06:31.
AR_Favorit вне форума  
Непрочитано 12.12.2017, 06:12  
AR_Favorit
Почётный гражданин KAZUS.RU
 
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
AR_Favorit на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Отдельно вынесу образец эталонного дебилизма нашего тупенького "профессионала" саньбо:



Давайте посмотрим внимательно. ЕЕ_PID_TIME у нас период регулирования в секундах, от 1 до 10. То есть значение ЕЕ_PID_TIME*2000 ну никак не может оказаться больше 20000. Соответственно и integral_err как только достигнет этой величины - расти перестанет, раз и навсегда.

Но наш дурачок тем не менее насчитал, что значение интегральной ошибки - он, блеать, не поленился выделить это разноцветными буквами, клоун - в максимуме достигает....33000!
33000, Карл! То есть в самом удачном случае накопленная ошибка была 19999, и что-то мы к ней такое прибавили в качестве текущей ошибки, что стало 33000! То есть текущая ошибка была 13001! Мы, видать, не бачок с маслом греем, а реактор, блин!!!


Так вот, идиот Саньбо. 55*600 может и правда 33000, вот только ЕЕ_PID_TIME*2000 - заметно меньше этой величины.

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

а уж это -
Сообщение от ALEGYR Посмотреть сообщение
Ведь сумма интегральной ошибки integral_err имеет размерность ГРАДУСОВ, а ты в этом условии ГРАДУСЫ сравниваешь со временем EE_PID_TIME, то есть СЕКУНДАМИ!!!
опять пипец. Сколько этому дебилу объясняли, что нет там внутри алгоритма ни секунд, ни градусов, до этого остолопа всё равно не дошло. Дебил. Полный клинический дебил.

Сообщение от ALEGYR Посмотреть сообщение
Вот и получается что говноподельщик тут ты! А я просто хороший профессионал, который даже из говна может сделать конфетку!!!
Куличики ты из говна можешь только налепить, дятел тупорылый
Профессионал он
C портянками if-ов, накачанными из гугля говноскетчами для абдурины, и патологической неспособностью разобрать работу одной строчки кода

Это просто праздник какой-то

Последний раз редактировалось AR_Favorit; 12.12.2017 в 06:19.
AR_Favorit вне форума  
Непрочитано 12.12.2017, 06:48  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от AR_Favorit Посмотреть сообщение
Дурилка ты картонная, ну так зачем, зачем тебе включать ПИД строго на ошибке в 19 градусов? Если ьы включишь его на любой бОльшей ошибке, у тебя все равно ошибка, умноженная на кеф 30, даст 100% выходной мощности нагревателя! Зачем ты вводишь вот эту странную величину "ошибка, при которой начинает работать пид", которой нет ни в теории ПИД-регулятора, ни в грамотной реализации? Объяснение одно, и оно очень простое: ты просто не сумел настроить свой алгоритм на нормальную работу при любом возможном значении ошибки.
А вот тут-то ты и не угадал!
Вот именно от того что я, в отличие от тебя, знаю о чем говорю и что делаю, я имею то что хочу, а не то что тебе кажется!
Я спокойно включаю ПИД за 20 градусов до уставки, и плавненько вхожу на уставку (смотри белые квадратики на первой картинке РЕАЛЬНОЙ работы реального устройства!)
После этого я уверенно держу уставку в течение нескольких минут, с ошибкой не более 1-2 градусов, (Смотри белый вертикальный квадратик на другуой картинке РЕАЛЬНОЙ работы реального устройства!) и спокойненько прекращаю процесс пайки (или отпайки), оставляя работать только вентилятор для ускоренного охлаждения нагревателя фена до температуры 40 градусов, и выключаю вентилятор!

P.S.
А байка твоя про включение в розетку тэна и выключение из розетки тэна, с бурлящим маслом в бачке, мне понравилась! Особенно то место когда ты при отключенном из розетки тэне, включаешь свой ПИД-контроллер и начинаешь нагревать бачок горелкой, добиваясь удержания заданной температуры!
Миниатюры:
Нажмите на изображение для увеличения
Название: LOG4.JPG
Просмотров: 0
Размер:	310.8 Кб
ID:	122604   Нажмите на изображение для увеличения
Название: LOG5.JPG
Просмотров: 0
Размер:	315.4 Кб
ID:	122605  
ALEGYR вне форума  
Непрочитано 12.12.2017, 07:07  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

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

Последний раз редактировалось ALEGYR; 12.12.2017 в 07:10.
ALEGYR вне форума  
Непрочитано 12.12.2017, 07:37  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от AR_Favorit Посмотреть сообщение
Это потому, что ты, саньбо, дурачок безмозглый. Не был бы ты дурачком - уже давно бы подобрал два кефа, выкинул идиотскую проверку "достигла ли ошибка 19 градусов" и похвастался бы результатом. А ты продолжаешь с гордостью расписывать, как криво у тебя получилось, и каким костылем ты это подпер, чтоб оно работало.
Дурилка фанерная, я в своей жизни уже знал одного такого умника, который на паяльной станции ACHI IR-PRO-SC (cм кино) тоже решил настроить пид верхнего нагревателя без учета дифференциальной составляющей. После его такой настройки, все мужики в комнате боялись проходить мимо его рабочего места, когда он пользовался паяльной станцией. Он сильно ругался в этот момент, так как проходящий мимо человек, своим легким завихрением воздуха, сбивал ему термопрофиль! Когда мне это надоело, я просто перестроил пид станции по своему усмотрению, и все забыли о том что при работе со станцией лучше всем оставаться на своих местах и не шарахаться по комнате. Когда же до умника дошло что станция после моих настроек стала работать устойчиво, он просто перестал включать умного и не стал пользоваться станцией! Поняв что весь его инженерный профессионализм оказался дутым, и все об этом знали!

ALEGYR вне форума  
Непрочитано 12.12.2017, 08:20  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от AR_Favorit Посмотреть сообщение
Экранчики - это экранчики, а пид - это пид. Шесть строк, которые тебе, клоуну показаны - работают в реальном устройстве. А у тебя где реальное устройство?
Я бы поверил в это! Беда только в том, что ты не только не можешь это доказать чем либо реальным, ты даже не можешь УКАЗАТЬ какие в твоем коде ты использовал ПРАВИЛЬНЫЕ значения коэффициентов, когда проверял работу своей программы! Вот закавыка, так закавыка!!! Языком ты горазд работать, а вот когда дело доходит до конкретики, начинаешь очковать, понимая что есть реальный шанс обделаться принародно!

А я, в отличие от тебя, спокойно показываю протоколы своего реально работающего агрегата!!! И делать это могу сколь угодно раз! Я вот прямо сейчас сниму еще один протокольчик, и покажу тебе белыми кружочками как у меня отрабатывает дифференциальная соствляющяя, когда я ручкой прижимаю вентилятор фена на пару-тройку секунд, чтобы снизить подаваемый вентилятором поток воздуха. Типа случайные помехи вношу в процесс работы агрегата.
Миниатюры:
Нажмите на изображение для увеличения
Название: LOG6.JPG
Просмотров: 0
Размер:	316.2 Кб
ID:	122607  

Последний раз редактировалось ALEGYR; 12.12.2017 в 09:33.
ALEGYR вне форума  
Непрочитано 12.12.2017, 08:45  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от AR_Favorit Посмотреть сообщение
А чем тебе помогут любые коэффициенты без параметров самой установки?
Так они не мне помогут, а тебе!
Я просто возьму твои правильные циферки для параметров пида
EE_PID_P
EE_PID_I
EE_PID_D
EE_PID_TIME
и ручками проверю как они у тебя обсчитываются в ТВОЕМ коде!
Ведь входных параметров пида в твоем коде всего 4, а выходной только один! Да и тот не может превышать всего одну тысячу!
Тем более что я уже проводил эту процедуру со СВОИМИ значениями, но они тебе почему-то не понравились!
ALEGYR вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Wiznet W7100. Общие вопросы R_N Микроконтроллеры, АЦП, память и т.д 7 06.06.2012 00:33
PCAD - вопросы и ответы avr123-nm-ru Proteus, KiCAD и другие ECAD 7 27.01.2011 21:15
Система измерения температуры (на AD8495), вопросы по схеме и реализации spartakchamp Измерительное оборудование 2 15.11.2010 22:04


Часовой пояс GMT +4, время: 15:54.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot