Мазмуну:

Interactive, Open Source Mood Light: 9 кадам (Сүрөттөр менен)
Interactive, Open Source Mood Light: 9 кадам (Сүрөттөр менен)

Video: Interactive, Open Source Mood Light: 9 кадам (Сүрөттөр менен)

Video: Interactive, Open Source Mood Light: 9 кадам (Сүрөттөр менен)
Video: Загадка Титаника : Как они могли не заметить айсберг?! Самая подробная история! 2024, Июль
Anonim
Interactive, Open Source Mood Light
Interactive, Open Source Mood Light

Бул көрсөтмө интерактивдүү, көп функциялуу маанай жарыгын кантип жасоо аркылуу өтөт. Бул долбоордун өзөгүн BlinkM I2C RGB LED түзөт. Мен бир күнү интернетте серептеп жүргөндө, BlinkM менин көңүлүмдү бурду, мен муну өтө сонун деп ойлодум. Ошентип, бир -эки айдан кийин, мен аны колдонуп маанайды жарык кылууну чечтим. Ал эми бул жерде!

1 -кадам: Сизге эмне керек

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

Жарык булагы:

BlinkM RGB I2C көзөмөлдөгөн LED

Контроллер:

Arduino микроконтроллери - Мен "Arduino Nano" колдондум, анткени чындыгында кичинекей нерсеге муктаж болчумун, анткени "сенсордук жарыктын" ичиндеги нерселердин баары бар.

Турак жай:

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

Power/Connectors:

Башында, мен батареянын кубатын өчүрүү жакшы болот деп ойлогом (анткени корпуста, ыңгайлуу, батарея бөлүмү бар), бирок эгер сиз аны узак убакыт иштете турган болсоңуз, бул практикалык эмес. Анын ордуна, мен тегерегимде жаткан 12В 150Ма трансформатору бар 5,5мм DC токту туташтыргычты колдонгом. Arduino бортундагы жөнгө салуучу 12 вольтту түшүрөт, ал эми 150Ма бардыгын иштетүү үчүн көп ток болгон. Зым үчүн, мен тегерегимде болгон нерсени колдондум. Күчтүү өзөктүү зымды колдонууну унутпаңыз.

Компоненттер:

Компоненттер маанайдын жарыгы үчүн үч сенсорду жасоо үчүн колдонулат: үн сенсору, "таптоо" сенсору жана жарык сенсору. Үн сенсору үчүн сизге керек болот:- LM741 Op-Amp- Электр Микрофону (3 коргошун)- 2.2k каршылыгы- 100k резистору- 200k каршылыгы- 0.47uf электролиттик конденсатору- 0.047uf керамикалык конденсатору- 2x 10k каршылыгы- Диод үчүн "таптоо" сенсору, сизге бир гана керек болот:- Пьезо элементи (муну кээ бир электрондук оюнчуктардан, телефондордон жана башка көптөгөн электрондук түзүлүштөрдөн куткара аласыз, же аны чычкандан, радиошактан ж.б. ала аласыз.).- 1M резистор … Жана жарык сенсору үчүн сизге керек болот:- CdS клеткасы (LDR), эң жакшысы абдан чоңураак (көбүрөөк чечим).- 10K каршылыгы- 3-пин башы жана буралган туташтыргыч зымдары (милдеттүү эмес)

Башка

Мен нанды көп колдонгум келбегендиктен, нан тактасын колдондум. Мен ошондой эле бардык туташуулардын коопсуздугун камсыз кылуу үчүн көптөгөн мыжылган туташтыргыч зымдарды колдондум, бирок алар милдеттүү эмес. Же болбосо, сиз ATmega168 микро колдоосу үчүн homebrew өнүктүрүү тактасын колдоно аласыз жана DIP стилиндеги ATmega168ди колдонсоңуз болот (узунураак коргошун бар). Бул канчалык деңгээлде туура келээрин билбейм, бирок, албетте, сынап көрүү керек. Эгерде сизде нан табактын акчасы жок болсо, анда кадимки ATmega168ди ПХБга салып, регуляторду, программалоо байланыштарын ж.

2 -кадам: "тийүү жарыгын" даярдаңыз

"Тийүү жарыгын" даярдаңыз
"Тийүү жарыгын" даярдаңыз
"Тийүү жарыгын" даярдаңыз
"Тийүү жарыгын" даярдаңыз
"Тийүү жарыгын" даярдаңыз
"Тийүү жарыгын" даярдаңыз
"Тийүү жарыгын" даярдаңыз
"Тийүү жарыгын" даярдаңыз

Биринчиден, биз үйдүн депосундагы маанайды жарык-достук кылуубуз керек. Биринчиден, жарыкты оодарып, батарейканын капкагын жана бурамаларын алып салыңыз. Батарея бөлүмүнүн ичинде сиз лампочка орнотмосун көрөсүз. Аны алып чыгып, лампочканы таштаңыз. Андан кийин, корпусту ачыңыз. Эми биз бийлик менен күрөшүшүбүз керек. Батарея отсегинин ортосундагы темирди жана батарея контакттарынын бирине туташтырган зымды алып салыңыз. Көрсөтүлгөндөй батарейканын контактыларына ширетүүчү зымдар. Эгерде сизде башка түстүү зым болбосо, аларды белгилөөнү каалашыңыз мүмкүн. Биз ошондой эле бул маанайды жарыктын дубал розеткасы аркылуу иштей турган кылып түзөбүз. DC электр уячасынын диаметри менен бирдей өлчөмдөгү бургулоочу тешикти колдонуп бургулаңыз. Андан кийин корпуска сайылганча бурап коюңуз. Бул жерде биз жасашыбыз керек болгон акыркы өзгөртүү - бул пьезо таптоо сенсорун кошуу. Жакшыраак сезгичтик үчүн аны пластикалык "алкакка" орнотуу эң жакшы. Мен муну кийинчерээк башка жерде орнотулган инструкцияда көргөздүм, бирок бул сыноо учурунда корпусту ачуу жана жабууга туура келгендиктен, зымдар үзүлө баштады. Аны пластикке ысык клей менен жабыңыз, бирок мовабке куполунда механикалык кыймылга тоскоол болбогонун текшериңиз! (б.

3 -кадам: Power Circuit коргоо кошуу

Power Circuit коргоо кошуу
Power Circuit коргоо кошуу

Бул бөлүк дубалдын трансформаторун/батарейкаларын кууруп калуудан коргоо үчүн диоддорду колдонгон жөнөкөй кошумча, эгерде сизде батарейкалар орнотулган болсо, анда сиз DC ток уячасын колдоносуз. Сиз каалаган максималдуу чыңалуу диоддорун дубал трансформаторунун рейтингинен жогору болгондо колдоно аласыз. Нан тактасындагы "VIN" деп белгиленген бөлүк (arduino боюнча VINге кетет). "DCPower" деп аталган бөлүк DC ток уячасы. Эмнегедир, мен бул схеманы жасоодо колдонулган программа чындыгында энбелгилерди тандап алган, ошондуктан мага аны атоого уруксат берди. ЭСКЕРТҮҮ: Эгерде сиз бул схеманы жасабасаңыз, анда дубалдын трансформаторуна маанай жарыгын туташтырып койгон учурда батарейкаларды батарея бөлүмүндө сактай албайсыз, антпесе ал бузулат.

4 -кадам: Breadboard, Arduino жана BlinkM кошуңуз

Breadboard, Arduino жана BlinkM кошуңуз
Breadboard, Arduino жана BlinkM кошуңуз

Биз нан тактасын кошуудан мурун, батарея контактыларын металл панелдин аркасынан изоляциялашыбыз керек (башкача айтканда, эгер сизде металл табак сиздин колуңузга жабышып калган болсо. Эгерде жок болсо, бул кадамды өткөрүп жибериңиз). Изоляцияланганына ынануу үчүн бардык металл контакттардын үстүнө скотч жабыштырыңыз. Биз ачык зымды каалабайбыз. Эми аккумулятор бөлмөсүнүн үстүндөгү нанды (мен ысык клей колдондум) жабыштырыңыз. Бактыга жараша, биз үчүн идеалдуу келет. Эми 2-кадамдагы оң (+) жана терс (-) зымдарды панелдин оң жана терс электр тилкелеринин бирине туташтырыңыз. Эми биз arduino менен blinkmди бириктире алабыз. Бул жерде пин туташуулары:

  • A5 - Саат (BlinkMде 'c' деп белгиленген)
  • A4 - маалыматтар (BlinkMде 'd' деп белгиленген)

Жана сиз муну кылдыңыз, жөнгө салынбаган VCCди (+) arduinoдогу 'VIN' пинине туташтырыңыз, ал эми РЕТТЕГЕН VCCди BlinkMдеги (+) пинке. Андан кийин arduinoдогу GND менен BlinkMди электр тилкесиндеги GNDге туташтырыңыз жана GND электр тилкелерин бириктирип коюңуз. Этият болуңуз, бул байланыштарды аралаштырбаңыз, болбосо BlinkMди кууруп аласыз.

5 -кадам: сенсорлор - үн, таптоо жана жарык

Сенсорлор - үн, таптоо жана жарык
Сенсорлор - үн, таптоо жана жарык
Сенсорлор - үн, таптоо жана жарык
Сенсорлор - үн, таптоо жана жарык
Сенсорлор - үн, таптоо жана жарык
Сенсорлор - үн, таптоо жана жарык

Кийинки кезекте сенсорлор турат. Жарык сенсорун куруу эң жөнөкөй. Оңго кеткен зым arduino менен туташат. Кайсы сенсорлор туташтырылгандыгы жөнүндө көбүрөөк маалымат кийинки кадамда. Үн сенсору бир аз кыйыныраак, бирок күлкүлүү татаал эмес. ЭСКЕРТҮҮ: Мен бул жерде чыңалуу бөлүштүргүч схемасын көрсөткөн жокмун. Схемада 2.5В "чыңалуу бөлүүчү" деп аталган нерсе аркылуу берилиши керек. Бул бир нече туруктуу резисторлордон же казандан (потенциометрден) турган абдан жөнөкөй схема. Бул схема үчүн 50K идишти колдонуңуз. Google 'чыңалуу бөлүүчүсү' жана аны курууга жардам берүү үчүн википедиядагы жазууну караңыз. EDIT 9/27/08: Мен бул үн схемасын таштап, анын ордуна үн менен иштетилген жарыктандыруучу кулон куткарылганын колдондум. Бул жердеги схема жакшы иштебейт; Эмнеге экенин билбейм, бирок дизайн кемчиликтүү; бир нерсе туура эмес. Кулон чынжырдын SMD LM386 оп-амп колдонорун байкадым. Мен резисторлордун LED, VCC жана GNDге барар алдында эле ширетип койгом. Андан кийин мен болгону программалык камсыздоонун баалуулуктарын бир аз манипуляциялоо керек эле, жана престо! жакшыраак иштөө үн-маанай жарык. Азыркы учурда, музыканын пульсацияланган жарыгынын видеосу оригиналдуу схема колдонулган учур. Балким, мен жакшыртылган дизайнды көрсөткөн башка нерсени жүктөйм (бул жаңы схемага байланыштуу музыкага жооп берип жаткан окшойт). Мен пьезо элементин кантип ширетээримди билбей калдым, ошондуктан мен болжолдоп, сүрөттө көрсөтүлгөндөй ширетип койгом. Бул иштейт, бирок. Пьезонун полярдуулугунун мааниси жок. Дагы бир МААНИЛҮҮ ЭСКЕРТҮҮ: Бул микросхемалардын мааниси сиздикинен айырмаланат, андыктан кодду бир аз оңдооңуз керек болот. Эгерде бул баалуулуктар боюнча суроолоруңуз болсо, мага тартынбаңыз.

6 -кадам: Сенсорлор үчүн орун табыңыз жана бардыгын туташтырыңыз

Сенсорлор үчүн орун табыңыз жана бардыгын туташтырыңыз
Сенсорлор үчүн орун табыңыз жана бардыгын туташтырыңыз
Сенсорлор үчүн орун табыңыз жана бардыгын туташтырыңыз
Сенсорлор үчүн орун табыңыз жана бардыгын туташтырыңыз

Бул бөлүк өтө оор болбошу керек. "Сенсордук жарык" корпусунда биз керектүү нерселердин бардыгына ылайыктуу кенен орун бар. Мен сенсорлорду каалаган жерине койдум. Бардык байланыштар төмөнкүлөр:

  • Pin A6: Үн сенсору - ЭСКЕРТҮҮ: нано эмес ардуино колдонуучулар үчүн, башка ардуинонун 7 -аналогдук пини жок. Сиз муну коддон өзгөртүүгө туура келет.
  • Pin A3: Пьезо сенсору (таптоочу сенсор)
  • Pin A0: Жарык сенсору

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

7 -кадам: Сыноо

Test It
Test It
Test It
Test It

Күч байланыштары жакшы экенин текшериңиз; аны кубат адаптерин туташтырып, жана батарейкаларды колдонуп көрүңүз. Жалпы көйгөй - бул позитивдүү жана жерге начар байланыш. ЭСКЕРТҮҮ: Мен сүрөттө жарык сенсорун көрсөтпөй турганын билем; Мен ал бөлүктү кошоордон мурун эле алдым.

8 -кадам: Аны программалоо, жабуу жана колдонуу

Аны Программалоо, Жабуу жана Колдонуу
Аны Программалоо, Жабуу жана Колдонуу
Аны Программалоо, Жабуу жана Колдонуу
Аны Программалоо, Жабуу жана Колдонуу
Программа, жабуу жана колдонуу
Программа, жабуу жана колдонуу

Мен колдонгон код Tod E. Kurt (www.todbot.com/blog) жана BlinkM (ThingM) жаратуучулары тарабынан түзүлгөн китепкананы колдонот. Мен түшүнүктүү болушу үчүн кодго эскертүүлөрдү кошууга аракет кылам; Мен азыр бош эмесмин. Кодду жүктөөдө arduino программасында сизде код китепканасы болушу керек ("BlinkM_funcs.h" деп аталган файл) же ал иштебейт. Эгерде сиз кодду көргүңүз келсе, бирок arduino программасы жок болсо, аны текст иштетүүчү программа менен ачсаңыз болот (aka wordpad Windows колдонуучулары үчүн). Жаңы функциялар үчүн идеялар ачык. Сураныч, аларды жайгаштыруудан тартынбаңыз; Мен муну ачык булак кылгым келет. Кодду түзүүнүн максаты - жаңы функцияларды оңой кошууга болот. Кээ бир функциялар өндүрүүчү (ThingM) тарабынан BlinkMге программаланган, бирок алардын экөөсүн мен жасадым; "Үн Жарыгы" жана "Мимикалык Жарык". Учурда ал төмөнкүлөргө ээ:

  • Маанай жарыгы - Акырындык менен туш келди түстөргө өчөт
  • Шам - апельсин жана сары түстөгү шам сыяктуу жаркылдайт
  • Суу чагылдыруулары - блюз, бирюза жана көк түстөр менен "Жаркыроочулар"
  • Сезондук Түстөр - Сезондук түстөрдү бурат (алар көк, жашыл, кызгылт көк жана кызгылт сары деп ойлойм)
  • Чагылган - Мезгил -мезгили менен чагылганды симуляциялоо
  • Жарыкты токтотуу - кызылдан сарыга жашылга жана кайра артка бурулат
  • Mimic Light - Жарыктын 50гө чейин өчүрүү/өчүрүү циклинин ырааттуулугун жазат (фонарикти колдонсоңуз болот), күйгүзүү/өчүрүү убакыттарын "жаттайт", анан аларды эч качан бүтпөгөн укурукта ойнотот.
  • Үн Жарыгы - Музыканын үнү менен пульсирлейт

Каалаган убакта функцияларды өзгөртүү үчүн тунук куполго жеңил басыңыз. Бул эреженин бир өзгөчөлүгү бар: сиз "мимикалык жарык" функциясына жеткенде, ал жашыл түстө күйөт. Эгер купол күйүп турганда таптап койсоңуз, ал акыркы функцияга өтөт ('үн жарыгы'). Эгер жөн эле күтө турган болсоңуз, анда ал "мимикалык жарык" функциясына өтөт. "Үн жарыгы" функциясына жеткенде, үн сенсорун окуганына байланыштуу функцияларды өзгөртүп, биринчисине бара албайсыз. Азыр оор бөлүгү бар. Маанайдын жарык корпусун жабуу үчүн, бир нече кылдат кадамдарды жасоо керек. Биринчиден, пластикалык куполдун үстүндөгү кичинекей өтмөктөр менен колдоо булактарын тизишиңиз керек. Туруктуу токтун уячасы алкакта болгондуктан жана зымдар нан тактасына кеткендиктен, пластикалык куполду ошол зымдардын үстүнөн ЭҢ БИРИНЧИ жылдырып, анан сырткы алкактын бурама мамыларын пластикалык куполдун чектери менен тизип коюңуз. Бардык өтмөктөр жээктериндеги бурама мамычаларга жана таяныч плитанын тешикчелерине туура келген таяныч булактарды жайгаштырууга туура келерин текшериңиз. Андан кийин, баары ырааттуу экенине көзүңүз жеткенден кийин, сырткы алкагын базалык табакка түшүрүңүз. Андан кийин, булактарда эч кандай зымдар тыгылып калбаганын же келечекте боло турган жерде болбогонун текшериңиз. Бул пластикалык куполдун кыймылына тоскоол болмок. Акырында, бурамаларды алмаштырып, ырахат алыңыз! Акыркы эскертүүлөр: МААНИЛҮҮ: батареяларды колдонбоңуз жана бир эле учурда дубал адаптерин сайыңыз. Мен эмне болорун билбейм, бирок бийликке байланышкан нерсенин баарын жок кылаарына ишенем !!

9 -кадам: EXTRAS

Бул жерде кээ бир видеолор: Бул BlinkMге орнотулган 6 алдын ала программаланган функциянын бири:… Бул мен кошкон ыңгайлаштырылган үн/музыкага жооп берүүчү код (бул кандай ыр экенин божомолдой аласыңбы… ?:… Жана акыры, бирок, албетте, жок жок дегенде, баарынан эң сонун (менимче) жана эң оор функция; "мимикалык жарык" функциясы:

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