Innehållsförteckning:
- Steg 1: Utveckling
- Steg 2: Konstruktion
- Steg 3: Kabeldragning
- Steg 4: Programmering
- Steg 5: Slutmontering och testning
Video: TicTac Super Wifi Analyzer, ESP-12, ESP8266: 5 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
Detta projekt bygger på den ursprungliga månresekoden och konceptet att använda en TicTac -låda som ett hölje.
Men istället för att använda en knapp för att starta avläsningarna använder den pekskärmen som levereras med en TFT SPI -skärm. Koden har ändrats för att bättre styra LED -bakgrundsbelysningen och för att sätta skärmen i viloläge (eftersom displaymodulen måste vara strömförande för pekchipet). Enhetsströmmen i sömn är tillräckligt låg för att en 1000mah lipo ska hålla i flera år. Det finns också batteriladdning och lågspänningsskydd på plats.
Se det sista steget för en video av hur det fungerar.
Delar:
- 48g TicTac -låda
- ESP12 (helst ESP-12F)
- 2,4”SPI TFT -skärm
- Lipo laddningsmodul
- PNP -transistor
- 3.3v låg viloläge, spänningsregulator
- Tillhörande motstånd och kondensatorer (detaljer senare)
Steg 1: Utveckling
Jag tänkte att jag skulle beskriva utvecklingsvägen för detta projekt. Du kan hoppa över det här avsnittet om du vill göra det direkt.
Detta är ett av mina första ESP8266 -projekt. Jag togs med det snygga konceptet att använda en TicTac -låda som ett hölje för Wifi -analysatorn och bestämde mig för att göra en. Tack: Portable-WiFi-Analyzer. Jag bestämde mig för att använda en större 2,4”skärm - som följde med en pekskärm och på ett kretskort med stift som skulle vara lättare att ansluta till.
När jag började bygga utforskade jag arrangemang som skulle göra ESP12 -antennen fri från elektroniken. Det enda alternativet var att det skulle vara inuti locket. Jag ville också ha laddarmodulen under dispensern. Frågan var då var man skulle hitta”på -knappen”? Jag ville inte göra hål på baksidan av fodralet. Övre locket skulle vara bäst - men det finns inget utrymme om jag har de två modulerna där.
Detta ledde till tanken att använda pekskärmen som på -knappen. Jag märkte att en av bildskärmskontakterna var märkt "T_IRQ" - det såg uppmuntrande ut. Pekchipet är ett XPT2046. Och ja, till min glädje är att den har ett automatiskt viloläge och drar T_IRQ lågt om panelen rörs. Detta är idealiskt för att byta tryckknappen och kan enkelt anslutas till ESP12 -återställningen.
Jag borde ha nämnt att koden kör flera skanningar efter wifi -nätverk och sedan tar bort strömmen till displayen och sätter ESP12 i djup sömn - som väcks av en återställningsingång.
Så med det här konceptet klart, kopplade jag upp det med en NodeMcu - och det fungerade inte! Så det var lite mer arbete att göra. Jag var också medveten om att jag inte kunde kontrollera sömnströmmen med NodeMcu på grund av inbyggt USB-chip och högt vilande strömspänningsregulator. Jag ville också ha ett system för enkel programmering av ESP12. Detta ledde till att jag gjorde ett ESP12 breakout board/utvecklingssystem som kunde programmeras lika enkelt som NodeMCU, men med hjälp av en FTDI programmerare. På så sätt är regulatorn och USB -kretsen separata. Se: ESP-12E och ESP-12F programmerings- och breakoutkort
Sedan kopplade jag upp det med min nya bräda med en ESP-12F-och det fungerade. Den enda ändringen jag hade gjort var att stänga av spänningsregulatorn på displaymodulen så att allt kördes på 3,3v. Jag började göra mina kodmods, särskilt kod för att sätta displaychipet (ILI9341) i viloläge eftersom detta och pekpanelchipet skulle behöva drivas (i viloläge) när ESP -modulen också är i viloläge. Jag kollade sedan sömnströmmen. Detta var 90uA. Så ett 1000mah batteri skulle hålla i ett år. Bra start.
Sedan tog jag bort spänningsregulatorn på displaymodulen. Det hade räckt att bara ha lyft marknålen. Nu var systemets sömnström 32uA. Jag var fortfarande tvungen att lägga till en 3.3v regulator men visste en med bara 2uA vilande ström. Så nu tittar vi på 3 års batteritid!
Jag ville också montera komponenterna så mycket som möjligt på ett kretskort för att göra ledningarna snyggare. Så vid det här laget gick jag vidare med en PCB -design för enheten. Jag skulle ha velat ansluta direkt till displaymodulens stift. Det här kommer att bli ganska svårt så jag valde att använda hård tråd från kretskortet till displaymodulen.
Jag pysslade lite mer med koden. Jag lade till en sömnavisering - fyllde skärmen med svart och skrev ut ZZZ innan jag somnade. Jag försenade också tändningen av LED -bakgrundsbelysningen tills skärmen hade fyllts. Detta undviker den vita blixten i början av den ursprungliga koden. Jag gjorde liknande mods i slutet och stängde av lysdioderna innan jag satte skärmen i viloläge.
Du kanske undrar hur man mäter uA. Död lätt! Sätt ett 1k -motstånd i serie med den positiva strömkabeln. Korta bort detta med en bygelkabel så att systemet kan köras. Sedan, när den är i viloläge, ta bort bygeln och mäta spänningsfallet över motståndet. Med 1k motstånd betyder 100mv 100uA. Om spänningsfallet är för stort använder jag ett motstånd med lägre värde. Jag har använt denna metod för att mäta enstaka nA med ett 1m -motstånd på andra system med riktigt låga sömnströmmar.
Steg 2: Konstruktion
PCB eller hård tråd?
Enheten jag byggde här använder ett kretskort för att hålla ESP12F- och laddarmodulerna samt spänningsregulatorn och PNP-transistorn och tillhörande kondensatorer och uppdragsmotstånd. Detta är den snyggaste vägen, men kräver PCB -etsning och SMD -lödutrustning. Systemet kan dock göras genom att koppla modulerna direkt och sätta spänningsregulatorn och PNP -transistorn på en kartongbit - som var fallet i det tidigare TicTac -projektet (tidigare länkat).
Om du väljer att använda PCB -alternativet kanske du också vill göra mitt ESP12 -programmeringskort, särskilt om du planerar att göra fler projekt med ESP12 -korten.
Reservdelar:
- 49g TicTac -låda
- ESP-12F (eller ESP-12E) Observera att ESP-12F har bättre räckvidd, annars samma som ESP-12E
- 2,4”SPI TFT -display med ILI9341 -drivrutin och pek t.ex. TJCTW24024-SPI
- Laddningsmodul - se bild
- 2 mm stiftremsa (valfritt men värt att använda)
- PNP -transistor i SOT23 -format. Jag använde BCW30 men alla andra med mer än 100ma kapacitet och DC -förstärkning> 200 borde vara OK.
- 3v3 250ma (min) regulator i SOT23 -format. Jag använde Microchip MCP1703T-33002E/CB. Andra kommer att arbeta men kontrollera deras vilande ström. (föreslår mindre än 30uA).
- Motstånd (alla 0805 storlek)
- 10k 4off
- 3k3 1 av
- Kondensatorer (alla 0805 -storlekar)
- 2n2 2 av
- 0.1u 1 av
- PCB som WiFiAnalyserArtwork.docx -fil bifogad.
- Encells LiPo -batteri. Kapacitet 400-1000mahr - som passar i fodralet. 400mahr är tillräckligt stort.
För alternativet icke-kretskort används blyhaltiga ekvivalenter, motstånd ¼W och högre är fina och kondensatorer med arbetsspänning på 5v eller högre.
När du gör kretskortet - borra hålen med 0,8 mm. Om du har ett skarpt öga - ESP12 2 mm stiftremshål kan vara 0,7 mm för bättre stöd.
Komponentplacering:
Vid montering av kretskortet gör motstånden och kondensatorerna först, sedan regulatorn och PNP-transistorn, följt av laddarmodulen och stiftremsan för ESP12. Jag lödde inte ESP12 på plats eftersom den är tillräckligt fast pressad på stiftremsan och det är lättare att omprogrammera av brädet. Du kommer att märka att kretskortet har kontakter för TX, RX, GPIO 0, Reset och jord om du någonsin vill omprogrammera in situ. Observera att en knapp kommer att krävas för att dra GPIO lågt. Återställningen kan dras ned genom att trycka på displayen. En knapp kan användas men bara om kabeln till displayen T_IRQ är bortkopplad.
Steg 3: Kabeldragning
Innan du ansluter displayen till kretskortet, ta bort regulatorn i1 och lägg en klick löd på J1 som sedan ersätter detta. Efteråt ska det se ut så här:
Ta sedan bort stiftremsan eller klipp stiften korta. Det bästa sättet att ta bort stiftremsan är en stift i taget. Applicera ett lödkolv på ena sidan medan du drar tappen med tång på den andra.
Nu kan ledningarna börja, med att börja ansluta bandkabeln till displayen. Klipp runt en 7-8 cm lång PC-bandkabel och välj 10 sätt. Trimma 9 av vägarna tillbaka 10 mm och lämna en längre i en kant för T-IRQ-stiftet. Resten kan sedan spridas ut där de kommer att lödas och trimmas lite mer vid behov.
Jag placerade och lödde en ledning i taget som började med VCC.
Placera kretskortet där det måste vara i förhållande till displayen. Sedan, en i taget, trimma trådarna till 5 mm eller så längre än nödvändigt och ta bort 2 mm isolering, tenn änden och lödet på plats. Kabeldragningen går enligt följande (räkna stiftnummer från VCC):
Visa | PCB | Kommentar |
1 | 1 | VCC |
2 | 8 | GND |
3 | 9 | CS |
4 | 5 | ÅTERSTÄLLA |
5 | 7 | D/C |
6 | 2 | SDI (MOSI) |
7 | 4 | SCK |
8 | 10 | LED |
9 | 3 | SDO (MISO) |
10 | 6 | T_IRQ |
Nu återstår bara att ansluta batteriet och programmera ESP12. Anslut batteriet om du programmerar in situ. Om du programmerar från kortet ansluter du batteriet efteråt.
Steg 4: Programmering
Ladda ner koden ESP8266WiFiAnalMod.ino -bifogad fil, skapa en mapp som heter ‘ESP8266WiFiAnalMod’ i din Arduino sketches -mapp och flytta filen till denna.
Starta Arduino IDE (ladda ner och installera från Arduino.cc om det behövs) och lägg till ESP -kortets detaljer om du inte har dem (se: Sparkfun).
Ladda koden (Arkiv> Skissbok> … ESP8266WiFiAnalMod).
Ställ sedan in programmeringsdetaljerna (Verktyg):
Välj kort: Generisk ESP8266 -modul
Se nedan för resten av inställningarna. Välj Återställ metod: “nodemcu” om du använder en programmerare med den automatiska enheten för återställningen och GPIO0. Annars ställs du in på “ck” om du programmerar på plats eller genom direkt anslutning till en USB till serieomvandlare.
Portnumret kommer sannolikt att vara annorlunda.
Om du vill programmera in situ måste du löda kablar till en switch för att dra GPIO 0 lågt och ansluta till Tx och Rx-se nedan:
Ett enklare alternativ är att använda ett programmeringskort: ESP-12E och ESP-12F Programming and Breakout Board
Om du programmerar in-situ, anslut enligt nedan. Observera om displayen är ansluten Reset kan aktiveras av pekskärmen, annars behövs en omkopplare från Reset till GND. Ström behövs till kortet, bäst genom att applicera 3,7v på OUT+ och OUT-stiften. Om du använder ett batteri måste laddaren återställas genom att kort ansluta en USB -kabel.
Om du ställer in programmeringsläget manuellt drar du nollställningen låg (pekskärm), drar GPIO 0 lågt och medan låg släpper du återställningen. Klicka nu på nedladdningsknappen. Programmeringen bör fortsätta.
Om du använder programmerings- och brytkortet ska du bara ansluta FTDI USB -seriekonverteraren. Anslut 3,3v ström till programmeringskortet och klicka på ladda ner.
Steg 5: Slutmontering och testning
Nu är en bra tid för ett preliminärt test. Om ESP12 var programmerad på plats borde det fungera - tryck bara lätt på skärmen så startar den. Om den är programmerad från enheten - sätt i ESP12 och dra upp batteriet så ska det fungera.
Jag kopplade ur batteriet medan jag gick igenom den slutliga monteringen dels för bekvämlighet och dels för att undvika oavsiktlig kortslutning.
Displayen klibbar snyggt mellan locket och botten av fodralet. Den upphöjda delen i basen håller skärmen snyggt mot lådsidan.
Kretskortet måste fästas på displaykortet för att både passa in i locket och presentera USB -laddningsuttaget. När det nödvändiga förhållandet mellan brädpositionerna syns lägger du på dubbelsidig tejp (1 mm tjock typ) på båda brädorna. Detta ger ett 2 mm spelrum som bör undvika elektrisk kontakt. Jag placerade lite isoleringstejp som täckte displayelektroniken som en försiktighetsåtgärd:
Därefter måste vi ta cirka 2 mm från topplocket. Jag gjorde den här snyggt anpassad till skärmen med extra bitar utskurna för pekskärmens bandkabel och skärmens plastfäste. Se nedan:
Slutligen måste vi placera batteriet och använda detta för att hålla skärmen mot lådans sida. Jag använde en gammal bit polystyrenskum och klippte och slipade den till önskad tjocklek. Jag fastnade detta på skärmens kretskort med tunn dubbelsidig tejp och använde ett par mindre tejpbitar för att stoppa batteriet att glida omkring.
När du har anslutit allt och upptäcker att ingenting händer, oroa dig inte (ännu). Batteriskyddskretsen på laddarmodulen måste återställas. Detta görs genom att ansluta den via en mikro -USB -kabel till en 5V -strömförsörjning. Några sekunder är tillräckligt länge.
Och nu har du en användbar enhet som visar kraften i ESP8266 -systemen, och i mitt fall ledde jag till att byta min WiFi -kanal eftersom den upptäckte 5 andra på samma!
Jag hoppas att du gillar det här underbara projektet.
Mikrofon
Rekommenderad:
CRAZY L.O.L SPECTRUM ANALYZER: 6 steg (med bilder)
CRAZY L.O.L SPECTRUM ANALYZER: Idag skulle jag vilja dela hur man gör en ljudspektrumanalysator - 36 band genom att kombinera 4 LoL Shields tillsammans. Detta galna projekt använder ett FFT -bibliotek för att analysera en stereoljudssignal, konvertera den till frekvensband och visa amplituden för dessa frekvenser
Solar Particle Analyzer: 5 steg (med bilder)
Solar Particle Analyzer: Jag var nyligen på en konferens i Fairbanks, Alaska där ett lokalt kolföretag (Usibelli Coal Mine) sponsrade innovatörer för att tänka på sätt att förbättra luftkvaliteten. Uppenbarligen ironiskt men också riktigt bra. Det verkade inte vara forskningen
Batteridriven dörrsensor med integrering av hemmautomation, WiFi och ESP-NU: 5 steg (med bilder)
Batteridriven dörrsensor med hemautomatiseringsintegration, WiFi och ESP-NU: I denna instruerbara visar jag dig hur jag gjorde en batteridriven dörrsensor med integrering av hemautomation. Jag har sett några andra fina sensorer och larmsystem, men jag ville göra en själv. Mina mål: En sensor som upptäcker och rapporterar en doo
Komma igång med Esp 8266 Esp-01 Med Arduino IDE - Installera Esp -kort i Arduino Ide och Programmering Esp: 4 steg
Komma igång med Esp 8266 Esp-01 Med Arduino IDE | Installera Esp-kort i Arduino Ide och programmera Esp: I dessa instruktioner lär vi oss hur man installerar esp8266-kort i Arduino IDE och hur man programmerar esp-01 och laddar upp kod i den. Eftersom esp-kort är så populära så jag tänkte rätta till en instruktionsför detta och de flesta människor har problem
RGB Matrix + Spectrum Analyzer: 10 steg (med bilder)
RGB Matrix + Spectrum Analyzer: Love LEDs? Jag också! Det är därför som jag i denna instruktionsfilm visar dig hur du gör en fantastisk RGB LED Matrix, som enkelt kan förvandlas till en Spectrum Analyzer med ett klick på en knapp. , om du tror att denna instruktör har förtjänat det, vänligen rösta