Мазмуну:

Түскө негизделген баш катырма: 6 кадам
Түскө негизделген баш катырма: 6 кадам

Video: Түскө негизделген баш катырма: 6 кадам

Video: Түскө негизделген баш катырма: 6 кадам
Video: Как Мозг Создает Реальность | Психологический Эксперимент 2024, Июль
Anonim
Түскө негизделген баш катырма
Түскө негизделген баш катырма
Түскө негизделген баш катырма
Түскө негизделген баш катырма

Эй!

"If This That That" аттуу мектеп долбоору үчүн мен Arduino аркылуу интерактивдүү объект курууга туура келди. Мен жөнөкөй пикир системасы менен түстүү табышмак курууну чечтим.

Ал эмне кылат (кыскасы):

  1. Бул түс сенсорунун үстүндөгү нерсенин түсүн аныктайт.
  2. Бул түстүн туура чечимге дал келерин текшерет.
  3. Же "сен өлдүң" белгисин көтөрөт же көтөрбөйт, аба ырайына жараша табышмак чечилдиби же жокпу.

Демек, бул табышмакты чечүү оңой деп ойлойсузбу?

Мейли, ал кантип иштээрин билген адамга, эгерде сиз чечимди алмаштырсаңыз болот! Бирок кабатыр болбоңуз, анын кандайча иштээрин билбеген адамга сыйкырдуу көрүнөт. Менин тажрыйбам боюнча, көп адамдар табышмак түс жөнүндө эмес, салмагы жөнүндө ойлошкон. Жана унутпоо үчүн, сен табышмактын кожоюнусуң, канча маалымат берериң өзүңө байланыштуу.

Мен аны кантип колдонууну каалайм:

Мен бул табышмакты D & D кампаниямдын интерактивдүү бөлүгү катары колдонгум келет.

1 -кадам: материалдар

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

Курууну баштоодон мурун сизге төмөндөгү нерселер керек болот:

Жалпысынан:

Табышмак ойлоп табуу үчүн (чыгармачыл) мээ

Arduino нерселери:

  • Arduino Uno
  • Breadboard
  • Серво мотору
  • (TCS3200) Түс сенсору
  • 7x Эркек - Аял секиргич зымдары (ар кандай түстөрдө, көбүнчө сунушталат)
  • 11x Эркек - Эркек секирүүчү зымдар
  • powerbank (эгер сиз анын компьютериңиз/ноутбугуңузсуз иштешин кааласаңыз)

Корпус:

  • Капкагы бар (бут кийим) кутуча (табышмакты куруу үчүн)
  • бир нече картон (дубалдын ортосуна мамы жана сиз өлгөн белгини жасоо үчүн)
  • Жыгач блоктор, (жок дегенде) бир жагы түс сенсорунан чоңураак болушу керек.
  • боёк: кара, кызыл, көк жана жашыл (жана каалаган болсоңуз кошумча түстөр*)
  • А4 ак кагаз
  • Кайчы
  • Кара маркер
  • Күчтүү эки тараптуу скотч
  • Карандаш
  • Ыкчам клей
  • Бычак же Стэнли бычагы

* Түстөрдөгү кичинекей кошумча жазуу: башында мен кызгылт көк түстү колдонгом, бирок сенсор кызыл менен кызгылт түстү ажырата алган эмес, ошондуктан мен аны таштап койгом. Башка түстөр да ушунчалык сонун иштебей калышы мүмкүн экенин билиңиз (бирок алар аракет кылбаганы мүмкүн). Менин сенсорум арзан болчу, тагыраак сенсор балким көбүрөөк түстөрдү айырмалай алат.

2 -кадам: Баш катырма

Puzzle
Puzzle

Бул долбоордун эң маанилүү бөлүгү - мээнин жарылуусу боюнча жакшы табышмакка ээ болуу.

Биринчи сүрөттө көрүнүп тургандай (киришүү бар), мен блокторума норс рундарын түшүрдүм (астынан башкасы). Алар табышмак менен байланыштуу. Анан мен бул иш боюнча жөнөкөй суроону чаптадым: "Чыныгы байлык бул …?".

Мен рундарды которуу үчүн жогорудагы сүрөттү колдондум. Мен ошондой эле табышмакты издеген адамдарга котормолорду бердим.

Табышмактын чечими:

Чыныгы байлык - бул бакыт!

Ошентип, оюнчу эмне кылышы керек - бул кенчти (байлыктын символу менен блокту) анын үстүнө бакыт символу менен алмаштыруу.

Менин табышмагымды колдонууга тартынбаңыз, бирок мен сизге өзүңүздүн ойлоп табууңузду сунуштайт элем.

3 -кадам: Кабелдик

Wiring
Wiring
Wiring
Wiring

Зымдоо абдан жөнөкөй, анткени 2 гана компонент бар (жана arduino). Сүрөттөмөдө мен зымдардын минималдуу санын колдоном, эгер сиз көбүрөөк колдонууну кааласаңыз, анда тартынбаңыз. (Мен сүрөттө көбүрөөк зымдарды колдондум)

Ардуино нан тактасына: (2 Эркек - Эркек зымдарын колдонуңуз)

  1. 5V төөнөгүчтү панелдин + тарабына туташтырыңыз.
  2. жерге төөнөгүчтөрдүн бирин нан тактаңыздын жанына туташтырыңыз.

Серво: (3 Эркек - Эркек зымдарын колдонуңуз)

серводо үч зым бар: күч, жер жана сигнал.

  1. Күч адатта кызыл зым, бул зымды нан тактаңыздын + тарабына туташтырыңыз.
  2. Жер негизинен кара же күрөң зым, бул зымды нан тактаңыздын жанына туташтырыңыз.
  3. Сигнал көбүнчө сары же кызгылт сары зым, бул зымды нан тактаңыздагы горизонталдуу катарга туташтырыңыз.

Түс сенсору: (7 Эркек - Аял зымдарын колдонуңуз)

  1. VCC: бул зымды нан тактаңыздын + тарабына туташтырыңыз (бул күч).
  2. GND: бул зымды нан тактаңыздын жанына туташтырыңыз (бул жер).
  3. S0: бул зымды нан тактаңыздагы горизонталдуу катарга туташтырыңыз.
  4. S1: бул зымды нан тактаңыздагы горизонталдуу катарга туташтырыңыз.
  5. S2: бул зымды нан тактаңыздагы горизонталдуу катарга туташтырыңыз.
  6. S3: бул зымды нан тактаңыздагы горизонталдуу катарга туташтырыңыз.
  7. ЧЫГЫП: бул зымды нан тактаңыздагы горизонталдуу катарга туташтырыңыз*.

*Мен аны тактайга кайсы жерге кадап коюу керектигин так айтпайм, анткени өзүңүздүн түзүлүшүңүз менен айкалыштырып эмнени туура табуу оңой.

Breadboard Arduino: ** (6 Эркекти колдонуңуз - Эркек зымдары)

Капка салардан мурун анын баары иштээрин көрүү акылдуу, муну үчүн бул кабелдерди алып салыңыз жана кийинчерээк кайра салыңыз. Эсиңизде болсун же кайсы кабель эмнеге туташып турганын жазыңыз.

  1. Сервонун сигнал пинине туташкан сапты 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. Ардуиного кодду жүктөңүз.
  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 см бийиктиктеги сүрөттү караңыз). Андан кийин картонго түшүрүп, кесип алыңыз, эгер кааласаңыз, боёп аласыз.

Зымдарды сенсорго тиркеңиз, БАШКА КУРУҢУЗДАН кийин, мындан ары төөнөгүчтөргө жете албайсыз.

Мен сенсорду мамынын ичине бекитүү үчүн эки тараптуу скотчту колдондум. Муну үчүнчү сүрөттөн көрө аласыз.

Сенсордогу ледтер мамычанын ичинде экенин текшериңиз (четинен эмес), блоктор кийинчерээк анын үстүнө турушу керек.

"Сен өлдүң" белгиси:

Картонду кесип, ага "сен өлдүң" деп жаз. Биринчи сүрөттө көрүнүп тургандай, мен башка жагы кылыч менен ачууланган адамдын сүрөтүн чаптадым. Белгинин асты жагында кулагы бар экенин тактаңыз. Сервого белги коюу үчүн кулакчаны колдонуңуз.

Бөлмөнү түзүү:

  1. Корпус үчүн тандаган кутуңузду боёңуз. (Кайсы түс жакса, мен кара түстү колдондум)
  2. Дубалдын узундугун аныктоо үчүн бөлмөнүн формасын кутунун түбүнө чийиңиз. (Сызыктарды сызгыч менен өлчөгүлө).
  3. Дубалдардын бийиктиги кандай болушун каалаарыңызды аныктаңыз. Менин мисалымдагы дубалдардын бийиктиги 5 сантиметр.
  4. Эми сизде дубалдарыңыздын өлчөмдөрү бар, аларды картонго тартып, кесип алыңыз.
  5. Дубалдарды боёгула. (Мен аларды кара түскө боёгом)
  6. Дубалдарды кутуга, мурда тарткан сызыктарга чаптаңыз.

Эми сизде бөлмө даярдалды.

Кабелдер жана белги үчүн тешиктер:

Сиз кутуга эки тешик жасашыңыз керек, бири кабелдер үчүн, экинчиси "сиз өлдүңүз" белгиси үчүн. жана сак болгула! тешиктер бар болгондон кийин аларды алып салуу мүмкүн эмес.

түс сенсорунун барышын каалаган жердин астына тешик жасаңыз. Тешикти мүмкүн болушунча кичине кылыңыз, бирок кабелдердин чыңалуусуна жол бербеңиз, алардын бошоп кетишин каалабайсыз.

"Сиз өлдүңүз" белгисинин тешиги сиз колдонгон картонго караганда бир аз калыңыраак болушу керек, андыктан ал корпуска тийбей туруп калышы мүмкүн. Тешиктин узундугу белгинин чоңдугуна көз каранды. Тешикти жасоо үчүн Стэнли бычагын же бычакты колдонуңуз.

Эми servo моторду кутунун капталына бекитүү үчүн эки жактуу скотчту колдонуңуз.

6 -кадам: Суроолоруңуз барбы?

Ошентип, азыр сиз Arduino менен түстөргө негизделген укмуштуудай табышмак кура алышыңыз керек. Суроолоруңуз болсо, сөзсүз түрдө бериңиз!

Бактылуу болгула!

Сунушталууда: