Мазмуну:
- 1 -кадам: Tools керек
- 2 -кадам: Электрондук тетиктер талап кылынат
- 3 -кадам: Басылган бөлүктөр
- 4 -кадам: Complete File
- 5 -кадам: Китепканаларды орнотуу
- 6 -кадам: Программаны орнотуу
- 7 -кадам: Smartphone колдонмосу
- 8 -кадам: Vero Board Ассамблеясын куруу
- 9 -кадам: Саатты чогултуу
- 10 -кадам: Аяктоо үчүн алдыңкы капкакты орнотуу
Video: NeoPixel Сааты: 10 кадам (Сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:42
*********************************************************************************************************
БУЛ МИКРОТЕҢГЕМЧИЛЕРДИН КОНКУРСУНА КИРҮҮ, МАГА ДОБУШ БЕРИҢИЗДЕР
********************************************************************************************************
Мен бир нече жыл мурун Таиландда жүргөндө NeoPixel чексиздик күзгүсүн кургам жана аны бул жерден көрүүгө болот.
Мен муну Arduino менен эмес, жалгыз PIC18F2550 микро процессор менен кылдым. Бул кодду жазуу үчүн Микронун реестрлерин жана убактысын казып алууну камтыйт, алардын айрымдарында курама бар.
Мунун баары чоң билим жана мени жакшы абалда кармап калды, анткени ал Arduino балдардын оюну менен иштейт. Жумуштун көбү үчүнчү жактын китепканаларынын жардамы менен жасалды, мен өзүмдүн китепкана кодумду жазганга чейин.
Бул саат перифериядан дубалга жарык чыгаруу үчүн иштелип чыккан, ал WS2812B менен жекече даректелүүчү RGB LED диаметри 144 метр аралыкта орнотулган. Бул мага диаметри 200 ммди берди, мен өзүмдү 3D принтеримде жасай алам.
Бул таң калыштуу эффектке ээ, айрыкча түнкүсүн же караңгы бөлмөдө, жарык диаметри бир метрден ашкан жалпы жаркыраган 500ммдей жарык чачат. Оймо -чиймелер укмуш.
Саат сааттарды (көк), мүнөттөрдү (жашыл) жана секунддарды (кызыл) көрсөтөт. Ошондой эле 8 орундуу 7 сегменттеги дисплейдеги күн жана тизме түрүндө жуманын күнү көрсөтүлөт.
Саат смартфон аркылуу WiFi аркылуу Blynk тиркемесин жана RPi 3те иштеген жергиликтүү Blynk серверин башкарат.
Blynk үчүн жергиликтүү серверди колдонуу милдеттүү эмес жана муну орнотуу бул көрсөтмө берүүнүн бир бөлүгү эмес. Blynk жайгаштырылган вебди www.blynk.ccте каттоо эсебин түзүп, колдонмону жүктөп алгандан кийин колдонсо болот.
Алардын веб -сайтында Blynkти колдонуу боюнча көптөгөн маалыматтар бар, андыктан бул көрсөтмө берүүнүн бир бөлүгү эмес.
Кийинчерээк бул нускамада QR коду бар, анда телефонуңузда менин колдонмом болот.
Колдонмодо саатты же үлгүлөрдү көрсөтүү үчүн колдонмолор бар (колдонмодогу ЖК пикир менен), дүйнөнүн кайсы жеринде болбосун убакыт алкагын орнотуу жана NTP сервер аркылуу убакытты алуу мүмкүнчүлүгү. Ошондой эле уктап койсо болот.
Ардуиного убакыт/күн функцияларын камсыз кылган батарейканын камдык көчүрмөсү бар Real Time Clock модулу бар.
NodeMCU-E12 саатындагы камтылган программаны аба аркылуу жаңыртууга болот (OTA).
Эми баштайлы ….
1 -кадам: Tools керек
Жакшы ширетүүчү жана темир
зым ачкычтар
кичинекей зым кескичтер
кичинекей узун мурун
веро тактасын кесүү үчүн кичинекей араа
курч хобби бычак
кайчы
кагаз желим
2 -кадам: Электрондук тетиктер талап кылынат
1 х NodeMCE-12E модулу БУЛ ЖЕРДЕН
1 х RTC саат модулу БУЛ ЖЕРДЕ
1 х 8 орундуу 7 сегменттеги Max7219 модулу бул жерде
1 x DC электр уячасы бул жерде
2 x деңгээл которгучтар (Arduino 3.3v жана RTC & 7 сегментинин дисплейи 5v болуп талап кылынат) бул жерде
Бул жерде WS2812B 114/mtr LED тилкесинин 68 LEDи.
DC 5v 10A электр менен камсыздоо бул жерде.
10kOhm 1/4W каршылыгы.
Зарыл болгондой, туташтыруучу зым.
Болжол менен 77мм 56мм Vero тактасы бардык модулдарды чогултуп, зымга байлайт.
Мен чынында Adafruit деңгээлинин которуштургучун RTC модулунун I2c линиясында колдонгом, анткени ал I2c коопсуз болушу керек эле !!
Бирок, менимче, көпчүлүк 3.3vдан 5vге чейин эки багыттуу логикалык деңгээлди алмаштыруучулар иштеши керек.
LED тилкесин кесүү бир LEDды текке кетирди, анткени 60 LED тилкесинин эки учун тең прокладка үчүн төшөмчөлөр талап кылынат жана 7 LED тилкесинде подкладкалар талап кылынат.
3 -кадам: Басылган бөлүктөр
3D басылган үч бөлүк бар; негизги саат корпусу, алдыңкы капкагы жана арткы жагында батарея капкагы.
Батарейканын капкагы алынып салынышы мүмкүн.
Ошондой эле алдыңкы мукабанын астында жуманын күндөрү жазылган "Маска" басылган. Мен муну кадимки кагазга басып чыгардым. Мен бул.dwg жана.dxf файлын бердим.
2 алдыңкы мукабасы бар, бирөөнүн аты жок, жөн гана бөлүгүн түзөтө албайсыз.
Менин 3D принтерим (0.4мм сопло) Slic3r менен төмөнкү жөндөөлөргө ээ болгон:
биринчи катмар бийиктиги = 0,2 мм
катмарлардын бийиктиги = 0,2 мм
төшөктүн температурасы = 60 С.
мурундун температурасы = 210 С.
тик периметрлери = 2
горизонталдык снаряддар = 3
толтуруу = жылдыздар 45 градуста түз сызыктуу
чеке жок
колдоочу материал жок
Төшөктү тегиздөө ыкмасына ээ болууңуз катуу сунушталат
3D басылган файлдар жана маска чиймеси бул жерде:
4 -кадам: Complete File
Төмөндө саатты өзгөртүүнү каалагандар үчүн толук жыйындын IGS файлы.
5 -кадам: Китепканаларды орнотуу
ESP такталарын орнотуу
Сизге Arduino IDE керек болот. Бул орнотуу бул көрсөтмө бөлүгү эмес, бирок бул жерден жүктөп алса болот.
Arduino IDE орнотулгандан кийин, эгер буга чейин жасала элек болсо, төмөндөгү текстти File> Preferences - Кошумча такталар менеджеринин URL'дери астындагы текст кутусуна көчүрүп/чапташыңыз керек болот:
arduino.esp8266.com/stable/package_esp8266com_index.json
IDEди кайра жүктөө.
Муну аткаргандан кийин Tools> Board> Board Board Managerге өтүңүз. Жаңыртууну аяктасын жана орнотулган такталардын тизмесинде ESP8266 жамааттык версиясын көрөсүз.
КИТЕПКАНАЛАРДЫ ОРНОТУУ
Бардык китепканаларды Документтериңизге/Arduino/Libraries папкасына кадимкидей эле такта менеджери орноткондон тышкары орнотуу.
Китепканаларды орноткондон кийин, Arduino IDEди өчүрүп күйгүзүңүз, Sketch> Китепкананы кошуу> Китепканаларды башкаруу бөлүмүнө өтүңүз, жаңыртууну бүтүрүп коюңуз, тизмеде жаңы китепканаларыңызды көрүшүңүз керек.
RTClib - бул жерде жеткиликтүүAdafruit_NeoPixel - бул жерде жеткиликтүү
HCMAX7219 бул жерден
Блинк - бул жерде жеткиликтүү. орнотуу көрсөтмөлөрүн Этияттык менен аткарыңыз.
NeoPixelClock файлындагы калган бардык нерселер "Board Manager" тарабынан орнотулган же Arduino IDE орнотуусу менен пакеттелген.
6 -кадам: Программаны орнотуу
Бул этапта сыноо максатында бардыгын нан тактасына бириктирүү жакшы идея.
5v электр булагын жана/же USB кабелин туташтыруудан мурун бардык зымдарды кылдаттык менен текшериңиз.
Эскиз папкаңызга өтүңүз Документтер> Arduino.
"NeopixelClock" папкасын түзүңүз.
төмөндөгү.ino файлын папкага салыңыз.
Arduino IDE ачыңыз.
IDEди линия номерлерин көрсөтүү үчүн коюңуз, Файл> Тандалмаларга өтүңүз жана "Дисплейдин Сандарын Көрсөтүү" кутучасын белгилеп, ОК басыңыз.
NodeMCU тактаңызды USB портуна туташтырыңыз.
Куралдар> Тактага өтүңүз жана NodeMCU 1.0 (ESP-12E Module) тандаңыз
Куралдар> Портко өтүп, тактаңыз туташкан портту тандаңыз.
OTA ФИРМАЛАРЫН ОРНОТУУ
OTA жаңыртуусун колдонуу үчүн, адегенде NodeMCUго атайын программалык камсыздоону өрттөшүңүз керек.
go File> Мисалдар> ArduinoOTA> BasicOTA.
программа IDEге жүктөлөт, ssid бөлүгүн роутериңиз SSID менен толтуруңуз. Эгерде сиз чычканыңызды системалык лотоктогу WiFi сүрөтчөсүнүн үстүнө алып барсаңыз, бул ысымды көрө аласыз.
Сырсөздү тармактын сырсөзү менен толтуруңуз (көбүнчө зымсыз роутердин түбүнө жазылган.
Эми USB аркылуу NodeMCU тактаңызга жүктөңүз.
Бүткөндөн кийин, NodeMCU тактасындагы баштапкы абалга келтирүү баскычын басыңыз.
NEOPIXELCLOCK ФИРМАВАРЫН ОРНОТУҢУЗ
Файл> Sketchbook> NeoPixelClock бөлүмүнө өтүп, NeoPixelClock файлын ачыңыз.
'Авторлугуңузду' толтуруңуз, 'ssid' жана 'pass' 114 -сапта болушу керек.
Эскертүү; авторитетти кантип алуу керектиги кийинки кадамда түшүндүрүлөт
Сиз ошондой эле жергиликтүү убакыт алкагын 121 -сапка койсоңуз болот, бул дүйнө жүзү боюнча убакыт алкактарына ылайык -12ден +14кө чейинки 1/4 саат болушу мүмкүн. Учурда ал Австралиянын Квинсленд штатына коюлган.
332 -сапта, эгер сиз аны колдонуп жатсаңыз, жергиликтүү сервердин IP дарегин коюшуңуз керек.
Жергиликтүү сервер порту боюнча эскертүү. Blynk программалык камсыздоонун акыркы жаңыртуусунан улам порт азыр 8080 эмес, 8442.
Эгер сиз жаңы жаңыртылган программаны колдонуп жатсаңыз, муну өзгөртүңүз.
Же Blynk веб -серверин колдонуп жатсаңыз, 332 -сапка комментарий бериңиз жана 333 -сапка комментарий жазыңыз.
Мына ушунун бардыгын түзөтүү керек.
Эми муну NodeMCU тактаңызга USB аркылуу жүктөңүз.
Бул ийгиликтүү жүктөлгөндө, USB кабелин тактан ажыратыңыз.
Сиз Куралдар> Жаңы портту көрөсүз (IP дареги окшойт), келечектеги жаңыртуулар үчүн NodeMCU менен байланышуу үчүн муну порт катары тандаңыз.
Эгерде баары ойдогудай болсо, саат башталышы керек, эгер болбосо, NodeMCU модулундагы 'баштапкы абалга келтирүү' баскычын басыңыз.
Эскертүү: Мен кээде биринчи жолу башталбай турганын байкадым, мен көбүнчө электр менен камсыздоону ажыратып, кайра туташтырып койгом. Мен бул жүктөөнүн туура эмес жүктөлүшүн чечүүнүн үстүндө иштеп жатам.
7 -кадам: Smartphone колдонмосу
Аны колдонууну баштоо үчүн:
1. Blynk тиркемесин жүктөп алыңыз: https://j.mp/blynk_Android же https://j.mp/blynk_iOS, эгер буга чейин орнотула элек болсо.
2. колдонмону ачыңыз же кириңиз, эгер жаңы болсоңуз, сизге эсеп жазуу керек болот.
ЭСКЕРТҮҮ, бул онлайн эсеп менен бирдей эмес.
3. Жогорудагы колдонмодогу QR сүрөтчөсүнө тийип, камераны жогорудагы QR кодуна караңыз же төмөндөгү шилтемени ачыңыз -
tinyurl.com/yaqv2czw
4. авторитет коду сиз көрсөткөн электрондук почтага жөнөтүлүшү керек, аны сиз Arduino кодуна кийинки кадамда айтылышы керек. Жаңгактын сөлөкөтүн бассаңыз, керек болсо кайра электрондук кат жөнөтө аласыз.
Жогоруда айтылгандай, сиз www. Blynk.cc сайтында онлайн каттоо эсебин түзүшүңүз керек. муну жасоодон мурун.
Белгисиздиги үчүн мени кечирип коюңуз, мен муну текшере албайм, анткени менде буга чейин колдонмо бар жана мен веб -серверди колдонбойм.
8 -кадам: Vero Board Ассамблеясын куруу
Мен бардык такталарды жана модулдарды веро -тактага салууну чечтим.
Бул баарын тыкан жана тыкан кармап турат.
Схеманы төмөндөгү.pdf файлынан көрүүгө болот.
Тактадагы баштар тестирлөөдөн кийин алынып салынды, мен бардык перифериялык жабдыктарды түздөн -түз vero тактасына туташтырдым, анткени аталыштар менен байланышкан туташтыргычтар үчүн орун жетишсиз эле.
Кечиресиз, мен тактанын астынкы жагын эч кандай сүрөткө тарткан жокмун, бирок аны түшүнүү кыйын эмес. Сиз менин түзүлүшүмдү жакшырта аласыз. Vero тактасын бирдей өлчөмдө кармаңыз, антпесе ал 3D басылган базага туура келбейт.
Логикалык деңгээлди которгучтар менен LV (+3.3v) Arduino модулундагы 3v казыктарынын бирөөнө 3.3v чейин барат, HV (+5v) Arduino тактасындагы VIN пинге барат.
Бардык негиздер каалаган/бардык Arduino GND төөнөгүчтөрүнөн келип чыгат жана циклдарды болтурбоо үчүн бардыгы бири -бири менен байланышта болушу керек.
26 калибрлүү изоляцияланган бир өзөктүү зым сыяктуу нерсени колдонуңуз, PTFE изоляциясы жакшы болмок, анткени ал эрип кетпейт.
Бардык зымдарды кылдаттык менен 2 же 3 жолу текшериңиз.
Үзгүлтүксүздүктү текшерүү үчүн көп метрлик топтом менен өтүңүз, бардык Gnds VIN GNDге кайра туташканын текшериңиз.
RTC модулундагы бардык +5v байланыштарын, эки деңгээлдеги которуштуруучу модулдар HV казыктарын жана VIN +5v пин NodeMCU модулунда текшериңиз.
Башка бардык зымдарды текшерүү жакшы идея.
9 -кадам: Саатты чогултуу
Бөлүктөрдү басып чыгаргандан кийин, жаркылдаган нерселерди жана шишиктерди курч хобби бычак менен тазалаңыз.
Менде бир гана көк жана кара жип бар болгондуктан, мен LED көңдөйүнүн ички бетин күмүш түстөгү боек менен боёгом.
Бул менин оюмча жарыкты жакшыраак чагылтууга жардам берет жана дубал аркылуу жарыктын канатташын алдын алууга жардам берет.
Vero тактасынын жамааты зым менен жабдылышы керек:
LED тилкесине +5v, Gnd жана DIN vero board жыйынынан.
vero тактасынын жыйындысынан 7 сегменттин дисплейине.
vero коллегиясынан DC уячасына.
Негизги 60 жолдуу LED тилкесинин (DOUT) аягынан (саны 60) өзүнчө 7 тараптуу LED тилкесине (DIN) бир зым.
Мен 60 тараптуу LED тилкесинин аягынан (LED номери 60), +5v жана Gnd 7 тараптуу LED тилкеси үчүн Vero тактасынын ассамблеясынан алынган маалыматтарды гана (DOUT) коштум.
шорты болтурбоо үчүн, мен 60 тараптуу LED тилкесинин башына жана аягына кичинекей жука картаны койдум, анткени алар абдан жакын.
Бардык зымдарды тиешелүү узундукка ченеп, кесип салыңыз, мен бир аз боштук берүү үчүн 5 же 6 мм коштум.
Мен жабышчаак тасманын көмөкчү кагазын LED тилкелеринен алып салбадым, бул базага салууну кыйындатат жана керек болсо алып салуу өтө кыйын болмок.
Мен тилкелердин кооз жана ыңгайлуу экенин көрдүм, анан көңдөйдүн түбүнө чейин түрткүлө.
Веро коллегиясынын тешигин көңдөйгө коюңуз, аны түбүнөн 2 мм түшүрүү үчүн стенддер бар.
8 жол менен 7 сегменттүү дисплейди коюңуз, муну орнотуу үчүн стенддер бар.
DC уячасы анын көңдөйүнө бат келет, бул үчүн зымдарды тегдердин ичине ээрчиңиз. Кааласаңыз, капталдагы тегди алып салыңыз.
Бардык зымдар берилген боштуктарга тыкан салынышы керек.
Акырында, кубаттуулукту электр кубатынан тешик аркылуу өткөрүп, DC уячасына киргизип, кабелди астындагы оюкка түртүңүз.
Бардык зымдарыңызды кылдаттык менен 2 же 3 жолу текшериңиз. Төмөндөгү электр схемасын караңыз.
10 -кадам: Аяктоо үчүн алдыңкы капкакты орнотуу
Негизги блоктун сырткы шакегине чыгып турган бир нече кичинекей казыктары бар, алар алдыңкы капкактын тешиктерине дал келиши керек.
Кагаз маскасы кара түстө басылып, кесилип, клей таякча сыяктуу бир нерсе менен алдыңкы капкакка жабыштырылышы керек.
Тешиктер кагаздын алдыңкы капкагы менен базага басылганда тешилет.
Баарыбыз барууга даярбыз, аны сайыңыз, саат автоматтык түрдө башталууга тийиш, эгерде андай болбосо, мен бир нече жолу билгем, кубатты сууруп, кайра туташтырыңыз.
Эгерде сизде RTC модулунда батарейка жок болсо, анда убакытты жана күндү коюңуз.
Муну колдонмо менен жасаңыз, убакыт зонасын өйдө/ылдый контролдоо менен коюңуз, андан кийин 'NET TIME SET SET' баскычын басыңыз.
Колдонмонун терминалында ал ийгиликке жетеби же жокпу, кайра аракет кылсаңыз көрөсүз.
АТКАРЫЛГАН кезде Саат баскычын басууга болот жана саат иштеши керек жана жуманын убактысын, күнүн жана күнүн көрсөтүшү керек.
Үлгүлөрдү Үлгүлөр баскычын басуу менен иштетсе болот, бул каалаган убакта Саат баскычын же Үлгүлөр баскычын кайра басуу менен үзгүлтүккө учурашы мүмкүн.
Сааттын жарыктыгынын диоддору жана 7 сегменттин дисплейи тиешелүү жылдыргычтар менен жарыктыкка туураланышы мүмкүн.
Бардык светодиоддорду өчүрүү баскычын басуу менен өчүрсө болот.
Дубалга илип койгула, жарык дубалга, айрыкча караңгы бөлмөдө кооз көрүнөт.
Бардык суроолорго мен жооп берүүгө даярмын.
ЫРАХАТ жана мага добуш берүүнү унутпаңыз.
************************************************ ************************************************ ***** МЫКТЫ КОНТРОЛЛЕРДИН КОНКУРСУНА КИРҮҮ, МАГА ДОБУШ БЕРИҢИЗ ***************************** ************************************************** ***********************
Сунушталууда:
"Уизлинин" жайгашуу сааты 4 кол менен: 11 кадам (сүрөттөр менен)
"Уизлинин" жайгашкан жери боюнча саат 4 кол менен: Ошентип, Raspberry Pi менен бир топко чейин тепкилеп жүргөндө, мен аны мыкты колдонууга мүмкүндүк бере турган жакшы долбоорду тапкым келди. Мен бул улуу Instructable Build Your Own Weasley жайгашуу саатын ppeters0502 менен жолуктурдум жана ойлодум
LED сааты Neopixels менен: 4 кадам (сүрөттөр менен)
LED сааты неопикселдерди колдонуу: 60 неопикселди колдонуп LED саат жасоо боюнча менин көрсөтмөмө кош келиңиз. Сиз 3 PDFтин тиркемесин сааттын сегменттери үчүн, экинчисин база үчүн жана акыркысы чаптоодо жардам берүү үчүн шаблон деп табасыз. бөлүмдөр бирге. Ошентип, ком
Баланын биринчи сааты - Жарык таймер менен: 16 кадам (Сүрөттөр менен)
Бөбөктүн биринчи сааты - Жарык күйгүзүүчү таймер менен: Бул колдонмо баланын сүрөттөрүн, үй -бүлөлүк/үй жаныбарларынын сүрөттөрүн же башка нерселерди камтышы мүмкүн болгон алмаштырылуучу сааттын "жүздөрүн" жасоону көрсөтөт, аны сиз мезгил -мезгили менен алмаштырып турууну жакшы көрөсүз. Жөн гана каалаган нерсеге ачык перспективаны кысыңыз
Ай сааты ажыдаар менен: 8 кадам (сүрөттөр менен)
Ай сааты менен ажыдаар: *** Менин блогумдагы жазуу https://blog.familie-fratila.de/bone-dragon-moonlight-clock/ *** Мындан бир аз мурун мен бөлмөмө саат кургам, анткени мен жок дегенде чыдай турган конструкциялары бар эч нерсе сатып алган жокмун :-) Албетте, муну көргөн баламдын суранычы бар болчу
60 Гц электр линиясы менен синхрондуу Arduino санариптик сааты: 8 кадам (сүрөттөр менен)
Arduino санариптик сааты 60 Гц электр линиясы менен синхрондоштурулган: Бул Arduino негизделген санариптик саат 60 Гц электр линиясы менен синхрондоштурулган. Бул жөнөкөй жана арзан жалпы анод 4 цифралуу 7 сегменттүү дисплейге ээ, ал сааттарды жана мүнөттөрдү көрсөтөт. Бул 60 Гц синус толкуну качан кирерин аныктоо үчүн кайчылаш детекторду колдонот