Զբաղվեք թվային ֆիլտրերի օգտագործմամբ: Թվային զտիչներ. Զտիչների ներդրման և սինթեզման մեթոդներ Թվային ֆիլտրերի նախագծում

Ես այստեղ նախագիծ եմ անում և ունեմ այս խնդիրը: Ես տվյալներ եմ ստանում ADC (դելտա-սիգմա) միկրոսխեմայից, որն ունի ներկառուցված կարգավորիչ և ֆիլտր, բայց այս ֆիլտրը բավականին վատ հաճախականության արձագանք ունի, ինչի հետևանքով ՌԴ-ում խցանված է 60 Հց-ից և ավելի: Դա նման բան է թվում.

Նրանք. Հաճախականության արձագանքի նման անհավասարությունը մեզ ակնհայտորեն չի համապատասխանում (չի անցնում տեխնիկական պահանջներ), թեև հնարավոր է ավելացնել նմուշառման հաճախականությունը 250 Հց-ից մինչև 500 Հց՝ հաճախականության արձագանքը հավասարեցնելու համար, սակայն այնուհետև ավելանում է տվյալների քանակը, որոնք դեռ պետք է միջինացվեն, ինչը կազդի աշխատանքի վրա (նախագիծ STM32F103VE) համակարգը որպես ամբողջություն և ընդհանուր էներգիայի սպառումը (մարտկոցի հզորությունը): Բայց կա ևս մեկ ճանապարհ.

Դուք կարող եք հավասարեցնել հաճախականության արձագանքը՝ օգտագործելով պարամետրային թվային ֆիլտր, այս դեպքում՝ բարձր անցումային ֆիլտր: Այսինքն, դա նույնն է, ինչ հավասարեցնողը, մենք բարձրացնում ենք որոշ հաճախականություններ, բայց չենք դիպչում մյուսներին (կամ իջեցնում դրանք): Այս մեթոդը, իհարկե, լավ է, բայց... մենք փորձում ենք վերականգնել տեղեկատվությունը, որի մի մասը ոչնչացվել է մուտքի մեկ այլ ֆիլտրի միջոցով (մեկը միկրոշրջանում է), բարձր հաճախականություններում միջամտության մակարդակը անխուսափելիորեն կբարձրանա, քանի որ. Ազդանշանի հետ միասին դրանք էլ կուժեղացնենք, բայց ինչքա՞ն։

Այսպիսով, խնդրի լուծման գաղափարը կա, մնում է միայն իրականացումը։ Ի՞նչ ենք մենք հիշում թվային ֆիլտրերի մասին (նրանց համար, ովքեր դրանցով պրակտիկա չեն ունեցել) համալսարանի դասընթացից: Բացառությամբ այնպիսի բառերի, ինչպիսիք են կոնվուլյացիա, Z-փոխակերպում, իմպուլսային արձագանք և այլն: Ընդհանրապես, նույնիսկ պարզ չէ, թե որ ծայրից պետք է մոտենալ, թվում է, թե պետք է որոշ գործակիցներ հաշվարկել, բայց ինչ և ինչու պարզ չէ, դասընթացը բարձրացնելը և DSP-ով գրքերով նստելը (800 էջով մեկն էլ կա) կա. ժամանակ չկա, նախագիծը կանգնած է, և ինչ-որ բան պետք է անել, և արագ:

Ուստի մի փոքր գուգլելուց հետո համացանցում նման ռեսուրս ենք գտնում։ Սա առցանց թվային ֆիլտրերի (և ավելին) հաշվարկի կայք է, որը պատրաստվել է բժիշկ Էնթոնի Ջ. Ֆիշերի կողմից:

Այսպիսով, մենք սահմանում ենք մեզ անհրաժեշտ պահանջները և դրանք մուտքագրում կայքում: Նախ, մեզ պետք է սահուն արձագանք, այնպես որ անպայման առաջին կարգի HF Butterworth (բարձր անցում): Երկրորդ, ընտրանքի տոկոսադրույքը, այսինքն. ADC-ի փոխարկումների քանակը վայրկյանում կամ նմուշառման հաճախականությունը մեզ համար 250 Հց է: Եկեք մտնենք։ Եվ վերջապես, երրորդը, անջատման հաճախականությունը (-3dB) 50 Հց է, քանի որ Մուտքի ֆիլտրը կտրում է մոտավորապես այստեղ: Սեղմեք ուղարկել և մենք ստանում ենք մեր ապագա ֆիլտրի հետևյալ բնութագրերը.


Ամպլիտուդայի գրաֆիկն ընդդեմ Nyquist հաճախականության ցուցադրվում է կարմիրով, իսկ փուլային փոփոխությունը՝ կապույտ: 0.5-ը համապատասխանում է նմուշառման արագության կեսին:

Մենք ստանում ենք նաև C կոդը՝ հաշվարկված գործակիցներով.
#սահմանել NZEROS 1 #սահմանել NPOLES 1 #սահմանել GAIN 1.726542528e+00 static float xv, yv; static void filterloop() ( (;;) համար (xv = xv; xv = հաջորդ մուտքային արժեքը / GAIN; yv = yv; yv = (xv - xv) + (0.1583844403 * yv); հաջորդ ելքային արժեքը = yv; ) )
Բայց սա միայն զտիչ է, մենք հիշում ենք, որ մենք պետք է ուժեղացնենք հաճախականությունները 50 Հց-ից և ավելի, որպեսզի ուղղենք հաճախականության արձագանքը, և այս ձևով այս ֆունկցիան մեզ չի օգնի, ուստի որոշ պարզ մանիպուլյացիաներով մենք գործառույթը բերում ենք այս ձևին: :
#սահմանել NZEROS 1 #սահմանել NPOLES 1 #սահմանել GAIN 1.726542528e+00F #սահմանել OUR_GAIN 2.1F // մեր գործակիցը. ֆիլտրի ձեռքբերումները float xv, yv; int void filterloop(int data) ( xv = xv; xv = (float) data / GAIN; yv = yv; yv = (xv - xv) + (0.1583844403F * yv); վերադարձ (int) ((yv0 * OUR_GAIN) + (լողացող) տվյալներ);)

Բոլորը. Զտիչ օգտագործելու համար մենք տվյալները գցում ենք ֆունկցիայի պարամետրերի մեջ, և այն վերադարձնում է զտված տվյալները։ Մենք փորձարարականորեն ընտրում ենք OUR_GAIN շահույթի գործակիցը՝ վերցնելով ADC-ից ընթերցումներ և չափելով հաճախականության արձագանքը:

Այսպիսով, ինձ հաջողվեց մեծացնել հաճախականության արձագանքը կարգավորիչի վրա գործնականում առանց լրացուցիչ բեռի, և իմ նախագիծը բավարարեց տեխնիկական պահանջները (բժշկական ոլորտում դրանք այնքան էլ թույլ չեն): Ես վախենում էի, որ աղմուկի մակարդակը զգալիորեն կբարձրանա, բայց այն 4-5 մկՎ-ից հասավ մոտ 6-8 մկՎ-ի, ինչը մեզ հարմար է: Եզրափակելով, ես կարող եմ խորհուրդ տալ թվային ֆիլտրերի հաշվարկման մեկ այլ անվճար ծրագիր ՝ WinFilter, կարող եք ներբեռնել այն: Ես չգիտեմ, թե որքանով է դա արդյունավետ, ես այն չեմ ստուգել, ​​բայց այն կարող է կոդ դուրս բերել VHDL-ով (և C-ով, բնականաբար), ինչը, իհարկե, օգտակար կլինի FPGA-ների համար: Կա նաև մի ծրագիր Texas Instruments-ից՝ թվային ֆիլտրի գործակիցները հաշվարկելու համար, այն կոչվում է TIBQ: Բոլորը. Հաջողություն թվային ֆիլտրերի նախագծման գործում:

Առաջարկվող «MATLAB-ում թվային ազդանշանի մշակման DSP-ի մոդելավորում» շարքում նախորդ հոդվածները նվիրված էին թվային ֆիլտրերի (DF), FIR և IIR մոդելավորմանը, ներառյալ ֆիքսված կետի ֆիլտրերը (FP), օգտագործելով MATLAB ծրագրակազմը:

գրականություն

  1. Ingle V., Proakis J. Թվային ազդանշանի մշակում MATLAB-ի միջոցով: Երկրորդ հրատարակություն. Թոմսոն, 2006 թ.
  2. Oppenheim A., Shafer R. Թվային ազդանշանի մշակում: Մ.: Տեխնոսֆերա, 2006 թ.
  3. Sergienko A. B. Թվային ազդանշանի մշակում. 2-րդ հրատ. SPb.: PETER, 2006 թ.
  4. Սոլովինա Ա.Ի., Ուլախովիչ Դ.Ա., Արբուզով Ս.Մ., Սոլովյովա Է.Բ. Թվային ազդանշանի մշակման հիմունքներ. 2-րդ հրատ. Սանկտ Պետերբուրգ: BHV-Petersburg, 2005 թ.
  5. Solonina A.I., Arbuzov S.M. Թվային ազդանշանի մշակում: Մոդելավորում MATLAB-ում. Սանկտ Պետերբուրգ: BHV-Petersburg, 2008 թ.
  6. Solonina A. Թվային ազդանշանի մշակման մոդելավորում MATLAB-ում: Մաս 1. Օպտիմալ (ըստ Չեբիշևի) FIR ֆիլտրերի սինթեզ՝ օգտագործելով MATLAB ծրագրաշարը // Բաղադրիչներ և տեխնոլոգիաներ. 2008. Թիվ 11.
  7. Solonina A. Թվային ազդանշանի մշակման մոդելավորում MATLAB-ում: Մաս 2. Օպտիմալ IIR ֆիլտրերի սինթեզ՝ օգտագործելով MATLAB ծրագրաշարը // Բաղադրիչներ և տեխնոլոգիաներ: 2008. Թիվ 12.
  8. Solonina A. Թվային ազդանշանի մշակման մոդելավորում MATLAB-ում: Մաս 3. FIR և IIR ֆիլտրերի կառուցվածքների նկարագրությունը MATLAB-ում // Բաղադրիչներ և տեխնոլոգիաներ. 2009. Թիվ 1.
  9. Solonina A. Թվային ազդանշանի մշակման մոդելավորում MATLAB-ում: Մաս 4. Թվային ֆիքսված կետով ֆիլտրերի կառուցվածքների մոդելավորում MATLAB ծրագրաշարի միջոցով. FIR ֆիլտրերի բնութագրերի վերլուծություն // Բաղադրիչներ և տեխնոլոգիաներ. 2009. Թիվ 2.
  10. Solonina A. Թվային ազդանշանի մշակման մոդելավորում MATLAB-ում: Մաս 5. Թվային ֆիքսված կետով ֆիլտրերի կառուցվածքների մոդելավորում MATLAB ծրագրաշարի միջոցով. IIR ֆիլտրերի բնութագրերի վերլուծություն // Բաղադրիչներ և տեխնոլոգիաներ. 2009. Թիվ 3.
  11. Solonina A. Թվային ազդանշանի մշակման մոդելավորում MATLAB-ում: Մաս 6. Թվային ֆիքսված կետով ֆիլտրերի կառուցվածքների մոդելավորում MATLAB ծրագրաշարի միջոցով. էֆեկտի քանակականացում և պատասխանի հաշվարկ // Բաղադրիչներ և տեխնոլոգիաներ. 2009. Թիվ 4.
1 Ընթացիկ ֆիլտրի տեղեկատվության խմբում դա համապատասխանում է հաղորդագրությանը. Source-Designed:
2 Ընթացիկ ֆիլտրի տեղեկատվության խմբում դա համապատասխանում է հաղորդագրությանը. Source-Imported:

Պրոֆեսիոնալ ծրագրային փաթեթ՝ ակտիվ/պասիվ անալոգային և թվային էլեկտրական ֆիլտրերի ստեղծման և վերլուծության համար։

Filter Solutions-ն ունի պարզ և ինտուիտիվ ինտերֆեյս, որն իրենից ներկայացնում է առանձին պատուհանների հավաքածու՝ նախագծվող ֆիլտրի պահանջվող արժեքները սահմանելու և արդյունքներն ու դրանց բնութագրերը ցուցադրելու համար: Ծրագիրը ունի իր հաշվողական միջուկը: Օպտիմիզացված հաշվարկային ալգորիթմները թույլ են տալիս կարճ ժամանակահատվածում կատարել բարդ մաթեմատիկական գործողություններ:

Filter Solutions ծրագիրը ի վիճակի է կառուցել ստանդարտ զտիչներ (էլիպսաձև կամ Cauer, Bessel, Butterworth, Gauss, Legendre, Chebyshev տիպեր 1 և 2, համապատասխանեցված և որոշ այլ), ինչպես նաև ճկուն պարամետրերով եզակի զտիչներ, ազատորեն սահմանված հաճախականության արձագանքով: փուլային փուլային սխեմաների ստեղծման և ամպլիտուդի ուղղման համար: Ծրագիրը ավտոմատ կերպով կառուցում է փոխանցման գործառույթը, ցույց է տալիս բևեռները և զրոները, ինչպես նաև առաջացնում է շղթայի ժամանակային բնութագրերը, երբ այն ենթարկվում է իմպուլսի: Զտիչ արագ ստեղծելու համար տրամադրվում է մոգ, որը պահանջում է միայն ամենակարևոր զարգացման տվյալները:

Հնարավոր է նաև նշել նախագծված սարքի հաճախականության բնութագրերը, զրոները և բևեռները: Filter Solutions-ը ինքնուրույն կսահմանի ֆիլտրի կարգը և անհրաժեշտ տոպոլոգիան: Ծրագիրը թույլ է տալիս մշակել զտիչներ շերտագիծ/միկրոստրիփ դիզայնում: Հաշվարկը հաշվի կառնի մետաղականացման և հիմքի դիէլեկտրիկի կորուստները:
Ծրագրային փաթեթի առանձնահատկությունն այն է, որ խնդիրը լուծելու մի քանի հնարավոր ուղիների տրամադրումն է տարբեր միացումային լուծումների և առանձին տարրերի պարամետրերի տեսքով: Filter Solutions-ը վերահսկում է սխեմայի տեխնոլոգիական իրագործելիությունը: Ծրագիրը ցույց կտա հնարավոր խնդիրները և կառաջարկի այլընտրանքային տարբերակներ, որոնք ունեն մի փոքր ավելի վատ պարամետրեր, բայց հնարավոր է իրականացնել:

Filter Solutions-ի հնարավորությունները հասանելի են նաև որպես Filter Light և Filter Free տարբերակներ, որոնք ավելի ցածր արժեք ունեն ծրագրի ամբողջական տարբերակի համեմատ: Դրանցում գործառույթների շրջանակը որոշ չափով պարզեցված է, հատկապես Filter Free-ում, որը նվազագույն հասանելի փաթեթն է։
Այս ծրագրաշարի համար համակարգի պահանջները փոքր են: Ծրագիրը տարածվում է սովորական և շարժական տարբերակի տեսքով, որն աշխատում է ցանկացած արտաքին սկավառակից:

Filter Solutions-ը Nuhertz Technologies-ի արտադրանքն է http://www.nuhertz.com/: Նրա կենտրոնակայանը գտնվում է Ֆենիքսում (ԱՄՆ, Արիզոնա): Փաթեթն ի սկզբանե թողարկվել է 1999 թվականին: Այդ ժամանակից ի վեր այն շարունակել է զարգանալ և ձեռք բերել ավելի ու ավելի նոր գործառույթներ և հնարավորություններ: Ընկերության կողմից մշակված ծրագրակազմն օգտագործվում է գիտության և արդյունաբերության տարբեր ոլորտներում նախագծող ինժեներների կողմից, ինչպիսիք են կապը և հաղորդակցությունը, ռազմական էլեկտրոնիկան, բժշկությունը, գործիքաշինությունը, նավթը և գազը և ալեհավաքների նախագծումը: Nuhertz Technologies-ը նաև Statmat և Spectra՝ վիճակագրական վերլուծության և տվյալների թվային ներկայացման ծրագրերի ստեղծողն է:

Filter Solutions-ի ինտերֆեյսի լեզուն միայն անգլերենն է: Քննարկվող ծրագրի աշխատանքային հարթակն է Windows 9x/Me/2K/NT/XP/Vista/7:

Ա.Բ.Սերգիենկո. Ազդանշանների մշակման գործիքների տուփ - վերանայում

Ազդանշանների մշակումը միշտ եղել է MATLAB համակարգի կիրառման ամենակարևոր ոլորտներից մեկը: Սա առաջին հերթին վկայում է այն փաստը, որ Signal Processing Toolbox-ը եղել է առաջին մասնագիտացված փաթեթներից մեկը. այն հայտնվել է արդեն 1988 թվականին՝ հենց MATLAB համակարգի ստեղծումից ընդամենը չորս տարի անց:

Մինչ օրս ազդանշանների մշակման փաթեթը պարունակում է գրեթե երկու հարյուր խնամքով մշակված մասնագիտացված գործառույթներ, որոնք թույլ են տալիս լուծել ազդանշանի վերլուծության և մշակման բազմաթիվ խնդիրներ:

MATLAB 6.1-ի (թողարկում 12.1) ներկայումս բաշխված տարբերակը պարունակում է ազդանշանի մշակման փաթեթի 5.1 տարբերակը: MATLAB 6.5-ի (թողարկում 13) առաջիկա թողարկումը կներառի ազդանշանների մշակման փաթեթի 6.0 տարբերակը:

Փաթեթի պաշտոնական փաստաթղթերի համաձայն, դրա գործառույթները բաժանված են քսան կատեգորիաների. Ստորև բերված ցանկը միավորում է այս կատեգորիաները ավելի մեծ խմբերի մեջ: Այսպիսով, ըստ իրենց նպատակի, ազդանշանների մշակման փաթեթի գործառույթները կարելի է բաժանել հետևյալ կերպ.

Բացի այդ, փաթեթը ներառում է երեք գրաֆիկական միջավայր.

MATLAB-ը և դրա ընդլայնման փաթեթները հիմնականում կենտրոնացած են թվային ազդանշանի մշակման վրա, ուստի անալոգային շղթայի վերլուծության հետ կապված գործառույթները համարվում են օժանդակ: Դրանք հիմնականում նախատեսված են կանչվելու այլ գործառույթներից, որոնք օգտագործում են անալոգային նախատիպեր թվային ֆիլտրերի սինթեզում: Այնուամենայնիվ, այս գործառույթներն իրենք կարող են շատ օգտակար լինել: Իրենց հերթին դրանք կարելի է բաժանել մի քանի խմբերի.

Առաջին խումբը նախատիպի անալոգային ֆիլտրերի հաշվարկման գործառույթներն են, այսինքն՝ ցածր անցումային ֆիլտրեր՝ 1 ռադ/վ անջատման հաճախականությամբ։ Ֆունկցիաները վերադարձնում են զտիչների զրոները, բևեռները և շահումները և թույլ են տալիս հաշվարկել Բաթերվորթի ֆիլտրերի նախատիպը ( թակել), առաջին տեսակի Չեբիշևը ( cheb1apԵրկրորդ տեսակի Չեբիշևը ( cheb2ap), էլիպսաձեւ (Կաուեր) ( էլիպապ) և Բեսել ( բեսելապ).

Երկրորդ խումբը անալոգային ֆիլտրի փոխակերպման գործառույթներն են, որոնք թույլ են տալիս փոխարկել ցածր անցումային ֆիլտրի նախատիպը ցածր անցումային ֆիլտրի տարբեր անջատման հաճախականությամբ ( lp2lp), բարձր անցումային ֆիլտրում (HPF)՝ տրված անջատման հաճախականությամբ ( lp2hp), միջանցիկ ֆիլտրի մեջ՝ տվյալ միջին հաճախականությամբ և թողունակությամբ ( lp2bp) և ներդիր ֆիլտրի մեջ՝ տվյալ միջին հաճախականությամբ և կանգառի լայնությամբ ( lp2bs) Ֆունկցիաները կարող են ընդունել և վերադարձնել ֆիլտրի նկարագրությունները որպես փոխանցման ֆունկցիայի համարիչի և հայտարարի բազմանդամների գործակիցների վեկտորներ կամ որպես վիճակի տարածության պարամետրեր։

Երրորդ խումբը տվյալ պարամետրերով անալոգային ֆիլտրերի հաշվարկման գործառույթներն են: Հաշվարկի ընթացքում նրանք կանչում են առաջին երկու խմբերի գործառույթները. Հաշվարկի համար պահանջվող սկզբնական տվյալների հավաքածուն ներառում է ֆիլտրի կարգը, դրա տեսակը (ցածրանցիկ ֆիլտր, բարձր անցումային ֆիլտր, ժապավենի անցում կամ խազ), հաճախականությունը կամ մի քանի անջատման հաճախականությունը, ինչպես նաև (կախված նախատիպից) ալիքային պարամետրերը: ամպլիտուդա-հաճախականության արձագանքը (AFC): Կան Butterworth ֆիլտրերի հաշվարկման գործառույթներ ( կարագ), առաջին տեսակի Չեբիշևը ( cheby1Երկրորդ տեսակի Չեբիշևը ( cheby2), էլիպսաձեւ (Կաուեր) ( էլիպ) և Բեսել ( անբարյացակամ) Այս բոլոր գործառույթները, բացի ֆունկցիայից անբարյացակամ, կարող է օգտագործվել նաև դիսկրետ զտիչներ հաշվարկելու համար (տես ստորև): Անալոգային հաշվարկման տարբերակի նշան է «s» տողի նշումը որպես վերջին մուտքային պարամետր:

Չորրորդ խումբը ֆիլտրի պահանջվող կարգը որոշելու գործառույթներն են՝ հիմնված հաճախականության արձագանքման սահմանված պարամետրերի վրա (անցումների և կանգառների գոտիների անջատման հաճախականությունները, ինչպես նաև անցման և կանգառի գոտիներում թույլատրելի ալիքները): Ֆիլտրի յուրաքանչյուր տեսակ ունի պահանջվող կարգը որոշելու իր գործառույթը. Butterworth ֆիլտրի համար. հետնապահՉեբիշևի առաջին տեսակի ֆիլտրի համար - cheb1ordՉեբիշևի երկրորդ տեսակի ֆիլտրի համար. cheb2ordէլիպսային ֆիլտրի համար - էլիպորդ. Ճիշտ այնպես, ինչպես նախորդ խմբի գործառույթները, այս գործառույթները թույլ են տալիս որոշել դիսկրետ ֆիլտրերի պահանջվող կարգը (տես ստորև): Անալոգային հաշվարկման տարբերակի նշան է «s» տողի նշումը որպես վերջին մուտքային պարամետր:

Հինգերորդ խումբը անալոգային գծային համակարգերի նկարագրության ձևերի փոխակերպման գործառույթներն են։ Անալոգային համակարգերի համար աջակցվում են նկարագրության չորս մեթոդներ.

Ազդանշանների մշակման փաթեթը պարունակում է գործառույթներ, որոնք իրականացնում են անալոգային համակարգերի ներկայացման այս չորս ձևերի փոխադարձ փոխակերպումները (միայն գործառույթը նստվածք, որն աշխատում է բևեռներով և մնացորդներով, պատկանում է ոչ թե ազդանշանների մշակման փաթեթին, այլ հիմքում ընկած MATLAB գրադարանին): Այս հատկանիշները թվարկված են հետևյալ աղյուսակում:

Վերջնական ձև Փոխանցման ֆունկցիայի բազմանդամ գործակիցներ Զրոներ և բևեռներ Բևեռներ և մնացորդներ Պետական ​​տարածք
Բնօրինակ ձև
tf2zp նստվածք tf2ss
Զրոներ և բևեռներ zp2tf zp2ss
Բևեռներ և մնացորդներ նստվածք
Պետական ​​տարածք ss2tf ss2zp

նստվածքկարող է փոխակերպվել երկու ուղղություններով: Փոխակերպման ուղղությունը որոշվում է մուտքային և ելքային պարամետրերի քանակով:

Աղյուսակում թվարկված գործառույթները, բացառությամբ ֆունկցիայի նստվածք, կարող է նաև իրականացնել դիսկրետ համակարգերի փոխակերպումներ, քանի որ անալոգային և դիսկրետ համակարգերի փոխակերպման բանաձևերը նույնն են։

Վերջապես, վեցերորդ խումբը պետք է ներառի միակ գործառույթը հաճախականություններ, որը թույլ է տալիս հաշվարկել կամ գրաֆիկորեն ցուցադրել անալոգային գծային համակարգի ամպլիտուդի և փուլային հաճախականության բնութագրերը (AFC և PFC): Սկզբնական տվյալները համակարգային փոխանցման ֆունկցիայի համարիչի և հայտարարի բազմանդամների գործակիցներն են։

Որպես անալոգային համակարգերի հետ աշխատելու գործառույթներ օգտագործելու օրինակ՝ եկեք հաշվարկենք չորրորդ կարգի էլիպսաձև ցածրանցիկ ֆիլտր՝ 3 կՀց անջատման հաճախականությամբ, անցողիկ գոտում հաճախականության արձագանքման ալիքը հավասար է 1 դԲ, և ազդանշանի ճնշումը կանգառում հավասար է 20 դԲ, այնուհետև գծեք դրա հաճախականության արձագանքը և փուլային պատասխանը:

Էլիպ (4, 1, 20, 2*pi*3000, «s»); % ֆիլտրի հաշվարկ
f = 0:10:10000; % հաճախականության վեկտոր հաճախականության արձագանքի և փուլային արձագանքի հաշվարկման համար
h = հաճախականություններ (b, a, 2*pi*f); % բարդ փոխանցման գործակից
ենթահող (2, 1, 1)

ցանց
ենթահող (2, 1, 2)
գծապատկեր (f, փաթաթել (անկյուն (h))*180/pi) փուլային պատասխանի % գծապատկեր (աստիճաններով)
ցանց

Գործառույթը, որն օգտագործվում է օրինակի կոդում փաթաթելվերացնում է փուլային արձագանքի աննշան թռիչքները 360°-ում:

Գործառույթների այս կատեգորիան բավականին շատ է և միավորում է մի շարք գործիքներ՝ դիսկրետ գծային համակարգերի վերլուծության համար, որոնք սովորաբար ներկայացված են փոխանցման ֆունկցիայի համարիչի և հայտարարի բազմանդամների գործակիցների վեկտորների տեսքով. զ- շրջաններ):

Գործառույթ հաճախֆունկցիայի դիսկրետ անալոգն է հաճախականություններ, այն թույլ է տալիս հաշվարկել փոխանցման բարդ գործակիցը կամ գծագրել դիսկրետ համակարգի հաճախականության արձագանքը և փուլային արձագանքը: Սկզբնական տվյալները համակարգային փոխանցման ֆունկցիայի համարիչի և հայտարարի բազմանդամների գործակիցներն են։

Գործառույթի նման հաճախգործառույթն աշխատում է grpdelay, որը թույլ է տալիս հաշվարկել կամ գրաֆիկորեն ցուցադրել դիսկրետ զտիչով ներմուծված խմբի հետաձգման հաճախականության կախվածությունը։

Գործառույթ impzնախագծված է դիսկրետ համակարգի իմպուլսային արձագանքը հաշվարկելու կամ գրաֆիկորեն ցուցադրելու համար: Սկզբնական տվյալները, ինչպես նախորդ ֆունկցիաների դեպքում, համակարգային փոխանցման ֆունկցիայի համարիչի և հայտարարի բազմանդամների գործակիցներն են։

Գործառույթ zplaneթույլ է տալիս ցուցադրել համակարգի զրոներն ու բևեռները բարդ հարթության վրա՝ լրացուցիչ պատկերելով միավոր շրջան, որը սահմանափակում է բևեռների գտնվելու վայրի թույլատրելի տարածքը։ կայունդիսկրետ համակարգ. Սկզբնական տվյալները կարող են լինել կամ համարիչի և հայտարարի բազմանդամների գործակիցների վեկտորները, կամ ուղղակիորեն համակարգի փոխանցման ֆունկցիայի զրոների և բևեռների վեկտորները։

Գործառույթ ֆիլտրի նորմթույլ է տալիս հաշվարկել նորմդիսկրետ ֆիլտր: Այս պարամետրը օգտագործվում է, օրինակ, ֆիլտրի առանձին հատվածների մասշտաբային գործակիցների ընտրության ժամանակ, որոնք իրականացվում են հաջորդական (կասկադ) ձևով, կլորացման սխալները նվազեցնելու համար: Աջակցվում է երկու տարբերակ՝ 2-norm և -norm: 2-նորմը ներկայացնում է արմատ միջին քառակուսիֆիլտրի հաճախականության արձագանքման արժեքը (կամ, որը նույնն է, ֆիլտրի իմպուլսային պատասխանի քառակուսի նմուշների գումարի արմատը) և -նորմ է. առավելագույնըհաճախականության արձագանքման արժեքը:

Գործառույթ fvtoolըստ էության գրաֆիկական միջավայր է, որը նախատեսված է դիսկրետ համակարգերի բնութագրերը վերլուծելու և պատկերացնելու համար (Filter Visualization Tool): Այնուամենայնիվ, ի տարբերություն փաթեթի այլ գրաֆիկական միջավայրերի, fvtoolիսկապես կա ֆունկցիան, քանի որ այն կանչվելիս պահանջում է մուտքային պարամետրերի առկայություն՝ վերլուծված ֆիլտրի փոխանցման ֆունկցիայի համարիչի և հայտարարի բազմանդամների գործակիցները։ Այս ֆունկցիայի զգալի առավելությունը բնութագրերը միաժամանակ դիտելու հնարավորությունն է մի քանիսըզտիչներ. Այս ֆունկցիայի կողմից տրամադրվող գրաֆիկական ինտերֆեյսը գրեթե նույնն է, ինչ FDATool ֆիլտրի վերլուծության և սինթեզի միջավայրում: Ստորև բերված է ֆունկցիայի կանչի օրինակ fvtoolև գրաֆիկական պատուհանը, որը նա ստեղծում է ֆիլտրի կողմից ներմուծված խմբի հետաձգման հաճախականության կախվածությունը ցուցադրելու ռեժիմում:

բ = ;
a = ;
fvtool (b, a)

Մեծ խումբը բաղկացած է դիսկրետ համակարգերի նկարագրության ձևերը փոխակերպելու գործառույթներից։ Դիսկրետ համակարգերի համար աջակցվում են ներկայացման ավելի շատ ձևեր, քան անալոգային.

  • Համակարգի փոխանցման ֆունկցիայի համարիչի և հայտարարի բազմանդամների գործակիցները.
  • Զրոներ, բևեռներ և համակարգի շահույթ (փոխանցման ֆունկցիայի ֆակտորիզացիա):
  • Բևեռներ և մնացորդներ (համակարգի փոխանցման ֆունկցիայի ներկայացում որպես պարզ կոտորակների գումար):
  • Նշեք տարածության պարամետրերը:
  • Ներկայացում հաջորդական (կասկադային) երկրորդ կարգի հատվածների հավաքածուի տեսքով:
  • Ներկայացում վանդակավոր կամ վանդակավոր-սանդուղք կառուցվածքի տեսքով:

Գործառույթները, որոնք փոխակերպվում են տարբեր ներկայացումների միջև, թվարկված են հետևյալ աղյուսակում:

Վերջնական ձև Փոխանցման ֆունկցիայի բազմանդամ գործակիցներ Զրոներ և բևեռներ Բևեռներ և մնացորդներ Պետական ​​տարածք Երկրորդ կարգի բաժիններ Ցանցային կառուցվածք
Բնօրինակ ձև
Փոխանցման ֆունկցիայի բազմանդամ գործակիցներ tf2zp մնացորդներ tf2ss tf2sos tf2latc
Զրոներ և բևեռներ zp2tf zp2ss zp2sos
Բևեռներ և մնացորդներ մնացորդներ
Պետական ​​տարածք ss2tf ss2zp ss2sos
Երկրորդ կարգի բաժիններ sos2tf sos2zp sos2ss
Ցանցային կառուցվածք latc2tf

Ինչպես երևում է աղյուսակից, նույն գործառույթը մնացորդներ(սա ֆունկցիայի անալոգն է նստվածք, որը նախատեսված է դիսկրետ համակարգերի նկարագրությունների հետ աշխատելու համար) կարող է փոխակերպումներ իրականացնել երկու ուղղություններով։ Փոխակերպման ուղղությունը որոշվում է մուտքային և ելքային պարամետրերի քանակով:

Եվս երկու ֆունկցիա մանիպուլյացիայի ենթարկում են բազմանդամների գործակիցների վեկտորները՝ փոփոխելով բազմանդամի արմատների դիրքը բարդ հարթության վրա։ Գործառույթ բազմաշերտմշակված բազմանդամի բոլոր արմատները բազմապատկում է տրված գործակցով և ֆունկցիան polystabստիպում է բազմանդամի բոլոր արմատները ընկած լինել միավորի շրջանակի ներսում, դրա համար բացարձակ արժեքով միասնությունը գերազանցող արմատները շրջվում են, այսինքն, դրանց մոդուլները փոխարինվում են իրենց հակադարձ արժեքներով, և դրանց փուլերի նշանը հակադարձվում է:

Այս կատեգորիայի մնացած գործառույթները օժանդակ են: Գործառույթ հաճախականության տարածությունհաշվում է հավասարաչափ բաժանված հաճախականության արժեքների վեկտորը, ֆունկցիան freqzplotնախատեսված է հաճախականության բնութագրերի և ֆունկցիայի գրաֆիկները գծելու համար փաթաթելթույլ է տալիս վերացնել փուլային հաճախականության բնութագրերի աննշան թռիչքները 2p-ով, փնտրելով այս ցատկերը վեկտորային տարրերի միջև և ցանկալի վեկտորային բեկորները տեղափոխելով 2p-ով: n.

Գծային դիսկրետ զտման գործողությունը սովորաբար նկարագրվում է հետևյալ կերպ.

Այստեղ x(k)- մուտքային ազդանշանի նմուշներ, y(k)- ելքային ազդանշանի նմուշներ, ա iԵվ բ ժ- հաստատուն գործակիցներ. Թվերի առավելագույնը մԵվ nկոչվում է ֆիլտրի կարգ:

Նախորդ ելքային նմուշները չեն կարող օգտագործվել հաշվարկներում, ապա՝ բոլորը a i = 0և ֆիլտրը կոչվում է ոչ ռեկուրսիվկամ լայնական. Եթե ​​օգտագործվում են նախորդ ելքային նմուշներ, ֆիլտրը կոչվում է ռեկուրսիվ:

Գծային դիսկրետ զտումը վերաբերում է կամայական տվյալների մշակման տեխնոլոգիաներին, ուստի համապատասխան գործառույթն է զտիչ- չի պատկանում ազդանշանների մշակման փաթեթին, այլ ներկառուցված է MATLAB միջուկում: Գործառույթ ֆիլտր 2, որը նաև MATLAB-ի հիմնական գրադարանի մաս է կազմում, իրականացնում է երկչափ դիսկրետ զտում:

Քանի որ հաստատուն գործակցի ֆիլտրը գծային ժամանակի անփոփոխ դիսկրետ համակարգ է, դրա արձագանքը կամայական մուտքային ազդանշանին կարող է ներկայացվել որպես դիսկրետ կոնվուլյացիամուտքային ազդանշան իմպուլսային արձագանքման ֆիլտրով.

Այստեղ h(k)- ֆիլտրի իմպուլսային արձագանքի նմուշներ: Իմպուլսի արձագանքը ֆիլտրի արձագանքն է մուտքագրման համար կիրառվող միավոր արժեքի մեկ նմուշին:

Իհարկե, հաշվարկները, օգտագործելով կոնվուլյացիայի բանաձևը, գործնականում կարող են իրականացվել միայն ֆիլտրի իմպուլսային արձագանքի վերջավոր երկարությամբ: Այս գործողությունն իրականացվում է գործառույթով կոնվ; ինչպես դիսկրետ ֆիլտրման ալգորիթմի ներդրումը, այն պատկանում է ոչ թե ազդանշանների մշակման փաթեթին, այլ հիմքում ընկած MATLAB գրադարանին: Իրականում, conv ֆունկցիայի իրականացումը հանգում է ֆունկցիայի կանչին զտիչհամապատասխան մուտքային պարամետրերով: Գործառույթ conv2իրականացնում է երկչափ դիսկրետ կոնվուլյացիա: MATLAB-ի հիմնական գրադարանի մեկ այլ գործառույթ է ապակոնվ- իրականացնում է կոնվուլյացիայի հակադարձում, թույլ տալով, որ երկրորդ մուտքային վեկտորը որոշվի ոլորման արդյունքից և մուտքային վեկտորներից մեկից:

Վերը նշված հիմնական դիսկրետ ֆիլտրման գործառույթները, ինչպես արդեն ասվել է, պատկանում են բազային MATLAB գրադարանին. Փաստորեն, ազդանշանների մշակման փաթեթը պարունակում է գործառույթներ, որոնք լուծում են ավելի կոնկրետ զտման խնդիրներ:

Նախ պետք է նշել, որ ֆունկցիան զտիչհնարավորություն է տալիս մուտք գործել ֆիլտրի սկզբնական և վերջնական ներքին վիճակներ՝ դրանով իսկ թույլ տալով կազմակերպել բլոկային ազդանշանի մշակումը: Երբեմն անհրաժեշտ է դառնում ձևավորել ֆիլտրի ներքին վիճակի վեկտոր՝ իմանալով նախորդ մուտքային և ելքային նմուշների որոշակի քանակություն։ Այս հաշվարկը կատարվում է ֆունկցիայի միջոցով ֆիլտիկ.

Գործառույթ fftfiltիրականացնում է դիսկրետ ֆիլտրում՝ օգտագործելով արագ Ֆուրիեի փոխակերպումը (FFT)՝ ազդանշանի բլոկների բաժանման հետ միասին: Այս կերպ կարող են ներդրվել միայն ոչ ռեկուրսիվ զտիչներ: Ֆունկցիայի արդյունքը համընկնում է (մինչև հաշվողական սխալներ) ֆունկցիայի օգտագործմամբ իրականացվող սովորական զտման արդյունքների հետ. զտիչ. Այնուամենայնիվ, FFT զտման հաշվողական արագությունը կարող է զգալիորեն ավելի բարձր լինել, հատկապես, եթե մուտքային ազդանշանի երկարությունը շատ անգամ ավելի մեծ է, քան ֆիլտրի իմպուլսային արձագանքի երկարությունը (կամ հակառակը):

Գործառույթ զտելթույլ է տալիս փոխհատուցել սովորական ֆիլտրման միջոցով ներդրված փուլային հերթափոխը (այլ կերպ ասած, այս գործառույթն իրականացնում է զտում առանց ժամանակի հետաձգում մտցնելու): Սա իրականացվում է երկկողմանի ազդանշանի մշակման միջոցով: Զտման առաջին անցումը կատարվում է սովորական եղանակով, այնուհետև ստացված ելքային ազդանշանը զտվում է երկրորդ անգամ՝ վերջից սկիզբ: Դրա շնորհիվ փուլային տեղաշարժերը փոխհատուցվում են, և արդյունքում ֆիլտրի կարգը կրկնապատկվում է: Հարկ է նշել, որ ստացված ֆիլտրը (համարժեք է երկու զտիչ անցումների) չի բավարարում պատճառահետևանքային կապի պայմանը։

Բարձր կարգի ռեկուրսիվ ֆիլտրերի գործնական կիրառման ժամանակ դրանք հաճախ ներկայացված են որպես երկրորդ կարգի բաժիններ, որոնք միացված են հաջորդաբար: Սա թույլ է տալիս մեզ նվազեցնել հաշվողական սխալները, որոնք առաջանում են կլորացման սխալներից և ֆիլտրի գործակիցների քանակականացումից: Սխալների վերլուծության գործիքները այս տեսակի սխալների համար կենտրոնացված են Filter Design փաթեթում, իսկ ազդանշանների մշակման փաթեթն ունի գործառույթ. sosfilt, որը թույլ է տալիս իրականացնել տվյալների դիսկրետ զտում՝ օգտագործելով երկրորդ կարգի բաժինների տեսքով ներկայացված զտիչ։

Մեկ այլ հնարավոր դիսկրետ ֆիլտրի կառուցվածքը վանդակավոր կառուցվածքն է: Այս ձևով ներկայացված ֆիլտրի միջոցով զտում կատարելու համար օգտագործեք գործառույթը latcfilt.

Գործառույթ medfilt1, որն իրականացնում է միաչափ մեդիանային ֆիլտրում, պատկանում է ոչ գծային զտման ալգորիթմներին։ Դրա գործողության էությունն այն է, որ մուտքային ազդանշանի վրա կիրառվում է տվյալ երկարության լոգարիթմական պատուհան, պատուհանի ներսում նմուշները պատվիրվում են, իսկ արժեքը՝ պատվիրված պատուհանի կեսից (կամ ամենամոտ երկու տարրերի կես գումարը): դեպի միջին, եթե պատուհանն ունի հավասար երկարություն) վերադարձվում է որպես ելքային նմուշ։ Միջին ֆիլտրումն օգտագործվում է, օրինակ, ձայնային ազդանշանների մշակման ժամանակ իմպուլսային աղմուկը (կտտոցները) վերացնելու համար: Գործառույթ medfilt2, որն իրականացնում է մեդիանային զտման երկչափ տարբերակը, գտնվում է Image Processing փաթեթում։

Գործառույթ sgolayfiltկատարում է դիսկրետ զտում Savitzky-Golay ֆիլտրի միջոցով: Դրա էությունը կայանում է նրանում, որ մուտքային ազդանշանը բաժանված է տվյալ չափի բլոկների և յուրաքանչյուր բլոկի ներսում ազդանշանի բազմանդամ մոտարկումը կատարվում է տվյալ աստիճանի բազմանդամով ըստ նվազագույն միջին քառակուսի սխալի չափանիշի: Եթե ​​բազմանդամների աստիճանը մեկով պակաս է բլոկների չափից, ապա ելքային ազդանշանը հավասար կլինի մուտքային ազդանշանին. ավելի փոքր աստիճանի բազմանդամների դեպքում ազդանշանը կհարթվի: Savitzky-Golay ֆիլտրերը օգտագործվում են ազդանշանները աղմուկից «մաքրելու» համար:

Դիսկրետ ֆիլտրի սինթեզ նշանակում է գործակիցների նման հավաքածուների ընտրություն ( ա i) Եվ ( բ i), որի դեպքում ստացված ֆիլտրի բնութագրերը բավարարում են նշված պահանջները: Խստորեն ասած, նախագծային առաջադրանքը ներառում է նաև ֆիլտրի հարմար կառուցվածքի ընտրություն՝ հաշվի առնելով հաշվարկների վերջնական ճշգրտությունը։ Սա հատկապես ճիշտ է «ապարատային» ֆիլտրերի ներդրման ժամանակ՝ օգտագործելով մասնագիտացված LSI կամ թվային ազդանշանային պրոցեսորներ: Հաշվարկների վերջնական ճշգրտության հետ կապված էֆեկտները կարող են վերլուծվել՝ օգտագործելով Filter Design փաթեթի գործառույթները. ֆիլտրի սինթեզի գործառույթները հաշվի չեն առնում այս ազդեցությունները:

Ազդանշանների մշակման փաթեթն ունի մեծ թվով գործառույթներ, որոնք իրականացնում են տարբեր ալգորիթմներ դիսկրետ ֆիլտրերի սինթեզի համար: Մենք ներկայացնում ենք այս գործառույթների հիմնական բնութագրերը աղյուսակի տեսքով, այնուհետև տալիս ենք մի քանի լրացուցիչ մեկնաբանություններ:

Գործառույթ Զտիչի տեսակը հաճախականության արձագանք Սինթեզի մեթոդ
կարագ Ռեկուրսիվ Բաթերվորթ Երկգծային z-տրանսֆորմ
cheby1 Ռեկուրսիվ Չեբիշև առաջին տեսակի Երկգծային z-տրանսֆորմ
cheby2 Ռեկուրսիվ Երկրորդ տեսակի Չեբիշև Երկգծային z-տրանսֆորմ
էլիպ Ռեկուրսիվ Կաուերա (էլիպսաձեւ) Երկգծային z-տրանսֆորմ
երկգծային Ռեկուրսիվ Երկգծային z-տրանսֆորմ
իմպինվար Ռեկուրսիվ Կամայական անալոգային նախատիպ Անփոփոխ իմպուլսային արձագանքման փոխակերպում
yulewalk Ռեկուրսիվ Հատված գծային Ավտոռեգեսիվ մեթոդ
invfreqz Ռեկուրսիվ անվճար Փոխանցման ֆունկցիայի համարիչի և դրա հայտարարի արտադրյալի և ցանկալի հաճախականության արձագանքի միջև եղած տարբերությունը նվազագույնի հասցնելը.
հակված Ռեկուրսիվ Սինթեզ տվյալ իմպուլսային պատասխանից Exponential Prony մոտարկում
եղևնի 1 Ոչ ռեկուրսիվ Բազմաշերտ
եղևնի2 Ոչ ռեկուրսիվ Հատված գծային Հակադարձ Ֆուրիեի փոխակերպումը պատուհանների միջոցով
եղջերուներ Ոչ ռեկուրսիվ Նվազագույնի հասցնել միջին քառակուսի սխալը
եղեւնիներ Ոչ ռեկուրսիվ Հատված հաստատուն
եղևնիներ1 Ոչ ռեկուրսիվ LPF, HPF Նվազագույնի հասցնել արմատային միջին քառակուսի սխալը՝ առավելագույն շեղման սահմանափակմամբ
եղեւնիներ Ոչ ռեկուրսիվ LPF Կոսինուսի հարթեցում
ներծծվելը Ոչ ռեկուրսիվ LPF Նվազագույնի մոտավորություն
ռեմեզ Ոչ ռեկուրսիվ Հատված գծային՝ անցումային շերտերով Նվազագույնի մոտավորություն
կրեմեզ Ոչ ռեկուրսիվ (ներառյալ ոչ գծային փուլային արձագանքով և բարդ գործակիցներով) Հատված գծային՝ անցումային շերտերով Նվազագույնի մոտավորություն

Դիսկրետ ֆիլտրերի սինթեզման մեթոդները կարելի է բաժանել երկու մեծ խմբի՝ անալոգային նախատիպի օգտագործմամբ և առանց դրա: Նախատիպ անալոգային ֆիլտր օգտագործելիս անհրաժեշտ է ինչ-որ կերպ ներկայացնել s-տիրույթում սահմանված անալոգային փոխանցման ֆունկցիան z-տիրույթում սահմանված դիսկրետ փոխանցման ֆունկցիայի: Ազդանշանների մշակման փաթեթն իրականացնում է նման փոխակերպման երկու մեթոդ՝ անփոփոխ իմպուլսային արձագանքման մեթոդ և երկգծային z-փոխակերպման մեթոդ: Երկու մեթոդներն էլ հանգեցնում են ռեկուրսիվ դիսկրետ զտիչների:

Ինվարիանտ իմպուլսային արձագանքման մեթոդի կիրառման ժամանակ նմուշառվում է անալոգային նախատիպի իմպուլսային պատասխանը: Ստացված դիսկրետ ֆիլտրի հաճախականության արձագանքը համապատասխանաբար անալոգային նախատիպի պարբերաբար կրկնվող հաճախականության արձագանքն է: Այդ իսկ պատճառով այս մեթոդը հարմար չէ բարձր անցումային ֆիլտրերի և, ընդհանրապես, ֆիլտրերի սինթեզի համար, որոնց փոխանցման գործակիցը հաճախականության աճով չի հակվում զրոյի: Ինվարիանտ իմպուլսային արձագանքման մեթոդն իրականացվում է ազդանշանի մշակման փաթեթում՝ օգտագործելով ֆունկցիան իմպինվար.

Երկգծային z-փոխակերպման մեթոդի կիրառման ժամանակ անալոգային նախատիպի բնութագրերը աղավաղվում են միայն հաճախականության առանցքի երկայնքով: Այս դեպքում անալոգային ֆիլտրի հաճախականության միջակայքը (զրոյից մինչև անսահմանություն) փոխակերպվում է դիսկրետ ֆիլտրի աշխատանքային հաճախականության միջակայքին (նմուշառման հաճախականության զրոյից մինչև կեսը): Հաճախականության առանցքի փոխակերպումը նկարագրվում է արկտանգենս ֆունկցիայով, ուստի նմուշառման արագությունից զգալիորեն ցածր հաճախականությունները փոխակերպվում են մոտավորապես գծային: Այս մեթոդն իրականացվում է ֆունկցիայի միջոցով երկգծայինկամայական անալոգային նախատիպի համար: Բացի այդ, կան պատրաստի գործառույթներ ցածր և բարձր անցումային ֆիլտրերի, տիրույթի և խազային ֆիլտրերի հաշվարկման համար՝ օգտագործելով երկգծային z-փոխակերպման մեթոդը, օգտագործելով անալոգային նախատիպեր՝ առաջին և երկրորդ տեսակի Բաթերվորթի, Չեբիշևի հաճախականության արձագանքով, ինչպես նաև: Cauer (էլիպսային զտիչներ): Սա ըստ ֆունկցիայի կարագ, cheby1, cheby2Եվ էլիպ. Այս բոլոր գործառույթները կարող են օգտագործվել նաև անալոգային ֆիլտրերը հաշվարկելու համար (տե՛ս ավելի վաղ): Դիսկրետ հաշվարկման տարբերակի նշան է «s» տողի բացակայությունը մուտքային պարամետրերի ցանկում: Գոյություն ունեն նաև այս ֆիլտրերի պահանջվող կարգը որոշելու գործառույթներ՝ հիմնվելով նշված հաճախականության արձագանքման պարամետրերի վրա (անցումների և կանգառների գոտիների անջատման հաճախականությունները, ինչպես նաև այդ տիրույթներում թույլատրելի ալիքները): Սա ըստ ֆունկցիայի buttord, cheb1ord, cheb2ord, ellipord. Ինչպես ֆիլտրի սինթեզի գործառույթները, այս գործառույթները թույլ են տալիս որոշել անալոգային ֆիլտրերի պահանջվող կարգը (տե՛ս ավելի վաղ): Դիսկրետ հաշվարկման տարբերակի նշան է «s» տողի բացակայությունը մուտքային պարամետրերի ցանկում:

Որպես օրինակ, մենք սինթեզում ենք չորրորդ կարգի էլիպսաձև ցածրանցիկ ֆիլտր նույն պարամետրերով, ինչ նախորդ օրինակներից մեկում անալոգային ֆիլտրը (անջատման հաճախականությունը 3 կՀց, հաճախականության արձագանքման ալիքը անցման գոտում 1 դԲ և ազդանշանի ճնշումը կանգառում 20 դԲ): Վերցնենք նմուշառման հաճախականությունը 12 կՀց: Սինթեզից հետո մենք ֆունկցիայի միջոցով կկառուցենք ստացված ֆիլտրի հաճախականության արձագանքի և փուլային արձագանքի գրաֆիկները հաճախ.

    Fs = 12000; % նմուշառման հաճախականություն
    F0 = 3000; % անջատման հաճախականություն
    = էլիպ (4, 1, 20, F0/Fs*2); % ֆիլտրի հաշվարկ
    freqz (b, a, , Fs); % գրաֆիկի արդյունք

Սինթեզի մեթոդները, որոնք չեն օգտագործում անալոգային նախատիպ, կոչվում են ուղղակի: Դրանք, իրենց հերթին, նույնպես կարելի է բաժանել երկու խմբի՝ ռեկուրսիվ և ոչ ռեկուրսիվ ֆիլտրերի սինթեզման մեթոդներ։

Ոչ ռեկուրսիվ ֆիլտրերի ուղղակի սինթեզի գործառույթները ներառում են հետևյալը.

  • Գործառույթներ, որոնք իրականացնում են ֆիլտրի սինթեզը ցանկալի հաճախականության արձագանքի հակադարձ Ֆուրիեի փոխակերպմամբ և արդյունքում ստացվող իմպուլսային արձագանքի հետագա բազմապատկումը որոշակի կշռման ֆունկցիայով (պատուհանով)՝ թուլացնելու հաճախականության արձագանքման ալիքները, որոնք հայտնվում են Գիբսի էֆեկտի պատճառով: Սրանք են գործառույթները եղևնի 1Եվ եղևնի2. Սա նաև ներառում է ցածր անցումային ֆիլտրի սինթեզի գործառույթը հաճախականության արձագանքի կոսինուսային հարթեցմամբ. եղեւնիներ. Բացի այդ, գործառույթը կայսերորդթույլ է տալիս, հիմնվելով հաճախականության պատասխանի տրված պարամետրերի վրա, Կայզերի պատուհանի միջոցով գնահատել սինթեզի ընթացքում անհրաժեշտ ֆիլտրի կարգը:
  • Գործառույթներ, որոնք իրականացնում են ստացված ֆիլտրի հաճախականության պատասխանի ստանդարտ շեղումը նշվածից: Սրանք են գործառույթները եղջերուներ, եղեւնիներԵվ եղևնիներ1. Վերջին երկու գործառույթները լուծում են օպտիմալացման խնդիր՝ սահմանվածից հաճախականության պատասխանի առավելագույն շեղման սահմանափակմամբ: Սա թույլ է տալիս խուսափել անցումային շերտերի մոտ հաճախականության արձագանքման մեծ արտանետումների առաջացումից:
  • Գործառույթներ, որոնք իրականացնում են նվազագույնի օպտիմալացում, այսինքն՝ նվազագույնի հասցնելով ստացված ֆիլտրի հաճախականության պատասխանի գագաթնակետային շեղումը նշվածից: Արդյունքն այն է, որ զտիչներ միատեսակ հաճախականության արձագանքման իմպուլսացիաներով: Այս խումբը ներառում է գործառույթներ ռեմեզ(Remez մեթոդի ստանդարտ տարբերակը, որն իրականացվել է ազդանշանների մշակման փաթեթի առաջին իսկ տարբերակներում) և կրեմեզ(ընդլայնված տարբերակ, որն աջակցում է ոչ գծային փուլային արձագանքով և բարդ գործակիցներով ֆիլտրերի սինթեզին): Բացի այդ, գործառույթը հիշելթույլ է տալիս հաճախականության պատասխանի տվյալ պարամետրերի հիման վրա գնահատել սինթեզի ընթացքում ֆիլտրի պահանջվող կարգը՝ օգտագործելով Remez մեթոդը:

Որպես օրինակ, մենք սինթեզում ենք 32-րդ կարգի ոչ ռեկուրսիվ ցածր անցումային ֆիլտր, օգտագործելով Remez մեթոդը նույն անջատման և նմուշառման հաճախականությամբ, ինչպես նախորդ օրինակում (անջատման հաճախականությունը 3 կՀց, նմուշառման հաճախականությունը 12 կՀց): Եկեք սահմանենք կանգառի սկիզբը 3,5 կՀց: Սինթեզից հետո մենք կկառուցենք իմպուլսային արձագանքի գրաֆիկները, ինչպես նաև ստացված ֆիլտրի հաճախականության արձագանքը (ֆիլտրի հաճախականության արձագանքը գծային է, ուստի իմաստ չունի ցուցադրել դրա գրաֆիկը): Մենք ցուցադրում ենք հաճախականության արձագանքը գծային ուղղահայաց մասշտաբով, որպեսզի հստակ ցուցադրենք դրա իմպուլսների միատեսակությունը:

    Fs = 12000; % նմուշառման հաճախականություն
    F0 = 3000; % անջատման հաճախականություն
    F1 = 3500; % կանգառի սկիզբ
    b = remez(32, , ); % ֆիլտրի հաշվարկ
    impz(b) % իմպուլսային պատասխանի գծապատկեր
    = freqz (b, 1, , Fs); % բարդ փոխանցման գործակից
    գործիչ
    գծապատկեր(f, abs(h)) % հաճախականության արձագանքման գծապատկեր
    ցանց

Ռեկուրսիվ ֆիլտրերի ուղղակի սինթեզի գործառույթները ներառում են հետևյալը.

  • yulewalk- ռեկուրսիվ ֆիլտրի սինթեզ կամայական մաս-մաս գծային հաճախականության արձագանքով՝ օգտագործելով Yule-Walker մեթոդը:
  • invfreqz- այս գործառույթը նախատեսված է համակարգերի նույնականացման խնդիրը լուծելու համար, այն թույլ է տալիս որոշել դիսկրետ համակարգի փոխանցման ֆունկցիայի համարիչի և հայտարարի գործակիցները տարբեր հաճախականությունների այս փոխանցման ֆունկցիայի արժեքների մի շարքից:

Եզրափակելով, մենք կթվարկենք մի շարք գործառույթներ, որոնք ներառված չեն վերը թվարկված խմբերում: Գործառույթ maxflatնախատեսված է ընդհանրացված Butterworth ֆիլտրի սինթեզի համար (նման ֆիլտրերի համար փոխանցման ֆունկցիայի զրոների թիվը գերազանցում է նրա բևեռների թիվը)։ Գործառույթ ներծծվելըկատարում է ֆիլտրերի սինթեզ, որոնք նախատեսված են ազդանշանը զտելու համար, երբ կատարում են ինտերպոլացիա և ջնջում: Վեկտորի ոլորման գործողությունը կարող է ներկայացվել որպես վեկտոր-մատրիցի արտադրյալ, և այս արտադրյալի մեջ ներգրավված մատրիցը կարող է հաշվարկվել ֆունկցիայի միջոցով. convmtx. Ի վերջո, գործառույթը սգոլայկատարում է Savitzky-Golay հարթեցնող ֆիլտրի սինթեզ։ Քանի որ, ինչպես նկարագրված է վերևում, Savitzky-Golay ֆիլտրը մշակում է ազդանշանի առանձին բլոկներ, այդպիսի ֆիլտրը ստացիոնար համակարգ չէ: Հետևաբար գործառույթը սգոլայվերադարձնում է համարժեք ոչ ռեկուրսիվ ֆիլտրի ժամանակով փոփոխվող գործակիցների մի ամբողջ մատրիցա:

Ազդանշանների մշակման փաթեթից բացի, մի շարք դիսկրետ ֆիլտրի սինթեզի գործառույթներ հասանելի են Հաղորդակցության և Ֆիլտրի ձևավորման փաթեթներում:

MATLAB-ի շատ օգտատերերի մտքում «սպեկտրային վերլուծություն» բառերը խիստ կապված են ֆունկցիայի հետ fft(տե՛ս «Դիսկրետ ազդանշանների փոխակերպման գործառույթներ» հետագա բաժինը), որն իրականացնում է դիսկրետ Ֆուրիեի փոխակերպում (DFT): Այնուամենայնիվ, սա ընդամենը մեկ առ մեկ գծային փոխակերպում է, տալով կատարումըդետերմինիստական ​​ազդանշան հաճախականության տիրույթում: Եթե ​​վերլուծված ազդանշանն է պատահական, նրա համար դա միայն իմաստ ունի գնահատականսպեկտրային խտություն ուժ, որի հաշվարկի համար անհրաժեշտ է այս կամ այն ​​կերպ կատարել առկա տվյալների միջինացում։ Բացի այդ, որոշ դեպքերում մենք գիտենք որոշ լրացուցիչ տեղեկություններ վերլուծվող ազդանշանի մասին, և նպատակահարմար է այս տեղեկատվությունը հաշվի առնել սպեկտրային վերլուծության ժամանակ:

Պատահական ազդանշանների սպեկտրային վերլուծության մեթոդները բաժանվում են երկու մեծ դասի՝ ոչ պարամետրային և պարամետրային: IN ոչ պարամետրիկ(ոչ պարամետրիկ) մեթոդները օգտագործում են միայն վերլուծված ազդանշանի նմուշներում պարունակվող տեղեկատվությունը: Պարամետրիկ(պարամետրիկ) մեթոդները ենթադրում են որոշ վիճակագրական առկայություն մոդելներպատահական ազդանշան, և սպեկտրային վերլուծության գործընթացը այս դեպքում ներառում է որոշում պարամետրերայս մոդելը. Օգտագործվում է նաև մոդելի վրա հիմնված սպեկտրի վերլուծություն (MBSA) տերմինը:

Ազդանշանների մշակման փաթեթը պարունակում է գործառույթներ, որոնք իրականացնում են սպեկտրային վերլուծության մի շարք մեթոդներ՝ ինչպես պարամետրային, այնպես էլ ոչ պարամետրիկ (պետք է ևս մեկ անգամ ընդգծել, որ սպեկտրային վերլուծություն ասելով հասկանում ենք գնահատում Պատահական գործընթացի հզորության սպեկտրային խտությունը) Բացի այդ, կան պատահական դիսկրետ ազդանշանների այլ միջինացված բնութագրերի ստացման գործառույթներ։

Դիսկրետ պատահական գործընթացի սպեկտրալ բնութագրերը որոշելու համար հաշվարկվում է երկարությամբ սահմանափակված հատվածի միջին հզորության սպեկտրը, այնուհետև հատվածի երկարությունը հակված է անսահմանության.

. (1)

Այստեղ x(կ) - պատահական գործընթացի նմուշներ, Տ- նմուշառման ժամանակահատվածը. Վերևի նշագիծը նշանակում է իրացումների համույթի միջինացում:

Բացի այդ, այս սպեկտրը կարող է արտահայտվել պատահական գործընթացի հարաբերակցության ֆունկցիայի միջոցով.

. (2)

Այս արտահայտությունը Վիներ-Խինչին թեորեմի դիսկրետ անալոգն է. Դիսկրետ պատահական գործընթացի սպեկտրը նրա հարաբերակցության ֆունկցիայի Ֆուրիեի փոխակերպումն է.

Ինչպես արդեն նշվեց, պատահական գործընթացի սպեկտրը հաշվարկելու ոչ պարամետրային մեթոդների կիրառման ժամանակ օգտագործվում է միայն ազդանշանի նմուշներում պարունակվող տեղեկատվությունը` առանց որևէ լրացուցիչ ենթադրության: Ազդանշանների մշակման փաթեթն իրականացնում է երեք այդպիսի մեթոդ՝ պարոդոգրամ, Ուելչի մեթոդ և Թոմսոնի մեթոդ:

Պարոդոգրամը ստացված հզորության սպեկտրային խտության գնահատումն է Նհաշվում է մեկ իրականացումպատահական գործընթաց՝ ըստ սահմանման (1) (բնականաբար, ոչ թե սահմանափակում վերցնելով, այլ վերջավոր թվով տերմինների միջինացում): Եթե ​​սպեկտրի հաշվարկներում օգտագործվում է կշռման ֆունկցիա (պատուհան), ստացված հզորության սպեկտրի գնահատումը կոչվում է. փոփոխված պարոդոգրամ(փոփոխված պարոդոգրամ):

Հարաբերությունը (2) բավարարվում է միայն օգտագործված նմուշների անսահման թվով, հետևաբար, ցանկացած վերջավորի համար ՆՀզորության սպեկտրային խտության պարոդոգրամի գնահատումը պարզվում է տեղահանված- ստացվում է, որ գումարի ներսում (2) ազդանշանի հարաբերակցության ֆունկցիան բազմապատկվում է եռանկյուն քաշի ֆունկցիայով։ Բացի այդ, կարելի է ցույց տալ, որ պարոդոգրամը ուժի սպեկտրային խտության վավերական գնահատական ​​չէ, քանի որ ցրվածություննման գնահատականը համեմատելի է իր մաթեմատիկական ակնկալիքների քառակուսու հետ Ն. Քանի որ օգտագործվող նմուշների քանակն ավելանում է, պարոդոգրամի արժեքները սկսում են ավելի ու ավելի արագ տատանվել. նրա գրաֆիկը դառնում է ավելի ու ավելի կոշտ:

Ազդանշանների մշակման փաթեթում պարոդոգրամը (ներառյալ փոփոխվածը) հաշվարկվում է ֆունկցիայի միջոցով. պարոդոգրամ.

Պարոդոգրամի ատամնաշարը նվազեցնելու համար անհրաժեշտ է կիրառել որոշակի միջինացում։ Բարթլեթն առաջարկեց վերլուծված ազդանշանը բաժանել չհամընկնող հատվածների, յուրաքանչյուր հատվածի համար հաշվարկել պարոդոգրամ, այնուհետև միջինացնել այդ պարոդոգրամները։ Եթե ​​սեգմենտի տևողության ընթացքում ազդանշանի հարաբերական ֆունկցիան քայքայվում է մինչև չնչին արժեքներ, ապա առանձին հատվածների պարոդոգրամները կարելի է համարել անկախ: Ուելչը երկու բարելավում է կատարել Բարթլետի մեթոդի մեջ՝ կշռման ֆունկցիայի օգտագործումը և ազդանշանի բաժանումը. համընկնումբեկորներ. Կշռման ֆունկցիայի օգտագործումը հնարավորություն է տալիս նվազեցնել սպեկտրի տարածումը և նվազեցնել կողմնակալությունը էներգիայի խտության սպեկտրի ստացված գնահատականում՝ լուծաչափի աննշան վատթարացման գնով: Համընկնող սեգմենտները ներդրվել են դրանց թիվը մեծացնելու և գնահատման շեղումը նվազեցնելու նպատակով:

Welch մեթոդով (նաև կոչվում է միջինացված փոփոխված պարոդոգրամի մեթոդ) հաշվարկները կազմակերպվում են հետևյալ կերպ. ազդանշանի նմուշների վեկտորը բաժանվում է համընկնող հատվածների, յուրաքանչյուր հատվածը բազմապատկվում է օգտագործված կշռման ֆունկցիայով, փոփոխված պարոդոգրամները հաշվարկվում են կշռված հատվածների, պարոդոգրամների համար։ բոլոր հատվածները միջինացված են:

Welch մեթոդը սպեկտրային վերլուծության ամենատարածված պարոդոգրամային մեթոդն է: Ազդանշանների մշակման փաթեթում այն ​​իրականացվում է ֆունկցիայի միջոցով փուելչ.

Թոմսոնի մեթոդը, որն իրականացվում է ֆունկցիայի կողմից pmtm, հիմնված օգտագործման վրա ընդլայնել գնդաձև գործառույթները(պրոլատային սֆերոիդային ֆունկցիաներ): Այս վերջավոր տևողության ֆունկցիաները ապահովում են էներգիայի առավելագույն կոնցենտրացիան տվյալ հաճախականության գոտում: Բացի բուն սպեկտրային գնահատումից, ֆունկցիան pmtmկարող է վերադարձնել իր վստահության միջակայքը: Որոշ ժամանակ է պահանջվում պրոլատի սֆերոիդային ֆունկցիաները հաշվարկելու համար, ուստի ֆունկցիան մի քանի անգամ օգտագործելիս pmtmԴուք կարող եք արագացնել հաշվարկները՝ նախապես հաշվարկելով վերլուծության համար անհրաժեշտ գործառույթները և դրանք տվյալների բազայում պահելով։ Նման տվյալների բազայի հետ աշխատելու համար (դա MAT ֆայլ է անունով dpss.mat) ֆունկցիաների ընտանիք է, որոնց անունները սկսվում են տառերով dpss (dpss- ֆունկցիաների հաշվարկ, dpssload- տվյալների բազայից բեռնել գործառույթների ընտանիք, dpsssave- տվյալների բազայում գործառույթների ընտանիքի պահպանում, dpssdir- տվյալների բազայի տեղեկատուի ելք, dpssclear- տվյալների բազայից գործառույթների ընտանիքի ջնջում):

Որպես օրինակ՝ մենք կձևավորենք էքսպոնենցիալ փոխկապակցված պատահական գործընթացի իրականացում և կկատարենք դրա սպեկտրային վերլուծությունը՝ օգտագործելով թվարկված երեք մեթոդները: Մեզ անհրաժեշտ պատահական ազդանշանը ստեղծվում է սովորական դիսկրետ սպիտակ աղմուկի միջոցով առաջին կարգի ռեկուրսիվ ֆիլտրի միջոցով.

X0 = randn (1, 1000);
a = 0.9;
X = զտիչ (1, , X0);

Մենք կառուցում ենք պարոդոգրամ.

պարոդոգրամ (X, , , 1)

Ինչպես տեսնում եք, պարոդոգրամը բավականին սրածայր է ստացվում։ Հիմա եկեք գնահատենք նույն իրականացման սպեկտրը՝ օգտագործելով Ուելչի մեթոդը.

pwelch (X, , , , 1)

Գրաֆիկի անկանոնությունը շատ ավելի քիչ է ստացվում։ Ի վերջո, մենք օգտագործում ենք Թոմսոնի մեթոդը.

pmtm (X, , , 1)

Ֆունկցիայի ելքի վրա pmtmԳրաֆիկը ցույց է տալիս վստահության միջակայքի սահմանները հզորության սպեկտրի գնահատման հետ մեկտեղ:

Պարամետրային մեթոդների օգտագործումը ենթադրում է որոշ մաթեմատիկականի առկայություն մոդելներվերլուծված պատահական գործընթացը: Այս դեպքում սպեկտրային վերլուծությունը հանգում է օպտիմալացման խնդրի լուծմանը, այսինքն՝ այդպիսին փնտրելուն պարամետրերմոդելներ, որոնցում այն ​​ամենամոտն է իրականում դիտարկվող ազդանշանին: Ազդանշանների մշակման փաթեթն իրականացնում է ավտոռեգեսիվ վերլուծության մի շարք տեսակներ և երկու մեթոդներ, որոնք հիմնված են ազդանշանի հարաբերակցության մատրիցայի սեփական արժեքների և վեկտորների վերլուծության վրա՝ MUSIC (Multiple SIgnal Classification) և EV (EigenVectors):

Համաձայն ավտոռեգեսիվ մոդելազդանշանն առաջանում է «զուտ ռեկուրսիվ» ֆիլտրի միջով դիսկրետ սպիտակ աղմուկի միջոցով Ն-րդ կարգը. Նման ազդանշանի հզորության սպեկտրային խտությունը համաչափ է ձևավորող ֆիլտրի փոխանցման ֆունկցիայի մոդուլի քառակուսուն։ Այսպիսով, սպեկտրային վերլուծության այս մեթոդը հանգում է տվյալ կարգի ֆիլտրի գործակիցների որոշմանը, հուզիչ սպիտակ աղմուկի հզորության գնահատմանը և հզորության սպեկտրային խտության վերլուծական հաշվարկին: Մոդելի գործակիցները որոշելու համար սխալը նվազագույնի է հասցվում գծային կանխատեսումազդանշան. Տեսական վերլուծությունը ցույց է տալիս, որ մոդելի օպտիմալ գործակիցները որոշվում են միայն ազդանշանի հարաբերակցության ֆունկցիայով։

Գործնականում մենք չգիտենք ուսումնասիրվող ազդանշանի իրական հարաբերակցության գործառույթը, հետևաբար, կանխատեսման սխալը նվազագույնի հասցնելու համար մենք օգտագործում ենք. գնահատականներ CFs ստացված ժամանակի միջինացումով: Մշակվել են ավտոռեգեսիվ վերլուծության մի շարք մեթոդներ, որոնք հիմնականում տարբերվում են եզրային էֆեկտների մշակման մոտեցմամբ (այսինքն՝ հաշվարկներում ընդգրկելու այն եզրային ազդանշանի նմուշները, որոնց համար CF-ը հաշվարկելիս չկա շեղված զույգ): Ազդանշանների մշակման փաթեթն իրականացնում է Բուրգի մեթոդը, կովարիանսային մեթոդը, փոփոխված կովարիանսային մեթոդը և ինքնագրեսիվ Յուլ-Ուոքերի մեթոդը:

Ավտոռեգեսիվ սպեկտրի վերլուծության մեթոդները առավել հարմար են ազդանշանների համար, որոնք իսկապես ավտոռեգեսիվ գործընթացներ են: Ընդհանուր առմամբ, այս մեթոդները լավ արդյունքներ են տալիս, երբ վերլուծված ազդանշանի սպեկտրն ունի հստակ սահմանված գագաթներ: Մասնավորապես, նման ազդանշանները ներառում են աղմուկով մի քանի սինուսոիդների գումար:

Ավտոռեգեսիվ մեթոդների կիրառման ժամանակ կարևոր է ճիշտ ընտրել ավտոռեգեսիվ մոդելի կարգը. այն պետք է կրկնակի լինի սինուսոիդային տատանումների քանակից, որոնք ենթադրաբար պարունակվում են վերլուծված ազդանշանում:

Ազդանշանների մշակման փաթեթում ավտոռեգեսիվ վերլուծության յուրաքանչյուր մեթոդ համապատասխանում է երկու ֆունկցիայի՝ մոդելի գործակիցների հաշվարկման գործառույթին և բուն սպեկտրային վերլուծության գործառույթին: Սպեկտրի վերլուծության ֆունկցիան անվանում է մոդելի գործակիցի հաշվարկման ֆունկցիա և այնուհետև հաշվարկում է սպեկտրը: Ֆունկցիաների անուններն ամփոփված են հետևյալ աղյուսակում։

Մեթոդի անվանումը

Մոդելի գործակիցների հաշվարկման ֆունկցիա

Սպեկտրալ վերլուծության ֆունկցիա

Կովարիանս մեթոդ արկով pcov
Փոփոխված կովարիանսային մեթոդ armcov pmcov
Բերգի մեթոդ արբուրգ պբուրգ
Autoregressive Yule-Walker մեթոդ արյուլե սյունաձև

Վերոնշյալ օրինակում առաջացած էքսպոնենցիալ փոխկապակցված պատահական ազդանշանը առաջին կարգի ավտոռեգեսիվ գործընթաց է, հետևաբար սպեկտրային վերլուծության թվարկված մեթոդները բավականին համարժեք են դրա համար: Եկեք կիրառենք Բերգի մեթոդը՝ սահմանելով ավտոռեգեսիվ մոդելի հերթականությունը մեկին (սա ֆունկցիայի երկրորդ պարամետրն է. պբուրգ):

pburg (X, 1, , 1)

Ստացված հարթ կորը գործնականում համընկնում է այս պատահական գործընթացի տեսական սպեկտրի հետ:

MUSIC (Multiple SIgnal Classification) մեթոդը նախատեսված է ազդանշանների սպեկտրային վերլուծության համար, որոնք մի քանի սինուսոիդների (ավելի ճիշտ՝ ընդհանուր դեպքում՝ մի քանի բարդ էքսպոնենցիալների) գումարն են սպիտակ աղմուկով։ Նման ազդանշանների սպեկտրային վերլուծության նպատակը, որպես կանոն, ոչ թե սպեկտրը որպես այդպիսին հաշվարկելն է, այլ ներդաշնակ բաղադրիչների հաճախականությունները և մակարդակները (ամպլիտուդները կամ հզորությունները): MUSIC մեթոդը նախատեսված է հենց դրա համար, հետևաբար ազդանշանի մակարդակի կախվածությունը դրա օգնությամբ ստացված հաճախականությունից կոչվում է. կեղծ սպեկտր(կեղծ սպեկտր):

Մեթոդը հիմնված է ազդանշանների հարաբերակցության մատրիցայի սեփական արժեքների և սեփական վեկտորների վերլուծության վրա: Վերլուծություն կատարելիս անհրաժեշտ է նշել մոդելի հաջորդականությունը, այսինքն՝ ազդանշանի մեջ ակնկալվող բարդ էքսպոնենցիալների քանակը։

Ազդանշանների մշակման փաթեթում MUSIC մեթոդն իրականացվում է ֆունկցիայի միջոցով pmusicև ֆունկցիան rootmusicթույլ է տալիս ստանալ ազդանշանի ներդաշնակ բաղադրիչների հաճախականությունների և հզորությունների գնահատականներ:

MUSIC-ի մերձավոր ազգականը eigenvectors (EV) մեթոդն է: Դրա միակ տարբերությունն այն է, որ հաշվարկման բանաձևերում սեփական վեկտորները բազմապատկվում են համապատասխան սեփական արժեքներին հակադարձ համեմատական ​​կշռման գործակիցներով։ Գրականությունը հայտնում է, որ EV մեթոդը արտադրում է ավելի քիչ կեղծ սպեկտրային գագաթներ, քան MUSIC-ը և, ընդհանուր առմամբ, ապահովում է աղմուկի սպեկտրալ ձևի ավելի լավ ներկայացում:

Ազդանշանների մշակման փաթեթում EV մեթոդն իրականացվում է ֆունկցիայի միջոցով պիջև ֆունկցիան rooteigթույլ է տալիս ստանալ ազդանշանի ներդաշնակ բաղադրիչների հաճախականությունների և հզորությունների գնահատականներ:

Պետք է ընդգծել, որ կեղծ սպեկտրները իրական հզորության խտության սպեկտրի գնահատականներ չեն, այլ միայն սպեկտրալ են: կեղծ գնահատականներ, որը թույլ է տալիս գնահատել սինուսոիդային կամ նեղաշերտ ազդանշանային բաղադրիչների հաճախականությունը մի փոքր ավելի բարձր լուծաչափով, քան ավտոռեգեսիվ մեթոդները:

Դիսկրետ Ֆուրիեի փոխակերպումը, որն օգտագործվում է ոչ պարամետրային սպեկտրային գնահատման բոլոր մեթոդներում, ենթադրում է վերլուծված ազդանշանի հատվածի պարբերական շարունակություն: Այս դեպքում բեկորների միացումներում կարող են ցատկեր առաջանալ՝ հանգեցնելով սպեկտրային շրջանում զգալի մակարդակի կողային բլթերի առաջացմանը։ Այս էֆեկտը թուլացնելու համար ազդանշանը բազմապատկվում է այն ազդանշանով, որը նվազում է կենտրոնից դեպի եզրեր, նախքան DFT-ն կատարելը: քաշի ֆունկցիան (պատուհան) Արդյունքում, հատվածների հանգույցներում ցատկերի մեծությունը նվազում է, և սպեկտրի անցանկալի կողային բլթերի մակարդակը նույնպես փոքրանում է. դրա գինը սպեկտրային գագաթների որոշակի ընդլայնումն է:

Ի լրումն սպեկտրային վերլուծության, կշռման ֆունկցիաները օգտագործվում են ոչ ռեկուրսիվ ֆիլտրերի սինթեզում ցանկալի հաճախականության արձագանքման հակադարձ Ֆուրիեի փոխակերպմամբ: Այս դեպքում դրանք թույլ են տալիս մեծացնել ազդանշանի ճնշումը ֆիլտրի կանգառի գոտում՝ անցուղու որոշակի ընդլայնման պատճառով:

Ներկայումս ազդանշանների մշակման փաթեթը պարունակում է մոտ մեկ տասնյակ կշռման գործառույթներ: Դրանցից մի քանիսի տարածումը պայմանավորված է հաշվողական պարզությամբ, իսկ մյուսները ինչ-որ առումով օպտիմալ են:

Ամենապարզը ֆունկցիայի կողմից իրականացվող ուղղանկյուն պատուհանն է ուղղանկյուն(մինչև 5.0 ներառյալ փաթեթային տարբերակներում այս ֆունկցիան ուներ անվանումը տուփ վագոն) Ուղղանկյուն պատուհանը համապատասխանում է կշռման բացակայությանը, այս ֆունկցիան փաթեթում ներառված է միայն կշռման գործառույթների փաթեթի պաշտոնական ամբողջականության համար: Եռանկյուն պատուհանն իրականացվում է ֆունկցիայի միջոցով եռանկյուն, Bartlett պատուհանը նույնպես ունի եռանկյունաձև ձև (գործառույթ բարթլեթ), այն միայն փոքր-ինչ տարբերվում է հաշվարկման եղանակով։

Մի քանի կշռման գործառույթներ ներդաշնակ բաղադրիչների համակցություններ են: Մենք դրանք թվարկում ենք կոսինուսների թվի աճման կարգով.

  • Հաննա պատուհան (գործառույթ Հանն), երբեմն սխալմամբ կոչվում է Հանինգի պատուհան, մեկ կոսինուս տերմին է։
  • Համմինգ պատուհան (ֆունկցիա խոզապուխտ) - մեկ կոսինուսային տերմին:
  • Blackman պատուհան (գործառույթ սեւամորթ) - երկու կոսինուս տերմին:
  • Blackman-Harris պատուհան (գործառույթ blackmanharris) - երեք կոսինուսի անդամ:
  • Nuttall պատուհան (Blackman-Harris պատուհանի այլընտրանքային տարբերակ, գործառույթ nuttallwin) - երեք կոսինուսի անդամ:

Մնացած պատուհանները նկարագրված են ավելի բարդ մաթեմատիկական հարաբերություններով: Գաուսի պատուհանի ձևը (գործառույթ գաուսվին) ինքնին բացատրելի է։ Փոփոխված Bartlett-Hanna պատուհանը (գործառույթ բարթանվին) Bartlett-ի և Hanna-ի պատուհանների գծային համադրություն է: Բոմանի պատուհան (ֆունկցիա բոհմանվին) երկու միանման կոսինուսային իմպուլսների ոլորումն է: Չեբիշևի պատուհան (գործառույթ chebwin) ունի ֆիքսված մակարդակի կողային բլթեր (նշված է հաշվարկի ժամանակ) և հաշվարկվում է պատուհանի հաճախականության արձագանքի հակադարձ Ֆուրիեի փոխակերպմամբ։ Kaiser պատուհան (գործառույթ կայզեր) ունի նաև պարամետր, որը կարգավորում է կողային բլթերի մակարդակը և հիմնական բլթի լայնությունը, այս պատուհանը հաշվարկելիս օգտագործվում են փոփոխված Bessel ֆունկցիաները։ Tukey պատուհան (գործառույթ tukeywin) ուղղանկյուն է՝ կոսինուսով հարթեցված եզրերով։ Հարթեցման գործակցի ծայրահեղ արժեքների դեպքում այն ​​վերածվում է ուղղանկյուն պատուհանի կամ Հանի պատուհանի:

Ի վերջո, գործառույթը պատուհանապահովում է ընդհանուր ինտերֆեյս՝ պատուհանին հատուկ հաշվարկային գործառույթներ կանչելու համար:

Այս կատեգորիային պատկանող ֆունկցիաները հաշվարկում են ազդանշանների տարբեր վիճակագրական պարամետրեր: Գործառույթները կարելի է բաժանել մի քանի խմբերի.

Առաջին խումբը վերաբերում է հարաբերակցության և կովարիանսի ֆունկցիաների հաշվարկին (այստեղ պետք է հիշել, որ ներքին և արտաքին տերմինաբանության մեջ այս հասկացությունները չեն համընկնում. այս վերանայումն օգտագործում է MATLAB-ում ընդունված արտասահմանյան տարբերակը): Գործառույթ xcorrթույլ է տալիս գնահատել ազդանշանի փոխկապակցման ֆունկցիան կամ երկու ազդանշանների խաչաձև հարաբերակցության ֆունկցիան: Այս ֆունկցիայի տարբերակը, որը նախատեսված է երկչափ ազդանշանների հետ աշխատելու համար, կոչվում է xcorr2. Գործառույթ xcovնախատեսված է ազդանշանի կովարիանսային ֆունկցիայի կամ երկու ազդանշանների փոխադարձ կովարիանսի ֆունկցիայի գնահատման համար։ Գործառույթներ կովԵվ շտկող, որը ներառված է բազային MATLAB գրադարանում, թույլ է տալիս ստանալ, համապատասխանաբար, կովարիանսային մատրիցան և հարաբերակցության գործակիցների մատրիցան՝ միջինացնելով պատահական տվյալների մի քանի իրականացում: Գործառույթ corrmtxվերադարձնում է միջանկյալ տվյալների մատրիցը՝ ազդանշանի հարաբերակցության մատրիցը գնահատելու համար, և կարող է նաև վերադարձնել այս մատրիցն ինքը:

Գործառույթների հաջորդ խումբը հաշվարկում է վիճակագրական բնութագրերը հաճախականության տիրույթում՝ օգտագործելով Ուելչի ոչ պարամետրիկ մեթոդը (տե՛ս վերևում): Գործառույթ csdնախատեսված է գնահատման համար փոխադարձ սպեկտրային խտություներկու պատահական գործընթաց: Այն կարող է նաև վերադարձնել վստահության միջակայքը ստացված գնահատման համար: Գործառույթ համահունչտալիս է քառակուսի մոդուլի գնահատում փոխադարձ համահունչ գործառույթներերկու պատահական գործընթաց: Գործառույթ tfeթույլ է տալիս գնահատել բարդ փոխանցման գործակիցհամակարգ՝ իր մուտքային և ելքային ազդանշանների իրականացման համար։

Ի վերջո, գործառույթը psdplotՕգտագործվում է բոլոր սպեկտրային գնահատման ֆունկցիաների կողմից՝ հզորության սպեկտրային խտությունը գծագրելու համար: Այն կարող է նաև բացահայտորեն կոչվել, օրինակ՝ գծային մասշտաբով գրաֆիկ ցուցադրել լռելյայն լոգարիթմականի փոխարեն, կամ ցույց տալ մի քանի սպեկտր մեկ գրաֆիկի վրա։

Պարամետրային մոդելավորման և գծային կանխատեսման գործառույթներ

Տակ պարամետրային մոդելավորումվերաբերում է պատահական գործընթացի որոշակի մաթեմատիկական մոդելի ընտրությանը և այս մոդելի պարամետրերի հետագա ընտրությանը, որպեսզի ապահովվի մոդելի կողմից առաջացած ազդանշանի և առկա իրական տվյալների նմուշի միջև առավելագույն համապատասխանությունը:

Գործնականում լայնորեն կիրառվողը ավտոռեգեսիվ (AR) մոդելն է, որտեղ պատահական ազդանշան է ստեղծվում՝ դիսկրետ սպիտակ աղմուկը «զուտ ռեկուրսիվ» (այսինքն՝ մուտքային ազդանշանի հետաձգված նմուշներ չօգտագործելով) ձևավորման ֆիլտրի միջով անցնելու միջոցով: Ազդանշանի մշակման փաթեթի չորս առանձնահատկություններ. արբուրգ, արկով, armcovԵվ արյուլե- նախատեսված են ձևավորող ֆիլտրի գործակիցների և ֆիլտրը գրգռող սպիտակ աղմուկի ցրման (հզորության) գործակիցների գնահատման համար: Այս գործառույթների կողմից օգտագործվող հաշվարկման մեթոդները նշված են եղել ավելի վաղ՝ «Ավտոգրեսիվ մեթոդներ» բաժնում, որտեղ քննարկվել է ավտոռեգեսիվ սպեկտրային վերլուծությունը:

Եթե ​​ունենք նախահաշիվ բարդ փոխանցման գործակիցտարբեր հաճախականությունների համակարգերում հնարավոր է կառուցել համակարգի իրագործելի մոդել, որի հաճախականության արձագանքը հնարավորինս մոտ կլինի չափվածին: Համակարգի իրագործելիությունն այստեղ նշանակում է նրա փոխանցման ֆունկցիայի ներկայացելիությունը համարիչի և հայտարարի բազմանդամների տրված կարգերով կոտորակային ռացիոնալ ֆունկցիայի տեսքով։ Պարամետրային մոդելավորումն այս դեպքում հանգում է փոխանցման ֆունկցիայի համարիչի և հայտարարի բազմանդամների օպտիմալ գործակիցների որոնմանը։ Այս խնդիրը լուծվում է ազդանշանների մշակման փաթեթի երկու գործառույթով՝ ֆունկցիա invfreqsթույլ է տալիս կառուցել անալոգային համակարգի մոդել և գործառույթ invfreqzկատարում է նմանատիպ գործողություն, երբ կիրառվում է դիսկրետ համակարգերի վրա:

Պարամետրային մոդելավորման խնդրի մեկ այլ տարբերակ ներառում է համակարգի մոդելի կառուցում` հիմնված դրա առկա գնահատման վրա իմպուլսային արձագանք. Այս նպատակով ազդանշանների մշակման փաթեթում կա երկու գործառույթ: Գործառույթ հակվածօգտագործում է այն փաստը, որ ռեկուրսիվ դիսկրետ համակարգի իմպուլսային արձագանքը, բազմաթիվ բևեռների բացակայության դեպքում, դիսկրետ էքսպոնենցիոնալ ֆունկցիաների հանրագումար է (ընդհանուր դեպքում կոմպլեքս)։ Այս ֆունկցիայի կողմից իրականացվող ալգորիթմն ի սկզբանե մշակվել է 18-րդ դարում Բարոն դե Պրոնիի կողմից՝ էքսպոնենցիալ վերլուծական մոդելի պարամետրերը փորձարարական տվյալներին համապատասխանեցնելու նպատակով։ Ստացված համակարգի կայունությունը երաշխավորված չէ, բայց առաջինը nհաշվում է ( n- համակարգի փոխանցման ֆունկցիայի համարիչի կարգը) դրա իմպուլսային արձագանքի, որը նշված է հաշվարկի ժամանակ. ճիշտհամընկնում են նշվածների հետ։

Իմպուլսային արձագանքով համակարգի մոդելավորման երկրորդ գործառույթը ֆունկցիան է stmcb- չի ձգտում ապահովել իմպուլսային պատասխանների սկզբնական հատվածների ճշգրիտ համընկնում, փոխարենը նվազագույնի է հասցնում ստանդարտ շեղումտրվածից ստացված բնութագիրը, այսինքն՝ ստացված և ցանկալի իմպուլսային բնութագրերի նմուշների տարբերությունների մոդուլների քառակուսիների գումարը. Ֆունկցիան իրականացնում է Steiglitz-McBride իտերատիվ մեթոդը, որը նվազեցնում է ցանկալի համակարգի փոխանցման ֆունկցիայի բազմանդամների գործակիցների նկատմամբ գծային հավասարումների համակարգի բազմակի լուծմանը։

Որպես օրինակ՝ մենք ստանում ենք երրորդ կարգի համակարգի մոդել՝ օգտագործելով Prony և Steiglitz-McBride մեթոդները՝ որպես նմուշ սահմանելով եռանկյունաձև իմպուլսային պատասխան.

h = ; % իմպուլսային արձագանք
= prony (h, 3, 3); % Prony մեթոդ
= stmcb (h, 3, 3); % Steiglitz-McBride մեթոդ
Ստացված համակարգերի իմպուլսային արձագանքների % գրաֆիկները
impz(b1, a1, 30)
վերնագիր ("Prony")
գործիչ
impz(b2, a2, 30)
վերնագիր («Stmcb»)

Գրաֆիկների համեմատությունը հստակ ցույց է տալիս երկու ալգորիթմների միջև եղած տարբերությունները: Prony մեթոդն օգտագործելիս ստացված իմպուլսային պատասխանի առաջին չորս նմուշները ճշգրիտ համընկնում են նշված արժեքների հետ, սակայն նշված արժեքներից հետագա շեղումները մեծապես աճում են, իսկ նշված հատվածի ավարտից հետո «պոչը» նկատվում է բավականին բարձր մակարդակ, քանի որ ֆունկցիան հակվածորևէ ենթադրություն չի անում տվյալ հատվածից դուրս իմպուլսային արձագանքման պահանջվող արժեքների վերաբերյալ: Գործառույթ stmcbնվազագույնի է հասցնում քառակուսինվագարկման սխալ անվերջիմպուլսային արձագանքը, և բացահայտորեն նշված հատվածի վերջում այն ​​համարվում է հավասար զրոյի: Արդյունքում, նմուշների ճշգրիտ համապատասխանությունը տվյալ և ստացված իմպուլսային պատասխաններին չի նկատվում (բացառությամբ առաջինի), սակայն բնութագիրը վերարտադրելու սխալն ավելի համաչափ է «տարածվում» նմուշների վրա:

Եթե ​​դիսկրետ պատահական գործընթացը սպիտակ աղմուկ չէ, ապա դրա նմուշները պարզվում են փոխկապակցվածմիասին. Սա թույլ է տալիս, իմանալով գործընթացի հարաբերակցության գործառույթը, կանխատեսելդրա հաջորդ հաշվարկի արժեքը: Կանխատեսված արժեքը հաշվարկվում է որպես նախորդ գործընթացի նմուշների գծային համակցություն: Սա է հիմնական գաղափարը գծային կանխատեսում. Գծային կանխատեսումն օգտագործվում է պարամետրային սպեկտրային վերլուծության (տես ավելի վաղ), համակարգի նույնականացման, խոսքի ազդանշանների վերլուծության և դրանց փոխանցման ընթացքում տեղեկատվության սեղմման համար։

Գծային կանխատեսման վրա հիմնված համակարգերի մոդելները կարող են ներկայացվել տարբեր ձևերով և, համապատասխանաբար, նկարագրվել՝ օգտագործելով տարբեր պարամետրերի հավաքածուներ: Ազդանշանների մշակման փաթեթի մի շարք գործառույթներ թույլ են տալիս փոխարկել մոդելի նկարագրությունը մի ձևից մյուսը: Այս հատկանիշները թվարկված են հետևյալ աղյուսակում:

Վերջնական ձև

Ավտոկոռելյացիայի հաջորդականություն

Արտացոլման գործակիցներ

Կանխատեսման գործակիցներ

Arcsine պարամետրերը

Լոգարիթմական հարաբերակցություններ

Սպեկտրալ գծերի հաճախականություններ

Բնօրինակ ձև

Ավտոկոռելյացիայի հաջորդականություն

ac2rc, schurrc

Արտացոլման գործակիցներ

Կանխատեսման գործակիցներ

Arcsine պարամետրերը

Լոգարիթմական հարաբերակցություններ

Սպեկտրալ գծերի հաճախականություններ

Բացի այդ, ազդանշանների մշակման փաթեթն ունի մի քանի այլ գործառույթներ՝ կապված գծային կանխատեսման հետ: Այսպիսով, կանխատեսող ֆիլտրի գործակիցները հաշվարկելու համար անհրաժեշտ է լուծել գծային հավասարումների համակարգ, որի մատրիցը մուտքային ազդանշանի հարաբերակցության մատրիցն է։ Այս մատրիցն ունի մի շարք հատկություններ, որոնք կարող են նվազեցնել գծային հավասարումների համակարգը լուծելու համար անհրաժեշտ հաշվողական գործողությունների քանակը։ Նախ, հարաբերակցության մատրիցն է ինքնակազմակերպվել(այսինքն՝ այն կիրառելուց հետո այն չի փոխվում Հերմիտյան խոնարհում- փոխադրման համակցություններ բարդ խոնարհմամբ): Իրական ազդանշանի համար ինքնահամատեղումը պարզապես նշանակում է մատրիցայի համաչափություն հիմնական անկյունագծի նկատմամբ: Երկրորդ, անշարժ պատահական գործընթացի դեպքում (և միայն այդպիսի գործընթացների համար կարող է օգտագործվել հաստատուն պարամետրերով կանխատեսող ֆիլտր), հարաբերակցության մատրիցը հետևյալն է. Toeplitz մատրիցա- նրա անկյունագծերի երկայնքով, հիմնականին զուգահեռ, կան նույնական թվեր: Վերջապես, հավասարումների համակարգի աջ կողմը ներկայացնում է հարաբերակցության մատրիցայի առաջին սյունակը, որը տեղաշարժված է մեկ դիրքով: Գծային հավասարումների համակարգերը նշված հատկություններով մատրիցներով կոչվում են Yule-Walker հավասարումների համակարգեր, և դրանք լուծելու համար ռեկուրսիվ Լևինսոն-Դուրբինի մեթոդ. Այս կրկնվող ալգորիթմն իրականացվում է ֆունկցիայի կողմից Լևինսոն. Գործառույթ ռլևինսոնլուծում է հակադարձ խնդիրը - թույլ է տալիս գտնել ազդանշանի հարաբերակցության ֆունկցիայի նմուշների վեկտորը տրված գծային կանխատեսման գործակիցներից:

Գործառույթ lpcիրականացնում է գծային կանխատեսման գործակիցների հաշվարկը՝ օգտագործելով ավտոկոռելացիոն մեթոդը և հանդիսանում է ֆունկցիայի անալոգը արյուլե(Տե՛ս պարամետրային սպեկտրային վերլուծության ավելի վաղ բաժինը): Երկու գործառույթների միջև միակ տարբերությունը MATLAB կոդը է, որն օգտագործվում է հարաբերակցության մատրիցային գնահատականը հաշվարկելու համար: Արդյունքները, որոնք նրանք տալիս են, համընկնում են ճշգրտությամբ մինչև հաշվողական սխալներ:

Ազդանշանի ստեղծման գործառույթներ

Ազդանշանների մշակման փաթեթը ներառում է մի շարք գործառույթներ, որոնք նախատեսված են ստանդարտ ալիքի ձևեր ստեղծելու համար, որոնք սովորաբար հանդիպում են ազդանշանի մշակման տարբեր ծրագրերում:

Ոչ պարբերական ազդանշանների առաջացում

Ոչ պարբերական ազդանշանների ստեղծման բոլոր գործառույթները որպես պարամետրեր ստանում են ժամանակի ակնթարթների վեկտոր և լրացուցիչ փաստարկներ, որոնք նկարագրում են առաջացած իմպուլսի պարամետրերը: Վերադարձված արդյունքը ստացված ազդանշանի նմուշների վեկտորն է: Կան հետևյալ ձևի ազդանշանների գեներացման գործառույթներ.

  • ուղղանկյուններ
  • - մեկ ուղղանկյուն զարկերակի առաջացում, միակ լրացուցիչ պարամետրը իմպուլսի տեւողությունն է.
  • եռապատիկ
  • - մեկ եռանկյունաձև զարկերակի առաջացում, լրացուցիչ պարամետրեր են իմպուլսի տևողությունը և դրա անհամաչափության գործակիցը. - ուղղանկյուն սպեկտր ունեցող իմպուլսի առաջացում՝ ըստ sinc( բանաձեւի x) = մեղք (էջ x)/(էջ x) Այս ֆունկցիան չունի լրացուցիչ պարամետրեր.
  • գաուսպուլներ
  • - Գաուսյան ծրարով ռադիոզարկերակի առաջացում: Լրացուցիչ պարամետրերն են կրիչի հաճախականությունը, հարաբերական սպեկտրային լայնությունը և մակարդակը (դեցիբելներով), որով չափվում է այս սպեկտրային լայնությունը.
  • գմոնոպուլներ
  • - Գաուսի մոնոպուլսի առաջացում (նրա ձևը Գաուսի ֆունկցիայի առաջին ածանցյալն է): Լրացուցիչ պարամետր է առաջացած ազդանշանի սպեկտրի միջին հաճախականությունը:

Պարբերական ազդանշանների առաջացում

Այս խմբին պատկանող ֆունկցիաները որպես պարամետր ստանում են ժամանակի պահերի վեկտոր և առաջացած իմպուլսի պարամետրերը նկարագրող լրացուցիչ արգումենտներ։ Ստեղծված ազդանշանների ժամանակահատվածը 2p է: Տարբեր ժամանակահատվածով ազդանշաններ ստեղծելու համար անհրաժեշտ է համապատասխանաբար չափել ֆունկցիային փոխանցված ժամանակի փաստարկը: Վերադարձված արդյունքը ստացված ազդանշանի նմուշների վեկտորն է: Կան հետևյալ ձևի պարբերական ազդանշանների գեներացման գործառույթներ.

  • քառակուսի
  • - ուղղանկյուն իմպուլսների պարբերական հաջորդականության առաջացում: Լրացուցիչ պարամետր է զարկերակային աշխատանքային ցիկլը (զարկերակի տևողության հարաբերակցությունը զարկերակային կրկնության ժամանակահատվածին);
  • սղոցող ատամ
  • - պարբերական սղոցային ազդանշանի առաջացում: Լրացուցիչ պարամետր է պարբերական հաջորդականությունը կազմող եռանկյունաձև իմպուլսների անհամաչափության գործակիցը.
  • diric
  • - Դիրիխլեի ֆունկցիան. Լրացուցիչ պարամետր է ֆունկցիայի ամբողջական կարգը։ Դիրիխլե ֆունկցիան հաշվարկվում է diric բանաձևով x) = մեղք ( nx/2)/(nմեղք ( x/2));

Տարբեր հաճախականությամբ տատանումների առաջացում

Այս խումբը ներառում է երկու գործառույթ. ծլվլոցԵվ vco. Գործառույթ ծլվլոցառաջացնում է տատանումներ, որոնց ակնթարթային հաճախականությունը տատանվում է երեք հնարավոր օրենքներից մեկի համաձայն՝ գծային, քառակուսի կամ էքսպոնենցիալ։ Ֆունկցիան ավելի շատ հնարավորություններ ունի vco(Voltage Controlled Oscillator - լարման կառավարվող oscillator), որը թույլ է տալիս առաջացնել տատանումներ ակնթարթային հաճախականության փոփոխության կամայական օրենքով։ Ըստ էության, այս ֆունկցիան կատարում է հաճախականության մոդուլյացիա։

Իմպուլսային գնացքի սերունդ

Գործառույթ pulstranծառայում է նույն ձևի իմպուլսների վերջավոր հաջորդականության առաջացմանը՝ կամայականորեն սահմանված ուշացումներով և ամպլիտուդի բազմապատկիչներով: Իմպուլսների ձևը կարելի է ճշտել երկու եղանակներից մեկով՝ իմպուլսը ստեղծող ֆունկցիայի անունով կամ նմուշների արդեն հաշվարկված վեկտորով:

Որպես օրինակ, դիտարկեք գործառույթների օգտագործումը pulstranԵվ սինքվերականգնել անալոգային ազդանշանը իր դիսկրետ նմուշներից՝ Կոտելնիկովի թեորեմի համաձայն։

t = -5:0.1:10; % ժամանակ անալոգային ազդանշանի համար
k = 0:5; Դիսկրետ ազդանշանի նմուշների % թիվը
sd = ; % դիսկրետ ազդանշան
sa = pulstran (t, , «sinc»); % վերակառուցված անալոգային ազդանշան
stem(k, sd) Դիսկրետ ազդանշանի % գրաֆիկ
սպասիր
plot(t, sa, "r") % գծապատկեր անալոգային ազդանշանի
հետաձգել

Դիսկրետ ազդանշանի փոխակերպման գործառույթներ

Դիսկրետ ազդանշանների փոխակերպումներից ամենահայտնին Ֆուրիեի դիսկրետ փոխակերպումն է (DFT): Համապատասխան գործառույթը, օգտագործելով արագ Ֆուրիեի փոխակերպման (FFT) ալգորիթմը MATLAB-ում դասակարգվում է որպես տվյալների մշակման ֆունկցիա և ներկառուցված է (գործառույթներ fftԵվ ifft- միաչափ տարբերակ, fft2Եվ ifft2- երկչափ տարբերակ, fftshiftԵվ ifftshift- սպեկտրային նմուշների վեկտորի կեսերի վերադասավորում՝ զրոյական հաճախականությունը վեկտորի կեսին փոխանցելու համար): Փաստորեն, ազդանշանների մշակման փաթեթը պարունակում է գործառույթներ, որոնք իրականացնում են ավելի կոնկրետ փոխակերպումներ:

Ինչպես ցանկացած գծային փոխակերպում, DFT-ն կարող է ներկայացվել որպես փոխակերպման մատրիցայի բազմապատկում փոխակերպված ազդանշանի նմուշների սյունակով: Այս փոխակերպման մատրիցը DFT-ի համար հաշվարկվում է ֆունկցիայով dftmtx.

Կրկին, DFT-ի գծայինության շնորհիվ, ցանկացած սպեկտրային նմուշ կարող է ներկայացվել որպես նախնական ազդանշանի մշակման արդյունք ինչ-որ ֆիլտրով: Այս զտիչը ռեկուրսիվ ձևով ներկայացնելը տալիս է Գյորցելի ալգորիթմը, իրականացվում է ֆունկցիայի կողմից goertzel. Եթե ​​ընդամենը մի քանի սպեկտրային նմուշներ պետք է հաշվարկվեն, ապա այս ալգորիթմն ավելի արագ է, քան FFT-ն:

DFT-ի մերձավոր ազգականը դիսկրետ կոսինուսային փոխակերպումն է: Այն հաշվարկելիս ազդանշանի պարբերական շարունակության փոխարեն, որը ենթադրվում է DFT-ում, ժամանակի ընթացքում արտացոլվում են շարունակական ազդանշանի հարակից հատվածները։ Արդյունքում ազդանշանը դառնում է ժամանակի հավասարաչափ ֆունկցիա, և դրա սպեկտրը դառնում է իրական։ Այդ իսկ պատճառով DFT բանաձևում կոմպլեքս էքսպոնենցիալների փոխարեն հայտնվում են միայն կոսինուսներ, որոնք էլ տվել են այս փոխակերպման անվանումը։ Ֆունկցիաներով հաշվարկվում են առաջ և հակադարձ դիսկրետ կոսինուսի փոխակերպումները dctԵվ idctհամապատասխանաբար.

Դիսկրետ թվերի հաջորդականությունների վերլուծության կարևոր մեթոդ է z-փոխակերպումը, որի արդյունքը բարդ փոփոխականի ֆունկցիա է։ զ:

.

Մի շարք խնդիրների դեպքում անհրաժեշտ է հաշվարկել զ- փոխակերպում պարուրաձև եզրագծի վրա գտնվող կետերի համար. Նման եզրագծի երկայնքով z-փոխակերպման հաշվողականորեն արդյունավետ հաշվարկը օգտագործում է արագ Ֆուրիեի փոխակերպումը. այն իրականացվում է ֆունկցիայի մեջ czt.

Ֆուրիեի արագ փոխակերպման ալգորիթմի որոշ տարբերակներ իրականացնելիս արդյունավետությունը բարձրացնելու համար անհրաժեշտ է վերադասավորել մշակված վեկտորի տարրերը. հակադարձ բիթերի հերթականություն(սա նշանակում է, որ վեկտորի տարրի թվերի երկուական ներկայացման մեջ բիթերը կարդացվում են հակառակ հերթականությամբ, այնուհետև վեկտորը դասակարգվում է ըստ նոր տարրերի թվերի)։ Նման վերադասավորում կատարելու համար օգտագործեք ֆունկցիան դառակեր.

Նեղաշերտ ազդանշանները վերլուծելիս կարող է օգտակար լինել ազդանշանի մասին պատկերացնել որպես տատանում, որի ամպլիտուդը և սկզբնական փուլը տատանվում են ժամանակի ընթացքում: Նման ներկայացուցչություն ձեռք բերելու համար համալիր վերլուծական ազդանշան, որի իրական մասը համընկնում է սկզբնական ազդանշանի հետ, իսկ երևակայական մասը որոշվում է Հիլբերտի փոխակերպումըսկզբնական ազդանշանից: Հաճախականության տիրույթում վերլուծական ազդանշանը բնութագրվում է միակողմանի սպեկտրով. նրա սպեկտրային ֆունկցիան զրոյական չէ միայն դրական հաճախությունների դեպքում: Գործառույթ Հիլբերտհաշվում է վերլուծական ազդանշանը հաճախականության տիրույթում՝ հաշվարկելով առաջադիմական DFT-ը, զրոյացնելով սպեկտրի կեսը և այնուհետև հաշվարկելով հակադարձ DFT-ը:

Որպես օրինակ, եկեք հաշվարկենք վերլուծական ազդանշանը ուղղանկյուն ռադիո իմպուլսի համար.

s = զրոներ (256,1);
s(65:192) = cos(pi/2*(0:127)"); ռադիոզարկերի հաշվառման %
sa = հիլբերտ(ներ); % վերլուծական ազդանշան
f = (-128:127)/128; Գրաֆիկների համար նորմալացված հաճախականությունների % արժեքներ
ենթահող (2,1,1)
plot(f, abs(fftshift(fft(s)))) % իրական ազդանշանի սպեկտր
ենթահող (2,1,2)
գծապատկեր(f, abs(fftshift(fft(sa)))) անալիտիկ ազդանշանի % սպեկտր

Ստորին գրաֆիկը հստակ ցույց է տալիս սպեկտրի զրոյացումը բացասական հաճախականությունների շրջանում և կրկնապատկումը դրական հաճախականությունների շրջանում։

Cepstral վերլուծություն

Cepstral վերլուծությունը կապված է հոմոմորֆ ազդանշանի մշակման հետ: Նման մշակումը ենթակա է սուպերպոզիցիային ընդհանրացված սկզբունքին. եթե համակարգի մուտքային ազդանշանը մաթեմատիկական գործողության միջոցով ստացված մի քանի ազդանշանների համակցություն է: Ա, ապա ելքում առանձին ազդանշանների մշակման արդյունքները համակցվում են՝ օգտագործելով օպերացիան Բ. Cepstral անալիզը գտել է իր կիրառությունը, մասնավորապես, խոսքի մշակման խնդիրներում։ Ազդանշանների մշակումն ունի մի քանի գործառույթ՝ կապված գլխուղեղի վերլուծության հետ:

Գործառույթ recpsհաշվում է ազդանշանի իրական ցեպստրումը` միաժամանակ անտեսելով ֆազային սպեկտրում պարունակվող տեղեկատվությունը: Նույն գործառույթը թույլ է տալիս ստանալ նվազագույն փուլային վերակառուցումազդանշան. Զրոներ զ- Նման ազդանշանի նմուշների հաջորդականության փոխակերպումները գտնվում են միավորի շրջանակի ներսում գտնվող բարդ հարթության վրա, և դրա միջնամասը համընկնում է սկզբնական ազդանշանի միջանցքի հետ:

Կոմպլեքս գլխուղեղը, որը հաշվարկվում է ֆունկցիայի միջոցով cceps, հաշվի է առնում և՛ ամպլիտուդային, և՛ փուլային տեղեկատվությունը, ուստի դրա կապը սկզբնական ազդանշանի հետ մեկ առ մեկ է: Հակադարձ փոխակերպումը, այսինքն՝ ազդանշանի հաշվարկը, օգտագործելով հայտնի բարդ միջանցք, կատարվում է ֆունկցիայով. icceps.

Ընտրանքի արագության փոփոխություն

Փոխակերպումները ներառում են նաև մի խումբ ֆունկցիաներ, որոնք փոխում են ազդանշանի նմուշառման հաճախականությունը: Ամենից հաճախ նմուշառման արագությունը պետք է փոխվի ամբողջ թվով գործակցով: Նմուշառման հաճախականության մեծացման դեպքում այս գործողությունը կոչվում է ինտերպոլացիա, իսկ նվազման դեպքում՝ նոսրացում(decimation). Նմուշառման արագության ցանկացած վերահաշվարկ պահանջում է մի քանի գործողությունների հաջորդական կատարում: Ազդանշանների մշակման փաթեթը պարունակում է գործառույթներ, որոնք իրականացնում են ինչպես անհատական ​​գործողությունները, այնպես էլ դրանց անհրաժեշտ հաջորդականությունը:

Ինտերպոլացիա կատարելու համար անհրաժեշտ թվով զրոներ տեղադրվում են ազդանշանի նմուշների միջև (գործառույթ վեր նմուշ), այնուհետև ստացված ազդանշանն անցնում է ցածր անցումային ֆիլտրով։ Այս երկու փուլերը միասին իրականացվում են ֆունկցիայի կողմից interp.

Անջատում կատարելու համար ազդանշանն անցնում է ցածր անցումային ֆիլտրով, իսկ հետո՝ յուրաքանչյուրը Նթվով (գործառույթ իջեցված նմուշ) Այս երկու փուլերը միասին իրականացվում են ֆունկցիայի կողմից քայքայել.

Ինտերպոլացիայի և դեզիմացիայի գործողությունների համադրությունը թույլ է տալիս փոխել նմուշառման հաճախականությունը կամայական ռացիոնալ կոտորակով արտահայտված գործակցով: Հաշվարկների արդյունավետությունը բարձրացնելու համար նման վերահաշվարկն իրականացվում է մասնագիտացված գործառույթով կրկնօրինակում, և այն իր հերթին կանչում է ֆունկցիան վերև(զրոների տեղադրում, զտում և բարակում): Այս երկու գործառույթների հիմնական տարբերությունն այն է վերևթույլ է տալիս սահմանել օգտագործվող ֆիլտրի իմպուլսային արձագանքը և ֆունկցիան օգտագործելիս կրկնօրինակումֆիլտրը հաշվարկվում է ավտոմատ կերպով:

Վերջապես, հղման պահերի լրիվ կամայական վերահաշվարկի համար կարող են օգտագործվել հիմնական ինտերպոլացիայի գործառույթները, որոնք պարունակվում են հիմնական MATLAB գրադարանում, ինչպիսիք են. interp1Եվ spline.

Որպես օրինակ, եկեք միացնենք վերևում օգտագործված ազդանշանը՝ գործառույթները ցուցադրելու համար pulstranԵվ սինք, չորս անգամ ավելացնելով նմուշառման տոկոսադրույքը։ Զրոյական նմուշներ ավելացվում են ազդանշանի եզրերին, քանի որ ֆունկցիան interpպահանջում է, որ սկզբնական հաջորդականության երկարությունը լինի առնվազն ինը նմուշ:

sd = ; % բնօրինակ ազդանշան
t = 0:9; % դիսկրետ ժամանակ օրիգինալ ազդանշանի համար
sd4 = interp (sd, 4); % ինտերպոլացիա
t4 = (0:39)/4; % դիսկրետ ժամանակ ինտերպոլացված ազդանշանի համար
stem(t, sd) սկզբնական ազդանշանի % գրաֆիկ
սպասիր
հողամաս (t4, sd4, «x») ինտերպոլացված ազդանշանի % գծապատկեր
հետաձգել

Ցուցադրված գրաֆիկում սկզբնական ազդանշանը ցուցադրվում է որպես «ցողուններ», իսկ ինտերպոլացված ազդանշանը՝ խաչերով:

Այս խումբը պարունակում է բավականին մեծ թվով գործառույթներ: Դրանցից շատերը նախատեսված են հիմնականում «ներքին օգտագործման» համար. դրանք կոչվում են փաթեթի այլ գործառույթներով: Այնուամենայնիվ, այս կատեգորիայի մի շարք գործառույթներ լիովին անկախ արժեք ունեն:

Գործառույթ բուֆերթույլ է տալիս ազդանշանների նմուշների վեկտորը ներկայացնել հաջորդական շրջանակների մատրիցում, և այդ շրջանակները կարող են համընկնել:

Գործառույթներ ռեժիմԵվ դեմոդկատարել համապատասխանաբար մոդուլյացիա և դեմոդուլյացիա: Աջակցվում են մոդուլյացիայի հետևյալ տեսակները՝ առատություն, ճնշված կրիչով ամպլիտուդ, միակողմանի ժապավեն, փուլ, հաճախականություն, քառակուսի, զարկերակային լայնություն, զարկերակային ժամանակ։

Գործառույթներ uencodeԵվ udecodeիրականացնել, համապատասխանաբար, միատեսակ քվանտացում և ազդանշանի վերականգնում` ըստ քվանտացման մակարդակների քանակի:

Գործառույթ շերտերնախագծված է մի քանի տողերով ազդանշանային գրաֆիկ ցուցադրելու համար: Սա կարող է օգտակար լինել, եթե անհրաժեշտ է դիտել երկար ազդանշանն ամբողջությամբ, իսկ ուղղահայաց առանցքի երկայնքով լուծումը մեծ նշանակություն չունի:

Գործառույթների ընտանիք, որոնց անունները սկսվում են սիմվոլներով dpss, նախատեսված է դիսկրետ պրոլատի սֆերոիդային ֆունկցիաները հաշվարկելու և տվյալների բազայի հետ աշխատելու համար, որը նախատեսված է հաշվարկված ֆունկցիաները պահելու համար։ Դիսկրետ պրոլատի գնդաձև ֆունկցիաները օգտագործվում են սպեկտրային վերլուծության մեջ Թոմսոնի մեթոդով (տե՛ս վերևում «Սպեկտրային վերլուծության և վիճակագրական ազդանշանի մշակման գործառույթները», «Ոչ պարամետրական մեթոդներ» ենթաբաժինը):

Գործառույթներ cell2sosԵվ sos2cellթույլ է տալիս պահպանել ֆիլտրի մասին տեղեկատվությունը, որը ներկայացված է երկրորդ կարգի հաջորդաբար ներառված հատվածների տեսքով, ոչ միայն մատրիցայի, այլև բջիջների զանգվածի տեսքով: Այս երկու գործառույթները կատարում են ներկայացուցչական փոխակերպում այս երկու ձևերի միջև:

Գործառույթ սպեկտրամիրականացնում է ազդանշանի սպեկտրոգրամի հաշվարկը, այսինքն՝ սահող պատուհանի միջոցով մեկուսացված հաջորդական ազդանշանային բեկորների սպեկտրը։ Հաշվարկի արդյունքները կարող են վերադարձվել որպես մատրիցա կամ ցուցադրվել գունավոր ժամանակի հաճախականության կոորդինատներով:

Գործառույթ cplxpairԲարդ թվերի վեկտորներում առանձնացնում է բարդ խոնարհված զույգերը.

Գործառույթ հավասար երկարությունթույլ է տալիս հավասարեցնել երկու վեկտորի երկարությունները՝ ավելի կարճը լրացնելով հետին զրոներով:

Գործառույթ հաջորդական ժամանակահատվածըՆախատեսված է վեկտորային տարրերի պարբերականությունը ստուգելու և դրանց կրկնության ժամկետը որոշելու համար:

Ֆիլտրի սինթեզի և վերլուծության ծրագիրը FDATool (Filter Design & Analysis Tool) հանդիսանում է դիսկրետ ֆիլտրերի սինթեզի և վերլուծության գործառույթներ կանչելու պատյան: Եթե ​​ունեք Filter Design Toolbox փաթեթը, այս ծրագիրը նաև թույլ է տալիս վերլուծել ֆիլտրի գործակիցների քվանտացման հետ կապված էֆեկտները և կատարել ֆիլտրերի տեսակների փոխարկում (ցածրանցիկ զտիչ դեպի բարձր անցումային ֆիլտր և այլն):

Ծրագիրը թույլ է տալիս ոչ միայն զրոյից հաշվարկել ֆիլտրերը, այլև պահպանել և բեռնել աշխատանքային նիստերը, ինչպես նաև խմբագրել նախկինում պահված ֆիլտրերը: Դուք կարող եք նաև ներմուծել ֆիլտրի սահմանումները MATLAB աշխատանքային տարածքից կամ XILINX CORE Generator (*.coe) ֆայլերից: Ներմուծված զտիչները կարող են միայն վերլուծվել:

Վերլուծության ընթացքում կարող եք դիտել հետևյալ ֆիլտրի բնութագրերը (փաթեթի վերջին տարբերակներում կարող եք միաժամանակ դիտել մի քանի գրաֆիկներ).

  • Ամպլիտուդային հաճախականության արձագանք (AFC):
  • Ֆազային հաճախականության արձագանք (PFC):
  • Հաճախականության արձագանքը և փուլային արձագանքը միաժամանակ:
  • Խմբի հետաձգում.
  • Փուլի հետաձգում.
  • Իմպուլսային արձագանք.
  • Անցումային հատկանիշ.
  • Զրոների և բևեռների գտնվելու վայրը բարդ հարթության վրա:
  • Զտիչի գործակիցները.
  • Տեղեկատվություն ֆիլտրի կառուցվածքի մասին:

Հաշվարկված ֆիլտրը կարող է օգտագործվել հետևյալ կերպ.

  • Պահպանեք աշխատանքային նստաշրջանը FDATool ծրագրում հետագա բեռնման համար՝ հետագա խմբագրման և վերլուծության համար:
  • Արտահանել MATLAB աշխատանքային տարածք:
  • Արտահանել տեքստային ֆայլ:
  • Արտահանել MAT ֆայլ:
  • Արտահանել C վերնագրի (*.h) ֆայլ:
  • Արտահանել SPTool (տես ստորև):

Ստորև բերված նկարը ցույց է տալիս FDATool ծրագրի պատուհանը՝ երկգծային z-փոխակերպման մեթոդով էլիպսաձև ցածր անցումային ֆիլտրի հաշվարկման արդյունքներով: Ցուցադրվում են հաճախականության արձագանքման և խմբի հետաձգման գրաֆիկները:

Ազդանշանների մշակման SPTool (Signal Processing Tool) ծրագիրը թույլ է տալիս կատարել հետևյալ գործողությունները. ազդանշաններ ներմուծել MAT ֆայլերից կամ MATLAB աշխատանքային տարածքից; դիտել ազդանշանային գրաֆիկները (ներառյալ մի քանիսը միաժամանակ); կիրառել ազդանշանների սպեկտրային վերլուծության տարբեր մեթոդներ և դիտել ստացված գրաֆիկները. հաշվարկել դիսկրետ զտիչներ՝ օգտագործելով փաթեթի գործառույթները (ներառյալ՝ ուղղակիորեն խմբագրելով զրոների և բևեռների գտնվելու վայրը); փոխանցեք ազդանշանները ֆիլտրերի միջով և վերլուծեք ստացված ելքային ազդանշանները:

Հարկ է նշել, որ ֆիլտրերի վերլուծության և սինթեզի առումով SPTool ծրագրի հնարավորություններն ավելի նեղ են, քան FDATool ծրագրի հնարավորությունները (միակ բացառությունն այն է, որ FDATool-ը հնարավորություն չունի ուղղակիորեն խմբագրել զրոների և բևեռների գտնվելու վայրը): . Այնուամենայնիվ, այս սահմանափակումները փոխհատուցվում են հաշվարկված ֆիլտրը FDATool-ից SPTool արտահանելու ունակությամբ:

Ստորև բերված նկարները ցույց են տալիս SPTool ծրագրի պատուհանի տեսքը ազդանշանային գրաֆիկ դիտելիս, սպեկտրը վերլուծելիս և ֆիլտրի զրոների և բևեռների գտնվելու վայրը խմբագրելիս:

WinTool (Window Design and Analysis Tool) ծրագիրը քաշի (պատուհանի) ֆունկցիաների սինթեզի և վերլուծության համար, որը հայտնվել է փաթեթի 6.0 (R13) տարբերակում, փաթեթում առկա պատուհանների հաշվարկման գործառույթները կանչելու պատյան է: Սա ցույց է տալիս պատուհանի (կամ մի քանի պատուհանների միաժամանակ) բնութագրերը ժամանակի և հաճախականության տիրույթներում:

Ստորև բերված նկարը ցույց է տալիս WinTool պատուհանը՝ 64-րդ կարգի Չեբիշևի պատուհանի հաշվարկման արդյունքներով՝ սպեկտրալ կողային բլթի մակարդակով –100 դԲ: Ցուցադրվում է պատուհանի ժամանակային տիրույթի սյուժեն և դրա սպեկտրը: