Мазмұны:
- 1-қадам: ESP-01 терең ұйқы модулі
- 2-қадам: ESP-01 Терең ұйқы коды
- 3-қадам: ESP-01 дыбыстық сигнал модулі
- 4-қадам: ESP-01 дыбыстық сигнал модулінің коды
- 5 -қадам: Қорытынды ойлар
Бейне: ESP-01 Терең ұйқыдағы қозғалыс сенсоры: 5 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
Мен іске қосылған кезде электрондық поштаны жіберетін үйдегі қозғалыс сенсорларын жасауда жұмыс істедім. Бұл үшін көптеген нұсқаулықтар мен басқа да мысалдар бар. Жақында мен мұны батареямен жұмыс істейтін PIR қозғалыс сенсоры мен ESP-01 көмегімен жасауым керек болды. ESP-01 өте функционалды және барлық мүмкіндіктерге ие, сондықтан неге минимумды және ең қымбатты қолдануға болмайды? Қоспаға қозғалыс сенсоры қосылған кезде дыбыс сигналын қосатын басқа бөлек және қашықтағы ESP-01 модулі қосылды.
Код пен ақырғы схема интернеттегі көптеген көздерден жиналды, мен оларды нақты анықтай алмаймын деп ойлаймын. Электрондық поштаны gmail арқылы жіберу идеясы нұсқаулықтан және басқа көздерден келді, ал түпкілікті код - бұл көздердің амальгамасы. Жұмысқа терең ұйықтау мені нәтижесіз болатын көптеген жолдарға алып келді. Бір қызығы, егер жол жемісті болса, сіз басқа жолдарды іздеуді тоқтатасыз. Сондықтан менің табысқа жетуіме үлес қосқан және әлі белгісіз адамдарға алғыс айтамын.
Менде PIR сенсорының ESP-01 терең ұйқысын қосуға жұмыс жасау мәселесі болды. Жұмыс істегенге дейін көптеген жолдар.
Айтудың қажеті жоқ, мен қажет электрониканы жақсы түсіну үшін қызықты кедергілер болды. Сіз бірдеңе жұмыс жасамайынша үйренуді жалғастырасыз, содан кейін сізге үйренудің қажеті жоқ.
ESP-01 кез келген басқа ESP8266 модулі сияқты терең ұйқыны да қамтамасыз етеді, егер сізге уақытты ұйқы қажет болмаса. Егер сіз модульдің белгіленген уақыт өткеннен кейін оянуын қаласаңыз, ESP-01 модулі емес. Бірақ бұл мен қалағандай болған жоқ. PIR пайдалану кезінде өткен уақыт мағынасыз. Мен ESP-01 PIR сезетін қозғалыспен қозғалғанда ғана оятуын қаладым. Егер сағат немесе күн бойы қозғалыс сезілмесе, ESP-01 батареяның ең аз қуатын пайдаланып ұйықтап қалады.
Сіз GPIO16 ESP8266 қалпына келтіруге қосылған көптеген схемаларды көресіз, себебі GPIO16 - ояту сигналы. Бұл рас, бірақ бұл уақытша ұйқының ояту сигналы. Біз бұл PIN кодын елемеуге болады, бұл жақсы, себебі ол ESP-01-де жоқ.
Негізінде бізге ESP-01 қалпына келтіру түйреуішін іске қосу үшін PIR сигналын алу ғана қажет. Сіз болжайтын бірінші қиындық - Reset параметрі LOW сигналында іске қосылады және PIR іске қосылған кезде жоғары сигнал жібереді. Қалпына келтіру ЖОҒАРЫ болуы немесе жүктеу кезінде өзгермелі болуы керек. Бұл қысқа болу үшін, мен әртүрлі тізбектерді сынап көргеннен кейін, жүктеу кезінде RESET түйреуішін жоғары ұстап тұру үшін тартылатын резисторы бар NPN транзисторын қолдануға шешім қабылдадым. PIR шығысы минималды, бірақ ол транзисторды қосуға жеткілікті базалық ток береді.
Төмендегі схемада көріп тұрғаныңыздай, ESP-01 PIR қозғалысы сезілген сайын терең ұйқыдан оянады.
Бірақ басқа мәселе болды. ESP-01 қалпына келтіру PIR қозғалысты сезуді тоқтатып, төмен сигналға оралғаннан кейін ғана болды, транзисторды өшіріп, тарту резисторының арқасында қалпына келтіру түйреуішін ЖОҒАРЫ күйге қайтарады. Бұл электронды поштаның жіберілмейтінін немесе дыбыстық сигналдың PIR КІНДЕН кейін қозғалысты сезуін тоқтатқанға дейін қосылмайтынын білдіреді. Мен қозғалыс сезілген кезде триггердің болғанын қалаймын.
Мен бұл мінез-құлықтан ESP-01 сигналдың көтерілу жиегінде іске қосылатынын анықтадым. Қалпына келтіру түйреуішін жерге тұйық ұстау ESP-01-ді ұйқы күйінен шығармайды, кернеу ЖОҒАРЫ сигналға көтерілген сәтте қалпына келтіріледі.
Бұл мінез -құлыққа менің қарапайым жауап - бұл PIR шығысы мен транзисторлық базаның арасындағы сызыққа конденсатор қосу. Бұл транзистордың конденсатор зарядталып жатқан кезде ғана қосылуына әкелді. Зарядталғаннан кейін қосымша ток болмады және транзистор өшірілді. 5к резистор токтың жерге ағуына мүмкіндік береді. Мен мұны ESP-01 орнына светодиодпен сынап көрдім және светодиодтың жарқылдығын өшірмес бұрын бір секунд ішінде көре алдым. Бұл кішкене импульс Қалпына келтіру түйреуішін бір сәтте жерге қоюға жеткілікті болды.
1-қадам: ESP-01 терең ұйқы модулі
Терең ұйқы модулі екі жұмыс кернеуін қолданады. PIR үшін аккумуляторлық кездейсоқ 5v+, сонымен қатар ESP-01 үшін 3,3 вольтты реттегіш тақта. Мен сондай -ақ зақымдалған бөлшектерді кері кернеуден қорғау үшін диодты қосамын. Бұл қосымша қуатты қажет етеді және батареяның кернеуін 0,7 вольтке төмендетеді. Егер сіз аккумуляторлық сымдарды ешқашан қайтармайтыныңызға сенімді болсаңыз, диодты схемадан тыс қалдыруға болады. Ыңғайлылық үшін коммутатор да қосылады.
Бұл модуль менің терең емес ұйқы схемасына кішігірім жаңарту. Ұйықталмайтын конфигурацияда PIR ESP-01 RX істікшесіне тікелей қосылады. Мен ESP-01-дің RX түйреуішін бірнеше себептерге байланысты PIR-ге кіріс түйреуіші ретінде қолданамын. GPIO0 жұмыс істемеді, себебі жүктеу кезінде PIR шығыс коды төмен болады, бұл ESP-01 жарқыл режиміне өтеді. Мен GPIO2 қолданған жоқпын, себебі ол кезде визуалды беру үшін кіріктірілген жарықдиодты пайдалана алмадым. RX және TX түйреуіштері көбінесе қосымша IO түйреуіштері ретінде сипатталады, бірақ менің тәжірибем RX - бұл қосымша INPUT түйреуіші, ал TX - бұл қосымша OUTPUT түйреуіші.
Терең ұйқы конфигурациясында RX байланысы міндетті түрде қажет емес. Мен оны енгізу жоғары болса, жарық диодты қосу арқылы PIR қанша уақыт іске қосылатынын бақылау үшін ғана қолданамын. Жоғарыда айтылғандай, егер сіз цикл функциясын алып тастап, тек орнату процедурасын қолдансаңыз, онда RX байланысы қажет емес.
Міне, ESP-01 терең ұйқы модулінің бөлшектер тізімі:
1 - 5 x 7 см ПХД прототиптік тақтасы
1-2 істікшелі қосқыш
2 - 1 x 3 әйел тақырыптары
1 - AMS1117 - 3.3 кернеу реттегішінің схемасы
1 - 1 x 3 Тік бұрышты еркек тақырыптық түйреуіш
1 - 1 х 3 аналық розеткаға арналған түйреуіш түйреуіші
1 - 1 х 4 аналық розеткаға арналған түйреуіш түйреуіші
1-2 х 4 әйел басы
1 - 1 уф конденсатор
1 - HC -SR501 PIR қозғалыс сенсоры
1 - 2N2222 транзисторы
1 - 10к резистор
1 - 4,7км резистор
1 - 1к резистор
1 - 1N4148 диод
1 - SS12D00G4 SPDT қосқышы
1 - ESP -01
1 - 4АА батарея жиынтығы
Бейнеде схемада 2 х 4 тақырыптың орнына ESP-01 нан тақтасы адаптері қолданылатынын ескеріңіз. Бұл адаптер 2 x 4 басын дәнекерлеуге оңай болғанымен, ол жақсы жұмыс істейді және шынымен жақсы сәйкес келеді.
2-қадам: ESP-01 Терең ұйқы коды
Терең ұйқы коды екі функцияны орындайды. Электрондық пошта хабарын жіберіңіз (әдепкі бойынша gmail арқылы) және дыбыстық сигналды іске қосу үшін байланысты ESP-01 сигналдық модуліне http веб сұранысын жіберіңіз.
Іске қосылған кезде, бұл модуль екі хабарландыру нұсқасын ұсынады және электрондық пошта хабарларына назар аудармаған кезде әсіресе пайдалы болуы мүмкін.
Эскиз жұмыс жасау үшін сізге арнайы мәндермен кодтың алты жолын жаңарту қажет болады:
const char* ssid = «xxxxx»; // Сіздің WiFi SSIDconst char* password = «xxxxx»; // Сіздің WiFi құпия сөз жолының жіберушілері_Login = «xxxxx»; // сіздің электрондық пошта провайдеріңізге кіру String Senders_Password = «xxxxx»; // сіздің электрондық пошта провайдеріңіздің құпия сөзі
To = «xxxxxx»; = «Xxxxxx» бастап; // Gmail әдетте бұл Senders_Login сияқты болғанды жөн көреді және оны алмастыра алады
Мен терең ұйқы модулі PIR сенсоры триггер оқиғасының ұзақтығына 10 секундтан төмен орнатылғанда күтпеген түрде жұмыс істейтінін таптым. Менде 20 секунд бар. Бұл өте сенімді болып шықты, бірақ сонымен бірге оқиғалар осы жиілікте болуы мүмкін дегенді білдіреді.
Мен сондай-ақ, PIR қозғалысты сезіп тұрғанда, ESP-01 сөндіргішті ұстап тұру үшін цикл функциясына код қостым. Цикл функциясындағы барлық кодты алып тастауға және терең ұйқыға шақыруды орнату функциясының соңына жылжытуға болады.
Мен жыпылықтау функциясын ESP-01 модулімен әрекеттің визуалды индикаторы үшін қолданамын.
Мен Gmail байланысын қолдандым және тексердім, басқа электрондық пошта провайдерлері де жұмыс істейді. Мен жұпты сынап көрдім. Шындығында, мен Gmail -ді әлдеқайда қиын деп таптым. Gmail сіздің есептік жазбаңызды қауіпсіздігі төмен қолданбалар арқылы конфигурациялауды талап етеді. Бұл есептік жазба параметрі әдепкі бойынша ӨШІРУЛІ, сондықтан оны тауып, қауіпсіздігі төмен етіп өзгертіңіз. Gmail басқаша жұмыс істемейді.
Егер сіз бірнеше сигналдық модульді таңдасаңыз, http клиентінің қосымша қоңырауларын қосыңыз (кодтың үш жолын қайталаңыз, бірақ пайдаланылатын IP мекенжайын өзгертіңіз, сонымен қатар httpCode айнымалысын int ретінде бір рет анықтаңыз!
Бұл модульде дыбыстық сигналдың IP мекенжайы қатаң кодталғанын ескеріңіз. Сіз таңдаған IP мекенжайын пайдаланудың қажеті жоқ, бірақ сіз осы модульдегі веб -қоңыраудың IP мекенжайын келесі модульдегі веб -серверді орнатудың IP мекенжайымен сәйкестендіруіңіз керек.
3-қадам: ESP-01 дыбыстық сигнал модулі
Дыбыстық модуль өте қарапайым қондырғыға ие. Ол батарея жинағының орнына USB коннекторын пайдаланады, себебі бұл модуль батареяға жарамайды деп ойлаймын. Ол әрқашан қосылып тұруы керек және Nework/wifi қосулы болуы керек, себебі ол веб -сұраныстың қашан жасалатынын білмейді. Бұл аккумуляторларға қарағанда үздіксіз қуатты қажет етеді.
Дыбыстық модульдерді қай жерде болсаңыз да, қозғалыс сенсорының іске қосу оқиғасы туралы хабарлауды қамтамасыз ететін бірнеше жерде ыңғайлы орналастыруға болады!
Зумер USB коннекторының 5В-ға қосылған және ESP-01-ге қуат беретін басқа 3.3В реттегіш тақтасы бар.
Дыбыстық сигнал модулі шығыс үшін TX, GPIO0 немесе GPIO2 көмегімен жұмыс істейді. Менің конфигурациямда мен GPIO0 қолданамын. (Модульдің суретінде сым GPIO2 -ге қосылған, бірақ мен оны жылжыттым.) GPIO0 терең ұйқы модулі үшін жұмыс істемесе де (INPUT ретінде), бұл орналасумен OUTPUT ретінде жақсы жұмыс істейді. Ол жүктеу кезінде жерге тартылмайды, бұл қиындық тудырады. Мен GPIO2 -ді қолдандым, бірақ содан кейін мен кері байланыс үшін борттық жарықдиодты пайдалана алмадым, бірақ OUTPUT үшін GPIO0 көмегімен мен борттық жарықдиодты қолдана аламын.
Мен NPN транзисторын ESP-01 GPIO0 түйреуішіне жоғары сигнал қойған кезде тізбектегі сигналды қосу үшін тырыстым, бірақ нәтиже мүлдем сәйкес келмеді. Дыбыстық сигнал барлық уақытта, тіпті өте аз қуатта болса да, естілгісі келетін сияқты. Оның орнына мен N арналы MOSFET (2n7000) қолдандым және нәтиже керемет болды. IO түйрегіші қақпаны қажеттілік бойынша басқарады.
Бізге USB коннекторынан Vcc (+) және Gnd (-) екі түйреуіш қажет болса да, мен қосымша тұрақтылық үшін және USB-ді реттегішке қоспас бұрын дәнекерлеу үшін ПХД тақтасына қосылу үшін 5 істікшелі колонканы қолданамын. Менің 3.3В реттегіш тақтасы түйреуіштермен алдын ала орнатылған және менің ойымда төңкерілген. Реттегішті бастың түйреуіштеріне қосу үшін сіз тақтаның жасырын екенін көре аласыз, бірақ одан да жаманы, USB қосқышындағы vcc және gnd -ден реттегіште vcc және gnd. Осылайша сымдар қиылысады.
Сондай -ақ, белсенді дыбыстық сигналдың + қуаты USB -дің 5в -тан келетінін ескеріңіз. Сондай -ақ, 4 істікшелі аналық розетка тақырыбы дыбыстық сигналдың түйреуішімен жақсы жұмыс істейді.
ESP-01 дыбыстық сигналдық модуль бөлшектерінің тізімі:
1 - 5 x 7 ПХД тақтасы
1 - түйреуіштері бар USB шағын қосқышы (7 түйреуіш)
2 - 1 x 3 әйел тақырыптары
1 - AMS1117-3.3 вольтты кернеу реттегіші
1-2 х 4 әйел басы
2 - 1 x 4 аналық розетка тақырыптары
1 - 2N7000 N -арналы MOSFET
1 - 10 Ом резисторы
1 - 5В белсенді дыбыстық сигнал
4-қадам: ESP-01 дыбыстық сигнал модулінің коды
Дыбыстық сигнал модулі қарапайым ESP-01 веб-сервері қызметін атқарады. Ол түбірлік сұрауға қарапайым хабарламамен жауап береді және ызылдау сұранысын алған кезде ол дыбыстық сигналды іске қосады. GPIO0 дыбыстық сигналға арналған GPIO түйреуіші үшін қолданылады.
ESP-01 қатаң кодталған IP мекенжайымен конфигурацияланғанын ескеріңіз. Бұл терең ұйқы модулі дыбыстық сигналға қосылу үшін қажет.
Алдыңғы модуль сияқты, сізге белгілі бір мәндермен кодтың екі жолын жаңарту қажет болады:
// SSID және WiFi маршрутизаторының паролі char* ssid = «xxxxxxx»;
const char* password = «xxxxxxxx»;
Егер сізде бірнеше дыбыстық сигнал модульдері болса, олардың әрқайсысына өзінің бірегей IP -мекен -жайы жүктелуі керек.
Сіз сондай -ақ әртүрлі дыбыстық әуендерді шығаратын әр түрлі дыбыстық әдістерді қоса аласыз. Мысалы, егер сізде алдыңғы есікте және артқы есікте PIR сенсоры болса, олар сіздің сигналдық модульдердің әрқайсысына веб -сұраныс жасай алады, бірақ бір сенсорда ызылға шақыратын эскиз болуы мүмкін, ал басқа эскизде buzz2 дыбыстан қай сенсор іске қосылғанын білуге болады. Және тағы басқалар! Buzz2 функциясы жоқ, тек ызылдау функциясын көшіріп, кідіріс мәндерін өзгертіңіз.
Веб -сервер үшін сізге келесідей код жолын қосу қажет:
server.on («/buzz2», buzz2);
5 -қадам: Қорытынды ойлар
Бұл менің бірінші нұсқаулығым, сондықтан мен кейбір практикалық нәрселерді жіберіп алған болармын. Мен қолданатын AMS1117-3.3 реттегіш тақтасы қосылған кезде жанады. Терең ұйқы модулі үшін мен бұл қажетсіз қуаттың ағып кетуін қаламадым. Сонымен, мен тақтаның бір жағындағы сымдарды сата алмадым, содан кейін сызықты кесу үшін қызметтік пышақты қолдандым. Бұл мен ойлағаннан оңай болды және жарық диодты жарықтандыруға кедергі келтірді. Мен ESP-01 қатты ұйықтап жатқанда, электр қуатының не екенін анықтай алмадым, бірақ мен бірнеше аптадан кейін жауап аламын. Менің әріптесім сенсорды басқарып тұрды (терең ұйқыда емес) және шамамен бір аптаның ішінде батареялардың заряды таусылды (5АА). Менің ойымша, бұл орнату бір ай немесе одан да көп уақыт беруі керек. Көреміз.
Терең ұйқы модулінің бөлшектері шамамен 8 доллар CDN (батареялар қосылмайды!) Және сигналдық модуль 5 доллар тұрады.
Ұсынылған:
Дыбыс сенсоры мен сервисі: реактивті қозғалыс: 4 қадам
Дыбыс сенсоры мен сервисі: реактивті қозғалыс: алдымен осы тізбекті біріктіру үшін тиісті материалдарды жинау қажет
Портативті қозғалыс сенсоры: 4 қадам
Портативті қозғалыс сенсоры: Сәлеметсіз бе?
Ардуино мен электромагнитті қолданатын қозғалыс сенсоры су шүмегі - DIY: 6 қадам
Ардуино мен электромагниттік клапанды қолданатын қозғалыс сенсоры су шүмегі - DIY: Бұл жобада мен сізге электромагнитті клапан арқылы қозғалыс сенсорлы су шүмегін қалай салу керектігін көрсетемін. Бұл жоба қолда бар су шүмегін қозғалысты анықтау негізінде басқарылатын шүмекке айналдыруға көмектеседі. IR сенсор интерфейсі қолданылуда
Ұйқыдағы күн панелінің жарығы: 4 қадам
Ұйықтайтын күн панелінің жарығы: бәріне сәлем, бұл менің жобам, бұл өнім дизайны деп аталатын сынып. Материалдарды жинауға, қорапқа салып, содан кейін салуға шамамен 1 апта уақыт кетті. Мен бұл басқаша және ерекше нәрсе болады деп ойладым. Мен де осы өнімді жасағым келді
DIY қозғалыс сенсоры (ESP - 8266): 5 қадам
DIY қозғалыс сенсоры (ESP - 8266): Бұл жоба DIY үй қауіпсіздігіне арналған. Бұл жоба Konnected жобасына негізделген. Konnected ADT және басқа компаниялардың алдын ала сымды қозғалыс сенсорлары бар үй иелеріне жаңа өмір әкеледі. Жаңа технологиямен жаңартуды бере отырып