Мазмуну:

TicTac Super Wifi анализатору, ESP-12, ESP8266: 5 кадам (сүрөттөр менен)
TicTac Super Wifi анализатору, ESP-12, ESP8266: 5 кадам (сүрөттөр менен)

Video: TicTac Super Wifi анализатору, ESP-12, ESP8266: 5 кадам (сүрөттөр менен)

Video: TicTac Super Wifi анализатору, ESP-12, ESP8266: 5 кадам (сүрөттөр менен)
Video: Супер анализатор WiFi в коробке TicTac 2024, Июль
Anonim
TicTac Super Wifi анализатору, ESP-12, ESP8266
TicTac Super Wifi анализатору, ESP-12, ESP8266
TicTac Super Wifi анализатору, ESP-12, ESP8266
TicTac Super Wifi анализатору, ESP-12, ESP8266

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

Бирок, баскычты колдонуунун ордуна, бул TFT SPI дисплейи менен келген сенсордук панелди колдонот. Код LED жарыгын жакшыраак көзөмөлдөө жана дисплейди уйку режимине коюу үчүн өзгөртүлгөн (дисплей модулу сенсордук чип үчүн иштеши керек). Уйкунун агымы 1000мах липонун бир нече жылга созулушу үчүн жетишерлик төмөн. Батареяны кубаттоо жана төмөн чыңалуудан коргоо дагы бар.

Иштеп жаткан видеонун акыркы кадамын караңыз.

Бөлүктөр:

  • 48г TicTac кутуча
  • ESP12 (жакшыраак ESP-12F)
  • 2.4”SPI TFT дисплейи
  • Lipo кубаттоо модулу
  • PNP транзистору
  • 3.3v аз тынч ток, чыңалуу жөндөгүч
  • Байланышкан резисторлор жана конденсаторлор (кийинчерээк чоо -жайы)

1 -кадам: Өнүгүү

Өнүгүү
Өнүгүү

Мен бул долбоордун өнүгүү жолун сүрөттөйм деп ойлогом. Эгер сиз муну түз жасоону кааласаңыз, бул бөлүмдү өткөрүп жибере аласыз.

Бул менин биринчи ESP8266 долбоорлорумдун бири. Мен Wifi анализатору үчүн корпус катары TicTac кутусун колдонуу боюнча тыкан түшүнүккө ээ болдум жана аны жасоону чечтим. Рахмат: Portable-WiFi-Analyzer. Мен чоңураак 2,4 дюймдук дисплейди колдонууну чечтим - бул сенсордук панели менен жана туташтыргычтары бар ПХБда туташуу оңой болмок.

Мен курулушту баштаганда, ESP12 антеннасы электроникадан тазалана турган механизмдерди изилдедим. Жалгыз вариант анын капкактын ичинде болушу болчу. Мен ошондой эле диспенсердин астындагы заряддоо модулун кааладым. Анда суроо "күйгүзүү баскычын" кайда табуу керек эле? Мен иштин артына тешик кылгым келген жок. Жогорку капкак эң жакшы болмок - бирок менде эки модуль бар болсо орун жок.

Бул сенсордук панелди күйгүзүү баскычы катары колдонуу идеясына алып келди. Мен дисплей туташтыргычтарынын бири "T_IRQ" деп жазылганын байкадым - бул шыктандыруучу көрүндү. Сенсордук чип XPT2046 болуп саналат. Жана менин кубанычым - автоматтык уйку режими жана панелге тийсе, T_IRQ төмөн тартат. Бул баскычты алмаштыруу үчүн идеалдуу жана жөн гана ESP12 баштапкы абалга туташууга болот.

Мен белгилеп кетишим керек, код Wi -Fi тармактарын бир нече жолу сканерлейт, андан кийин дисплейдеги кубатты өчүрүп, ESP12ди терең уйкуга калтырат - бул баштапкы абалга келтирүү менен ойгонот.

Ошентип, бул түшүнүк түшүнүктүү болгондуктан, мен аны NodeMcu аркылуу туташтырдым - жана ал иштеген жок! Ошентип, дагы бир аз иш бар болчу. Мен ошондой эле борттогу USB чиптин жана жогорку тыныгуудагы токтун чыңалуусун жөнгө салуучунун айынан NodeMcu менен уйкунун агымын текшере албасымды билчүмүн. Мен ошондой эле ESP12лерди оңой программалоо системасын кааладым. Бул NodeMCU сыяктуу оңой программалана турган, бирок FTDI программистин колдоно турган ESP12 сынык тактасын/иштеп чыгуу системасын түзүүгө алып келди. Бул жол менен жөндөгүч жана USB чип өзүнчө. Караңыз: ESP-12E жана ESP-12F программалоо жана Breakout Board

Андан кийин мен аны ESP-12F кармап турган жаңы тактамдын жардамы менен байладым-ал иштеди. Мен киргизген жалгыз өзгөрүү дисплей модулундагы чыңалуу жөндөгүчүн кыскартуу болду, андыктан бардыгы 3.3v менен айдалды. Мен коддук режимдеримди жасай баштадым, өзгөчө дисплей чипин (ILI9341) уйку режимине коюу үчүн код, анткени бул жана сенсордук панелдин чипи ESP модулу уктап жатканда да иштеши керек (уйку режиминде). Андан кийин мен уйкунун агымын текшердим. Бул 90uA болчу. Ошентип, 1000 мАч батарея бир жылга жетет. Жакшы башталыш.

Андан кийин дисплей модулундагы чыңалуу жөндөгүчүн алып салдым. Жер казыгын эле көтөрсө жетиштүү болмок. Азыр системанын уйку агымы 32uA болчу. Мен дагы эле 3.3v жөндөгүчтү кошушум керек болчу, бирок 2uA тынымсыз ток менен эле билчүмүн. Ошентип, азыр 3 жылдык батарейканын мөөнөтүн карап жатабыз!

Мен ошондой эле зымдарды тыкан кылуу үчүн компоненттерди мүмкүн болушунча ПКБга орнотууну кааладым. Ошентип, бул учурда мен блоктун ПХБ дизайнын алдыга жылдырдым. Мен дисплей модулунун казыктарына түз туташкым келет. Бул абдан кыйын болмок, ошондуктан мен дисплей модулуна ПХБдан катуу зымды тандадым.

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

Сиз УАны кантип өлчөө керек деп ойлонуп жаткандырсыз. Өлүү оңой! Позитивдүү электр коргошун менен катар 1к каршылыгын коюңуз. Муну секирүүчү коргошун менен кыска кылыңыз, система иштей алат. Андан кийин, ал уйку режиминде болгондо, секиргичти алып салыңыз жана резистордун чыңалуусун түшүрүңүз. 1k каршылыгы бар 100mv 100uA дегенди билдирет. Эгерде чыңалуунун төмөндөшү өтө чоң болсо, мен төмөн мааниге каршылык көрсөтөм. Мен бул ыкманы чындыгында аз уктоо агымы бар башка системаларда 1м каршылыгын колдонуу менен бирдиктүү nA өлчөө үчүн колдондум.

2 -кадам: Курулуш

Сүрөт
Сүрөт
Сүрөт
Сүрөт

ПХБ же катуу зым?

Мен бул жерде курган блок ESP12F жана заряддагыч модулдарды, чыңалуу жөндөгүчүн жана PNP транзисторун жана байланышкан конденсаторлорду жана тартма каршылыктарды кармоо үчүн ПХБны колдонот. Бул эң тыкан жол, бирок ПХБ чегүү жана SMD ширетүүчү жабдууларды талап кылат. Бирок, системаны модулдарды түздөн -түз зымдап, чыңалуу жөндөгүчүн жана PNP транзисторун стриптиздин бир бөлүгүнө коюу аркылуу жасаса болот - буга чейин TicTac долбоорунда болгон (мурда шилтемеленген).

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

Бөлүктөрдүн тизмеси:

  • 49г TicTac кутуча
  • ESP-12F (же ESP-12E) Эскертүү, ESP-12F жакшы диапазонго ээ, антпесе ESP-12E менен бирдей
  • ILI9341 драйвери бар 2.4”SPI TFT дисплейи жана мис. TJCTW24024-SPI
  • Заряддоо модулу - сүрөттү караңыз
  • 2мм пин-тилкеси (милдеттүү эмес, бирок колдонууга татыктуу)
  • SOT23 форматындагы PNP транзистору. Мен BCW30 колдончумун, бирок 100мадан ашык жөндөмү бар жана 200дөн ашык DC кирешеси бар болушу керек.
  • 3v3 250ma (мүн) SOT23 форматындагы жөндөгүч. Мен Microchip MCP1703T-33002E/CB колдондум. Калгандары иштейт, бирок алардын тынымсыз агымын текшерет. (30uAдан азыраак сунуштаңыз).
  • Резисторлор (бардыгы 0805 өлчөмү)
  • 10k 4off
  • 3k3 1 арзандатуу
  • Конденсаторлор (бардыгы 0805 өлчөмү)
  • 2n2 2 өчүк
  • 0.1u 1 арзандатуу
  • PCB WiFiAnalyserArtwork.docx файлы тиркелет.
  • Бир камералуу LiPo батарейкасы. Кубаттуулугу 400-1000mahr - бул учурда туура келет. 400mahr жетишерлик чоң.

ПХБ эмес вариант үчүн коргошун эквиваленттерди колдонсоңуз болот, ¼W жана андан жогору резисторлор жакшы жана жумушчу чыңалуусу 5v же андан жогору.

ПХБ жасоодо - тешиктерди 0,8 мм бургулаңыз. Эгер көзүңүз курч болсо - ESP12 2мм пин -тилкеси тешиктери жакшыраак колдоо үчүн 0.7мм болушу мүмкүн.

Компоненттердин жайгашуусу:

Сүрөт
Сүрөт

ПХБны чогултканда алгач резисторлорду жана конденсаторлорду, андан кийин жөндөгүчтү жана PNP транзисторун, андан кийин заряддоо модулун жана ESP12 үчүн пин-тилкени жасаңыз. Мен ESP12-ди ордуна ширеткен жокмун, анткени ал пин-тилкеге жетиштүү бекем басылган жана тактан кайра программалоо оңой. ПКБнын TX, RX, GPIO 0, Reset жана жерге туташтыргычтары бар экенин байкайсыз, эгерде сиз качандыр бир жерде кайра программалоону кааласаңыз. GPIO төмөн тартуу үчүн бир баскыч талап кылынарын эске алыңыз. Дисплейге тийүү менен баштапкы абалга келтирүүгө болот. Баскычты колдонсо болот, бирок T_IRQ дисплейине зым ажыратылганда.

3 -кадам: Кабелдөө

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

Сүрөт
Сүрөт

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

Эми зымдарды дисплейге лента кабелин туташтыруудан баштаса болот. 7-8 см узундуктагы PC лентасынын кабелин кесип, 10 жолду тандаңыз. 10 мм жолдун 9ун кыркып, T-IRQ төөнөгүчүн бир четинде узунураак калтырыңыз. Калганын ширетиле турган жерге жайып, керек болгон жерде дагы бир аз кыркууга болот.

Мен VCC менен башталып, бир убакта бир коргошунду жайгаштырдым жана ширеттим.

Сүрөт
Сүрөт

ПКБны дисплейге карата керектүү жерге коюңуз. Андан кийин, зымдарды талап кылынгандан 5 мм же андан узун кылып кыркып, 2 мм изоляциясын чечип, учу менен календи ордуна коюңуз. Зымдын багыты төмөнкүдөй жүрөт (VCCден пин номерлерин эсептөө):

Дисплей ПХБ Комментарий
1 1 VCC
2 8 GND
3 9 CS
4 5 КАЛПЫНА КЕЛТИРҮҮ
5 7 D/C
6 2 SDI (MOSI)
7 4 SCK
8 10 LED
9 3 SDO (MISO)
10 6 T_IRQ
Сүрөт
Сүрөт

Эми батарейканы туташтыруу жана ESP12ди программалоо гана калды. Эгерде жеринде программалоо болсо, батареяны азыр туташтырыңыз. Эгерде тактанын сыртында программалоо болсо, анда батареяны туташтырыңыз.

4 -кадам: Программалоо

Тиркелген ESP8266WiFiAnalMod.ino кодун жүктөп алыңыз, Arduino эскиздер папкасында 'ESP8266WiFiAnalMod' аттуу папканы түзүңүз жана файлды буга жылдырыңыз.

Arduino IDEди баштаңыз (эгер керек болсо Arduino.ccтен жүктөп алып орнотуңуз) жана сизде жок болсо ESP тактасынын маалыматын кошуңуз (караңыз: Sparkfun).

Кодду жүктөңүз (Файл> Эскиз китеби>… ESP8266WiFiAnalMod).

Андан кийин программалоо деталдарын коюңуз (Куралдар):

Такта тандоо: Жалпы ESP8266 модулу

Калган орнотуулар үчүн төмөндө караңыз. Калыбына келтирүү ыкмасын тандаңыз: "nodemcu", эгерде кайра орнотуунун автоматтык дискке ээ программисти жана GPIO0 колдонулса. Болбосо "ck" деп коюңуз, эгерде жеринде программалоо же USB менен сериялык алмаштыргычка түз туташуу аркылуу.

Порт номери башкача болушу мүмкүн.

Сүрөт
Сүрөт

Эгерде сиз жеринде программалоону кааласаңыз, GPIO 0ну төмөн тартып, Tx жана Rxке туташуу үчүн зымдарды коммутаторго туташтыруу керек болот-төмөндө караңыз:

Жөнөкөй вариант-программалоо тактасын колдонуу: ESP-12E жана ESP-12F программалоо жана Breakout Board

Эгерде in-situ программалоо төмөнкүдөй туташат. Эскертүү, эгер дисплей туташкан болсо, Кайра коюуну сенсордук экран аркылуу жандандырууга болот, антпесе Resetтен GNDге которуу керек. Күч тактага керек, эң жакшысы 3.7v OUT+ жана OUT-pinдерге колдонуу. Батареяны колдонуп жатсаңыз, USB кабелин кыска убакытка туташтырып, заряддагычты кайра коюу керек.

Сүрөт
Сүрөт

Эгерде программалоо режимин кол менен орнотсоңуз, баштапкы абалга келтирип коюңуз (сенсордук экран), GPIO 0ну төмөн тартып, ал эми баштапкы абалга келтириңиз. Эми жүктөө баскычын чыкылдатыңыз. Программалоо улантылышы керек.

Эгерде программалоо жана үзүлүү тактасын колдонсоңуз, FTDI USB сериялык алмаштыргычын тиркеп коюңуз, программалоо тактасына 3.3v кубатын колдонуңуз жана жүктөп алуу үчүн чыкылдатыңыз.

5 -кадам: жыйынтыктоо жана тестирлөө

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

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

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

Электрондук такта капкактын ичине батып, USB кубаттоочу розетканы көрсөтүү үчүн дисплей тактасына бекитилиши керек. Тактайдын позицияларынын ортосундагы керектүү байланыш байкалганда, эки тактайга эки жактуу скотчту (калыңдыгы 1 мм) коюңуз. Бул ар кандай электрдик контактты болтурбоого тийиш болгон 2 мм тазалыкты берет. Мен сактык үчүн дисплейдин электроникасын каптаган изолятор лентасын койдум:

Сүрөт
Сүрөт

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

Сүрөт
Сүрөт
Сүрөт
Сүрөт

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

Сүрөт
Сүрөт

Баарын туташтырып, эч нерсе болбогонун билгенде, кабатыр болбоңуз (азырынча). Заряддоо модулундагы батареяны коргоо схемасы кайра орнотулушу керек. Бул 5V менен камсыз кылуу үчүн микро USB алып аркылуу туташтыруу аркылуу ишке ашырылат. Бир нече секунд жетиштүү.

Эми сизде ESP8266 тутумдарынын күчүн көрсөтүүчү пайдалуу түзмөк бар, жана менин абалымда WiFi каналымды өзгөртүүгө түрткү берди, анткени ал дагы 5 адамды тапты!

Бул сонун долбоор сизге жагат деп ишенем.

Майк

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