FLProg
Вход на сайт
Логин:
Пароль:
Поиск
...
Статистика
Понедельник, 11.12.2017, 12:27
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 212»
Модератор форума: support, Сергей, Олег, Anydy 
Форум » Основной » Спросить у знатоков » Измерение давления во времени BMP280
Измерение давления во времени BMP280
anabolik Дата: Среда, 29.11.2017, 13:04 | Сообщение # 1
Рядовой
Группа: Проверенные
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
Ребята подскажите как реализовать следующее: Имеется барометр БМП280, нужно чтобы он не только показывал данные в реальном времени, но и анализировал показания в течении например 2 - 3 и допустим выводил некое среднее значение показаний за это время.
Заранее спасибо)
 
Airis Дата: Среда, 29.11.2017, 15:45 | Сообщение # 2
Майор
Группа: Проверенные
Сообщений: 175
Награды: 4
Репутация: 13
Статус: Offline
Циклически загоняйте данные о давлении в массив а дальше, а дальше уже с массива можно вычислить средняя значение, минимальное, максимальное и кучу всего на что способна математика.

Добавлено (29.11.2017, 15:45)
---------------------------------------------
Тут даже лучше использовать не просто массив а стек.

 
pan Дата: Среда, 29.11.2017, 15:48 | Сообщение # 3
Генерал-полковник
Группа: Проверенные
Сообщений: 1226
Награды: 41
Репутация: 38
Статус: Offline
в блоках пользователей есть блок усреднения
 
Nikan Дата: Среда, 29.11.2017, 16:33 | Сообщение # 4
Генерал-майор
Группа: Проверенные
Сообщений: 462
Награды: 13
Репутация: 11
Статус: Offline
Цитата anabolik ()
Имеется барометр БМП280, нужно чтобы он не только показывал данные в реальном времени, но и анализировал показания в течении например 2 - 3 и допустим выводил некое среднее значение показаний за это время
Посмотрел даташит на этот барометр,
сам он это сделать точно не сможет((
придется его  к МК привязать... и прогу сделать...
например сохраняем как уже выше сказано, в массив - показание датчика/метка времени 
потом с этим можно все что угодно - среднее, мин/мах, график и.т.д

ЗЫ
Ребята давайте правильно ставить задачу и вопросы, тогда половина их сразу отпадет...
 
anabolik Дата: Среда, 29.11.2017, 20:38 | Сообщение # 5
Рядовой
Группа: Проверенные
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
Цитата Airis ()
Циклически загоняйте данные о давлении в массив а дальше, а дальше уже с массива можно вычислить средняя значение, минимальное, максимальное и кучу всего на что способна математика.
Я так понимаю, надо сделать следующее: Создаю массив на 60 значений, на дату его кидаю значение датчика давления, на save делаю допустим генератор симметричный который раз в секунду будет давать импульс на запись, потом беру массив сложения снимаю с него данные делю их на 60 и получаю среднее значение ?
 
pan Дата: Среда, 29.11.2017, 20:45 | Сообщение # 6
Генерал-полковник
Группа: Проверенные
Сообщений: 1226
Награды: 41
Репутация: 38
Статус: Offline
метка времени не понятно зачем нужна.
 60 значений думаю слишком много.
и лучше не массив а стек.
периодически делите сумму значений стека на его размер(количество записей) вот и все. "среднее" некуда.
 
Airis Дата: Среда, 29.11.2017, 20:52 | Сообщение # 7
Майор
Группа: Проверенные
Сообщений: 175
Награды: 4
Репутация: 13
Статус: Offline
Цитата anabolik ()
Создаю массив на 60 значений,

Тут лучше использовать не просто массив а стек. В стек циклически пишется новые данные а стрые автоматически стирается. Но при большем размере массива (стека) надо подумать об автоматическом заполнении всего массива, при подаче питание, иначе, пока весь массив незаполнится до конца, результаты вычисление над данными массива будет очень далеки от реальных.
 
anabolik Дата: Среда, 29.11.2017, 21:30 | Сообщение # 8
Рядовой
Группа: Проверенные
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
Цитата pan ()
периодически делите сумму значений стека на его размер(количество записей) вот и все. "среднее" некуда.
А значения то чем вынимать суммой массива сразу или выдергивать значение по одному используя получение элемента массива?
может кто скинет образец схемы?

Добавлено (29.11.2017, 21:30)
---------------------------------------------
А потом 60 слишком много говорите, а если мне нужно допустим среднее значение за 3 -4 часа?

 
pan Дата: Среда, 29.11.2017, 21:40 | Сообщение # 9
Генерал-полковник
Группа: Проверенные
Сообщений: 1226
Награды: 41
Репутация: 38
Статус: Offline
да, берете сумму массива и делите.

Цитата anabolik ()
нужно допустим среднее значение за 3 -4 часа?
 я думал просто нужно усреднение чтоб не скакали значения.
 ну делайте 60
 
Airis Дата: Среда, 29.11.2017, 21:41 | Сообщение # 10
Майор
Группа: Проверенные
Сообщений: 175
Награды: 4
Репутация: 13
Статус: Offline
Нет 60 не слишком много. Надо только сделать так, чтобы при подаче питание быстро заполнились все ячейки массива, а уже потом их можно заполнять на нужной скорости.
 
anabolik Дата: Среда, 29.11.2017, 21:46 | Сообщение # 11
Рядовой
Группа: Проверенные
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
От ответов еще больше возникает вопросов)) а как то делается что-бы сумма массива вынималась не сразу а раз в какое-то время?
 
pan Дата: Среда, 29.11.2017, 21:53 | Сообщение # 12
Генерал-полковник
Группа: Проверенные
Сообщений: 1226
Награды: 41
Репутация: 38
Статус: Offline
вроде по русски написано

Добавлено (29.11.2017, 21:52)
---------------------------------------------
а, наоборот надо..

Добавлено (29.11.2017, 21:53)
---------------------------------------------
поставьте блок суммы на отдельную плату и выполняйте её по условию когда нужно

 
anabolik Дата: Среда, 29.11.2017, 22:06 | Сообщение # 13
Рядовой
Группа: Проверенные
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
Опишу задачу подробнее может я не так все и делаю). Я делаю метеостанцию для катера. Хочу сделать предупредитель шторма. Т.е условно если в течении 3 - 4 часов резко падает давление на 2-3 мм ртутного столба то срабатывало бы предупреждение.
 
pan Дата: Среда, 29.11.2017, 22:14 | Сообщение # 14
Генерал-полковник
Группа: Проверенные
Сообщений: 1226
Награды: 41
Репутация: 38
Статус: Offline
опишу как я это представляю.
на примере 1 часа.
запись в стек каждую минуту. (60 записей)
нужно узнать как изменилось давление за последние пол часа.
значит берем из стека давление с индексом 60 (последнее значение) и сравниваем его с давлением с индексом 30 (30 минут назад)
и смотрим разницу
 
Airis Дата: Среда, 29.11.2017, 22:20 | Сообщение # 15
Майор
Группа: Проверенные
Сообщений: 175
Награды: 4
Репутация: 13
Статус: Offline
Вариантов как сделать такую схему много.
Вот один такой:

Тут при подачи напряжение за кароткое время заплняется весь масссив текушим значением давление, а дальше работает с нормальной скорости заполнение. Хотя для атмосферного давление можно просто весь массив заполнить константой нормального давление, а дальше уже заполнять стек новыми данными.
Прикрепления: 0135535.png(6Kb)


Сообщение отредактировал Airis - Среда, 29.11.2017, 22:21
 
Форум » Основной » Спросить у знатоков » Измерение давления во времени BMP280
Страница 1 из 212»
Поиск:

FLProg © 2017
Яндекс.Метрика