Kazalo:
- Korak: Diagram sistemskega bloka
- 2. korak: Zasnova rotacijskega dekoderja SLG46108
- 3. korak: Zasnova krmilnika ventilatorja SLG46826
- 4. korak: Generacija PWM z odmičnimi števci
- 5. korak: Nadzor delovnega cikla z vbrizgavanjem ure in preskakovanjem ure
- 6. korak: Vnos tipke
- 7. korak: Preprečevanje prevračanja delovnega cikla
- 8. korak: Nadzor delovnega cikla z I2C
- 9. korak: Odčitavanje števca vrtljajev
- 10. korak: Zasnova zunanjega vezja
- 11. korak: Oblikovanje PCB -ja
- 12. korak: Aplikacija C#
Video: Samodejno upravljanje s PWM za ljubitelje osebnih računalnikov: 12 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Ta navodila opisujejo izdelavo popolnoma opremljenega 12-voltnega PWM krmilnika za računalniški ventilator. Zasnova lahko nadzoruje do 16 3-polnih računalniških ventilatorjev. Zasnova uporablja par diagramov mešanega signala, ki jih je mogoče konfigurirati Dialog GreenPAK ™ za nadzor delovnega cikla vsakega ventilatorja. Vključuje tudi dva načina za spreminjanje hitrosti ventilatorja:
a. s kvadraturnim/vrtljivim dajalnikom
b. z vgrajeno aplikacijo Windows v C#, ki komunicira z GreenPAK -om prek I2C.
Spodaj smo opisali potrebne korake za razumevanje, kako je bil čip GreenPAK programiran za ustvarjanje krmiljenja PWM za ljubitelje osebnih računalnikov. Če pa želite samo doseči rezultat programiranja, prenesite programsko opremo GreenPAK, če si želite ogledati že dokončano oblikovalsko datoteko GreenPAK. Priključite razvojni komplet GreenPAK v računalnik in pritisnite hitri program, da ustvarite IC po meri za krmiljenje PWM za ljubitelje računalnikov.
Korak: Diagram sistemskega bloka
2. korak: Zasnova rotacijskega dekoderja SLG46108
Ročni dajalnik se uporablja za ročno povečanje ali zmanjšanje obratovalnega cikla ventilatorjev. Ta naprava oddaja impulze na svojih izhodih kanala A in B, ki sta 90 ° narazen. Za več informacij o delovanju rotacijskega dajalnika glejte AN-1101: Odklenjen kvadraturni dekoder.
Rotacijski dekodirnik s taktom lahko ustvarite s pomočjo Dialog GreenPAK SLG46108 za obdelavo signalov kanala A in kanala B ter jih oddaja kot impulze v nasprotni smeri urinega kazalca (CCW) in v smeri urinega kazalca (CW).
Ko kanal A vodi kanal B, zasnova odda kratki impulz na CW. Ko kanal B vodi kanal A, odda kratek impulz na CCW
Trije DFF -ji sinhronizirajo vhod kanala A z uro. Podobno zakasnitev cevi z OUT0 nastavljeno na dva DFF in OUT1 na tri DFF ustvarja enako funkcijo za kanal B.
Če želite ustvariti izhode CW in CCW, uporabite nekaj LUT -ov, za več informacij o tem standardnem zasnovi rotacijskega dekoderja obiščite to spletno stran.
Rotacijski dekoder GreenPAK bo sprejemal vhodne impulze A in B ter oddajal CW in CCW impulze, kot je prikazano na sliki 4.
Vezje po vratih XOR zagotavlja, da nikoli ne bo prišlo do CW in CCW impulza hkrati, kar omogoča kakršno koli napako z vrtljivim dajalnikom. 8 ms zakasnitev padajočega roba signalov CW in CCW jih prisili, da ostanejo visoki 8 ms plus en cikel ure, kar je potrebno za spodnje tokove SLG46826 GreenPAK.
3. korak: Zasnova krmilnika ventilatorja SLG46826
4. korak: Generacija PWM z odmičnimi števci
Par offset števcev z istim obdobjem se uporablja za generiranje PWM signala. Prvi števec nastavi DFF, drugi pa ga ponastavi in ustvari skladen signal PWM delovnega cikla, kot je prikazano na slikah 6 in 7.
CNT6 nastavi DFF10, obrnjeni izhod CNT1 pa ponastavi DFF10. Zatiči 18 in 19 se uporabljajo za oddajanje signala PWM v zunanje vezje
5. korak: Nadzor delovnega cikla z vbrizgavanjem ure in preskakovanjem ure
Krmilnik ventilatorja sprejema signale CW in CCW kot vhodne podatke iz vrtljivega dekoderja in jih uporablja za povečanje ali zmanjšanje signala PWM, ki nadzoruje hitrost ventilatorja. To dosežemo z več digitalnimi logičnimi komponentami.
Delovni cikel se mora povečati, ko je prejet CW impulz. To se naredi z vbrizgavanjem dodatnega urnega impulza v blok CNT6, zaradi česar ta odda en cikel ure prej, kot bi sicer. Ta postopek je prikazan na sliki 8.
CNT1 se še vedno konstantno ureja, vendar ima CNT6 vstavljenih nekaj dodatnih ur. Vsakič, ko je na števcu dodatna ura, premakne izhod za eno uro v levo.
Nasprotno, če želite zmanjšati obratovalni cikel, preskočite urni impulz za CNT6, kot je prikazano na sliki 9. CNT1 se še vedno ureja s konstantno hitrostjo, preskočeni pa so tudi impulzi ure za CNT6, kjer števec ni deloval, ko naj bi bil do. Na ta način se izhod CNT6 potisne v desno za eno časovno obdobje naenkrat, kar skrajša izhodni delovni cikel PWM.
Funkcija vbrizgavanja ure in preskakovanja ure se izvaja z uporabo nekaterih digitalnih logičnih elementov v GreenPAK -u. Par večfunkcijskih blokov se uporablja za ustvarjanje dveh kombinacij detektor za zapah/rob. 4-bitni LUT0 se uporablja za povezovanje med splošnim signalom ure (CLK/8) in signali za vbrizgavanje ure ali preskakovanjem ure. Ta funkcija je podrobneje opisana v 7. koraku.
6. korak: Vnos tipke
Vhod BUTTON se odklopi za 20 ms, nato pa se uporabi za preklop ključavnice, ki določa, ali je izbran ta čip. Če je izbrana, potem 4-bitni LUT posreduje signale preskakovanja ali vbrizgavanja ure. Če čip ni izbran, potem 4-bitni LUT preprosto posreduje signal CLK/8.
7. korak: Preprečevanje prevračanja delovnega cikla
RS-zapahi 3-bitnega LUT5 in 3-bitnega LUT3 se uporabljajo za zagotovitev, da ne morete vnesti ali preskočiti toliko ur, da se števci zamikov prevrnejo. S tem se izognemo doseganju 100 % obratovalnega cikla in nato preklopu na 1 % obratovalni cikel, če prejme drugo vbrizgano uro.
Zapahi RS preprečujejo, da bi se to zgodilo, tako da vhode v večfunkcijske bloke zapahnejo, ko je sistem oddaljen eno uro od prevračanja. Par DFF -jev zamika signala PWM_SET in PWM_nRST za eno časovno obdobje, kot je prikazano na sliki 11.
Par LUT -ov se uporablja za ustvarjanje potrebne logike. Če je obratovalni cikel tako nizek, da se zakasnjeni signal PWM_SET pojavi hkrati s signalom PWM_nRST, bo nadaljnje zmanjšanje delovnega cikla povzročilo prevračanje.
Podobno, če se približujete največjemu delovnemu ciklu, tako da se zakasnjeni signal PWM_nRST pojavi hkrati s signalom PWM_SET, se je treba izogniti nadaljnjemu povečanju delovnega cikla. V tem primeru zakasnite signal nRST za dva cikla ure, da zagotovite, da se sistem ne prevrne z 99 % na 1 %.
8. korak: Nadzor delovnega cikla z I2C
Ta zasnova vključuje drug način za nadzor delovnega cikla, razen preskakovanja ure/vbrizgavanja ure. Zunanji mikrokrmilnik lahko uporabite za pisanje ukazov I2C v GreenPAK za nastavitev delovnega cikla.
Nadzor delovnega cikla prek I2C zahteva, da krmilnik izvede določeno zaporedje ukazov. Ti ukazi so prikazani po vrstnem redu v tabeli 1. "x" označuje bit, ki se ne sme spremeniti, "[" označuje bit START, "]" pa bit STOP
Blok PDLY generira kratek aktivni visok impulz na padajočem robu signala CLK/8, ki se imenuje! CLK/8. Ta signal se uporablja za enakomerno frekvenco DFF14. Ko gre I2C_SET visoko asinhrono, naslednji naraščajoči rob! CLK/8 povzroči, da DFF14 odda HIGH, kar sproži CNT5 OneShot. OneShot teče za število ciklov ure, ki jih je uporabnik zapisal, kot je določeno v ukazu "Write to CNT5" I2C v tabeli 1. V tem primeru je to 10 ciklov ure. OneShot omogoča, da oscilator 25 MHz deluje točno toliko časa in ne več, tako da 3-bitni LUT0 prejme število ciklov ure, zapisanih v CNT5.
Slika 15 prikazuje te signale, pri katerih so rdeče ure tiste, ki se pošiljajo v 3-bitni LUT0, ki jih posreduje v CNT6 (števec PWM_SET), s čimer se ustvari odmik za ustvarjanje delovnega cikla.
9. korak: Odčitavanje števca vrtljajev
Po želji lahko uporabnik prebere vrednost merilnika vrtljajev preko I2C in s pomočjo vrednosti CNT2 spremlja, kako hitro se ventilator obrača. CNT2 se poveča vsakič, ko ima ACMP0H naraščajoč rob, in ga lahko asinhrono ponastavimo z ukazom I2C. Upoštevajte, da je to neobvezna funkcija, zato bo treba prag ACMP0H prilagoditi glede na specifikacije določenega ventilatorja, ki se uporablja.
10. korak: Zasnova zunanjega vezja
Zunanje vezje je dokaj preprosto. Na Pin6 GreenPAK -a je povezan gumb za preklop, ali je ta naprava izbrana za vrtljivo krmiljenje, in LED, priključena na Pin12 in Pin13, ki označuje, kdaj je naprava izbrana.
Ker ventilator deluje od 12 V, je za nadzor njegovega preklopa potreben par FET -ov. Pin18 in Pin19 GreenPAK -a poganjata nFET. Ko je nFET vklopljen, potegne vrata pFET LOW, ki poveže ventilator na +12 V. Ko je nFET izklopljen, vrata PFET potegne navzgor 1 kΩ upor, ki odklopi ventilator od +12 V.
11. korak: Oblikovanje PCB -ja
Za izdelavo prototipa je bilo sestavljenih nekaj PCB -jev. PCB na levi strani je "Fan Controller", v katerem so vrtljivi dajalnik, 12 V priključek, SLG46108 GreenPAK in priključki za odklopno ploščo FT232H USB v I2C. Dva tiskana vezja na desni sta "ventilatorski plošči", ki vsebujeta SLG46826 GreenPAK, tipke, stikala, LED in glave ventilatorjev.
Vsaka plošča oboževalcev ima na levi strani zavite moške glave, na desni pa ženske, tako da jih je mogoče skupaj z marjeticami vezati. Vsako ploščo oboževalcev lahko napolnite z viri za neodvisno upravljanje dveh ventilatorjev.
12. korak: Aplikacija C#
Aplikacija C# je bila napisana za vmesnik z ventilatorskimi ploščami preko mostu USB-I2C FT232H. S to aplikacijo lahko nastavite frekvenco vsakega ventilatorja z ukazi I2C, ki jih ustvari aplikacija.
Aplikacija enkrat na sekundo pokliče vseh 16 naslovov I2C in GUI napolni s prisotnimi podrejenimi naslovi. V tem primeru sta ventilator 1 (pomožni naslov 0001) in ventilator 3 (pomožni naslov 0011) priključena na ploščo. Delovni cikel vsakega ventilatorja posebej lahko prilagodite tako, da premaknete drsnik ali vnesete vrednost od 0-256 v polje za besedilo pod drsnikom.
Sklepi
S to zasnovo je mogoče neodvisno krmiliti do 16 ventilatorjev (saj obstaja 16 možnih podrejenih naslovov I2C) bodisi z vrtljivim dajalnikom bodisi z aplikacijo C#. Dokazano je bilo, kako s parom zamikov števcev generirati signal PWM in kako povečati in zmanjšati delovni cikel tega signala brez prevračanja.
Priporočena:
Zgradite zapisovalnik osebnih dejavnosti: 6 korakov
Zgradite zapisovalnik osebnih dejavnosti: Moj prijatelj iz Londona Paul je želel najti način za sledenje njegove hrane, dejavnosti in lokacije na eni sami nadzorni plošči. Takrat je prišel na idejo, da bi ustvaril preprost spletni obrazec, ki bi podatke pošiljal na nadzorno ploščo. Spletni obrazec bi postavil kot
Delovna postaja elektronike za ljubitelje - Estação De Trabalho Para Entusiastas Em Eletrônica: 10 korakov
Delovna postaja za elektroniko za ljubitelje - Estação De Trabalho Para Entusiastas Em Eletrônica: Lector Leather and Electronics Hobbyist V tem navodilu predstavljam konstrukcijo delovne postaje za ljubitelje elektronike, postaja vsebuje skupna orodja in podpore za delo z elektronskimi vezji: vrtljivi nosilec za tiskane ci
Enostavno samodejno in brezplačno samodejno in brezplačno dodajte Google Zemljevide v svoje Google Preglednice: 6 korakov
Preprosto samodejno in brezplačno dodajte Google Zemljevide v svoje Google Preglednice: tako kot mnogi ustvarjalci sem zgradil nekaj projektov za sledenje GPS. Danes si bomo lahko hitro predstavili GPS točke naravnost v Google Preglednicah brez uporabe zunanjega spletnega mesta ali API -ja. Najboljše od vsega je BREZPLAČNO
Robot Gong: Ultimate Hackaton projektna zamisel za prodajalce in ljubitelje izdelkov (kodiranje ni potrebno): 17 korakov (s slikami)
Robot Gong: Ultimate Hackaton Project Idea for Sales and Product Geeks (kodiranje ni potrebno): Zgradimo robotski glasbeni gong, ki ga sproži e -pošta. To vam omogoča, da nastavite samodejna opozorila po e -pošti, da izklopite gong … (prek SalesForce, Trello, Basecamp …) Vaša ekipa nikoli več ne bo pozabila " GONGGG " ko izide nova koda, de
Naredite PC -je za ljubitelje s profesionalnimi orodji CAD s spreminjanjem " pravil oblikovanja ": 15 korakov (s slikami)
Ustvarite hobistične tiskane vezje s profesionalnimi orodji CAD s spreminjanjem " pravil oblikovanja " Tukaj je nekaj nasvetov za njihovo uporabo v oblikovalskih deskah, ki za njihovo dejansko izdelavo ne potrebujejo profesionalnega izdelovalca