Прошу помощи с датчиком SHT15
- Dimon49773
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Ср янв 18, 2012 16:33:58
Прошу помощи с датчиком SHT15
Всем привет,
задача стоит таким образом : создать устройство для измерения температуры и влажности при помощи датчика SHT15 и микроконтроллера серии ATmega.
Знает ли кто вменяемую библиотеку для работы с данным датчиком??
спасибо...
задача стоит таким образом : создать устройство для измерения температуры и влажности при помощи датчика SHT15 и микроконтроллера серии ATmega.
Знает ли кто вменяемую библиотеку для работы с данным датчиком??
спасибо...
- Реклама
Re: Прошу помощи с датчиком SHT15
У меня есть детальное описание как с этим датчиком работать и форматировать его данные с использованием только целочисенных операций. Там была выработана более удобная для программирования формула для преобразованию показаний датчика в проценты влажности с учетом линеаризации и термо-компенсации, значения которой совпадают с оригинальными с точностью 0.1% влажности. Там-же есть код для работы с датчиком для PIC. Адаптировать его на AVR не составит большого труда.
http://mcs.uwsuper.edu/sb/Electronics/Humi/humi.asm
http://mcs.uwsuper.edu/sb/Electronics/Humi/humi.asm
- Dimon49773
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Ср янв 18, 2012 16:33:58
Re: Прошу помощи с датчиком SHT15
вы издеваетесь, это же асм, темболее пиковский....
Re: Прошу помощи с датчиком SHT15
Да нет, я нисколько не издеваюсь. Там в тексте на вебсайте все написано шаг за шагом, так что запрограммировать на любом языке и для любого МК не составит труда.
http://mcs.uwsuper.edu/sb/Electronics/Humi/
Этот алгоритм я позже без проблем запрограммировал на АСМе и для MSP430.
http://mcs.uwsuper.edu/sb/Electronics/TH430/
А готовой библиотеки на С у меня нет.
http://mcs.uwsuper.edu/sb/Electronics/Humi/
Этот алгоритм я позже без проблем запрограммировал на АСМе и для MSP430.
http://mcs.uwsuper.edu/sb/Electronics/TH430/
А готовой библиотеки на С у меня нет.
Последний раз редактировалось Ser60 Пн янв 28, 2013 23:28:37, всего редактировалось 1 раз.
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Прошу помощи с датчиком SHT15
Исходник у Ser60 вполне, комментарии чуть ли не в каждой строке.
До кучи, не помню где брал, на си - использовал работало.
До кучи, не помню где брал, на си - использовал работало.
- Реклама
- Dimon49773
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Ср янв 18, 2012 16:33:58
Re: Прошу помощи с датчиком SHT15
Спасибо огромное за исходники, но у меня нифига не работает, зацикливается где-то при инициализации. Выкладываю проект в авр студио и протеусе, может вы посмотрите и скажете где я ошибаюсьoleg110592 писал(а):До кучи, не помню где брал, на си - использовал работало.
- Вложения
-
- sht15_test.rar
- (68.03 КБ) 213 скачиваний
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Прошу помощи с датчиком SHT15
У меня проект не собирается (винавр 2010) Error: register number above 15 required. и варнингов кучка.
У вас, я так понял мега128, исходники для меги8, наверное надо править в области настроек периферии.
GCC для AVR пользуюсь редко - переделывал исходники для иар. Года два назад было, сейчас глянул у меня все в одном сишном мэин файле. Все, вроде похоже скопипастено из этой библиотеки.
Заказчику надо было убедится что приборы на HIH датчиках (делал я тоже) не врут - сделал просто показометр датчик и семисегментный индикатор. Помню датчик на длинных проводах не работал.
не доглядел: Project was built with WinAvr GCC 3.3, так что можно скачать старый винавр и попробовать откомпилировать.
У вас, я так понял мега128, исходники для меги8, наверное надо править в области настроек периферии.
GCC для AVR пользуюсь редко - переделывал исходники для иар. Года два назад было, сейчас глянул у меня все в одном сишном мэин файле. Все, вроде похоже скопипастено из этой библиотеки.
Заказчику надо было убедится что приборы на HIH датчиках (делал я тоже) не врут - сделал просто показометр датчик и семисегментный индикатор. Помню датчик на длинных проводах не работал.
не доглядел: Project was built with WinAvr GCC 3.3, так что можно скачать старый винавр и попробовать откомпилировать.
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Прошу помощи с датчиком SHT15
Попробовал винавр WinAVR-20081205 ваш проект собирается с ворнингами, так что лучше, наверное взять винавр постарее.
- Dimon49773
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Ср янв 18, 2012 16:33:58
Re: Прошу помощи с датчиком SHT15
я собрал под мегу128 потому что вышеизложенный проект был под мегу 128 (в мейкфайле было упомянуто по крайней мере)oleg110592 писал(а):У вас, я так понял мега128, исходники для меги8,
oleg110592 писал(а):Попробовал винавр WinAVR-20081205 ваш проект собирается с ворнингами, так что лучше, наверное взять винавр постарее.
Насчёт совместимости я отредактировал под WianAvr2010 всё типа sbi(PORT,PIN) -> PORT |= _BV(PIN) и прочие несовместимости.
Проект даже компилируется. Запускаю дебаггер, и происходит зацикливание на инициализации, и именно при попытки передачи через уарт чего-нибудь. Вопрос остаётся актуальным...
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Прошу помощи с датчиком SHT15
Нашел на аврфрексе, вроде как посвежее, под мегу8 исходники + хекс файл, проверил хекс в протеусе - работает. Собирать не пробовал.
- Dimon49773
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Ср янв 18, 2012 16:33:58
Re: Прошу помощи с датчиком SHT15
Как это "реальными с датчика" и "при помощи МК"? Или у вас датчик без МК температуру показывает?
- Dimon49773
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Ср янв 18, 2012 16:33:58
Re: Прошу помощи с датчиком SHT15
ну на картинке же, протеус показывает реальное значение с датчика. А считанное при помощи МК другое значениеploop писал(а):Как это "реальными с датчика" и "при помощи МК"? Или у вас датчик без МК температуру показывает?
Re: Прошу помощи с датчиком SHT15
Ну так а вы эти числа привели к температуре?
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Прошу помощи с датчиком SHT15
при вычислении влажности необходимо учитывать температуру воздуха,
в этой формуле учитывается:
в этой формуле учитывается:
Код: Выделить всё
rh_true = ((t_C-(25*100)) * (T1x100000 + T2x100000*rh))/100000 + rh_lin;- Dimon49773
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Ср янв 18, 2012 16:33:58
Re: Прошу помощи с датчиком SHT15
хорошо, а температура тогда почему не соответствует?oleg110592 писал(а):при вычислении влажности необходимо учитывать температуру воздуха
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Прошу помощи с датчиком SHT15
Температура вроде соответсвует, чего там протеус выдает, то и отображает:
Код: Выделить всё
t_C = D1x100 + D2x100*t; // calculate tempurature in celcius from ticks- Dimon49773
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Ср янв 18, 2012 16:33:58
Re: Прошу помощи с датчиком SHT15
25 на датчике и 24,78 после вычисленийoleg110592 писал(а):Температура вроде соответсвует, чего там протеус выдает, то и отображает
Я просто хочу понять, это ошибка протеуса или так оно и должно быть
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Прошу помощи с датчиком SHT15
фирма производитель дает формулу:
в исходнике выше все также, число 40, не помню, при питании датчика от 5В, почитайте документацию.
Сделайте реальное устройство и проверьте по эталонному термометру. Мне заказчик (очень вредный) претензий по температуре не предъявлял.
Код: Выделить всё
t_C=t*0.01 – 40; //calc. Temperature from ticks toСделайте реальное устройство и проверьте по эталонному термометру. Мне заказчик (очень вредный) претензий по температуре не предъявлял.
- Dimon49773
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Ср янв 18, 2012 16:33:58
Re: Прошу помощи с датчиком SHT15
да я тоже не предъявляю, просто хотелось знать где ошибка... Огромное спасибо за исходникиoleg110592 писал(а):Мне заказчик (очень вредный) претензий по температуре не предъявлял.



