Агуулгын хүснэгт:

Arduino UNO -тай DS18B20 мэдрэгчийн шалгалт тохируулга: 3 алхам (зурагтай)
Arduino UNO -тай DS18B20 мэдрэгчийн шалгалт тохируулга: 3 алхам (зурагтай)

Видео: Arduino UNO -тай DS18B20 мэдрэгчийн шалгалт тохируулга: 3 алхам (зурагтай)

Видео: Arduino UNO -тай DS18B20 мэдрэгчийн шалгалт тохируулга: 3 алхам (зурагтай)
Видео: Подключим к Arduino Датчик температуры DS18B20 2024, Долдугаар сарын
Anonim
DS18B20 мэдрэгчийн тохиргоог Arduino UNO -той хийсэн
DS18B20 мэдрэгчийн тохиргоог Arduino UNO -той хийсэн
DS18B20 мэдрэгчийн тохиргоог Arduino UNO -той хийсэн
DS18B20 мэдрэгчийн тохиргоог Arduino UNO -той хийсэн
DS18B20 мэдрэгчийн тохиргоог Arduino UNO -той хийсэн
DS18B20 мэдрэгчийн тохиргоог Arduino UNO -той хийсэн

АНХААРУУЛГА:

Зураг дээр үзүүлсэн төхөөрөмжийг өөр төсөлд кино боловсруулах процесст термостат болгон ашигладаг. Та энэ төслийг эндээс олж болно. Мэдрэгчийг нэгээс олон удаа тохируулахын тулд танд энэ төслөөс олох зүйл хэрэгтэй болно, үүнээс өөр зүйл байхгүй бөгөөд энэ нь бас энгийн зүйл юм! Явцгаая!

Алхам 1: Төхөөрөмжөө бэлтгэ

Төхөөрөмжөө бэлтгэ
Төхөөрөмжөө бэлтгэ

Энд танд хэрэгтэй зүйлсийн жагсаалт байна.

  1. Arduino UNO (эсвэл MEGA)
  2. DS18B20 мэдрэгч
  3. 4kOhm - 5kOhm эсэргүүцэл (би 5k1Ohm ашигласан)
  4. LCD дэлгэц нь утгыг унших боломжтой (та зөөврийн компьютер ашиглаж, сериал дэлгэц дээр унших боломжтой)
  5. Мэдрэгчийг ашиглаж, утгыг нь харуулсан тойм зураг

Юуны өмнө та модуль, мэдрэгчээ хянагчтай холбох хэрэгтэй. Би вэб дээр хайхын тулд LCD -ийн нарийн төвөгтэй хэсгийг орхиж, мэдрэгчийг хэрхэн холбохыг л хэлэх болно.

Ихэнхдээ эдгээр мэдрэгчүүд нь хар, улаан, шар гэсэн гурван өнгийн утастай байдаг. Эхний хоёр нь энерги, гурав дахь нь өгөгдөлд зориулагдсан болно. Харыг GNN, улааныг Vcc (5V), шарыг аналог оролт дээр A0 гэж хэлье.

Одоо шар, улаан хоёрын хоорондох эсэргүүцлийг холбож холболтыг дуусгана.

LCD -ийг бас залгаарай (i2c холболттой энгийн 16x2 LCD -ийг санал болгож, ердөө 4 утас ашиглах боломжтой).

Одоо ноорог нь маш энгийн:

#"OneWire.h" -ийг оруулна уу

#"DallasTemperature.h" оруулах #ONE_WIRE_BUS_1 A0 OneWire ourWire1 (ONE_WIRE_BUS_1) -ийг тодорхойлох; DallasTemperature sensor1 (& ourWire1); #"LiquidCrystal_I2C.h" -ийг оруулна уу

LiquidCrystal_I2C lcd (0x27, 16, 2); float RawValue = 0;

хүчингүй тохиргоо () {lcd.init (); lcd.backlight (); мэдрэгч 1. эхлэх (); sensor1.setResolution (11); } void loop () {sensor1.requestTemperatures (); float RawValue = sensor1.getTempCByIndex (0); lcd.setCursor (0, 0); lcd.print ("Мэдрэмж. 1"); lcd.хэвлэх (RawValue, 1); }

Таны харж байгаагаар бид Далласын температурын номын сан болон i2c холболттой LCD дэлгэцийг ашигладаг.

Тохиргоонд бид LCD болон мэдрэгчийг ажиллуулж, температурыг нь хүсдэг бөгөөд RawValue хувьсагчийн дотор утгыг хадгалж LCD дэлгэц дээр харуулдаг.

Хэрэв та үүнийг илүү энгийн байлгахыг хүсвэл доорх зургаар цуваа дэлгэцийг ашиглаарай

#"Wire.h" оруулах #"OneWire.h" оруулах #"DallasTemperature.h" оруулах #ONE_WIRE_BUS_1 A0 OneWire ourWire1 (ONE_WIRE_BUS_1) -ийг тодорхойлох; DallasTemperature sensor1 (& ourWire1);

float RawValue = 0;

хүчингүй тохиргоо () {

саатал (1000); Цуваа эхлэх (9600); мэдрэгч 1. эхлэх (); sensor1.setResolution (11);

}

void loop () {sensor1.requestTemperatures (); float RawValue = sensor1.getTempCByIndex (0); Serial.print ("Мэдрэмж. 1"); Serial.println (RawValue, 1); }

Мэдрэгчийг тохируулахын тулд одоо намайг төслийн цөмд дагаж мөрдөөрэй.

Алхам 2: Хоёр цэгийн шалгалт тохируулга

Хоёр цэгийн шалгалт тохируулга
Хоёр цэгийн шалгалт тохируулга
Хоёр цэгийн шалгалт тохируулга
Хоёр цэгийн шалгалт тохируулга
Хоёр цэгийн шалгалт тохируулга
Хоёр цэгийн шалгалт тохируулга

Юуны өмнө мэдэх ёстой зүйл

Дулааны мэдрэгчийг тохируулахын тулд та температурыг мэддэг зүйлээ хэмжих хэрэгтэй. Гэртээ хийх энгийн арга бол буцалж буй ус, хайлж буй мөсийг ашиглах явдал бөгөөд үүнийг "гурвалсан цэг" гэж нэрлэдэг. Ийм тохиолдолд ус далайн төвшинд 100 хэмд буцалдаг гэдгийг бид мэднэ. Нарийвчлалтай хэмжилт хийхийн тулд өндрөө мэдэж, зохих буцалгах температурыг тооцоолох ёстой гэдгийг санаарай.

Та эндээс шалгаж болно!

Үнэнийг хэлэхэд та өндрийг биш атмосферийн даралтыг шалгах хэрэгтэй. Гэхдээ энэ арга нь хангалттай үнэн зөв юм.

Гурвалсан банн буюу мөсөн банн нь ус, хатуу, шингэн, хий гэсэн гурван төлөвт байх температур бөгөөд энэ нь 0, 01 хэм байна. Бид хялбарчлахын тулд 0 ° C -ийг ашиглах болно.

Мэдрэгчийн уншиж буй утга, байх ёстой үнэ цэнийг мэдээд бид DS18B20 -ийн түүхий утгыг илүү зөв болгож өөрчлөх боломжтой.

ТАЙЛБАР: Итер (35 ° C), Пентан (36, 1 ° C), Ацетон (56 ° C) гэх мэт буцалгах цэгийг мэддэг өөр бодис руу оруулах замаар мэдрэгчийг тохируулахын тулд илүү их температур ашиглаж болно. Этанол (78, 37 ° C), гэхдээ эдгээр буцалж буй бодисууд нь өндөр шатамхай хий ялгаруулдаг! Тиймээс бүү хий!

Буцалж буй ус:

Бага зэрэг усыг саванд хийж буцалтал халаана (хийн бөмбөлгүүд үүсч, ус өөрөө өдөөгдөж байна). Мэдрэгчийг уснаас өөр зүйлд хүрэхгүй газарт дүрнэ. Хэдэн минут хүлээгээд lcd эсвэл цуваа дэлгэцийг уншина уу

Температур дор хаяж нэг минутын турш ижил байх ёстой. Хэрэв тийм бол энэ утгыг бичээрэй. Энэ бол таны: RawH өндөр үнэ цэнэ.

Гурван цэг бүхий ванн:

Одоо том шил аваад (танд асар том зүйл, тогоо хэрэггүй) мөсөн шоогаар хил хүртэл дүүргэ. Жижиг хэмжээтэй мөсөн шоо ашиглахыг хичээ. Одоо шилний 80% -ийг хүйтэн усаар дүүргэ. Хэрэв хөшүүрэг доошоо буухыг оролдвол мөсөөр дүүргэнэ.

Одоо мэдрэгчээ ус/мөсний дотор оруулаад нэг хагас минут хүлээнэ үү. Доод тал нь 30 секундын турш ижил байх ёстой температурыг уншаарай. Хэрэв тийм бол энэ нь таны RawLow үнэ цэнэ гэж бичээрэй.

Алхам 3: Олсон үнэт зүйлсээ зөв ашиглаарай

Тиймээс, одоо та хэд хэдэн чухал үнэт зүйлийг олж авлаа.

  • RawHigh
  • RawLow
  • Лавлагаа Өндөр
  • ReferenceLow

Лавлах утга нь буцалж буй усны хувьд 99.9 ° C (миний 22м өндөрт), хайлж буй мөсөн ваннд 0 ° C байх нь ойлгомжтой. Одоо эдгээр утгуудын хүрээг тооцоол.

  • RawRange = RawHigh - RawLow
  • ReferenceRange = ReferenceHigh - ReferenceLow

Энэ мэдрэгчийг өөр ямар ч төсөлд ашиглахад бэлэн байгаа бөгөөд энэ нь танд зөв хэмжилт өгөх болно гэдэгт итгэлтэй байна. Яаж? Төсөлд эндээс авсан үнэ цэнийг ашиглан та энэ мэдрэгчийг ашиглан бүтээх болно.

Ирээдүйн төсөлдөө та энд уншсан утгыг ашиглах хэрэгтэй болно, би үүнийг энд ашиглаж байсан нэрээ ашиглан хийхийг санал болгож байна.

Void setup () хэсгийн өмнө хувьсагчдыг дараах байдлаар зарла.

float RawHigh = 99.6; float RawLow = 0.5; float ReferenceHigh = 99.9; float ReferenceLow = 0; float RawRange = RawHigh - RawLow; float ReferenceRange = ReferenceHigh - ReferenceLow;

Та мэдрэгчийг ашиглах бүрдээ дараах томъёог ашиглан Залруулсан утгыг тооцоолж болно.

float CorrectedValue = (((RawValue - RawLow) * ReferenceRange) / RawRange) + ReferenceLow;

RawValue бол мэдрэгчийн уншилт юм.

Ингээд л боллоо!

Одоо та DS18B20 мэдрэгч эсвэл ашиглах өөр мэдрэгчээ хэрхэн тохируулахаа мэддэг боллоо! Хөгжилтэй байгаарай!

Зөвлөмж болгож буй: