Orodha ya maudhui:
- Hatua ya 1: Idara ya masafa ya dijiti
- Hatua ya 2: Vifaa vya vifaa vinavyopendekezwa
- Hatua ya 3: Mzunguko
- Hatua ya 4: Kanuni na Kupima masafa ya chini
Video: Jinsi ya Kupima Mzunguko wa Juu na Mzunguko wa Ushuru, Sambamba, Kutumia Microcontroller .: 4 Hatua
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:52
Najua unachofikiria: "Hu? Kuna mengi ya Maagizo juu ya jinsi ya kutumia watawala wadogo kupima kipimo cha ishara. Alfajiri." Lakini subiri, kuna riwaya katika hii: Ninaelezea njia ya kupima masafa ya juu sana kuliko microcontroller (MCU) inayoweza kubeba na mzunguko wa jukumu la ishara - zote kwa wakati mmoja!
Masafa ya kifaa huanzia ~ 43 Hz hadi ~ 450 kHz, wakati mzunguko wa ushuru unatoka 1% hadi 99%.
Acha nieleze sehemu "inaweza kubeba": kipindi cha hatua za MCU za ishara ya mawimbi ya mraba, T, kwa kufuatilia muda kati ya hafla mbili za baadaye za mpito. Kwa mfano, voltage ya chini hadi juu inaruka kwenye moja ya pini zake za I / O. Inafanya hivyo kwa kuhesabu idadi ya kunde za saa yake ya ndani. Kwa ujinga, kikomo cha juu cha masafa ya kipimo kinapaswa kutii nadharia ya sampuli ya Nyqvist-Shannon; i.e., ingekuwa sawa na nusu ya masafa ya saa za MCU. Kwa kweli kikomo ni cha chini sana, kwa sababu MCU inapaswa kutekeleza nambari ya kushughulikia usumbufu, kuokoa anuwai, kufanya shughuli za hesabu, kuonyesha matokeo, nk. Katika majaribio yangu na 48 MHz MCU idadi ndogo ya mizunguko ya saa kati ya mabadiliko yanayoweza kupimika ilikuwa karibu 106. Kwa hivyo, kikomo cha juu cha masafa ya kupimika katika kesi hii itakuwa 48, 000/212/2 = 226.4 kHz.
Wakati MCU inapima kipindi cha ishara, inaweza pia kuamua upana wa kunde, P: wakati wa voltage ya ishara iliyobaki juu. Kwa maneno mengine, wakati kati ya mabadiliko ya chini-hadi-juu na ya chini-chini. Mzunguko wa wajibu wa ishara basi hufafanuliwa kama asilimia ifuatayo:
Wajibu = 100% * P / T.
Kama ilivyo katika masafa, kuna kikomo cha vitendo juu ya upana wa kunde. Kutumia mfano hapo juu, mizunguko ya saa 106 itapunguza upana wa kunde hadi chini ya microseconds 2.21. Au, si chini ya 50% kwa 226.4 kHz.
Njia mojawapo ya kuongeza kikomo cha juu cha masafa ya mawimbi ya mraba ni matumizi ya wagawanyaji wa dijiti ambao hutumia visanduku. Kugawanya masafa ya pembejeo na n kutapanua anuwai inayopimika ya juu n mara. Hii ni habari njema, wagawanyaji wa dijiti wana kasoro moja ya kimsingi: ishara iliyogawanyika inapoteza upana wa mapigo (na mzunguko wa ushuru) habari! Kwa sababu ya jinsi wagawanyaji wanavyofanya kazi, pato lao huwa na mzunguko wa ushuru wa 50%. Bummer…
Katika kurasa zifuatazo, hata hivyo, nitaonyesha jinsi ya kugawanya masafa ya dijiti na kuhifadhi upana wa asili wa kunde kuniruhusu kupima ishara zaidi ya mipaka iliyowekwa na kuhesabu moja kwa moja.
Hatua ya 1: Idara ya masafa ya dijiti
Wagawanyaji wa jadi wa masafa ya dijiti hutumia flip-flops; mafunzo haya yanaelezea vizuri kanuni za jinsi ya kujenga wagawanyiko kwa kutumia flip-flops za kawaida za JK. Hii inasuluhisha shida ya masafa ya kuingiza juu sana kwa MCU, lakini ina shida kubwa: ishara iliyogawanyika ina mzunguko wa ushuru wa 50% bila kujali jukumu la ishara ya pembejeo! Kuona ni kwa nini iko kesi angalia takwimu mbili za kwanza. Ishara ya asili na kipindi T na upana wa kunde P huingizwa ndani ya pini ya saa ya flip-flop ya JK wakati pini zake za J na K zinashikiliwa juu kila wakati (takwimu ya kwanza). Mantiki ya 3.3V inadhaniwa kote. Wacha tufikirie kwamba flip-flop inasababishwa na kando (yaani, kuongezeka) kwa saa. Chini ya hali hizi, mabadiliko ya hali ya pini ya pato (mtu binafsi "flips" na "flops") hufanyika kila wakati pini ya saa inakwenda kutoka chini hadi juu. Saa ya juu hadi mpito ya chini (yaani, makali hasi) hupuuzwa kabisa. Tazama takwimu ya pili. Pini ya pato, Q, hutoa ishara ambayo kipindi chake ni mara mbili zaidi ya kipindi cha asili, i.e., mzunguko ni nusu. Upana wa pigo la pato daima ni sawa na T. Kwa hivyo, upana wa asili wa kunde, P, unapotea.
Kuongeza flip-flop nyingine ya JK katika usanidi ulioonyeshwa kwenye takwimu ya tatu hugawanya masafa ya asili na 4. Kuongeza vitambaa zaidi kwa njia ile ile inayogawanya masafa na nguvu zinazofuata za 2: 8, 16, 32, nk.
Shida: jinsi ya kugawanya masafa ya wimbi la mraba wakati ukihifadhi upana wa kunde?
Wazo ni kuongeza vizuri makali hasi yaliyosababisha JK flip-flop kwenye mchanganyiko. Wacha tuiite "Neg FF"; angalia sura ya nne. Hapa, "vizuri" inamaanisha kuwa pini za J na K za flip-flop mpya zimefungwa kwenye pini za Q na Qbar, mtawaliwa, ya mgawanyiko-na-4 ("Pos FF") iliyoonyeshwa kwenye takwimu iliyopita. (Hapa, "bar" ni mwamba ulio juu ya alama ya Q inayoonyesha kukanusha kimantiki.) Kuona ni nini inafanikiwa angalia meza ya kazi ya "Neg FF" katika sura ya tano: pini za pato la Neg, Q na Qbar, kioo hali ya pini zake za kuingiza, J na K, mtawaliwa. Maana yake wanaonyesha hali ya Pos 'Q na Qbar. Lakini, hatua ya flip-flop ya Neg inapaswa kusubiri makali hasi ya ishara ya asili, ambayo inafika kwa wakati P baada ya makali mazuri. Aha!
Mabadiliko ya mawimbi yanayotokana yanaonyeshwa kwenye sura ya sita. Ishara ya matokeo ya "Pos Q" kwa 1/4 frequency, "Pos Qbar" inverse, "Neg Q" inafuata "Pos Q" iliyohamishwa na upana wa kunde P, na "Neg Qbar" ni inverse yake. Unaweza kuthibitisha kuwa mantiki NA ya "Pos Qbar" na "Neg Q" hutoa treni ya kunde inayojulikana na upana wa asili wa kunde P na 1/4 masafa. Bingo!
Mwanzoni nilitumia ishara hii ya pato kulisha MCU. Walakini, ilibadilika kuwa shida kwa upana mfupi sana wa kunde kwa sababu ya upeo wa mizunguko ya 106 ya MCU iliyotajwa katika Utangulizi. Nimetatua shida hii ndogo kwa kuokota pato lingine: "Pos Qbar" NA "Neg Qbar" badala yake. Kuangalia moja tu kwa maumbo ya mawimbi inapaswa kukusadikisha kwamba upana wa kunde wa umbo hili la mawimbi, P ', hutofautiana kati ya T na 2T badala ya (0, T) masafa ya P. P inaweza kupatikana kwa urahisi kutoka kwa P' na:
P = 2T - P '
Hatua ya 2: Vifaa vya vifaa vinavyopendekezwa
Ninampenda sana yule jamaa mpya kwa watendaji wa elektroniki: Atmel SAM D21 MCUs kulingana na processor ya 32-bit ARM Cortex M0 + inayofanya kazi kwa kiwango cha saa 48 MHz, juu zaidi kuliko Atmels wakubwa. Kwa mradi huu nilinunua:
- Bodi ya ItsyBitsy M0 Express MCU kutoka Adafruit
- Nilikuwa na betri ya LiPo inayoweza kuchajiwa kutoka Adafruit
- Onyesho la Monochrome 128x32 SPI OLED (ulikisia: Adafruit)
- Dual-makali-yalisababisha JK flip-flop SN74HC109 kutoka Texas Instruments
- Dual-makali-yalisababisha JK flip-flop SN74HC112 kutoka Texas Instruments
- Quadruple NA lango CD74AC08E kutoka Vyombo vya Texas
- Quadruple AU lango CD74AC32E kutoka Vyombo vya Texas
Hatua ya 3: Mzunguko
Takwimu ya kwanza inaonyesha muundo rahisi wa mita / mzunguko wa ushuru. Mantiki ya 3.3 V CMOS inachukuliwa kote. Kwa hivyo, urefu wa wimbi la mraba wa pembejeo lazima iwe kati ya V inayolinganaIH kiwango (i.e., 2 V) na 3.3 V. Ikiwa sio hivyo, unahitaji kuipandisha juu au chini ipasavyo. Katika hali nyingi mgawanyiko rahisi wa voltage ungetosha. Ikiwa unataka kubuni toleo lako la mita kwa kiwango tofauti cha mantiki, basi lazima utumie mtawala mwingine mdogo (MCU), betri, na onyesho linalofanya kazi kwa kiwango unachotaka. Milango ya mantiki na vitambaa vilivyotumika katika mradi huu hufanya kazi na viwango vya mantiki popote kati ya 2 V na 6 V na inapaswa kuwa sawa katika hali nyingi.
Kama inavyoonyeshwa, ItsyBitsy MCU inatumia pini 9-13 kuwasiliana na onyesho kupitia itifaki ya programu ya SPI. Pini ya 3V inatoa nguvu kwa mzunguko mzima. Pini ya pembejeo ya dijiti 3 inakubali ishara iliyochambuliwa, wakati pini 2 na 4 zinadhibiti chanzo cha ishara: ama ishara ya moja kwa moja inayokuja kupitia lango AND3 (masafa ya kuingiza chini), au ishara iliyogawanywa na 4 kupitia lango AND4 (masafa ya pembejeo ya juu) kama ilivyoelezewa katika Hatua ya 2 Nambari hiyo, iliyojadiliwa katika hatua inayofuata, hugundua kiotomatiki masafa yanayoingia na inabadilisha ipasavyo chanzo cha ishara.
Mpangilio hauonyeshi ugumu wa kweli wa unganisho la chip za dijiti. Picha ya pili inaonyesha jinsi mradi huo ungeonekana kwenye ubao wa mkate. Ishara ya kuingiza huja kupitia waya mwekundu kwa pini ya 2CLK ya makali mawili mazuri ya flip-flop. Tahadhari: Kwa kawaida, pini zote za J na K za flip-flop zinapaswa kushikwa juu, lakini SN74HC109 haswa inaweka pini ya Kbar - pini ya K iliyogeuzwa - badala yake. Kwa hivyo, pini hii lazima iwe msingi! Flip-flop ya kwanza hasi katika SN74HC112 ina pini yake ya 1K na 1J iliyounganishwa na pini za 1Q na 1Qbar za SN74HC109. Flip-flop ya pili katika SN74HC112 haitumiki na pini zake za kuingiza (2K, 2J, 2CLRbar) zimewekwa chini. Pini zingine zote za ziada PREbar (iliyowekwa mapema) na CLRbar (wazi) katika vitambaa vyote lazima ziunganishwe na hali ya juu ya kimantiki. Pini za saa na pato zisizotumika hazijaunganishwa. Vivyo hivyo, pini za pembejeo ambazo hazijatumiwa katika milango yote zimewekwa chini, wakati pini zisizotumiwa za pato zimeachwa bila kuunganishwa. Kama nilivyojadili katika "Muuaji wangu asiyeonekana wa Gonga la Simu" Inayoweza kufundishwa, kutuliza pini za pembejeo ambazo hazitumiwi za chipu za kimantiki huondoa usumbufu wa nasibu na huokoa nguvu ya betri.
Hatua ya 4: Kanuni na Kupima masafa ya chini
Kwa kawaida, hatua zote hufanyika katika nambari iliyounganishwa hapa chini. Wakati pembejeo inayoingia kwenye pini 3 inabadilika kutoka kwa dijiti chini kwenda juu, MCU huanza kuhesabu kunde za saa yake ya ndani ya 48 MHz. Inabainisha wakati wa mpito wa juu hadi chini na inaendelea kuhesabu hadi swichi inayofuata hadi ya juu, wakati itaanzisha tena mchakato mzima. Hesabu ya kwanza inawakilisha upana wa kunde, wakati hesabu nzima inawakilisha kipindi cha ishara. Na hiyo ndio siri yote.
CPU inabainisha mabadiliko haya kupitia usumbufu wa vifaa. SAMD21 ina saa kadhaa; nambari yangu hutumia TC3 moja. Hapo awali, nimeanza kwa kusoma karatasi ya data ya M0 ikifanya juhudi nyingi katika kuweka kificho kwa mshughulikiaji wa kukatiza, lakini hivi karibuni nimegundua nambari inayohusiana sana kwenye machapisho ya Jukwaa la Arduino na watumiaji electro_95, MartinL, na Rucus ambaye mchango wake ni ilikubaliwa kihalali. Niliingiza na kubadilisha nambari yao ya pamoja kuwa yangu; kuniokoa muda mwingi!
Kama nilivyosema hapo awali, azimio la ishara limepunguzwa na mzunguko wa ~ 106 CPU kutekeleza nambari kati ya usumbufu. Mgawanyiko wa dijiti na uhifadhi wa upana wa mapigo hutunza masafa ya juu. Mzunguko wa chini, kwa upande mwingine unaleta changamoto nyingine: kwa kuwa kaunta ya saa ya TC3 ina urefu wa 16 kidogo, inafurika baada ya kuvuka kikomo cha hesabu 65, 536. Mtu anaweza kushughulikia hali hii kwa kuongeza usumbufu wa kufurika, lakini akachagua suluhisho tofauti: TC3 inaweza kutumia saa iliyosimamiwa (yaani, iliyogawanywa na programu) saa ya CPU badala ya vifaa 48 MHz moja. Kwa hivyo, ikiwa kipindi cha ishara kinakaribia kikomo cha kufurika, nambari inaweza kuagiza TC3 kutumia hesabu 24 MHz kwa kipindi kijacho na, voila, kaunta inashuka chini ya hesabu 32, 768. Kwa masafa ya chini hata TC3 inaweza kuamriwa kuhesabu kunde 12 MHz, nk Daktari wa daktari anayefaa huamuliwa kiatomati kulingana na masafa ya ishara, na hysteresis, ili kuweka kaunta ya TC3 ndani ya kikomo cha kufurika. Kama matokeo, mwisho wa chini wa anuwai ya kifaa ni karibu 43 Hz.
Unakaribishwa kupiga msimbo na uutumie katika mradi wako, lakini tafadhali taja chanzo chake wakati wa kuchapisha matokeo.
Unganisha na nambari.
Ilipendekeza:
Tachometer / kupima kupima Kutumia Arduino, OBD2, na CAN Bus: 8 Hatua
Upimaji wa Tachometer / Scan Kutumia Arduino, OBD2, na CAN Bus: Wamiliki wowote wa Toyota Prius (au mseto / gari maalum) watajua kuwa dashibodi zao zinaweza kukosa simu chache! Ubora wangu hauna RPM ya injini au kupima joto. Ikiwa wewe ni mtu wa utendaji, unaweza kutaka kujua vitu kama mapema ya muda na
Mzunguko Sambamba Kutumia Mdudu wa Mzunguko: Hatua 13 (na Picha)
Mzunguko Sambamba Kutumia Mdudu wa Mzunguko: Mende ya mzunguko ni njia rahisi na ya kufurahisha ya kuanzisha watoto kwa umeme na mizunguko na kuwafunga na mtaala unaotegemea STEM. Mdudu huyu mzuri anajumuisha ustadi mzuri wa ufundi wa ufundi, na kufanya kazi na umeme na nyaya
Kutumia Mzunguko Kupima Voltages za Lango la Dijiti: Hatua 7
Kutumia Mzunguko Kupima Voltages za Lango la Dijiti: Mizunguko ya dijiti kwa ujumla hutumia vifaa vya volt 5. Voltages za dijiti ambazo ni kutoka volts 5v -2.7 kwenye safu ya TTL (aina ya chip iliyojumuishwa ya dijiti) inachukuliwa kuwa ya juu na ina thamani ya 1. Voltages za Digitali fomu 0-0.5 inachukuliwa kuwa ya chini na ina
Jinsi ya Kutengeneza Drone Kutumia Arduino UNO - Tengeneza Quadcopter Kutumia Microcontroller: Hatua 8 (na Picha)
Jinsi ya Kutengeneza Drone Kutumia Arduino UNO | Tengeneza Quadcopter Kutumia Microcontroller: Utangulizi Tembelea Kituo Changu cha Youtube Drone ni kifaa (bidhaa) ghali sana kununua. Katika chapisho hili nitajadili, jinsi ninavyofanya kwa bei rahisi? Na unawezaje kutengeneza yako kama hii kwa bei rahisi… Vizuri nchini India vifaa vyote (motors, ESCs
KUTUMIA Burner ya Juu kwa Programu ya Microcontroller ya AVR: Hatua 8
KUTUMIA Burner ya Juu kwa Programu ya Microcontroller ya AVR: Ninyi nyote ndugu wa mtumiaji wa AVR huko nje, na wale wanaoingia tu kwenye mkondo, Wengine wenu walianza na wadhibiti wa PIC na wengine walianza na ATMEL AVRs, hii imeandikwa kwako! Kwa hivyo umenunua USBASP kwa sababu ni ya bei rahisi na yenye ufanisi kuwasha