Orodha ya maudhui:

Udhibiti wa PWM wa DIY kwa Mashabiki wa PC: Hatua 12
Udhibiti wa PWM wa DIY kwa Mashabiki wa PC: Hatua 12

Video: Udhibiti wa PWM wa DIY kwa Mashabiki wa PC: Hatua 12

Video: Udhibiti wa PWM wa DIY kwa Mashabiki wa PC: Hatua 12
Video: НЕ ВЗДУМАЙ снимать аккумулятор с машины. Делай это ПРАВИЛЬНО ! 2024, Novemba
Anonim
Udhibiti wa PWM wa DIY kwa Mashabiki wa PC
Udhibiti wa PWM wa DIY kwa Mashabiki wa PC

Maagizo haya yanaelezea kujenga kidhibiti cha shabiki wa 12 V PC wa shabiki wa PWM. Ubunifu unaweza kudhibiti hadi mashabiki 16 wa kompyuta-3-pini. Ubunifu hutumia jozi ya Dialog GreenPAK ™ inayoweza kusanidiwa-ishara za IC ili kudhibiti mzunguko wa majukumu ya kila shabiki. Inajumuisha pia njia mbili za kubadilisha kasi ya shabiki:

a. na kificho cha quadrature / rotary

b. na programu tumizi ya Windows iliyojengwa katika C # inayowasiliana na GreenPAK kupitia I2C.

Hapo chini tulielezea hatua zinazohitajika kuelewa jinsi chip ya GreenPAK imesanidiwa kuunda udhibiti wa PWM kwa mashabiki wa PC. Walakini, ikiwa unataka tu kupata matokeo ya programu, pakua programu ya GreenPAK ili kuona Faili ya Ubunifu wa GreenPAK iliyokamilishwa tayari. Chomeka GreenPAK Development Kit kwenye kompyuta yako na hit program ili kuunda IC ya kawaida ya udhibiti wa PWM kwa mashabiki wa PC.

Hatua ya 1: Mchoro wa Kuzuia Mfumo

Mchoro wa Kuzuia Mfumo
Mchoro wa Kuzuia Mfumo

Hatua ya 2: SLG46108 Design Rotary Decoder

SLG46108 Ubunifu wa Decoder ya Rotary
SLG46108 Ubunifu wa Decoder ya Rotary
SLG46108 Ubunifu wa Decoder ya Rotary
SLG46108 Ubunifu wa Decoder ya Rotary
SLG46108 Ubunifu wa Decoder ya Rotary
SLG46108 Ubunifu wa Decoder ya Rotary

Encoder ya rotary hutumiwa kuongeza au kupunguza mzunguko wa ushuru wa mashabiki kwa mikono. Kifaa hiki hutoa mazao kwenye Channel A na matokeo ya Channel B ambayo ni 90 ° kando. Tazama AN-1101: Decoder ya Quadrature isiyofunikwa kwa habari zaidi juu ya jinsi encoder ya rotary inavyofanya kazi.

Decoder ya saa inayoweza kutengenezwa inaweza kuundwa kwa kutumia Dialog GreenPAK SLG46108 kusindika ishara za Channel A na Channel B na kuzitoa kama mapigo ya saa (CCW) na mapigo ya saa (CW).

Wakati Channel A inaongoza Channel B, muundo unatoa mapigo mafupi kwenye CW. Wakati Channel B inaongoza Channel A, inatoa mpigo mfupi kwa CCW

DFF tatu hulandanisha pembejeo ya Channel A na saa. Vivyo hivyo, kucheleweshwa kwa bomba na OUT0 iliyowekwa kwa DFF mbili na OUT1 iliyowekwa kwa DFF tatu huunda utendaji sawa kwa kituo B.

Kuunda matokeo ya CW na CCW tumia LUTs chache, kwa habari zaidi juu ya muundo huu wa kawaida wa skoda ya rotary, tembelea wavuti hii.

Decoder ya Rotary ya GreenPAK itapokea kunde za pembejeo A na B na kutoa kunde za CW na CCW kama inavyoonyeshwa kwenye Kielelezo 4.

Mzunguko baada ya milango ya XOR inahakikisha kuwa hakutakuwa na mapigo ya CW na CCW wakati huo huo, ikiruhusu kosa lolote na kisimbuzi cha rotary. Kucheleweshwa kwa makali ya ms 8 kwenye ishara za CW na CCW huwalazimisha kukaa juu kwa ms 8 pamoja na mzunguko wa saa moja, ambayo ni muhimu kwa mto SLG46826 GreenPAKs.

Hatua ya 3: Ubunifu wa Mdhibiti wa Shabiki wa SLG46826

Ubunifu wa Mdhibiti wa Shabiki wa SLG46826
Ubunifu wa Mdhibiti wa Shabiki wa SLG46826

Hatua ya 4: Kizazi cha PWM na Kaunta za Kukadiria

Kizazi cha PWM na Kaunta za Kukabiliana
Kizazi cha PWM na Kaunta za Kukabiliana
Kizazi cha PWM na Kaunta za Kukabiliana
Kizazi cha PWM na Kaunta za Kukabiliana

Jozi za kaunta za kukabiliana na kipindi kama hicho hutumiwa kutengeneza ishara ya PWM. Kaunta ya kwanza inaweka DFF, na ya pili inaiweka upya, ikitengeneza ishara thabiti ya mzunguko wa ushuru wa PWM kama inavyoonyeshwa kwenye Kielelezo 6 na Kielelezo 7.

CNT6 inaweka DFF10 na pato lililobadilishwa la CNT1 inarekebisha DFF10. Pini 18 na 19 hutumiwa kutoa ishara ya PWM kwa mizunguko ya nje

Hatua ya 5: Udhibiti wa Mzunguko wa Ushuru na sindano ya Saa na Kuruka kwa Saa

Udhibiti wa Mzunguko wa Ushuru na sindano ya Saa na Kuruka kwa Saa
Udhibiti wa Mzunguko wa Ushuru na sindano ya Saa na Kuruka kwa Saa
Udhibiti wa Mzunguko wa Ushuru na sindano ya Saa na Kuruka kwa Saa
Udhibiti wa Mzunguko wa Ushuru na sindano ya Saa na Kuruka kwa Saa

Kidhibiti cha shabiki hupokea ishara za CW na CCW kama pembejeo kutoka kwa dekoda ya rotary na hutumia kuongeza au kupunguza ishara ya PWM inayodhibiti kasi ya shabiki. Hii inafanikiwa na vifaa kadhaa vya mantiki za dijiti.

Mzunguko wa ushuru unahitaji kuongezeka wakati mapigo ya CW yanapokelewa. Hii inafanywa kwa kuingiza saa ya ziada kwenye kizuizi cha CNT6, na kuisababisha kutoa mzunguko wa saa moja mapema kuliko ingekuwa hivyo. Utaratibu huu umeonyeshwa kwenye Kielelezo 8.

CNT1 bado inawekwa saa kwa kiwango cha kila wakati, lakini CNT6 ina saa kadhaa za ziada zilizoingizwa. Kila wakati kuna saa ya ziada kwa kaunta, hubadilisha kipindi chake cha saa moja kwenda kushoto.

Kinyume chake, ili kupunguza mzunguko wa ushuru, ruka mapigo ya saa kwa CNT6 kama inavyoonyeshwa kwenye Mchoro 9. CNT1 bado inaangaziwa kwa kiwango cha kila wakati, na kuna vidonda vya saa za kuruka kwa CNT6, ambapo kaunta haikufungwa saa ilipotakiwa kwa. Kwa njia hii pato la CNT6 linasukumwa kulia kwa kipindi cha saa moja kwa wakati, kufupisha mzunguko wa ushuru wa PWM.

Uingiliaji wa saa na utendaji wa kuruka saa hufanywa kwa kutumia vitu kadhaa vya mantiki za dijiti ndani ya GreenPAK. Jozi ya vizuizi vya multifunction hutumiwa kuunda jozi ya kontena za latch / makali ya kichunguzi. 4-bit LUT0 hutumiwa ku-mux kati ya ishara ya jumla ya saa (CLK / 8) na sindano ya saa au ishara za kuruka saa. Utendaji huu umeelezewa kwa undani zaidi katika Hatua ya 7.

Hatua ya 6: Ingizo la kifungo

Ingizo la kifungo
Ingizo la kifungo

Uingizaji wa BUTTON umefutwa kwa ms 20, kisha hutumika kubadilisha latch ambayo huamua ikiwa chip hii imechaguliwa. Ikiwa imechaguliwa, basi 4-bit LUT hupita saa ya kuruka au ishara za sindano. Ikiwa chip haijachaguliwa, basi 4-bit LUT hupitisha tu ishara ya CLK / 8.

Hatua ya 7: Kuzuia Mzunguko wa Ushuru

Kuzuia Mzunguko wa Ushuru
Kuzuia Mzunguko wa Ushuru
Kuzuia Mzunguko wa Ushuru
Kuzuia Mzunguko wa Ushuru
Kuzuia Mzunguko wa Ushuru
Kuzuia Mzunguko wa Ushuru

RS latches 3-bit LUT5 na 3-bit LUT3 hutumiwa kuhakikisha kuwa huwezi kuingiza au kuruka saa nyingi sana ambazo kaunta za kukabiliana zinavingirishwa. Hii ni kuzuia mfumo kufikia mzunguko wa ushuru wa 100% na kisha kusonga hadi mzunguko wa ushuru wa 1% ikiwa inapokea saa nyingine iliyoingizwa.

Vipimo vya RS vinazuia hii kutokea kwa kufunga pembejeo kwenye vizuizi vya multifunction wakati mfumo ni mzunguko wa saa moja mbali na kuzunguka. Jozi ya DFF huchelewesha ishara za PWM_SET na PWM_nRST kwa saa moja kama inavyoonekana kwenye Kielelezo 11.

Jozi ya LUTs hutumiwa kuunda mantiki inayofaa. Ikiwa mzunguko wa ushuru uko chini sana hivi kwamba ishara ya PWM_SET iliyocheleweshwa hufanyika wakati huo huo kama ishara ya PWM_nRST, kupungua zaidi kwa mzunguko wa wajibu kutasababisha kutembeza.

Vivyo hivyo, ikiwa inakaribia mzunguko wa kiwango cha juu cha ushuru, kama kwamba ishara ya PWM_nRST iliyochelewa hufanyika wakati huo huo kama ishara ya PWM_SET, inahitajika kuzuia ongezeko lolote zaidi kwa mzunguko wa ushuru. Katika hali hii, uchelewesha ishara ya nRST na mizunguko miwili ya saa ili kuhakikisha kuwa mfumo hauzunguki kutoka 99% hadi 1%.

Hatua ya 8: Udhibiti wa Mzunguko wa Ushuru na I2C

Udhibiti wa Mzunguko wa Ushuru na I2C
Udhibiti wa Mzunguko wa Ushuru na I2C
Udhibiti wa Mzunguko wa Ushuru na I2C
Udhibiti wa Mzunguko wa Ushuru na I2C
Udhibiti wa Mzunguko wa Ushuru na I2C
Udhibiti wa Mzunguko wa Ushuru na I2C

Ubunifu huu unajumuisha njia nyingine ya kudhibiti mzunguko wa ushuru zaidi ya kuruka saa / sindano ya saa. Mdhibiti mdogo wa nje anaweza kutumiwa kuandika amri za I2C kwa GreenPAK ili kuweka mzunguko wa ushuru.

Kudhibiti mzunguko wa ushuru juu ya I2C inahitaji mtawala kufanya mlolongo maalum wa amri. Amri hizi zinaonyeshwa kwa mpangilio katika Jedwali 1. "x" inaonyesha kidogo ambayo haipaswi kubadilika, "[" inaonyesha ANZA kidogo, na "]" inaonyesha STOP kidogo

Kizuizi cha PDLY kinazalisha mapigo mafupi ya juu ya kazi kwenye makali ya kuanguka kwa ishara ya CLK / 8, inayoitwa! CLK / 8. Ishara hiyo hutumiwa kutazama DFF14 kwa masafa thabiti. Wakati I2C_SET inakwenda juu asynchronously, ukingo unaofuata wa! CLK / 8 husababisha DFF14 kutoa HIGH, ambayo inasababisha CNT5 OneShot. OneShot inaendesha idadi ya mizunguko ya saa ambayo mtumiaji aliandika kama ilivyoainishwa katika amri ya "Andika kwa CNT5" I2C katika Jedwali 1. Katika kesi hii, ni mizunguko ya saa 10. OneShot inaruhusu oscillator ya 25 MHz kukimbia kwa muda wake kabisa na sio tena, ili 3-bit LUT0 ipokee idadi ya mizunguko ya saa iliyoandikiwa CNT5.

Kielelezo 15 kinaonyesha ishara hizi, ambapo saa nyekundu ni zile zinazotumwa kwa 3-bit LUT0, ambayo hupitisha kwa CNT6 (kaunta ya PWM_SET), na hivyo kutengeneza malipo kwa kizazi cha mzunguko wa ushuru.

Hatua ya 9: Kusoma kwa Tachometer

Kusoma kwa Tachometer
Kusoma kwa Tachometer
Kusoma kwa Tachometer
Kusoma kwa Tachometer

Ikiwa inataka, mtumiaji anaweza kusoma thamani ya tachometer juu ya I2C ili kufuatilia jinsi shabiki anavyogeuka haraka kwa kusoma dhamana ya CNT2. CNT2 inaongezwa kila wakati ACMP0H ina kingo inayoinuka, na inaweza kusanidiwa upya na amri ya I2C. Kumbuka kuwa hii ni huduma ya hiari, na kizingiti cha ACMP0H kitahitaji kurekebishwa kulingana na uainishaji wa shabiki fulani anayetumiwa.

Hatua ya 10: Ubunifu wa Mzunguko wa Nje

Ubunifu wa Mzunguko wa Nje
Ubunifu wa Mzunguko wa Nje

Mzunguko wa nje ni rahisi. Kuna kitufe cha kushinikiza kilichounganishwa na Pin6 ya GreenPAK kugeuza ikiwa kifaa hiki kimechaguliwa kwa udhibiti wa rotary, na LED iliyounganishwa na Pin12 na Pin13 kuonyesha wakati kifaa kinachaguliwa.

Kwa kuwa shabiki anaendesha 12 V, jozi ya FET kudhibiti ubadilishaji wake inahitajika. Pin18 na Pin19 ya GreenPAK inaendesha nFET. Wakati nFET imewashwa, inavuta lango la pFET LOW, ambayo inaunganisha shabiki hadi + 12 V. Wakati nFET imezimwa, lango la PFET linavutwa na kipinga 1 kΩ, ambacho hukata shabiki kutoka +12 V.

Hatua ya 11: Ubunifu wa PCB

Ubunifu wa PCB
Ubunifu wa PCB

Kwa mfano wa muundo wa PCB kadhaa zilikusanywa. PCB kushoto ni "Mdhibiti wa Shabiki," ambayo huweka encoder ya rotary, 12 V jack, SLG46108 GreenPAK, na viunganisho vya FT232H USB hadi bodi ya kuzuka ya I2C. Pcb mbili za kulia ni "Bodi za Mashabiki," ambazo zina SLG46826 GreenPAKs, vifungo vya kushinikiza, swichi, LEDs, na vichwa vya shabiki.

Kila Bodi ya Mashabiki ina kichwa cha kiume kilichofunikwa upande wa kushoto na kichwa cha kike upande wa kulia ili waweze kufungwa minyororo pamoja. Kila Bodi ya Mashabiki inaweza kujazwa na rasilimali kudhibiti kujitegemea mashabiki wawili.

Hatua ya 12: C # Maombi

C # Maombi
C # Maombi

Programu ya C # iliandikwa ili kuunganishwa na Bodi za Mashabiki kupitia daraja la FT232H USB-I2C. Programu tumizi hii inaweza kutumika kurekebisha masafa ya kila shabiki na amri za I2C ambazo zimetengenezwa na programu tumizi.

Maombi hupiga anwani zote 16 za I2C mara moja kwa sekunde na hujaza GUI na anwani za watumwa ambazo zipo. Katika mfano huu Shabiki 1 (anwani ya mtumwa 0001) na Shabiki 3 (anwani ya mtumwa 0011) iliyounganishwa na bodi. Marekebisho ya mzunguko wa ushuru wa kila shabiki mmoja mmoja yanaweza kufanywa kwa kusogeza upau wa kutelezesha au kwa kuchapa thamani kutoka 0-256 kwenye kisanduku cha maandishi chini ya upau wa kutelezesha.

Hitimisho

Kutumia muundo huu inawezekana kudhibiti hadi mashabiki 16 (kwani kuna anwani 16 za watumwa za I2C) ama na encoder ya kuzunguka au na programu ya C #. Imeonyeshwa jinsi ya kutengeneza ishara ya PWM na kaunta za kukabiliana, na jinsi ya kuongeza na kupunguza mzunguko wa ushuru wa ishara hiyo bila rollover.

Ilipendekeza: