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

DIY ухаалаг LED диммерийг Bluetooth -ээр удирддаг: 7 алхам
DIY ухаалаг LED диммерийг Bluetooth -ээр удирддаг: 7 алхам

Видео: DIY ухаалаг LED диммерийг Bluetooth -ээр удирддаг: 7 алхам

Видео: DIY ухаалаг LED диммерийг Bluetooth -ээр удирддаг: 7 алхам
Видео: 25 крутых изобретений в области личного транспорта | Дизайн автомобиля 2024, Долдугаар сарын
Anonim
DIY ухаалаг LED диммерийг Bluetooth -ээр удирддаг
DIY ухаалаг LED диммерийг Bluetooth -ээр удирддаг

Энэхүү зааварчилгаа нь ухаалаг тоон бүдэгрүүлэгчийг хэрхэн бүтээх талаар тайлбарласан болно. Диммер бол байшин, зочид буудал, бусад олон барилгад ашигладаг ердийн гэрлийн унтраалга юм. Хөнгөн унтраалгын хуучин хувилбарууд нь гар ажиллагаатай байсан бөгөөд ихэвчлэн гэрлийн түвшинг хянахын тулд эргэдэг унтраалга (потенциометр) эсвэл товчлууруудыг агуулдаг. Энэхүү заавар нь гэрлийн эрч хүчийг хянах хоёр арга бүхий дижитал бүдэгрүүлэгчийг хэрхэн бүтээх талаар тайлбарласан болно; ухаалаг гар утас болон физик товчлуурууд. Хоёр горим хоёулаа тасралтгүй ажиллах боломжтой бөгөөд ингэснээр хэрэглэгч товчлуур болон ухаалаг гар утасны аль алиных нь гэрэлтүүлгийг нэмэгдүүлэх эсвэл бууруулах боломжтой юм. Төслийг SLG46620V CMIC, HC-06 Bluetooth модуль, товчлуур, LED ашиглан хэрэгжүүлж байна.

SLG46620V CMIC -ийг ашиглах нь төслийн салангид хэсгүүдийг багасгахад тусалдаг. GreenPAK ™ IC нь жижиг хэмжээтэй бөгөөд олон талт бүрэлдэхүүн хэсгүүдтэй байдаг бөгөөд энэ нь дизайнерын бүрэлдэхүүн хэсгүүдийг багасгах, шинэ боломжуудыг нэмэх боломжийг олгодог. Нэмж дурдахад төслийн өртөг буурдаг.

SLG46620V нь SPI холболтын интерфейс, ХОУХ блок, FSM болон олон жижиг нэмэлт блокуудыг нэг жижиг чипт агуулдаг. Эдгээр бүрэлдэхүүн хэсгүүд нь хэрэглэгчийг Bluetooth төхөөрөмж эсвэл хананы товчлуураар удирдах боломжтой ухаалаг ухаалаг бүдэгрүүлэгч бүтээх, урт хугацааны бүдэгрүүлэлтийг дэмжих, микроконтроллер эсвэл үнэтэй эд ангиудыг ашиглахгүйгээр сонгомол шинж чанаруудыг нэмэх боломжийг олгодог.

Bluetooth -ээр удирддаг ухаалаг LED dimmer үүсгэхийн тулд уг шийдлийг хэрхэн програмчилсан болохыг ойлгоход шаардлагатай алхмуудыг бид доор тайлбарласан болно. Гэсэн хэдий ч хэрэв та програмчлалын үр дүнг авахыг хүсч байвал GreenPAK програмыг татаж аваад аль хэдийн дууссан GreenPAK дизайны файлыг үзнэ үү. GreenPAK Development Kit -ийг компьютер дээрээ залгаж, Bluetooth -ээр удирддаг ухаалаг LED dimmer үүсгэхийн тулд програмыг дарна уу.

Алхам 1: Төслийн онцлог ба интерфейс

Төслийн онцлог ба интерфейс
Төслийн онцлог ба интерфейс

Төслийн онцлог:

1. Хяналтын хоёр арга; гар утасны апп болон жинхэнэ товчлуурууд.

2. Гэрлийг асаах, унтраах гөлгөр байдал. Энэ нь хэрэглэгчийн нүдэнд илүү эрүүл байдаг. Энэ нь зочид буудал болон бусад үйлчилгээний салбаруудад илүү тансаг мэдрэмжийг төрүүлдэг.

3. Унтах горимын онцлог. Энэ нь энэ програмын нэмэлт үнэ цэнэ болно. Хэрэглэгч энэ горимыг идэвхжүүлэхэд гэрлийн тод байдал 10 минутын дотор аажмаар буурдаг. Энэ нь нойргүйдэлд өртсөн хүмүүст тусалдаг. Энэ нь хүүхдийн унтлагын өрөө, жижиглэнгийн дэлгүүрүүдэд бас ашигтай байдаг (хаах цаг).

Төслийн интерфэйс

Төслийн интерфэйс нь GreenPAK оролт болгон ашигладаг дөрвөн товчлууртай:

ON / OFF: гэрэл асаах / унтраах (зөөлөн эхлэх / зогсоох).

UP: гэрлийн түвшинг нэмэгдүүлэх.

Доош: гэрлийн түвшинг бууруулах.

Унтах горим: унтах горимыг идэвхжүүлснээр гэрлийн тод байдал 10 минутын хугацаанд аажмаар буурдаг. Энэ нь унтахаасаа өмнө хэрэглэгчдэд цаг өгч, гэрэл шөнөжингөө асахгүй байх баталгааг өгдөг.

Систем нь ХОУХ -ны дохиог гаргадаг бөгөөд үүнийг гадаад LED болон унтах горимын LED заагч руу дамжуулдаг.

GreenPAK загвар нь 4 үндсэн блокоос бүрдэнэ. Эхнийх нь Bluetooth модулийн өгөгдлийг хүлээн авч, захиалга гаргаж, хяналтын хэсэгт илгээдэг UART хүлээн авагч юм. Хоёрдахь блок бол UART хүлээн авагч эсвэл гаднах товчлууруудаас ирсэн захиалгыг хүлээн авдаг хяналтын хэсэг юм. Хяналтын хэсэг нь шаардлагатай үйлдлийг шийддэг (асаах/унтраах, нэмэгдүүлэх, бууруулах, унтах горимыг идэвхжүүлэх). Энэ нэгжийг LUTs ашиглан хэрэгжүүлдэг.

Гурав дахь блок нь CLK генераторыг нийлүүлдэг. Энэхүү төсөлд FSM тоолуурыг ХОУХ -ийг хянахад ашигладаг. 3 давтамж (өндөр, дунд, бага) өгсөн дарааллын дагуу FSM -ийн утга өөрчлөгдөх болно (дээш, доош). Энэ хэсэгт гурван давтамжийг үүсгэх бөгөөд шаардлагатай CLK нь шаардлагатай дарааллын дагуу FSM рүү дамжих болно; Асаах/унтраах үед өндөр давтамж FSM рүү зөөлөн эхлүүлэх/зогсооход шилждэг. Бүдэгрүүлэх үед дунд давтамж дамждаг. Бага давтамж нь FSM -ийн утгыг аажмаар бууруулахын тулд унтах горимд ордог. Дараа нь гэрлийн тод байдал аажмаар буурдаг. Дөрөв дэх блок бол гадаад LED -ийн импульс үүсгэдэг ХОУХШ -ийн нэгж юм.

Алхам 2: GreenPAK дизайн

GreenPAK-ийг ашиглан dimmer бүтээх хамгийн сайн арга бол 8 битийн FSM болон PWM-ийг ашиглах явдал юм. SLG46620 -д FSM1 нь 8 бит агуулдаг бөгөөд үүнийг PWM1 ба PWM2 -тэй ашиглах боломжтой. Bluetooth модулийг холбох ёстой бөгөөд энэ нь SPI зэрэгцээ гаралтыг ашиглах ёстой гэсэн үг юм. SPI зэрэгцээ гаралтын бит биткүүд нь 0-7 холболтыг DCMP1, DMCP2, LF OSC CLK, OUT1, OUT0 OSC гаралттай хослуулдаг. PWM0 нь гаралтыг FSM0 (16 бит) -ээс авдаг. FSM0 255 дээр зогсдоггүй; энэ нь 16383 хүртэл нэмэгддэг. Тоолуурын утгыг 8 битээр хязгаарлахын тулд өөр FSM нэмэгддэг; Тоолуур нь 0 эсвэл 255 хүрэх үед FSM1 -ийг заагч болгон ашигладаг. FSM0 нь ХОУХ -ны импульс үүсгэхэд ашиглагддаг. Хоёр FSM -ийн утгыг ижил утгатай болгохын тулд нэгэн зэрэг өөрчлөх ёстой тул дизайн нь арай төвөгтэй болж, хоёуланд нь FSM -т урьдчилан тодорхойлсон, хязгаарлагдмал, сонгож болох CLK байдаг. CNT1 ба CNT3 нь CLK -ийг хоёуланд нь дамжуулахад зуучлагчаар ашиглагддаг.

Дизайн нь дараахь хэсгүүдээс бүрдэнэ.

- UART хүлээн авагч

- Хяналтын хэсэг

- CLK генератор ба мультиплексор

- ХОУХ

Алхам 3: UART хүлээн авагч

UART хүлээн авагч
UART хүлээн авагч

Нэгдүгээрт, бид HC06 Bluetooth модулийг тохируулах хэрэгтэй. HC06 нь харилцаа холбооны UART протоколыг ашигладаг. UART нь бүх нийтийн асинхрон хүлээн авагч / дамжуулагч гэсэн утгатай. UART нь өгөгдлийг зэрэгцээ ба цуваа формат хооронд нааш цааш нь хөрвүүлэх боломжтой. Үүнд зэрэгцээ хүлээн авагч болон цуваа хөрвүүлэгчтэй зэрэгцээ оруулдаг бөгөөд хоёуланг нь тус тусад нь хянадаг. HC06 -д хүлээн авсан өгөгдлийг манай GreenPAK төхөөрөмжид дамжуулах болно. Pin 10 -ийн идэвхгүй байдал нь өндөр байна. Илгээсэн тэмдэгт бүр LOW эхлэх битийн логикоор эхэлж, дараа нь тохируулагдах тооны өгөгдлийн битүүд болон нэг буюу хэд хэдэн логик HIGH stop битүүдээр эхэлдэг.

HC06 нь 1 START бит, 8 өгөгдлийн бит, нэг STOP бит илгээдэг. Үндсэн өгөгдлийн хурд нь 9600. Бид HC06 -аас өгөгдлийн байтыг GreenPAK SLG46620V -ийн SPI блок руу илгээх болно.

SPI блок нь START эсвэл STOP битийн удирдлагагүй тул эдгээр битүүдийг SPI цагийн дохиог (SCLK) идэвхжүүлэх, идэвхгүй болгоход ашигладаг. Пин 10 -ыг ХААГААХ үед IC нь START битийг хүлээн авсан тул бид харилцаа холбооны эхлэлийг тодорхойлохын тулд PDLY -ийн уналтын ирмэгийн детекторыг ашигладаг. Энэхүү унаж буй ирмэг илрүүлэгч нь DFF0 цагийг ашигладаг бөгөөд энэ нь SCLK дохиог SPI блокыг хянах боломжийг олгодог.

Бидний дамжуулах хурд секундэд 9600 бит байдаг тул бидний SCLK хугацаа 1/9600 = 104 µs байх шаардлагатай. Тиймээс бид OSC давтамжийг 2 МГц болгож, CNT0 -ийг давтамж хуваагч болгон ашигласан.

2 МГц - 1 = 0.5 микс

(104 µs / 0.5 µs) - 1 = 207

Тиймээс бид CNT0 тоолуурын утгыг 207 болгохыг хүсч байна. Мэдээллийг алдахгүй байхын тулд SPI цагийг хагас цагийн мөчлөгийн хоцролтыг нэмж, ингэснээр SPI блокыг зөв цагт нь тааруулж байна. Үүнийг CNT6, 2 битийн LUT1, OSC блокийн гадаад цаг ашиглан гүйцэтгэдэг. CNT6 -ийн гаралт нь DFF0 -ийг цагжуулсны дараа 52 µs хүртэл өндөрт гарахгүй бөгөөд энэ нь бидний SCLK хугацааны 104 µs -ийн яг тал хувь юм. Өндөр болоход 2 битийн LUT1 AND хаалга нь 2 МГц давтамжтай OSC дохиог EXT руу дамжуулах боломжийг олгодог. CLK0 оролт, гаралт нь CNT0 -тэй холбогдсон байна.

Алхам 4: Хяналтын хэсэг

Хяналтын нэгж
Хяналтын нэгж

Энэ хэсэгт командыг UART хүлээн авагчаас хүлээн авсан байтын дагуу эсвэл гадаад товчлууруудын дохионы дагуу гүйцэтгэх болно. 12, 13, 14, 15 -р зүүг оролт болгон эхлүүлж, гадаад товчлууруудтай холбодог.

Зүү бүр нь OR хаалганы оролттой дотооддоо холбогддог бол хаалганы хоёр дахь оролт нь ухаалаг гар утаснаас Bluetooth -ээр ирж буй SPI зэрэгцээ гаралт дээр гарч ирэх дохиогоор холбогддог.

DFF6 нь унтах горимыг идэвхжүүлэхэд ашиглагддаг бөгөөд түүний гаралт нь 2 битийн LUT4-ийн ирмэгээс гарч ирдэг тул DFF10 нь гэрэлтүүлгийн статусыг хадгалахад ашиглагддаг бөгөөд гаралт нь багаас өндөр хүртэл өөрчлөгдөж, ирмэг бүр ирэх тусам өөрчлөгддөг. 3 битийн LUT10 гаралтаас.

FSM1 бол 8 битийн тоолуур юм; Энэ нь түүний утга 0 эсвэл 255 хүрэх үед гаралтанд нь өндөр импульс өгдөг. Иймээс FSM0 (16-бит) -ийг 255-аас хэтрүүлэхээс урьдчилан сэргийлэх зорилгоор ашигладаг. Хэрэв эсрэгээр гэрэлтүүлгийг +, - товчлууруудаар удирдаж, дээд/доод түвшинд хүрсэн бол.

FSM1 оролттой холбогдсон дохионууд үргэлжлэн, F110 рүү P11 ба P12 -ээр хүрч синхрончлогдож, хоёр тоолуур дээр ижил утгыг хадгална.

Алхам 5: CLK генератор ба мультиплексор

CLK генератор ба мультиплексор
CLK генератор ба мультиплексор

Энэ хэсэгт гурван давтамж үүсгэх болно, гэхдээ зөвхөн нэг нь FSM -ийг нэг цагт ажиллуулах болно. Эхний давтамж нь 0 -ээс P0 матрицаас авсан RC OSC юм. Хоёрдахь давтамж нь LF OSC бөгөөд үүнийг 0 -ээс P1 матрицаас авдаг; Гурав дахь давтамж нь CNT7 гаралт юм.

3 битийн LUT9 ба 3 битийн LUT11 нь 3 битийн LUT14 гаралтын дагуу нэг давтамж дамжуулах боломжийг олгодог. Үүний дараа сонгосон цаг нь FSM0 ба FSM1 рүү CNT1 ба CNT3 -ээр дамждаг.

Алхам 6: ХБХ

ХОУХ
ХОУХ

Эцэст нь, FSM0 утга нь ХОУХД -ийн дохио болж хувирдаг бөгөөд энэ нь гаралт болгон эхлүүлж, гадаад LED -тэй холбогддог.

Алхам 7: Андройд апп

Андройд апп
Андройд апп
Андройд апп
Андройд апп
Андройд апп
Андройд апп

Андройд апп нь бодит интерфэйстэй төстэй виртуал хяналтын интерфэйстэй. Энэ нь таван товчлууртай; ON / OFF, UP, DOWN, Sleep mode, Connect. Энэхүү Андройд аппликейшн нь товчлуур даралтыг команд болгон хөрвүүлэх боломжтой бөгөөд тушаалуудыг Bluetooth модуль руу явуулах болно.

Энэхүү програмыг програмчлалын туршлага шаарддаггүй MIT App Inventor програмаар хийсэн болно. Апп зохион бүтээгч нь хөгжүүлэгчид програмчлалын блокуудыг холбож вэб хөтөч ашиглан Андройд үйлдлийн системтэй төхөөрөмжүүдэд зориулсан програм үүсгэх боломжийг олгодог. Та манай програмыг MIT App Inventor руу оруулж болно. Төсөлүүд -> Импортын төсөл (.aia) дээр дарж, энэ програмын тэмдэглэлд багтсан.aia файлыг сонгоно уу.

Андройд аппликэйшн үүсгэхийн тулд шинэ төсөл эхлүүлэх ёстой. Таван товчлуур шаардлагатай: нэг нь Bluetooth төхөөрөмжүүдийн жагсаалтыг сонгогч, бусад нь хяналтын товчлуурууд юм. Бид бас Bluetooth үйлчлүүлэгч нэмэх хэрэгтэй. Зураг 6 бол манай Андройд програмын хэрэглэгчийн интерфэйсийн дэлгэцийн зураг юм.

Бид товчлууруудыг нэмсний дараа товчлуур бүрт програм хангамжийн функцийг хуваарилах болно. Бид товчлуурын статусыг илэрхийлэхийн тулд 4 бит ашиглах гэж байна. Товчлуур бүрт нэг бит тул товчлуурыг дарахад тодорхой дугаарыг Bluetooth -ээр дамжуулан физик хэлхээ рүү илгээх болно.

Эдгээр тоонуудыг 1 -р хүснэгтэд үзүүлэв.

Дүгнэлт

Энэхүү зааварчилгаанд хоёр аргаар удирдах боломжтой ухаалаг бүдэгрүүлэгчийг тайлбарласан болно; андройд апп болон жинхэнэ товчлуурууд. GreenPAK SLG46620V дотор дөрвөн тусдаа блокыг тусгасан бөгөөд тэдгээр нь гэрлийн ХОУХ -ийг нэмэгдүүлэх эсвэл бууруулах үйл явцыг хянадаг. Нэмж дурдахад, унтах горимын онцлог шинж чанарыг аппликешнд ашиглах боломжтой нэмэлт модуляцийн жишээ болгон тайлбарласан болно. Үзүүлсэн жишээ нь бага хүчдэл боловч илүү өндөр хүчдэлийн хувьд үүнийг өөрчилж болно.

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