Съдържание:

TicTac Super Wifi анализатор, ESP-12, ESP8266: 5 стъпки (със снимки)
TicTac Super Wifi анализатор, ESP-12, ESP8266: 5 стъпки (със снимки)

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

Видео: TicTac Super Wifi анализатор, ESP-12, ESP8266: 5 стъпки (със снимки)
Видео: Супер анализатор 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 подсветката и за поставяне на дисплея в режим на заспиване (тъй като модулът на дисплея трябва да остане захранван за сензорния чип). Единичният ток в сън е достатъчно нисък за 1000mah lipo да издържи няколко години. Освен това има зареждане на батерията и защита от ниско напрежение.

Вижте последната стъпка за видеоклип, който работи.

Части:

  • 48 g кутия TicTac
  • ESP12 (за предпочитане ESP-12F)
  • 2.4”SPI TFT дисплей
  • Модул за зареждане Lipo
  • PNP транзистор
  • 3.3v нисък ток на покой, регулатор на напрежението
  • Свързани резистори и кондензатори (подробности по -късно)

Стъпка 1: Развитие

Развитие
Развитие

Мислех, че ще очертая пътя на развитие на този проект. Можете да пропуснете този раздел, ако искате да започнете направо.

Това е един от първите ми проекти ESP8266. Взех се с чистата концепция за използване на кутия TicTac като кутия за Wifi анализатора и реших да направя такава. Благодаря: Portable-WiFi-Analyzer. Реших да използвам по -голям 2,4 -инчов дисплей - който се предлагаше със сензорен панел и върху печатна платка с щифтове, към които би било по -лесно да се свържете.

Когато започнах изграждането, проучих механизмите, които ще премахнат въздуха ESP12 от електрониката. Единственият вариант беше той да е вътре в капачката. Исках и зарядното устройство под дозатора. Тогава въпросът беше къде да намеря „бутона за включване“? Не исках да правя дупка в задната част на кутията. Горната капачка би била най -добрата - но няма място, ако имам двата модула там.

Това доведе до идеята за използване на сензорния панел като бутон за включване. Забелязах, че един от конекторите на дисплея е означен с „T_IRQ“- това изглеждаше обнадеждаващо. Сензорният чип е XPT2046. И да, за моя радост е, че има автоматичен режим на заспиване и дърпа T_IRQ ниско, ако панелът е докоснат. Това е идеално за смяна на превключвателя и може просто да бъде свързано към нулиране на ESP12.

Трябваше да спомена, че кодът изпълнява няколко сканирания за wifi мрежи и след това премахва захранването на дисплея и поставя ESP12 в дълбок сън - това се събужда от вход за нулиране.

Така че с тази концепция ясна, свързах я, използвайки NodeMcu - и не работи! Така че имаше още малко работа за вършене. Съзнавах също, че не мога да проверя тока на заспиване с NodeMcu поради вградения USB чип и регулатора на напрежението на ток в покой. Исках и система за лесно програмиране на ESP12. Това доведе до моето създаване на ESP12 пробивна дъска/система за разработка, която може да бъде програмирана толкова лесно, колкото NodeMCU, но с помощта на програмист за FTDI. По този начин регулаторът и USB чипът са отделени. Вижте: ESP-12E и ESP-12F борд за програмиране и разбиване

След това го свързах с новата си платка, държаща ESP-12F-и тя работи. Единствената промяна, която направих, беше да скъся регулатора на напрежението на модула на дисплея, така че всичко да се задвижва при 3.3v. Започнах да правя кодовите си модификации, по -специално кода за поставяне на чипа на дисплея (ILI9341) в режим на заспиване, тъй като това и чипът на сензорния панел ще трябва да се захранват (в режим на заспиване), когато ESP модулът също е в сън. След това проверих тока на заспиване. Това беше 90uA. Така батерията от 1000 mAh ще издържи една година. Добро начало.

След това премахнах регулатора на напрежението на модула на дисплея. Щеше да е достатъчно просто да повдигнете заземяващия щифт. Сега токът на заспиване на системата беше 32uA. Все още трябваше да добавя 3.3V регулатор, но познавах такъв само с 2uA ток на покой. Така че сега гледаме 3 години живот на батерията!

Исках също така да монтирам компонентите колкото е възможно повече на печатна платка, за да направя окабеляването по -чисто. Така че в този момент продължих с дизайна на печатни платки за устройството. Бих искал да се свържа директно с изводите на модула на дисплея. Това щеше да бъде доста трудно, затова избрах твърд проводник от печатната платка към модула на дисплея.

Поправих малко повече с кода. Добавих известие за заспиване - запълване на екрана в черно и отпечатване на ZZZ преди лягане. Също така забавих включването на LED подсветката, докато екранът не се запълни. Това избягва бялата светкавица в началото на оригиналния код. Направих подобни модове в края, като изключих светодиодите, преди да поставя дисплея в режим на заспиване.

Може би се чудите как да измерите uA. Мъртво лесно! Поставете 1k резистор последователно с положителния захранващ проводник. Съкратете това с джъмпер, за да може системата да работи. След това, когато е в режим на заспиване, отстранете джъмпера и измервайте спада на напрежението на резистора. С 1k резистор 100mv означава 100uA. Ако спадът на напрежението е твърде голям, използвам съпротивление с по -ниска стойност. Използвал съм този метод за измерване на единична цифра nA, използвайки 1m резистор на други системи с наистина ниски токове на сън.

Стъпка 2: Строителство

Образ
Образ
Образ
Образ

PCB или твърд проводник?

Устройството, което построих тук, използва печатна платка за държане на ESP12F и зарядни модули и регулатор на напрежението и PNP транзистор и свързаните с него кондензатори и издърпващи се резистори. Това е най -добрият маршрут, но изисква печатни платки и оборудване за SMD запояване. Системата обаче може да бъде направена чрез директно свързване на модулите и поставяне на регулатора на напрежението и PNP транзистора върху парче лента - както беше в по -ранния проект TicTac (свързан по -рано).

Ако решите да отидете с опцията за печатни платки, може да искате да направите и моята ESP12 платка за програмиране, особено ако планирате да правите повече проекти с платките ESP12.

Списък с части:

  • 49g кутия TicTac
  • ESP-12F (или ESP-12E) Обърнете внимание, че ESP-12F има по-добър обхват, в противен случай същият като ESP-12E
  • 2.4”SPI TFT дисплей с драйвер ILI9341 и докоснете напр. TJCTW24024-SPI
  • Модул за зареждане - вижте снимката
  • 2 мм щифт (по избор, но си струва да се използва)
  • PNP транзистор във формат SOT23. Използвах BCW30, но всеки друг с повече от 100ma възможности и DC усилване> 200 трябва да е ОК.
  • 3v3 250ma (min) регулатор във формат SOT23. Използвах Microchip MCP1703T-33002E/CB. Други ще работят, но ще проверят тока си в покой. (предлагат по -малко от 30uA).
  • Резистори (всички 0805 размер)
  • 10k 4 off
  • 3k3 1 отстъпка
  • Кондензатори (всички с размер 0805)
  • 2n2 2 отстъпка
  • 0.1u 1 отстъпка
  • ПХБ като прикачен файл WiFiAnalyserArtwork.docx.
  • Едноклетъчна LiPo батерия. Капацитет 400-1000mahr - това ще се побере в кутията. 400mahr е достатъчно голям.

За опцията, която не е печатна платка, използвайте оловни еквиваленти, резисторите ¼W и по-нови са добре и кондензатори с работно напрежение 5v или повече.

Когато правите печатни платки - пробийте отворите на 0,8 мм. Ако имате проницателно око - отворите за ивици с 2 мм ESP12 могат да бъдат 0,7 мм за по -добра поддръжка.

Разположение на компоненти:

Образ
Образ

Когато сглобявате печатната платка, първо направете резисторите и кондензаторите, след това регулатора и PNP транзистора, последвани от зарядния модул и щифтовата лента за ESP12. Не запоявах ESP12 на място, тъй като е достатъчно здраво притиснато към щифта и е по-лесно да се препрограмира от дъската. Ще забележите, че печатната платка има конектори за TX, RX, GPIO 0, нулиране и заземяване, ако някога искате да препрограмирате на място. Имайте предвид, че ще е необходим бутон, за да изтеглите GPIO ниско. Нулирането може да бъде намалено чрез докосване на дисплея. Може да се използва бутон, но само ако проводникът към дисплея T_IRQ е изключен.

Стъпка 3: Окабеляване

Преди да свържете дисплея към платката, премахнете регулатора i1 и поставете петна от спойка върху J1, която след това замества това. След това трябва да изглежда така:

Образ
Образ

След това или премахнете щифта или отрежете щифтовете накратко. Най-добрият начин за премахване на щифта е един по един щифт. Поставете поялник от едната страна, докато дърпате щифта с клещи от другата.

Сега окабеляването може да започне, като започне с свързването на лентов кабел към дисплея. Нарежете около 7-8 см дължина на PC лентов кабел и изберете 10 начина. Подрежете 9 от пътищата назад 10 мм, оставяйки един по-дълъг на единия ръб за щифта 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, създайте папка, наречена „ESP8266WiFiAnalMod“във вашата папка за скици на Arduino и преместете файла към това.

Стартирайте Arduino IDE (изтеглете и инсталирайте от Arduino.cc, ако е необходимо) и добавете подробности за ESP платката, ако нямате такива (вижте: Sparkfun).

Заредете кода (Файл> Sketchbook> … ESP8266WiFiAnalMod).

След това задайте детайлите за програмиране (Инструменти):

Изберете платка: Общ модул ESP8266

Вижте по -долу за останалите настройки. Изберете Метод за нулиране: „nodemcu“, ако използвате програмист с автоматизираното устройство за нулиране и GPIO0. В противен случай задайте „ck“, ако програмирате на място или чрез директно свързване към USB към сериен преобразувател.

Номерът на порта вероятно ще бъде различен.

Образ
Образ

Ако искате да програмирате на място, ще трябва да запоите проводници към превключвател, за да изтеглите GPIO 0 ниско и да се свържете с Tx и Rx-вижте по-долу:

По-лесен вариант е да използвате платка за програмиране: ESP-12E и ESP-12F Програмираща и пробивна дъска

Ако програмирате на място, свържете се по-долу. Обърнете внимание, ако дисплеят е свързан Нулирането може да се активира от сензорния екран, в противен случай е необходимо превключване от Нулиране към GND. Захранването е необходимо за платката, най-добре чрез прилагане на 3.7v към изходите OUT+ и OUT-. Ако използвате батерия, зарядното устройство трябва да се нулира, като за кратко включите USB кабел.

Образ
Образ

Ако настройвате ръчно режима на програмиране, издърпайте нулирането на ниско ниво (сензорен екран), дръпнете GPIO 0 ниско и докато ниско освободете нулирането. Сега щракнете върху бутона за изтегляне. Програмирането трябва да продължи.

Ако използвате платката за програмиране и разбиване, просто свържете FTDI USB сериен преобразувател, приложете 3.3v захранване към платката за програмиране и щракнете върху изтегляне.

Стъпка 5: Окончателно сглобяване и тестване

Сега е подходящ момент за предварителен тест. Ако ESP12 е програмиран на място, той трябва да работи - просто леко докоснете екрана и той трябва да започне. Ако е програмиран от устройството - поставете ESP12 и свържете батерията към батерията и тя трябва да работи.

Изключих батерията, докато преминавах през крайния монтаж отчасти за удобство и отчасти, за да избегна неволно късо съединение.

Дисплеят ще се постави добре между капачката и дъното на кутията. Повдигнатата част в основата добре държи екрана отстрани на кутията.

Платката трябва да бъде фиксирана към платката на дисплея, за да може да се побере както в капачката, така и да представи USB гнездото за зареждане. Когато се види необходимата връзка между позициите на дъската, поставете двустранна лента (тип с дебелина 1 мм) към двете дъски. Това ще даде 2 мм разстояние, което трябва да избягва всеки електрически контакт. Поставих изолационна лента, покриваща електрониката на дисплея като предпазна мярка:

Образ
Образ

След това трябва да свалим около 2 мм от горната капачка. Направих това плътно прилепнало към екрана с изрязани допълнителни битове за лентовия кабел на сензорния екран и пластмасовия монтаж на екрана. Виж отдолу:

Образ
Образ
Образ
Образ

И накрая, трябва да поставим батерията и да използваме това, за да задържим дисплея до страната на кутията. Използвах старо парче пенополистирол и го нарязах и шлайфах до необходимата дебелина. Залепих това към платката на дисплея с помощта на тънка двустранна лента и използвах няколко по -малки парчета лента, за да спра батерията да се плъзга.

Образ
Образ

Когато свържете всичко и установите, че нищо не се случва, не се притеснявайте (все още). Защитната верига на батерията на зарядния модул трябва да бъде нулирана. Това става чрез свързване чрез микро USB кабел към 5v захранване. Няколко секунди са достатъчно дълги.

И сега имате полезно устройство, което показва силата на системите ESP8266 и в моя случай ме накара да променя моя WiFi канал, тъй като той откри 5 други на същия!

Надявам се да ви хареса този прекрасен проект.

Майк

Препоръчано: