ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ DS18B20 ΠΊ Ардуино Нано

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

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ процСсс ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Arduino Nano ΠΈ Ρ‚Π΅Ρ€ΠΌΠΎΠ΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°. Π’Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ схСму, ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ распространСнных ошибок ΠΌΠΎΠ½Ρ‚Π°ΠΆΠ° ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄. ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡƒΠ΄Π΅Π»ΠΈΠΌ нюансам Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ ΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌΠΈ ограничСниями ΠΏΠ»Π°Ρ‚Ρ‹.

НачнСм с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ интСрфСйс обСспСчиваСт Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΠΏΠΎΠΌΠ΅Ρ…ΠΎΠ·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΡΡ‚ΡŒ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… сСнсоров. Π­Ρ‚ΠΎ позволяСт ΠΏΡ€ΠΎΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ Π»ΠΈΠ½ΠΈΠΈ связи Π±Π΅Π· ΠΏΠΎΡ‚Π΅Ρ€ΠΈ точности ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΠΉ. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ организация схСмы ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ β€” Π·Π°Π»ΠΎΠ³ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ вашСй систСмы Π² долгосрочной пСрспСктивС.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° оборудования ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния

ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ сборки ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас Π΅ΡΡ‚ΡŒ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹. Π’Π°ΠΌ потрСбуСтся сама ΠΏΠ»Π°Ρ‚Π° Arduino Nano, Π΄Π°Ρ‚Ρ‡ΠΈΠΊ DS18B20 (Π² корпусС TO-92 ΠΈΠ»ΠΈ Π²ΠΎΠ΄ΠΎΠ½Π΅ΠΏΡ€ΠΎΠ½ΠΈΡ†Π°Π΅ΠΌΠΎΠΉ капсулС), рСзистор 4.7 кОм ΠΈ макСтная ΠΏΠ»Π°Ρ‚Π° с ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°ΠΌΠΈ. ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ хотя Π±Ρ‹ ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта сдСлаСт ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ нСработоспособным.

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

ΠŸΡ€ΠΎΡ†Π΅ΡΡ установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ всСго ΠΏΠ°Ρ€Ρƒ ΠΌΠΈΠ½ΡƒΡ‚. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Π‘ΠΊΠ΅Ρ‚Ρ‡ β†’ ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ β†’ Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ Π² мСню IDE. Π’ строкС поиска Π²Π²Π΅Π΄ΠΈΡ‚Π΅ названия ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ установки для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ…. Π‘Π΅Π· этих ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² компилятор выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ скСтча.

  • πŸ› οΈ ΠŸΠ»Π°Ρ‚Π° Arduino Nano (ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π» ΠΈΠ»ΠΈ совмСстимая с Ρ‡ΠΈΠΏΠΎΠΌ CH340/FT232).
  • 🌑️ Π¦ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ DS18B20 (ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° распиновку вашСго экзСмпляра).
  • ⚑ РСзистор 4.7 кОм (критичСски Π²Π°ΠΆΠ΅Π½ для подтяТки Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…).
  • πŸ”Œ Π‘ΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΈ макСтная ΠΏΠ»Π°Ρ‚Π° для прототипирования.
  • πŸ’» ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ с установлСнной Arduino IDE вСрсии 1.8 ΠΈΠ»ΠΈ Π½ΠΎΠ²Π΅Π΅.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π”Π°Ρ‚Ρ‡ΠΈΠΊΠΈ DS18B20 Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ Π² Ρ€Π°Π·Π½Ρ‹Ρ… корпусах. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠΈΠ½ Π·Π° Ρ‡Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° Π½Π° корпусС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π±Ρ‹Ρ‚ΡŒ стСртой.

Π’Π°ΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄ сборкой. ΠŸΠ»ΠΎΡ…ΠΎΠΉ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ Π² Ρ†Π΅ΠΏΠΈ питания ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°ΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ показаниям Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€ для ΠΏΡ€ΠΎΠ·Π²ΠΎΠ½ΠΊΠΈ Π»ΠΈΠ½ΠΈΠΉ, Ссли Π΅ΡΡ‚ΡŒ сомнСния Π² качСствС ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΊΠΈ.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ распиновка

ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ΅ соСдинСниС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² β€” самый Π²Π°ΠΆΠ½Ρ‹ΠΉ этап. Π”Π°Ρ‚Ρ‡ΠΈΠΊ DS18B20 ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π°: зСмля (GND), ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ (VCC) ΠΈ линия Π΄Π°Π½Π½Ρ‹Ρ… (DQ). ΠŸΡ€ΠΈ использовании ΠΏΠ»Π°Ρ‚Ρ‹ Arduino Nano Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ строго ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ соотвСтствиС ΠΏΠΈΠ½ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ вывСсти устройство ΠΈΠ· строя.

Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт схСмы β€” ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ рСзистор. Он Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ установлСн ΠΌΠ΅ΠΆΠ΄Ρƒ Π»ΠΈΠ½ΠΈΠ΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ… DQ ΠΈ плюсом питания VCC. Номинал 4.7 кОм являСтся ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ для обСспСчСния стабной связи Π½Π° стандартных скоростях. Π‘Π΅Π· этого рСзистора ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» OneWire Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚.

Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Arduino Nano Ρ‡Π°Ρ‰Π΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΠΈΠ½ D2. Π­Ρ‚ΠΎ стандартноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ прСрываниями. Однако Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΠΎΡ€Ρ‚, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ строку Π² ΠΊΠΎΠ΄Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ 4.7 кОм?

РСзистор 4.7 кОм обСспСчиваСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ Ρ‚ΠΎΠΊ подтяТки для Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ логичСских ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ Π½Π° шинС OneWire. ИспользованиС рСзистора слишком большого Π½ΠΎΠΌΠΈΠ½Π°Π»Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 10 кОм) ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ"ΡΠΌΠ°Π·Ρ‹Π²Π°Π½ΠΈΡŽ" Ρ„Ρ€ΠΎΠ½Ρ‚ΠΎΠ² сигнала, Π° слишком ΠΌΠ°Π»ΠΎΠ³ΠΎ β€” ΠΊ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π²Ρ‹Ρ…ΠΎΠ΄Π° Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°.

Рассмотрим Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ соотвСтствия ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² для классичСской схСмы ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ:

ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚ DS18B20 Ѐункция Пин Arduino Nano Π¦Π²Π΅Ρ‚ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° (ΠΏΡ€ΠΈΠΌΠ΅Ρ€)
1 (GND) ЗСмля GND Π§Π΅Ρ€Π½Ρ‹ΠΉ
2 (DQ) Π”Π°Π½Π½Ρ‹Π΅ D2 (ΠΈΠ»ΠΈ любой Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ) Π–Π΅Π»Ρ‚Ρ‹ΠΉ
3 (VCC) ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅ +3.3-5Π’ 5V ΠšΡ€Π°ΡΠ½Ρ‹ΠΉ
- РСзистор ΠœΠ΅ΠΆΠ΄Ρƒ D2 ΠΈ 5V Π›ΡŽΠ±ΠΎΠΉ

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π²ΠΎΠ΄ΠΎΠ½Π΅ΠΏΡ€ΠΎΠ½ΠΈΡ†Π°Π΅ΠΌΡ‹ΠΉ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ Π² мСталличСском корпусС, Π±ΡƒΠ΄ΡŒΡ‚Π΅ остороТны. Π’ Ρ‚Π°ΠΊΠΈΡ… модСлях Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ часто являСтся Π·Π΅ΠΌΠ»Π΅ΠΉ, Π° Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅ β€” Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ. ВсСгда провСряйтС datasheet ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠ΄Π°Ρ‡Π΅ΠΉ напряТСния.

НаписаниС ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° скСтча

ПослС сборки схСмы ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ части. Код Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΈ ΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Arduino IDE состоит ΠΈΠ· Π΄Π²ΡƒΡ… основных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ: setup ΠΈ loop.

Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ setup ΠΌΡ‹ Π·Π°Π΄Π°Π΅ΠΌ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· UART (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ 9600 Π±ΠΎΠ΄) ΠΈ запускаСм процСсс поиска Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π° шинС. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° DallasTemperature Π±Π΅Ρ€Π΅Ρ‚ Π½Π° сСбя ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ Ρ‚Π°ΠΉΠΌΠΈΠ½Π³ΠΎΠ², Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ для ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° OneWire. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ лишь ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΈΠ½, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ.

#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);

sensors.begin;

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

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

Serial.println(sensors.getDeviceCount, DEC);

}

void loop(void) {

sensors.requestTemperatures;

float tempC = sensors.getTempCByIndex(0);

if(tempC!= -127.00) {

Serial.print("Π’Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Π°:");

Serial.print(tempC);

Serial.println(" C");

} else {

Serial.println("Ошибка чтСния");

}

delay(1000);

}

Ѐункция loop выполняСт цикличСский опрос. Команда sensors.requestTemperatures ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅Ρ‚ процСсс измСрСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΠΊΠΎΠ»ΠΎ 750 мс. ПослС этого ΠΌΡ‹ считываСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· getTempCByIndex(0), Π³Π΄Π΅ индСкс 0 ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ Π½Π° шинС.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ запуском

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

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ значСния -127.00. Π­Ρ‚ΠΎ стандартный ΠΊΠΎΠ΄ ошибки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ Π±Ρ‹Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹. Если Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π΅ ΠΏΠΎΡ€Ρ‚Π°, Π·Π½Π°Ρ‡ΠΈΡ‚, физичСскоС соСдинСниС Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΎ ΠΈΠ»ΠΈ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ нСисправСн.

Диагностика ΠΈ устранСниС нСисправностСй

Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ сборкС ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π§Π°Ρ‰Π΅ всСго ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с ситуациСй, ΠΊΠΎΠ³Π΄Π° Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π΅ ΠΏΠΎΡ€Ρ‚Π° вмСсто Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΡ‡Π΅Ρ€ΠΊΠΈ ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ -127.00. Π­Ρ‚ΠΎ прямой сигнал ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Arduino Nano Π½Π΅ Π²ΠΈΠ΄ΠΈΡ‚ устройство Π½Π° шинС.

ΠŸΠ΅Ρ€Π²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ рСзистора 4.7 кОм. МногиС Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ Π΅Π³ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ, полагаясь Π½Π° Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ подтяТку ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ нСдостаточно для ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ DS18B20. Π’Π°ΠΊΠΆΠ΅ стоит ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ питания: ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»ΡŽΡΠΎΠ²ΠΊΠ° ΠΌΠΎΠ³Π»Π° ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ сСнсор.

Если Ρƒ вас ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ нСсколько Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ², ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ всС ΠΈΠΌΠ΅ΡŽΡ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ адрСса. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° автоматичСски присваиваСт ΠΈΠΌ адрСса ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π½ΠΎ Π² слоТных систСмах ΠΈΠ½ΠΎΠ³Π΄Π° трСбуСтся ТСсткая привязка ΠΏΠΎ MAC-адрСсу. Для поиска адрСсов всСх устройств ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ DS18x20_Temperature ΠΈΠ· мСню ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

  • πŸ” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° Π² ΠΌΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅ (ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΌΠΎΠ³Π»ΠΈ Ρ€Π°Π·ΠΎΠ³Π½ΡƒΡ‚ΡŒΡΡ).
  • πŸ”Œ Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΈΠ½ D2 Π½Π΅ занят Π΄Ρ€ΡƒΠ³ΠΈΠΌ устройством ΠΈΠ»ΠΈ Π½Π΅ Π·Π°ΠΌΡ‹ΠΊΠ°Π΅Ρ‚ Π½Π° зСмлю.
  • πŸ“‰ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ напряТСниС Π½Π° Π»ΠΈΠ½ΠΈΠΈ VCC (Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΠΊΠΎΠ»ΠΎ 5Π’).
  • πŸ”„ ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ delay Π² Ρ†ΠΈΠΊΠ»Π΅ опроса.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π”Π»ΠΈΠ½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° Π±Π΅Π· экранирования ΠΌΠΎΠ³ΡƒΡ‚ Π»ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π°Π²ΠΎΠ΄ΠΊΠΈ. Если ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° Π΄Π»ΠΈΠ½Π½Π΅Π΅ 1 ΠΌΠ΅Ρ‚Ρ€Π°, рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΈΡ‚ΡƒΡŽ ΠΏΠ°Ρ€Ρƒ ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ сопротивлСниС ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ рСзистора Π΄ΠΎ 2-3 кОм.

ИспользованиС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ

Одно ΠΈΠ· Π³Π»Π°Π²Π½Ρ‹Ρ… прСимущСств ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° OneWire β€” Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ мноТСства устройств Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΏΠΈΠ½ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Π­Ρ‚ΠΎ позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ€Π°Π·Π²Π΅Ρ‚Π²Π»Π΅Π½Π½Ρ‹Π΅ сСти Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Π½ΠΎΠ³ΠΎ контроля, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для ΡƒΠΌΠ½ΠΎΠΉ Ρ‚Π΅ΠΏΠ»ΠΈΡ†Ρ‹ ΠΈΠ»ΠΈ систСмы ΠΊΠ»ΠΈΠΌΠ°Ρ‚-контроля Π² Π΄ΠΎΠΌΠ΅.

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с нСсколькими Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ скСтча. ВмСсто обращСния ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ индСксу, Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎ всСм Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΌ устройствам. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° DallasTemperature прСдоставляСт ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для получСния количСства устройств ΠΈ ΠΈΡ… адрСсов.

πŸ“Š Бколько Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ?
1
2-5
5-10
Π‘ΠΎΠ»Π΅Π΅ 10

Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ setup ΠΌΠΎΠΆΠ½ΠΎ вывСсти список всСх ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… адрСсов Π² консоль. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ физичСскоС располоТСниС Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² с ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌΠΈ индСксами. АдрСса ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ числа, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‡ΠΈΠΏΠ°.

ΠŸΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ количСства устройств Π½Π° шинС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ внСшнСС ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅. ВстроСнный рСгулятор напряТСния Arduino Nano ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с Ρ‚ΠΎΠΊΠΎΠΌ потрСблСния дСсяти ΠΈ Π±ΠΎΠ»Π΅Π΅ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, особСнно Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π°Ρ‡Π°Π»Π° измСрСния.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π±ΠΎΠ»Π΅Π΅ 5 Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшний источник питания 5Π’, соСдинив ΠΈΡ… Π·Π΅ΠΌΠ»ΠΈ с Π·Π΅ΠΌΠ»Π΅ΠΉ Arduino.

Код для опроса массива Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² выглядит Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ слоТнСС, Π½ΠΎ остаСтся понятным. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ†ΠΈΠΊΠ» for, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ iterates ΠΎΡ‚ 0 Π΄ΠΎ sensors.getDeviceCount. Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρƒ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ индСкса ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ.

ΠŸΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ точности ΠΈ быстродСйствия

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° DS18B20 составляСт 12 Π±ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π΄ΠΎ 0.0625Β°C. Однако врСмя ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ составляСт 750 мс. Если Π²Π°ΠΌ Π²Π°ΠΆΠ½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ систСмы, Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ Π΄ΠΎ 9 Π±ΠΈΡ‚, сократив врСмя опроса Π΄ΠΎ 93.75 мс.

Для измСнСния Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ функция setResolution. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² систСмах Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π³Π΄Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π² ΠΏΠΎΡ‡Ρ‚ΠΈ сСкунду нСдопустима. Однако стоит ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ сниТСниС Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΠΉ.

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ аспСкт β€” ΠΏΠ°Ρ€Π°Π·ΠΈΡ‚Π½ΠΎΠ΅ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅. Π”Π°Ρ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠ½Π΅Ρ€Π³ΠΈΡŽ, Π·Π°ΠΏΠ°ΡΠ΅Π½Π½ΡƒΡŽ Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ Смкости Π²ΠΎ врСмя логичСской Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ Π½Π° Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎΡ‚ Ρ€Π΅ΠΆΠΈΠΌ называСтся"parasite power". Он позволяСт ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ двумя ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°ΠΌΠΈ, Π½ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ систСму ΠΊΡ€Π°ΠΉΠ½Π΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΊ Π΄Π»ΠΈΠ½Π΅ Π»ΠΈΠ½ΠΈΠΈ ΠΈ ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌ.

ΠœΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρ€Π΅Ρ…ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ с внСшним ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ DS18B20 ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ достаточный Ρ‚ΠΎΠΊ для провСдСния Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ, нСзависимо ΠΎΡ‚ состояния ΡˆΠΈΠ½Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Π‘Ρ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ систСмы Π²Π°ΠΆΠ½Π΅Π΅ экономии ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°.

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

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

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 85.00Β°C β€” это состояниС"Power-On Reset". Π”Π°Ρ‚Ρ‡ΠΈΠΊ Π΅Ρ‰Π΅ Π½Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ измСрСния Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π­Ρ‚ΠΎ происходит, Ссли Π²Ρ‹ считываСтС Π΄Π°Π½Π½Ρ‹Π΅ сразу послС ΠΏΠΎΠ΄Π°Ρ‡ΠΈ питания, Π½Π΅ Π΄Π°Π² Π΅ΠΌΡƒ врСмя Π½Π° ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΡŽ. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ΠΌ.

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

ВСорСтичСски, Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… условиях ΠΈ Π½Π° ΠΎΡ‡Π΅Π½ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… дистанциях связь ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ. Однако Ρ€Π°Π±ΠΎΡ‚Π° Π±Π΅Π· ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ рСзистора 4.7 кОм ΠΊΡ€Π°ΠΉΠ½Π΅ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π° ΠΈ зависит ΠΎΡ‚ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ΠΈ ΠΏΠΎΠΌΠ΅Ρ…. РСзистор обязатСлСн для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° OneWire.

Какова максимальная Π΄Π»ΠΈΠ½Π° ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° для DS18B20?

ΠŸΡ€ΠΈ использовании качСствСнного экранированного кабСля (витая ΠΏΠ°Ρ€Π°) ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ рСзистора Π΄Π»ΠΈΠ½Π° Π»ΠΈΠ½ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ 50-100 ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². Для ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΌΠΎΠ½Ρ‚Π°ΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² Π² Π²ΠΎΠ·Π΄ΡƒΡ…Π΅ надСТная Ρ€Π°Π±ΠΎΡ‚Π° гарантируСтся Π½Π° расстояниях Π΄ΠΎ 10-15 ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Arduino Nano Π½Π΅ опрСдСляСтся Π² ΠΏΠΎΡ€Ρ‚Π°Ρ…?

Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, Π² вашСй ΠΏΠ»Π°Ρ‚Π΅ установлСн китайский USB-UART ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€ CH340. Π’Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ для этого Ρ‡ΠΈΠΏΠ°. Π”Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΠ΄ΡƒΡ‚ Π½Π° дискС с ΠΏΠ»Π°Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ Π»Π΅Π³ΠΊΠΎ находятся Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ ΠΏΠΎ запросу"CH340 driver".