Jump to content
ELFORUM - Forumul electronistilor

Control PWM folosind PIC


Guest Krash

Recommended Posts

Buna.... profesorii de faculta is plictisiti si ce sa faca decat sa ne dea tot felul de proiecte ciudate. Mi-ar trebui o schema pentru controlul turatiei unui motor de curent continu folosind un microcontroler, eu as alege PIC16F84 sau PIC16F876A, ca se gasesc in comert. Ma puteti ajuta va rog?! Corectati-ma daca gresesc, dar m-am documentat un pic si cica partea de executie ar fi VTC coborator iar baza tranzistorului se comanda in PWM ptr a regla turatia. Adica reglez valorea stabilita a turatiei folosind un potentiometru, iar microcontrolorul imi va controla factorul de umplere. :84

Link to comment
Share on other sites

  • Replies 27
  • Created
  • Last Reply

1. Deci ai nevoie de un PIC care are intrari pentru conversie analogica - digital si o iesire PWM.2. Poti face schema si fara conversie analogica, daca pui un buton sa creasca factorul de umplere iar altul sa-l descresca. Totul este sa hotarasti timpul de incrementare.

Link to comment
Share on other sites

Iei un PIC16F876A. Legi capetele potentiometrului intre +5V si masa si cursorul. Cursorul la AN0 (pin2). Din CCP1 (pin 13) pleci la baza tranzistorului printr-o rezistenta de limitare. Baza o mai tragi si la masa ca sa fie tranzistorul blocat la initializare. Daca ai nevoie sa stabilizezi turatia functie de sarcina, montezi pe axul motorului un generator de tact si duci impulsurile la RB0/INT (pin21). Alimentezi PIC-ul. Asta-i schema!Dupa asta scrii softul si bagi de seama ca profesorii aia au ce face.

Link to comment
Share on other sites

is anul III la Poli CJ, la automatizari, iar in ceea ce priveste profesorii imi vine sa plang... Cum poate sa te intrebe proful: Nu aveti cumva un pistol de lipit?, pentru ca i s-a rupt un fir de la generatorul de tact si pe osciloscop nu vedeai deloc turatia :ras: De parca am umbla cu trusa de scule dupa noi :| OMG :nebunrau:

Multumesc pentru ajutor....

Link to comment
Share on other sites

In raspunsul de mai sus am omis sa spun ca mai trebuie un quart si doi condensatori ca sa porneasca oscilatorul dar cred ca asta e evident. Deasemenea pinul 'MCLR se leag la un circuit de reset.Daca folosesti un PIC16F628A (si astea se gasesc in comert) scapi de quart. Legaturile ramin la aceleasi porturi, numarul pinilor difera.

Link to comment
Share on other sites

1. Poate ca tema pare simpla, dar daca iei in calcul toate variantele ai sa descoperi ca ar trebui sa faci schema logica si sa analizezi toate posibilitatile care pot aparea. Daca tema data de profesor nu prevede tipul de PIC atunci trebuie cautat PIC care da cel mai putin de lucru, dar daca se doreste ca sa se faca proiectul cu un anumit tip de PIC s-ar putea sa apara alte probleme. Dau numai un exemplu: daca PIC nu are convertor analogic digital, atunci se poate prevedea comanda prin butoane si apare o noua problema? Ce se intampla cand se apasa ambele butoane? etc. sau daca se utilizeaza intrarea analogica dupa cat timp de la pornire trebuie sa se ajunga la parametrul setat? Intradevar realitatea este putin mai complexa decat o vedem noi.

Link to comment
Share on other sites

Proiectul e mult mai amplu decat v-am zis... Ca sa iti raspund .. puiu .. nu se impune un anumit de microcontrolor dar de preferat ar fi un MSP430 de la Texas Instruments, insa cum nu se gaseste nici programator nici microcontrolor prefer sa aleg PIC-urile. Ce vrea mai exact profesorul? ar vrea ca prin microcontrolor sa se implementeze si comanda in PWM, dar si un regulator. N-am idei cum se implementeaza practic. Teoretic regulatorul ar fi o alta placuta.... In fine.... Pentru moment e destul ca din potentiometru sa se stabileasca valoarea de referinta ca apoi in functie de eroare sa se regleze turatia. :nebunrau: Oare PIC16F84 nu ar fi o alegere mai buna. Din cate stiu PIC16F84 are un singur timer si mie mi-ar trebui doua, unul ptr comanda pwm si unul de capture... :confuz1

Link to comment
Share on other sites

pentru citirea unui potentiometru nu e nevoie musai de convertor AD, deci poti face cu 16F84 sau oricare altul. In limbaje de programare de nivel inalt exista comenzi de citire a unui potentiometru, procedeul consta in incarcarea unui condensator si descarcarea lui prin potentiometru, timpul de descarcare este cronometrat de controler, timp care e direct proportional cu valoarea potentiometrului (pozitia curenta). eu unu am folosit odata metoda pentru a masura temperatura inlocuind potentiometrul cu termistor . PWM se poate face soft dar preferabil ar fi hardware daca tot va face si acest artificiu pentru citirea potentiometrului, anume 16F628 sau 627 e bun ca are un pwm hard.

Link to comment
Share on other sites

1.Eu cred ca este simplu sa faci ca o esire PWM sa fie proportionala cu starea unui potentiometru. Problema mai deosebita este regulatorul la care dupa mine ar trebui sa faci schema logica a lui si apoi sa-l implementezi. Sunt multe PIC-uri care au o intrare analogica-digitala (de regula chiar mai multe) si o iesire de PWM. Problema va fi numai legata de softul cu care se realizeaza regulatorul. De fapt rezolutia conversiei analog-digitala si durata dupa care se vede modificarea in PWM sunt elementele sensibile ale acestei programari.

Link to comment
Share on other sites

Mi-am cam dat si eu seama ca softul va da cele mai mari batai de cap si anume care este relatia intre PWM si iesirea data de regulator? Asta e marea intrebare. Regulatorul in sine se poate rezolva, dar nu stiu care este interdependeta intre PWM si iesirea data de regulator.

Link to comment
Share on other sites

1.Pentru inceput eu zic sa faci ca iesirea PWM sa fie proportionala cu intrarea indiferent de cum variaza intrarea, altfel spus iesirea sa reflecte imediat intrarea sau in cazul respectiv pozitia potentiometrului. Dupa ce faci acest lucru poti sa faci o analiza a variatiei intrarii in functie de care faci iesirea. Cred ca pentru inceput este bine sa consideri ca pentru intrare 100% vei avea o iesire de PWM cu duty 100%, deci cat ai la intrare atat ai si la iesire, fara sa verifici cat este U iesire efectiv, ci in procente. Dupa ce faci softul pentru acest lucru poti sa treci la etapa urmatoare care poate sa fie modul de variatia al iesirii in functie de variatia intrarii.

Link to comment
Share on other sites

Nu stiu daca e off topic sau nu dar am o intrebare. Nu aveti idei ce MOSFET ar fi bun ptr realizarea circuitului. Motorul e de 6 V si cum s-ar putea realiza reactia, adica masurarea turatiei?! Tahogenerator din cate am inteles nu se poate folosi ca motorul e cam mic, fototranzistor..... :confuz1 . As incerca traductoare Hall, dar.... nu-s sigur ce ar fi bine :)

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.




×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.Terms of Use si Guidelines