Cuprins:

Voice Home Control V1.0: 12 pași
Voice Home Control V1.0: 12 pași

Video: Voice Home Control V1.0: 12 pași

Video: Voice Home Control V1.0: 12 pași
Video: Voice | Active and Passive | I am doing the work | English Grammar 2024, Iulie
Anonim
Voice Home Control V1.0
Voice Home Control V1.0

Acum câteva luni am achiziționat un asistent personal, în special un Echo Dot dotat cu Alexa. Am ales-o pentru că am descoperit că într-un mod simplu pot adăuga pluginuri pentru a controla dispozitivul oprit și aprins, cum ar fi luminile, ventilatoarele etc. În magazinele online am văzut un număr mare de dispozitive care îndeplinesc această funcție și atunci m-am gândit … de ce să nu-ți faci propria ta?

Având în vedere această idee, am început să proiectez o placă cu conexiune Wi-Fi și 4 relee de ieșire. Mai jos voi descrie proiectarea pas cu pas din diagrama schematică, proiectarea PCB, programarea și testarea care culminează cu o operare reușită.

CARACTERISTICI

  1. Conexiune la rețea Wifi
  2. Tensiune de intrare 100 / 240VAC
  3. 4 relee de ieșire (maxim 10A)
  4. LED-ul indicatorului de alimentare
  5. Indicator de putere cu 4 LED-uri al releului
  6. Antet de programare
  7. Butonul de resetare

Pasul 1: Componente și instrumente

Componente și instrumente
Componente și instrumente
Componente și instrumente
Componente și instrumente
Componente și instrumente
Componente și instrumente

Componente

  1. 3 rezistențe 0805 de 1k ohm
  2. 5 rezistențe 0805 de 220 ohmi
  3. 2 rezistoare 0805 de 10k ohmi
  4. 1 Rezistor 0805 de 4,7k ohmi
  5. 2 condensatoare 0805 de 0,1uf
  6. 2 condensatoare 0805 din 10uf
  7. 4 diode ES1B sau similare ale pachetului 100v 1A SMA
  8. 1 Regulator de tensiune AMS1117-3.3
  9. 4 LED-uri verzi 0805
  10. 1 LED roșu 0805
  11. 4 tranzistoare NPN MMBT2222A sau pachet similar SOT23
  12. 1 modul ESP 12-E Wi-Fi
  13. 1 sursă de alimentare HLK-PM01
  14. 1 Comutați SMD tactil
  15. Antet 1 pin cu 6 poziții
  16. 5 Bloc terminal cu 2 poziții de pas de 5,08 mm
  17. 4 relee de 5VDC

Instrumente

  1. Stație de lipit sau cautină de 25-30 wați
  2. Lipire de plumb
  3. Flux
  4. Pensetă
  5. Fitil dezlipitor

Pasul 2: Alimentator și regulator de tensiune

Alimentator și regulator de tensiune
Alimentator și regulator de tensiune
Alimentator și regulator de tensiune
Alimentator și regulator de tensiune

Pentru funcționarea circuitului sunt necesare 2 tensiuni, una de 3,3 VDC pentru secțiunea de control și alta de 5 VDC pentru secțiunea de alimentare, deoarece ideea este că placa are tot ce este necesar pentru funcționare, utilizați o sursă comutată care furnizează direct 5v și este alimentat de tensiunea de linie este esențial, acest lucru ne scutește de necesitatea unui adaptor de alimentare extern și trebuie doar să adăugăm un regulator liniar de 3,3v (LDO).

Având în vedere cele de mai sus, ca sursă am selectat Hi-Link HLK-PM01 care are o tensiune de intrare de 100-240VAC la 0,1A și ieșire de 5VDC la 0,6A, urmată de aceasta, am plasat AMS1117-3.3 pe scară largă regulator care este foarte comun și, prin urmare, ușor de accesat.

Consultând fișa tehnică a AMS1117, veți găsi valorile pentru condensatoarele de intrare și ieșire, acestea fiind 0,1uf și 10uf pentru intrare și o altă secțiune egală pentru ieșire. În cele din urmă, am plasat un LED indicator de putere cu rezistența sa limitativă respectivă, care se calculează ușor aplicând legea ohmului:

R = 5V-Vled / Iled

R = 5 - 2 / 0,015 = 200

Curentul de 15mA din led este astfel încât să nu strălucească atât de puternic și să-și prelungească durata de viață.

Pasul 3: Controlați secțiunea

Controlează secțiunea
Controlează secțiunea
Controlează secțiunea
Controlează secțiunea

Pentru această secțiune am selectat un modul Wi-Fi ESP-12-E deoarece este mic, ieftin și foarte simplu de utilizat cu Arduino IDE. Deoarece modulul are tot ce este necesar pentru funcționarea sa, hardware-ul extern necesar pentru ca ESP să funcționeze este minim.

Ceva de reținut este că unele GPIO ale modulului nu sunt recomandate pentru utilizare, iar altele au funcții specifice, în continuare voi arăta un tabel despre pini și ce funcții îndeplinesc:

GPIO --------- Intrare ---------------- Ieșire ---------------------- --- Note

GPIO16 ------ fără întrerupere ------ fără suport PWM sau I2C --- Înalt la pornire folosit pentru a se trezi din somn profund

GPIO5 ------- OK ------------------- OK --------------- adesea folosit ca SCL (I2C)

GPIO4 ------- OK ------------------- OK --------------- adesea folosit ca SDA (I2C)

GPIO0 ------- tras în sus ---------- OK --------------- Low în modul FLASH, boot-ul eșuează dacă este tras Low

GPIO2 ------- tras în sus ---------- OK --------------- bootul eșuează dacă este tras Low

GPIO14 ----- OK ------------------- OK -------------- SPI (SCLK)

GPIO12 ----- OK ------------------- OK -------------- SPI (MISO)

GPIO13 ----- OK ------------------- OK -------------- SPI (MOSI)

GPIO15 ----- tras la GND ---- OK -------------- SPI (CS) Boot nu reușește dacă este tras High

GPIO3 ------- OK ------------------- RX pin ---------- Înalt la pornire

GPIO1 ------- PIN PIN -------------- OK --------------- Înalt la pornire, pornirea eșuează dacă este scăzută

ADC0 -------- Intrare analogică ----- X

Informațiile de mai sus au fost găsite la următorul link:

Pe baza datelor de mai sus, am ales pinii 5, 4, 12 și 14 ca ieșiri digitale care vor activa fiecare dintre relee, acestea fiind cele mai stabile și mai sigure pentru activare.

În cele din urmă, am adăugat ceea ce este necesar pentru programare, un buton de resetare pe acel pin, un rezistor conectat la alimentare pe pinul de activare, o rezistență la masă pe GPIO15, un antet care este utilizat pentru a conecta un FTDI la TX, pinii RX și conectați la masă GPIO0 pentru a pune modulul în modul Flash.

Pasul 4: Power Seccion

Power Seccion
Power Seccion
Power Seccion
Power Seccion

Această secțiune se va ocupa de utilizarea ieșirii 3.3VDC pe porturile GPIO pentru a activa un releu. Releele au nevoie de mai multă putere decât cea furnizată de un pin ESP, deci este necesar un tranzistor pentru a-l activa, în acest caz folosim MMBT2222A.

Trebuie să ținem cont de curentul care va trece prin colector (Ic), cu aceste date putem calcula rezistența care va fi plasată la baza tranzistorului. În acest caz, Ic va fi suma curentului care trece prin bobina releului și curentul LED-ului care indică aprinderea:

Ic = Irelay + Iled

Ic = 75mA + 15mA = 90mA

Deoarece avem curentul Ic putem calcula rezistența de bază a tranzistorului (Rb), dar avem nevoie de o pereche de date suplimentară, câștigul tranzistorului (hFE), care în cazul MMBT2222A are o valoare de 40 (câștigul este adimensional, prin urmare nu are unități de măsură) și potențialul de barieră (VL) care în tranzistoarele de siliciu are o valoare de 0,7v. Cu cele de mai sus putem continua să calculăm Rb cu următoarea formulă:

Rb = [(VGPIO - VL) (hFE)] / Ic

Rb = [(3,3 - 0,7) (40)] / 0,09 = 1155,55 ohmi

Pe baza calculului de mai sus, am ales o rezistență de 1 kohm.

În cele din urmă, o diodă a fost plasată paralel cu bobina releului cu catodul orientat către Vcc. Dioda ES1B previne inversarea FEM (FEM sau Forța electromotivă inversă este tensiunea care apare atunci când curentul printr-o bobină variază)

Pasul 5: Proiectarea PCB: Organizarea schematică și a componentelor

Proiectare PCB: Organizare schematică și componentă
Proiectare PCB: Organizare schematică și componentă
Proiectare PCB: Organizare schematică și componentă
Proiectare PCB: Organizare schematică și componentă

Pentru elaborarea schemei și a cardului am folosit software-ul Eagle.

Începe prin realizarea schemei PCB-ului, trebuie să surprindă fiecare parte a circuitului explicată anterior, începe prin plasarea simbolului fiecărei componente care o integrează, apoi se fac conexiunile dintre fiecare componentă, trebuie avut grijă să nu se conecteze în mod eronat, această eroare se va reflecta în proiectarea circuitului, provocând o defecțiune. În cele din urmă, valorile fiecărei componente vor fi indicate în conformitate cu ceea ce a fost calculat în pașii anteriori.

Acum putem continua cu proiectarea cardului, primul lucru pe care trebuie să-l facem este să organizăm componentele astfel încât acestea să ocupe cât mai puțin spațiu posibil, ceea ce va reduce costul de fabricație. Personal, îmi place să organizez componentele în așa fel încât să fie apreciat un design simetric, această practică mă ajută la rutare, o face mai ușoară și mai elegantă.

Este important să urmați o rețea atunci când găzduiți componentele și traseul, în cazul meu am folosit o rețea de 25mil, conform regulii IPC, componentele trebuie să aibă o separare între ele, în general, această separare este și 25mil.

Pasul 6: Proiectare PCB: muchii și găuri de montare

Design PCB: muchii și găuri de montare
Design PCB: muchii și găuri de montare
Design PCB: muchii și găuri de montare
Design PCB: muchii și găuri de montare

Având toate componentele la locul lor, putem delimita PCB-ul, folosind stratul "20 Dimensiuni", perimetrul plăcii este desenat, asigurându-ne că toate componentele sunt în interiorul acestuia.

Ca considerații speciale, merită menționat faptul că modulul Wi-Fi are o antenă integrată în PCB, pentru a evita atenuarea recepției semnalului, am făcut o tăietură chiar sub zona în care se află antena.

Pe de altă parte, vom lucra cu curent alternativ, acesta are o frecvență de 50 până la 60Hz în funcție de țara în care vă aflați, această frecvență poate genera zgomot în semnale digitale, deci este bine să izolați secțiunile care se ocupă curent alternativ din partea digitală, acest lucru se face prin efectuarea de tăieturi în card în apropierea zonelor prin care va circula curentul alternativ. Cele de mai sus ajută, de asemenea, să evite orice scurtcircuit pe PCB.

În cele din urmă, găurile de montare sunt plasate în cele 4 colțuri ale PCB-ului pentru ca, dacă doriți să-l așezați într-un dulap, amplasarea să fie ușoară și rapidă.

Pasul 7: Proiectare PCB: Rutare de top

Design PCB: rutare de top
Design PCB: rutare de top

Începem partea distractivă, rutare, este de a face conexiunile între componente urmând anumite considerații, cum ar fi lățimea pistei și unghiurile de rotație. În general, fac mai întâi conexiunile care nu sunt alimentare și împământare, deoarece acestea din urmă le fac cu planuri.

Planurile de sol și de putere paralele sunt extrem de utile pentru atenuarea zgomotului la sursa de alimentare datorită impedanței sale capacitive și ar trebui să fie răspândite pe cea mai largă zonă posibilă a plăcii. De asemenea, ne ajută să reducem radiațiile electromagnetice (EMI).

Pentru piste trebuie să fim atenți să nu generăm viraje cu unghiuri de 90 °, nici prea largi, nici prea subțiri. Online puteți găsi instrumente care ne ajută să calculăm lățimea pistelor luând în considerare temperatura, curentul care va circula și densitatea cuprului pe PCB: https://www.4pcb.com/trace-width-calculator. html

Pasul 8: Proiectarea PCB-ului: rutare inferioară

Design PCB: rutare inferioară
Design PCB: rutare inferioară
Design PCB: rutare inferioară
Design PCB: rutare inferioară
Design PCB: rutare inferioară
Design PCB: rutare inferioară

Pe fața de jos realizăm conexiunile lipsă și în spațiul în exces punem sol și planuri de putere, putem observa că au fost amplasate mai multe vii care conectează planurile de sol ale ambelor fețe, această practică este de a evita buclele de masă.

Buclele la sol sunt 2 puncte care teoretic ar trebui să fie același potențial, dar nu sunt din cauza rezistenței materialului conductiv.

Urmele de la contactele releului la terminale au fost, de asemenea, expuse, pentru a fi întărite cu lipire și pentru a rezista la o sarcină de curent mai mare, fără supraîncălzire și ardere.

Pasul 9: fișiere Gerber și comandarea PCB-urilor

Gerber Files și comandarea PCB-urilor
Gerber Files și comandarea PCB-urilor
Gerber Files și comandarea PCB-urilor
Gerber Files și comandarea PCB-urilor
Gerber Files și comandarea PCB-urilor
Gerber Files și comandarea PCB-urilor
Gerber Files și comandarea PCB-urilor
Gerber Files și comandarea PCB-urilor

Fișierele Gerber sunt utilizate de industria plăcilor cu circuite imprimate pentru fabricarea PCB-urilor, conțin toate informațiile necesare fabricării lor, cum ar fi straturile de cupru, masca de lipit, serigrafia etc.

Exportarea fișierelor Gerber din Eagle este foarte simplă folosind opțiunea „Generați date CAM”, procesorul CAM generează un fișier.zip care conține 10 fișiere corespunzătoare următoarelor straturi PCB:

  1. Cupru inferior
  2. Serigrafie de jos
  3. Lipire de lipit de jos
  4. Soldermask de jos
  5. Strat de moară
  6. Cupru de top
  7. Silkscreen de sus
  8. Pasta de lipit de sus
  9. Top Soldermask
  10. Drill File

Acum este momentul să transformăm fișierele noastre Gerber într-un PCB real. Încărcați fișierele mele Gerber în JLCPCB pentru a produce PCB-ul meu. Serviciul lor este destul de rapid. Am primit PCB-ul în Mexic în 10 zile.

Pasul 10: Asamblarea PCB-ului

Asamblarea PCB-ului
Asamblarea PCB-ului
Asamblarea PCB-ului
Asamblarea PCB-ului
Asamblarea PCB-ului
Asamblarea PCB-ului

Acum, când avem PCB-urile, suntem pregătiți pentru asamblarea plăcii, pentru aceasta vom avea nevoie de stația de lipit, de lipit, de flux, de pensete și de plasă la desoldat.

Vom începe prin lipirea tuturor rezistențelor în locurile lor respective, așezăm o cantitate mică de lipire pe unul dintre cele două tampoane, lipim terminalul rezistenței și procedăm la lipirea terminalului rămas, vom repeta acest lucru în fiecare a rezistoarelor.

În același mod, vom continua cu condensatoarele și LED-urile, trebuie să fim atenți cu acestea din urmă, deoarece acestea au un mic semn verde care indică catodul.

Vom continua să lipim diodele, tranzistoarele, regulatorul de tensiune și butonul. Respectă semnele de polaritate ale diodelor pe care le afișează serigrafia, de asemenea, aveți grijă când lipiți tranzistoarele, încălzindu-le prea mult le poate deteriora.

Acum vom plasa modulul Wi-Fi, mai întâi vom lipi un pin având grijă să fie perfect aliniat, realizând acest lucru, vom lipi toți pinii rămași.

Rămâne doar să sudăm toate componentele prin gaură, acestea sunt cele mai simple pentru a avea o dimensiune mai mare, doar asigurați-vă că faceți o sudură curată, care are un aspect strălucitor.

Ca un pas suplimentar, vom întări pistele expuse ale releelor cu tablă, așa cum am menționat anterior, acest lucru va ajuta pista să reziste la mai mult curent fără a arde.

Pasul 11: Software

Software
Software

Pentru programare am instalat biblioteca fauxmoesp Arduino, cu această bibliotecă puteți emula luminile Phillips Hue, deși puteți controla și nivelul de luminozitate, această placă va funcționa doar ca un comutator de pornire / oprire.

Vă las linkul pentru a putea descărca și instala biblioteca:

Folosiți un exemplu de cod din această bibliotecă și efectuați modificările necesare pentru funcționarea dispozitivului, vă las codul Arduino pe care îl puteți descărca și testa.

Pasul 12: Concluzie

Odată ce dispozitivul este asamblat și programat, vom continua să testăm funcționalitatea acestuia, trebuie doar să plasăm un cablu de alimentare în borna superioară și să-l conectăm la o priză care furnizează 100-240VAC, LED-ul roșu (ON) se aprinde, va căuta rețeaua de internet și se va conecta.

intrăm în aplicația noastră Alexa și vă cerem să căutați dispozitive noi, acest proces va dura aproximativ 45 de secunde. Dacă totul este corect, ar trebui să vedeți 4 dispozitive noi, unul pentru fiecare releu pe placă.

Acum rămâne doar să îi spui lui Alexa să pornească și să oprească dispozitivele, acest test este afișat în videoclip.

Gata!!! Acum puteți porni și opri cu asistentul personal dispozitivul dorit.

Recomandat: