реклама на сайте
подробности

 
 
> Определение фактов заправок по датчику уровня топлива, Определение фактов заправок
KillJoy
сообщение Nov 17 2015, 13:50
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 3-08-09
Пользователь №: 51 716



Есть сигнал с датчика уровня топлива в баке. Нужно определить все факты заправок. ( выделены зеленым на графике ). Я пробовал использовать метод скользящего среднего для сглаживания данных и интерполяцию кубическими сплайнами, но при этом пики (факты заправок) смещаются вправо. Задача в следующем - нужно игнорировать маленькие всплески (<30 литров) и при этом определять большие всплески (>30 литров).


Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
MrYuran
сообщение Nov 18 2015, 09:17
Сообщение #2


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Обычно наоборот, скачки вниз ловят sm.gif


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
Santik
сообщение Nov 18 2015, 11:02
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 87
Регистрация: 30-03-12
Из: Мирный (Якутия)
Пользователь №: 71 096



Цитата(MrYuran @ Nov 18 2015, 12:17) *
Обычно наоборот, скачки вниз ловят sm.gif

Ну для этого отрицательные значения dV/dt просто надо умножить на 10 :-)
И вообще, если иметь профиль высот по трассе,то, вероятно, по изменению расхода топлива возможно определить где в какой момент машина находилась.
Хотя для этих целей проще наравне с датчиком уровня топлива записывать датчик уклона.

Сообщение отредактировал Santik - Nov 18 2015, 11:07
Go to the top of the page
 
+Quote Post
MSP430F
сообщение Nov 18 2015, 17:02
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 85
Регистрация: 20-05-13
Пользователь №: 76 911



Судя по приведенному Вами графику, логика определения факта заправки совершенно прозрачна. Применение какого-либо сложного цифрового фильтра мне не кажется целесообразным. Логики if ((X[i] - X[i - 1]) > 30 ) вполне достаточно. Вот только мне непонятен выброс на Вашем рисунке левее первой заправки. Его надо отфильтровать. Надо бы разобраться с природой его возникновения. Что-то мне подсказывает, что он - это скорее помеха или какой-то глюк датчика уровня. Или, допустим, это резкое движение кузова вверх-вниз на лежачем полицейском или на яме на дороге. Тогда не проще ли делать измерения чаще, например раз в 10 секунд, а затем просто усреднить серию измерений за 1-5 минут. Тогда факт заправки можно будет определить с точность 1-5 минут. Вам же не нужна точность до 1 секунды ? wink.gif
При этом проверять скачок на 30 литров надо будет усредненные значения, не соседние, а отстоящие друг от друга на 1 период усреднения, чтобы избежать попадания на саму заправку.

Сообщение отредактировал MSP430F - Nov 18 2015, 17:14
Go to the top of the page
 
+Quote Post
KillJoy
сообщение Nov 19 2015, 20:56
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 3-08-09
Пользователь №: 51 716



Цитата(MSP430F @ Nov 18 2015, 20:02) *
Судя по приведенному Вами графику, логика определения факта заправки совершенно прозрачна. Применение какого-либо сложного цифрового фильтра мне не кажется целесообразным. Логики if ((X[i] - X[i - 1]) > 30 ) вполне достаточно. Вот только мне непонятен выброс на Вашем рисунке левее первой заправки. Его надо отфильтровать. Надо бы разобраться с природой его возникновения. Что-то мне подсказывает, что он - это скорее помеха или какой-то глюк датчика уровня. Или, допустим, это резкое движение кузова вверх-вниз на лежачем полицейском или на яме на дороге. Тогда не проще ли делать измерения чаще, например раз в 10 секунд, а затем просто усреднить серию измерений за 1-5 минут. Тогда факт заправки можно будет определить с точность 1-5 минут. Вам же не нужна точность до 1 секунды ? wink.gif
При этом проверять скачок на 30 литров надо будет усредненные значения, не соседние, а отстоящие друг от друга на 1 период усреднения, чтобы избежать попадания на саму заправку.

Данные с датчика снимаются раз в 5 минут. На приведенном выше графике данные за 5 суток. Вот еще пример данных за 1 сутки.

Сообщение отредактировал KillJoy - Nov 19 2015, 20:57
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 04:50
Рейтинг@Mail.ru


Страница сгенерированна за 0.01387 секунд с 7
ELECTRONIX ©2004-2016