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

RTC ашиглан тарьсан аквариумын автомат LED гэрэлтүүлэг: 5 алхам (зурагтай)
RTC ашиглан тарьсан аквариумын автомат LED гэрэлтүүлэг: 5 алхам (зурагтай)

Видео: RTC ашиглан тарьсан аквариумын автомат LED гэрэлтүүлэг: 5 алхам (зурагтай)

Видео: RTC ашиглан тарьсан аквариумын автомат LED гэрэлтүүлэг: 5 алхам (зурагтай)
Видео: #17 Таймер плановой работы DS3231 RTC | Внешний ПЛК Arduino 2024, Долдугаар сарын
Anonim
Image
Image
RTC - Бодит цагийн цаг
RTC - Бодит цагийн цаг

Хэдэн жилийн өмнө би тарьсан аквариум байгуулахаар шийдсэн. Тэр аквариумуудын гоо үзэсгэлэн надад маш их таалагдсан. Би аквариум байгуулахдаа хийх ёстой бүх зүйлээ хийсэн боловч нэг чухал зүйлийг үл тоомсорлов. Тэр зүйл бол гэрэлтүүлэг байсан. Хэдэн өдрийн турш бүх зүйл сайхан харагдаж байсан ч дараа нь замаг савны хаа сайгүй ургаж эхэлсэн бөгөөд ургамал тийм ч сайн байгаагүй. Бүх зүйлийг хэвийн байдалд оруулах нь маш хэцүү ажил юм.

Олон жилийн дараа би гэрэлтүүлэгт ач холбогдол өгч аквариумаа дахин байгуулахыг хүсч байна. Би интернет дээр судалгаа хийж, ургамал өдөрт 10-12 цагийн турш гэрэлд тасралтгүй өртөх шаардлагатай байгааг олж мэдсэн. Ургамал улаан, цэнхэр гэрлийн спектрт илүү их хариу үйлдэл үзүүлдэг болохыг би бас мэдсэн.

Заль мэх нь аквариум дотор байгалийг аль болох ойрхон дуурайх явдал юм. Би гэрлийг гараар асааж, унтрааж болох байсан ч яагаад автоматжуулж болохгүй гэж. Энэ нь хүний алдааг бууруулдаг. Тиймээс би LED гэрэлтүүлгийн системийг Arduino ашиглан автоматаар асааж, унтраахаар шийдсэн. Энэ нь гэрэлтүүлгийн хугацааг жигд болгодог бөгөөд энэ нь ургамалд шаардлагатай байдаг.

Миний танк дээр таг байх болно. Чийг нь электроникийн хамгийн том дайсан тул би савны гадна талд хяналтын самбар суурилуулахаар шийдлээ.

Эхэлцгээе!

Алхам 1: RTC - Бодит цагийн цаг

Төлөвлөгөө нь өдрийн тодорхой цагт LED -ийг асааж, унтраах явдал юм. LED нь бүрэн гэрэлтэж эхлэхгүй, харин үүний оронд тэгээс бүтэн гэрэлд нэг цагийн дотор хүрдэг. Энэ бол нар мандахыг дуурайх явдал юм. LED -ийг унтраахад мөн адил хамаарна.

Яг цагийг өгөх ажлыг Real Time Clock эсвэл RTC хийдэг. Millis () дээр RTC ашиглахын давуу тал нь яг нарийн цагийг шууд авах боломжтой юм. Түүнчлэн, RTC модуль нь өөрийн батерейг нөөцөлдөг. Тиймээс Arduino -ийг унтраасан эсвэл дахин тохируулсан байсан ч цаг алдахгүй. Энэ нь бидний хэрэглээнд төгс төгөлдөр болгодог.

Миний ашиглах модуль бол DS3231 IIC бодит цагийн цаг юм. Энэ нь I2C интерфэйсийг ашиглан Arduino -той харилцдаг. Би эндээс өөрийнхийг авсан.

Шаргуу ажилласан Rinky-Dinky Electronics-т баярлалаа. DS3231 номын санг эндээс татаж авна уу

Алхам 2: LED ба жолооч нар

LED ба жолооч нар
LED ба жолооч нар
LED ба жолооч нар
LED ба жолооч нар

Тарьсан аквариумын хувьд нэг галлон тутамд 2 ватт байдаг. Минийх бол 20 галлон сав бөгөөд би 10 ваттын хоёр LED ашиглах болно. Энэ нь санал болгож буй Ватт -ийн тал хувь нь гэдгийг би мэднэ, гэхдээ танк маань цонхны дэргэд маш их гэрэл нэвт шингэсэн байдаг. Би хэдэн долоо хоногийн турш тохиргоог туршиж, ургамлын ургалтыг хянаж, шаардлагатай бол LED нэмж оруулах болно.

Би Ebay -аас худалдаж авсан 6500K өнгөний температуртай LED -ийг ашиглаж байгаа нь ургамлын ургалтанд сайнаар нөлөөлж байна. Жагсаалтын дагуу урд талын хүчдэл 9-11В байх ёстой бөгөөд хамгийн их урагш 900 мА орчим байх ёстой. Би LED драйверуудыг зохих ёсоор нь захиалсан.

Яагаад жолооч нарыг ашиглах ёстой вэ?

Бид төгс ертөнцөд амьдардаггүй. Тиймээс гаралт нь оролтоос үргэлж бага байх болно. Тэгвэл алдагдсан хүч хаана байна? Энэ нь дулаан болж хувирдаг. LED -тэй ижил зүйл тохиолддог. Хагас дамжуулагч нь сөрөг температурын коэффициент (NTC) гэсэн утгатай бөгөөд температур нэмэгдэх тусам эсэргүүцэл нь буурдаг. LED нь бас хагас дамжуулагч юм. Түүний температур нэмэгдэх тусам эсэргүүцэл нь буурч эхэлдэг тул үүнээс дамжих гүйдэл нэмэгддэг. Энэ нь халаалтыг улам бүр нэмэгдүүлдэг. Энэ нь LED гэмтэх хүртэл үргэлжилнэ. Тиймээс бид тогтоосон хязгаараас хэтрэхгүй байхын тулд гүйдлийг хязгаарлах хэрэгтэй. Энэ ажлыг LED драйверууд гүйцэтгэдэг

Туршилтын явцад би 11V хүчдэлтэй LED нь зөвхөн 350mA зурж байгааг олж мэдсэн. Энэ нь хачин юм!

LED драйверийг тохируулах

Драйвер нь үндсэндээ гүйдлийн хязгаарлах чадвартай тогтмол гаралтын хүчдэл өгдөг төхөөрөмж юм. Тогтмол гүйдэл гаргадаг төрөл бүрийн LED драйверууд байдаг. Хэрэв та миний худалдаж авсантай ижил зүйлийг худалдаж авсан бол тохируулга хийх 3 савтай болно. Бид тэдний зөвхөн хоёрыг л анхаарч үздэг. Эхнийх нь хүчдэлийн тохируулгад зориулагдсан бөгөөд сүүлийнх нь одоогийн хязгаарыг тогтооход хэрэглэгддэг. Үүнийг тохируулахын тулд дараах алхмуудыг дагана уу.

  1. 12V DC тэжээлийг IN+ ба IN- гэж тэмдэглэсэн тээглүүрт холбоно. Туйлшралыг шалгана уу.
  2. Мультиметрийг OUT+ ба OUT- гэж тэмдэглэсэн тээглүүрт холбож, мультиметрийг хүчдэлийг уншихаар тохируулна уу.
  3. Мультиметр нь LED -ийн нэрлэсэн хүчдэлийг унших хүртэл хүчдэл тохируулах савыг эргүүлнэ үү. Миний хувьд 9-11В байна. Би 10.7 вольтыг сонгосон. (Бага зэрэг хохирол учруулахгүй).
  4. Одоо мултиметрийг одоогийн унших горимд оруулна уу. Түүгээр дамжин гүйдэл урсаж эхэлнэ. LED -ийн нэрлэсэн гүйдэл урсаж эхлэх хүртэл одоогийн тохируулах савыг эргүүлнэ.
  5. Ингээд л боллоо! Та одоо LED -ээ холбож болно.

Алхам 3: LED самбар хийх

LED самбар хийх
LED самбар хийх
LED самбар хийх
LED самбар хийх
LED самбар хийх
LED самбар хийх

Өмнө дурьдсанчлан би 10 ваттын хоёр LED, дөрвөн RGB LED туузыг ашиглахаар шийдсэн. Би туузыг улаан, цэнхэр өнгөнд ашиглах болно. Би аквариумынхаа бараг урттай хөнгөн цагаан хүрээ (цонх, хаалганы хүрээ хийхэд ихэвчлэн ашигладаг) ашигладаг байсан. Би LED -ийн халаагуур болж өгдөг тул би хөнгөн цагаан хүрээтэй явсан. Дулаан дамжуулагч нь маш их дулааныг ялгаруулдаг тул өндөр хүчдэлийн LED -ийн хувьд чухал ач холбогдолтой юм. Хэрэв байхгүй бол LED -ийн ашиглалтын хугацаа буурах болно. Энэ хооронд хөндий байгаа тул бүх утаснууд дотор нуугдаж, аюулгүй хэвээр үлдэх боломжтой.

Би бүх LED холболтыг зурган дээр үзүүлсэн шиг 6 терминал холбогч руу сунгасан. Энэ нь самбарыг дараагийн хийх хянагчтай холбоход хялбар болно.

Алхам 4: Хянагч хийх

Хянагч хийх
Хянагч хийх
Хянагч хийх
Хянагч хийх
Хянагч хийх
Хянагч хийх

Гол зорилго нь LED -ийг хэрэглэгчийн тогтоосон хугацаанд асаах, унтраах явдал юм. Хянагчийн тархи нь Arduino Nano юм. Яагаад зөвхөн гэрэлтүүлгийг хянах ёстой юм бэ? Би зарим реле байрлуулж байсан тул шаардлагатай бол шүүлтүүр, агаарын насос, халаагч гэх мэт зарим хэрэгслийг асаах, унтраах болно. Би агааржуулалтыг хангахын тулд 12V тогтмол гүйдлийн компьютерийн сэнс нэмсэн.

Гарын авлага ба автомат горимыг сонгохын тулд унтраалга өгдөг. Хэрэв бид шөнийн цагаар LED унтраагаад загасны сав руу орох шаардлагатай бол унтраагуурыг Гарын авлагын байрлал руу шилжүүлж, дараа нь LED -ийн гэрлийг Пот ашиглан хянаж болно.

Би реле болон сэнсийг удирдахын тулд ULN2803 Darlington Transistor Array IC ашигласан. Энэхүү IC нь ихэвчлэн буухиа жолооч гэж нэрлэдэг.

Барилга угсралтын схемийг энд хавсаргасан болно. Захиалгат ПХБ нь үүнийг цэвэр, мэргэжлийн харагдуулах болно.

Угсрах нүх, тагны хавтанг урьдчилан өрөмдсөн тул би самбарын хайрцгийг хянагчийн хашлага болгон ашиглахаар шийдсэн. Би эпокси цавуу ашиглан үүр бүрт самар наасан. Би эсрэг талдаа мөн адил зүйлийг хийсэн. Энэ нь ПХБ -ийг эрэг шургаар найдвартай бэхэлсэн эсэхийг шалгадаг. Зураг дээр үзүүлсэн шиг цахилгаан хайрцаг болон LED хавтан руу залгах утаснуудын хувьд би хайрцгийн доод хэсэгт жижиг нүх гаргав.

Алхам 5: Зарим код авах цаг боллоо

Зарим код авах цаг боллоо!
Зарим код авах цаг боллоо!
Зарим код авах цаг боллоо!
Зарим код авах цаг боллоо!
Зарим код авах цаг боллоо!
Зарим код авах цаг боллоо!

Хянагчийн самбарыг хийсний дараа үүнийг ажиллуулах цаг болжээ! Энд хавсаргасан тоймыг татаж аваад Arduino IDE дээр нээнэ үү. Энд хавсаргасан DS3231 номын санг татаж аваад суулгасан эсэхээ шалгаарай.

RTC -ийг тохируулах

  1. 2032 төрлийн зоосон зайг оруулна уу.
  2. Үзүүлсэн жишээнүүдээс DS3231_Serial_Easy -ийг нээнэ үү.
  3. 3 мөрийг тайлж, зураг дээр үзүүлсэн шиг цаг, огноог оруулна уу.
  4. Ноорогоо Arduino дээр байршуулаад цуваа дэлгэцийг нээнэ үү. Бодын хурдыг 115200 гэж тохируулна уу. Та 1 секунд тутамд үргэлжлэн сэргээгдэх цагийг харах боломжтой байх ёстой.
  5. Одоо Arduino -г салгаад хэдэн секундын дараа дахин залгаарай. Цуваа дэлгэцийг үзнэ үү. Энэ нь бодит цагийг харуулах ёстой.

Дууссан! RTC байгуулагдсан. Огноо, цагийг тохируулахын тулд энэ алхамыг зөвхөн нэг удаа хийх ёстой.

Та байршуулахаас өмнө

  • LED -ийн эхлэх хугацааг тохируулна уу.
  • LED -ийн зогсолтын хугацааг тохируулна уу.
  • Сэнсний эхлэх хугацааг тохируулна уу.
  • Сэнсний зогсох хугацааг тохируулна уу.

Жич: Цаг нь 24 цагийн форматтай байна. Үүний дагуу цагийг тохируулна уу

Өмнө дурьдсанчлан, LED нь бүрэн гэрэл асахгүй. Жишээлбэл, хэрэв та LED эхлэх хугацааг 10:00 гэж тохируулсан бол LED нь аажмаар асаж, 11:00 цаг хүртэл бүрэн гэрэлтэж, зогсох хүртэл тогтмол хэвээр байх болно. Энэ бол нар мандах, жаргахыг дуурайх явдал юм. Улаан, цэнхэр LED нь тогтмол байдаг. Тэд бүх хугацаанд бүрэн асаалттай хэвээр байна.

Үүнийг л тохируулах ёстой. Кодыг Arduino руу байршуулна уу. Одоо аквариумын гэрлээ асаах, унтраахаа мартах шаардлагагүй боллоо!

Би үүнийг тохируулж амжаагүй байгаа тул уг загасыг жинхэнэ савнаас нь авч чадахгүй байна. Би бүх зүйлийг суулгасны дараа зааварчилгаа өгөх болно.

Бүтээл танд таалагдсан гэж найдаж байна. Үүнийг өөрөө хийж, хөгжилтэй өнгөрүүлээрэй! Үргэлж сайжруулах орон зай, сурах зүйл их байдаг. Өөрсдийн санаагаа гаргаж ирээрэй.

Олон жилийн дараа би тарьсан аквариумыг дахин эхлүүлэх болно. Би энэ чиглэлээр мэргэшсэн хүн биш. Бүтээн байгуулалтын талаар санал хүсэлтээ чөлөөтэй илэрхийлнэ үү. Эцсээ хүртэл хамт байсанд баярлалаа.

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