Получение фактического значения из импульсного сигнала, дискретного сигнала и непрерывного сигнала - PullRequest
2 голосов
/ 09 июля 2019

У меня два вопроса, первый вопрос о импульсном сигнале. У меня 0–1 импульсный сигнал с постоянной длительностью импульса около 19 мс от специальной системы измерения топлива. Разрывы между импульсами различны и зависят от текущего расхода топлива. Один импульс составляет 0,01 л. На основе частоты импульсов и разрывов между ними он хочет рассчитать сгорание топлива, например, в окне, которое имеет 10 секунд.

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

Второй вопрос - как перейти от дискретного сигнала к непрерывному. Я знаю, что существуют алгоритмы, подобные zoh, но я не знаю, как я могу это реализовать. У кого-нибудь есть другие идеи?

У меня импульсный сигнал от системы измерения топлива и дискретный сигнал оборотов от OBD, но мне нужно преобразовать этот сигнал в непрерывный.

1 Ответ

1 голос
/ 09 июля 2019

Просто посчитайте количество импульсов за последние 10 секунд.

Используя структуру данных очереди, вы можете добавить новое импульсное событие в головку и проверить, находится ли хвостовой элемент во временном диапазоне, удаляя слишком старые.Размер очереди соответствует расходу топлива (с коэффициентом 0.01 liter/10 seconds).

...