Мазмұны:

Дабыл сағаты: 8 қадам (суреттермен)
Дабыл сағаты: 8 қадам (суреттермен)

Бейне: Дабыл сағаты: 8 қадам (суреттермен)

Бейне: Дабыл сағаты: 8 қадам (суреттермен)
Бейне: Бұл видеоны көрсеніз сіз өз атың ұмытып қаласын 2024, Шілде
Anonim
Олед дабыл сағаты
Олед дабыл сағаты

Ардуино/ESP32 сағаттары өте көп, бірақ олар жақсы және таза OLED -ді қолдана ма?

Мен arduino мен ESP32 -мен біраз уақыт тәжірибе жасадым, бірақ мен оны ешқашан дайын өнімге жеткізе алмадым. Мен 1,3 дюймдік 4 монохромды OLED бар оятқыш жасадым. Сағатта сонымен қатар төсектің жанындағы шамы мен USB зарядтау порты бар (ешкімнің төсегінің жанында қосалқы розеткалар жоқ). OLED -лер де күңгірт, бұл менің қызым менің жобама қауіп төндіргеннен кейін соңғы минутта қосылды. Подругалардың дауысы жеткіліксіз қараңғы болмауы керек, мен сонымен қатар кодтың нұсқасын бере аламын, онда 3 дисплей белгілі бір уақыт аралығында жұмыс істейді. Мақсаты - «прототиптен» асып түсетін қарапайым қызмет ететін сағат жасау. Сағатты жасау кезінде мен шешуге тура келген кейбір қиындықтарға тап болдым, сондықтан мен бұл нұсқаулықпен бөлісуге тұрарлық деп ойлаймын. Сағатты кішкентай құралдармен жасауға болады, маған «ұнамайды» және келесі қадамда мен 10.000 €/$ CNC диірмені «оқулықтарын қолдандым.

Бұл нұсқаулықта түсіндірілетін кейбір нәрселер (құрылымсыз-қабылдау):

- I2C OLED дисплейін arduino/ESP32 көмегімен қалай қосуға/сымға қосуға болады

- Бір arduino/ESP32 көмегімен бірнеше I2C нысандарын қалай қолдануға болады

- Айналмалы кодер көмегімен «айналдыруға болатын» мәзірді қалай жасауға болады (+ ESP32/arduino бар кодерді пайдалану әдісі)

- Фритингті қолдана отырып, теңшелетін ПХД қалай құрастыруға және тапсырыс беруге болады.

- Сағат сонымен қатар RTC (нақты уақыт сағаты), жетекші драйвер, кернеуді төмендету модулін қолданады … Мен бұған мүлде кіре алмаймын, себебі бұл модульдер үшін өте көп ақпарат бар.

Мен кәсіби бағдарламашы емес екенімді атап өткім келеді. Менің нұсқаушымның мақсаты - мен жоғарыда айтқан нүктелерді түсіндіру. Мен бәрін түпкілікті өнімге қалай біріктірдім - бұл ең таза әдіс емес. Бұл маған бәрін бақылауға мүмкіндік берді.

Жабдықтар

Жабдықтарды сатып алғанда, мен әрқашан сапаның/құжаттаманың маңыздылығын бағамен өлшеуге тырысамын. Менің жабдықтарым-А маркалары мен қытайлық арзан бөлшектердің қоспасы. Mouser - бұл керемет жеткізуші, егер сапасы маңызды болса, мен Banggood/Aliexpress -тен арзан бөлшектерге тапсырыс беремін.

- ESP32 тақтасы, мен aduzzut -дан Huzzah32 қолдандым, бірақ басқа да арзан (арзан) нұсқалар бар. Мен Huzzah32 таңдадым, себебі ол өте жақсы құжатталған.

- 4 1.3 дюймдік I2C OLED дисплейі (128x64, SH1106 драйверімен), 0,96 дюйм жиі кездеседі, бірақ бұл жоба үшін мен 1.3 дюймді жақсы көремін.

- Светодиодты басқаратын Sparkfun femtobuck драйвері

- RTC сағаты, мен литий ұяшығымен бірге қолдандым

- Arduino нано

-Әйел USB 2.0 порты (мен қолдандым: Stewart коннекторынан SS-52200-002)

- Әйелдер тұрақты ток ұясы (мен қолдандым: Switchcraft L722A)

- 12В 3А тұрақты ток адаптері (GST36E12-P1J орташа ұңғымадан)

- Теңшелетін ПХД, міндетті емес, бірақ бұл жобаны әлдеқайда ықшам және қызмет көрсетуге мүмкіндік береді, егер бөлшектері өлсе + сенімділігі жоғары, сымдар аз болғандықтан (jlcpcb.com)

- М3 бұрандалар мен болттар

- М3 жезден жасалған кірістірулер

- Pololu -дан 12В -тан 5В -қа дейін төмендету модулі (DF24V22F5)

- 3 ватт радиатормен жұмыс істейді

- Өткізгіш сымдар

- Зумер

- I2C мультиплексоры (adafruit -ден TCA9548A)

- 2 айналмалы кодер (мен кейбіреулерін сынап көрдім, барлығы менің кодымен жұмыс істемейді. «DFrobot» -тен біреуі жұмыс істейді, ал «DIYmore» дөңгелек ПХД -мен жұмыс істейді. Менің кодым батырмамен жұмыс істемейді) KY-040 типті. Менің оятқыш DIYmore құрылғысын пайдаланады, себебі оларды панельге бекіту өте оңай (қосымша бұрандалар/тесіктер қажет емес).

- әйел тақырыптарының ассортименті (міндетті емес)

- Рамкаға арналған ағаш: 18mmx18mmx2400mm

- Бақылау қағазы

Мен кейбір құралдарды қолдандым (дәнекерлеуіш, 3 -ші қол, араа …), бірақ шын мәнінде экзотикалық ештеңе жоқ.

1 -қадам: Оледті қолдану

Оледті қолдану
Оледті қолдану
Оледті қолдану
Оледті қолдану
Оледті қолдану
Оледті қолдану

OLED -ді пайдалану үшін сізге кітапхананы орнату қажет. Мен U8G2lib Oli Kraus -тан қолданамын, ол өте түсінікті және анық мысалдары бар анықтамалық нұсқаулық бар.

Тақтаны қосу үшін (ESP немесе arduino) SDA және SCL түйреуіштерін табу керек. Бұл түйреуіштер I2C байланыс түйреуіштері болып табылады. Егер сіз оларды таба алмасаңыз, Google -дің арнайы тақтасының «түйінін» табыңыз.

Мен кейбір мысал кодын қостым. Код arduino үшін де, ESP32 үшін де жұмыс істейді, бірақ ESP32 жады аз болады. Мен осы уақытқа дейін қолданған барлық оледтер 3.3v (ESP32) және 5V екеуінде де жұмыс істейді.

2 -қадам: бірнеше OLED

Бірнеше OLED
Бірнеше OLED

Бұл жерде менің жобам басқа дабыл сағаттарынан өзгеше бола бастайды. Көптеген arduino/ESP -те тек бір немесе екі I2C түйреуіші бар. Бұл I2C бөлшектерін пайдалануды шектейді. Егер менде I2C 4 сенсоры болса және олардың көрсеткіштерін I2C дисплейінде көрсеткім келсе ше? Мультиплексорды енгізіңіз. Мулиплексер I2C -тің 7 түрлі бөлігін өңдеуге мүмкіндік береді. Бұл менің ESP32 -ге I2C нақты уақыт сағатын қолдануға және I2C көмегімен уақытты 4 дисплейде қайта көрсетуге мүмкіндік береді (немесе одан да көп, сізді тоқтатуға рұқсат етпеңіз).

Мен ESP32 үшін кейбір мысал кодын қостым, осыдан бастап мен arduino сақтай алатынына сенімді емеспін. Мысал тек дисплейлерді пайдаланады, бұл I2C сенсорлары сияқты басқа да нәрселер болуы мүмкін. Принцип әрқашан бірдей, сіз дұрыс арнаны «tcaselect (#);» деп атайсыз; функциясын қолдана отырып, сіз I2C объектісіне қажет кодты орындайсыз.

3 -қадам: Айналмалы кодер көмегімен айналдырылатын мәзір құру

Айналмалы кодер көмегімен айналдырылатын мәзір құру
Айналмалы кодер көмегімен айналдырылатын мәзір құру
Айналмалы кодер көмегімен айналдырылатын мәзір құру
Айналмалы кодер көмегімен айналдырылатын мәзір құру
Айналмалы кодер көмегімен айналдырылатын мәзір құру
Айналмалы кодер көмегімен айналдырылатын мәзір құру

Алдымен кодерлерді тексеріңіз. Мен сіздің кодер модульдеріңізді тексеру үшін кейбір кодты қостым. Жабдықта көрсетілгендей: Мен өз кодымды DF роботының айналмалы кодер модульдерімен және DIYmore дөңгелек ПХД модулімен ғана сәтті тексердім. Дұрыс кодерлерді жоғарыдағы суреттерден қараңыз.

Мен қолданған кітапхана мынау:

Мен қосқан PDF менің сағатыма қолданған мәзір құрылымына көмектеседі деп үміттенемін.

Кодердің жұмыс жасауы мен үшін бұл жобаның ең қиын бөлігі болды. Әр түрлі кодерлер мен ESP32 -мен әрқашан үйлесімді емес көптеген кітапханалар бар. Бірақ менің ойымша, айналмалы кодер (жұмыс істейтін) - бұл талғампаз шешім, егер сіз бірдеңе енгізгіңіз келсе. Егер мен тек түймелерді қолданатын болсам, маған 1 -ден көп қажет болар еді, ал уақытты белгілеу көп басуды қажет етеді.

4 -қадам: Алдыңғы кодты бірге қою

Алдыңғы кодты бірге қою
Алдыңғы кодты бірге қою

Тақырып түрі менің не істегенімді қорытындылайды. Мен ішінара бөлікті сынап көрдім, содан кейін бәрін біріктірдім. Бірақ ештеңе оңай болмағандықтан, кейбір нәрселерді өзгертуге тура келді. Сериялық байланыс - баяу процесс. Бұл кодерді дұрыс оқуға кедергі келтіреді. Мұны жеңу үшін мен кодердің түйреуіштеріне үзілістерді қостым. Егер кодерді бассаңыз немесе бұрсаңыз, кодерді оқу коды бірден шақырылады.

Мәзір қалай жасалғанын түсінгеннен кейін, өз қалауыңыз бойынша функцияларды қосу немесе жою өте оңай екенін көресіз. Мүмкін сіз қазіргі ауа -райы мен уақытты интернеттен алып, оны көрсеткіңіз келе ме?

Мен көптеген осындай идеяларды қалдырдым, өйткені мен бәрінен бұрын сенімді бейбітшілікті қаладым. Автоматты түрде ештеңе жасамайтын адам. Мен күндізгі үнемдеу аймағында өте тақ сағаттарда жұмыс жасаймын. Сағат өзгерген сайын мен ұйықтап қаламын. Менің телефоным сағатты автоматты түрде өзгерте ме? Менің сағатым болады ма? Мен оны өзгертпейінше, менің сағатым болмайды. Мүмкін сіз сағатты ас үйге қойғыңыз келе ме? Әр түрлі сценарий, жады таусылғанша мүмкіндіктерді қосыңыз!

5 -қадам: Fritzing + схемасы бар реттелетін ПХД

Fritzing + схемасы бар реттелетін ПХД
Fritzing + схемасы бар реттелетін ПХД
Fritzing + схемасы бар реттелетін ПХД
Fritzing + схемасы бар реттелетін ПХД
Fritzing + схемасы бар реттелетін ПХД
Fritzing + схемасы бар реттелетін ПХД

Назар аударатын жайт: Adafruit huzzah32 -ді USB сымы арқылы қуаттай алатын кезде, микро USB қуат көзін бір уақытта пайдаланбау үшін абай болу керектігін көрсетеді. Менің ПХД төмен түсіру арқылы жұмыс істейді, содан кейін ол USB түйреуіші арқылы хузаға қуат береді. Сондықтан жүктеу кезінде әрқашан сыртқы қуатты ажыратыңыз/хузаны тақтадан алыңыз.

Мен ПХД -да әйел тақырыптарын дәнекерлеуді шештім, себебі бұл бөлікті ауыстыруды немесе мысалы, қосымша I2C датчигін қосуды жеңілдетеді. Бұл сонымен қатар бағдарламаларды жүктеу үшін нано немесе ESP32 жоюға мүмкіндік береді.

Мен Frizting файлын қостым, мен мұнда роман жаза аламын, бірақ менің ойымша, бұл мысал жақсы сөйлейді. Мен барлық орнатудың схемасынан бастадым. Фритзингтің қоқыс жәшігінде көптеген бөлшектер болса да, бәрі де жоқ. Кейде интернеттен Fritzing бөлігін таба аласыз, кейде таба алмайсыз. Мен таба алмайтын бөліктерді мен әйел затбелгі бөлігімен алмастырдым. Егер сіз оны тінтуірдің оң жақ түймесімен бассаңыз, тақырыпты қажетті түйреуіштер санына өңдей аласыз және оған түйреуіш тағайындай аласыз. Мен мұны мен таба алмайтын әр бөлікте жасадым. Барлық модульдер 0,1 дюйм (2,54 мм) бірдей қадамды қолданатындықтан, бұл сізге бөлікке дұрыс аралық береді.

Содан кейін сіз фризинг қосымшасының PCB көрінісіне ауысасыз. ПХД орнатылады, егер сіз оны бассаңыз, оның өлшемін орнатып, бір немесе екі қабатты ПХД таңдай аласыз. Менікі 2 қабатты қолданады. Фритзинг схемалық көріністе жасалған қосылыстарды ұсынады. Бағдарламада авторуту мүмкіндігі бар, бірақ мен оны ешқашан қолданбаймын. Мен қосылымдарды қолмен реттегенді ұнатамын. ПХД көрінісінде сары қосылыстар жоғарғы қабатта, қызғылт сары төменгі қабатта. Егер сіз қосылымды нұқсаңыз, сіз оның қасиеттерін таңдай аласыз.

Нақты ПХД жасау үшін оны гербер файлы ретінде экспорттау керек. Мұны жасамас бұрын, «маршруттау» қойындысында дизайн ережелерін тексеруге болады, егер бәрі тексерілсе, «ПХД үшін экспорттау» түймесін басуға болады. Көптеген өндірушілер gerber файлын сұрайды, сондықтан герберге экспорттауды таңдаңыз.

Мен өзімнің ПХД -ға JLCPCB -ден тапсырыс бердім, маған олардың сізге бірден баға ұсынғаны ұнайды. Әрине, басқа да көптеген нұсқалар бар.

Схема туралы: 2 кернеу қолданылады. Жарықдиодты және фемтобук 12 В кернеуімен тікелей қоректенеді. Қалғаны 5 вольтты кернеу арқылы төмендетілген.

6 -қадам: Дизайн + Ласеркуттер

Дизайн + Ласеркуттер
Дизайн + Ласеркуттер
Дизайн + Ласеркуттер
Дизайн + Ласеркуттер

Алғашқы дизайн үшін мен қатты еменді қолдануға тырыстым (мен ағаш өңдеу сабақтарында оқимын), бірақ бұл өте жақсы емес екені түсінікті болды. Ағаш тым қалың, сондықтан сіздің бөлшектеріңізді бекіту қиын. 3 мм қайың мультиплексі кодерлер мен дисплейлерді бекітудің оңай жолдарын ұсынады.

Мен Роттердамда орналасқан әуесқойлар үшін қол жетімді snijlab.nl онлайн лазеркут қызметін таптым (олар Бельгияға, Нидерланды мен Германияға жөнелтіледі). Олардың веб -сайтында сіз өзіңіздің суреттеріңізді жүктей аласыз, олар бірден сіздің бағаңызды айтады. Мен жұмыста Autocad қолдандым, бірақ бағдарламалық жасақтама маңызды емес. Бұл векторлық сурет болуы керек (Vectr, Illustrator, Inkscape …). Дүкендердің көпшілігі түстерді пайдаланып, кесу немесе гравировка жасау керектігін анықтайды.

Есте сақтау керек кейбір нәрселер:

- Макс. лазерлік кескіштің өлшемдері (мен бөлшектердің айналасына жақтау сыздым)

- Мин. кесу арасындағы қашықтық

- Қос сызық жасамайтындығыңызға көз жеткізіңіз, лазер сізге қосымша шығын жасайды, бұл сізге қымбатқа түседі.

- PDF -ке жоспар құрғанда, 1: 1 -ге сызба жасағаныңызға көз жеткізіңіз. Сіз қағазды кішірейткіңіз келмейді.

7 -қадам: құрастыру

Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея

Мен сағатты ағаш жақтаудың айналасында жасадым, панельдер M3 бұрандалары мен рамадағы кірістірулермен орнында сақталады. Егер мен 2 -нұсқаны құрастыратын болсам, мен панельдерді бекіту үшін алюминий «L» профильдерін қолданар едім. Жезден кірістіруге арналған тесіктерді дәл бұрғылау өте қиын болды. Маған өте ұзақ уақыт қажет болды, тек қана қолайлы нәтиже. Бұл, әрине, лазерлік кескінді қайта қарауды білдіреді. Менің ойымша, алюминий профильдері мен болттар мен гайкалар жақсы нәтиже береді.

Жарықты жақсы тарату үшін мен тесіктердің ішкі жағына калька жапсырдым. Бұл жарыққа жақсы жарық береді.

8 -қадам: Бұл жерде тоқтамаңыз

Мұнда тоқтамаңыз
Мұнда тоқтамаңыз
Мұнда тоқтамаңыз
Мұнда тоқтамаңыз
Мұнда тоқтамаңыз
Мұнда тоқтамаңыз

Жоба ESP32 айналасында орналасқан, мен оны әрең қолдандым. Менің жатын бөлмемдегі шамдарды blynk көмегімен қашықтан басқаруға болады. Оларды сағатпен басқару - бұл аз ғана қадам. Мүмкін сізге үйдің температурасын көрсететін қосымша дисплей қажет пе? Немесе кейбір жергілікті сенсорлар (бұл мультиплексорда қосалқы I2C қосылымдары әлі де бар!). Уақытты/дабылды қосымша мен bluetooth арқылы орнатуға болады ма?

Нені өзгерттіңіз, нені өзгертесіз, мен нені өзгертуім керек екенін айтыңыз …

Ұсынылған: