Страница 1 из 1

помогите подобрать термодатчик.

Добавлено: Пт мар 27, 2009 00:20:58
shtorm
Вобщем цель такова:
нужно замерить температуру в диапазоне ~ -20\+110(автомобиль) по цельсию. казалосьбы проще всего взять цифровые типа dsXXXX но...в данном случае мк не должен останавляваться даже 150мс слишком много...при этом будут прыгать данные о расходе топлива и скорости движения...думаю следует пользовать АЦП. и тут еще вопрос: можно ли использовать стандартный встроенный датчик на двигателе? скорей всего будут помехи от стандартных приборов? да и датчиков предпологаеться 3шт(двигатель, за бортом, салон).
как быть коты? что посоветуете? думал в сторону термисторов, но они весьма нелинейны, также встретил датчик типа TMP36/37 от Analog Device но незнаю с какой стороны к ней подойти ((

Добавлено: Пт мар 27, 2009 01:27:27
Vov123
Журнал Радио 1985г №1 стр.47
Схема как принцип,можно использовать преобразователь двуполярного напряжения или переделать на оу с однополярным питанием.Я с него лепил используя оу-mc33202 и использовал промышленный датчик ТСМ-50.При градации в 0,1 градус диапазон от -35 до +60.Вместо АЦП mega8535.

Добавлено: Пт мар 27, 2009 08:12:54
ARV
совершенно не понял, о какой остановке МК было упомянуто... для чтения температуры из DSхххх требуется что-то около 10 мс, и то это в том случае, если программист напишет программу тупо "в лоб". при желании можно ограничиться задержками в сотню микросекунд.
и еще: какие показания топлива в баке у вас будут скакать, если задержка окажется более 150 мс?! по-моему, постоянная времени измерителя уровня топлива во всех машинах десятки секунд....

Добавлено: Пт мар 27, 2009 08:59:42
shtorm
тов. ARV может я конечно чегото недопонимаю но по таблице в даташите(ds18b20) выходит именно так, ну или почти :)) а по поводу топлива в баке я ничего не говорил! я сказал расход топлива т.е. данные которые снимаються с форсунки и с датчика скорости...Может вы знаете как опросить датчик dsXXXX не нарушая работу таймеров? былоб неплохо, работать сними проще.
Изображение

Vov123 Спасибо, смысл понял.

Добавлено: Пт мар 27, 2009 09:36:30
GP1
"Max conversion time" - это время необходимое ds-ке для преобразования температуры в код, а вовсе не время требуемое для обмена с mcu.
я себе в поставил датчик 19.3828 с положительным ТКН используется в ЗМЗ-406
можно так же поставить 23.3828 от инжекторных ВАЗов, но у него отрицательный ТКН

Добавлено: Пт мар 27, 2009 09:57:12
shtorm
о! к стати весьма линеен вроде. 0,01В=1градусу
а штатный припор не сбивает показания? можно паралельно подключиться?

а по поводу ds, если просмотреть в протеусе то время опроса=времени конвертации. хотя наверное это связанно с кривой симуляцией?!

Добавлено: Пт мар 27, 2009 10:14:54
ibiza11
shtorm писал(а): а по поводу ds, если просмотреть в протеусе то время опроса=времени конвертации. хотя наверное это связанно с кривой симуляцией?!
глупо надеяться на какой то симулятор, не понимая физических процессов.... на преобразование DSке не нужен ваш контроллер.
контроллер только забирает результат за несколько десятков микросекунд.

Добавлено: Пт мар 27, 2009 10:22:55
shtorm
глупо надеяться на какой то симулятор
может быть... :oops: буду пробывать спасибо за советы

а вот для охлаждающей жидкости мне больше нравиться всетаки 19.3828 :)

Добавлено: Пт мар 27, 2009 22:53:27
Pooher
Посылаете в дс команду преобр-я температуры, запускаете таймер, по прерыванию которого "мнгновенно" считываете температуру. Задержки минимальные. На ацп дольше даже будет. Ведь дс тоже не полностью цифровой, для измерения температуры там используется аналоговый датчик, подключённый к собственному АЦП.

Добавлено: Пт мар 27, 2009 23:31:13
GP1
Ну не совсем мнгновенно 60 мкс на разряд (64+9..12) + сброс шины 480 мкс, в общем в 10 мс должно уложиться :)))

Добавлено: Пт мар 27, 2009 23:44:49
Pooher
Ну я и написал "мгновенно".
:)
Да и скорость можно в 2 раза увеличить.

Добавлено: Сб мар 28, 2009 00:02:47
GP1
??? как?

Добавлено: Сб мар 28, 2009 00:18:21
Pooher
Извиняюсь. :) :oops: Попутал. 1820 OVERDRIVE не поддерживает.

Добавлено: Сб мар 28, 2009 00:27:02
ARV
учитывая, что обмен ведется побитно, а между битами могут быть промежутки сколь угодно большой длительности, можно реализовать обмен, когда основной процесс будет приостанавливаться не более чем на 15-20 микросекунд.

Добавлено: Сб мар 28, 2009 15:09:03
Pooher
ARV писал(а):...основной процесс будет приостанавливаться не более чем на 15-20 микросекунд.
Стоит ли в подобном случае городить?

Добавлено: Сб мар 28, 2009 15:53:53
ARV
Pooher писал(а):Стоит ли в подобном случае городить?
а я почем знаю? аффтар тревожится, что у него показания расхода топлива будут искажаться из-за задержек опроса термодатчика... наверное, он дико быстро ездит :))) вот я и сказал, что можно существенно уменьшить задержки... но для надежности советовал бы ездить помедленнее - полезнее для здоровья :)))

Добавлено: Сб мар 28, 2009 22:45:25
Pooher
Извиняюсь, конечно, за оффтоп, но
ГЫ :)))

Добавлено: Пн мар 30, 2009 18:19:19
shtorm
проверил на реальном железе...блин стындо :oops: все работает без отклонений...всем спасибо за помощь :)

ARV я вообще пешком хожу :)))

P.S. едиственное что не могу догнать как отобразить десятые доли...например в 12 битном режиме... :(
Изображение
т.е. переменная содержащяя температуру должна быть float из нее выдергиваем целую часть а остаток делим на 16 и суммируем к целой или как?

P.S. вопрос закрыт, все получилось. ds18b20 рулит )))