Sari la conținut
ELFORUM - Forumul electronistilor

control viteza si directie de rotatie pentru motor de 12V 50W


vlad2005

Postări Recomandate

Acuma sincer m-am lamurit (multumesc @mars01). Aveam in minte care este ideea cu PWM, credeam gresit ca se modifica frecventa, sincer cred ca este o greseala mai mult de neglijenta pentru ca peste tot unde citesti de PWM se vorbeste de acest duty cycle sau factor de umplere. Nu e nici complicat de inteles, dar probabil dint-un soi de neglijenta luam in considerare frecventa. In fapt, cred ca nu gresesc dar acelasi efect se poate obtine si modificand frecventa, proababil de aici si confuzia in mintea mea.Ceea ce intr-adevar mi se pare un mare pas inainte pentru mine este faptul ca acum realizez ca MOSFETUL nu functioneaza ca un rezistor variabil (usor de gresit avand in vedere rationamentul meu) ci de fapt switch-ul facut de arduino se traduce in switch de conductanta a mosfet-ului si implicit in modularea curentului prin motor de unde si posibilitatea de reglaj a turatiei. Practic mosfetul ruleaza ca un releu care se inchide/deschide cu frecventa semnalului PWM dat de arduino.Tot datorita acestei explicatii (multumesc din nou @mars01) cred ca acum inteleg ca aceasta punte, in schema postata de mine mai sus poate functiona cu semnal PWM. Practic se moduleaza curentul care trece prin pe diagonala puntii datorita comutarii lui IRF9630 celalalt mosfet IRF630 (de pe diagonala) ramanant tot timpul in conductie datorita semnalului LOW de pe celalat pin. E corect? De fapt perechea de mosfeti de pe o latura (stanga sau dreapta) formeaza impreuna echivalentul unui releu cu doua contacte NO/NC. Ce simplu era. Ufffff! Si ar trebui sa functioneze si cu optocuplere.Acum astept sa vedem cum ar trebui optimizata schema.

Editat de vlad2005
Link spre comentariu
  • Răspunsuri 88
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

Top autori în acest subiect

Imagini postate

De obicei calitatea raspunsurilor reflecta calitatea intrebarilor. Ti s-a spus de mai multe ori ca nu ai inteles cum e cu PWM-ul si in loc sa pui mana sa citesti cum e cu el, o tii pe a ta.

In mintea mea (posibil gresit) lucrurile stau in felul urmator: o tensiune variabila GS duce la conductanta variabila DS

Intre timp ati postat tu si mars01, da' daca tot am scris...
Link spre comentariu

Problema principala nu era PWM-ul in intelegerea mea (desi modul cum lucreaza determina functionarea mosfet-ului ) ci modul cum lucreaza mosfet-ul. Eu credeam ca lucreaza ca un reostat si de fapt el comută. Gândeam ca are un fel de inertie electrica si practic mosfetul ”vede” pe GS o tensiune care ar fi tensiunea echivalenta semnalului modulat PWM (un fel de valoare efectiva din teoria curentului alternativ ceea ce ma leaga de confuzia cu frecventa) iar acea tensiune determina o deschidere partiala a conductantei DS (de aici interesul pentru zona liniara). In sfarsit, bine ca m-am lamurit. Sa mergem mai departe.

Link spre comentariu

Vlad, tranzistorul MOSFET are o functionare complexa. Functie de tensiunea Vgs, aceasta functionare poate fi in zona lineara (ohmica, unde mosfetul este privit ca un rezistor controlat in tensiune) si o aplicatie aici ar fi utilizarea tranzistorilor MOSFET ca tranzistori finali in amplificatoarele audio, o alta aplicatie ar fi ca si element regulator in sursele de curent constant.

Daca tensiunea Vgs este semnificativ mai mare decat tensiunea de prag Vgs-th atunci tranzistorul MOSFET intra in saturatie, in acest mod el disipand putere minima pentru ca Rds este minim.

 

In PWM se face switching intre starea OFF si ON a tranzistorului MOSFET adica intre starea OFF (inactiva, cand tensiunea Vgs este mai mica Vgs - th) si starea de saturatie.

Dar vrand - nevrand, cand se trece din off in starea de saturatie (si invers)  se trece si prin zona liniara, ceea ce produce efecte nedorite cum ar fi incalzire excesiva. Pentru a minimiza aceasta trecere prin zona liniara, comanda tranzistorului MOSFET se face cu un curent mare (da, este vorba de intensitatea curentului electric, "amperaj", pentru a incarca rapid capacitatea de intrare. Chiar daca mosfet-ul este comandat in tensiune, pentru a face un turn-on sau turn-off rapid este nevoie si de un curent mare - intensitate a curentului electric mare). De aceea este nevoie de drivere pentru MOSFETI (am si sugerat in postul #5 un circuit driver de la Microchip, TC4428).

Pt mai multe informatii despre MOSFET, aici

 

LE: si legat de neclaritatea ta cu de ce nu a mers o punte h pentru xulescu poate ca are legatura cu frecventa redusa pe care o ofera functia Arduino analogWrite() (adica functia PWM). Frecventa PWM in Arduino cand se foloseste functia analogWrite() este de cca 500 ... 600Hz (cam prin zona aceasta, nu stiu valoarea exacta) ceea ce poate fi un pic prea putin pentru anumite motoare (depinde de inductanta/inertia acestora).

Pentru a avea o functionare corecta, frecventa PWM cand se controleaza motoare este bine sa fie de la cativa kilohertzi pana la cateva zeci de kilohertzi. Preferabil peste spectrul audio ca sa nu "miorlaie" motoarele cand merg. :)

Editat de mars01
Link spre comentariu

Eu nu stiu de unde rusinea asta la romani sa se spuna: nu stiu, dar vreau sa invat, va ascult! A spune ca nu stii ceva este o dovada de intelepciune, nicidecum o slabiciune.Vlade, scrii numai prostii si nu citesti ce ti se spune. Ce crezi tu ca stii nu e bine, citeste si intelege ce ti se explica.Ba mai si dai de inteles ca tu ai inteles, dar ca ceilalti nu inteleg. Gandeste-te ca Mosfetul e un switch. Pe care PWM-ul il face on-off la frecventa lui. Mosfetul nu e o rezistenta variabila pentru motor, nu comanzi motorul cu curent ca pe un LED.Chiar daca nu-mi place atitudinea ta catre colegi (apropo de "replici") incapatanata in refuzul de a citi, tot iti pun maine niste scheme. Nu-ti face griji, invarti tu motorul ala, doar casca mari urechile.

Link spre comentariu

@of-of care este confuzia? Ajuta-ma sa inteleg! Am spus de vreo cateva ori ca vreau sa inteleg si tot sunt acuzat ca nu vreau acest lucru. In cazul PWM frecventa este constanta, adica numarul de schimbari din HIGH in LOW este constant pe un anumit interval de timp. Diferenta se face prin modificarea timpului cat se sta pe HIGH respectiv LOW si asta ne duce la factorul de umplere (duty cycle). Acuma zi-mi unde este confuzia?@mars01 binenteles ca ai dreptate despre ce ai scris. Am citit si eu despre aceasta faza de tranzitie, nu i-am dat prea mare importanta pentru ca intelegeam altfel lucrurile, acum are sens. Practic acest driver ma scuteste de a mai monta tranzistori bipolari pentru a comanda mosfet-ul si in plus asigura cea tranzitie rapida intre stari. Am citit un pic despre TC4426, nu prea inteleg exact cum lucreaza logica la el. Am mai gasit si IR3537. În ce privește problemele cu puntea pe care le avea un alt user de pe forumul arduino, este posibil sa nu ii fi mers din cauza frecventei PWM. Inteleg ca modificarea acestei frecvente in arduino cam da batai de cap. Acuma e clar si de ce la anumiti mosfeti era specificat ca functionalitate aplicatiile audio, ei fnctioneaza pe zona liniara.@thunderer, am spus de cateva ori ca vreau sa inteleg aceasta punte si cred ca sunt aproape. Recunosc ca nu am timp sa citesc documentatii detaliate si teoria mosfetului incerc sa ajug mai repede la partea aplicativa. Iarasi o chestie urâtă ca exprimare ”Vlade scrii numai prostii”. Puteai sa spui ”Vlade gresesti des” sau ceva echivalent pentru ca nu tot ce am scris sun greseli. Dar in sfarsitAcum sa vedem o schema cu driver pentru mosfet. Am gasit ceva pe net, cu TC4428 si inteleg din acest topic ca ar trebui doua drivere pentru fiecare partea a puntii H desi acest driver ar trebui sa asigure functionarea intregii punti. Astept cei care se pricep sa isi exprime opinia si eventual o schema corecta.

Link spre comentariu

Ceva similar vreau sa fac si eu pentru niste porti. Pana acum mi-a cam fost peste mana sa ma apuc de constructia montajului (electronica + mecanica aferenta acestui proiect). Mai demult am realizat pentru cineva un montaj putin mai simplu, doar cu niste relee si un modul cu telecomanda. Pentru mine, as vrea ceva mai "avansat". Am urmarit topicul de la inceput, chiar daca putin pe sarite, si parca as ramane la prima varianta. Aceea cu relee si tranzistor. Mi se pare mai simpla. Probabil as fi adoptat si puntea cu tranzistori, dar nu am la indemana mosfet P. O punte cu tranzistori BDX66 si 67 am facuta, dar mie imi trebuie pentru 2 motoare. Si cum relee am, ramane de incercat. Probabil maine voi incepe si eu testele (daca nu o sa fiu prea obosit dupa schimbul de noapte).

Link spre comentariu

E clar ca este mai simpla insa mi-as dori sa avem o schema finala si pe mosfet. Cred ca suntem foarte aproape.In ce priveste varianta cu relee este mai usor de realizat insa este un pic inestetica. Daca folosesti relee dual channel cum as vrea eu ar trebui sa am 4 fire/releu (+5V ,GND, IN1, IN2) catre montajul arduino pentru comanda directiei si inca 2 fire de la relee pentru comanda PWM prin mosfet (de la NC si GND-ul alimentarii de 12V). Deci in total vreo 12 cabluri (6 motor1+6 motor2) de la relee la motajul arduino. Se pot folosi relee 4 channel si in felul acesta mai scapi de o alimentare a releelor (2 fire). Eventual un GND comun pentru tot montajul dar este preferabil sa se separe alimentarile. Cam multe fire dar tolerabil mai ales pentru ceva DIY.In varianta doar cu mosfet va arata mult mai aerisit si elegant dar sunt mai multe componente, pcb-ul va fi probabil mai dificil de gandit, nu am facut calcul dar probabil ca trebuie si radiatoare, deci e ceva mai mult de lucru. Intentionez sa folosesc un radiator pentru cate 2 mosfeturi (de pe o latura) mai ales ca trece curent prin ele alternativ in functie de deschidere/inchidere. Dar tot ar fi 4 radiatoare pentru ambele motoare.Sincer cand am sa ma apuc de treaba am sa fac prima data doar cu relee. Sa vad cum se misca. Apoi am sa implementez varianta cu un mosfet pentru controlul vitezei si apoi daca totul este ok si capat un pic de incredere am sa fac si o punte completa. Cam acesta e planul meu.

Editat de vlad2005
Link spre comentariu

Dupa cum am zis, 2 scheme testate si functionale sunt atasate. Eu folosesc driver dedicat pentru toti 4 Mosfetii, chiar daca cei de "sus" nu au nevoie de driver de curent, fiind doar comutati on-off la schimbarea turatiei. Interesul tau, pentru o disipare termica minima, este sa deschizi-inchizi complet Mosfetii.In cazul puntii P-N driverul pe partea de "sus" pot fi si niste simpli tranzistori 2n2222 sau un BC. Au rolul doar de interfatare 12V cu iesirea de 5V a microcontrollerului.In cazul puntii N ai nevoie de un ridicator de tensiune, cu 3-4V peste tensiunea de 12V. Asta ca sa fii sigur ca deschizi complet Mosfetii de "sus". Eu am folosit acel LM2735, tu poti pune orice ridicator de pe eBay sau unul cu ICL7760 sau cu MC34063.Am pus si poza cablajului meu ca sa vezi dimensiunile PCB si minima nevoie de racire. Semnalul PWM se aplica numai pe Mosfetii de "jos". Inutil sa dai PWM la Mosfetii de "sus".In locul lui PIC 16F690 este Arduino. Intrebare: stii (nu e rusine sa zici ca nu) cum se comanda o punte?Pune intrebari.PS: Ma certi ca nu-ti vorbesc frumos. Tu cum crezi ca se simt colegii care isi pierd vremea sa iti explice, iar tu spui ca n-ai timp de teorie. Fara cuvinte.LE: la descarcare vad zone negre pe PDF. Daca si tu le vezi, repun PDF-ul diseara.

N AND PN BRIDGES_.pdf

Link spre comentariu

Ok, multumesc pentru schema. Am sa ma concentrez pe ultima varianta ca este cea pe care am discutat practic pana acum, mai exact pe puntea propriu-zisa si driverul aferentAm cateva intrebari:1. ce fel de mosfeti folosesti acolo?2. Sa inteleg ca racirea mosfetilor o faci pe stratul de cupru de pe pcb? Cel pentru GND?3. Despre ce curent vorbim in mod practic la aceasta punte (curentul prin motor)?Despre partea cu teoria, am vrut sa ma refer ca nu am timp sa intru in amanunte de studiu specifice unui curs de electronica. Ma intereseaza principiul de functionare si parametrii principali, deci ceea ce are mai mult legatura cu practica. Nu este meseria mea, este doar un hobby, de aceea doresc sa stiu doar ceea ce este strict necesar pentru intelegerea corecta a lucrurilor. Nu am vrut sa se inteleaga ca vreau totul de-a gata dar nici nu se justifica sa intru in amanunte inutile de teorie. Sper ca am fost mai clar. Respect munca celor care raspund pe forumuri deoarece este practic un voluntariat si trebuie apreciat. Dar daca am proceda mai simplu pur si simplu indicand ce este gresit si cum ar trebui corect cred ca ar fi mai eficient pentru toata lumea.Multumesc din nou pentru schema, reprezinta un punct de plecare solid.

Link spre comentariu

Dar daca am proceda mai simplu pur si simplu indicand ce este gresit si cum ar trebui corect cred ca ar fi mai eficient pentru toata lumea.

De acord cu tine. Ia si (re)citeste-ti raspunsul (de fapt raspunsurile, ca a trebuit sa te trag de limba) la intrebarea #14.Si dupa aia o sa vezi de ce nu ti se raspunde simplu.@mars01 - referitor la postul #35 - nu-s convins ca folosesti corect termenul "saturare/saturatie". Ce zici tu e valabil la bipolare. La MOS e o fortare, ca sa se pastreze o echivalenta cu bipolarele.LE Diferenta e explicata la pagina 5 din documentul de la: http://www.euedia.tuiasi.ro/lab_ep/ep_files/Lucrarea_5_img.pdf Editat de Liviu M
Link spre comentariu

Mosfetii N sunt indicati ca fiind NTD4809. Orice mosfet cu Rdson=10-15miliohm (la Vgs= 10V), Vgs = 20V, Vds>=30V merge. Mosfetii sunt cumparati in functie de pret :). Vorbim, deci, de mosfeti ieftini. Exista si varianta de Rdson de 1-2miliohmi. Alt pret, dar mult mai reci in functionare.Tu poti pune mosfeti in capsula TO220, nu ai probleme de spatiu. Eu folosesc acea punte la 3A continuu (cam 1-1h30), dar se poate mult mai mult, mai ales daca pui si un radiator. Fiind un controller de motor de barca l-am conceput miniaturizat. Zonele de cupru sunt radiatoarele, nu neaparat numai planul de masa.In puntile PN, unde mosfetii ieftini au Rdson de 40-50miliohmi, folosesc vias ca sa transfer caldura si pe cuprul de pe spate. Nu in cazul schemei cu N incarcata inainte. Nu e nevoie. Mosfetii sunt usor la 50-60C (dupa minim o ora de jucat cu barcuta). Regimul de barcuta implica accelerari si schimbari de turatie repetate.Poarta ta are functionari scurte si rare. In plus, cred ca motorul ala are si un reductor. Ceea ce il face mai constant in consum.LE: Poti reposta schema la care te-ai hotarat? Ca sa o discutam.

Editat de thunderer
Link spre comentariu

Poarta intr-adevar are regimuri rare de functionare si scurte. Acum, din ce am citit despre IRF630, are un Rdson=400 miliohm ceea ce este urias.Schema (punte + driver) va fi exact ca ceea ce ai postat tu. Practic este o schema tipica de H-bridge cu mosfet. Acei rezistori de 47R sau 10R (alternativ la ferite) ce rol au?Eventual poate poti spune cum ar trebui calculate valorile rezistoarelor folosite in punte, ca sa putem adapta schema si la alte tipuri de msofeti/drivere.Problema incalzirii este aceeasi la mosfetii N respectic P? Nu ai spus ce mosfeti P folosesti acolo.Multumesc!

Editat de vlad2005
Link spre comentariu

Iti recomand punte N. Rdson e mai mic si sunt mai ieftini.Nu e chiar aceeasi problema la incalzire intre P si N. Cei P prezinta pierderi numai datorate trecerii curentului prin Rdson. RxI la patrat.Cei N au aceleasi pierderi la Rdson + pierderile in comutatie. Cu cat comuti mai repede, cu atat sunt mai mici. Comutatul rapid depinde de driverul folosit. Nu am in minte mosfetii puntii P-N, dar cauta cu Rdson cat mai mic, la pretul cel mai bun. Un Rdson mic inseamna o capacitate a portii ridicata.Un driver bun va comuta bine acea capacitate. Mosfetul lucreaza cu comanda in tensiune, dar comutarea lui depinde de cat de repede incarci si descarci acel condensator (capacitatea) al portii. Rezistenta din poarta intre 10 si 47R. Am pus (la acel montaj numai, n-am mai repetat dupa) acele socuri (ferrite bead). Nu-s obligatorii. Cred ca imi era frica de ringing. E un proiect vechi, se vede dupa cat de urat am desenat schema.PS: cred ca Romana mea ma lasa de izbeliste... capacitatea... scuze.

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări