ЭЛЕКТРОНИКА Радиоудлинитель датчика температуры DS18B20

Sergo_ST

★★★★★★✩
15 Мар 2020
891
799
Прошивки для радиоудлинителей DS18B20 можно скачать здесь.

Внимание! Перед прошивкой передатчика, обязательно полностью отключите радио-модуль, иначе он может выйти из строя!
Так-же могут быть проблемы с ATTINY13A купленными в Китае!!!


WDS18B20.JPG
Фьюзы RX прошивки Low 0x7A High 0xFF.
Фьюзы TX прошивки Low 0x79 High 0xFB.

Перед прошивкой передатчика желательно считать из сигнатуры мк калибровочный байт для осциллятора 4.8МГц и прописать его в OSCCAL_SET прошивки передатчика!
После прошивки необходимо обязательно прописать адрес передатчика в приёмнике по инструкции ниже!

Поддерживаются любые совместимые с указанными в схеме радио-модули на 433МГц.

Что реализовано:
  • Полноценная шина 1wire с возможностью адресации(команды - Search ROM, Read ROM, Match ROM, Skip ROM).
  • Копирование памяти и адреса датчика(адрес хранится в EEPROM приемника).
  • Защита от помех(передача бит по высокому уровню + проверка сигнала раскачки).
  • Сверка адреса передатчика(адрес задается перемычками).
  • Прописывание адреса передатчика в приёмник.
  • Сверка контрольной суммы принятых данных.
  • Система ошибок(125 - передатчик давно не выходил на связь, -85 - нет сигнала от датчика температуры).
  • Возможность установки перемычками установки интервалов передачи и адресов.
  • Возможность перед компиляцией установить свой максимальный интервал передачи(по умолчанию 60мин).
  • Возможность перед компиляцией выбрать режим "SLOW_MODE", для более устойчивой передачи.
  • Дублирование передачи(отправка повторного пакета через 8 сек).
  • Запрос температуры(за 8 секунд до основной передачи).

Синхронизация адреса датчика температуры с приёмником:
  • Выключить передатчик и приёмник.
  • Отключить приёмник от шины 1wire.
  • Включить приёмник.
  • Включить передатчик.
  • Через 1,5сек светодиоды приёмника и передатчика должны загореться - адрес прописан.

Синхронизация адреса передатчика с приёмником:
  • Выключить передатчик и приёмник.
  • Отключить приёмник от шины 1wire.
  • Прижать пин PB3 приёмника к земле.
  • Включить приёмник(светодиод будет светиться постоянно).
  • Включить передатчик.
  • Через 1,5 - 3сек светодиод приёмника должен потухнуть - адрес прописан.
  • Выключить приёмник.
  • Убрать прижим к земле пина PB3.

Установка аналоговых перемычек(резисторы подключаются к GND):
  • GND - PB4(1мин), PB3(0xAA)
  • Резистор 60K - PB4(5мин), PB3(0xBB)
  • Резистор 170K - PB4(10мин), PB3(0xEE)
  • VCC - PB4(30мин), PB3(0xCC)
Что нового:

ver 3.5.2

  • Добавлена индивидуальная адресация(можно использовать несколько удлинителей в одном месте).
  • Добавлена возможность прописывать передатчик в память приёмника (для этого необходимо PB3 прижать к земле и включить питание).
  • Добавлен медленный режим для протокола радиопередачи
  • Повышена помехоустойчивость при раскачке.
  • Убраны интервалы дублирующей передачи 8сек(теперь передаётся за раз 3 пакета).
  • Теперь при старте передаётся температура вместе с адресом датчика.
  • Оптимизация.
ver 3.5.4
  • Добавлен выбор адреса и времени с помощью аналоговых перемычек для передатчика.
  • Удалён режим передачи 3-х пакетов за раз.
  • Оптимизация приёмника.
ver 3.5.5
  • Исправление прошивки приёмника.
  • Добавлена возможность установить коррекцию частоты.
  • Мелкие исправления.
ver RX 4.0.0
  • Новый алгоритм обработки шины 1wire(позволяет обрабатывать практически все варианты поведения шины).
ver RX 4.1.0
  • Переработан алгоритм ответа на сигнал сброса.
ver TX 4.1.2
  • Исправление отключения ацп.

За идею была взята статья с этого сайта.
Так-же огромное спасибо maksland за тестирование прошивок и схемы подключения!
Если есть вопросы/проблемы, или вы нашли баг, пишите в ЛС или ниже в теме.
 

Вложения

Изменено:

samand587

★✩✩✩✩✩✩
31 Май 2021
90
22
...Чтобы проверить понимают ли мк друг друга...
Прошивку поменяю! И большая просьба! Нарисуйте, пожалуйста, что к чему подключать. Боюсь напутать и сжечь что нибудь.

З.Ы. Но это просьба. К исполнению не обязательно!
 

Sergo_ST

★★★★★★✩
15 Мар 2020
891
799
PB1 передатчика к PB0 приемника. GND к GND. Запитать оба мк от 5в, пины питания тоже можно объединить. Радиомодули обязательно полностью отключить. Сжечь там больше нечего, если только подать напряжение питания больше чем 5,5в...
 
  • Лойс +1
Реакции: samand587

maksland

★★★✩✩✩✩
13 Янв 2019
493
116
Omsk
а... ну платы то рабочие :)
а модули да ... не жалуют их . Я он них сразу отказался когда изучал что можно использовать. В Китае сейчас НГ наверное, заказать пока не сможете другие
 

samand587

★✩✩✩✩✩✩
31 Май 2021
90
22
Попробовал без модулей - все работает! Поставил другой передатчик- все заработало! А этот передатчик поставил в другой проект- там он работает. Почему здесь не хочет работать- Х.З.! Прямо чудеса чудес. Прошивки залил с с гит-хаба без изменений. Всем спасибо за советы!(y)

Даже слов нет описать весь этот кирдык! Собрал все в часы и снова все перестало передаваться! Подозрение на микро трещину в дорожках? Или Х.З.! Передатчик, который менял, весь вечер работает в другом проекте без единого сбоя. Или грешить на прошивку?
 
  • Лойс +1
Реакции: maksland

Sergo_ST

★★★★★★✩
15 Мар 2020
891
799
Что именно не работает? Не моргает диод на приёмнике или не отображается температура? Или на часах даже вместо ошибки просто нули?
 

samand587

★✩✩✩✩✩✩
31 Май 2021
90
22
Здравствуйте! На часах 125. При включении диодик моргает и далее через 8 сек. и 7,5 мин. так же моргает. Фактическая температура на табло не выводится. Как уже выяснял модули у меня исправные. Остается плата и прошивка. Наверное на прошивку зря грешу( ведь повторяли). остается плата передатчика.

Сейчас подключил плата к плате без модулей- все работает!
 

Sergo_ST

★★★★★★✩
15 Мар 2020
891
799
Вы используете те модули из поста #104? С радиомодулями мигают оба диода?
Начнём с того, что на радиомодуль приёмника неплохо было бы припаять антенну (судя по фото она отсутствует).
Во вторых, радиомодуль приёмника желательно отнести подальше от электроники часов, дабы не ловить дополнительные шумы.
Ну и последнее, судя по постам выше, Вы используете подобные радиомодули в других проектах, неизвестно как они выполняют передачу(может они постоянно вещают в эфир или очень часто это делают, в следствии повреждая целевые пакеты), поэтому выключите все устройства вещающие на этой частоте.
 

samand587

★✩✩✩✩✩✩
31 Май 2021
90
22
С радиомодулями мигает диодик только на плате передатчика. Антенны припаяны на обеих модулях(длина антенны 17см). Все устройства с такими модулями отключены. Работу плат проверял вдали от часов по синхронному миганию диодиков на передатчике и приемнике. При включении плата в плату передатчика и приемника все работает- значит платы спаяны правильно и дефектов не имеют. Значит остаются модули и прошивка.
 

Sergo_ST

★★★★★★✩
15 Мар 2020
891
799
Если радиомодули точно исправные, у меня остаётся два варианта:
1. Скорость передачи для этих модулей слишком высокая.
2. Не запаралелины центральные пины дата модуля радиоприёмника.

Уменьшил скорость обмена в 4 раза, попробуйте...
 
Изменено:

samand587

★✩✩✩✩✩✩
31 Май 2021
90
22
Пины проверил- запараллелены. Перепрошил- на расстоянии около 8 м через кирпичную стену диодики перемигиваются. Но при подключении приемника к часам на табло горят нули, диодик на передатчике вспыхивает, а на приемнике тишина. Вот такой пирог с капустой получается!
 

Sergo_ST

★★★★★★✩
15 Мар 2020
891
799
ver 3.5.2
  • Добавлена индивидуальная адресация(можно использовать несколько удлинителей в одном месте).
  • Добавлен медленный режим для протокола радиопередачи.
  • Повышена помехоустойчивость при раскачке.
  • Убраны интервалы дублирующей передачи 8сек(теперь передаётся за раз 3 пакета).
  • Теперь при старте передаётся температура вместе с адресом датчика.
  • Добавлена возможность прописывать передатчик в память приёмника (для этого необходимо PB3 прижать к земле и включить питание).
  • Оптимизация.
 
Изменено:

hsh777

✩✩✩✩✩✩✩
22 Ноя 2020
13
2
С таким передатчиком будет работать?
 

Вложения

Sergo_ST

★★★★★★✩
15 Мар 2020
891
799
ver 3.5.4
  • Добавлен выбор адреса и времени с помощью аналоговых перемычек для передатчика.
  • Удалён режим передачи 3-х пакетов за раз.
  • Оптимизация приёмника.
 
  • Лойс +1
Реакции: maksland

record35

✩✩✩✩✩✩✩
27 Сен 2019
11
1
На первой странице сообщение от 6.12.21
Кстати,нет такого сообщения,ну да ладно,я собирал с украинского сайта ещё давно и всё работало,но была не устойчивая связь(передатчик и приёмник)сейчас решил попробывать вашу версию,заказал у китов другие передатчик и приёмник,хочу узнать-тема жива?
 

alexangarsk

✩✩✩✩✩✩✩
29 Окт 2022
17
1
Здравствуйте.
Повторил конструкцию, адрес передатчика в приёмник вроде бы как прописывается что по воздуху что при прямом соединении, а дальше тишина , светодиод на приёмнике молчит. При подключении приёмника к 1-wire шине температуру устройство показывает ноль градусов. Прошивки пробовал все какие есть в ветке форума, микроконтроллеры покупались на aliexpress, маркировка на них очень чёткая сверху и снизу выглядят ну прям как оригинал ,осталось где нить взять тиньку из прошлых времён да на ней попробовать. Ещё вот что хотел узнать, адрес передатчика куда прописывается в приёмнике, в еепром ? При разном положении перемычек на передатчике при прописывании адреса содержимое еепром приёмника выглядит одинаково, если в редакторе смотреть меняется один байт с FF на 00.
 

Sergo_ST

★★★★★★✩
15 Мар 2020
891
799
@alexangarsk, Если датчик всего один будет, попробуйте прошивку 6ms, которая прикреплена к посту с описанием.
Фьюзы прошиты правильно? Схемы собраны верно? Двух резисторов подтяжки на шине нет? На шине нет посторонних устройств/светодиодов?
 

alexangarsk

✩✩✩✩✩✩✩
29 Окт 2022
17
1
Фьюзы правильные, схема простая ошибиться сложно, резистор подтяжки один шина под один датчик, больше на ней ничего не висит, прошивки я все испробовал не хочет приёмник светодиодом на посылку в него данных отвечать. Я собрал два комплекта один с радиомодулями другой без для экспериментов, пробовал прошивку со сыллки на https://sxem.org/2-vse-stati/21-termometry/216-radio-udlinitel-emulyator-datchika-ds18b20, передатчик работает а у приёмника светодиод постоянно светится как только питание подано
 
Изменено:

record35

✩✩✩✩✩✩✩
27 Сен 2019
11
1
Подскажите силиконовый уплотнительный шнур?Диаметр?
 

maksland

★★★✩✩✩✩
13 Янв 2019
493
116
Omsk
шнур под корпус подбирается, паз 1.8 шнур 2 мм (если память не изменяет)
но корпус влагу за полтора года всё равно натащил :)
 
  • Лойс +1
Реакции: record35