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

Цэнхэр чийдэн байхгүй: 4 алхам
Цэнхэр чийдэн байхгүй: 4 алхам

Видео: Цэнхэр чийдэн байхгүй: 4 алхам

Видео: Цэнхэр чийдэн байхгүй: 4 алхам
Видео: РАЗДАЕТ WIFI СЛЕДИТ ЗА ЧЕЛОВЕКОМ 4G камера видеонаблюдения 2024, Долдугаар сарын
Anonim
Цэнхэр чийдэн байхгүй
Цэнхэр чийдэн байхгүй
Цэнхэр чийдэн байхгүй
Цэнхэр чийдэн байхгүй
Цэнхэр чийдэн байхгүй
Цэнхэр чийдэн байхгүй
Цэнхэр чийдэн байхгүй
Цэнхэр чийдэн байхгүй

Тиймээс энэ Lazy Old Geek (L. O. G.) нь Blue Light төсөл дээр ажиллаж байна.

www.instructables.com/id/Blue-Light-Projec…

www.instructables.com/id/Blue-Light-Projec…

Дараагийн алхамд би өдрийн цагаар гэрэлтэй, орой/шөнө цэнхэр гэрэлгүй чийдэн авахыг хүсч байсан.

Дизайн тоног төхөөрөмж:

Би гэрлийн өөрчлөлт хийх цагийг хянахын тулд RTC (Real Time Clock) ашиглахаар шийдсэн.

DS1307 -ээс илүү нарийвчлалыг хадгалах цаг илүү сайн байдаг тул би DS3231 -ийг сонгосон. DS3231 нь 5v эсвэл 3.3v байж болно.

Гэрлийн хувьд би WS2812B LED утсыг ашиглах болно. Эдгээр нь энгийн гурван утастай интерфэйс, хянах боломжтой улаан, ногоон, цэнхэр LED -тэй. WS2812B бол 5V төхөөрөмж юм.

Микроконтроллерын хувьд би 5V 16MHz Pro Micro ашиглах болно.

WS2812B нь 3.3V -тэй ажиллах боломжтой боловч 5V Arduino ашиглах нь дээр.

Pro Micro бол Atmega32U4 микроконтроллер ашигладаг хямд Arduino юм.

Лампыг асаах, унтраахын тулд асаах/унтраах товчлууртай болно.

Гэрэлтүүлгийг хянах потенциометр байх болно.

Дизайн програм хангамж:

DS3231 RTC нь цагийг хянадаг, зайны нөөцтэй тул цахилгаан тасарсан ч гэсэн цагийг хадгалах ёстой.

Өдрийн турш бүх RGB LED -ийг асааж, тогоонд бүрэн эрчимжүүлж хянах боломжтой.

Орой эрт цэнхэр LED нь унтрах бөгөөд улаан, ногоон нь хамгийн ихдээ асах болно.

Орой болоход Улаан, Ногоон LED -ууд буурч, Улаан өнгийг Ногооноос илүүд үздэг (2 -р хэсэгт хийсэн миний туршилт нь Ногоон LED -д цэнхэр өнгөтэй байгааг харуулж байна).

Оройн 10 цагийн орчим. бүх LED унтрах болно.

АСУУДАЛ:

DS3231 RTC модуль руу буцаж очоод би Aliexpress -аас бусад бүрэлдэхүүн хэсгүүдийн адил худалдаж авсан.

Эдгээр нь LIR2032 цэнэглэдэг батерейтай ажиллах, цэнэглэх ёстой. Би үүнийг туршиж үзсэн. Ойролцоогоор нэг өдрийн дараа батерей нь дууссан байв.

Интернет дээр нэлээд хайсны эцэст би энэ нийтлэлийг оллоо.

www.onetransistor.eu/2019/07/zs042-ds3231-…

Би энэ дүн шинжилгээтэй санал нэг байна, гэхдээ LIR2032 нь хангалттай цэнэглэх боловч хэт их биш гэж бодсон. Миний буруу байсан бололтой. Миний DS3231-ийг ZS-042 гэж тэмдэглэсэн боловч нийтлэлд бичсэн шиг арай өөр байсан боловч бараг ижил байв. Тиймээс би зураг дээр үзүүлсэн диодыг гагнахгүй, CR2032 батерейг суулгасан. Диодгүйгээр модуль нь батерейг цэнэглэхийг оролдохгүй. Одоо DS3231 нь цахилгаан тасарсан ч гэсэн зөв цагийг барьж чаддаг бөгөөд батерей нь олон жилийн турш сайн байх ёстой.

Эрчим хүчний шаардлага:

WS2812B бол заримдаа NeoPixels гэж нэрлэгддэг RGB LED хэлхээ юм. NeoPixel бүр хамгийн ихдээ 60mA шаарддаг. Би 12 Neo пиксел ашиглаж байгаа тул 0.72A хэрэгтэй. Би 2А USB адаптер ашиглаж байгаа тул маш их гүйдэлтэй байна.

Алхам 1: BlueLamp ПХБ

BlueLamp ПХБ
BlueLamp ПХБ
BlueLamp ПХБ
BlueLamp ПХБ

Миний хийдэг шиг би Eagle Cadsoft (одоо Autodesk) үнэгүй програм хангамжийг ашиглан ПХБ -ээ байрлуулж, үүсгэсэн.

www.autodesk.com/products/eagle/free-downl…

Eagle -ийн схем ба самбарын файлуудыг схемд хавсаргасан болно.

Схем, 330 ом эсэргүүцэл ба 10,000uFd конденсаторын талаархи нэг тайлбар бол Adafruit -ийн неопикселийн гарын авлагын зөвлөмж юм.

learn.adafruit.com/adafruit-neopixel-uberg…

Миний ашиглаж байсан "Бамбарын товчлуур" товчлуурыг эндээс авсан болно.

www.aliexpress.com/item/32904942704.html?s…

Эндээс авсан 10K (B103) потенциометр:

www.aliexpress.com/item/32672253655.html?s…

Алхам 2: чийдэнг угсрах

Дэнлүүг угсрах
Дэнлүүг угсрах
Дэнлүүг угсрах
Дэнлүүг угсрах

Би худалдаж авсан дэнлүүнийхээ хүнд суурийг олж авсан юм. Үүн дээр том дугуй зүү байсан. Би дээр нь таарсан PVC хоолой авсан. Энэ нь бага зэрэг сул байсан тул би боолт, хэд хэдэн самар авлаа. (зургийг үз)

WS2812B -ийг таны хүссэн NeoPixels -ийн тоогоор бууруулах боломжтой. Миний худалдаж авсан тууз нь NeoPixels -ийн хооронд өргөн зайтай байна. Би үүнийг илүү гэрэл гэгээтэй болгохыг хүссэн тул NeoPixel -ийн хоёр 6 туузыг хайчилж, тэдгээрийг хооронд нь зэрэгцүүлэн байрлуулсан. WS2812B туузыг NeoPixels -ийн хооронд огтлох боломжтой. Энэ тохиолдолд надад 180 градусын өөрчлөлт хэрэгтэй байсан тул туузыг хайчилж, хооронд нь холбогч утас ажиллуулав. Хэрэв та үүнийг хийх юм бол дохио болон чиглүүлэх сум зөв эсэхийг шалгаарай. (Зургийг үзнэ үү)

Энэхүү WS2812B нь утас, холбогчтой байдаг (хэрэв та үүнийг өөр газар ашиглахыг хүсвэл энэ холбогч нь JST-SM 3pin холбогч юм). Энэ холбогч аль хэдийн байсан тул би утаснуудаа ПХБ -д гагнав. Энэ WS2812B -ийн хувьд улаан утас нь 5v, ногоон нь дохио, цагаан нь газардуулгатай.

Би ПХБ хийснийхээ дараа ёроолд нь соронзон хальс тавьж, сууринд нь наалаа. Дараа нь би Pro Micro болон DS3231 -ийг залгасан.

Алхам 3: Arduino Sketch

Ардуино эскиз
Ардуино эскиз

Би Aliexpress.com -аас Pro Micro худалдаж авсан боловч Arduino -г ажиллуулахын тулд дараах мэдээллийг ашигласан.

learn.sparkfun.com/tutorials/pro-micro--fi…

DS3231 -ийн номын санг суулгахын тулд би үүнийг ашигладаг:

github.com/PaulStoffregen/DS1307RTC

Zip файлыг татаж авах

Arduino -г нээгээд 'Sketch' 'Номын сан оруулах' '.zip номын сан нэмэх' -ийг сонгоно уу.

Үүнтэй ижил аргыг ашиглан дараахь зүйлийг суулгана уу

Цагийн номын сан PaulStoffregen

github.com/PaulStoffregen/Time

Цагийн бүсийн номын сан

github.com/JChristensen/Timezone

Дууссаны дараа Arduino -г эхлүүлнэ үү.

Багаж самбар дээр "Sparkfun Pro Micro" -г сонгоно уу.

Хэрэгслүүд дээр дахин дарна уу, процессорын сонголт байх болно

Та үүнийг "Atmega32U4 (5V 16Mhz)" өөрчлөх хэрэгтэй болж магадгүй юм.

АНХААРУУЛГА: Хэрэв та над шиг хайхрамжгүй хандвал би "Atmega32U4 (3.3V 8Mhz)" -ийг андуурч сонгосон. Үүнийг "тоосго хийсэн" тул Arduino үүнийг харж чадахгүй байв. Би ихэвчлэн шинэ зүйлийг олж авахаасаа өмнө уншиж, энэ явдлын талаар санаж байхыг хичээдэг.

learn.sparkfun.com/tutorials/pro-micro--fi…

Энэхүү гарын авлагад "" Bricked "Pro Micro -ийг хэрхэн яаж сэргээх вэ" гэсэн хэсэг бий. Үүнийг дурьдсанчлан энэ нь маш хэцүү процедур боловч би өөрийнхөө уур амьсгалыг сэргээж чадсан юм.

Мэдээлэл: Хэрэв та яагаад өөр өөр хүчдэл, хурдтай хоёр хувилбар байдаг юм бол гэж гайхаж байгаа бол Atmega32U4 (Atmega328 -тай адил) нь 16 МГц давтамжтай 5В хүчдэл дээр сайн ажиллах болно. Гэхдээ 3.3V хүчдэлийн дизайны дагуу 16 МГц -ийн цаг ажиллахгүй, тиймээс тэд 8 МГц давтамжтай байдаг. Ерөнхийдөө Arduino програм хангамж нь цаг хугацааны аливаа асуудлыг шийдвэрлэх болно.

RTC TIP: DS1307 -д зориулагдсан ихэнх програм хангамж нь ижил төстэй програм хангамжтай тул DS3231 -тэй ажиллах болно.

Зуны цагийн хуваарь

За, би DST -ийг хэрэгжүүлэхийг хүсч байсан тул дэнлүүгээ жилд хоёр удаа дахин програмчлах шаардлагагүй болсон. Би үүн дээр хэдэн өдөр ажилласан. Time, TimeLib, RTClib хэрхэн ажилласан талаар би сайн энгийн тайлбар олж чадсангүй.

Би IPClock -д зориулж зарим DST кодыг бичсэн:

www.instructables.com/id/NO-MORE-SPRING-FO…

Энэ нь интернетийн цагаар ажилласан боловч би үүнийг RTC цагт ажиллуулж чадсангүй.

Эцэст нь би Ж. Кристенсений хэлсэн зүйлийг даван тууллаа.

forum.arduino.cc/index.php?topic=96891.0

github.com/JChristensen/Timezone

Үүнийг ашиглахын тулд та эхлээд RTC -ийг UTC (Coordinated Universal Time) болгож тохируулах ёстой бөгөөд энэ нь Английн Гринвич хотод болно. За, үүнийг яаж хийхээ мэдэхгүй байсан ч энэ нийтлэлийг оллоо:

www.justavapor.com/archives/2482

Үүнийг уулын цагаар дахин бичнэ үү (хавсаргасан) UTCtoRTC.ino

Дараа нь би цагийн бүсээ Sketch -т оруулсан болно. Үнэнийг хэлэхэд би үүнийг туршиж үзээгүй, энэ нь зүгээр л ажилладаг гэж бодож байна.

Миний ноорогыг MTS_BlueLamp.ino хавсаргав.

Алхам 4: Дүгнэлт

Дүгнэлт
Дүгнэлт

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

Үндсэндээ энэ дэнлүүнд маш их баяртай байна. Өдрийн цагаар бүрэн гэрэл гэгээтэй, орой, шөнө цэнхэр өнгөтэй байдаггүй.

Надад таалагдахгүй байгаа нэг зүйл бол би үүнийг оройн 10 цагаас хойш ашиглах боломжгүй юм. мөн өглөөний 5 цагаас өмнө

Би ердийн тохируулагчийг ашигладаг тул асаах/унтраах горимыг ашигладаггүйг олж мэдсэн.

Ирээдүйд би ноорогоо дахин бичиж товчлуурыг хуваарьт эсвэл төлөвлөөгүй (бүрэн асаах) унтраалга болгон өөрчилж болно. Гэхдээ кодлох чадвар муу байгаа болохоор би жаахан хүлээх байх.

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