Cuprins:

ARDUINO PWM SOLAR CHARGE CONTROLLER (V 2.02): 25 de pași (cu imagini)
ARDUINO PWM SOLAR CHARGE CONTROLLER (V 2.02): 25 de pași (cu imagini)

Video: ARDUINO PWM SOLAR CHARGE CONTROLLER (V 2.02): 25 de pași (cu imagini)

Video: ARDUINO PWM SOLAR CHARGE CONTROLLER (V 2.02): 25 de pași (cu imagini)
Video: PWM85 Improvements - Arduino PWM Solar Charge Controller 2024, Iulie
Anonim
Image
Image
CONTROLOR DE ÎNCĂRCARE SOLARĂ ARDUINO PWM (V 2.02)
CONTROLOR DE ÎNCĂRCARE SOLARĂ ARDUINO PWM (V 2.02)
CONTROLOR DE ÎNCĂRCARE SOLARĂ ARDUINO PWM (V 2.02)
CONTROLOR DE ÎNCĂRCARE SOLARĂ ARDUINO PWM (V 2.02)

Dacă intenționați să instalați un sistem solar off-grid cu o bancă de baterii, veți avea nevoie de un controler de încărcare solar. Este un dispozitiv care este plasat între panoul solar și banca bateriilor pentru a controla cantitatea de energie electrică produsă de panourile solare care intră în baterii. Funcția principală este să vă asigurați că bateria este corect încărcată și protejată de supraîncărcare. Pe măsură ce crește tensiunea de intrare de la panoul solar, controlerul de încărcare reglează încărcarea bateriilor prevenind orice supraîncărcare și deconectează sarcina atunci când bateria este descărcată.

Puteți parcurge proiectele mele Solar pe site-ul meu web: www.opengreenenergy.com și canalul YouTube: Open Green Energy

Tipuri de controlere solare de încărcare

În prezent, există două tipuri de regulatoare de încărcare utilizate în mod obișnuit în sistemele fotovoltaice:

1. Controler de modulare a lățimii pulsului (PWM)

2. Controler de urmărire a punctelor de putere maximă (MPPT)

În acest instructabil, vă voi explica despre controlerul de încărcare solară PWM. Am postat câteva articole despre controlerele de încărcare PWM și mai devreme. Versiunea anterioară a controlerelor mele de încărcare solară sunt destul de populare pe internet și utile pentru oamenii din întreaga lume.

Luând în considerare comentariile și întrebările din versiunile mele anterioare, mi-am modificat controlerul de încărcare V2.0 PWM existent pentru a crea noua versiune 2.02.

Următoarele sunt modificările din V2.02 w.r.t V2.0:

1. Regulatorul de tensiune liniară cu eficiență redusă este înlocuit cu convertorul buck MP2307 pentru sursa de alimentare de 5V.

2. Un senzor de curent suplimentar pentru a monitoriza curentul care vine de la panoul solar.

3. MOSFET-IRF9540 este înlocuit de IRF4905 pentru performanțe mai bune.

4. Senzorul de temperatură LM35 de la bord este înlocuit cu o sondă DS18B20 pentru monitorizarea precisă a temperaturii bateriei.

5. Port USB pentru încărcarea dispozitivelor inteligente.

6. Utilizarea siguranței unice în loc de două

7. Un LED suplimentar pentru a indica starea energiei solare.

8. Implementarea algoritmului de încărcare în 3 etape.

9. Implementarea controlerului PID în algoritmul de încărcare

10. Am realizat un PCB personalizat pentru proiect

Specificație

1. Controler de încărcare, precum și contor de energie

2. Selectarea automată a tensiunii bateriei (6V / 12V)

3. Algoritm de încărcare PWM cu setpoint de încărcare automată în funcție de tensiunea bateriei

4. Indicație LED pentru starea de încărcare și starea de încărcare

5. Afișaj LCD de 20x4 caractere pentru afișarea tensiunilor, curentului, puterii, energiei și temperaturii.

6. Protecția împotriva trăsnetului

7. Protecție împotriva curentului invers

8. Circuit scurt și protecție la suprasarcină

9. Compensarea temperaturii pentru încărcare

10. Port USB pentru încărcarea gadgeturilor

Provizii

Puteți comanda PCB V2.02 de la PCBWay

1. Arduino Nano (Amazon / Banggood)

2. P-MOSFET - IRF4905 (Amazon / Banggood)

3. Diodă de putere -MBR2045 (Amazon / Aliexpress)

4. Convertor Buck-MP2307 (Amazon / Banggood)

5. Senzor de temperatură - DS18B20 (Amazon / Banggood)

6. Senzor de curent - ACS712 (Amazon / Banggood)

7. Diodă TVS- P6KE36CA (Amazon / Aliexpress)

8. Tranzistoare - 2N3904 (Amazon / Banggood)

9. Rezistoare (100k x 2, 20k x 2, 10k x 2, 1k x 2, 330ohm x 7) (Amazon / Banggood)

10. Condensatoare ceramice (0,1 uF x 2) (Amazon / Banggood)

11. LCD I2C 20x4 (Amazon / Banggood)

12. LED RGB (Amazon / Banggood)

13. LED Bi-Color (Amazon)

15. Jumper Wires / Wires (Amazon / Banggood)

16. Pinii de cap (Amazon / Banggood)

17. Chiuvete de căldură (Amazon / Aliexpress)

18. Suport siguranțe și siguranțe (Amazon)

19. Buton (Amazon / Banggood)

22. Terminalele cu șurub 1x6 pin (Aliexpress)

23. Distanțe PCB (Banggood)

24. Priză USB (Amazon / Banggood)

Instrumente:

1. Fier de lipit (Amazon)

2. Pompa de dezlipire (Amazon)

2. Cutter și decapant de sârmă (Amazon)

3. Șurub (Amazon)

Pasul 1: Principiul de lucru al unui controler de încărcare PWM

Principiul de lucru al unui controler de încărcare PWM
Principiul de lucru al unui controler de încărcare PWM

PWM înseamnă Pulse Width Modulation, care reprezintă metoda pe care o folosește pentru a regla încărcarea. Funcția sa este de a reduce tensiunea panoului solar până aproape de cea a bateriei pentru a se asigura că bateria este încărcată corect. Cu alte cuvinte, acestea blochează tensiunea panoului solar la tensiunea bateriei trăgând panoul solar Vmp în jos la tensiunea sistemului bateriei, fără modificări ale curentului.

Folosește un comutator electronic (MOSFET) pentru a conecta și deconecta panoul solar cu bateria. Prin comutarea MOSFET la frecvență înaltă cu diferite lățimi de impuls, se poate menține o tensiune constantă. Controlerul PWM se auto-reglează variind lățimile (lungimile) și frecvența impulsurilor trimise bateriei.

Când lățimea este de 100%, MOSFET-ul este pornit complet, permițând panoului solar să încarce bateria în bloc. Când lățimea este de 0%, tranzistorul este în poziția OPRIT deschis circuitând panoul solar, împiedicând curentul să curgă către baterie atunci când bateria este complet încărcată.

Pasul 2: Cum funcționează circuitul?

Cum funcționează circuitul?
Cum funcționează circuitul?
Cum funcționează circuitul?
Cum funcționează circuitul?

Inima controlerului de încărcare este o placă Arduino Nano. Arduino detectează tensiunea panoului solar și a bateriei utilizând două circuite de divizare a tensiunii. În funcție de aceste niveluri de tensiune, decide modul de încărcare a bateriei și controlul încărcării.

Notă: În imaginea de mai sus, există o eroare tipografică la semnalul de alimentare și control. Linia roșie este pentru alimentare și linia galbenă este pentru semnalul de control.

Întreaga schemă este împărțită în următoarele circuite:

1. Circuitul de distribuție a puterii:

Puterea acumulatorului (B + & B-) este redusă la 5V de către convertorul Buck X1 (MP2307). Ieșirea din convertorul Buck este distribuită către

1. Placa Arduino

2. LED-uri pentru indicare

3. Afișaj LCD

4. Port USB pentru încărcarea gadgeturilor.

2. Senzori de intrare:

Tensiunea panoului solar și a bateriei este detectată prin utilizarea a două circuite divizoare de tensiune formate din rezistențe R1-R2 și R3- R4. C1 și C2 sunt condensatori de filtrare pentru a filtra semnalele de zgomot nedorite. Ieșirea din divizoarele de tensiune este conectată la pinii analogici Arduino A0 și respectiv A1.

Panoul solar și curenții de încărcare sunt detectați prin utilizarea a două module ACS712. Ieșirea de la senzorii de curent este conectată la pinul analogic Arduino A3 și respectiv A2.

Temperatura bateriei este măsurată utilizând un senzor de temperatură DS18B20. R16 (4.7K) este un rezistor de tracțiune. Ieșirea senzorului de temperatură este conectată la pinul Arduino Digital D12.

3. Circuite de control:

Circuitele de control sunt formate practic din două p-MOSFET-uri Q1 și Q2. MOSFET Q1 este utilizat pentru a trimite impulsul de încărcare la baterie, iar MOSFET Q2 este utilizat pentru a conduce sarcina. Două circuite driver MOSFET sunt formate din două tranzistoare T1 și T2 cu rezistențe de tracțiune R6 și R8. Curentul de bază al tranzistoarelor este controlat de rezistențele R5 și R7.

4. Circuite de protecție:

Supratensiunea de intrare din partea panoului solar este protejată prin utilizarea unei diode TVS D1. Curentul invers de la baterie la panoul solar este protejat de o diodă Schottky D2. Supracurentul este protejat de o siguranță F1.

5. Indicatie LED:

LED1, LED2 și LED3 sunt folosite pentru a indica starea solară, respectiv a bateriei și respectiv a sarcinii. Rezistențele R9 până la R15 sunt rezistențe care limitează curentul.

7. Afișaj LCD:

Un afișaj LCD I2C este utilizat pentru a afișa diverși parametri.

8. Încărcare USB:

Priza USB este conectată la ieșire de 5V de la convertorul Buck.

9. Resetare sistem:

SW1 este un buton pentru a reseta Arduino.

Puteți descărca schema în format PDF atașat mai jos.

Pasul 3: Funcțiile principale ale controlerului de încărcare solară

Controlerul de încărcare este proiectat având grijă de următoarele puncte.

1. Prevenirea supraîncărcării bateriei: pentru a limita energia furnizată bateriei de panoul solar atunci când bateria se încarcă complet. Acest lucru este implementat în charge_cycle () al codului meu.

2. Prevenirea supra-descărcării bateriei: pentru a deconecta bateria de sarcinile electrice atunci când bateria atinge o stare de încărcare scăzută. Acest lucru este implementat în load_control () al codului meu.

3. Furnizați funcții de control al încărcării: pentru a conecta și deconecta automat o sarcină electrică la un moment specificat. Sarcina va PORNI la apusul soarelui și OPRIT la răsărit. Acest lucru este implementat în load_control () al codului meu. 4. Monitorizarea puterii și energiei: pentru a monitoriza puterea și energia de încărcare și a le afișa.

5. Protejați-vă de starea anormală: Pentru a proteja circuitul de diferite situații anormale, cum ar fi fulgerul, supratensiunea, supracurentul și scurtcircuitul etc.

6. Indicarea și afișarea: Pentru a indica și afișa diferiții parametri

7. Comunicare serial: Pentru a imprima diverși parametri pe monitorul serial

8. Încărcare USB: pentru a încărca dispozitive inteligente

Pasul 4: Măsurarea tensiunii

Măsurarea tensiunii
Măsurarea tensiunii

Senzorii de tensiune sunt folosiți pentru a detecta tensiunea panoului solar și a bateriei. Este implementat prin utilizarea a două circuite divizoare de tensiune. Se compune din două rezistențe R1 = 100k și R2 = 20k pentru detectarea tensiunii panoului solar și în mod similar R3 = 100k și R4 = 20k pentru tensiunea bateriei. Ieșirea de la R1 și R2 este conectată la pinul analogic Arduino A0, iar ieșirea de la R3 și R4 este conectată la pinul analogic Arduino A1.

Măsurarea tensiunii: intrările analogice Arduino pot fi utilizate pentru a măsura tensiunea continuă între 0 și 5V (când se utilizează tensiunea de referință analogică standard de 5V) și acest interval poate fi mărit utilizând o rețea de divizare a tensiunii. Divizorul de tensiune reduce tensiunea măsurată în intervalul intrărilor analogice Arduino.

Pentru un circuit divizor de tensiune Vout = R2 / (R1 + R2) x Vin

Vin = (R1 + R2) / R2 x Vout

Funcția analogRead () citește tensiunea și o convertește într-un număr între 0 și 1023

Calibrare: Vom citi valoarea de ieșire cu una dintre intrările analogice ale Arduino și funcția sa analogRead (). Această funcție generează o valoare între 0 și 1023, adică 0,00488V pentru fiecare increment (Ca 5/1024 = 0,00488V)

Vin = Vout * (R1 + R2) / R2; R1 = 100k și R2 = 20k

Vin = număr ADC * 0,00488 * (120/20) Volt // Partea evidențiată este factorul Scală

Notă: Acest lucru ne face să credem că o citire a 1023 corespunde unei tensiuni de intrare de exact 5,0 volți. În practică este posibil să nu obțineți 5V întotdeauna de la pinul Arduino 5V. Deci, în timpul calibrării, măsurați mai întâi tensiunea dintre pinii 5v și GND ai Arduino utilizând un multimetru și utilizați factorul de scală utilizând formula de mai jos:

Factor de scară = tensiune măsurată / 1024

Pasul 5: Măsurarea curentului

Măsurarea curentului
Măsurarea curentului
Măsurarea curentului
Măsurarea curentului
Măsurarea curentului
Măsurarea curentului

Pentru măsurarea curentului, am folosit o variantă de senzor de curent Hall Effect ACS 712 -5A. Există trei variante ale senzorului ACS712 pe baza gamei de detectare a curentului său. Senzorul ACS712 citește valoarea curentă și o convertește într-o valoare de tensiune relevantă, valoarea care leagă cele două măsurători este Sensibilitatea. Sensibilitatea de ieșire pentru toate variantele este după cum urmează:

Model ACS712 -> Domeniu curent-> Sensibilitate

ACS712 ELC-05 -> +/- 5A -> 185 mV / A

ACS712 ELC-20 -> +/- 20A -> 100 mV / A

ACS712 ELC-30 -> +/- 30A -> 66 mV / A

În acest proiect, am folosit varianta 5A, pentru care sensibilitatea este de 185mV / A și tensiunea de detectare medie este de 2,5V atunci când nu există curent.

Calibrare:

valoare de citire analogică = analogRead (Pin);

Valoare = (5/1024) * valoare de citire analogică // Dacă nu primiți 5V de la pinul Arduino 5V, Curent în amp = (Value - offsetVoltage) / sensibilitate

Dar, conform fișelor de date, tensiunea de compensare este de 2,5 V, iar sensibilitatea este de 185 mV / A

Curent în amp = (valoare-2,5) / 0,185

Pasul 6: Măsurarea temperaturii

Măsurarea temperaturii
Măsurarea temperaturii
Măsurarea temperaturii
Măsurarea temperaturii

De ce este necesară monitorizarea temperaturii?

Reacțiile chimice ale bateriei se schimbă odată cu temperatura. Pe măsură ce bateria se încălzește, gazarea crește. Pe măsură ce bateria se răcește, devine mai rezistentă la încărcare. În funcție de cât variază temperatura bateriei, este important să reglați încărcarea pentru schimbări de temperatură. Deci, este important să reglați încărcarea pentru a ține cont de efectele temperaturii. Senzorul de temperatură va măsura temperatura bateriei, iar Solar Charge Controller utilizează această intrare pentru a regla punctul de setare a încărcării, după cum este necesar. Valoarea compensării este - 5mv / degC / celulă pentru bateriile de tip plumb-acid. (–30mV / ºC pentru 12V și 15mV / ºC pentru bateria de 6V). Semnul negativ al compensării temperaturii indică o creștere a temperaturii necesită o reducere a valorii de referință a încărcării. Pentru mai multe detalii, puteți urmări acest articol.

Măsurarea temperaturii prin DS18B20

Am folosit o sondă externă DS18B20 pentru măsurarea temperaturii bateriei. Utilizează un protocol cu un singur fir pentru a comunica cu microcontrolerul. Poate fi conectat la portul J4 de pe placă.

Pentru a interfața cu senzorul de temperatură DS18B20, trebuie să instalați biblioteca One Wire și biblioteca de temperatură Dallas.

Puteți citi acest articol pentru mai multe detalii despre senzorul DS18B20.

Pasul 7: Circuitul de încărcare USB

Circuit de încărcare USB
Circuit de încărcare USB
Circuit de încărcare USB
Circuit de încărcare USB

Convertorul buck MP2307 utilizat pentru alimentarea cu energie electrică poate furniza curent de până la 3A. Deci, are o marjă suficientă pentru încărcarea dispozitivelor USB. Priza USB VCC este conectată la 5V, iar GND este conectat la GND. Puteți consulta schema de mai sus.

Notă: Tensiunea de ieșire USB nu este menținută la 5V când curentul de încărcare depășește 1A. Așadar, aș recomanda limitarea încărcării USB sub 1A.

Pasul 8: Algoritm de încărcare

Algoritm de încărcare
Algoritm de încărcare

Când controlerul este conectat la baterie, programul va începe operațiunea. Inițial, verifică dacă tensiunea panoului este suficientă pentru încărcarea bateriei. Dacă da, atunci va intra în ciclul de încărcare. Ciclul de încărcare este format din 3 etape.

Etapa 1 Încărcare în vrac:

Arduino va conecta direct panoul solar la baterie (99% ciclu de funcționare). Tensiunea bateriei va crește treptat. Când tensiunea bateriei ajunge la 14,4 V, va începe etapa 2.

În această etapă, curentul este aproape constant.

Etapa 2 Sarcina de absorbție:

În această etapă, Arduino va regla curentul de încărcare menținând nivelul de tensiune la 14,4 timp de o oră. Tensiunea este menținută constantă prin ajustarea ciclului de funcționare.

Etapa 3 Taxă plutitoare:

Controlerul generează încărcarea prin scurgere pentru a menține nivelul de tensiune la 13,5V. Această etapă menține bateria complet încărcată. Dacă tensiunea bateriei este mai mică de 13,2 V pentru 10 minute.

Ciclul de încărcare va fi repetat.

Pasul 9: Controlul încărcării

Pentru a conecta și deconecta automat sarcina, monitorizând amurgul / zori și tensiunea bateriei, se folosește controlul sarcinii.

Scopul principal al controlului sarcinii este de a deconecta sarcina de la baterie pentru a o proteja de descărcarea profundă. Descărcarea profundă poate deteriora bateria.

Terminalul de încărcare DC este proiectat pentru sarcini DC de mică putere, cum ar fi iluminatul public.

Panoul PV în sine este folosit ca senzor de lumină.

Presupunând că tensiunea panoului solar> 5V înseamnă zori și când <5V amurg.

Stare ON: Seara, când nivelul de tensiune PV scade sub 5V și tensiunea bateriei este mai mare decât setarea LVD, controlerul va porni sarcina și ledul verde de încărcare va străluci.

Stare OFF: Sarcina se va întrerupe în următoarele două condiții.

1. Dimineața, când tensiunea PV este mai mare de 5v, 2. Când tensiunea bateriei este mai mică decât setarea LVD Ledul roșu de încărcare PORNIT indică faptul că sarcina este întreruptă.

LVD este denumit Deconectare de joasă tensiune

Pasul 10: Putere și energie

Puterea și energia
Puterea și energia

Putere: Puterea este produsul tensiunii (volt) și curentului (Amp)

P = VxI Unitatea de putere este Watt sau KW

Energie: Energia este produsul puterii (watt) și al timpului (ora)

E = Unitatea de energie Pxt este Watt-oră sau Kilowatt-oră (kWh)

Pentru a monitoriza puterea și energia de mai sus, logica este implementată în software și parametrii sunt afișați într-un LCD de 20x4 caractere.

Credit de imagine: imgoat

Pasul 11: Protecții

Protecții
Protecții

1. Protecția inversă a polarității și a curentului invers pentru panoul solar

Pentru polaritatea inversă și protecția fluxului de curent invers este utilizată o diodă Schottky (MBR2045).

2. Protecție la suprasarcină și descărcare profundă

Protecția la suprasarcină și la descărcarea profundă este implementată de software.

3. Protecție la scurtcircuit și la suprasarcină

Protecția la scurtcircuit și la suprasarcină este realizată de o siguranță F1.

4. Protecție la supratensiune la intrarea panoului solar

Supratensiunile temporare apar în sistemele de alimentare din mai multe motive, dar fulgerul provoacă cele mai severe supratensiuni. Acest lucru este valabil mai ales în cazul sistemelor fotovoltaice datorită locațiilor expuse și cablurilor de conectare a sistemului. În acest nou design, am folosit o diodă TVS bidirecțională de 600 de wați (P6KE36CA) pentru a suprima fulgerul și supratensiunea la bornele PV.

credit de imagine: imagini gratuite

Pasul 12: indicații LED

Indicatii LED
Indicatii LED

1. LED solar: LED1 Un led bicolor (roșu / verde) este utilizat pentru a indica stația de energie solară, adică amurg sau zori.

LED solar ------------------- Stare solară

Zi verde

ROSU ------------------------- Noapte

2. LED-ul stării de încărcare a bateriei (SOC): LED2

Un parametru important care definește conținutul de energie al bateriei este statul de încărcare (SOC). Acest parametru indică câtă încărcare este disponibilă în baterie. LED-ul RGB este utilizat pentru a indica starea de încărcare a bateriei. Pentru conexiune, consultați schema de mai sus.

LED baterie ---------- Starea bateriei

ROȘU ------------------ Tensiunea este scăzută

VERDE ------------------ Tensiunea este sănătoasă

ALBASTRU ------------------ Încărcat complet

2. LED de încărcare: LED3

Pentru indicarea stării încărcării este utilizat un led bicolor (roșu / verde). Consultați schema de mai sus pentru conexiune.

LED de încărcare ------------------- Stare de încărcare

VERDE ----------------------- Conectat (ON)

RED ------------------------- Deconectat (OFF)

Pasul 13: Afișaj LCD

Ecran LCD
Ecran LCD
Ecran LCD
Ecran LCD

Un LCD 20X4 char este utilizat pentru monitorizarea panourilor solare, a bateriei și a parametrilor de încărcare.

Pentru simplitate, pentru acest proiect este ales un ecran LCD I2C. Are nevoie de doar 4 fire pentru a interfața cu Arduino.

Conexiunea este mai jos:

LCD Arduino

VCC 5V, GNDGND, SDAA4, SCLA5

Rândul 1: Tensiunea, curentul și puterea panoului solar

Rândul 2: Tensiunea bateriei, temperatura și starea încărcătorului (încărcare / neîncărcare)

Rândul 3: încărcați curentul, puterea și starea de încărcare

Rândul 4: energie de intrare de la panoul solar și energie consumată de sarcină.

Trebuie să descărcați biblioteca din LiquidCrystal_I2C.

Pasul 14: Prototipare și testare

Prototipare și testare
Prototipare și testare
Prototipare și testare
Prototipare și testare

1. Panou:

În primul rând, am făcut circuitul pe o placă de pană. Principalul avantaj al unei plăci fără sudură este că este fără sudură. Astfel, puteți schimba cu ușurință designul doar deconectând componentele și cablurile, după cum aveți nevoie.

2. Panou perforat:

După ce am făcut testarea plăcii, am realizat circuitul pe o placă perforată. Pentru a face acest lucru, urmați instrucțiunile de mai jos

i) Mai întâi introduceți toate piesele în orificiul plăcii perforate.

ii) Lipiți toate plăcuțele componente și tăiați picioarele suplimentare cu un dispozitiv de prindere.

iii) Conectați tampoanele de lipit folosind fire conform schemei.

iv) Utilizați standoff pentru a izola circuitul de la sol.

Circuitul plăcii perforate este foarte puternic și poate fi implementat într-un proiect permanent. După testarea prototipului, dacă totul funcționează perfect, putem trece la proiectarea PCB-ului final.

Pasul 15: Proiectare PCB

Design PCB
Design PCB
Design PCB
Design PCB

Am desenat schema utilizând software-ul online EasyEDA după ce am trecut la aspectul PCB.

Toate componentele pe care le-ați adăugat în schemă ar trebui să fie acolo, stivuite una peste alta, gata pentru a fi plasate și direcționate. Trageți componentele apucând de tampoanele sale. Apoi, așezați-l în interiorul liniei dreptunghiulare.

Aranjați toate componentele în așa fel încât placa să ocupe un spațiu minim. Cu cât dimensiunea plăcii este mai mică, cu atât costul de fabricație a PCB va fi mai mic. Va fi util dacă această placă are niște găuri de montare pe ea, astfel încât să poată fi montată într-o incintă.

Acum trebuie să parcurgeți ruta. Rutare este cea mai distractivă parte a întregului proces. Este ca și cum ai rezolva un puzzle! Folosind instrumentul de urmărire trebuie să conectăm toate componentele. Puteți utiliza atât stratul superior, cât și stratul inferior pentru a evita suprapunerea între două piese diferite și pentru a face piesele mai scurte.

Puteți utiliza stratul Silk pentru a adăuga text pe tablă. De asemenea, putem introduce un fișier imagine, așa că adaug o imagine a siglei site-ului meu web pentru a fi tipărită pe tablă. În cele din urmă, folosind instrumentul pentru zona de cupru, trebuie să creăm zona de sol a PCB-ului.

Acum PCB-ul este gata pentru fabricare.

Pasul 16: Descărcați fișierele Gerber

Descărcați fișierele Gerber
Descărcați fișierele Gerber

După realizarea PCB-ului, trebuie să generăm fișierele care pot fi trimise către o companie de fabricare a PCB-urilor care, în timp util, ne va trimite înapoi niște PCB-uri reale.

În EasyEDA Puteți scoate fișiere de fabricație (fișier Gerber) prin Document> Generare Gerber sau făcând clic pe butonul Generați Gerber din bara de instrumente. Fișierul Gerber generat este un pachet comprimat. După decompresie, puteți vedea următoarele 8 fișiere:

1. Cupru inferior:.gbl

2. Cupru superior:.gtl

3. Măști de lipit de jos:.gbs

4. Măștile de lipit de top:.gts

5. Ecranul de mătase de jos:.gbo

6. Top Silk Screen:.gto

7. Burghiu:.drl

8. Outline:.outline

Puteți descărca fișierele Gerber de pe PCBWay

Când plasați o comandă de la PCBWay, voi primi o donație de 10% de la PCBWay pentru o contribuție la munca mea. Micul tău ajutor mă poate încuraja să fac o muncă mai grozavă în viitor. Multumesc pentru cooperare.

Pasul 17: Fabricarea PCB-urilor

Fabricarea PCB-urilor
Fabricarea PCB-urilor

Acum este timpul să aflăm un producător de PCB care poate transforma fișierele noastre Gerber într-un PCB real. Am trimis fișierele mele Gerber la JLCPCB pentru fabricarea PCB-ului meu. Serviciul lor este extrem de bun. Am primit PCB-ul în India în termen de 10 zile.

BOM pentru proiect este atașat mai jos.

Pasul 18: lipirea componentelor

Lipirea componentelor
Lipirea componentelor
Lipirea componentelor
Lipirea componentelor
Lipirea componentelor
Lipirea componentelor

După ce ați primit placa de la fabrica PCB, trebuie să lipiți componentele.

Pentru lipire, veți avea nevoie de un fier de lipit decent, de lipit, de șnur, de fitiluri sau de pompă și de un multimetru.

Este o bună practică să lipiți componentele în funcție de înălțimea lor. Lipiți mai întâi componentele cu înălțime mai mică.

Puteți urma următorii pași pentru lipirea componentelor:

1. Împingeți picioarele componente prin găurile lor și rotiți PCB-ul pe spate.

2. Țineți vârful fierului de lipit la joncțiunea tamponului și a piciorului componentei.

3. Introduceți lipirea în articulație astfel încât să curgă în jurul plumbului și să acopere tamponul. Odată ce a trecut de jur împrejur, îndepărtează vârful.

4. Tăiați picioarele suplimentare folosind un Nipper.

Respectați regulile de mai sus pentru lipirea tuturor componentelor.

Pasul 19: Montarea senzorului de curent ACS712

Montarea senzorului de curent ACS712
Montarea senzorului de curent ACS712
Montarea senzorului de curent ACS712
Montarea senzorului de curent ACS712
Montarea senzorului de curent ACS712
Montarea senzorului de curent ACS712

Senzorul de curent ACS712 pe care l-am primit are un terminal cu șurub pre-lipit pentru conectare. Pentru a lipi modulul direct pe placa PCB, trebuie mai întâi să desudați borna cu șurub.

Desoldez borna cu șurub cu ajutorul unei pompe de desoldare așa cum se arată mai sus.

Apoi am lipit modulul ACS712 cu susul în jos.

Pentru a conecta terminalele Ip + și Ip- la PCB, am folosit picioarele terminalului diodei.

Pasul 20: Adăugarea convertorului Buck

Adăugarea convertorului Buck
Adăugarea convertorului Buck

Pentru a lipi modulul Buck Converter, trebuie să pregătiți 4 știfturi de antet drept așa cum se arată mai sus.

Lipiți cei 4 pini de antet la X1, 2 sunt pentru ieșire și restul doi sunt pentru intrări.

Pasul 21: Adăugarea Arduino Nano

Adăugarea Arduino Nano
Adăugarea Arduino Nano
Adăugarea Arduino Nano
Adăugarea Arduino Nano
Adăugarea Arduino Nano
Adăugarea Arduino Nano
Adăugarea Arduino Nano
Adăugarea Arduino Nano

Când achiziționați anteturi directe, acestea vor fi prea lungi pentru Arduino Nano. Va trebui să le tăiați la o lungime adecvată. Aceasta înseamnă 15 pini fiecare.

Cel mai bun mod de a tăia piesele antetului feminin este de a număra 15 pini, de a trage pinul 16, apoi de a folosi un nipper pentru a tăia spațiul dintre pinul 15 și 17.

Acum trebuie să instalăm anteturile feminine pe PCB. Luați antetele feminine și plasați-le pe antetele masculine de pe placa Arduino Nano.

Apoi lipiți pinii antetului feminin pe placa de control a încărcării.

Pasul 22: Pregătirea MOSFET-urilor

Pregătirea MOSFET-urilor
Pregătirea MOSFET-urilor
Pregătirea MOSFET-urilor
Pregătirea MOSFET-urilor

Înainte de a lipi MOSFET-urile Q1 Q2 și dioda D1 pe PCB, este mai bine să le atașați mai întâi radiatoarele. Radiatoarele sunt utilizate pentru a îndepărta căldura de dispozitiv pentru a menține o temperatură mai scăzută a dispozitivului.

Aplicați un strat de compus pentru radiator peste placa de bază metalică MOSFET. Apoi așezați tamponul conductiv termic între MOSFET și radiator și strângeți șurubul. Puteți citi acest articol despre motivul pentru care radiatorul este esențial.

În cele din urmă, lipiți-le pe PCB-ul controlerului de încărcare.

Pasul 23: Montarea distanțelor

Montarea distanțelor
Montarea distanțelor
Montarea distanțelor
Montarea distanțelor
Montarea distanțelor
Montarea distanțelor

După lipirea tuturor pieselor, montați distanțele la 4 colțuri. Am folosit M3 Brass Hex Standoffs.

Utilizarea separatoarelor va oferi suficient spațiu pentru îmbinările de lipit și firele de la sol.

Pasul 24: Software și biblioteci

Software și biblioteci
Software și biblioteci

Mai întâi, descărcați codul Arduino atașat. Apoi descărcați următoarele biblioteci și instalați-le.

1. Un fir

2. Temperatura Dallas

3. LiquidCrystal_I2C

4. Biblioteca PID

Întregul cod este împărțit în micul bloc funcțional pentru flexibilitate. Să presupunem că utilizatorul nu este interesat să utilizeze un ecran LCD și că este mulțumit de indicația LED. Apoi, dezactivați lcd_display () din bucla void (). Asta e tot. În mod similar, conform cerințelor utilizatorului, el poate activa și dezactiva diversele funcționalități.

După instalarea tuturor bibliotecilor de mai sus, încărcați codul Arduino.

Notă: Acum lucrez la software-ul pentru implementarea unui algoritm de încărcare mai bun. Vă rugăm să păstrați legătura pentru a obține cea mai recentă versiune.

Actualizare la 02.04.2020

Am încărcat un nou software cu un algoritm de încărcare îmbunătățit și implementarea controlerului PID în acesta.

Pasul 25: Testarea finală

Testarea finală
Testarea finală
Testarea finală
Testarea finală
Testarea finală
Testarea finală

Conectați bornele bateriei controlerului de încărcare (BAT) la o baterie de 12V. Asigurați-vă că polaritatea este corectă. După conectare, LED-ul și LCD-ul vor începe să funcționeze imediat. Veți observa, de asemenea, tensiunea și temperatura bateriei pe al doilea rând al afișajului LCD.

Apoi conectați un panou solar la terminalul solar (SOL), puteți vedea tensiunea, curentul și puterea solară pe primul rând al afișajului LCD. Am folosit o sursă de alimentare de laborator pentru a simula panoul solar. Mi-am folosit contoare de putere pentru a compara valorile de tensiune, curent și putere cu afișajul LCD.

Procedura de testare este prezentată în acest videoclip demo

În viitor, voi proiecta o incintă tipărită 3D pentru acest proiect. Păstrăm legătura.

Acest proiect este o intrare în Concursul PCB, vă rog să mă votați. Voturile tale sunt o adevărată inspirație pentru mine pentru a face mai multă muncă grea pentru a scrie proiecte mai utile ca aceasta.

Vă mulțumim că ați citit Instructable-ul meu. Dacă vă place proiectul meu, nu uitați să îl împărtășiți.

Comentariile și feedback-ul sunt întotdeauna binevenite.

Provocarea PCB Design
Provocarea PCB Design
Provocarea PCB Design
Provocarea PCB Design

Locul doi în PCB Design Challenge

Recomandat: