ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
22 февраля
1496368 Топик полностью
Eddy_Em (06.02.2025 09:36, просмотров: 148) ответил bodis на Золотые слова! У некоторых вендоров можно посмотреть как само значение ошибки, так и ее интеграл. Для сброса интеграла в 0 приходится придумывать костыли разного рода. Например, кратковременный сброс в ручной режим и обратно в автоматический, ПИД начинает как-бы с нуля работать. Касательно, взаимотношений Ti и Ki, то когда-то попадался обзор реализации ПИДов в разных ПЛК и вендоров. Что запомнил, что у Сименса Ti - это время в минутах. У кого-то применяется прямое Ki ~ 1/Ti,
Зачем костылить? Заводишь массив, скажем, на 10 значений, и по кругу гоняешь: заполнил, все, теперь при добавлении нового, вставляешь его в "бегущую голову" вместо самого старого. Отдельно хранится сумма (чтобы каждый раз не пересчитывать), и из нее при добавлении нового удаляешь то самое старое, а вместо него прибавляешь новое. И не будет никаких косяков, которые некоторые вытворяют, суммируя с самого начала и "до конца времен". 

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

eddy-em.livejournal.com github.com/eddyem