Мазмуну:
- 1 -кадам: PINOUT
- 2 -кадам: WiFiManager
- 3 -кадам: Бул кантип иштейт
- 4 -кадам: Китепканалар
- 5 -кадам: Функциялар
- 6 -кадам: Ассамблея
- 7 -кадам: Код
- 8 -кадам: Орнотуу
- 9 -кадам: Loop
- 10 -кадам: чалуулар
Video: ESP8266 жана ESP32 WiFiManager менен: 10 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:42
Сиз WiFiManager менен таанышсызбы? Бул зымсыз байланыш менеджери катары кызмат кылган китепкана жана анын жардамы менен биз кирүү түйүнүн жана станцияны конфигурациялоонун оңой жолуна ээ болдук. Мен бул теманы талкуулоо үчүн бир нече сунуштарды алдым; Ошентип, бүгүн мен бул китепкана жана анын функциялары менен тааныштырам. Мен ошондой эле ESP32 жана ESP8266 менен анын колдонулушун көрсөтөм.
1 -кадам: PINOUT
Бул жерде мен колдоно турган эки түзмөктүн PINOUTун көрсөтөм:
- NodeMCU ESP-12E
- NodeMCU ESP-WROOM-32
2 -кадам: WiFiManager
WiFiManager чынында зымсыз байланыштарды оңой башкаруу үчүн WiFi.h үстүнө жазылган китепканадан башка эч нерсе эмес. Унутпаңыз, анын жардамы менен биз кирүү чекитин да, станцияны да конфигурациялоого мүмкүнчүлүгүбүз чоң. Станция режими үчүн биз браузердеги портал аркылуу конфигурациялайбыз.
Кээ бир өзгөчөлүктөр:
• Бул автоматтык туташуудан көз каранды
• Автоматтык эмес конфигурация порталынын башталышы
• кош режимде тандалма иштейт
3 -кадам: Бул кантип иштейт
ESP туташканда WiFi конфигурация порталын иштетет жана конфигурация маалыматтарын туруктуу эстутумга сактайт. Кийинчерээк, конфигурация порталы ESP модулунда баскыч басылса гана кайра башталат.
Бул жерде конфигурация агымын текшерип, этап -этабы менен аткарсаңыз болот:
1. Браузер менен каалаган WiFi иштетилген түзмөктү колдонуп, жаңы түзүлгөн кирүү чекитине туташыңыз жана 192.168.4.1 дарегин киргизиңиз.
2. Экранда сиз учурдагы тармакка туташуу үчүн эки вариантка ээ болосуз:
• WiFi конфигурациялоо
• WiFi конфигурациялоо (Скандоо жок)
3. Тармактардын бирин тандап, сырсөздү киргизиңиз (керек болсо). Андан кийин сактаңыз жана ESP кайра жүктөлүшүн күтө туруңуз.
4. Жүктөөнүн аягында ESP сакталган тармакка туташууга аракет кылат. Эгер муну кыла албасаңыз, анда кирүү чекитин иштетесиз.
4 -кадам: Китепканалар
"WifiManager-ESP32" китепканасын кошуу.
Https://github.com/zhouhan0126/WIFIMANAGER-ESP32 дарегине өтүңүз жана китепкананы жүктөп алыңыз.
Файлды ачып, Arduino IDEнин китепканалар папкасына чаптаңыз.
C: / Программа файлдары (x86) / Arduino / китепканалар
"DNSServer-ESP32" китепканасын кошуу.
Https://github.com/zhouhan0126/DNSServer---esp32 шилтемесине өтүп, китепкананы жүктөп алыңыз.
Файлды ачып, Arduino IDEнин китепканалар папкасына чаптаңыз.
C: / Программа файлдары (x86) / Arduino / китепканалар
"WebServer-ESP32" китепканасын кошуу.
Https://github.com/zhouhan0126/WebServer-esp32 шилтемесине өтүп, китепкананы жүктөп алыңыз.
Файлды ачып, Arduino IDEнин китепканалар папкасына чаптаңыз.
C: / Программа файлдары (x86) / Arduino / китепканалар
Эскертүү:
WiFiManager-ESP32 китепканасында буга чейин ESP8266 менен иштеген орнотуулар бар, ошондуктан биз муну эки WiFiManager libsтин ордуна колдонобуз (ар бир чип түрү үчүн).
Кийинчерээк көрө турганыбыздай, ESP8266WiFi жана ESP8266WebServer - бул биз жүктөп алуунун кажети жок китепканалар, анткени алар ESP8266ны Arduino IDEге орноткондо эле келишет.
5 -кадам: Функциялар
Бул жерде WiFiManager бизге сунуштаган кээ бир функциялар.
1. autoConnect
AutoConnect функциясы кирүү чекитин түзүүгө жооптуу. Биз аны үч жол менен колдонсок болот.
• autoConnect ("тармактын аты", "сырсөзү"); - аныкталган аты жана сырсөзү бар тармакты түзөт.
• autoConnect ("тармактын аты"); - аныкталган ат менен ачык тармакты түзөт.
• autoConnect (); - "ESP" + chipID деген ат менен ачык жана автоматтык түрдө аталган тармакты түзөт.
2. startConfigPortal
StartConfigPortal функциясы мурда сакталган тармакка туташууга аракет кылбастан, Кирүү түйүнүн түзүү үчүн жооптуу.
• startConfigPortal ("тармактын аты", "сырсөзү"); - аныкталган аты жана сырсөзү бар тармакты түзөт.
• startConfigPortal (); - "ESP" + chipID деген ат менен ачык жана автоматтык түрдө аталган тармакты түзөт.
3. getConfigPortalSSID
Порталдын SSIDсин кайтарат (Кирүү чекити)
4. getSSID
Бул туташкан тармактын SSID кайтарат.
5. getPassword
Бул туташкан тармактын сырсөзүн кайтарат.
6. setDebugOutput
SetDebugOutput функциясы сериялык монитордо мүчүлүштүктөрдү оңдоо боюнча билдирүүлөрдү басып чыгаруу үчүн жооптуу. Бул билдирүүлөр буга чейин китепканада аныкталган. Функциялардан өтүп жатканда, маалыматтар басып чыгарылат.
Демейки боюнча, бул функция TRUE деп коюлган. Эгер сиз билдирүүлөрдү өчүргүңүз келсе, жөн гана функцияны ЖАЛГАН кылып коюңуз.
7. setMinimumSignalQuality
SetMinimumSignalQuality функциясы сигналдын сапатына негизделген тармактарды чыпкалоо үчүн жооптуу. Демейки боюнча, WiFiManager кирүү тармактарын 8%дан төмөн көрсөтпөйт.
8. setRemoveDuplicateAPs
SetRemoveDuplicateAPs функциясы тармактын дубликаттарын алып салуу үчүн жооптуу.
Алыдын ала ЧЫНЫГЫ деп коюлган.
9. setAPStaticIPConfig
SetAPStaticIPConfig функциясы кирүү чекити режиминде статикалык дарек орнотууларын орнотуу үчүн жооптуу.
(IP, GATEWAY, SUBNET)
10. setSTAStaticIPConfig
SetSTAStaticIPConfig функциясы станция режиминде статикалык дарек орнотууларын орнотуу үчүн жооптуу.
(IP, GATEWAY, SUBNET)
Сиз автоматтык туташуудан мурун буйрукту кошушуңуз керек !!!
11. setAPCallback
SetAPCallback функциясы AP режими башталганын кабарлоо үчүн жооптуу.
Параметр - бул кайра чалуу катары көрсөтүү үчүн түзүлүшү керек болгон функция;
12. setSaveConfigCallback
SetSaveConfigCallback функциясы сизге жаңы конфигурация сакталганын жана байланыш ийгиликтүү аяктаганын маалымдоо үчүн жооптуу.
Параметр - бул түзүү функциясы жана муну артка кайтаруу катары көрсөтөт.
Сиз автоматтык туташуудан мурун буйрукту кошушуңуз керек !!!
6 -кадам: Ассамблея
Мисал
Биздин мисалда, биз ESP менен кирүү чекитин түзөбүз (код ESP8266 менен ESP32ге кызмат кылат). АР түзүлгөндөн кийин, биз порталга IP 192.168.4.1 аркылуу киребиз (бул ага жетүү үчүн демейки). Ошентип, келгиле, жеткиликтүү тармактарды алалы, бирин тандап, сактап коюңуз. Ал жерден, ESP кайра башталат жана ага туташууга аракет кылат, андан кийин станция катары иштейт жана мындан ары кирүү түйүнү катары иштебейт.
Станция режимине киргенден кийин, сиз ESPти Access Point режимине кнопка аркылуу гана кайтара аласыз.
7 -кадам: Код
Китепканалар
Адегенде биз колдоно турган китепканаларды аныктайлы.
Белгилей кетсек, бизде #if аныкталган, #башка жана #endif буйруктары бар. Алар шарттуу түрдө чипке тиешелүү керектүү китепканаларды камтыйт. Бул бөлүк ESP8266 менен ESP32де бир эле кодду иштетүү үчүн абдан маанилүү.
#аныкталган болсо (ESP8266)
#кошуу // ESP8266 Core WiFi китепканасы #дагы #кошуу // ESP32 Core WiFi китепканасы #endif
#аныкталган болсо (ESP8266)
#include // Жергиликтүү WebServer конфигурация порталына кызмат кылуу үчүн колдонулат
#башка
#include // Бардык сурамдарды конфигурация порталына багыттоо үчүн колдонулган жергиликтүү DNS Server (https://github.com/zhouhan0126/DNSServer---esp32)
#endif
#include // Local WebServer конфигурация порталына кызмат кылуу үчүн колдонулат (https://github.com/zhouhan0126/DNSServer---esp32) #include // WiFi Configuration Magic (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNSServer---esp32 (Түпнуска)
8 -кадам: Орнотуу
Орнотууда биз WiFiManager'ибизди эң жөнөкөй жол менен конфигурациялап жатабыз. Келгиле, чалууларды аныктап, тармакты түзөлү.
const int PIN_AP = 2;
void setup () {Serial.begin (9600); pinMode (PIN_AP, INPUT); // декларация wifiManager WiFiManager wifiManager;
// колдонулбагандан кийин, сиз конфигурациялоо үчүн, ошондой эле автоматтык түрдө // автоматтык түрдө автоматтык түрдө жаңыланышыңыз керек. // wifiManager.resetSettings (); // чалуу чалуусу конфигурацияланган AP wifiManager.setAPCallback (configModeCallback); // кайра чалуу кайра калыбына келтирилсе, же жок болсо, wifiManager.setSaveConfigCallback (saveConfigCallback); // ESP_AP комментарийлеринин тизмеси 12345678 wifiManager.autoConnect ("ESP_AP", "12345678"); }
9 -кадам: Loop
Укурукта, биз басылганын билүү үчүн баскычтын пинин окуйбуз, андан кийин AP режимин кайра иштетүү ыкмасын чакырабыз.
void loop () {
WiFiManager wifiManager; // эгерде (digitalRead (PIN_AP) == HIGH) {Serial.println ("resetar"); // порталы if if (! wifiManager.startConfigPortal ("ESP_AP", "12345678")) {Serial.println ("Falha ao conectar"); кечигүү (2000); ESP.restart (); кечигүү (1000); } Serial.println ("Conectou ESP_AP !!!"); }
Сиз баскычты басканыңызда, ESP Станция режиминен чыгып, Кирүү чекитиңизди жана порталыңызды ачат.
Биз resetSettings () буйругун колдонбогондугубузду унутпаңыз. Орнотуулар ESPтин кийинки жолу жүктөлүшү үчүн сакталат.
10 -кадам: чалуулар
Окуялар менен байланышкан кайра чалуу функциялары, иштин так учуруна ээ болуу үчүн кызмат кылат, биздин учурда, AP режимине жана Станция режимине кирүү. Биз, мисалы, туташкан тармактан SSIDди алуу сыяктуу каалаган тартипти ишке ашыра алабыз.
// кайра чалуу көрсөтүлөт же ESP кирүү үчүн AP жок
жараксыз configModeCallback (WiFiManager *myWiFiManager) {// Serial.println ("Киргизилген конфигурация режими"); Serial.println ("Entrou no modo de configuração"); Serial.println (WiFi.softAPIP ()); // AP Serial.println (myWiFiManager-> getConfigPortalSSID ()) үчүн IP дареги; // SSID өчүрүү же өчүрүү
}
// кайра чалуу көрсөтүлүүдө
void saveConfigCallback () {// Serial.println ("Config сактоо керек"); Serial.println ("Configuração salva"); Serial.println (WiFi.softAPIP ()); // IP же AP үчүн кам көрүү)
Сунушталууда:
Сүрөттөрдү ESP32-Cam менен ESP8266 WeMos D1 R1 Wifi процессорунун жардамы менен Uno менен тартуу жана жөнөтүү: 7 кадам
Сүрөттөрдү ESP32-Cam менен ESP8266 WeMos D1 R1 Wifi процессорунун жардамы менен Uno менен түшүрүү жана жөнөтүү: ESP8266 WeMos D1 R1 WiFI процессорунун жардамы менен ESP32-Cam (OV2640) аркылуу сүрөт тартуу жана аны электрондук почтага жөнөтүү, Google Driveга сактоо жана жөнөтүү Twilio.What аркылуу Whatsapp. Талаптар: ESP8266 WeMos D1 R1 WiFI Processor Uno менен (https: // protosupplies
Bluetooth LE жана RaspberryPi менен температураны көзөмөлдөө жана жаздыруу: 9 кадам (сүрөттөр менен)
Bluetooth LE жана RaspberryPi менен температураны көзөмөлдөп жана жаздырыңыз: Бул көрсөтмө Blue Lios (BLEHome) жана RaspberryPi 3B Bluetooth LE сенсорунун катасы менен көп түйүндүү температураны көзөмөлдөө тутумун кантип чогултуу жөнүндө. Bluetooth LE стандартынын өнүгүшүнө рахмат. азыр жеткиликтүү
Ардуино роботу алыстыгы, багыты жана айлануу даражасы менен (Чыгыш, Батыш, Түндүк, Түштүк) Bluetooth модулу жана Автономдуу робот кыймылынын жардамы менен үн менен башкарылат.: 6 кадам
Ардуино роботу алыстыгы, багыты жана айлануу даражасы менен (Чыгыш, Батыш, Түндүк, Түштүк) Bluetooth модулунун жана Автономдуу Робот Кыймылынын жардамы менен Үн менен Башкарылат. , Сол, Оң, Чыгыш, Батыш, Түндүк, Түштүк) Үн буйругун колдонуу менен аралыкты сантиметр менен талап кылды. Роботту автономдуу түрдө жылдырса болот
WiFi жана IR Remote жана Android колдонмосун колдонуп NodeMCU жана IR алуучу менен 8 релелик көзөмөл: 5 кадам (сүрөттөр менен)
WiFi жана IR Remote жана Android тиркемесин колдонуп NodeMCU жана IR алуучу менен 8 реле көзөмөлү: wifi жана ир алыскы жана андроид колдонмосу аркылуу nodemcu жана IR кабыл алгычты колдонуп 8 реле өчүргүчтөрүн көзөмөлдөө БУЛ ЖЕРДЕ
Температура жана нымдуулукту көрсөтүү жана маалыматтарды чогултуу Arduino жана иштетүү менен: 13 кадам (сүрөттөр менен)
Температура жана нымдуулукту көрсөтүү жана маалыматтарды чогултуу Arduino жана иштетүү менен: Киришүү: Бул Ардуино тактасын, Sensor (DHT11), Windows компьютери жана Processing (бекер жүктөлүүчү) программасын колдонуп, Температураны, Нымдуулукту санариптик жана тилке графасынын формасы, убакытты жана күндү көрсөтүү жана эсептөө убактысын иштетүү