Это видео недоступно.
Сожалеем об этом.

Connect multiple DS18B20 to one bus.

Поделиться
HTML-код
  • Опубликовано: 23 окт 2018
  • Hello! DS18B20 - one of the most common sensors. This sensor is very cheap and at the same time has a good temperature measurement accuracy. In this video, we will look at how you can connect several sensors to one line, and most importantly, how to programmatically distinguish them from each other.
    Sketch: drive.google.c...
    How to connect DS18B20 to Arduino: • Датчик температуры DS1...
    Useful links:
    DS18B20: ali.pub/2t4evc
    DS18B20 In sealed housing: ali.pub/21s0u3
    WeMos D1 Mini Pro: ali.pub/2j9qwb
    ESP8266 ESP-12f: ali.pub/2t4epb
    DHT22 sensor: ali.pub/2t4eq3
    AM2320 sensor: ali.pub/2t4eqo
    RTC DS1307 module: ali.pub/2t4et7
    BMP280 sensor: ali.pub/2t4eud
    Solar Panel 5V 4.5W: ali.pub/2gllam
    Solar panels: ali.pub/2glli0
    Cheapest Arduino Mini Pro for DIY: ali.pub/1ny2z4
    The most convenient cashback:
    LetyShops: goo.gl/Ev5XgI
    The most profitable cashback:
    Ecomerce: goo.gl/3dDc2w

Комментарии • 113

  • @user-ip3uy6qv5y
    @user-ip3uy6qv5y 5 лет назад +2

    Полезная информация, теперь можно попробовать создать термометр дом-улица. :-)

  • @user-zb4ig2li2t
    @user-zb4ig2li2t 4 года назад +1

    Ваш видосик помог моему проектику.
    СПАСИБО ОГРОМНОЕ !

  • @user-dg9ld4ks1h
    @user-dg9ld4ks1h 5 лет назад

    только собрал такую штуку из двух датчиков) есть примеры самоопределения в setup {}, так немного удобнее, сразу все показал сам. спасибо за видео)

    • @UCanDo
      @UCanDo  5 лет назад

      Конечно, так тоже можно. Но при самоопределении не понятно какие данные к какому датчику привязаны.

  • @saidgusainov6252
    @saidgusainov6252 5 лет назад +2

    Как всегда все понятно.Спасибо.

  • @SanSan-xe4hz
    @SanSan-xe4hz 4 года назад

    Спасиьо,приятно когда человек объясняет всё русским языком...

    • @guggiwert1796
      @guggiwert1796 4 месяца назад

      Да, но у него дома холодно, можешь скинуть ему денег на карту для разогрева или нет?

  • @dimuabelkaSuper
    @dimuabelkaSuper 5 лет назад +4

    Спасибо большое 💣

  • @user-yj5yi4cx2l
    @user-yj5yi4cx2l 5 лет назад

    Спасибо! А второй мне было интересно, как работает пожарная сигнализация в нескольких квартирах. Теперь я понимаю.

  • @gennadiygps2186
    @gennadiygps2186 4 года назад

    Полезная информация, теперь можно попробовать создать термометр дом-улица. :-) Респект !!!

    • @UCanDo
      @UCanDo  4 года назад +2

      Посмотрите мои последние видео. Я начал делать погодную станцию, может что-то полезное увидите.

    • @guggiwert1796
      @guggiwert1796 4 месяца назад

      ​@@UCanDoюкандо, а разве что так можно , чтоб сразу и на улице и дома показывал температуру?

    • @UCanDo
      @UCanDo  4 месяца назад

      @@guggiwert1796 да, можно.

  • @lazizochilov736
    @lazizochilov736 2 года назад

    Здравствуйте как можно взять скеч на arduino dallas 18b20 потключить несколька датчик

  • @user-ck5hm6io3k
    @user-ck5hm6io3k 4 года назад

    Чётко и ясно!

  • @DjleonLeon
    @DjleonLeon 5 лет назад +10

    С меня диз. Причина ардуино не задаёт адрес датчику! (он прописан на заводе) => никак нельзя задать датчику адрес! Таким образом автор не решил задачу поставленную в начале видео...

    • @UCanDo
      @UCanDo  5 лет назад +1

      И да и нет. Имеется в виду не серийный номер прописанный в датчике, а адрес (индекс), датчика, который присваивается датчику программой. При старте Ардуино, программа производит поиск и присваивает каждому найденному датчику свой адрес (индекс, номер, называйте так как вам удобно). То есть, допустим, при старте было найдено два датчика.
      Один с серийным номером: 0x28, 0xFF, 0x23, 0x29, 0x21, 0x17, 0x4, 0xC1
      Второй с серийным номером: 0x28, 0xFF, 0x7E, 0x0, 0x21, 0x17, 0x4, 0x5B
      и вот тут и начинается путаница. Программа может задать первому датчику адрес "0", а второму датчику адрес "1", а может и наоборот. Именно этот "адрес" я и имел в виду.
      Вот, посмотрите этот пример: ruclips.net/video/eQAMgzAHUNM/видео.html

    • @DjleonLeon
      @DjleonLeon 5 лет назад +1

      @@UCanDo если называть вещи не своими именами, то да -любой символ это адрес.... Но кажется мне это не правильно.

    • @vladimirkudiyarov2936
      @vladimirkudiyarov2936 5 лет назад

      Простите, но не нужно вводить несведущих в заблуждение. Леонид всё верно Вам указал. АДРЕС - установлен производителем, а нумеруете Вы их самостоятельно.

    • @egorshichenko1744
      @egorshichenko1744 5 лет назад

      Vladimir Kudiyarov, как пронумеровать датчики в программе, если не понятно какой датчик имеет какой адрес (серийный номер)? В видео как раз и показано, как определить адреса (серийные номера), чтобы в дальнейшем понимать с какого датчика какие показания приходят и соответственно раздать им отображаемые удобоваримые имена.

    • @vladimirkudiyarov2936
      @vladimirkudiyarov2936 5 лет назад

      Коммент Леонида не о методе выбранном автором, чтобы узнать серийники датчиков, а его неверной формулировке

  • @ruslan.zhumabai
    @ruslan.zhumabai 5 лет назад +1

    Отличное видео. Обещали снимать. Сделали. Не забудьте следуюший раз про интерфейса one wire рассказать. Разницу хочу узнать с rs485.

    • @UCanDo
      @UCanDo  5 лет назад

      Это очень отличные друг от друга интерфейсы, которые между собой не имеют ничего общего. По этому рассматривать оба интерфейса в одном видео - не самый лучший вариант. Есть хорошие статьи описывающие работу с этими интерфейсами. Вот на пример:
      ipc2u.ru/articles/prostye-resheniya/otlichiya-interfeysov-rs-232-rs-422-rs-485/
      radiokot.ru/articles/13/

  • @user-fs3jb2mk9m
    @user-fs3jb2mk9m 3 года назад +1

    Спасибо большое,все получилось.

    • @user-fs3jb2mk9m
      @user-fs3jb2mk9m 3 года назад

      Добрый день.У Вас случайно нет проекта озвучки температуры на двух датчиках и dfplayer mini?

  • @ArduBlock
    @ArduBlock 3 года назад

    Круто / большое спасибо )

  • @paparazzibird6706
    @paparazzibird6706 2 года назад

    Спасибо, было полезно.

  • @filippogermi1618
    @filippogermi1618 3 года назад

    good job, did you tried to use DS18B20 with ESP01? I'm trying but meet lot of problem. (apologies i can understand Russian but not write)

    • @UCanDo
      @UCanDo  3 года назад

      Hey!
      No, I have not used DS18B20 with ESP01. I just don't have an ESP01. But I connected DS18B20 to ESP8266. Everything worked fine: ruclips.net/video/xCad3Q1Egrc/видео.html

  • @alexasino70
    @alexasino70 5 лет назад +2

    После считывания пишу на них последние 2 цифры адреса белым тонким маркером. Можно пронумеровать в файле, а на торце замазать штрихом и написать цифру. После этого очень сложно их попутать. )

    • @UCanDo
      @UCanDo  5 лет назад

      тоже вариант :)

  • @analgetic911
    @analgetic911 5 лет назад

    Ещё хорошо рассмотреть вариант такой. По датчику на порт ардуино. Например, в контроллер отопления или термостат. При перегорании датчика просто поменять на новый без заморачивания с адресами. Особенно актуально для ардуино мега. Например, три датчика на три пина.

    • @UCanDo
      @UCanDo  5 лет назад

      Если уж подключать отдельный датчик на отдельный пин, то на много дешевле будет поставить расширитель портов

    • @analgetic911
      @analgetic911 5 лет назад +1

      @@UCanDo и такой вариант тоже хорошо рассмотреть. Не у всех есть такой расширитель под рукой, а свободные порты есть и высокая ремонтопригодность часто нужна без квалифцированного специалиста. Например, контроллер отопления в загородном доме у родителей, которые не смогут прописать новый адрес, а перекинуть само тело датчика из запаса на колодке не составит труда.

  • @user-ee3pw3bb4c
    @user-ee3pw3bb4c 5 лет назад +1

    Вообще бы хотелось увидеть видео с подробным разбором самих библиотек

  • @paparazzibird6706
    @paparazzibird6706 2 года назад

    Привет! Огромное спасибо за видео, собрал для двух датчиков, всё отлично! Появился вопрос, может Вы знаете в чём может быть дело. Подключил к ардуино уно ethernet shield w5100 сделал простой веб сервер, он работает, затем внедрил в него скетч для датчиков, и вот что странно, при подключённом шилде, данные с датчиков не приходят (пишет -127 и всё), а если шилд физически отключить от ардуино, то с этим же скетчем всё работает (вижу по монитору порта) показания с датчиков корректные. Прозванивал пины, все звонятся нормально, питание тоже идёт, как с шилдом, так и без него. И даже пробовал внешнее питание 9В подключать, думал нехватает из за питания шилда.

    • @UCanDo
      @UCanDo  2 года назад

      Спасибо за отзыв! К сожалению я с таким шилдом дела не имел и не знаю его схемы. Но судя по описанию у вас может быть только одно: Шилд использует те же пины к которым подключены датчики. Попробуйте найти схему шилды и посмотреть какие пины используются, также переключите датчики на другие пины.

    • @paparazzibird6706
      @paparazzibird6706 2 года назад

      @@UCanDo Тоже об этом подумал, но в спецификации указано что он использует только SPI разъём. Всё равно спасибо, буду дальше искать причину.

  • @poysoriona1457
    @poysoriona1457 3 года назад

    Идея хорошая, но если нужно будет поменять датчик, придётся править программу и перепрошивать. А это не удобно. Программа должна сама сканировать устройства на шине.

  • @user-xw1ez8ig2k
    @user-xw1ez8ig2k 3 года назад

    Есть опыт работы с восьмью датчиками, тоже их прописывал.

  • @sergeytos4719
    @sergeytos4719 2 года назад

    Доброе время суток уважаемый. Хотелось бы узнать, почему данный датчик перестаёт работать уже на 5ти метрах экранированного специализированного провода. Вот это можете объяснить?

    • @sergeytos4719
      @sergeytos4719 2 года назад

      И да. Как в полевых условиях вывести на дисплей сканирование шины OneWire?

    • @UCanDo
      @UCanDo  2 года назад

      Если на 5-им метрах перестаёт работать, то Проблема либо в кабеле, либо в питании.
      У меня до датчика 10 метров. Работает уже 8 лет стабильно

    • @sergeytos4719
      @sergeytos4719 2 года назад

      @@UCanDo Не пойму как может быть что то с кабелем - он новый!

    • @UCanDo
      @UCanDo  2 года назад

      Элементарно: наводки и т.д. Попробуйте поставить электролитический конденсатор возле датчика

  • @Ardbot
    @Ardbot 5 лет назад

    Спасибо, как понимаю, вероятность повтора адреса на датчиках низка и подключить можно до 127 штук и не опасаться за некорректную работу?

    • @UCanDo
      @UCanDo  5 лет назад +3

      На сколько я знаю, у каждого датчика свой уникальный адрес. Вероятность совпадения не то что низка... она почти нулевая. Да, на одной шине можно подключить до 127 штук.

  • @user-vi2wp3gs5y
    @user-vi2wp3gs5y 4 года назад

    Всё хорошо. Спасибо.

  • @----Alex---
    @----Alex--- 5 лет назад +1

    Устанавливаем датчики температуры, запускаем систему и зажигалкой подогреваем датчики и смотрим какой где,ногами не пинать если что не так .

    • @UCanDo
      @UCanDo  5 лет назад +1

      Можно, конечно и так :)

    • @tor7860
      @tor7860 5 лет назад

      @@UCanDo а потом уже переименовываем? (то есть можно обойтись без процедуры с копированием адресов?)

    • @UCanDo
      @UCanDo  5 лет назад +1

      Да, можно, если датчиков 2-3. Но если их больше то времени уйдет на много больше чем если бы сразу узнать их адреса.

  • @user-gc2ep6wj4f
    @user-gc2ep6wj4f 3 года назад

    Почему у меня скеч выдает ошибку 'D4' was not declared in this scope?

    • @UCanDo
      @UCanDo  3 года назад

      А для какой платы вы делаете компиляцию?

    • @user-gc2ep6wj4f
      @user-gc2ep6wj4f 3 года назад

      @@UCanDo для любой выдает эту ошибку. Убрал букву 'D' и все заработало

  • @ruslanmachuzhak2504
    @ruslanmachuzhak2504 3 года назад

    Спасибо

  • @poweredbysergey
    @poweredbysergey 5 лет назад +1

    Cool

  • @user-hd7hq4lf4y
    @user-hd7hq4lf4y 4 года назад

    Доброго всем. Имею аналогичную схему подключения с 4-мя датчиками. Общая длина шлейфа 9 метров. При работе устройства начали переодически "отваливаться" датчики. Возвращают ошибку -127 (обычно "нет питания" или "датчик не отвечает") Так вот вопрос, как бороться и можно ли как-то программно сбрасывать датчики на ходу? (возникла ошибка - перезапустил)

    • @UCanDo
      @UCanDo  4 года назад

      Добрый день. У меня датчик выведен на улицу, длинна провода тоже около 9 метров. Подключал 3-мя проводами. В таком режиме работает уже более 4-х лет.
      Давно это было. Надо вспомнить...
      для стабильной работы нужно Подключение по 3-м проводам, не по двум! Дальше, для стабильности работы, на конец провода нужно установить электролитический конденсатор по-большое емкостью. Ещё нужно возле каждого датчика установить подтягивающий резистор на 4.7 - 10 кОм.

    • @user-hd7hq4lf4y
      @user-hd7hq4lf4y 4 года назад

      @@UCanDo резисторы возле каждого датчика? Вы не путаете? Конденсатор в конце у меня стоит на 0.01 мкф. Схема по 3 проводам.

    • @UCanDo
      @UCanDo  4 года назад

      В конце провода нужно поставить конденсатор на 200 - 1000 микрофарад (электролитический), для стабилизации питания.
      Да, резистор нужно ставить возле каждого. Но сопротивление резисторов нужно расчитать. При параллельном соединении сопротивление резисторов уменьшается. Нужно расчитать так, чтобы после установки резисторов общее сопротивление было около 4.7 кОм.
      Такая конструкция необходима из-за длинного провода.

    • @user-hd7hq4lf4y
      @user-hd7hq4lf4y 4 года назад

      Благодарю, будем пробовать.

  • @igor0242
    @igor0242 5 лет назад

    Почему из всех адресов вы указали на какой-то один? Порт выдал целый набор адресов же.

    • @UCanDo
      @UCanDo  5 лет назад +1

      Просто монитор порта не очищает то, что перед этим в нем было. Ардуино передает новые данные, а в мониторе они дописываются к предыдущим. Как вариант, можно просто закрывать и по-новой открывать монитор порта. Тогда такого "глюка" не будет.

  • @f33net
    @f33net 5 лет назад

    Кому надо температуру мерить в разных местах - нафига на шину сажать? Это у нас, например, термоподвеска с кучей датчиков в одной колбасе - шина на лице, а когда надо на отдельных линиях мерить, установите любой коммутатор двунаправленный и при помощи его подключайте сигнальные ноги датчиков по очереди перед снятием показаний. Когда два-четыре датчика, так вообще проще каждый на отдельную ногу дуринки повесить и пользоваться упрощённый интерфейсом без установки адреса.

    • @UCanDo
      @UCanDo  5 лет назад

      Речь не о том что кому лучше. Конечно, можно отдельный датчик на отдельную ногу.

  • @user-xw1ez8ig2k
    @user-xw1ez8ig2k 3 года назад

    Пишу с ака жены, а вот 120 датчиков как пометить? Забодаешься их прописывать.

    • @UCanDo
      @UCanDo  3 года назад

      Да, есть такое...

    • @user-gc2ep6wj4f
      @user-gc2ep6wj4f 3 года назад

      120 датчиков забадаешься подключать не то что прописывать ))

    • @user-xw1ez8ig2k
      @user-xw1ez8ig2k 3 года назад

      @@user-gc2ep6wj4f нет, если надо есть принцип - самоделки по заводским быстросъемным датчикам. Сам делал год назад.

  • @----Alex---
    @----Alex--- 5 лет назад

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

    • @UCanDo
      @UCanDo  5 лет назад +1

      Относительно камеры точно не подскажу. Как вариант - попробовать подключить web камеру через USB. Еще вариант - ip камера.
      Относительно датчиков... Датчики должны быть к чему-то подключены, на пример Ардуино, или ESP8266, а дальше донные должны передаваться на планшет либо через блютуз, либо через интернет (MQTT).
      У меня на канале есть несколько примеров получения данных на телефон (или на планшет).

    • @----Alex---
      @----Alex--- 5 лет назад

      Спасибо сейчас посмотрю

  • @les12001
    @les12001 4 года назад

    Здравствуйте, как эта шина называется?

    • @UCanDo
      @UCanDo  4 года назад +1

      Добрый день.
      1-Wire или One-Wire

  • @RVBlondinchik
    @RVBlondinchik 3 года назад

    Есть необходимость узнать mac адреса нескольких десятков таких датчиков. Насоветуйте как.

    • @UCanDo
      @UCanDo  3 года назад

      Только вручную проверять адрес каждого отдельного датчика, потом подписывать, чтобы не перепутались. Иначе никак. Можно получить адреса сразу всех подключённых датчиков, но как вы узнаете какой адрес с какому датчику относится? Никак, только отдельно узнавать адреса

  • @Agritreid
    @Agritreid 5 лет назад

    Какое количество датчиков так можно подключить ?

    • @UCanDo
      @UCanDo  5 лет назад +1

      Больше 120-ти. Если не ошибаюсь, 127

    • @Agritreid
      @Agritreid 5 лет назад +1

      @@UCanDo 127 датчиков можно через один зеленый проводок подключить ? Я правильно понял ?

    • @UCanDo
      @UCanDo  5 лет назад +1

      Да, все верно.

  • @user-pw2vi4dl6q
    @user-pw2vi4dl6q 2 года назад

    Дай скетч на самостоятельное определение датчиков Ардуинкой!!! А то получается что нужно раздербанить конструкцию и тащить ее черти куда при повреждении датчиков.

    • @UCanDo
      @UCanDo  2 года назад

      Да без проблем! Только для начала ответьте не простой вопрос: как Ардуино определит какой датчик к чему относится? Допустим есть 5 датчиков, подключённых на одну линию, датчики расположены в разных местах. Допустим в 5-ти разных комнатах. Как Ардуино узнает какой датчик к какой комнате относиться? При включении Ардуино каждому датчику назначает свой индекс, какой индекс будет у какого датчика - не известно. Индекс назначается случайно. А это значит что при включении индексы меняются, и тот датчик что был 5-м становится 2-м, а 1-й 3-им. Никогда не получится точно знать какому датчику какой индекс соответствует. А значит никогда не получится сделать так чтобы Ардуино автоматически понимала какой датчик в какой комнате находится. Это касается датчиков, находящихся на одной линии.
      Выходов из этой ситуации два:
      1) каждый датчик устанавливать на отдельную линию (отдельный пин)
      2) указывать в скетче адрес датчика (прописанный на заводе) и указывать какой адрес какому датчику-расположению соответствует

    • @user-ur3rc5po9d
      @user-ur3rc5po9d 8 месяцев назад

      @@UCanDo упорядочивать датчики по адресам, чтобы первый был всегда первым, а пятый - всегда пятым? до момента замены датчиков конечно :)

    • @UCanDo
      @UCanDo  8 месяцев назад

      @@user-ur3rc5po9d, в момент замены придется перепрошивать Ардуино, указав новый датчик.
      Датчики DS18B20 крайне надежные. За мои 10-11 лет практики ни один не вышел из строя.

  • @user-rw8yf9ij1j
    @user-rw8yf9ij1j 4 года назад

    Как колибровать 5 датчиков ds18

    • @user-rw8yf9ij1j
      @user-rw8yf9ij1j 4 года назад

      ?

    • @UCanDo
      @UCanDo  4 года назад

      Что значит калибровать? Они и так откалиброванны

  • @guggiwert1796
    @guggiwert1796 4 месяца назад

    Земляк, у тебя дома холодно, да?

    • @UCanDo
      @UCanDo  4 месяца назад

      Для вас 21 - это холодно? Как по мне, холодно это когда 14 градусов….

    • @guggiwert1796
      @guggiwert1796 4 месяца назад +1

      @@UCanDo я про ту малюююсенькую "зону комфорта" в 10-15 градусов, 15 уже прохладно, 28 уже жарковато, а на солнце живут же создания, которым нормально при той температуре!!

    • @UCanDo
      @UCanDo  4 месяца назад

      @@guggiwert1796 100%

  • @electronicsengineer-ru
    @electronicsengineer-ru 5 лет назад

    Каждый датчик для этого имеет серийный номер по которому вы их ни за что не перепутаете читайте даташит, и не надо винить в этом Ардуино в этом ни кто другой невиноват кроме самого программиста, если подсматриваете у других то делайте анализ увиденного, а то получается как одна овца прыгнет в колодец и все за ней, а потом оказывается это Ардуино виноват.

    • @UCanDo
      @UCanDo  5 лет назад

      Видео как раз таки об этом: узнаем серийный номер (прошитый на заводе) для того чтобы не путаться.
      Если этого не сделать, то Ардуино будет обращаться к датчикам по индексу (я его в видео назвал "адресом": 0, 1, 2, 3...) а вот какому датчику какой индекс будет присвоен - это уже не известно.

  • @user-jq3zf2eb3m
    @user-jq3zf2eb3m 5 лет назад

    ruclips.net/video/2oiZ0RSUkvA/видео.html вы наверно меня не понили у меня есть тоже токой караблик я хачу зделать как на видео когда открывается бункер диоды моргали.я не могу понять какие мекросхему туда нужны мне бы схему

    • @UCanDo
      @UCanDo  5 лет назад

      Все делается на той же микросхеме, на которой построено управление. Ну, или подключать еще какой-то контроллер. Но ведь это ваш кораблик. Если вы его делали, то сможете добавить к электронике пару светодиодов. Это совсем не проблема. А если не вы делали, то обратитесь к тому кто делал.
      Я бы вам помог если бы вы могли сами модифицировать прошивку и электронику. Или если бы я мог сам разобрать и посмотреть электронику. Но так как я этого не могу сделать, а вы не разбираетесь в электронике, то самый правильный выбор - обратиться к тому, кто изготавливал кораблик.

  • @f33net
    @f33net 5 лет назад

    А втыкнуть все сразу, хоть 10, опросить адреса, полапать пальцами по очереди и потом список адресов отсортировать опять религия не позволила? :) А ещё крутые пацаны записывают номер порядковый в энергонезависимую память датчика, потом опрашивают весь список адресов на шине и сортируют его по тому номеру, за одно кричат, если что-то не в порядке с датчиком и какой-то номер выпал. Ну, и главное - заводской адрес датчика микротекстом выбит на сигналmной ноге датчика - в мелкоскопе выдно... :)))

    • @UCanDo
      @UCanDo  5 лет назад

      Можно, конечно и так, но так будет дольше, чем по очереди узнать адрес каждого.
      Только что пересмотрел несколько датчиков - на ножках нет никаких надписей.

    • @f33net
      @f33net 5 лет назад +1

      Микроскоп слабый... Там же вдоль ноги длинный номер не напишешь, да и припоем замажется, оно на выходе из корпуса поперёк написано мелко-мелко... :)))