» » » USB адаптер для чтения и программирования цифровых термостатов MAXIM/DALLAS DS1821

 
 
 

USB адаптер для чтения и программирования цифровых термостатов MAXIM/DALLAS DS1821

Разместил AVL_007 15 апреля 2013. Просмотров: 15505

9
USB адаптер для чтения и программирования цифровых термостатов MAXIM/DALLAS DS1821

В статье описано, как за час сделать простой USB-адаптер для чтения/записи цифровых термометров MAXIM/DALLAS DS8121 из старого дата-кабеля сотового телефона.

Кратко о DS1821

USB адаптер для чтения и программирования цифровых термостатов MAXIM/DALLAS DS1821

Понадобилось мне на днях проверить на "рабочесть" и запрограммировать режим термостата DS8121.
Микросхема DS1821, выпускаемая фирмой Dallas (теперь это уже MAXIM), может работать в режиме термометра или в режиме термостата.
USB адаптер для чтения и программирования цифровых термостатов MAXIM/DALLAS DS1821


В первом из этих режимов DS1821 обеспечивает измерение температуры в диапазоне -55..+125°C с дискретностью 1°C. Считывание значений производится с помощью однопроводного интерфейса (DALLAS 1-Wire).

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

Простая схема и шаг к USB

Поискал схему, чтоб попроще - нашлась на трех транзисторах, из программы ds1821.exe:
USB адаптер для чтения и программирования цифровых термостатов MAXIM/DALLAS DS1821


Но мне надо было еще проще и есть один нюанс - та схема под Com-порт. Сейчас его поди найди. У меня в домашнем системнике завалялся один, а в нетбуке уже нету. И тут я вспомнил, что в закромах Родины есть несколько старых датакабелей от мобильников на чипе PL2303, вот таких:
USB адаптер для чтения и программирования цифровых термостатов MAXIM/DALLAS DS1821


Подключается к USB, создает виртуальный Com-порт, рабочие уровни на выходе 3,3 В. То, что надо! Посредством "мозгового штурма" упростил схему до 3х деталей, не считая конвертер:
USB адаптер для чтения и программирования цифровых термостатов MAXIM/DALLAS DS1821
Дешево и сердито!


Питание термометра снято с линии RTS, Tx и Rx запаралелены и подтянуты резистором R1 к шине питания датчика - это линия Dq.
Конденсатор C1 - для дополнительной фильтрации напряжения питания. Детали размещаются прямо на контактных площадках платы конвертера. Разъем X1 у меня служит для подключения самодельного переходника (унификация с другими проектами). Ради упрощения конструкции можно вывести из корпуса провода с розеткой HU-3 или HU-4 для подключения микросхемы. R1 и C1 - любые малогабаритные.

В природе встречаются разные варианты конвертеров, с иной нумерацией выводов платы: Вам надо будет уточнить "распиновку" платы своего конвертера. Тот, что у меня имеет такую: 1-DCD, 2-DSR, 3-RTS, 4-DTR, 5-инверсный CTS, 6-CTS, 7-Ground, 8-Rx, 9-Tx.
USB адаптер для чтения и программирования цифровых термостатов MAXIM/DALLAS DS1821
В итоге имеем это

Светодиод был допаян позже, поэтому на схеме отсутствует. Он служит для индикации подключения и припаян между +5В USB и общим проводом.

О программе ds1821.exe

Эта небольшая специализированная программка применяется для программирования порогов DS1821 и для переключения режимов Термометр/Термостат.
USB адаптер для чтения и программирования цифровых термостатов MAXIM/DALLAS DS1821
Простой интерфейс программки ds1821.exe,
работает под Win7, все библиотеки dll в папке

Имеем на главном окне программы:
• Два поля для ввода значения TH: первое из этих полей позволяет ввести температурный порог в градусах, второе - в шестнадцатеричной форме. Два аналогичных поля для ввода значения TL.
• Кнопка 1-Wire позволяет вернуть DS1821 из режима термостата в однопроводной режим.
• Кнопка Thermostat позволяет записать введенные пороги и перевести DS1821 в режим термостата.
• Кнопка Start запускает процесс измерения температуры. При этом DS1821 должен находиться в однопроводном режиме.
• Кнопка Exit позволяет выйти из программы.

У программы ds1821.exe есть одно ограничение: она не знает про Com-порты выше COM4. А конвертеру часто присваивается номер 10, 20... Изменить номер присвоенного порта (на примере Windows XP) можно тут: Панель управления -> Система -> Диспетчер устройств -> Порты (COM и LPT). Соответственно, какой-нибудь номер из диапазона 1-4 должен быть свободен. Быстро и просто.

С другими термометрами (например DS1820) не проверял за неимением в закромах Родины оных. По идее должно работать.

Итого

Цель достигнута! Проверено по интерфейсу USB: программой термометр опознается, температура считывается, пороги программируются, режим термостата включается-выключается.

Файлы

В заключении привожу даташиты на DS1821 (цифровой термометр/термостат), PL2303 (микросхему конвертера) и архив с программой ds1821.exe
Файловый сервис доступен только полноправным членам сообщества и подписчикам.
Пожалуйста, ознакомьтесь с условиями доступа.

Файловый сервис доступен только полноправным членам сообщества и подписчикам.
Пожалуйста, ознакомьтесь с условиями доступа.

Файловый сервис доступен только полноправным членам сообщества и подписчикам.
Пожалуйста, ознакомьтесь с условиями доступа.


Enjoy!

Об авторе

Андрей (AVL_007)
Новочеркасск Ростовской области
О себе автор ничего не сообщил.
 

Понравилось? Палец вверх!

  • всего лайков: 46

Поделись с друзьями!


Связанные материалы:


Автомат управления бойлером Ariston. Экономим электроэнергию и ресурс котла

Задумался я над вопросом, отключать или не отключать бойлер периодически? Одно...

Термостат для отопления дачи инфракрасными обогревателями Иколайн. Дежурный режим,

Как говорит мой коллега, что бы Гаврилов ни делал — все равно термометр получается… Новая статья...

Простой модульный вольтметр переменного напряжения на PIC16F676

Простой вольтметр переменного напряжения с частотой 50 Гц, выполнен в виде встраиваемого...

PIC16F876: таймер вытяжного вентилятора в ванной и электронный термометр

Я недавно делал капитальный ремонт ванной комнаты и возник вопрос, как управлять вентилятором...

Термометр + термостат на микроконтроллере PIC16F876 и датчиках DS18B20

Термометр История этого термометра началась в далёком 2011 году. Мне понадобилось в подвале...

Немного про шину 1-Wire и цифровой термометр DS18b20

Фотка от www.150cc.ru Здравствуйте, друзья. Хочу предложить вашему вниманию несколько простых...

V7 — Измерение RMS-значений напряжения, тока, активной и полной мощности.

После публикации моей статьи «V6» — измеритель RMS-значений напряжения, тока, активной и полной...

Модуль управления вентилятором на микроконтроллере

Доброго времени суток сограждане! Хочу вот поделится своей конструкцией. Конструкция это из тех...

Счётчик витков для намоточного станка на ATtiny13

Случилось так, что припекло мне трансформатор мотать, всё бы хорошо, да станка только не хватает -...

Миниатюрный полный USB-RS232 адаптер на CP-2102 для подключения микроконтроллера к

В продолжение к теме «Программатор AVR910», про маленькое устройство, хочу предоставить вашему...

PIC микроконтроллеры. Все, что вам необходимо знать. Сид Катцен

PIC микроконтроллеры. Все, что вам необходимо знать. Сид Катцен пер. с англ. Евстифеева А. В. — М.:...

В. Трамперт. Измерение, управление и регулирование с помощью AVR микроконтроллеров.

Книга описывает особенности применения AVR-микроконтроллеров в технике измерения, управления и...
<
  • Гражданин
16 апреля 2013 23:37

Александр / minchenko

  • Регистрация: 16.06.2009
  • Публикаций: 4
  • Комментариев: 31
 
  • 0
Ново и познавательно, спасибо.

<
  • Гражданин
17 апреля 2013 15:19

Георгий / asterix_72

  • Регистрация: 19.09.2008
  • Публикаций: 1
  • Комментариев: 32
 
  • 0
еще есть //datasheets.maximintegrated.com/en/ds/DS2480B.pdf
я на них делал

<
  • Гражданин
17 апреля 2013 18:04

Павел / tarip

  • Регистрация: 22.02.2010
  • Публикаций: 4
  • Комментариев: 30
 
  • 0
возможно пригодится, в копилку drinks спасибо!

<
  • Гражданин
18 апреля 2013 01:59

Роман / achrom

  • Регистрация: 23.10.2009
  • Публикаций: 0
  • Комментариев: 7
 
  • 0
Интересно и познавательно. А вот как бы еще альтернативу старым кабелям схему - эмулятора COM для USB.
P.S. желательно "really", а не ссылки на форумы, гуглирование и т.п. и т.д.
Но это конечно мое личное мнение и просьба.

<
  • Гражданин
18 апреля 2013 19:54

Андрей / AVL_007

  • Регистрация: 24.08.2011
  • Публикаций: 4
  • Комментариев: 17
 
  • 0
asterix_72,
во-первых, я не знал про такие ИМС - спасибо за "наводку" )), во-вторых мне надо было по-быстрому и пара старых дата-кабелей под рукой было. Да и паять проще...

achrom,
Вы хотите сами спаять адаптер USB-COM? Готовой схемы у меня к сожалению нету, обычно я использовал либо покупные, либо вот такие, как в статье, старые дата-кабели. Можно посмотреть в сторону связки FT232 + MAX232. Если будут трудности со схемой - обращайтесь.

<
  • Гражданин
19 апреля 2013 00:59

Алексей / alex

  • Регистрация: 8.01.2012
  • Публикаций: 4
  • Комментариев: 58
 
  • 0
achrom, а это: //datagor.ru/microcontrollers/675-miniatjurnyjj-polnyjj-usb-rs232-adapter-na-cp-2102.html

<
  • Гражданин
21 апреля 2013 13:17

Роман / achrom

  • Регистрация: 23.10.2009
  • Публикаций: 0
  • Комментариев: 7
 
  • 0
Всем спасибо за ответ.
Alex - к сожалению страничка недоступна

<
  • Гражданин
23 апреля 2013 02:08

Федор / ancle-fedor

  • Регистрация: 10.04.2010
  • Публикаций: 0
  • Комментариев: 5
 
  • 0
Идея прямо "на пять"!
Проверил на DS1820 - тоже работает, правда, чуть другая разводка. Ну да даташиты есть в сети. DS-ку цеплял к кабелю от старого сименса, драйвер prolific. С завтрашнего дня будет трудиться как домашний логгер температуры )

<
  • Прохожий
7 мая 2013 01:09

/ думай

  • Регистрация: --
  • Публикаций: 0
  • Комментариев: 0
 
  • 0
потрясён гениальностью!

Информация
Вы не можете участвовать в комментировании. Вероятные причины:
— Администратор остановил комментирование этой статьи.
— Вы не авторизовались на сайте. Войдите с паролем.
— Вы не зарегистрированы у нас. Зарегистрируйтесь.
— Вы зарегистрированы, но имеете низкий уровень доступа. Получите полный доступ.