Агуулгын хүснэгт:
- Алхам 1: Зарим суурь мэдээлэл ба онол
- Алхам 2: Төлөвлөлт
- Алхам 3: Код
- Алхам 4: Хамгийн хэцүү хэсэг
- Алхам 5: Давхар. Үнэхээр Глоат
Видео: 42 RGB LED пикселийн уран зураг: 5 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:05
Хөөе, Тиймээс "Хэрэв тийм бол" гэсэн сургуулийн даалгаврын хувьд би Arduino Uno стартеркит ашиглан интерактив // ямар нэгэн зүйл хийх ёстой байсан (өөр зүйл худалдаж авахад бэлэн байсан). Би Урлаг/Технологийн судалгаа хийж байгаа болохоор тэднийг хоёуланг нь (урлаг, технологи) хослуулахыг хүссэн юм. Би Arduino -д таарах боломжтой олон тооны RGB LED -ээс бүрдсэн зураг хийж, тоглогч/зураачдад эдгээр RGB LED -ийг гараар эргүүлж, өнгө сонгох болно гэж бодсон. Ингэснээр тэд өөрсдийн "пикселийн урлаг" хийх боломжтой болно.
Алхам 1: Зарим суурь мэдээлэл ба онол
За, бутны эргэн тойронд бүү цохь. Хэрэв та энэ төслийг амьдралд хэрэгжүүлэхийг хүсч байвал: Энэ нь хэцүү. Юу хийхээ олж мэдэх, сурах, бүр бодитоор биелүүлэхийн тулд надад олон цаг зарцуулсан, гэхдээ хэрэв та үнэхээр жижигхэн "зураг" бүтээх боломжтой утсаар дүүргэсэн хайрцгийг үнэхээр хүсч байвал би танд үүнийг зааж өгөх болно.
Тиймээс, хамгийн түрүүнд бүх зүйлийг хийх хэрэгтэй. Бид Arduino дээрээ аль болох олон LED/RGB LED авахыг хүсч байна. Илүү их (RGB) LED -ийг холбох тусам илүү нарийвчлалтайгаар "зураг зурах" боломжтой болно (10x10 пиксел нь 2х2 хэмжээтэй баруун талаас илүү их хөдөлгөөнтэй өрөө өгөх болно). 13 дижитал тээглүүр дээрээ олон тооны RGB LED авах өөр аргууд байдаг гэж би бодож байна (ээлжийн бүртгэл гэх мэт), гэхдээ би "Charlieplexing" хэмээх аргыг ашигласан. Би энэ ойлголтыг ойлгоход тусалсан заавартай холбож өгөх болно (нухацтай хэлэхэд тэд үүнийг маш сайн тайлбарлаж өгдөг), гэхдээ би танд хурдан хувилбарыг энд өгөх болно. Charlieplexing дараах байдлаар явагдана.
Та 1 -р зүү ба 2 -р зүүний хооронд LED байрлуулна, хэрэв та 1 -р зүүг HIGH, 2 -ийг LOW гэж тохируулсан бол тойрог жигд ажиллаж, LED асах болно. Үндсэн мэдээлэл. За, одоо та өөр LED залгаарай, гэхдээ эргүүлэв. Урт төгсгөл нь 2 дээр, богино үзүүр нь pin1 дээр байна. Хэрэв та 2 -р зүүг HIGH болгож, 1 -ийг LOW болгоно гэвэл 2 дахь LED нь асах болно, учир нь урсгал буруу байх тул таны эхний гэрэл унтрах болно. Одоо та 2 зүү дээр 2 LED холбож болно. Хэрэв бид 3 -р зүүг холимог хэлбэрээр авбал та 1, 2, 1 ба 3, 2 ба 3 -ийн хооронд энэ аргыг хийж чадна. Энэ бол 6 LED юм. Үргэлжлүүлэн 5 зүү нь бидэнд (2 + 4 + 6 + 8) 20 LED өгөх болно. Бүх 13 дижитал тээглүүрийг ашиглах нь бидэнд 156 сонголтыг өгдөг. Та 156 LED -ийг тус тусад нь асааж, унтрааж болно.
(зүгээр л сонирхож буй хүмүүсийн хувьд. Тийм ээ, хэрэв танд маш их зүйл байхад зэрэг асаах боломжгүй, гэхдээ санаа зоволтгүй бол arduino таны LED -ийн хооронд маш хурдан шилжиж чаддаг тул хүний нүд анивчсаныг харахгүй болно)
(Илүү сайн, илүү дэлгэрэнгүй тайлбар, зурагтай)
За, утастай холбоотой маш их хүчин чармайлт гаргасны дараа (энэ талаар дараа нь ярих болно) бид LED -ийн сүлжээг бий болгож чадна, гэхдээ үүнийг зөвшөөрөх болно. LED нь үнэхээр уйтгартай байдаг. Зөвхөн 2 өнгөөр яаж зураг хийх вэ? Та чадна гэж бодож байна, гэхдээ хэрэв та илүү олон өнгө сонгох боломжтой бол илүү хүйтэн байх болов уу? зөв Тиймээс RGB LED руу бид эргэж байна!
RGB LED нь үндсэндээ 3 LED юм. Тэд нийтлэг катод эсвэл анод (цахилгаан орж, гарах үед), бусад 3 "хөл" нь таны Улаан Ногоон, Цэнхэр LED юм. Үүнийг санаж байгаа болохоор бид ч бас тэдгээрийг charlieplex хийж чадна! RGB LED бүр 3 энгийн LED -ийг тооцдог. Ингэснээр та тус бүрийг тус тусад нь асааж, унтрааж, сонгох боломжтой хүйтэн өнгийг бий болгож чадна! Цорын ганц сул тал бол энэ нь LED -ийг анх төлөвлөж байснаас 3 дахин олон дахин төлөвлөх, утастай болгоход илүү төвөгтэй болгодог явдал юм.
Би 13 тээглүүр дээр 42 RGB LED -ийг сонгосон. Энэ бол 126 энгийн LED юм. Би үүнийг яаж хийснээ хэлье.
Алхам 2: Төлөвлөлт
Тийм ээ, та юу хийж байгаагаа цаад онолоо ойлгосноор энэ алхам хийхэд маш хялбар болно. Та үндсэндээ бүх LED -ээ бичээд аль RGB LED -ийн аль "хөл" рүү явах шаардлагатайг төлөвлөж, бүх сонголтоо хийх боломжтой болно. Би төлөвлөлтийнхөө зургийг хавсаргасан бөгөөд үүнийг ашиглахад чөлөөтэй байгаарай (би боломжтой бүх сонголтыг ашиглаагүй, учир нь надад зөвхөн 156 холболтоос 126 холболт хэрэгтэй байсан. Би үүнийг ийм бүтэцтэй болгосон, учир нь энэ нь барилгын ажлыг арай илүү хийх боломжтой болгоно.).
Үүнийг цаасан дээр авах нь чухал бөгөөд үүнийг дараа нь кодлох шаардлагатай болно. Хэрэв та үүнийг бичээгүй бөгөөд 1 холболтыг замбараагүй бол код нь LED -ийн хувьд ажиллахгүй болно.
Алхам 3: Код
За, хэрэв танд 2 RGB LED -ийг 2 тээглүүрээр хэрхэн яаж холбох талаар санаа байгаа бол: Үргэлжлүүлээрэй! Кодыг шалгах сайхан байна, гэхдээ энэ нь ажилладаг гэдэгт би итгэлтэй байна! Би чадах чинээгээрээ "цэвэр" кодчилол хийхийг хичээсэн (Та үүнийг унтраалгын унтраалгаар удирдаж болно, гэхдээ энэ нь танд x42 кодоо бүгдийг нь бичиж үлдээсэн аймшигтай асуудал юм. арга зам).
Кодын зорилго нь дараахь зүйл юм. Та LED1 -ээс эхэлнэ. Товчлуур 1 нь дараагийн LED руу шилжих боломжийг олгодог боловч таны өмнөх LED асаалттай хэвээр байна. Button2 нь өмнөх LED руу буцах, 3 товчлуур нь өнгийг өөрчлөх боломжийг танд олгоно. Одоогийн сонгосон LED анивчдаг тул аль LED "сонгогдсон" болохыг харах боломжтой болно.
Үүнийг хийхийн тулд би массивтай ажилласан. Төлөвлөлтийн үе шатанд таны бичсэн мэдээллийг ашиглан ямар өнгө гаргах шаардлагатайг харахын тулд би LED анги бүтээсэн. Би бүгдийг нь массивт байрлуулсан бөгөөд аль арвиныг LEDarray -ээр дамжуулж, аль өнгийг сонгосон болохыг тодорхойлохын тулд өнгөт массиваар дамжуулаарай (өнгийг 7 өнгийг сонгох боломжийг олгодог унтраалгаар тодорхойлно). Нүдээ анивчих нь if-мэдэгдлээр зохицуулагддаг.
Кодыг хавсаргасан тул татаж аваад ашиглахад чөлөөтэй болно. Хэрэв танд ойлгохгүй байгаа зүйл байвал коммент хэсэгт нээлттэй байгаа боловч та үндсэндээ оо хуулж болно!
Алхам 4: Хамгийн хэцүү хэсэг
Тиймээс одоо танд санаа байна, ажиллах код …..тухайн бүтээгдэхүүн биш. Энэ бол төслийн хамгийн аймшигтай хэсэг бөгөөд үүнийг хайхрамжгүй хандахыг танд зөвлөж байна. Нэг зүүгээр төгсдөг өөр өөр хөлийг санаж байна уу? За тийм ээ … та LED сүлжээгээ хийх хэрэгтэй, дараа нь хөл бүрийг нэг зүү рүү явах шаардлагатай бүх хөлтэй холбож, дараа нь эдгээр зүүгээр холбоно уу. Энэ бол хамгийн хэцүү хэсэг бөгөөд миний хувьд 100% төгс гарч чадаагүй, гэхдээ хэрэв та гагнах чадвар сайтай бол танд боломж гарч магадгүй юм.
Би нэг удаад RGB LED -ийг байрлуулж, хөл бүрт зэс утсыг холбосон (би бүрхүүлтэй/боодолтой зэс утсыг санал болгож байна. Минийх хэтэрхий зузаан байсан бөгөөд энэ нь надад маш их уй гашуу авчирсан). Хоёр хөл, утас бие биедээ хүрэхгүй байхыг анхаарна уу! Дараа нь нэг зүү рүү явах шаардлагатай бүх утсыг "энгийнээр" холбож, дараа нь резистортой холбож, энэ зүү рүү холбоно уу. Үүнийг хийх "илүү аюулгүй" арга байгаа гэдэгт итгэлтэй байна, гэхдээ үнэнийг хэлэхэд хичээж байхдаа утсан дотор живэх болно гэдэгт итгэлтэй байна … таны талхны тавцан үнэхээр том юм!
(Би энэ алхамыг хялбарчлах зураг нэмсэн. Энэ нь миний кодыг яг дагаж мөрдөхийн тулд аль хөл нь аль зүү рүү явах ёстойг хэлж өгдөг.)
Надад бүтэн 4 өдөр ажилласан, гэхдээ одоо LED бүрийг (хассан 3-4) тус тусад нь асааж болно!
Дараа нь та зөвхөн зарим товчлуурууд болон престонуудыг холбох хэрэгтэй! Өөрийн пикселийн уран зураг!
Энэ хүн утсан холболтын үлгэр жишээ хийсэн нь үнэхээр тустай юм
Алхам 5: Давхар. Үнэхээр Глоат
Хэрэв та эхлэгч (над шиг) бөгөөд та энэ хархнуудын үүртэй төстэй зүйл хийж чадвал тэр асдаг; гунигтай. Та үнэхээр сайн зүйл хийсэн!
Хэрэв танд ямар нэгэн асуулт/сэтгэгдэл байвал доор бичээрэй, би чадах чинээгээрээ туслахыг хичээх болно!
Зөвлөмж болгож буй:
FLEXBALL - WiFi бүхий зуун пикселийн уян хатан PCB бөмбөг: 6 алхам (зурагтай)
FLEXBALL - Wi -Fi бүхий зуун пикселийн уян хатан ПХБ -ийн бөмбөг: Сайн уу үйлдвэрлэгчид, энэ бол moekoe үйлдвэрлэгч! Flexball нь уян хатан ПХБ дээр суурилсан бөгөөд 100 WS2812 2020 хаягтай LED -ээр тоноглогдсон. Үүнийг ESP8285-01f - Espressif -ийн ESP дээр суурилсан хамгийн жижиг модуль удирддаг. Нэмж дурдахад энэ нь ADXL345 хурдасгууртай
Minecraft хүдрийн чийдэн - Өөрчлөх боломжтой хэмжээ, пикселийн нягтрал: 4 алхам
Minecraft-ийн хүдрийн чийдэн-Өөрчлөгдөх хэмжээ, пикселийн нягтрал: Миний долоон настай хүүхэд Minecraft-т дуртай байдаг тул би түүнд зориулж ямар нэгэн зүйл бүтээхээр шийдсэн. Сонголт хайж байна, Thingiverse -д Дан Ж Хамерын хийсэн гайхалтай чийдэнгийн төсөл байгаа боловч жаахан тохируулсны дараа би өөрийн төслийг эхлүүлэхээр шийдлээ (та
Зураг дээр суурилсан загварчлал/Photogrammetry хөрөг зураг: 4 алхам
Зураг дээр суурилсан загварчлал/Photogrammetry Portraiture: Сайн уу, бүгдээрээ энэхүү зааварчилгаанд дижитал дүрслэлийг ашиглан 3D загвар хэрхэн бүтээх үйл явцыг танд үзүүлэх гэж байна. Энэ процессыг Photogrammetry гэж нэрлэдэг бөгөөд үүнийг Зураг дээр суурилсан загварчлал (IBM) гэж нэрлэдэг. Тодруулбал, энэ төрлийн процессыг дахин боловсруулахад ашигладаг
Raspberry Pi ашиглан урт хугацааны гэрэл зураг, астро гэрэл зураг: 13 алхам (зурагтай)
Бөөрөлзгөнө Pi ашиглан урт хугацааны гэрэл зураг, астро гэрэл зураг: Астрофотографи нь одон орны объектууд, селестиел үйл явдал, шөнийн тэнгэрийн талбайн гэрэл зураг юм. Астрофотографи нь Сар, Нар болон бусад гаригуудын нарийн ширийн зүйлийг бүртгэхээс гадна дуу чимээнд үл үзэгдэх объектуудыг авах чадвартай байдаг
Хятадын уламжлалт уран зураг NeoPixel Wall Art (Arduino -р ажилладаг): 6 алхам (зурагтай)
Хятадын уламжлалт уран зураг NeoPixel Wall Art (Powered by Arduino): Хананд чинь жаахан уйтгартай санагдаж байна уу? Өнөөдөр Arduino -ийн хүчирхэг, хялбар ханын урлаг хийцгээе! Та хүрээний өмнө гараа даллаж, ид шидийг хүлээх хэрэгтэй! Энэ заавар дээр бид хэрхэн өөрийн гараар бүтээх талаар ярилцах болно