Мазмуну:

ESP8266 үчүн башталгычтын көрсөтмөсү жана ESP8266 колдонуу менен твит: 17 кадам (сүрөттөр менен)
ESP8266 үчүн башталгычтын көрсөтмөсү жана ESP8266 колдонуу менен твит: 17 кадам (сүрөттөр менен)

Video: ESP8266 үчүн башталгычтын көрсөтмөсү жана ESP8266 колдонуу менен твит: 17 кадам (сүрөттөр менен)

Video: ESP8266 үчүн башталгычтын көрсөтмөсү жана ESP8266 колдонуу менен твит: 17 кадам (сүрөттөр менен)
Video: Как запрограммировать модуль реле Wi-Fi ESP8266 ESP-01 2024, Декабрь
Anonim
ESP8266 үчүн башталгычтын көрсөтмөсү жана ESP8266ды колдонуу менен твиттер
ESP8266 үчүн башталгычтын көрсөтмөсү жана ESP8266ды колдонуу менен твиттер

Мен 2 жыл мурун Arduino жөнүндө билдим. Ошентип, мен светодиод, кнопка, мотор сыяктуу жөнөкөй нерселер менен ойноп баштадым, ошондо мен күндүн аба ырайын, акциялардын баасын, поезддин убакытын көрсөтүү сыяктуу нерселерди жасоо үчүн жакшы болмок деп ойлодум. ЖК дисплейи. Мен муну интернет аркылуу маалыматтарды жөнөтүү жана алуу аркылуу ишке ашырса болорун түшүндүм. Ошентип, чечим intenetке туташып турган. Ардуинону интернетке кантип туташтыруу жана маалыматтарды жөнөтүү жана алуу боюнча издөө башталды. Интернетте Wi -Fi модулдары жөнүндө билип, аларды абдан кымбат деп таптым. Анан мен ESP8266 жөнүндө билдим.

Мен болжол менен бир жыл мурун ESP8266 модулунда интернеттен көп окуганмын жана бирөөнү сатып алгам, бирок алар менен өткөн айда эле иштеше баштадым. Ал кезде кеңири маалымат жок болчу. камтылган программалар, интернетте AT буйруктары, долбоорлор ж.б.. Ошентип, мен баштоону чечтим.

Мен бул башталгычтын көрсөтмөсү катары жаздым, анткени мен ESP8266 менен иштөөдө көптөгөн көйгөйлөргө туш болдум, ошондуктан мен бул Инструкцияны жазууну чечтим, ошондуктан модулдары менен көйгөйлөргө туш болгон башка адамдар аларды тезирээк чече алышат.

Бул Нускамада мен көрсөтүүгө аракет кылам

  • ESP8266ди кантип туташтыруу жана аны менен Arduino Uno аркылуу байланышуу.
  • Мен ошондой эле Thingspeak аркылуу твитти кантип жөнөтүүгө болорун көрсөтүүгө аракет кылам.

ESP8266 эмне кыла алат? Бул сиздин фантазияңыз менен чектелген. Интернетте шаардын температурасын, акциялардын баасын алуу, электрондук каттарды жөнөтүү жана алуу, телефон чалууларды жасоо жана башка көптөгөн нерселерди көрсөткөн долбоорлорду жана окуу куралдарын көрдүм. Бул Твитти кантип жөнөтүү керектиги.

1 -кадам: Сизге керектүү нерселер

Сизге керектүү нерселер
Сизге керектүү нерселер

Бул жерде сизге керектүү нерселер бар. Мунун көбүн каалаган электр дүкөнүнөн же интернеттен сатып алса болот (шилтемелерди шилтеме үчүн бердим).

  • 1xESP8266 (ESP -01) -ebay
  • 1xBreadboard адаптери (бул жерден кантип жасоону үйрөнүңүз же секирүүчү зымдарды колдонуңуз)
  • 1xLM2596 -ebay
  • 1xLogic деңгээлдеги конвертер -ebay
  • 1xArduino Uno
  • USB кабели Arduino Uno үчүн
  • 1xBreadboard -ebay
  • Зымдар -ebay
  • Arduino IDE
  • Thingspeak менен эсеп

Жалпы наркы болжол менен 600 рупийди түзөт (болжол менен $ 9). Мен Arduino Unoнун баасын кошпогом, анткени бул оригиналды же клонду каалашыңызга жараша болот.

2 -кадам: ESP8266 боюнча кээ бир маалымат

ESP8266 бир жыл мурун 2014 -жылы ишке киргизилген, андыктан ал абдан жаңы. Чиптер Espressif тарабынан өндүрүлгөн.

Артыкчылык

ESP8266нын эң чоң артыкчылыгы, балким, анын наркы. Бул абдан арзан жана сиз буларды бир эле учурда сатып ала аласыз. Мен бул жөнүндө билгенге чейин, мен Wi -Fi модулун сатып алууну ойлогон эмесмин.. ESP8266нын жаңы версиялары тез -тез чыгарылып турат, экинчиси - ESP 12. Бирок, мен бул инструкцияда мен абдан популярдуу болгон ESP 01ге гана токтолом. Сиз аны сатып алаарыңыз менен баштасаңыз жакшы болот.. Бул көрсөтмөдөн көрүнүп тургандай, аларды интерфейске салуу өтө оңой.

Кемчилиги

Ар бир түзмөктүн өзүнүн артыкчылыктары жана кемчиликтери бар жана ESP эч айырмаланбайт. ESP кээде иштөө үчүн өтө татаал жана көңүлсүз болуп калышы мүмкүн. Бул жаңы болгондуктан, бул жөнүндө маалымат алуу кыйын болот..com бар, бул абдан чоң жардам. Мындан тышкары, кээде күтүлбөгөн нерселерди жасай баштайт, мисалы, сериялык туташуу аркылуу таштандыларды ыргытып ж.

Белгилей кетүүчү нерсе, Интернетте көптөгөн документтер бар жана анын бир бөлүгү карама -каршы келет. Бул Нускама эч айырмасы жок. Менин ESP8266 менен ойноп жатып, мен ал интернетте айтылгандардан көп четтеп кеткенин байкадым. да), бирок ал жакшы иштеген.

3 -кадам: ESP8266'дын Pinout

ESP8266 боюнча пинту
ESP8266 боюнча пинту

ESP8266да көрсөтүлгөндөй 8 пин бар.

Gnd жана Vcc тиешелүүлүгүнө жараша жерге жана камсыз кылууга байланыштуу болушу керек. ESP8266 3.3Vде иштейт.

RESET пин ESPти кол менен баштапкы абалга келтирүү үчүн колдонулат, адатта 3.3V туташтырылышы керек, эгер сиз ESPти баштапкы абалга келтиргиңиз келсе, бул пинди бир аздан кийин жерге туташтырып, анан 3.3Vга кайтарыңыз.

CH_PD - бул чиптин кубаты, ал адатта 3.3Vга туташтырылышы керек.

GPIO0 жана GPIO2 - бул жалпы максаттагы кирүү казыктары. Алар адатта 3.3Vга туташтырылышы керек.

Rx жана Tx төөнөгүчтөрү ESP8266. алар 3.3V логикасы боюнча иштейт, башкача айтканда 3.3V ESP8266 үчүн логика болуп саналат.

Толук байланыштар кийинки кадамдарда берилет.

4 -кадам: ESP8266 менен байланышуу үчүн эмнени колдонуу керек?

ESP8266 менен байланышуу үчүн эмнени колдонуу керек?
ESP8266 менен байланышуу үчүн эмнени колдонуу керек?
ESP8266 менен байланышуу үчүн эмнени колдонуу керек?
ESP8266 менен байланышуу үчүн эмнени колдонуу керек?
ESP8266 менен байланышуу үчүн эмнени колдонуу керек?
ESP8266 менен байланышуу үчүн эмнени колдонуу керек?

ESP8266 менен FTDI программисттери, USB үчүн TTL сериялык конвертери, Arduino ж.б. Arduino бар, сизде Arduino IDE бар жана анын сериялык монитору ESP8266 менен байланыш үчүн колдонулушу мүмкүн.

Бирок, эгер сиз кааласаңыз же сизде мурунтан эле бар болсо, сиз FTDI программистин же USBден TTLге чейин сериялык алмаштыргычты колдонсоңуз болот (аларды кийинчерээк кантип туташтыруу керектиги жөнүндө). Ошондой эле RealTerm же macty сыяктуу көптөгөн программалар бар. Булар Arduino IDEнин сериялык мониторуна окшош.

5 -кадам: ESP8266ны Breadboardго орнотуу

ESP8266ны Breadboardго орнотуу
ESP8266ны Breadboardго орнотуу
ESP8266ны Breadboardго орнотуу
ESP8266ны Breadboardго орнотуу

ESP8266 төөнөгүчтөрү нан табак эмес экенин байкаңыз. Бул 2 жол менен жеңүүгө болот.

Аялды эркекке секирүүчү зымдарды колдонуңуз, ал нерселер баш аламандыкка алып келет

Бул Нускамада көрсөтүлгөндөй кылыңыз же

Адаптер тактасын колдонуңуз, өзүңүз жасаңыз (Instructablesде алардын көбү бар), бул тыкан.

6 -кадам: Электр менен камсыздоо

Электр камсыздоо
Электр камсыздоо

ESP8266 3.3V менен иштейт, аны Arduinoдогу 5V пинге туташтырбаңыз, балким күйүп кетет.

Кээ бир окуу куралдары чыңалуу бөлүштүргүч схемасын 1k, 2k резисторлорун 5V менен киргизүү жана 3.3V 2k каршылыгы аркылуу алуу жана Arduinoго жеткирүүнү сунушташты.

Мен аны Arduinoдогу 3.3V менен иштете алдым, бирок бир аз убакыттан кийин ESP ысык болуп калды.

Сиз 3.3V чыңалуу жөндөгүчүн колдоно аласыз.

Же сиз LM2596 dc-dc кадамын алмаштыргычты колдоно аласыз. Булар абдан арзан.жана мен буларды колдондум. Ардуинодон 5V киргизиңиз Булардын биринен бир нече саат бою. Байланыштарды сүрөттө көрсөтүлгөндөй кылыңыз.

7 -кадам: Логикалык деңгээлди которуу

Логикалык деңгээлди которуу
Логикалык деңгээлди которуу

Бул ESP 3.3V логикасына ээ экени айтылса, Arduino 5V логикасына ээ.

Бул ESP 3.3V логикасын ЖОГОРУ дегенди билдирет, ал эми Arduino 5Vде логика ЖОГОРУ. Бул аларды бириктирип жатканда кээ бир көйгөйлөрдү жаратышы мүмкүн.

Мен Интернеттен ESP Rx жана Tx менен Arduino менен байланышып жатканда логикалык деңгээлдеги конверсияны колдонуу керек экенин көрдүм.

Кээ бир окуу куралдары логикалык деңгээлди өзгөртүү ESP Rx пини менен иштөө учурунда керек экенин айтышкан.

Бирок мен ESP Rx жана Tx казыктарын Arduino менен кадимкидей туташтыруу эч кандай көйгөй жаратпаганын байкадым

Мен Rx менен Txти логикалык деңгээлдеги конвертер, ошондой эле Rx аркылуу туташтырдым, бирок эч кандай жооп алган жокмун.

Бирок мен TXти туташтыруу учурунда логикалык деңгээлдеги конвертер аркылуу ESP Tx пин туташтыруу эч кандай көйгөй жаратпаганын байкадым

Ошентип, логикалык деңгээлдеги конвертер колдонулушу мүмкүн же колдонулбашы мүмкүн.

Сыноо жана ката аркылуу сизге ылайыктуу болгон ыкманы колдонуңуз.

8 -кадам: Байланыштар

Байланыштар
Байланыштар

ESP8266 байланыштары:

ESP8266

Гнд ------------------- Гнд

GPIO2 --------------- 3.3V

GPIO0 --------------- 3.3V

Rx -------------------- Rx Arduino

Tx --------------------- Tx of Arduino (түз же логикалык деңгээлдеги конвертер аркылуу)

CH_PD -------------- 3.3V

КАЙТА КАЙРА КОЮУ -------------- 3.3V

Vcc -------------------- 3.3V

(Белгилей кетсек, кээ бир версияларда ESP Rx Arduino Tx жана ESP Tx Arduino Rx туташуусу керек).

Эгерде сиз FTDI программистин же USBди TTL сериялык конвертерине колдонуп жатсаңыз, алардын Tx жана Rx'ин Rx жана Tx ESP8266га туташтырыңыз.

9 -кадам: Баштоо

Байланыштарды түзгөндөн кийин, жүктөп бериңиз

жараксыз орнотуу ()

{}

боштук цикл ()

{}

башкача айтканда Arduino үчүн бош эскиз..

Сериялык мониторду ачыңыз жана "NL & CR экөөнө" коюңуз.

Baud rate. It менен эксперимент, адатта, 9600 болушу керек, бирок кээде 115200 болушу мүмкүн.

10 -кадам: AT буйруктары

AT Commands
AT Commands

Жөн эле AT буйруктарын айтуу - бул ESP8266га жөнөтүлө турган буйруктар, аны кайра жүктөө, wifiга туташуу сыяктуу кээ бир функцияларды аткарууга мүмкүндүк берүү үчүн ESP жооп иретинде текст түрүндө ырастоону жөнөтөт. AT буйруктары жана ESP аларга кандай жооп берет. Жөнөтүү менен мен буйрукту терип, enter (return) басууну билдирем.

ATти сериялык монитор аркылуу жөнөтүңүз

Бул буйрук сыноо буйругу катары колдонулат.

ESP кандай жооп берет: OK кайтарылышы керек.

AT+RSTти сериялык монитор аркылуу жөнөтүңүз

Бул буйрук модулду кайра баштоо үчүн колдонулат.

ESP кандай жооп берет: ESP таштандыларды кайтарат. Даяр же даяр деп издеңиз.

Сериялык монитор аркылуу AT+GMR жөнөтүңүз

Бул буйрук модулдун камтылган версиясын аныктоо үчүн колдонулат.

ESP кандай жооп берет: Программалык камсыздоонун версиясы кайтарылышы керек.

Программалык камсыздоо - бул көбүнчө ROMго орнотулган (эстутум үчүн гана), башкача айтканда, аны тез -тез алмаштырууга же такыр эле орнотууга арналбаган программалык камсыздоонун бир бөлүгү. ар кандай фирмалар, алардын бардыгын жаркыроо (орнотуу) оңой.

11 -кадам: AT буйруктарынын жалпы синтаксиси

Ар кандай функцияларды аткаруу үчүн AT буйруктарынын жалпы синтаксиси берилет:

AT+параметр =?

Бул типтеги буйрук сериялык монитор аркылуу жөнөтүлгөндө, ESP параметр кабыл ала турган бардык баалуулуктарды кайтарат.

AT+параметр = вал

Бул типтеги буйрук сериялык монитор аркылуу жөнөтүлгөндө, ESP параметрдин маанисин валга коёт.

AT+параметр?

Бул түрдөгү буйрук сериялык монитор аркылуу жөнөтүлгөндө, ESP параметрдин учурдагы маанисин кайтарат.

Кээ бир AT буйруктары жогоруда көрсөтүлгөн түрлөрдүн бирин гана кабыл алышы мүмкүн, ал эми кээ бирлери 3тү кабыл алышы мүмкүн.

Жогорудагы 3 типте мүмкүн болгон буйруктун мисалы, wifi режимин орнотуу үчүн колдонулган CWMODE.

AT+CWMODE жөнөтүү =? сериялык монитор аркылуу

ESP кандай жооп берет: ESP CWMODE ала турган бардык баалуулуктар (1-3) атайын кайтарылат +CWMODE (1-3).

1 = Статикалык

2 = AP

3 = Статикалык жана AP

AT+CWMODE = 1ди сериялык монитор аркылуу жөнөтүңүз

ESP кандай жооп берет: Эгерде CWMODEде мурунку маанисинен өзгөрүү болсо жана ал статикалык абалга коюлса, анда кайтарылышы керек, эгер CWMODE маанисинде эч кандай өзгөрүү болбосо, эч кандай өзгөрүү кайтарылбашы керек.

МААНИЛҮҮ: CWMODE 1 деп коюлбаса, кийинки кадамдардагы буйруктар иштебейт.

AT+CWMODE жөнөтүлсүнбү? сериялык монитор аркылуу

ESP кандай жооп берет: CWMODEдин азыркы наркы, айрыкча, эгер сиз жогорудагы +CWMODE: 1 кадамын аткарсаңыз, кайтарылышы керек.

12 -кадам: Wifiга туташуу

AT+CWLAPти сериялык монитор аркылуу жөнөтүңүз

Бул буйрук аймактагы бардык тармактарды тизмектөө үчүн колдонулат.

ESP кандай жооп берет: Бардык жеткиликтүү кирүү чекиттеринин же WiFi тармактарынын тизмеси кайтарылышы керек.

AT+CWJAP = "SSID", "сырсөз" жөнөтүү

(кош тырмакчаларды кошкондо).

Бул буйрук WiFi тармагына кошулуу үчүн колдонулат.

ESP кандай жооп берет: модуль тармакка туташкан болсо, OK кайтарылышы керек.

AT+CWJAP жөнөтүлсүнбү? сериялык монитор аркылуу

Бул буйрук ESP учурда туташкан тармакты аныктоо үчүн колдонулат.

ESP кандай жооп берет: ESP туташкан тармак кайтарылат. Атайын +CWJAP: "SSID"

AT+CWQAPти сериялык монитор аркылуу жөнөтүңүз

Бул буйрук ESP учурда туташкан тармактан ажыратуу үчүн колдонулат.

ESP кандай жооп берет: ESP өзү туташкан тармактан чыгат жана OK кайтарылат.

AT+CIFSRти сериялык монитор аркылуу жөнөтүңүз

Бул буйрук ESPтин IP дарегин аныктоо үчүн колдонулат.

ESP кандай жооп берет: ESPтин IP дареги кайтарылат.

13 -кадам: Thingspeak

Thingspeak
Thingspeak
Thingspeak
Thingspeak
Thingspeak
Thingspeak
Thingspeak
Thingspeak

Эгерде сиз Thingspeak -те каттоо эсебин түзө элек болсоңуз, азыр аны түзүңүз.

Thingspeakта эсеп ачкандан кийин Apps> ThingTweetке өтүңүз.

Аны менен твиттер аккаунтуңузду байланыштырыңыз.

Жасалган API ачкычына көңүл буруңуз.

Бул жерде ThingTweet колдонмосу Twitter аккаунтуңузду ThingSpeak эсебиңизге байланыштыруу үчүн колдонулгандан кийин, сиз TweetContol API аркылуу твит жөнөтө аласыз.

API (колдонмо программасынын интерфейси) - бул эки программалык программанын бири -бири менен байланышууга мүмкүндүк берген коду.

Иштеп чыгуучулар үчүн жеткиликтүү болгон кээ бир башка APIлер - Google Maps API, Ачык аба -ырайы API ж.

ESP орнотулган, текшерилген жана wifiга туташкандан кийин гана (негизинен мурунку 2 кадамда берилген бардык кадамдар), төмөндө көрсөтүлгөн кадамдарды аткарыңыз.

14 -кадам: Дагы бир нече AT буйруктары

AT+CIPMODE = 0 жөнөтүңүз, сериялык монитор аркылуу

ESP кантип жооп берет: OK кайтарылды.

CIPMODE буйругу өткөрүп берүү режимин орнотуу үчүн колдонулат.

0 = кадимки режим

1 = UART-WiFi өтүү режими

AT+CIPMUX = 1ди сериялык монитор аркылуу жөнөтүңүз

ESP кантип жооп берет: OK кайтарылды.

CIPMUX буйругу бир же бир нече байланышты орнотуу үчүн колдонулат.

0 = жалгыз байланыш

1 = көп байланыш

15 -кадам: TCP туташуусун орнотуу

TCP туташуусун орнотуу
TCP туташуусун орнотуу
TCP туташуусун орнотуу
TCP туташуусун орнотуу

Белгилей кетсек, биринчи буйруктан баштап, биринчисин жөнөтөөрүңүз менен, байланыш чектелген убакытка гана орнотулат. Андыктан командаларды мүмкүн болушунча тезирээк жөнөтүңүз.

AT+CIPSTART = 0, "TCP", "api.thingspeak.com", 80 сериялык монитор аркылуу жөнөтүңүз

ESP кандай жооп берет: Эгер байланыш орнотулган болсо, шилтеме кайтарылат.

Бул буйрук TCP байланышын түзүү үчүн колдонулат.

Синтаксиси AT+CIPSTART = шилтеме ID, түрү, алыскы IP, алыскы порт

кайда

шилтеме ID = тармак байланышынын идентификатору (0 ~ 4), көп байланыш үчүн колдонулат.

type = string, "TCP" же "UDP".

алыскы IP = сап, алыскы IP дареги (вебсайттын дареги).

алыскы порт = сап, алыскы порт номери (көбүнчө 80 деп тандалат).

AT+CIPSEND = 0, 110ду сериялык монитор аркылуу жөнөтүңүз

ESP кандай жооп берет:> (андан чоң), эгер буйрук ийгиликтүү болсо, кайтарылат.

Бул буйрук маалыматтарды жөнөтүү үчүн колдонулат.

Синтаксиси AT+CIPSEND = шилтеме ID, узундугу

кайда

шилтеме ID = Байланыштын идентификатору (0 ~ 4), көп туташуу үчүн. CIPMUX 1ге коюлгандыктан, 1.

узундук = маалыматтын узундугу, MAX 2048 байт. Жалпысынан узундук үчүн көп санды тандаңыз.

16 -кадам: Tweet жөнөтүү

Tweet жөнөтүү
Tweet жөнөтүү

Эми твитти жөнөтүү үчүн

GET/apps/thingtweet/1/statuses/update? Api_key = yourAPI & status = yourtweetти сериялык монитор аркылуу жөнөтүңүз.

Сиздин APIди API ачкычы менен алмаштырыңыз жана твитти каалаган твитке алмаштырыңыз.

Качан гана жогорудагы буйрукту жөнөтөөрүңүз менен, болжол менен 1 секунд аралыкта enter (return) басууну баштаңыз. Бир аздан кийин OK, +IPD, 0, 1: 1 жана OK жөнөтүлөт, бул твит жарыяланганын билдирет.

Твиттериңизди ачып, твит жарыяланганын же жок экенин текшериңиз.

Ошол эле твитти кайра -кайра жөнөтүүгө болбойт.

Жөнөтүлгөн сап (GET….), HTTP GET суранычы.

GET сурамы берилген серверден маалыматтарды алуу үчүн колдонулат (api.thingspeak.com).

17 -кадам: Андан кийин эмне кылуу керек

(Видеону жок дегенде 360p менен көрүңүз)

Кодду жана схемаларды жүктөө үчүн бул репозиторийге өтүңүз. "Clone же Жүктөө" баскычын чыкылдатыңыз (оң жагында жашыл түстө) жана ZIP файлын жүктөө үчүн "ZIPти жүктөө" дегенди тандаңыз. Эми компьютериңиздеги мазмунду алуу үчүн код жана схемалар (схемалар папкасында). Мен бул репозиторийге бардык AT буйруктарын жалпылай турган таблицаны жүктөдүм.

Интернетте ESP8266 менен алектенген көптөгөн чоң ресурстар бар. Мен алардын айрымдарын бул жерде айттым:

  • Кевин Дарра видео.
  • ALLaboutEE видеолору.
  • esp8266.com

Сиз AT командалары менен дагы тажрыйба жүргүзсөңүз болот. Интернетте аба ырайы, акциялардын баасы ж.

Толук AT буйрук документтери

Ошондой эле мен учурда сенсордун аналогдук маанилерин автоматтык түрдө твит кылган программанын үстүндө иштеп жатам жана ал туура иштеп жатканда аны жарыя кылам.

Эгерде сизге менин үйрөтүүчү добушум жакса, Arduino all things конкурсунда.

Сунушталууда: