Агуулгын хүснэгт:
- Алхам 1: RGB өнгөний орон зай
- Алхам 2: Сайн хөлөг онгоц Lissajous
- Алхам 3: Хүлээгээрэй - Бид синусоид долгионтой LED -ийг хэрхэн яаж жолоодох вэ?
- Алхам 4: 3D Lissajous загварыг бүтээцгээе
- Алхам 5: Үүнийг бүгдийг нь Arduino дээр тавь
- Алхам 6: Дараа нь юу хийх вэ?
Видео: Өнгөний орон зайг судлах: 6 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:04
Бидний нүд гэрэл спектрийн улаан, ногоон, цэнхэр өнгийг мэдрэмтгий рецептороор дамжуулан гэрлийг хүлээн авдаг. Хүмүүс энэ баримтыг ашиглан сүүлийн зуун жилийн турш кино, телевиз, компьютер болон бусад төхөөрөмжөөр дамжуулан өнгөт дүрсийг үзүүлж байжээ.
Компьютер эсвэл утасны дэлгэц дээр дэлгэцэн дээр хажууд нь байгаа жижиг улаан, ногоон, цэнхэр өнгийн LED -ийн эрч хүчийг өөрчилснөөр зургийг олон өнгөөр харуулдаг. Улаан, ногоон эсвэл цэнхэр өнгийн LED -ээс гэрлийн эрч хүчийг өөрчилснөөр олон сая өнгийг харуулах боломжтой.
Энэхүү төсөл нь улаан, ногоон, цэнхэр (RGB) өнгөний орон зайг Arduino, RGB LED, жижиг математик ашиглан судлахад тань туслах болно.
Улаан, ногоон, цэнхэр гэсэн гурван өнгөний эрч хүчийг нэг кубын координат гэж бодож болно, өнгө тус бүр нэг тэнхлэгийн дагуу, гурван тэнхлэг нь хоорондоо перпендикуляр байрладаг. Тэнхлэгийн тэг цэг буюу гарал үүсэлтэй ойртох тусам өнгөний хэмжээ бага байх болно. Бүх гурван өнгөний утга тэг цэг буюу гарал үүсэлтэй байвал өнгө нь хар өнгөтэй, RGB LED нь бүрэн унтарсан байдаг. Гурван өнгөний утга аль болох өндөр байвал (манай тохиолдолд гурван өнгө тус бүрт 255) RGB LED нь бүрэн асдаг бөгөөд нүд нь өнгөний хослолыг цагаан гэж ойлгодог.
Алхам 1: RGB өнгөний орон зай
Түүний сайхан дүр төрхийг ашиглахыг зөвшөөрсөн Кеннет Мореланд баярлалаа.
Бид 3D өнгөт орон зайн кубын булангуудыг Arduino -д холбогдсон RGB LED ашиглан судлахыг хүсч байна, гэхдээ үүнийг сонирхолтой байдлаар хийхийг хүсч байна. Бид үүнийг гурван гогцоо (улаан, ногоон, цэнхэр тус бүр нэг) үүрлэж, өнгөний хослол бүрээр гүйлгэх замаар хийж болно, гэхдээ энэ нь үнэхээр уйтгартай байх болно. Осциллограф эсвэл лазер гэрлийн шоу? Тохиргооноос хамааран Lissajous загвар нь диагональ шугам, тойрог, 8-р зураг, эсвэл аажмаар эргэлддэг эрвээхэйтэй төстэй загвар шиг харагдаж болно. Lissajous хэв маягийг x-y (эсвэл бидний хувьд x-y-z эсвэл R-G-B) тэнхлэг дээр зурсан хоёр (ба түүнээс дээш) осцилляторын синусоид дохиог хянах замаар бий болгодог.
Алхам 2: Сайн хөлөг онгоц Lissajous
Хамгийн сонирхолтой Lissajous загварууд нь синусоид дохионы давтамж бага зэрэг ялгаатай байх үед гарч ирдэг. Осциллографын зурган дээрх давтамж нь 5 -аас 2 -ийн харьцаагаар ялгаатай байдаг (хоёулаа анхны тоо). Энэ загвар нь дөрвөлжин талбайг маш сайн бүрхсэн бөгөөд буланд нь маш сайн ордог. Илүү өндөр тоонууд нь дөрвөлжин талбайг бүрэх, цаашлаад булан руу нь цоолох ажлыг илүү сайн хийх болно.
Алхам 3: Хүлээгээрэй - Бид синусоид долгионтой LED -ийг хэрхэн яаж жолоодох вэ?
Та намайг барьсан! Бид гурван өнгөний хувьд унтраах (0) -ээс бүтэн хүртэл (255) хүртэл хэмжээтэй 3D өнгөний орон зайг судлахыг хүсч байна, гэхдээ синусоид долгион -1 -ээс +1 хооронд хэлбэлздэг. Бид хүссэн зүйлээ авахын тулд энд бага зэрэг математик, програмчлал хийх болно.
- -127 -аас +127 хүртэлх утгыг авахын тулд утга бүрийг 127 -аар үржүүлнэ үү
- 127 -ийг нэмээд 0 -ээс 255 хүртэлх утгыг авахын тулд утга бүрийг дугуйлна уу (бидний хувьд ойролцоогоор 255 хүртэл)
0-ээс 255 хүртэлх утгыг нэг байтын тоогоор илэрхийлж болно (C хэлбэртэй Arduino програмчлалын хэл дээрх "char" өгөгдлийн төрөл), тиймээс бид нэг байт дүрслэлийг ашиглан санах ойг хадгалах болно.
Гэхдээ өнцгүүдийн талаар юу хэлэх вэ? Хэрэв та градус ашиглаж байгаа бол синусоид өнцөг нь 0 -ээс 360 хооронд хэлбэлздэг. Хэрэв та радианыг ашиглаж байгаа бол өнцөг нь 0 -ээс 2 дахин π ("pi") хооронд хэлбэлздэг. Бид Arduino -д санах ойг дахин хадгалж, 256 хэсэгт хуваагдсан тойргийг бодож, 0 -ээс 255 хүртэлх "хоёртын өнцөг" -тэй байх болно. Тиймээс өнгөний тус бүрийн "өнцөг" нь байж болно Энд бас нэг байт тоо эсвэл тэмдэгтээр дүрсэлсэн болно.
Arduino бол яг л байгаагаараа гайхалтай гайхалтай бөгөөд хэдийгээр синусоидын утгыг тооцоолж чаддаг ч бидэнд илүү хурдан зүйл хэрэгтэй. Бид утгыг урьдчилан тооцоолж, 256 оролттой урт байт эсвэл char утгыг програмдаа оруулах болно (Arduino програмын SineTable […] мэдэгдлийг үзнэ үү).
Алхам 4: 3D Lissajous загварыг бүтээцгээе
Гурван өнгө тус бүрт өөр өөр давтамжтайгаар хүснэгтийг тойрон эргэхийн тулд бид өнгө тус бүрт нэг индексийг хадгалж, өнгөнүүдээр дамжин өнгөрөх тусам индекс тус бүрт харьцангуй анхны офсетуудыг нэмнэ. Бид 2, 5, 11 -ийг Улаан, Ногоон, Цэнхэр индексийн утгын харьцангуй үндсэн нөхөн төлбөр болгон сонгох болно. Arduino -ийн дотоод математикийн чадварууд нь индекс бүрт офсет утгыг нэмэх үед автоматаар ороож өгөхөд бидэнд туслах болно.
Алхам 5: Үүнийг бүгдийг нь Arduino дээр тавь
Ихэнх Arduino нь олон тооны ХОУХ (эсвэл импульсийн өргөн модуляци) сувгуудтай байдаг. Энд бидэнд гурав хэрэгтэй болно. Arduino UNO нь үүнд тохиромжтой. Бяцхан 8 битийн Atmel микроконтроллер (ATTiny85) хүртэл гайхалтай ажилладаг.
ХОУХ -ны суваг бүр Arduino -ийн "AnalogWrite" функцийг ашиглан RGB LED -ийн нэг өнгийг жолоодох бөгөөд синусоид мөчлөгийн эргэн тойрон дахь цэг бүрийн өнгөний эрч хүчийг импульсийн өргөн буюу үүргийн мөчлөгөөр 0 -ээс эхлэн харуулдаг (бүгд унтраалттай)) 255 хүртэл (бүгд асаалттай). Бидний нүд янз бүрийн импульсийн өргөнийг хангалттай хурдан давтаж, LED -ийн янз бүрийн эрч хүч, тод байдлыг хүлээн авдаг. Гурван PWM сувгийг гурван өнгө тус бүрийг RGB LED дээр нэгтгэснээр бид 256*256*256 буюу арван зургаан сая гаруй өнгийг харуулах боломжтой болно.
Та Arduino IDE (Interactive Development Environment) -ийг тохируулж, USB кабелиар Arduino самбартаа холбох хэрэгтэй болно. ХБХ -ны гаралтын 3, 5, 6 -аас (5, 11, 12 -р процессорын тээглүүрүүд) прото самбар эсвэл прото бамбай дээрх гурван 1 КОм (нэг мянган ом) эсэргүүцэл, резистороос LED R, G хүртэл гүйлтийн гүйлт хийх., ба В голтой.
- Хэрэв RGB LED нь нийтлэг катод (сөрөг терминал) бол катодоос Arduino дээрх GND зүү рүү утсыг холбоно уу.
- Хэрэв RGB LED нь нийтлэг анод (эерэг терминал) бол анодоос утсыг Arduino дээрх +5V зүү рүү буцаана.
Arduino -ийн ноорог аль ч талаараа ажиллах болно. Би SparkFun Electronics / COM-11120 RGB нийтлэг катодын LED ашиглаж байсан (дээрх зургийг SparkFun вэбсайтаас авсан). Хамгийн урт зүү бол нийтлэг катод юм.
RGB-Instructable.ino ноорогыг татаж аваад Arduino IDE-ээр нээгээд тестийн эмхэтгэлийг хийнэ үү. Зөв зорилтот Arduino самбар эсвэл чипийг зааж өгөөд програмыг Arduino руу ачаална уу. Энэ нь нэн даруй эхлэх ёстой.
Та RGB LED -ийн мөчлөгийг нэрлэж болох олон өнгөнүүдээр дамжуулж, хэдэн саяар нь ч харах боломжгүй болно!
Алхам 6: Дараа нь юу хийх вэ?
Бид дөнгөж сая Arduino -ийн тусламжтайгаар RGB Color Space -ийг судалж эхэллээ. Энэ үзэл баримтлалын дагуу миний хийсэн бусад зүйлд дараахь зүйлс орно.
AnalogWrite-ийг ашиглахын оронд чип дээрх бүртгэл дээр шууд бичих нь ажлыг хурдасгах болно
- IR -ийн ойролцоо мэдрэгч нь хэр ойрхон байгаагаас хамааран мөчлөгийг хурдасгах эсвэл удаашруулахын тулд хэлхээг өөрчилдөг
- Atmel ATTiny85 8 зүү бүхий микроконтроллерийг Arduino ачаалагч болон энэ ноорогоор програмчлах.
Зөвлөмж болгож буй:
Гауссиан ба Парабола нар туршилтын чийдэнгийн LED гэрлийн урсгалыг судлах болно: 6 алхам
Гауссиан ба Парабола нар туршилтын чийдэнгийн LED гэрлийн урсгалыг судална Би RGB LED чийдэнгийн LED урсгалыг тооцоолж байхдаа
Buddy судлах: 10 алхам
Study Buddy: Энэхүү зааварчилгаа нь найз нөхөд хэрхэн яаж хийх талаар тайлбарлаж өгдөг Энэхүү судалгааны найзын үүрэг бол 14-18 насны өсвөр үеийнхэнд хэрхэн төлөвлөж, сурч сурахад нь туслах явдал юм. Зорилго нь роботыг оюутнуудтай хамт сурах явдал юм. Хавтасыг өнгөөр будаж
Зөөврийн компьютерээ сүйтгэхгүйгээр Коронаг хэрхэн судлах вэ (REMAKE): 8 алхам
Зөөврийн компьютерээ устгахгүйгээр Коронаг хэрхэн судлах вэ (REMAKE): Муухай дэлгэцийн зураг байхгүй болно. FabyRM -ийн аниме охин байхаа больсон. Энэ зүйлийг яг одоо уншиж болно. Дэлхийг эдгээж, Коронаг эмчил. Дахин хийх !? ТИЙМ !!!!!!!!!!!!!!!!!!!!!!!!!! ?????? Дижитал шидийн хүчээр эрдэмтэн болоогүй байж эрдэмтэн болоорой! Симу
Python ашиглан Raspberry Pi болон MXC6226XU ашиглан чиг баримжаа судлах нь: 6 алхам
Python ашиглан Raspberry Pi болон MXC6226XU ашиглан чиг баримжаа судлах нь: Дуу чимээ нь тээврийн хэрэгслийн ажлын нэг хэсэг юм. Маш сайн тааруулсан машины моторын чимээ бол гайхалтай дуу юм. Дугуйны дэвслэх чимээ замын эсрэг дуугарч, толь, хуванцар зүсэм, самбарт байгаа хэсгүүдийг тойрон гарах үед салхи орилно
DIY LED зурвас судлах хүснэгтийн гэрэлтүүлэг: 6 алхам
DIY LED зурвасын ажлын хүснэгтийн гэрэлтүүлэг: Сайн байна уу үйлдвэрлэгчид, энэ бол миний анхны зааварчилгаа өгөх төсөл юм. Энэхүү төслийг хэрэгжүүлэх гол санаа, урам зориг бол миний уйтгартай, уйтгартай дотуур байрны өрөөний ажлын ширээг бүрэн дүүрэн урам зориг өгч, урам зориг өгөх хүснэгт болгох явдал юм