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

Өнгөнд суурилсан таавар: 6 алхам
Өнгөнд суурилсан таавар: 6 алхам

Видео: Өнгөнд суурилсан таавар: 6 алхам

Видео: Өнгөнд суурилсан таавар: 6 алхам
Видео: КАКИМ БУДЕТ PORTAL 3 2024, Долдугаар сарын
Anonim
Өнгөнд суурилсан таавар
Өнгөнд суурилсан таавар
Өнгөнд суурилсан таавар
Өнгөнд суурилсан таавар

Хөөе!

"If This That That" нэртэй сургуулийн төслийн хувьд би Arduino ашиглан интерактив объект бүтээх шаардлагатай болсон. Энгийн санал хүсэлтийн системээр өнгөт суурилсан таавар бүтээхээр шийдлээ.

Энэ нь юу хийдэг вэ (товчхондоо):

  1. Энэ нь өнгөний мэдрэгчийн дээрх объектын өнгийг тодорхойлдог.
  2. Энэ өнгө нь зөв шийдэлд нийцэж байгаа эсэхийг шалгадаг.
  3. Энэ нь "та үхсэн" гэсэн тэмдгийг дээшлүүлдэг, үгүй, цаг агаарын байдлаас шалтгаалан эндүүрэл шийдэгдсэн эсэхээс үл хамааран шийдэгддэг.

Тиймээс та энэ тааврыг шийдвэрлэхэд хялбар гэж бодож байна уу?

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

Би үүнийг хэрхэн ашиглахыг хүсч байна:

Би энэхүү тааврыг D&D кампанит ажлынхаа интерактив хэсэг болгон ашиглахыг хүсч байна.

Алхам 1: Материал

Материал
Материал
Материал
Материал

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

Ерөнхийдөө:

Таавар гаргаж ирэх (бүтээлч) тархи

Arduino зүйлс:

  • Ардуино Уно
  • Талхны самбар
  • Серво хөдөлгүүр
  • (TCS3200) Өнгөний мэдрэгч
  • 7х Эр - Эмэгтэй холбогч утас (бүх төрлийн өнгө байвал зохимжтой)
  • 11х Эр - Эр холбогч утас
  • powerbank (хэрэв та үүнийг компьютер/зөөврийн компьютергүйгээр ажиллахыг хүсч байвал)

Суултын яндан:

  • Тагтай (гутлын) хайрцаг (эндүүрэл үүсгэх)
  • хэд хэдэн картон цаас (хана, дунд багана, та нас барсан гэсэн тэмдэг хийх)
  • Модон блок, (дор хаяж) нэг тал нь өнгө мэдрэгчээс том байх ёстой.
  • будаг: хар, улаан, цэнхэр, ногоон (мөн хэрэв хүсвэл нэмэлт өнгө*)
  • А4 хэмжээтэй цагаан цаас
  • Хайч
  • Хар маркер
  • Хүчтэй хоёр талт наалдамхай тууз
  • Харандаа
  • Шуурхай цавуу
  • Хутга хутга эсвэл Стэнлийн хутга

* Өнгөний жижиг тэмдэглэл: Эхэндээ би нил ягаан өнгийг ашигладаг байсан ч мэдрэгч нь улаан, нил ягаан өнгийг ялгаж чаддаггүй байсан тул би үүнийг орхисон. Бусад өнгө нь тийм ч сайн ажиллахгүй байж магадгүй гэдгийг анхаарна уу (гэхдээ би оролдож үзээгүй байж магадгүй юм). Миний мэдрэгч хямд байсан, илүү нарийвчлалтай мэдрэгч нь илүү олон өнгийг ялгаж чаддаг байх.

Алхам 2: Таавар

Таавар
Таавар

Энэ төслийн хамгийн чухал хэсэг бол тархиа хагалах таавар сайн хийх явдал юм.

Эхний зураг дээр (танилцуулгатай зураг) харж байгаа шиг, би норс руныг өөрийн блокууд дээр зурсан (доод талаас бусад бүх талд). Тэд эндүүрэлтэй холбоотой байх ёстой. Дараа нь би хэргийн талаар "Жинхэнэ баялаг бол …?" Гэсэн энгийн асуултыг оруулав.

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

Тааврын шийдэл:

Жинхэнэ баялаг бол аз жаргал юм!

Тиймээс тоглогчийн хийх ёстой зүйл бол эрдэнэсийг (эд баялгийн тэмдэг бүхий блок) аз жаргалын тэмдэг бүхий блокоор солих явдал юм.

Миний оньсогыг ашиглахад чөлөөтэй байгаарай, гэхдээ би та бүхнийг өөрөө бодож олохыг уриалж байна.

Алхам 3: Цахилгааны утас

Утас
Утас
Утас
Утас

Зөвхөн 2 бүрэлдэхүүн хэсэг (мөн arduino) байдаг тул утас нь маш энгийн. Тодорхойлолтонд би хамгийн бага тооны утас ашигладаг, хэрэв та илүү ихийг ашиглахыг хүсч байвал үүнийг чөлөөтэй хийх боломжтой. (Би зураг дээр илүү олон утас ашигласан)

Arduino -ийг талх руу: (2 Эр - Эр утас ашиглана уу)

  1. 5V зүүг талхныхаа + талд холбоно уу.
  2. газардуулгын нэгийг талхныхаа хажуу талд холбоно уу.

Серво: (3 Эр - Эр утас ашиглана уу)

servo нь цахилгаан, газардуулга, дохио гэсэн гурван утастай.

  1. Эрчим хүч нь ихэвчлэн улаан утас бөгөөд энэ утсыг талхныхаа + талд холбоно уу.
  2. Газар нь ихэвчлэн хар эсвэл хүрэн утас байдаг бөгөөд энэ утсыг талхныхаа хажуу талд холбоно уу.
  3. Дохио нь ихэвчлэн шар эсвэл улбар шар өнгийн утас бөгөөд энэ утсыг талхны самбар дээрх хэвтээ эгнээнд холбоно уу.

Өнгөний мэдрэгч: (7 Эр - Эмэгтэй утас ашиглана уу)

  1. VCC: энэ утсыг талхныхаа + талд холбоно уу (энэ бол хүч).
  2. GND: энэ утсыг талхныхаа хажуу талд холбоно уу (энэ бол газардуулга).
  3. S0: энэ утсыг талхны самбар дээрх хэвтээ эгнээнд холбоно уу.
  4. S1: энэ утсыг талхны тавцан дээрх хэвтээ эгнээнд холбоно уу.
  5. S2: энэ утсыг талхны тавцан дээрх хэвтээ эгнээнд холбоно уу.
  6. S3: энэ утсыг талхны самбар дээрх хэвтээ эгнээнд холбоно уу.
  7. OUT: энэ утсыг талхны тавцан дээрх хэвтээ эгнээнд холбоно уу.

*Би үүнийг талхны самбар дээр яг хаана байрлуулахыг хэлж байгаа юм биш, учир нь таны бүтээцтэй хослуулан хамгийн сайн тохирох зүйлийг өөрөө олоход хялбар байдаг.

Breadboard to Arduino: ** (6 Эр - Эр утас ашиглана уу)

Үүнийг хийхээс өмнө бүх зүйл ажилладаг эсэхийг харах нь ухаалаг хэрэг юм. Үүнийг хийхийн тулд та эдгээр кабелийг гаргаж аваад дараа нь буцааж оруулах хэрэгтэй. Аль кабель юунд холбогдсон болохыг санаж эсвэл бичихээ мартуузай.

  1. servo -ийн дохионы зүүтэй холбосон эгнээгээ Arduino дээрх 9 -р зүүтэй холбоно уу.
  2. Өнгө мэдрэгчийн S0 зүүтэй холбосон эгнээгээ Arduino дээрх 4 -р зүүтэй холбоно уу.
  3. Өнгө мэдрэгчийн S1 зүүтэй холбосон эгнээгээ Arduino дээрх 5 -р зүүтэй холбоно уу.
  4. Өнгө мэдрэгчийн S2 зүүтэй холбосон эгнээ Arduino дээрх 6 -р зүүтэй холбоно уу.
  5. Өнгө мэдрэгчийн S3 зүүтэй холбосон эгнээгээ Arduino дээрх 7 -р зүүтэй холбоно уу.
  6. Өнгө мэдрэгчийн OUT зүүтэй холбосон эгнээгээ Arduino дээрх 8 -р зүүтэй холбоно уу.

** Миний дээр дурдсан мөрүүд бол таны талхны самбар дээр байгаа мөрүүд юм.

Алхам 4: Код

Энэ хавсралтад та энэ төслийг ажиллуулахад хэрэгтэй кодыг олох болно. Код дээрх тайлбарууд нь юу хийдэг талаар тодорхой байх ёстой. Хэрэв та өнгө мэдрэгч хэрхэн ажилладаг талаар илүү дэлгэрэнгүй мэдээлэл авахыг хүсч байвал (хэрэв та кодыг бүрэн ойлгохыг хүсвэл) "Мэдрэгч хэрхэн ажилладаг вэ?" Энэ хичээлийг үзэхийг танд зөвлөж байна. Хэсэг.

Хэдийгээр та хараахан байхгүй байгаа ч гэсэн кодыг өөрчлөх шаардлагатай хэд хэдэн зүйл байна.

  • Хувьсагчдыг тохируулна уу.
  • If-мэдэгдэлийг өөрийн оньсогонд нийцүүлэн тохируулна уу (шаардлагатай бол).

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

Хувьсагчийг тохируулах:

Хэрэв та утсыг зөв барьсан бол код ажиллах ёстой бол цаас, үзэг, (будсан) блокуудыг аваарай.

  1. Void checkRiddle функцийг кодоос түр тайлбарлах. (ингэснээр хэсэг ажиллахгүй болно)
  2. Кодыг Arduino -д байршуулна уу.
  3. Цуваа дэлгэцийг нээнэ үү, энэ нь ажиллаж эхлэх бөгөөд танд R =… G =… B =… (бусад зүйлүүд одоо хамаагүй)
  4. Өнгөт блокыг мэдрэгчийн урд талд (таны эцсийн загвар шиг ойрхон) хэдэн секундын турш барь.
  5. Мэдрэгчийн өмнө барьж байхдаа Arduino -г унтраана уу. (USB портоос татаж аваарай)
  6. Өнгө тус бүрт (R, G, B) хэмжсэн өнгөний мэдрэгчийн гаднах (хамгийн бага ба хамгийн бага) утгыг бичнэ үү.
  7. Хамгийн бага ялгаатай хоёр утгыг сонгоно уу (жишээ нь R ба B). **
  8. Хамгийн их утгаар +10, хамгийн бага утгаас -10 унтраана уу, ингэснээр мэдрэгч жижиг алдаа гаргах боломжтой болно.
  9. Одоо кодын утгыг одоо байгаа утгуудаар солино уу. (Сэтгэгдлүүд нь ямар утгыг орлуулах ёстойг хэлж байна)
  10. Хэрэв та надаас өөр өнгө хэрэглэж байгаа бол serial.print -ийг бас өөрчил.
  11. Шинээр хэмжсэн утгуудаа ашиглан кодыг Arduino руу дахин оруулна уу.
  12. Цуваа дэлгэц нь кодонд оруулсан өнгөө сайхан хэвлэж байгаа эсэхийг ижил өнгийн блокыг урд нь барьж үзнэ үү. Мэдрэгчийн өмнө барьж байх үед тууштай байгаа эсэхийг шалгаарай.
  13. Хэрэв үгүй бол:: (утгыг шалгаарай, та мужийг том болгох шаардлагатай эсэхийг шалгаарай. Хэрэв тийм бол::) код одоо энэ өнгийг таньж байна.
  14. Одоо ашиглахыг хүссэн бүх өнгийг кодонд нэгтгэх хүртэл энэ үйлдлийг давтана (алхам 4 - 13).
  15. Void checkRiddle функцийг тайлбарлахаа бүү мартаарай!

* Хэрэв та тэдгээрийг будаж амжаагүй бол эхлээд "хэргийн" алхам руу очно уу.

** Хэрэв та хүсэж байгаа бол илүү нарийвчлалтайгаар 3 (R, G, B) -ийг ашиглаарай, гэхдээ энэ төслийн хувьд шаардлагагүй.

If-мэдэгдэлийг өөрийн тааварт тохируулаарай: (хэрэв та шийдлийг өөрчлөхийг хүсч байвал л болно)

Алхам 5: Кейс ба блокуудыг будах

Кейс ба блокуудыг будах
Кейс ба блокуудыг будах
Кейс ба блокуудыг будах
Кейс ба блокуудыг будах
Кейс ба блокуудыг будах
Кейс ба блокуудыг будах
Кейс ба блокуудыг будах
Кейс ба блокуудыг будах

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

Блокуудыг будах:

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

Хэрэв та өөрөө тааварыг рун дээр будахгүй бол.

Тулгуур:

Багана нь өнгөний мэдрэгч болон түүнд холбогдсон кабелийг (хэсэгчлэн) нуух явдал юм. Тулгуурын хэмжээсийг тодорхойлохын тулд өнгө мэдрэгчийнхээ талыг хэмжиж, багана хэр өндөр байхыг хүсч байгаагаа тодорхойлох хэрэгтэй. 3 см өндөртэй зургийг үзнэ үү). Дараа нь үүнийг картон дээр зураад хайчилж ав, хэрэв хүсвэл будаж болно.

Утсыг мэдрэгч рүү холбоно уу. Тулгуурыг бэхлэхээс өмнө тээглүүрт хүрэх боломжгүй болно.

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

Мэдрэгчийн гэрлүүд нь багана дотор (ирмэгээс хэтрэхгүй) байгаа эсэхийг шалгаарай, блокууд дараа нь зогсох ёстой.

"Та үхсэн" гэсэн тэмдэг:

Картон цаас хайчилж аваад дээр нь "чи үхсэн" гэж бич. Эхний зураг дээр харж байгаа шиг би нөгөө талд илд барьсан ууртай хүний зургийг наасан. Доод талд нь тэмдэг байгаа эсэхийг шалгаарай. Түгжээг ашиглан servo -д тэмдгийг наа.

Өрөө бүрдүүлэх нь:

  1. Хэрэгт зориулан сонгосон хайрцгаа будна уу. (Таны дуртай өнгө, би хар өнгийг ашигласан)
  2. Хананы уртыг тодорхойлохын тулд өрөөний хэлбэрийг хайрцагны ёроолд зур. (Мөрүүдийг захирагчаар хэмжинэ).
  3. Хананд ямар өндөр байхыг хүсч байгаагаа тодорхойл. Миний жишээн дээрх хана нь 5 сантиметр өндөртэй.
  4. Одоо та хананыхаа хэмжээг авч, картон дээр зураад хайчилж ав.
  5. Ханыг будах. (Би тэднийг хараар будсан)
  6. Өмнө зурсан зурган дээрээ ханыг хайрцаг дээр наа.

Та одоо өрөөгөө бэлдсэн байна.

Кабелийн нүх ба тэмдэг:

Та хайрцагт хоёр нүх гаргах хэрэгтэй, нэг нь кабель, нөгөө нь "та үхсэн" гэсэн тэмдэг. мөн болгоомжтой байгаарай! нүхнүүд байгаа тохиолдолд арилгаж болохгүй.

Өнгөний мэдрэгчийг хийхийг хүсч буй газрынхаа доор нүх гарга. Нүхийг аль болох жижиг болго, гэхдээ кабелийн хурцадмал байдлаас зайлсхий, та тэдгээрийг суллахыг хүсэхгүй байна.

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

Одоо хоёр талт соронзон хальс ашиглан servo моторыг хайрцагны хажуу талд бэхлээрэй.

Алхам 6: Асуух зүйл байна уу?

Тиймээс одоо та Arduino ашиглан өнгөт суурилсан гайхалтай таавар бүтээх боломжтой байх ёстой. Хэрэв танд асуух зүйл байвал асуугаарай.

Байшингаа хөгжилтэй өнгөрүүлээрэй!

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