Jump to content
ELFORUM - Forumul electronistilor

Multiplexare porturi PWM


Recommended Posts

Salut. Am si eu o nedumerire daca cineva a mai lucrat cu asa ceva, vreu sa fac un montaj cu PWM cu 6 porturi independete, problema este ca nu gasesc PIC-uri care sa aibe atatea porturi, desigur sunt cele cu 5 dar acelea au 3 porturi ECCP adica functioneaza in configuratie half-bridge care e un pic peste mana...Ma intereseaza daca stiti un integrat ceva care sa il pot controla prin i2c sau one-wire sau eu mai stiu cum sa aibe capabilitatea de a genera ~6 porturi, frecventa de swiching nu conteaza asa mult sa fie pe la 1khz, numai sa pot fixa duty-cycle dupa bunul plac!Multumesc

Link to comment
  • Replies 20
  • Created
  • Last Reply

Top Posters In This Topic

1. Cred ca trebuie sa fii mai concret: de exemplu ce intelegi prin 6 porturi independente? Ce intelegi prin fixarea duty-ciclului dupa bunul plac?2. Care este rezolutia duty-cicle necesara?3. La frecventa de 1 kHz a PWM, ai facut o incercare soft?4. De fapt de cate porturi ai nevoie? De 3 sau 6?

Link to comment

cred ca am fost destul de prexis cand am scris ce am scris. Am nevoie de ~6 porturi acum daca is 5 nu e mare bai, cuvantu independent e destul de clar dupa limba mea adica sa fie separate si fixarea duty-cycle e destul de clar si aia (de exemplu cum e in mikroBasic in incremete de 1 de la 0 la 255 atunci ma gandesc ca rezolutia e 1byte). Scuze pt dar am gresit frecventa la care vreau defapt sa functioneze, in principiu vreau undeva peste 22kHz.multumesc

Link to comment

1. Deci porturile nu prea sunt independente sub aspectul frecventei si a simultaneitatii.2. Pentru o frecventa PWM de 22 kHz este destul de greu sa obti o rezolutie de 255 de pasi la 6 iesiri prin soft. Foarte pe scurt pentru calculul PMW ar fi urmatorul timp=(1/22.000)/6/255.3. Nu stiu ce vrei sa comanzi cu iesirile respective dar iti dau o idee, cam scumpa cei drept, fiecare iesire sa fie comandata de un PIC, iar toate PIC-urile sa fie comandate de un master PIC, iar legarea intre ele sa fie printr-o retea CAN. Asta ar presupune sa iei PIC care au periferie module CAN, de ex: PIC18F458 (parca nu este recomandat pentru proiecte noi) sau familia acestuia.

Link to comment

pai ideea e ca am o solutie mai usoara ca asta propusa de tine pot folosi 2 picuri cu 3 porturi CCP fiecare, dar ma gandeam ca pot face ceva mai simplu cu un fel de integrat special pt asa ceva care poate fi comandat prin i2c sau altceva... rezolutia de 8biti nu e batuta in cuie poate fi si mai mica 7biti dupa capabilitatile compilatorului (0-127). Frecventa in cazul asta ar fii 31,2khz...desigur as pute folosi 2 picuri care se interconecteaza prin i2c si am terminat dar asta inseamna 2 softuri... mai multe batai de cap...Vreau sa comand ventilatoate!

Link to comment

1. Vezi ca faci mereu o greseala; rezolutia (duty -ciclului) nu este data de compilatorul ci de frecventa PWM. De regula la PIC incepe de la 10 biti (0-1024), iar cele mai mari au chiar 12 biti. Deci cu cat vrei frecventa mai mare a PWM cu atat scade rezolutia (duty-ciclului) in biti. Asta nu inseamna ca rezolutia duty-ciclului la un bit este si satisfacatoare pentru orice aplicatie.2. Referirea mea, la 6 PIC+ 1 PIC, era pentru semnale perfect independente atat ca frecventa cat si a momentului de translatare dintr-o stare in alta.3. Vad ca insisti pe comunicatia I2C. Este mai rapida ca cea CAN? Ma referer la intreaga comunicatie cat si la siguranta in transmisie.4. Care este timpul de raspuns al sistemului de automatizare a ventilatoarelor?

Link to comment

Nu-s cu 4 fire, sunt numai cu 2 (ma rog, trei da' al treilea e iesirea cu indicatia de turatie), numai ca au in carcasa un circuit mic de comanda. Cel pe care l-am desfacut eu era cu http://www.micro-bridge.com/data/Feelin ... 276V01.pdf

De altfel, cred ca la ventilatoarele astea mici, de calculator, mai nou motoarele sunt niste variante mai slabute de steppere. Cu magnet permanent/dara perii sunt sigur.

Link to comment

pt puiu:am inteles chestia ca cu cat cresti frecventa scade rezolutia duty-cycle-lui asta am spus si anterior dar nu am lucrat asa mult cu pwm incat sa stiu cam care e rezolutia optima pt ~22khz, fracventa asta este pusa datorita bobinelor venturilor care sub fracventa asta au tendinta sa creeze sunet... daca nu te superi spunemi tu ca sa pot coordona 3 venturi folosind cele 3 porturi ccp ale unui pic la frecventa de 22khz ce rezolutie ar trebui sa folosesc? Timpul de raspuns nu e asa inportant... vreau sa construiesc un controler de venturi pt PC cu comanda prin USB... pt liviu: toate venturile au driver altfel nu pot functiona eu de cand am inceput cu pc-uri (acum ~8 ani) nu am vazut vent cu perii... controlerul acela de care pomenesti tu nu are treaba cu PWM care il aplici tu deoarece el pur si simplu "conduce" rotorul dupa tensiunea care este pe borne +/-, pwm-ul cu un duty-cycle de 50% la o tensiune de 12V va scoate 6V adica ventu se va invarti la 1/2 din rpm maxim (daca este linar), deci nu are treaba cu controlerul sau altceva, in plus venturile comandate de pe placa sunt comandate tot in pwm!

Link to comment

1. Asa cum am spus anterior frecventa PWM si rezolutia sunt intr-o interdependenta intre ele, iar frecventa PWM depinde la randul ei de frecventa oscilatorului (ma refer in cazul PIC). Astfel frecventa PWM este data de ecuatia 15-1 iar rezolutia de ecuatia 15-3. In tabelul 15-4 este data frecventa PWM si rezolutia maxima pentru PIC18F458 la frecventa de 40 MHz. Am dat exemplu PIC18F458 deoarece are si CAN desi stiu ca acum nu mai este recomandat, dar la fel se procedeaza si cu altul. Deci pentru a fi mai exact trebuie sa stiu ce PIC se foloseste si schema respectiva.2. La nivel de pricipiu, cele sase porturi PWM nu for fi sincrone, decat trei porturi( care sunt de la acelasi integrat) deoarece prin I2C se poate comanda doar un integrat odata. Se pare ca nu este o problema deoarece nu este critica sincronizarea porturilor.3. Eu as lucra cu frecventa cuprinsa intre 50 si 150 kHz, daca rezolutia este buna, chiar daca duty-ciclu variaza cu 2 sau mai multi biti, totul sa fie multumitor sub aspectul varierii debitului ventilatoarelor.

Link to comment

da am vazut formulele si am inteles care este situatia, problema este ca sunt si eu putin dat peste cap pentru ca nu stiu ce frecventa sa folosesc... o sa incerc sa fac un montaj simplu cu un MIC502 sa vad ce rezultate reusesc sa obtin variand frecventa de la 30 la 100 hz... daca este ok dupa ce voi ncerca asta voi stii exact e frecventa voi folosi. Cat despre frecventa de oscilatie a picului e sincronizata cu un ft232 astfel va fi la 12MHz as putea sa o schim dar nu ma chinui...

 

Apropo am gasit un integrat interesant care miar putea face mai usoara viata! uite aici

Link to comment
  • 3 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • 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