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

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

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

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

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

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

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

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

Сообщение от stalkernet Посмотреть сообщение
Мдя опять за за свое. У вас обоих черте что написано. у одного интегратор. у другого интервал воздействия. и ни у одного второй ступени регулятора - корректора мощности в котором попугаи пида пересчитываются в реальное воздействие
Ну почему?
У AR_Favorit, есть некое ШИМ управление нагревателем. Вот он и преобразует свои попугаи пида (команду под названием control) в реальное воздействие HEAT_ON или HEAT_OFF по свистку heat_counter

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

Сообщение от avp94 Посмотреть сообщение
Стесняюсь, но спрошу:
Это алгоритм чего?
А то можно и короче:
- измерили
- вычислили
- порегулировали

ALEGYR отдыхает.
Да ладно. Человек хоть понимает (не мне судить, хорошо или плохо) о чем пишет.

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

Сообщение от ALEGYR Посмотреть сообщение
AR_Favorit, есть некое ШИМ управление нагревателем. Вот он и преобразует свои попугаи пида (команду под названием control) в реальное воздействие HEAT_ON или HEAT_OFF по свистку heat_counter
То есть преобразует некоторую цифру в логику выключателя ВКЛ-ВЫКЛ
Это ффсё. ШИМ-управление таки есть, но все равно это "логика вкл-выкл".

Не, ну а что. ВКЛ есть? Есть. ВЫКЛ есть? Есть. Значит это ВКЛ-ВЫКЛ!

Забавно так получается.
Если я настрою таймер на выдачу ШИМ и будет он у меня делать эти ВКЛ и ВЫКЛ, ориентируясь по двум своим внутренним регистрам, один из которых счетчик миллисекунд, а в другом значение Control, сравнивая с которым счетчик, таймер будет включать или выключать выходной сигнал - ПИД-алгоритм будет работать.

А если это будет делать не узел "таймер", а узел "CPU", ориентируясь на те же две переенные и полностью по той же логике - алгоритм ПИД работать вдруг перестает!!!
AR_Favorit вне форума  
Непрочитано 22.11.2017, 23:13  
stalkernet
Почётный гражданин KAZUS.RU
 
Регистрация: 02.07.2009
Сообщений: 1,119
Сказал спасибо: 1,248
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
stalkernet на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от ALEGYR Посмотреть сообщение
control -= (PID_prev_err - PID_curr_err)*(int32_t)EE_PID_D;
а это как понимать. тамже должно быть +=

Сообщение от ALEGYR Посмотреть сообщение
if (integral_err‹(EE_PID_TIME*2000)) integral_err += PID_curr_err
или это как понимать???
тоесть пока накоплненная ошибка в градусах меньше двойного времени в секундах то мы накапливаем интегратор. както интересно сравнивать градусы с секундами.

Далее еще интереснее - когдаже всетаки интегратор будет реагировать на перерегулирования. а получается НИКОГДА потому что как только перестанет выполнятся условие (integral_err‹(EE_PID_TIME*2000)) прибавлятся к нему НИЧЕГО не будет.
stalkernet вне форума  
Непрочитано 22.11.2017, 23:21  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от AR_Favorit Посмотреть сообщение
Включили. Температура 25, уставка 190, ошибка 165, умножаем на 30 - пропорциональная компонента дает вклад в выходной сигнал аж 4950.
У меня пид включится только со 145 градусов и первое умножение, которое он сделает, будет 20х30! Где 20 это ошибка рассогласования.
ALEGYR вне форума  
Непрочитано 22.11.2017, 23:21  
AR_Favorit
Почётный гражданин KAZUS.RU
 
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
AR_Favorit на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от stalkernet Посмотреть сообщение
а это как понимать. тамже должно быть +=
Ну не огорчайте меня. Просто обратите внимание на написанное за знаком "=". Там еще должно быть, что из текущей ошибки вычитается предыдущая. Но они поменяны местами, потому и знак изменен.
Записи
control -= (PID_prev_err - PID_curr_err)*(int32_t)EE_PID_D;
и
control += (PID_curr_err - PID_prev_err)*(int32_t)EE_PID_D;
абсолютно тождественны.

Сообщение от stalkernet Посмотреть сообщение
или это как понимать???
тоесть пока накоплненная ошибка в градусах меньше двойного времени в секундах то мы накапливаем интегратор. както интересно сравнивать градусы с секундами.
Если бы переменная EE_PID_TIME называлась EE_BIG_ASS, мы бы сравнивали градусы с жопами?
Нет там внутри ПИД-алгоритма ни градусов, ни секунд. Это просто безразмерные значения, вы сами об этом упоминали.

Сообщение от stalkernet Посмотреть сообщение
Далее еще интереснее - когдаже всетаки интегратор будет реагировать на перерегулирования. а получается НИКОГДА потому что как только перестанет выполнятся условие (integral_err‹(EE_PID_TIME*2000)) прибавлятся к нему НИЧЕГО не будет.
Не будет, верно подмечено. Вы тут первый, кто это заметил))

Рассказывать, зачем оно так - не буду, только замечу, что это имеет непосредственную связь с тоже, наверное, непонятным делением на 1000 интегральной компоненты))) Но скажем так, с точки зрения рассмотрения отвлеченного PID-алгоритма не в контексте некоторых программных хитростей в другом коде, это косяк)

Последний раз редактировалось AR_Favorit; 22.11.2017 в 23:36.
AR_Favorit вне форума  
Непрочитано 22.11.2017, 23:29  
stalkernet
Почётный гражданин KAZUS.RU
 
Регистрация: 02.07.2009
Сообщений: 1,119
Сказал спасибо: 1,248
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
stalkernet на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

AR_Favorit, звыняюсь без вопросов. недоглядел. темболее си давно в руки не брал (лет 7 ). все на паскале реализую.

Что по другим вопросам?

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

Сообщение от stalkernet Посмотреть сообщение
AR_Favorit
Что по другим вопросам?
Дополнил тот пост
AR_Favorit вне форума  
Непрочитано 22.11.2017, 23:38  
stalkernet
Почётный гражданин KAZUS.RU
 
Регистрация: 02.07.2009
Сообщений: 1,119
Сказал спасибо: 1,248
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
stalkernet на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

очень хорошо и доступно расписано. рекомендую почитать. раз уж Сокольников не курится.
Во всяком случае на тему размерностей. интов и флоатов тоже.

https://habrahabr.ru/post/145991/
stalkernet вне форума  
Непрочитано 22.11.2017, 23:46  
AR_Favorit
Почётный гражданин KAZUS.RU
 
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
AR_Favorit на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от ALEGYR Посмотреть сообщение
У меня пид включится только со 145 градусов и первое умножение, которое он сделает, будет 20х30! Где 20 это ошибка рассогласования.
Это ты про пропорциональную компоненту, а мы об интегральной. Я понимаю, что тебе трудно отличить эти слова, но ты уж постарайся.

ЗЫ на твоем графике пид включался не со 145 градусов, а со 172,5.
Но все равно он при этом с двух итераций забивал интегральную компоненту (17,5*9)
AR_Favorit вне форума  
 

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

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

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, время: 10:26.


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