Показать сообщение отдельно
Старый 08.08.2016, 15:53   #7
Gromov
Уволен из Сегнетикс
 
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Усредняющий фильтр аналогового сигнала

Цитата:
Сообщение от av242736 Посмотреть сообщение
Спасибо за более подробное объяснение!
Все равно до конца никак не въеду. Получается, что блок "ADD" пока не сложит все свои входные значения, то не выдаст общую сумму? То есть блок будет как бы накапливать (аккумулировать) входные значения в течении 10 секунд, пока все его входные переменные не получат свои значения, и только тогда выдаст общую сумму и блок "DIV" поделит ее на 10 ?
Не. Дело в том, что на выходе блока задержки - нули, до тех пор, пока он не выдаст на каждый выход переменную со входа. Пусть будет 25.
в первом цикле программы - блок задержки имеет все нули, соответственно, блок add складывает 10 нулей. Блок div делит 10 нулей на 10, на выходе - ноль.

Затем, после прошествия задержки dt - подаётся переменная на 1 выход блока delay. теперь блок add складывает 25 и 9 нулей. div поделит и получит 2.5.

И так далее, по времени dt будет добавлять ещё по 25 на выход..

А вообще - вам бы на реальном контроллере потрогать это дело. Сразу вопросы снимутся.


__________________
В сегнетиксе не работаю с самого начала 2019 года.
Gromov вне форума   Ответить с цитированием