Мазмуну:

Infinity Clock - Arduino - WS2813 жана DS3231: 5 кадам (сүрөттөр менен)
Infinity Clock - Arduino - WS2813 жана DS3231: 5 кадам (сүрөттөр менен)

Video: Infinity Clock - Arduino - WS2813 жана DS3231: 5 кадам (сүрөттөр менен)

Video: Infinity Clock - Arduino - WS2813 жана DS3231: 5 кадам (сүрөттөр менен)
Video: Making the best Arduino Clock for beginners 2024, Июль
Anonim
Image
Image
Чексиздик сааты - Arduino - WS2813 жана DS3231
Чексиздик сааты - Arduino - WS2813 жана DS3231

Чексиздик сааты - Arduino - WS2813 жана DS3231

Мен саат кургум келди жана Arduino менен чексиз саат жасоодо колумду сынап көрүү идеясы жакты. Мен муну жалпы нерселерден куруп, программаны өзүм жазгым келди.

Infinity Clock деген эмне?

3D иллюзия күзгү эффекти жарыктын нурун чексиз (теориялык жактан чексиз) жолу секире ала турган эки параллелдүү чагылтуу бети болгондо пайда болот. Жарыктар чындыгында аралыкты аралап өткөндүктөн, чагылышуулар алыстап кетет окшойт. Infinity күзгүсүнө түстүү диоддорду кошуу менен биз аналогдук саатты окшоштурууга аракет кылабыз.

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

1 -кадам: Бул долбоор үчүн керектүү бөлүктөр

Бул долбоор үчүн керектүү бөлүктөр
Бул долбоор үчүн керектүү бөлүктөр

Бөлүктөр тизмеси:

  1. Tayduelectronics боюнча Arduino Uno $ 6
  2. Arduino uno үчүн протошил. Сиз Amazonдон 2.50 үчүн бул жерден ала аласыз.
  3. DS3231 плюс батарея. бул жерден Амазонкадан болжол менен 3.00гө ала аласыз.
  4. WS2813 LED 144 1 метрге. Бул жерде Amazon боюнча 20 доллар.
  5. 470 OHM 1 W Карбон фильм каршылыгы Taydaelectronics боюнча 1 центке жакын.
  6. 1000uf 16V Электролиттик конденсатор Taydaelectronics боюнча 9 цент
  7. 5v электр менен камсыздоо- Мен эски BlackBerry заряддагычын колдондум.
  8. 6 тегерек күзгү. Амазонкада 5 доллардын тегерегинде
  9. Амазонкада 10дун тегерегинде 6in акрил диск
  10. 2 - 6 дюймдук жыгач саймалар (ооба туура) Amazonдо ар бири 2 доллар
  11. Күмүш бир тараптуу күзгү пленка. Ebay эң арзан окшойт.
  12. Түрдүү зымдар.
  13. 3/8 "жыгачтан жасалган чарчы дубель HomeDepot $ 1.27
  14. эски жыгач саат базасы же башка дисплей стенди.
  15. 2 кичинекей сыдырма галстук.

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

Сизге ошондой эле ширетүүчү үтүк керек болушу мүмкүн.

Мен долбоор болжол менен $ 40.00 турат деп күткөм

2 -кадам: PC орнотуу

Сиз PC орнотуу
Сиз PC орнотуу
Сиз PC орнотуу
Сиз PC орнотуу
Сиз PC орнотуу
Сиз PC орнотуу

Эгерде бул сиздин биринчи arduino долбооруңуз болсо:

  1. Arduino программасын arduino.cc сайтынан жүктөп алыңыз
  2. USB кабели менен ЖКга Arduino туташтырыңыз.
  3. Программаны баштагандан кийин үч китепкананы орнотушуңуз керек болот:

    • "Эскиз" менюну чыкылдатыңыз, андан кийин "Китепканаларды кошуу" жана "Китепканаларды башкаруу …" дегенди басыңыз.
    • Эки китепкананы орнотуңуз: FastLED жана RTClib. Көбүрөөк маалымат алуу үчүн сүрөттөрдү караңыз.
  4. Гитубумдан Arduino эскизин алыңыз

    • Мен кодду аягында карап чыгам, андыктан аны керек болгондо өзгөртө аласыз.
    • Бул учурда Infinity_Clock_DS3231_WS2813.ino программасын жүктөңүз
  5. Arduino жүктөө үчүн Sketch жана Uploadго өтүңүз.
  6. Нускаманын акыркы бөлүмү конфигурацияланган параметрлердин айрымдарын камтыйт.

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

3 -кадам: Долбоорду өткөрүү

Долбоорду өткөрүүдө
Долбоорду өткөрүүдө
Долбоорду өткөрүүдө
Долбоорду өткөрүүдө

Эгерде сиз ProtoType Shield колдонуп жатсаңыз, аны Arduinoго коюңуз.

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

DS3231 - Реалдуу убакыт сааты модулу

DS3231 модулун нан тактасына салып, сүрөттөгүдөй туташтырыңыз.

  • GNDден Arduino Ground
  • Arduino 5V VCCге
  • SDAга Arduino A4
  • Arduino A5 SCLге

Сүрөттө мен 5v менен Ground'ду нандын үстүндө иштетүү үчүн зым менен байланыштырам, анткени кийинчерээк биз тышкы кубатты кошкубуз келет.

WS2813 LED тилкесин тиркеңиз

  • arduino 5V сиздин 5V кубатыңызга.
  • Ортодогу эки туташтыргыч - ашыкча маалымат төөнөгүчтөрү. алар 7 -пинге барышат

    Pin7 жана эки маалымат жетелейт ортосунда 470 OHM каршылыгын коюу үчүн шектенбесек болот

  • Arduino Ground акыркы туташтыргычы.

Тышкы 5В электр булагын тиркеңиз (LED тилкесин arduino кубатынан узак убакыт иштетүү сунушталбайт).

  • Коргошундардын ортосуна 1000uf электролиттик конденсатор кой.
  • Күч менен жерди Arduino Power (5V) жана Ground (GND) менен туташтырыңыз

Мен тышкы кубаттуулукту жана USBди Arduinoго бир убакта туташтырууну сунуш кылбайм.

4 -кадам: Infinity Mirror түзүңүз

Infinity Mirror түзүңүз
Infinity Mirror түзүңүз

Infinity Mirror түзүүнүн кадамдары:

  1. Тасманы акрил диксасына колдонуңуз. Бул сиздин бир тараптуу күзгүңүзгө айланат.
  2. Акрил дискин Сайма саймага салыңыз. Бутту тайып кетпеши үчүн тартыңыз
  3. Күзгүнү башка Embroiery алкагына салыңыз. Винтти төмөн түшүрүңүз.
  4. Квадрат дубалды кичине бөлүктөргө бөлүңүз. болжол менен 1/2"
  5. LED диаметри тегеректин ичине багытталган, тилкени айландырыңыз.

    1. Липти кармап туруу үчүн сыдырма байламталарды колдонуңуз.
    2. Сиз zip галстук бир оюк кесип керек болушу мүмкүн.
  6. Укурукту күзгүгө коюңуз

    1. Жыгач блокторду бөлгүч катары колдонуңуз
    2. Блокторду ордуна коюңуз. Алар жетектөөчү орунду кармоо үчүн жетиштүү коопсуз болуш керек.
  7. Акрил күзгүсүн күзгүнүн/светодиоддун үстүнө коюп, ордуна клей салыңыз.

5 -кадам: Кодекс

Кодекс
Кодекс
Кодекс
Кодекс

Программа Real Time Clock китепканасын жана Fastled китепканасын колдонот.

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

  • ОФСЕТ - бул бири -бирине дал келүү. Программа үстөлдүн LED0ден болушун күтөт. Менде 3 LED диапазону бар.
  • CLOCKSTART - бул жерде түшкү саат турган. LED 30 аны электрдик туташуулардан карама -каршы коёт.

Мен HTML түстөрүн колдонуу үчүн программаны жазгам. Сиз аларды https://htmlcolorcodes.com/ сайтынан ала аласыз, жөн гана # программасындагы 0xке алмаштырыңыз.

Сиз фонду эртең менен/ке чейин өзгөртө аласыз

  • backgroundAM = 0x070707;
  • backgroundPM = 0x646D7E;

LED сааттын колу:

  • hourHand = 0x000FFF;
  • minHand = 0x00CC00;
  • secHand = 0xcc0000;

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

  • theeledhour = true; // сиз муну чын же жалган кыла аласыз
  • extraHourHand = 0x00001F;

Дагы бир жагымдуу өзгөчөлүк - RTClib сиздин DS3231 батарейкаңыздын алынып салынгандыгын аныктайт жана убакытты компиляция убактысына коёт. Бул жаңы DS3231 үчүн жакшы өзгөчөлүк.

Эгерде сиз документтин башында эскизди албасаңыз, аны GitHubдан тапса болот

Бул Нускаманы окуганыңыз үчүн рахмат. Уулум жардам берди жана бул биз үчүн кызыктуу долбоор болду. Биз оптикалык конкурста каралат деп үмүттөнөм.

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