Სარჩევი:

IoT Keychain Finder ESP8266-01 გამოყენებით: 11 ნაბიჯი (სურათებით)
IoT Keychain Finder ESP8266-01 გამოყენებით: 11 ნაბიჯი (სურათებით)

ვიდეო: IoT Keychain Finder ESP8266-01 გამოყენებით: 11 ნაბიჯი (სურათებით)

ვიდეო: IoT Keychain Finder ESP8266-01 გამოყენებით: 11 ნაბიჯი (სურათებით)
ვიდეო: wifi დისტანციური IR და RF კოდების Broadlink RM4C Pro, Home Assistant - აკონტროლეთ კონდიციონერი 2024, ივლისი
Anonim
IoT Keychain Finder ESP8266-01 გამოყენებით
IoT Keychain Finder ESP8266-01 გამოყენებით
IoT Keychain Finder ESP8266-01 გამოყენებით
IoT Keychain Finder ESP8266-01 გამოყენებით
IoT Keychain Finder ESP8266-01 გამოყენებით
IoT Keychain Finder ESP8266-01 გამოყენებით

ჩემნაირი ხარ, ყოველთვის ავიწყდება სად ინახავდი გასაღებებს? მე ვერასდროს ვიპოვი ჩემს გასაღებებს დროულად! და ჩემი ამ ჩვევის გამო, მე დავაგვიანე ჩემს კოლეჯში, ვარსკვლავური ომების შეზღუდული გამოშვების გაყიდვა (ჯერ კიდევ ვღელავ!), თარიღი (მან აღარასდროს შეარჩია ჩემი ზარი!)

რა არის ზუსტად ეს IoT Keychain

ნება მომეცით მოგაწოდოთ აბსტრაქტული იდეა, წარმოიდგინეთ, დაგეგმეთ ვახშამი მშობლებთან ერთად ბრწყინვალე რესტორანში. თქვენ უბრალოდ აპირებდით გზას და უცებ გასაღებები აკლია, ოჰ! თქვენ იცით, რომ გასაღები სადღაც არის სახლში. მაშინ გახსოვთ, ჰეი, მე დავამატე IoT საკვანძო ჯაჭვი, რომელიც გავაკეთე აშვინის ინსტრუქციის მითითებით, მადლობა ღმერთს! თქვენ ამოიღეთ ტელეფონი და გახსენით Chrome, შემდეგ ჩაწერეთ keychain IP (მაგ.- 192.168.43.193/) ან mycarkey.local/ (ეს მუშაობს mDNS– ის გამო) და დააჭირეთ ღილაკს ძებნას. უი !, საიტი გამოჩნდება თქვენს ტელეფონში (წარმოიდგინეთ, რომ თქვენი საკვანძო ჯაჭვი სერვერია, ასე უცნაური!). თქვენ დააწკაპუნებთ Buz My Key ღილაკზე და მომენტებში გესმით სიგნალი, რომელიც მოდის თქვენი სამუშაო ფეხსაცმლიდან (აი ეს კატები). თქვენ იპოვეთ გასაღებები და მალევე მიდიხართ გზაზე, ვოილა!

მოკლე იდეა, თუ როგორ მუშაობს

ESP-01 Keychain– ში აკავშირებს ნებისმიერ WiFi– ს, რომელიც თქვენ აღნიშნეთ პროგრამაში (შეგიძლიათ მიუთითოთ WiFi– ს მრავალი სახელი მათ გასასვლელ კოდებთან ერთად და ESP – 01 დაუკავშირდება უძლიერეს WiFi ქსელს იმ მომენტში). თუ საკვანძო ჯაჭვს იღებთ თქვენი WiFi დიაპაზონის მიღმა, ESP-01 სავარაუდოდ გათიშავს და შეეცდება დაუკავშირდეს არსებულ ხსენებულ WiFi- ს (ასე რომ, თუ თქვენი მეგობრის სახლში გასაღები არასწორად განათავსეთ, შეგიძლიათ მარტივად იპოვოთ თქვენი ტელეფონის ცხელი წერტილის ჩართვით (მონაცემები არ არის საჭირო) და ESP-01 ავტომატურად დაუკავშირდება თქვენს ცხელ წერტილს და შემდეგ შეგიძლიათ აჯანყდეთ საკვანძო ჯაჭვი და მარტივად იპოვოთ იგი).

დაწყებამდე მე ვურჩევდი პირველად ESP მომხმარებლებს წაიკითხონ Pieter P.- ის ESP8266 დამწყებთა სახელმძღვანელო დააწკაპუნეთ აქ. ეს სახელმძღვანელო ძალიან დამხმარე იყო ჩემთვის, როგორც ESP8266 ჩიპის დამწყები.

რა კავშირია ESP8266 და ESP-01 შორის

როდესაც ESP– თან დავიწყე მუშაობა, საკმაოდ დაბნეული ვიყავი. ინტერნეტში იყო ბევრი ინფორმაცია ESP ჩიპების შესახებ. მე მეგონა ESP8266, ESP-01, ESP-12E და სხვ. ყველა განსხვავებული იყო და ვერ გამოვიყენებ ESP-01E– ზე ESP-12E– ზე დაწერილ პროგრამას, მაგრამ ეს ასე არ არის. ნება მომეცით განვმარტო თქვენი ეჭვები! ESP8266 არის ჩიპი, რომელიც გამოიყენება ყველა ESP მოდულში (მაგალითად ESP-12E და ESP-01). ბაზარზე კიდევ ბევრი ESP მოდულია და ისინი ყველა იყენებენ ESP8266 ჩიპს. მათ შორის ერთადერთი განსხვავება არის ფუნქციონირება, რომელსაც უზრუნველყოფს ESP მოდული. თქვით, რომ ESP-01– ს აქვს საკმაოდ ნაკლები GPIO ქინძისთავები, ხოლო ESP-12E– ს აქვს ბევრი GPIO ქინძისთავები. ESP-01 შეიძლება არ ჰქონდეს ძილის განსხვავებული რეჟიმი, როგორიცაა ESP-12E, ხოლო ESP-01 უფრო იაფი და მცირე ზომისაა.

გაითვალისწინეთ, რომ ისინი ყველა იყენებენ ერთსა და იმავე ESP8266 ჩიპს, ჩვენ შეგვიძლია იგივე ESP8266 პროგრამა გამოვიყენოთ ყველა ESP მოდულზე უპრობლემოდ, სანამ არ იყენებთ პროგრამას, რომელსაც შეუძლია იმუშაოს მხოლოდ ერთ კონკრეტულ ჩიპზე (თქვით, რომ თქვენ ცდილობთ ჩართეთ GPIO pin 6 ESP-01– ზე, რომელიც მას არ გააჩნია. არანაირი შეშფოთება და პროგრამა, რომელიც მე მივეცი ამ სახელმძღვანელოში, თავსებადია ყველა ESP მოდულთან. ფაქტობრივად, მე გავაკეთე ყველა კოდირება ESP-12E NodeMCU– ზე, რადგან უფრო ადვილი იყო მუშაობა და შეცდომების აღმოფხვრა განვითარების დაფაზე. მას შემდეგ რაც დავრწმუნდი ჩემს მუშაობაში, შემდეგ ვცადე ის პროგრამები ESP-01– ზე, რომლებიც მუშაობდნენ როგორც ხიბლი ყოველგვარი ცვლილების გარეშე!

რამდენიმე ძირითადი პუნქტი:

  • ჩემი მიზანია დაგეხმაროთ იმის გაგებაში, თუ როგორ შეგვიძლია ჩავრთოთ IoT სადმე.
  • ამ ინსტრუქციიდან მთავარი გასაღები არის ESP-01 საკვანძო ჯაჭვის შიგნით ჩასმის ცოდნა, რომელიც უცნაურად გამოიყურება, მაგრამ ჰე, ინჟინერია სავსეა გამოწვევებით! ყველას ვურჩევ, რომ შეიმუშაოს კლავიშთა სხვადასხვა დიზაინი და შეეცადოს IoT კლავიშთა იდეა სრულყოფილი გახადოს.
  • IoT გასაღები, რომელიც მე გავაკეთე, არ არის ბატარეის ეფექტური (6 საათი 500mAH 3.7v Li-Po ბატარეით) და ოდნავ მოცულობითია. მაგრამ მე ვიცი, თქვენ ბიჭები შეგიძლიათ გახადოთ ის სრულყოფილი, თუ არა უკეთესი და გახადოთ თქვენი საკუთარი ინსტრუქტორი (არ დაგავიწყდეთ ჩემი ხსენება!)

საკმარისია ბლა ბლა ბლა! Დავიწყოთ

როგორ მიედინება ჩემი ინსტრუქციული

  1. საჭირო მასალები და კომპონენტები [ნაბიჯი 1]
  2. ESP-01 დაწყება [ნაბიჯი 2]
  3. მოდით მოვამზადოთ Buzzer ESP-01– ისთვის [ნაბიჯი 3]
  4. მზადება პროგრამირებისთვის [ნაბიჯი 4]
  5. პროგრამის პერსონალიზაცია [ნაბიჯი 5]
  6. საშუალებას აძლევს პროგრამას ESP-01 [ნაბიჯი 6]
  7. IP და mDNS ზუზერის გასაკონტროლებლად [ნაბიჯი 7]
  8. შესაბამისი ბატარეის შერჩევა [ნაბიჯი 8]
  9. ყველა კომპონენტის განთავსება [ნაბიჯი 9]
  10. ძირითადი საფარის მომზადება გასაღების ჯაჭვისა და ბატარეის დასაყენებლად [ნაბიჯი 10]
  11. დროა შეგშურდეს შენი მეგობრები! ზოგიერთი დასასრულის აზრი [ნაბიჯი 11]

ნაბიჯი 1: საჭირო მასალები და კომპონენტები

საჭირო მასალები და კომპონენტები
საჭირო მასალები და კომპონენტები
საჭირო მასალები და კომპონენტები
საჭირო მასალები და კომპონენტები

ასე რომ თქვენ მზად ხართ, მშვენივრად!

მე აღვნიშნე ყველა ის კომპონენტი, რომელიც ამ ინსტრუქციებშია გამოყენებული ზემოთ მოცემულ სურათზე (სურათი ათასი სიტყვა ღირს)

ნაბიჯი 2: ESP-01 დაწყება

ESP-01 დაწყება
ESP-01 დაწყება

მე გამოვიყენე ბევრი ESP მოდული, მაგრამ უნდა ვთქვა, რომ ESP-01 არის ჩემი საყვარელი ESP8266 მოდული, რადგან ის არის ყველაზე პატარა და იაფი.

სულ არის 8 პინი ESP-01– ზე. მე მოგაწოდეთ პინის დიაგრამის სურათი ზემოთ.

ჩვენ ვიყენებთ Arduino UNO– ს დაფას და Arduino IDE– ს ESP-01– ის დასაპროგრამებლად, რადგან ბევრ თქვენგანს უნდა ჰქონდეს Arduino სახლში.

ESP-01– ში არის ორი რეჟიმი:

  • პროგრამირების რეჟიმი
  • ნორმალური ჩატვირთვის რეჟიმი

რეჟიმების შესაცვლელად ჩვენ მხოლოდ RST და GPIO 0 ქინძისთავების გადართვა გვჭირდება.

ESP8266 ჩატვირთვისას ამოწმებს, რომელ რეჟიმში უნდა ჩაირთოს. ამას აკეთებს GPIO 0 პინის შემოწმებით. თუ pin დამიწებულია 0V ESP ჩაირთვება პროგრამირების რეჟიმში. თუ პინი ინახება მცურავი ან ნორმალურად არის დაკავშირებული 3.3V ESP ჩექმებთან.

RST პინი აქტიურია დაბალი, ასე რომ 0V RST პინზე გადატვირთავს ჩიპს (უბრალოდ შეეხეთ RST პინს მიწასთან ერთი წამით)

ნორმალური ჩატვირთვის რეჟიმში: GPIO 0 უნდა იყოს მცურავი ან დაკავშირებული იყოს 3.3V ჩიპის პირველად გადატვირთვის ან ჩატვირთვის შემდეგ

პროგრამირების რეჟიმისთვის: GPIO 0 უნდა იყოს დასაბუთებული ჩიპის პირველად გადატვირთვის ან ჩატვირთვის შემდეგ და დარჩეს დასაბუთებული პროგრამირების დასრულებამდე. ამ რეჟიმიდან გამოსასვლელად უბრალოდ ამოიღეთ GPIO 0 პინი მიწიდან და შეინარჩუნეთ ის მცურავი ან დაუკავშირდით 3 ვ -ს, შემდეგ გააჩერეთ RST პინი წამით. ESP ჩატვირთულია ნორმალურ რეჟიმში.

ESP-01– ს აქვს 1 მბ ფლეშ მეხსიერება.

გაფრთხილება! ESP-01 მუშაობს 3.3 ვ-ით, თუ რომელიმე ქინძისთავზე 3.6 ვ-ზე მეტს მიანიჭებთ ჩიპს (მე უკვე შემწვარი მაქვს ორი ESP-01). ჩვენ შეგვიძლია გამოვიყენოთ 3V - 3.6V, ახლა ეს გამოსადეგია, რადგან ჩვენ ვიყენებთ 3.7V LiPo ბატარეას. მე ავუხსნი, თუ როგორ შეგვიძლია გამოვიყენოთ ეს ბატარეა ESP-01– ით უახლოეს ნაბიჯებში.

ნაბიჯი 3: მოდით მოვამზადოთ Buzzer ESP-01– ისთვის

მოდით მოვამზადოთ Buzzer ESP-01– ისთვის
მოდით მოვამზადოთ Buzzer ESP-01– ისთვის

ბუზერის ორი ტიპი არსებობს:

  • აქტიური ზარი
  • პასიური ზუზუნი

აქტიური ზუზერები მუშაობენ უშუალოდ გარკვეული ძაბვის მიცემით. თქვენ მაშინვე მოისმენთ ზუზუნის ხმას.

პასიურ ზუზუნებს სჭირდებათ PWM. ასე რომ, თუ თქვენ იყენებთ მუდმივ ძაბვას, ზუზუნი არ გამოსცემს ხმას.

აირჩიეთ აქტიური 3V ზარი.

ESP-01 ქინძისთავებს შეუძლიათ მხოლოდ 12 mA- მდე, რაც გაცილებით ნაკლებია 3V ზუზერის ენერგიის მოთხოვნილების გათვალისწინებით. ასე რომ, ჩვენ გამოვიყენებთ NPN ტრანზისტორს (მე გამოვიყენე 2N3904), როგორც გადამრთველი ზუზუნის გასაკონტროლებლად.

მიჰყევით კავშირის დიაგრამას ზემოთ ატვირთული სურათების მითითებით. დაამყარეთ კავშირები პურის დაფაზე. მომავალ ეტაპზე თქვენ შეგიძლიათ შეამოწმოთ თქვენი წრე და დარწმუნდეთ, რომ ყველაფერი მუშაობს PCB– ზე ყველა კომპონენტის შედუღებამდე.

ნაბიჯი 4: ემზადება პროგრამირებისთვის

ემზადება პროგრამირებისთვის
ემზადება პროგრამირებისთვის
ემზადება პროგრამირებისთვის
ემზადება პროგრამირებისთვის

ახლა მოდით დავაყენოთ Arduino IDE ESP-01 პროგრამირებისთვის

ჯერ ჩვენ დავამატებთ ESP8266 დაფას Arduino IDE– ზე. გახსენით Arduino IDE და გადადით ფაილზე> პარამეტრები. თქვენ იხილავთ დამატებითი დაფების მენეჯერის URL. ჩასვით ეს ბმული:

  • ახლა გადადით ინსტრუმენტები> დაფა> დაფების მენეჯერი
  • მოძებნეთ esp8266. თქვენ უნდა ნახოთ esp8266 ESP8266 საზოგადოების მიერ. დააინსტალირეთ.
  • ახლა გადადით ინსტრუმენტები> დაფა> ESP8266 დაფები. აირჩიეთ Generic ESP8266 მოდული.
  • Შესრულებულია! თქვენ დააყენეთ Arduino IDE

კავშირები

შეაერთეთ თქვენი ESP-01 Arduino UNO დაფაზე, რომელიც მიუთითებს კავშირების დიაგრამაზე ზემოთ მოცემულ სურათებში.

ჩვენ არ ვაპირებთ Atmega328p ჩიპის გამოყენებას (დიახ, ეს გრძელი დიდი ჩიპი არდუინოს დაფაზე). ჩვენ უბრალოდ ვიყენებთ Arduino UNO დაფას ESP-01 პროგრამირებისათვის, ეს არის მიზეზი იმისა, რომ ჩვენ დავუკავშირეთ Atmega– ს RESET pin 5V პორტს.

GPIO0 და RST pin გამოიყენება ESP-01 ჩატვირთვის გასაკონტროლებლად. დაწვრილებით მე –6 ნაბიჯზე

RED LED გამოიყენება შესამოწმებლად, ატვირთული პროგრამა მუშაობს თუ არა.

კარგი, ახლა რომ კავშირები დამყარდა, გადმოწერე ჩემი Keychain კოდი ქვემოდან. მომდევნო ეტაპზე მე აგიხსნით როგორ შევიტანო ცვლილებები ჩემს კოდში და როგორ ატვირთო პროგრამა.

დამატებითი ინფორმაცია (გამოტოვეთ თუ გსურთ)

თქვენ შეიძლება შეამჩნიეთ Rx მიდის Rx– ში და Tx მიდის Tx– ზე. ეს არ არის სწორი !. თუ მოწყობილობა გადამცემია, მაშინ მეორე მოწყობილობა იღებს (Tx to Rx) და პირიქით (Rx to Tx). მაშ რატომ არის ეს კავშირი?

ისე Arduino UNO დაფა გაკეთდა ასე. ნება მომეცით განვმარტო, რომ USB კაბელის Rx და Tx, რომელიც აკავშირებს Arduino UNO დაფას, უკავშირდება Atmega328p- ს. კავშირი ასე ხდება: USB Rx გადადის Atmega– ს Tx– ზე და USB– ის Tx გადადის Atmega– ს Rx– ზე. ახლა პორტის პინ 0 და 1 მოცემული როგორც Rx და Tx შესაბამისად უშუალოდ უკავშირდება ატმეგას (Rx of Atmega არის Rx პორტში Pin 0 და Tx Atmega არის Tx პორტის Pin 1) და როგორც ჩვენ არ ვაპირებთ გამოიყენეთ Atmega პროგრამირებისთვის და მხოლოდ უშუალოდ USB კავშირები გჭირდებათ, თქვენ ხედავთ USB Tx არის Arxino UNO დაფის Rx Pin 0 და USB Rx არის Arduino UNO დაფის Pin 1

ფუ! ახლა თქვენ იცით Rx Tx კავშირები.

თქვენ უნდა შეამჩნიოთ რეზისტორი Rx - Rx კავშირს შორის. ეს მნიშვნელოვანია ESP-01 ჩიპის თავიდან აცილების მიზნით, TTL 5V– ის გამო. ჩვენ გამოვიყენეთ ძაბვის გაყოფილი კავშირი, რომელიც ძირითადად ამცირებს 5V– ს Rx– მდე 3.3V– მდე ისე, რომ ESP-01 არ გაცხელდეს. თუ გსურთ იცოდეთ როგორ მუშაობს ძაბვის გამყოფი გადადით ამ ბმულზე:

ნაბიჯი 5: პროგრამის პერსონალიზაცია

პროგრამის პერსონალიზაცია
პროგრამის პერსონალიზაცია
პროგრამის პერსონალიზაცია
პროგრამის პერსონალიზაცია

როდესაც გახსნით ჩემს პროგრამას შეიძლება შეგაშინოთ ყველა ჟარგონი და კოდი. არ ინერვიულო. თუ გსურთ იცოდეთ როგორ მუშაობს პროგრამა, მიმართეთ დამწყებთათვის სახელმძღვანელოს ბმულს, რომელიც მე განვაცხადე ამ ინსტრუქციის დასაწყისში.

კოდის ყველა სფერო, სადაც შეგიძლიათ ცვლილებები შეიტანოთ, არის ერთი ხაზის მსგავს კომენტარებს შორის

//-----------------------------------

შეიტანეთ ცვლილებები აქ;

//----------------------------------

გთხოვთ, წაიკითხოთ პროგრამაში მოყვანილი კომენტარები, რომ უკეთ გავიგოთ კოდი

…….

თქვენ შეგიძლიათ დაამატოთ რამდენიმე WiFi სახელი და მათი შესაბამისი კოდის პროგრამა. ESP-01 დაუკავშირდება იმას, რაც ყველაზე ძლიერია სკანირების დროს. გათიშვისთანავე ის მუდმივად იკვლევს იმ უკაბელო ქსელს, რომელთანაც დაკავშირება შეუძლია და შემდეგ ავტომატურად აკავშირებს. მე გირჩევთ რომ დაამატოთ თქვენი მთავარი WiFi და თქვენი მობილური ცხელი წერტილი პროგრამაში.

WiFi- ის დამატების სინტაქსი: wifiMulti.addAP ("Hall_WiFi", "12345678");

პირველი სტრიქონი არის WiFi- ის სახელი და მეორე სტრიქონი არის პაროლი.

…….

თუ გსურთ შეცვალოთ პინი, რომელზეც ზუზერია დაკავშირებული, შეგიძლიათ აღნიშნოთ ის ცვლადში

const int buz_pin = pin_no;

pin_no უნდა იყოს სწორი მნიშვნელობა ESP მოდულის მიხედვით, რომელსაც თქვენ იყენებთ.

LED_BUILTIN მნიშვნელობა არის GPIO 2 პინი ESP-01– ისთვის;

…….

დამატებითი [გამოტოვეთ თუ გსურთ]

ვინაიდან ჩვენი ESP-01 იმოქმედებს როგორც სერვერი, არის ძირითადი HTML ვებსაიტის კოდი, რომელიც მე უკვე დავამატე თქვენს მიერ გადმოწერილ პროგრამაში. დეტალურად არ შევალ, მაგრამ თუ გსურთ შეისწავლოთ HTML წყარო, შეგიძლიათ გადმოწეროთ ქვემოდან. [გადაარქვით ფაილს html code.html.txt– დან html code.html]

ნაბიჯი 6: გაუშვით პროგრამა ESP-01

მოდით პროგრამა ESP-01
მოდით პროგრამა ESP-01
მოდით პროგრამა ESP-01
მოდით პროგრამა ESP-01

1)

  • შეაერთეთ Arduino UNO დაფა თქვენს კომპიუტერს.
  • დარწმუნდით, რომ Tools– ში ეს პარამეტრები არჩეულია

    • დაფა: "Generic ESP8266 მოდული"
    • ატვირთვის სიჩქარე: "115200"
    • სხვა პარამეტრები ნაგულისხმევად დარჩეს
  • არ გადავიდეთ ინსტრუმენტები> პორტი
  • აირჩიეთ Arduino UNO COM პორტი (ჩემი კომპიუტერი აჩვენებდა COM3. თქვენი შეიძლება განსხვავდებოდეს.

2) ეს არის ის. ატვირთვაზე დაწკაპუნებამდე, ჩვენ უნდა ჩავტვირთოთ ESP-01 პროგრამირების რეჟიმში. იმ ადგილზე 0V ESP-01 pin. შემდეგ გაწურეთ RST პინი წამით. ახლა ESP-01 გადავიდა პროგრამირების რეჟიმში.

3) ახლა დააწკაპუნეთ ატვირთვაზე თქვენს Arduino IDE- ში. ესკიზის შედგენას გარკვეული დრო სჭირდება. აკონტროლეთ ბრძანების სტატუსის ფანჯრები Arduino IDE– ს ქვემოთ.

4) შედგენის დასრულების შემდეგ, თქვენ უნდა ნახოთ კავშირი ……._ ……._ ……… ეს არის მაშინ, როდესაც თქვენი კომპიუტერი ცდილობს დაუკავშირდეს თქვენს ESP-01- ს. თუ დაუკავშირდებით …… დიდი ხნის განმავლობაში ან თუ კავშირი ვერ ხერხდება (ეს ჩემთან ხშირად ხდება) უბრალოდ გადატვირთეთ ESP-01 (ESP-01– ზე RST– ს ვურტყამ მიწას 0V––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– რა

ხანდახან ამის გაკეთების შემდეგაც კი კავშირი ვერ ხერხდება, რასაც ვაკეთებ არის მას შემდეგ რაც მიერთდება …… _ …… მე ისევ აღვადგენ ESP-01 და ჩვეულებრივ მუშაობს. გაითვალისწინეთ, რომ GPIO 0 პინი უნდა იყოს დასაბუთებული პროგრამირების მთელი პერიოდის განმავლობაში.

5) ატვირთვის დასრულების შემდეგ თქვენ მიიღებთ:

გასვლა ……

რთულია გადატვირთვა RTS პინის საშუალებით…

ეს მიუთითებს, რომ კოდი წარმატებით აიტვირთა. ახლა ამოიღეთ GPIO 0 პინი მიწიდან და კვლავ გადატვირთეთ ESP-01. ახლა თქვენი ESP ჩაირთვება ნორმალურ რეჟიმში და შეეცდება დაუკავშირდეს WiFi ქსელს, რომელიც თქვენ აღნიშნეთ პროგრამაში.

თქვენ შეგიძლიათ აკონტროლოთ ESP-01 პროგრამა Arduino სერიული მონიტორიდან.

6) გახსენით სერიული მონიტორი, ქვედა მარჯვენა კუთხეში შეარჩიეთ ორივე NL და CR და baud rate როგორც 115200. გადატვირთეთ ESP-01 (GPIO 0 მცურავი ან დაკავშირებული 3.3V- თან, როდესაც ჩვენ ვცდილობთ ატვირთული პროგრამის გაშვებას) და შემდეგ თქვენ იხილავთ ESP-01– ის მიერ დაბრუნებულ ყველა შეტყობინებას. თავდაპირველად შეგიძლიათ ნახოთ ნაგვის მნიშვნელობა, რაც ნორმალურია ყველა ESP8266 ჩიპში. კავშირის წარმატებული დასრულების შემდეგ თქვენ იხილავთ ეკრანზე დაბეჭდილ IP მისამართს. შეინახეთ შენიშვნა.

მე დავამატე რამდენიმე სმაილიკი serial.print () რომელიც კარგად გამოიყურება სერიულ მონიტორში, რადგან ის იძლევა გარკვეულ გამონათქვამებს. ვინ ამბობს, რომ ჩვენ არ შეგვიძლია ვიყოთ უფრო კრეატიულები!

ნაბიჯი 7: IP და MDNS ბუზერის გასაკონტროლებლად

IP და MDNS ბუზერის გასაკონტროლებლად
IP და MDNS ბუზერის გასაკონტროლებლად
IP და MDNS ბუზერის გასაკონტროლებლად
IP და MDNS ბუზერის გასაკონტროლებლად
IP და MDNS ბუზერის გასაკონტროლებლად
IP და MDNS ბუზერის გასაკონტროლებლად

სანამ დეტალურად განვიხილავ როგორ მუშაობს სერვერი, შეეცადეთ ჩართოთ ზუზერი. მოწყობილობა, რომელზეც თქვენ ცდილობთ წვდომას ESP-01 სერვერზე, უნდა იყოს დაკავშირებული იმავე ქსელთან, როგორც ESP-01 ან უნდა იყოს დაკავშირებული თქვენი მოწყობილობის ცხელ წერტილთან. ახლა გახსენით თქვენი საყვარელი ბრაუზერი და ჩაწერეთ IP მისამართი, რომელიც მიიღეთ წინა ეტაპზე და მოძებნეთ. მან უნდა გახსნას გვერდი. დააწკაპუნეთ Toggle buzz- ზე და RED LED უნდა დაიწყოს მოციმციმე!

რა არის IP მისამართი?

IP არის მისამართი, რომელსაც თითოეული მოწყობილობა იღებს WiFi ქსელთან დაკავშირების შემდეგ. IP მისამართი ჰგავს უნიკალურ იდენტიფიკატორს, რომელიც ეხმარება კონკრეტული მოწყობილობის პოვნაში. არცერთ მოწყობილობას არ შეიძლება ჰქონდეს ერთი და იგივე IP მისამართი ერთიდაიგივე ქსელში. როდესაც ESP-01 უკავშირდება WiFi- ს ან ცხელ წერტილს, მას ენიჭება IP მისამართი, რომელიც ბეჭდავს სერიულ მონიტორში.

რა არის mDNS?

მოდით გავიგოთ DNS. ის დომენის სახელის სისტემას ნიშნავს. ეს არის სპეციალური სერვერი, რომელიც აბრუნებს თქვენს მიერ მოძიებული დომენის IP მისამართს. თქვით, მაგალითად, თქვენ ეძებდით ინსტრუქციებში. Com. ბრაუზერი იკითხავს DNS სერვერს და სერვერი აბრუნებს instructables.com– ის IP მისამართს. ამ ინსტრუქციის წერის დროს მე მივიღე instructables.com– ის IP მისამართი, როგორც 151.101.193.105. ახლა თუ ბრაუზერის მისამართების ზოლზე დავაყენებ 151.101.193.105 და მოვძებნი მივიღებ იგივე Instructables.com საიტს, სისუფთავეს! DNS– ის კიდევ ერთი უპირატესობაა, მოწყობილობების IP მისამართი იცვლება, თქვით, რომ თქვენი მარშრუტიზატორის IP დღეს იყო 92.16.52.18, ხვალ შეიძლება 52.46.59.190. IP იცვლება ყოველ ჯერზე, როდესაც თქვენი მოწყობილობა ხელახლა უკავშირდება ქსელს. ვინაიდან DNS ავტომატურად განაახლებს ყველა მოწყობილობის IP- ს, ჩვენ ყოველთვის ვიგზავნით შესაბამის დანიშნულების სერვერზე.

მაგრამ ჩვენ არ შეგვიძლია გავაკეთოთ DNS სერვერი ჩვენი ESP-01– ისთვის, რომელიც იკითხავს მის IP– ს. ამ შემთხვევაში ჩვენ გამოვიყენებთ mDNS- ს. ის მუშაობს ადგილობრივ მოწყობილობებზე. სერიულ მონიტორში თქვენ შეიძლება შენიშნეთ esp01.local/ ეს არის სახელი, რომელიც ჩვენ მივანიჭეთ ჩვენს ESP-01– ს, რომელიც ავტომატურად პასუხობს esp01.local/ (სცადეთ მოძებნოთ esp01.local/ თქვენს ბრაუზერში). ამრიგად, თქვენ უკვე შეგიძლიათ პირდაპირ ESP-01– ზე წვდომა, ისევე როგორც ძებნის ინსტრუქციებში, მათი IP მისამართის ცოდნის გარეშე. მაგრამ არის პრობლემა, mDNS არ მუშაობს Android– ზე, რაც იმას ნიშნავს, რომ თქვენ არ შეგიძლიათ შეხვიდეთ თქვენს ESP– ში mDNS– ის გამოყენებით Android მოწყობილობებზე, არამედ უნდა ჩაწეროთ IP მისამართი საძიებო ზოლზე. mDNS მშვენივრად მუშაობს iOS, macOS, ipadOS და Windows– ისთვის თქვენ უნდა დააინსტალიროთ Bonjour, ხოლო Linux– ზე უნდა დააინსტალიროთ Avahi.

ESP-01 mDNS სახელის შესაცვლელად იპოვეთ mdns.begin ("esp01"); ჩემს პროგრამაში და შეცვალეთ "esp01" სტრიქონი თქვენთვის სასურველი ნებისმიერი სტრიქონით.

თუ არ გსურთ გამოიყენოთ mDNS, შეგიძლიათ გააკეთოთ სხვა რამ. გადადით თქვენი როუტერის პარამეტრებზე მას შემდეგ, რაც თქვენი ESP-01 დაკავშირებულია თქვენს როუტერთან და დააყენეთ სტატიკური IP მისამართი ESP-01– ისთვის. სტატიკური IP არ იცვლება დროთა განმავლობაში. თქვენ შეგიძლიათ მოძებნოთ ინტერნეტი, თუ როგორ უნდა დააკონფიგურიროთ როუტერი სტატიკური IP ნებისმიერ მოწყობილობაზე. თქვენ მიიღებთ ბევრ სასარგებლო საიტს. ასე რომ, მას შემდეგ რაც სტატიკურ IP- ს მიანიჭებთ, უბრალოდ ჩაწერეთ იგი ან გააკეთეთ სანიშნე ბრაუზერში, რათა შემდეგ ჯერზე უშუალოდ სანიშნიდან მოძებნოთ.

ახლა მობილური ცხელ წერტილებში, IP არ იცვლება (არ შეცვლილა ჩემთვის, როგორც არასდროს!). თქვენ შეგიძლიათ მიიღოთ ცხელ წერტილთან დაკავშირებული მოწყობილობის IP მისამართები Android ცხელი წერტილის პარამეტრებიდან. უბრალოდ გააკეთეთ ESP-01 IP- ის სანიშნე ბრაუზერში და ეს არის ის, რომ თქვენ შეგიძლიათ ნებისმიერ დროს შეხვიდეთ საიტზე და აახვიოთ თქვენი კლავიშები.

IP მისამართს ენიჭება ESP-01, როდესაც მობილურ ცხელ წერტილთან და WIFI– თან დაკავშირება შეიძლება განსხვავებული იყოს

შენიშვნა: ESP-01– ზე წვდომისთვის თქვენ უნდა იყოთ იმავე ქსელში, როგორც თქვენი ESP მოდული. ასე რომ თქვენ არ შეგიძლიათ გააკონტროლოთ იგი ინტერნეტით, არამედ მხოლოდ ადგილობრივ ქსელზე.

ნაბიჯი 8: შესაფერისი ბატარეის შერჩევა

შესაფერისი ბატარეის შერჩევა
შესაფერისი ბატარეის შერჩევა

მოდით გავიგოთ mAh ჯერ

თქვით, რომ თქვენ გაქვთ 3.7 ვ ბატარეა, რომლის სიმძლავრეა 200 mAh. ბატარეა ჩართულია წრეში, რომელიც მოიხმარს 100 mA. რამდენ ხანს შეძლებს ბატარეა ჩართოს ჩართვა?

უბრალოდ გაყოფა

200mAh/100mA = 2h

დიახ, 2 საათი!

mAh არის რეიტინგი, რომელშიც ნათქვამია, თუ რამდენი ენერგია შეუძლია მისცეს წყაროს საათში. თუ ბატარეას აქვს 200 mAh, ის იძლევა 200 mA ენერგიას უწყვეტად 1 საათის განმავლობაში, სანამ არ ჩაქრება.

მე შევარჩიე 3.7V 500mAh ბატარეა (მეტი mAh> 1000mAh (სასურველია). უკეთეს mAh ბატარეას ვერ ვიშოვი ნებისმიერ მაღაზიაში).

ESP-01 ხარჯავს 80mA დენს უხეშად

დაახლოებით ჩვენი წრე უნდა მოიხმარდეს 100mA ზუზუნგის გარეშე. ასე რომ, ჩვენს ბატარეას უნდა შეეძლოს მიკროსქემის ჩართვა 5 საათზე მეტხანს (500 mAh ბატარეაზე) იმის გათვალისწინებით, რომ ზუმერი უმეტეს დროს გამორთულია. 1000mAh ბატარეამ უნდა უზრუნველყოს 10 საათზე მეტი ბატარეის სარეზერვო საშუალება. ასე რომ შეარჩიეთ ბატარეა თქვენი მოთხოვნის შესაბამისად.

კარგი, ახლა შეგვიძლია დავუკავშიროთ ბატარეა პირდაპირ ჩვენს წრეს? არა ბატარეის ძაბვაა 3.7 ვ. 3.6 ვ -ზე მაღალი ნებისმიერი ძაბვა კლავს ჩვენს ESP8266 ჩიპს. მაშინ რა ვქნათ? თქვენ შეგიძლიათ გაზარდოთ ძაბვა 5 ვ -მდე და შემდეგ შეამციროთ ის 3.3 ვ -მდე გადართვის რეგულატორის გამოყენებით, მაგრამ ჰეი! ეს სქემები ბევრ ადგილს დაიკავებს. ჩვენ ასევე გვავიწყდება, რომ 3.7 ვ ბატარეა მისცემს 4.2 ვ ს სრული დატენვით. ეს ძალიან მაწუხებდა თავიდან!

შემდეგ გამახსენდა, რომ ჩვენ შეგვიძლია გამოვიყენოთ დიოდი ძაბვის დასაწევად. თუ გახსოვთ, სილიციუმის დიოდი მცირდება 0.7 ვ.თქვენ შეგიძლიათ დაუკავშიროთ თქვენი ESP-01 დიოდს, რომელიც დაკავშირებული იყო 3.7 ვ ბატარეასთან. დიოდი უნდა ჩამოვარდეს 0.7V, ასე რომ უნდა მიიღოთ 3V (3.7 - 0.7). და სრული დატენვისას ჩვენ უნდა მივიღოთ 3.5 (4.2 - 0.7), რაც კარგი დიაპაზონია ESP -01- ის კვებისათვის. გადადით 1N400x სერიის დიოდზე.

მიმართეთ კავშირებს ზემოთ მოცემულ სურათებში.

Კარგი. ახლა, როდესაც ჩვენ დავასრულეთ ბატარეა, ვნახოთ როგორ გავაკეთოთ დამუხტვა საკვანძო ჯაჭვისთვის.

ნაბიჯი 9: ყველა კომპონენტის განთავსება

ყველა კომპონენტის განთავსება
ყველა კომპონენტის განთავსება
ყველა კომპონენტის განთავსება
ყველა კომპონენტის განთავსება

ჩვენ თითქმის დავამთავრეთ ჩვენი საკვანძო ჯაჭვი!

რჩება მხოლოდ საკინძების დამზადება და ყველა კომპონენტის შიგნით განთავსება.

წრიული დიაგრამა მოცემულია ზემოთ. დარწმუნდით, რომ თქვენ გეგმავთ, თუ როგორ მოერგება თქვენი კომპონენტები ერთმანეთს.

თქვენ შეიძლება შენიშნეთ კონდენსატორი სქემის დიაგრამაში. ეს აუცილებელია წრედში ძაბვის რყევების მოსაშორებლად, რადგან ESP8266 მგრძნობიარეა ძაბვის ცვლილებების მიმართ.

თქვენ შეგიძლიათ გამოიყენოთ JST კონექტორი ბატარეის თქვენს წრეზე დასაკავშირებლად, რადგან მომავალში ადვილი იქნება ბატარეის შეცვლა.

ESP-01– ის დასაკავშირებლად მე ვიყენებ ქალი სათაურის ქინძისთავებს, რომლებიც გაერთიანებულია PCB– ზე. ადვილი ხდება ESP-01– ის ამოღება და ჩასმა წრედში.

დარწმუნდით, რომ თქვენი წრე მაქსიმალურად პატარა გახადეთ!

ნაბიჯი 10: გარე საფარის მომზადება Keychain Circuit და ბატარეის განთავსებისთვის

გარე საფარის მომზადება Keychain Circuit და ბატარეის განთავსებისთვის
გარე საფარის მომზადება Keychain Circuit და ბატარეის განთავსებისთვის
გარე საფარის მომზადება Keychain Circuit და ბატარეის განთავსებისთვის
გარე საფარის მომზადება Keychain Circuit და ბატარეის განთავსებისთვის

ეს არის ის, სადაც მინდა, რომ თქვენ ბიჭებმა წარმოადგინონ განსხვავებული იდეები კლავიშზე.

მე ვიყენებ მუყაოს ამონაკვეთებს კუბის დასამზადებლად, რომლის შიგნით არის ბატარეა და წრე. ის ოდნავ მოცულობითია, მაგრამ კარგია ჯიბეში ტარებისთვის.

იფიქრეთ და მოიფიქრეთ საკვანძო ჯაჭვებზე საოცარი იდეები!

ნაბიჯი 11: დასრულება

სრულდება!
სრულდება!

გილოცავთ! თქვენ შექმენით IoT გასაღები!

ამ პროექტში გასაუმჯობესებლად ბევრი სფეროა, როგორიცაა ბატარეის უკეთესი ხანგრძლივობა, საკვანძო ჯაჭვის კიდევ უფრო მცირე და ა.შ.

მანამდე განაგრძეთ მშენებლობა, განაგრძეთ დანგრევა, განაგრძეთ აღმშენებლობა!

გამომიწერეთ, რომ მიიღოთ შეტყობინება ჩემი შემდეგი ინსტრუქციის შესახებ.

ნებისმიერი შეკითხვა მოგერიდებათ გამოაქვეყნოთ კომენტარების განყოფილებაში. შევხვდებით შემდეგ ინსტრუქციებში.

გირჩევთ: