ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² DS18B20 ΠΊ Arduino: ΠΏΠΎΠ»Π½ΠΎΠ΅ руководство

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ систСмы ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ β€” ΠΎΠ΄Π½Π° ΠΈΠ· самых популярных Π·Π°Π΄Π°Ρ‡ Π² ΠΌΠΈΡ€Π΅ Arduino ΠΈ DIY-элСктроники. Π¦ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ DS18B20 Π·Π°Π²ΠΎΠ΅Π²Π°Π»ΠΈ любовь ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ² благодаря высокой точности, возмоТности Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² агрСссивных срСдах ΠΈ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ способности ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ шинС Π΄Π°Π½Π½Ρ‹Ρ…. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… тСрмисторов, эти устройства ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌ Π²ΠΈΠ΄Π΅, Ρ‡Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ влияниС ΠΏΠΎΠΌΠ΅Ρ… Π½Π° Π΄Π»ΠΈΠ½Ρƒ кабСля.

Главная ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ DS18B20 Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° 1-Wire. Π­Ρ‚ΠΎ позволяСт ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ дСсятки сСнсоров, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ всСго ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (Π½Π΅ считая Π·Π΅ΠΌΠ»ΠΈ ΠΈ питания). Π’Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π΄Π΅Π»ΡΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΈΠ½ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ измСритСля, Ρ‡Ρ‚ΠΎ критичСски Π²Π°ΠΆΠ½ΠΎ ΠΏΡ€ΠΈ сборкС слоТных систСм ΠΊΠ»ΠΈΠΌΠ°Ρ‚-контроля ΠΈΠ»ΠΈ ΡƒΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ°. Ардуино способна автоматичСски ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ‡ΠΈΠΏ ΠΏΠΎ Π΅Π³ΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ 64-Π±ΠΈΡ‚Π½ΠΎΠΌΡƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ физичСскоС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΊ ΠΏΠ»Π°Ρ‚Π΅ Arduino, настройку Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ написаниС ΠΊΠΎΠ΄Π° для ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ считывания ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΠΉ. Π’Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСмСнты, ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ошибок схСмотСхники ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ скСтч для ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π’Π°ΠΆΠ½ΠΎ: Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΠΏΠ°Ρ€Π°Π·ΠΈΡ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ питания, Π½ΠΎ для ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ сСти ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… устройств Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшнСС ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅.

НСобходимыС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° оборудования

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π²Π°ΠΌ потрСбуСтся Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ€Π°Π΄ΠΈΠΎΠ»ΡŽΠ±ΠΈΡ‚Π΅Π»Ρ. Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ элСмСнтом станСт ΠΏΠ»Π°Ρ‚Π° Arduino (ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡƒΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ Uno, Nano, Mega ΠΈΠ»ΠΈ Pro Mini). ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌΠΈ гСроями Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ сами сСнсоры DS18B20, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ Π³ΠΎΠ»Ρ‹Ρ… Ρ‡ΠΈΠΏΠΎΠ² ΠΈΠ»ΠΈ Π² Π³Π΅Ρ€ΠΌΠ΅Ρ‚ΠΈΡ‡Π½Ρ‹Ρ… корпусах с Π΄Π»ΠΈΠ½Π½Ρ‹ΠΌ ΠΊΠ°Π±Π΅Π»Π΅ΠΌ. Π“Π΅Ρ€ΠΌΠ΅Ρ‚ΠΈΡ‡Π½Ρ‹Π΅ вСрсии идСально подходят для измСрСния Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ТидкостСй ΠΈΠ»ΠΈ ΡƒΠ»ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°.

ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Π²Π°ΠΆΠ½Ρ‹ΠΌ элСмСнтом схСмы являСтся ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ рСзистор. ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» 1-Wire Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ линия Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°Π»Π°ΡΡŒ ΠΊ ΠΏΠΈΡ‚Π°Π½ΠΈΡŽ Ρ‡Π΅Ρ€Π΅Π· рСзистор Π½ΠΎΠΌΠΈΠ½Π°Π»ΠΎΠΌ 4.7 кОм. Π‘Π΅Π· этого ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° связь ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ ΠΈ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ. Π’Π°ΠΊΠΆΠ΅ Π²Π°ΠΌ понадобятся ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, макСтная ΠΏΠ»Π°Ρ‚Π° для тСстирования.

Бписок Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  • πŸ“Ÿ ΠŸΠ»Π°Ρ‚Π° Arduino (любая модСль с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ GPIO)
  • 🌑️ Π”Π°Ρ‚Ρ‡ΠΈΠΊΠΈ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ DS18B20 (ΠΎΡ‚ 2 ΡˆΡ‚ΡƒΠΊ ΠΈ Π±ΠΎΠ»Π΅Π΅)
  • πŸ”Œ РСзистор 4.7 кОм (для подтяТки Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…)
  • πŸ”‹ Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ питания (USB ΠΈΠ»ΠΈ внСшний Π±Π»ΠΎΠΊ 5V)
  • 🧡 ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΈ макСтная ΠΏΠ»Π°Ρ‚Π°
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ Π² Π΄Π»ΠΈΠ½Π½Ρ‹Ρ… кабСлях (Π±ΠΎΠ»Π΅Π΅ 1-2 ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²), Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, потрСбуСтся ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Π½ΠΎΠΌΠΈΠ½Π°Π» ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ рСзистора Π΄ΠΎ 2-3 кОм ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ экранированный ΠΏΡ€ΠΎΠ²ΠΎΠ΄ для сохранСния цСлостности сигнала.
πŸ“Š Какой Ρ‚ΠΈΠΏ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² DS18B20 Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
Π“ΠΎΠ»Ρ‹Π΅ Ρ‡ΠΈΠΏΡ‹ для ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹
Π“Π΅Ρ€ΠΌΠ΅Ρ‚ΠΈΡ‡Π½Ρ‹Π΅ Ρ‰ΡƒΠΏΡ‹ Π½Π° ΠΊΠ°Π±Π΅Π»Π΅
Π’Π»Π°Π³ΠΎΠ·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Π΅ Π² корпусС
Π”Π°Ρ‚Ρ‡ΠΈΠΊΠΈ Π² мСталличСской гильзС

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΡˆΠΈΠ½Ρ‹ 1-Wire ΠΈ адрСсация

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» 1-Wire, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Dallas Semiconductor (Π½Ρ‹Π½Π΅ Maxim Integrated), позволяСт устройствам ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ. КаТдоС устройство Π½Π° шинС ΠΈΠΌΠ΅Π΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ 64-Π±ΠΈΡ‚Π½Ρ‹ΠΉ сСрийный Π½ΠΎΠΌΠ΅Ρ€, Π·Π°ΡˆΠΈΡ‚Ρ‹ΠΉ Π½Π° Π·Π°Π²ΠΎΠ΄Π΅. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ адрСса ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ DIP-ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΠΈ β€” Arduino сама Π½Π°ΠΉΠ΄Π΅Ρ‚ всС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠ±ΠΎΡ€Ρ‹ ΠΏΡ€ΠΈ стартС.

ΠŸΡ€ΠΈ запускС скСтча ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ отправляСт ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ поиска, ΠΈ всС Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ°ΡŽΡ‚ΡΡ своими адрСсами. Π’ дальнСйшСм Arduino обращаСтся ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ сСнсору, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π΅Π³ΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ID. Π­Ρ‚ΠΎ позволяСт Π»Π΅Π³ΠΊΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ систСму: Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ, просто ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ² Π΅Π³ΠΎ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°ΠΌ, Π±Π΅Π· измСнСния элСктричСской схСмы.

БущСствуСт Π΄Π²Π° Ρ€Π΅ΠΆΠΈΠΌΠ° питания Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ²:

  • πŸ”Œ ΠŸΠ°Ρ€Π°Π·ΠΈΡ‚Π½ΠΎΠ΅ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅: Π΄Π°Ρ‚Ρ‡ΠΈΠΊ Π±Π΅Ρ€Π΅Ρ‚ ΡΠ½Π΅Ρ€Π³ΠΈΡŽ ΠΈΠ· Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΎ врСмя ΠΏΠ°ΡƒΠ· Π² ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅. Π­Ρ‚ΠΎ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° (зСмля ΠΈ Π΄Π°Π½Π½Ρ‹Π΅), Π½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ количСство сСнсоров ΠΈ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ опроса.
  • ⚑ Π’Π½Π΅ΡˆΠ½Π΅Π΅ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅: Π΄Π°Ρ‚Ρ‡ΠΈΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ источнику 3.3Π’ ΠΈΠ»ΠΈ 5Π’. Π­Ρ‚ΠΎ обСспСчиваСт ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ большого количСства сСнсоров ΠΈ позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ схСму с внСшним ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ запуск прСобразования Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ нСсколькими Ρ‡ΠΈΠΏΠ°ΠΌΠΈ Π² ΠΏΠ°Ρ€Π°Π·ΠΈΡ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π°Π» напряТСния ΠΈ сбой связи.

Π‘Ρ…Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΊ Arduino

Π‘Π±ΠΎΡ€ΠΊΠ° схСмы Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ слоТных ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ. ВсС Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ: ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ GND всСх сСнсоров ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ с GND Arduino, Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ VDD (Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ внСшнСС ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅) β€” с ΠΏΠΈΠ½Π°ΠΌΠΈ 5V. Линия Π΄Π°Π½Π½Ρ‹Ρ… (DQ) ΠΎΡ‚ всСх Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ΡΡ Π² ΠΎΠ΄Π½Ρƒ Ρ‚ΠΎΡ‡ΠΊΡƒ, которая ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌΡƒ ΠΏΠΈΠ½Ρƒ Arduino (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, D2).

РСзистор 4.7 кОм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Π»ΠΈΠ½ΠΈΠ΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ 5V. Π­Ρ‚ΠΎ обСспСчиваСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ логичСской Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ Π² шинС. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² (Π±ΠΎΠ»Π΅Π΅ 5-7 ΡˆΡ‚ΡƒΠΊ) ΠΈΠ»ΠΈ Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°, ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ рСзистор мСньшСго Π½ΠΎΠΌΠΈΠ½Π°Π»Π° ΠΈΠ»ΠΈ ΡƒΡΠΈΠ»ΠΈΡ‚Π΅Π»ΡŒ ΡˆΠΈΠ½Ρ‹.

Π’Π°Π±Π»ΠΈΡ†Π° соотвСтствия ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² для стандартного ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ:

ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚ DS18B20 Пин Arduino НазначСниС Π¦Π²Π΅Ρ‚ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ)
VDD (ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅) 5V Плюс питания ΠšΡ€Π°ΡΠ½Ρ‹ΠΉ
GND (ЗСмля) GND ΠœΠΈΠ½ΡƒΡ питания Π§Π΅Ρ€Π½Ρ‹ΠΉ/Π‘ΠΈΠ½ΠΈΠΉ
DQ (Π”Π°Π½Π½Ρ‹Π΅) Π¦ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΠΈΠ½ (Π½Π°ΠΏΡ€. D2) Линия Π΄Π°Π½Π½Ρ‹Ρ… 1-Wire Π–Π΅Π»Ρ‚Ρ‹ΠΉ/Π—Π΅Π»Π΅Π½Ρ‹ΠΉ
РСзистор ΠœΠ΅ΠΆΠ΄Ρƒ DQ ΠΈ 5V ΠŸΠΎΠ΄Ρ‚ΡΠΆΠΊΠ° 4.7 кОм -
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°Π»ΠΈ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… сСнсоров, Ρƒ DS18B20 Π² мСталличСском корпусС Π²Ρ‹Π²ΠΎΠ΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ нСстандартно. ВсСгда провСряйтС распиновку ΠΏΠΎ Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚Ρƒ ΠΈΠ»ΠΈ ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ Π½Π° плоской сторонС Ρ‡ΠΈΠΏΠ°.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° сборки схСмы

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 5

Установка Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ программная Ρ‡Π°ΡΡ‚ΡŒ

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с DS18B20 Π² срСдС Arduino IDE ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ Π΄Π²Π΅ стандартныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ: OneWire ΠΈ DallasTemperature. ΠŸΠ΅Ρ€Π²Π°Ρ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» общСния, Π° вторая прСдоставляСт ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ API для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΠΌΠ΅Π½Π½ΠΎ с Ρ‚Π΅Ρ€ΠΌΠΎΠ΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ. Установка производится Ρ‡Π΅Ρ€Π΅Π· мСню Π‘ΠΊΠ΅Ρ‚Ρ‡ β†’ ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ β†’ Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ.

Π’ скСтчС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΡˆΠΈΠ½Ρ‹ OneWire, ΡƒΠΊΠ°Π·Π°Π² ΠΏΠΈΠ½, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ. Π—Π°Ρ‚Π΅ΠΌ создаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ DallasTemperature, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ связываСтся с этой шиной. Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ setup ΠΌΡ‹ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅ΠΌ поиск устройств ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΈΡ… адрСса Π² консоль для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ использования. Π­Ρ‚ΠΎ Π²Π°ΠΆΠ½Ρ‹ΠΉ этап ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Arduino"Π²ΠΈΠ΄ΠΈΡ‚" всС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠ±ΠΎΡ€Ρ‹.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° для поиска адрСсов Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ²:

#include <OneWire.h>

#include <DallasTemperature.h>

#define ONE_WIRE_BUS 2 // Пин ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ²

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);

void setup(void) {

Serial.begin(9600);

Serial.println("Поиск Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ²...");

sensors.begin;

Serial.print("НайдСно Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ²:");

Serial.println(sensors.getDeviceCount);

// Π’Ρ‹Π²ΠΎΠ΄ адрСсов всСх Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ²

DeviceAddress addr;

for (int i = 0; i < sensors.getDeviceCount; i++) {

sensors.getAddress(addr, i);

Serial.print("Π”Π°Ρ‚Ρ‡ΠΈΠΊ #"); Serial.print(i); Serial.print(":");

printAddress(addr); Serial.println;

}

}

void printAddress(DeviceAddress deviceAddress) {

for (uint8_t i = 0; i < 8; i++) {

if (deviceAddress[i] < 16) Serial.print("0");

Serial.print(deviceAddress[i], HEX);

}

}

void loop(void) {}

ПослС получСния адрСсов Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ТСстко ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΡ… Π² ΠΊΠΎΠ΄Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ физичСский Π΄Π°Ρ‚Ρ‡ΠΈΠΊ ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,"Π”Π°Ρ‚Ρ‡ΠΈΠΊ Π² Ρ…ΠΎΠ»ΠΎΠ΄ΠΈΠ»ΡŒΠ½ΠΈΠΊΠ΅"). Π­Ρ‚ΠΎ сдСлаСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ нСзависимой ΠΎΡ‚ порядка ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π±ΠΎΠ»Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ.

Как ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ опроса?

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΆΠ΄Π΅Ρ‚ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ прСобразования (Π΄ΠΎ 750 мс). Для ускорСния ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ requestTemperatures Π±Π΅Π· Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ статус готовности isConversionComplete, Π½ΠΎ это Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ слоТной Π»ΠΎΠ³ΠΈΠΊΠΈ опроса Π² loop.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΊΠΎΠ΄Π° для ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ опроса

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с нСсколькими Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ функция requestTemperatures запускаСт процСсс измСрСния сразу Π½Π° всСх устройствах ΡˆΠΈΠ½Ρ‹. Однако Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ происходит ΠΏΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ (delay), это ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒ Ρ€Π΅Π°ΠΊΡ†ΠΈΡŽ всСй систСмы. Для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹.

Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° Ρ‚Π°ΠΊΠΆΠ΅ влияСт Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ DS18B20 Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ 12 Π±ΠΈΡ‚ (Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ 0.0625Β°C), Ρ‡Ρ‚ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΠΊΠΎΠ»ΠΎ 750 мс Π½Π° ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π΄ΠΎ 9 Π±ΠΈΡ‚ (Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ 0.5Β°C), Ρ‡Ρ‚ΠΎ сократит врСмя опроса Π΄ΠΎ 93.75 мс. Π­Ρ‚ΠΎ дСлаСтся ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ sensors.setResolution(address, 9).

РСкомСндуСтся ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ показания асинхронно. ЗапускайтС запрос Π½Π° ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅, выполняйтС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ Π² Ρ†ΠΈΠΊΠ»Π΅ loop, ΠΈ считывайтС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΡˆΠ»ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ врСмя. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ позволяСт Arduino ΡƒΡΠΏΠ΅Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ с дисплСя, ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈΠ»ΠΈ сСтСвой интСрфСйс Π±Π΅Π· Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ способы ΠΈΡ… устранСния

Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ сборкС схСмы ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π§Π°Ρ‰Π΅ всСго ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с ошибкой -127.00 ΠΈΠ»ΠΈ 85.00 градусов. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ -127.00 ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ ΠΈΠ»ΠΈ Π½Π΅ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ², Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ рСзистора ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠΈΠ½ΠΎΠ².

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 85.00 градусов β€” это Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² рСгистрС памяти Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ появляСтся, Ссли Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‡Π΅ΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠΈΠ»ΠΎΡΡŒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π£Π²Π΅Π»ΠΈΡ‡ΡŒΡ‚Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΌΠ΅ΠΆΠ΄Ρƒ запросом requestTemperatures ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ΠΌ getTempC, Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ статуса готовности.

Если показания скачут ΠΈΠ»ΠΈ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ пСриодичСски ΠΈΡΡ‡Π΅Π·Π°ΡŽΡ‚ ΠΈΠ· систСмы:

  • πŸ” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ качСство ΠΏΠ°ΠΉΠΊΠΈ ΠΈ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π½Π° ΠΌΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅.
  • πŸ”‹ Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π±Π»ΠΎΠΊ питания Π²Ρ‹Π΄Π°Π΅Ρ‚ достаточный Ρ‚ΠΎΠΊ (особСнно для 3+ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ²).
  • πŸ“‰ ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Π΄Π»ΠΈΠ½Ρƒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ кондСнсатор 10-100 ΠΌΠΊΠ€ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ ΠΈ Π·Π΅ΠΌΠ»Π΅ΠΉ рядом с Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ.
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π”Π»ΠΈΠ½Π½Ρ‹Π΅ нСэкранированныС ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π°Π½Ρ‚Π΅Π½Π½Π°, ловя Π½Π°Π²ΠΎΠ΄ΠΊΠΈ. Если Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ располоТСны Π΄Π°Π»Π΅ΠΊΠΎ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²ΠΈΡ‚ΡƒΡŽ ΠΏΠ°Ρ€Ρƒ ΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ зазСмляйтС экран, Ссли ΠΎΠ½ Π΅ΡΡ‚ΡŒ.

FAQ: Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы

Бколько Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² DS18B20 ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ Arduino?

ВСорСтичСски адрСсноС пространство ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° 1-Wire позволяСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎ 2^64 устройств. На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΎΠΊ потрСблСния ΠΈ Π΅ΠΌΠΊΠΎΡΡ‚ΡŒ ΡˆΠΈΠ½Ρ‹. ΠŸΡ€ΠΈ использовании качСствСнного Π±Π»ΠΎΠΊΠ° питания ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ схСмотСхники (рСзисторы, экранированиС) ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ 20-30 Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π° ΠΎΠ΄Π½ΠΎΠΉ шинС. Для большСго количСства Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π°Π·Π±ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π½Π° нСсколько нСзависимых Π»ΠΈΠ½ΠΈΠΉ, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… ΠΊ Ρ€Π°Π·Π½Ρ‹ΠΌ ΠΏΠΈΠ½Π°ΠΌ Arduino.

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ Π±Π΅Π· рСзистора?

Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΡΠ΅Ρ‚ΡŒ Π±Π΅Π· ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ рСзистора Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ линия Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ смоТСт Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ Π² состояниС логичСской Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹. Однако ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚"костыли", ΠΊΠΎΠ³Π΄Π° рСзистор Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ подтяТкой (Ρ€Π΅ΠΆΠΈΠΌ INPUT/OUTPUT), Π½ΠΎ это ΠΊΡ€Π°ΠΉΠ½Π΅ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Π½Π΅ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½ΠΎΠ΅ для ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². ВсСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ рСзистор 4.7 кОм.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ 85 градусов?

Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ Π΅Ρ‰Π΅ Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΎ, Π° Π²Ρ‹ ΡƒΠΆΠ΅ ΠΏΡ‹Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ΡΡŒ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅. DS18B20 Π½ΡƒΠΆΠ½ΠΎ врСмя (ΠΎΡ‚ 93 мс Π΄ΠΎ 750 мс Π² зависимости ΠΎΡ‚ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ) для провСдСния Π·Π°ΠΌΠ΅Ρ€Π°. Π£Π²Π΅Π»ΠΈΡ‡ΡŒΡ‚Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π² ΠΊΠΎΠ΄Π΅ послС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ запуска ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ опрос статуса готовности Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°.

Π Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π»ΠΈ эти Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠΎΠ΄ Π²ΠΎΠ΄ΠΎΠΉ?

Π‘Π°ΠΌΠΈ ΠΏΠΎ сСбС Π³ΠΎΠ»Ρ‹Π΅ Ρ‡ΠΈΠΏΡ‹ DS18B20 Π½Π΅ Π²ΠΎΠ΄ΠΎΠ½Π΅ΠΏΡ€ΠΎΠ½ΠΈΡ†Π°Π΅ΠΌΡ‹. Однако ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² Π³Π΅Ρ€ΠΌΠ΅Ρ‚ΠΈΡ‡Π½Ρ‹Ρ… мСталличСских ΠΈΠ»ΠΈ пластиковых корпусах (часто Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ Π±ΠΎΠ»Ρ‚ ΠΈΠ»ΠΈ Ρ†ΠΈΠ»ΠΈΠ½Π΄Ρ€ Π½Π° ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π΅), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для погруТСния Π² Π²ΠΎΠ΄Ρƒ, Π°ΠΊΠ²Π°Ρ€ΠΈΡƒΠΌΡ‹ ΠΈΠ»ΠΈ систСмы отоплСния. ΠžΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ элСктронныС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π±Π΅Π· Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π²ΠΎΠ΄ΠΎΠΉ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½Ρ‹ ΠΈΠ· строя ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ.