датчик давления HP02S

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

Все здесь и слушают. Есть вопросы?
Реклама
Первый раз сказал Мяу!
Сообщения: 35
Зарегистрирован: Пн авг 29, 2011 10:52:08
Откуда: Новоуральск (Свердловская область))

Сообщение Макс электронщик »

Ну вот опять...
ГДЕ ВСЕ
Контактная информация:
Реклама
Родился
Сообщения: 3
Зарегистрирован: Вт дек 25, 2012 16:14:10
Откуда: Украина, Краматорск

Сообщение Hausauer »

Здравствуйте все! Тема конечно старая, но все же спрошу, может кто-то что-то подскажет.
Приобрёл давно датчик HP02S, но только сейчас решил его подключить. В даташите на него все замечательно расписано и поправки и формулы всё есть. Коэффициенты считываются с внутренней EEPROM с адреса 0х02 по 0х0В и они участвуют для расчета поправок. Все вроде бы хорошо, но в той же EEPROM датчика HP02S присутствуют еще другие коэффициенты (адрес EEPROM 0х10 по 0х21), которые используются для расчета поправок в датчике HP03SA. Поэтому сделав расчёт давлений двумя разными способами, получил почти тоже самое (второй способ был меньше на 1.9 гПа (1.4 мм.рт.ст.)). Сначала я подумал, что второй метод более точный так как использует более сложные формулы для расчета поправок да и самих коэффициентов больше, значит он более "правильный". Но положив модуль HP02S на руку, чтобы искусственно его подогреть обнаружил что давление рассчитанное по второму способу возросло относительно давления первого способа, а температура (рассчитанная по даташиту на HP03SA) стала падать. Поэтому возникают вопросы:
1) Можно ли в модуле HP02S использовать коэффициенты и формулы поправок из даташита на модуль HP03SA?
2) Как ведет себя рассчитанная температура при использовании модуля HP03SA (возрастает или падает)?
3) Как рассчитать температуру для модуля HP02S?

P.S. Все расчеты формул я провожу в Delphi, получая по I2C с датчика все необходимые данные, поэтому ошибок со сдвигом и знаком быть не может, так как не использую микроконтроллер для расчетов.
Вложения
HP03SA - barometer (not my).PDF
датчик HP03SA
(174.68 КБ) 544 скачивания
HP02S - barometer.PDF
датчик HP02S
(127.75 КБ) 450 скачиваний
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

1. Точно может ответить лишь изготовитель, но я думаю, что нельзя. Если-бы второй способ приводил к более точным результатам, его-бы и привели в ДШ на HP02S.
2. Рассчитанная температура для HP03S изменяется согласно реальной.
3. Данные с датчика температуры для HP02S предназначены только для температурной компенсации датчика давления. В ДШ отсутствуют сведения как на основании этих данных рассчитывать температуру сенсора. Поэтому, предполагая, что показания датчика температуры линейно зависят от темпратуры, можно определить оффсет и наклон характеристики сенсора экспериментально в 2-х точках, а заодно проверить его линейность замером в 3-х точках. Нужен Вам весь этот гемор? Возьмите лучше "нормальный" датчик, например BMP085.
Реклама
Эиком - электронные компоненты и радиодетали
Родился
Сообщения: 3
Зарегистрирован: Вт дек 25, 2012 16:14:10
Откуда: Украина, Краматорск

Сообщение Hausauer »

Ser60 писал(а):... Поэтому, предполагая, что показания датчика температуры линейно зависят от темпратуры, можно определить оффсет и наклон характеристики сенсора экспериментально в 2-х точках, а заодно проверить его линейность замером в 3-х точках. Нужен Вам весь этот гемор? ...
Ради интереса можно будет попробовать. С другой стороны если нужна точность измерения температуры, то на это есть более подходящие варианты.
Контактная информация:
Реклама
Pak
Родился
Сообщения: 2
Зарегистрирован: Чт янв 22, 2015 10:38:57
Откуда: Кременчуг

Сообщение Pak »

Добрый день. Собрал простейшую схему PIC18F458 и HP02S, немного переделал код от Леонид Иванович под себя. Но при чтении и вычисления давление у меня 957,7 hPa, что очень далеко от 755 мм.рт.ст. Грешил на возможные проблемы с компилятором, создал таблицу, куда внес все коэфициенты и значения АЦП. Результат совпал с вычислениями контроллера. Значения АЦП давления и температуры немного "плавают" +- пару единиц, т.е., вроде, сам датчик живой. Думал, что из EEPROM не то читаю, попробовал вычитать от 0 до 16 байта, все, кроме коэффициентов, забито 0xFF. Порядок байт (первый байт - старшая часть) учел.
На всякий случай мои коэффициенты:
D0 30509
T0 26607
P0 10192
S 182
C 283
Реклама
Родился
Сообщения: 3
Зарегистрирован: Вт дек 25, 2012 16:14:10
Откуда: Украина, Краматорск

Сообщение Hausauer »

Датчик выдает данные в гектопаскалях, что-бы перевести данные в мм.рт.ст необходимо hPa*75/100 (если быть точнее то умножить на 0.75006375541921).
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

... и добавить поправку на высоту Вашего места, т.к. датчик показывает давление на уровне моря.
Pak
Родился
Сообщения: 2
Зарегистрирован: Чт янв 22, 2015 10:38:57
Откуда: Кременчуг

Сообщение Pak »

Hausauer писал(а):Датчик выдает данные в гектопаскалях, что-бы перевести данные в мм.рт.ст необходимо hPa*75/100 (если быть точнее то умножить на 0.75006375541921).
Это понятно, но все равно маловато выходит, 712 мм.рт.ст. У сотрудника телефон со встроенным датчиком давления, на вчерашний день показывал 765 мм.рт.ст.
Ser60 писал(а):... и добавить поправку на высоту Вашего места, т.к. датчик показывает давление на уровне моря.
Можно поподробней, как вычислить эту поправку?
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

Найдите на google earth высоту вашего места и далее по формулам изменения дявления по разности высот. Но проще всего будет просто добавить к Вашему давлению разность показаний с эталонным барометром. А первым дело проверьте вручную все вычисления.
Потрогал лапой паяльник
Сообщения: 353
Зарегистрирован: Чт июл 24, 2014 00:25:25

Сообщение Igor3 »

Ser60 писал(а):и добавить поправку на высоту Вашего места, т.к. датчик показывает давление на уровне моря.
Как это ему удаётся, если даже Вам нужны какие-то гугле-земли и куча вычислений? :).
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

O, Боже мой, что я написал! :facepalm: :oops:
Конечно, датчик показывает абсолютное давление на той высоте, где он находится. Это веб-службы погоды, как правило, нормируют его на уровень моря. Спасибо, что заметили ляпсус
Родился
Сообщения: 1
Зарегистрирован: Пн янв 01, 2018 17:51:11

Сообщение artem7902 »

Знаю тема старенькая, но все же... Есть проблема с hp02s, с eeprom все читается, но считывание давления и температуры не робит. XCLR в высоком, жду сколько нужно, но при чтении возвращает FF80 как для температуры так и для давления.
Ответить

Вернуться в «Периферия»