Отвлекитесь, эмбеддеры! Отвлеченные темы - обсудить проблемы тепловой смерти вселенной, или просто пиво. Этот раздел - для отдыха. |
20.11.2017, 12:38
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.02.2011
Адрес: Жуковский, МО
Сообщений: 3,268
Сказал спасибо: 3,575
Сказали Спасибо 7,509 раз(а) в 1,580 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
заодно и я почерпну чёнить новенькое о ПИД регуляторах
__________________
ничего нет сложнее простого решения
без ТЗ результат ХЗ.
|
|
|
Сказали "Спасибо" rafik65
|
|
|
20.11.2017, 13:48
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от stalkernet
|
Говорю прямо хоть потом и писал софт но расчет коэффициентов мне не дался.
|
Да это нормально.
Главное понять, что величина коэффициентов - это баланс между скоростью реакции и точностью регулирования.
Попытаюсь вывести ТС из тупика...
Сообщение от ALEGYR
|
сравниваешь ГРАДУСЫ с мили или микро СЕКУНДАМИ !!!
|
Сообщение от ALEGYR
|
В этой строке ты суммируешь значение ошибки рассогласования PID_curr_err!
по строке
PID_curr_err = EE_FUEL_TARGET_TEMP - temp;
в которой из значения ТЕМПЕРАТУРЫ уставки EE_FUEL_TARGET_TEMP вычитается значение текущей ТЕМПЕРАТУРЫ temp!!! И то и то никакая не абстракция, а вполне реальные физические величины, которые измеряются в ГРАДУСАХ!!! А значит и их разность PID_curr_err тоже измеряется в ГРАДУСАХ! А если PID_curr_err измеряется в ГРАДУСАХ, то и сумма PID_curr_err будет измерятся в ГРАДУСАХ!
То есть, значение интегральной составляющей integral_err ТВОЕГО якобы PIDa имеет размерность ГРАДУСЫ!!! И ты оператором условия
if (integral_err‹(EE_PID_TIME*2000))
сравниваешь ГРАДУСЫ с мили или микро СЕКУНДАМИ !!!
|
Ну если так сложно абстрагироваться от градусов (которых? ), то пусть будут градусы.
Попробуй вспомнить, по какому параметру происходит интегрирование/дифференцирование градусов. Может быть это поможет понять, что мили/микросекунды тоже играют не последнюю роль.
Тебя же не смущает, что подача джоулей осуществляется в миллисекундах?
ЗЫ
Тему надо переименовать хотя бы в "Мои ответы на незаданные вопросы AR_Favorit"
|
|
|
|
20.11.2017, 14:34
|
|
Почётный гражданин KAZUS.RU
Регистрация: 02.07.2009
Сообщений: 1,110
Сказал спасибо: 1,246
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Да все еще проще. Главное привести все к единому знаменателю. время в секундах. воздействие в процентах. а с ацп еще проще - никуя пересчитывать не надо. уставка всеравно задается целым числом. с ацп тоже целое выходит. вот и с ними работать. и никаких флоатов и инт16. Ворда хватит за глаза 2 БАЙТА всего. хотя да тотже инт16 выходит. уставка от 0 до 1024 для 10 бит. с ацп теже 0 -1024. что еще проще? а на эран и прочее уже пересчет.
Сам я потом для теплотехники сделал адаптивный алгоритм на основе экстраполяционных функций. достаточно успешно применял. даже в свою бывшую контору продал.
|
|
|
Сказали "Спасибо" stalkernet
|
|
|
20.11.2017, 14:44
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от stalkernet
|
2 БАЙТА всего. хотя да тотже инт16 выходит.
|
В том и цимус - инт16*инт16=инт32)))
|
|
|
|
20.11.2017, 15:15
|
|
Почётный гражданин KAZUS.RU
Регистрация: 14.03.2009
Сообщений: 1,601
Сказал спасибо: 1,069
Сказали Спасибо 1,560 раз(а) в 857 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Есть такая печаль: люди вцелом неглупые, имеющие связность мышления разочарованы в результатах работы специалистов и начинают копаться в "консерватории". Частенько доходят до абсурда и выглядят глупо. Только у меня ощущение, что это какая-то новая болезнь "широких специалистов"?
Поясню, есть у меня один из важнейших заказчиков, довольно много что умеет, принуждает меня вникать в (его глазах) новые сверхъединичные процессы, а потом дает ссылку на али с демобордом Альтеры Циклон 3. Говорю, что классно, дешево, но зачем? А он мне - да она же покроет по мощности все наши ближайшие проекты. Я заглотил все француские артикли. Вежливо дал ссылки на популярное объяснение цифровых автоматов, немного про адекватность и даже про заказные СБИС. Насколько мог популярно. А он мне говорит, хорошо, я тут еще чиню светильничек, никак не могу разобраться ( а там конденсаторный блок питания и сдох стабилитрон) и долго рассказывает, что вольтметр дает на "диоде" (тот самый стабилитрон) 2 или что-то там вольта. Что можно сказать при возрасте под 50? Ведь лучше уже не будет.
ALEGYR, бростьте Вы это! Вы отлично разбираетесь в других вещах, зачем Вам эта клоунада?
Последний раз редактировалось laser532; 20.11.2017 в 15:53.
|
|
|
|
20.11.2017, 15:37
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.02.2005
Адрес: Минск, Беларусь
Сообщений: 7,745
Сказал спасибо: 2,659
Сказали Спасибо 2,626 раз(а) в 1,942 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от stalkernet
|
Недостаток пида в том что его можно настроить на одно конкретное условие, ну и приблеженное к нему.
|
Я бы сказал - не "условие", а "объект регулирования".
Со своей (-ими) постоянной (-ыми) времени.
Ну а если параметры объекта не статичны, а могут изменяться - либо подстраивать константы ПИДа, либо искать компромисс- по скорости и точности регулирования (имею в виду в том числе и выбросы на переходной характеристике). А то можно и в возбуд свалиться.
Лет 10 или больше тому назад попал мне в руки небольшой моторчик Mitsubishi (кажется, с магнитами в якоре) со встроенным ПИД регулятором. В нем можно было включить режим автонастройки этого регулятора.
Он жестко удерживал положение как голого вала, так и с прикрученной плоской болванкой килограммов в 5.
Последний раз редактировалось Yuri222; 20.11.2017 в 15:58.
|
|
|
Сказали "Спасибо" Yuri222
|
|
|
20.11.2017, 17:02
|
|
Почётный гражданин KAZUS.RU
Регистрация: 02.07.2009
Сообщений: 1,110
Сказал спасибо: 1,246
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Yuri222, Я же в начале сказал что занимался теплотехникой. механический пид для меня можно сказать мало изучен.
А так включается печь и идет прогон. на котором настраивается на холостой режим. дальше загрузка по тех процессу и подстраивается.
Сообщение от Yuri222
|
Со своей (-ими) постоянной (-ыми) времени.
Ну а если параметры объекта не статичны, а могут изменяться - либо подстраивать константы ПИДа, либо искать компромисс- по скорости и точности регулирования
|
а вот тут абсолютно на 1000% согласен. Только иногда очень тяжело бывает их подобрать.
В качестве примера. делали хлебопекарни, мини, 150 буханок на загрузку. настроили подобрали - хлеб просто песня. белай пушистый, сверху корка не зажарена. через 2 недели звонят - пиз...ц. приежайте. Приежаю хлеб глевкий. корка сверху почти черная. ну настроили. через неделю опять. В итоге оказалось сэкономили на муке - болеее дешевую взяли. потом решили еще и на весе экономить. вдобавок и на электроэнергии - больше загрузку начали. в растойке не додерживали. Естесно не допек - подняли температуру. ну а в 90 все помнят как электросеть болтало. Вобщем куча фактороы на которых пид пошел резко и нервно курить лесом. В итоге пришлось капитально загрублять для получения приемлемого результата. чем каждую неделю кататся - настраивать под разное сырье. А это ктати должность штатного технолога. на котором экономили. типа пекарь пусть разбирается. А то что он в этом не в зуб ногой - пох...й...
|
|
|
|
20.11.2017, 17:20
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.02.2005
Адрес: Минск, Беларусь
Сообщений: 7,745
Сказал спасибо: 2,659
Сказали Спасибо 2,626 раз(а) в 1,942 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от stalkernet
|
занимался теплотехникой. механический пид для меня можно сказать мало изучен.
|
Думаю, математический аппарат одинаковый.
Сообщение от stalkernet
|
делали хлебопекарни...настроили подобрали - хлеб просто песня. белай пушистый, сверху корка не зажарена
|
Ну все, слюна потекла, пойду обедать.
|
|
|
|
20.11.2017, 18:30
|
|
Вид на жительство
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от AR_Favorit
|
Процитированный участок кода вызывается в прерывании по таймеру Systick, возникающему раз в миллисекунду. "Рассматривающему" это понять проблемно, но данный участок кода выдран из программы реального устройства, в которой помимо данного кусочка еще довольно много строк, оформленных в виде конечных автоматов, вызываемых раз в миллисекунду в основном цикле по флагу, устанавливаемому в этом прерывании.
|
Ну почему проблематично?
Я же написал
Сообщение от ALEGYR
|
Пусть цикл таймера у нас составляет 1 миллисекунду. То есть прерывание по таймеру у нас происходит 1000 раз в секунду
|
Для меня проблематично понять другое - Почему прерывание по этому таймеру ( то есть по таймеру Systick) ты взял именно 1 миллисекунду, а не 10,100, или даже 1000 миллисекунд? Неужели этот таймер имеет разрядность только 1 бит?
Сообщение от AR_Favorit
|
Только, как автор "рассматриваемого" отрывка кода, сразу замечу, чтоб форумчане не были введены в заблуждение нашим "разработчиком", что в данном участке кода все переменные, за исключением тех, имя которых начинается с префикса "ЕЕ_" - имеют размерность int_32, а эти самые "ЕЕ_" - размерность int_16, и все величины в расчетах (включая весовые коэффициенты PID) смасштабированы в бОльшую сторону на один или несколько десятичных порядков, чтобы избежать потерь точности из-за отсутствия "дробных частей".
|
Спасибо за уточнение!
|
|
|
|
20.11.2017, 18:44
|
|
Вид на жительство
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
|
Re: Мои ответы на вопросы [b]AR_Favorit[/b]
Сообщение от omercury
|
Ну если так сложно абстрагироваться от градусов (которых? ), то пусть будут градусы.
Попробуй вспомнить, по какому параметру происходит интегрирование/дифференцирование градусов. Может быть это поможет понять, что мили/микросекунды тоже играют не последнюю роль.
|
А меня и не смущает, что интегрирование и дифференцирование составляющих ПИД происходит по времени.
Меня смущает другое - Почему, если мы производим нагрев бачка с маслом, мы должны оценивать нагрев бачка не в градусах, а в абстрактных попугаях или джоулях?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 10:45.
|
|