TMP03F эмулятор на 1wire

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
vlasovzloy
Друг Кота
Сообщения: 20070
Зарегистрирован: Чт янв 26, 2012 16:44:29
Откуда: Таксимо

TMP03F эмулятор на 1wire

Сообщение vlasovzloy »

Есть такой термодатчик с хитрым последовательным интерфейсом. Но, он очень дорогой и трудно доставаемый. Есть желание заменить его на ds18b20, мб ктото уже заморачивался и есть наработки на эмулятор? Беглый гуглопоиск ничего не дал

Всем спасибо, всем досвидания
Мои поставщики запчастей с отличной репутацией
texnomag.ru
radioremont.com
pl-1.org
4ip.info
elitan.ru
Реклама
Аватара пользователя
korob
Друг Кота
Сообщения: 6643
Зарегистрирован: Чт авг 09, 2012 01:09:39
Откуда: Ливны

Re: TMP03F эмулятор на 1wire

Сообщение korob »

Там не 1wire. Нужен не эмулятор, а конвертер с DS18B20 в меандр 35Гц. с переменной скважностью в зависимости от температуры.

Изображение

Алгоритм конвертации простой:
1) Опрашиваем DS18B20
2) Переводим полученную температуру в нужное значение заполнения ШИМ по выше приведённой формуле.
3) ШИМ-им сигнал 35Гц. с вычисленным заполнением.
4) На выходе ставим каскад открытый коллектор.
АТiny13A + MMBT3904 думаю справятся. :roll:

P.S Сам тоже заинтересован в подобном конвертере. :oops:
Вложения
TM03F.PNG
(44.91 КБ) 889 скачиваний
Большой опыт, порой, не даёт находить/видеть нам простые и очевидные решения. :(
Всегда с уважением, Александр.
Реклама
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: TMP03F эмулятор на 1wire

Сообщение akl »

ATtiny13 не очень подходит, т.к. у него нет приличного таймера. На таймере T1 можно было бы такое реализовать. Зафиксировать длительность Т1, допустим 12'000мкс и вычислять Т2= (T1 × 400)/(235 – tºC), где tºC - значение температуры из DS18B20. Прикидки показывают, что можно уложиться в емкость таймера. Можно такое реализовать на 2313.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15572
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: TMP03F эмулятор на 1wire

Сообщение BOB51 »

Там вроде ШИМ не на фиксированной частоте...
TMP03_04.pdf
(308.83 КБ) 171 скачивание
Из мелколапых АВР... тиньки 25/45/85 - скорость там вроде весьма солидная...
:dont_know:
Реклама
Эиком - электронные компоненты и радиодетали
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: TMP03F эмулятор на 1wire

Сообщение akl »

Скорость особо не нужна. Для правильной выдержки временных интервалов при обмене с DS18B20 хватит и 1МГц тактовой.
Реклама
Аватара пользователя
korob
Друг Кота
Сообщения: 6643
Зарегистрирован: Чт авг 09, 2012 01:09:39
Откуда: Ливны

Re: TMP03F эмулятор на 1wire

Сообщение korob »

BOB51 писал(а):Там вроде ШИМ не на фиксированной частоте
По даташиту 35Гц.±20% . :roll:
Большой опыт, порой, не даёт находить/видеть нам простые и очевидные решения. :(
Всегда с уважением, Александр.
Реклама
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: TMP03F эмулятор на 1wire

Сообщение akl »

Частота 35Гц указана в тесте, наверно, как ориентировочная. Далее следует, что параметр Т2 может быть 44ms при 125ºC+ длительность Т1, т.е. явно меньше 35Гц
Аватара пользователя
korob
Друг Кота
Сообщения: 6643
Зарегистрирован: Чт авг 09, 2012 01:09:39
Откуда: Ливны

Re: TMP03F эмулятор на 1wire

Сообщение korob »

Ну да, при 25°C. А так да, частота с изменением температуры меняется, так как длительность Т1 всегда равна 10...12мс., меняется только длительность Т2.
СпойлерИзображение
BOB51 правильно подметил про непостоянство частоты ШИМ. :)
Вложения
TMP03.PNG
(54.27 КБ) 407 скачиваний
Большой опыт, порой, не даёт находить/видеть нам простые и очевидные решения. :(
Всегда с уважением, Александр.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18561
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: TMP03F эмулятор на 1wire

Сообщение ARV »

ну, тогда и тинька13 справится - на тупых задержках :) пока формируется Т1, идет общение с DS18x20, а потом при помощи _delay_us формируется Т2 :)
если на ассемблере писать, то и attiny9 хватит, пожалуй :)))
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: TMP03F эмулятор на 1wire

Сообщение GoldenAndy »

ARV, надо только какую то машину состояний замутить для обмена с DS18B20, а то она только цикл измерений гонит 750 мс. А потом можно быренько вычитать, особенно, если SKIPROM включить и читать без подсчета КС.
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18561
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: TMP03F эмулятор на 1wire

Сообщение ARV »

да какая там машина... старт преобразования уложится внутрь Т1, потом гоним циклически Т1-Т2 в расчете на "предыдущую температуру", а спустя 750 мс в течение Т1 вычитываем новую температуру и снова стартуем замер... сложнее словами описать, чем сделать :)
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: TMP03F эмулятор на 1wire

Сообщение GoldenAndy »

ARV, ну так это и есть машина - выставить старт и потом отсчитывать 750 мс.
По идее еще надо при пропадании DSки предусмотреть опрос наличия 1Wire устройства, чтения сигнатуры и проверки, DSка ли это...

480+480 мкс Reset+Present...
64мкс*16 - отправка SkipRom + ReadRam
9 байт чтение RAM: 64 мкс *8*9
Итого 480+480+64*16+64*72 = 6592 мкс.
В принципе, в Т1 укладываемся.
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: TMP03F эмулятор на 1wire

Сообщение akl »

Вариант такого конвертора на ATtiny2313 с использованием Т1. Выход PB4/OC1B прямой.
Вложения
TMP03_2313.zip
(2.39 КБ) 281 скачивание
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: TMP03F эмулятор на 1wire

Сообщение akl »

Посмотрел предыдущий вариант. Получается, что DS18B20 имеет младший разряд весом 0,0625ºC, а конвертер выдает в целых градусах. Поэтому ещё вариант, но уже с полным разрешением по шкале DS18B20 и инверсным выходом для подключения транзистора с ОК.
Вложения
TMP03_2313_V1.zip
(4.03 КБ) 253 скачивания
Аватара пользователя
vlasovzloy
Друг Кота
Сообщения: 20070
Зарегистрирован: Чт янв 26, 2012 16:44:29
Откуда: Таксимо

Re: TMP03F эмулятор на 1wire

Сообщение vlasovzloy »

Akl, у меня авр не установлен. Нарисуй схему, попробую сразу в железе. И да, и фьюзы какие
Мои поставщики запчастей с отличной репутацией
texnomag.ru
radioremont.com
pl-1.org
4ip.info
elitan.ru
Аватара пользователя
korob
Друг Кота
Сообщения: 6643
Зарегистрирован: Чт авг 09, 2012 01:09:39
Откуда: Ливны

Re: TMP03F эмулятор на 1wire

Сообщение korob »

akl спасибо! :beer:
Жалко только что ATtiny13 не подошёл. :( :cry:
Большой опыт, порой, не даёт находить/видеть нам простые и очевидные решения. :(
Всегда с уважением, Александр.
Аватара пользователя
Starichok51
Модератор
Сообщения: 19053
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: TMP03F эмулятор на 1wire

Сообщение Starichok51 »

а ТС куда-то пропал...
к тому же, он в первом посте сразу сказал всем до свидания. может, уже и не появится?..
лично я понял, что ТС нужно просто заменить дорогой и дефицитный датчик на ds18b20, а не выдавать на выход эмулируемый ШИМ взамен того датчика.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Аватара пользователя
vlasovzloy
Друг Кота
Сообщения: 20070
Зарегистрирован: Чт янв 26, 2012 16:44:29
Откуда: Таксимо

Re: TMP03F эмулятор на 1wire

Сообщение vlasovzloy »

Да, заменить этот дорогой датчик на ds18b20 или s20 и чтобы то что выдавал тмп03, такой же сигнал шел, само собой темпераиуру чтобы правильно показывал. Железнодорожное оборудование, денег как известно не дают, крутимся сами. По грозе летят термодатчики. Рацпредложение по замене попозже напишу, на пиво подкину
Мои поставщики запчастей с отличной репутацией
texnomag.ru
radioremont.com
pl-1.org
4ip.info
elitan.ru
Аватара пользователя
Starichok51
Модератор
Сообщения: 19053
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: TMP03F эмулятор на 1wire

Сообщение Starichok51 »

надо заменить - так меняй. а от нас-то что надо, я это так и не понял...
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Аватара пользователя
vlasovzloy
Друг Кота
Сообщения: 20070
Зарегистрирован: Чт янв 26, 2012 16:44:29
Откуда: Таксимо

Re: TMP03F эмулятор на 1wire

Сообщение vlasovzloy »

Старичок спасибо за совет, закажу пожалуй оригинальные
Мои поставщики запчастей с отличной репутацией
texnomag.ru
radioremont.com
pl-1.org
4ip.info
elitan.ru
Ответить

Вернуться в «AVR»