Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить

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

Вс дек 18, 2011 19:41:53

Все здесь и слушают. Есть вопросы?

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

Чт дек 22, 2011 16:13:04

Ну вот опять...
ГДЕ ВСЕ

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

Вт дек 25, 2012 17:15:48

Здравствуйте все! Тема конечно старая, но все же спрошу, может кто-то что-то подскажет.
Приобрёл давно датчик 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 KiB) Скачиваний: 519
HP02S - barometer.PDF
датчик HP02S
(127.75 KiB) Скачиваний: 422

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

Вт дек 25, 2012 19:02:11

1. Точно может ответить лишь изготовитель, но я думаю, что нельзя. Если-бы второй способ приводил к более точным результатам, его-бы и привели в ДШ на HP02S.
2. Рассчитанная температура для HP03S изменяется согласно реальной.
3. Данные с датчика температуры для HP02S предназначены только для температурной компенсации датчика давления. В ДШ отсутствуют сведения как на основании этих данных рассчитывать температуру сенсора. Поэтому, предполагая, что показания датчика температуры линейно зависят от темпратуры, можно определить оффсет и наклон характеристики сенсора экспериментально в 2-х точках, а заодно проверить его линейность замером в 3-х точках. Нужен Вам весь этот гемор? Возьмите лучше "нормальный" датчик, например BMP085.

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

Вт дек 25, 2012 20:24:55

Ser60 писал(а):... Поэтому, предполагая, что показания датчика температуры линейно зависят от темпратуры, можно определить оффсет и наклон характеристики сенсора экспериментально в 2-х точках, а заодно проверить его линейность замером в 3-х точках. Нужен Вам весь этот гемор? ...

Ради интереса можно будет попробовать. С другой стороны если нужна точность измерения температуры, то на это есть более подходящие варианты.

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

Чт янв 22, 2015 11:36:10

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

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

Чт янв 22, 2015 19:14:54

Датчик выдает данные в гектопаскалях, что-бы перевести данные в мм.рт.ст необходимо hPa*75/100 (если быть точнее то умножить на 0.75006375541921).

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

Чт янв 22, 2015 20:20:15

... и добавить поправку на высоту Вашего места, т.к. датчик показывает давление на уровне моря.

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

Пт янв 23, 2015 08:26:53

Hausauer писал(а):Датчик выдает данные в гектопаскалях, что-бы перевести данные в мм.рт.ст необходимо hPa*75/100 (если быть точнее то умножить на 0.75006375541921).
Это понятно, но все равно маловато выходит, 712 мм.рт.ст. У сотрудника телефон со встроенным датчиком давления, на вчерашний день показывал 765 мм.рт.ст.

Ser60 писал(а):... и добавить поправку на высоту Вашего места, т.к. датчик показывает давление на уровне моря.
Можно поподробней, как вычислить эту поправку?

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

Пт янв 23, 2015 09:31:28

Найдите на google earth высоту вашего места и далее по формулам изменения дявления по разности высот. Но проще всего будет просто добавить к Вашему давлению разность показаний с эталонным барометром. А первым дело проверьте вручную все вычисления.

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

Вт фев 10, 2015 13:09:59

Ser60 писал(а):и добавить поправку на высоту Вашего места, т.к. датчик показывает давление на уровне моря.

Как это ему удаётся, если даже Вам нужны какие-то гугле-земли и куча вычислений? :).

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

Ср фев 11, 2015 01:22:24

O, Боже мой, что я написал! :facepalm: :oops:
Конечно, датчик показывает абсолютное давление на той высоте, где он находится. Это веб-службы погоды, как правило, нормируют его на уровень моря. Спасибо, что заметили ляпсус

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

Пн янв 01, 2018 17:56:55

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