کاربرد تبدیل فوریه در تجزیهوتحلیل سیگنالهای ارتعاش
آندری شلکوونکو. یکی از توسعهدهندگان و بنیانگذاران Vibromera.
ترجمهی مقاله ممکن است حاوی خطاهایی باشد.
تبدیل فوریه و طیف سیگنال
در بسیاری از موارد، وظیفهی بدستآوردن (محاسبه) طیف یک سیگنال به شرح زیر است. یک تبدیلگر آنالوگ-دیجیتال وجود دارد که با نمونهبرداری فرکانس Fd سیگنال پیوستهای را که در طول زمان T به ورودی آن میرسد، به نمونههای دیجیتالی تبدیل میکند – N قطعه. سپس این آرایه از نمونهها به برنامهای تغذیه میشود (برای مثال FourierScope) که N/2 مقدار عددی را خروجی میدهد.
برای بررسی اینکه برنامه بهدرستی کار میکند، یک آرایه از نمونهها را بهعنوان مجموع دو عبارت sin(10*2*pi*x)+0.5*sin(5*2*pi*x) تشکیل داده و آن را به برنامه وارد میکنیم. برنامه نمودار زیر را رسم کرد:

شکل ۱ نمودار تابع زمانی سیگنال

شکل ۲ نمودار طیف سیگنال
دوضربه هستند هارمونیک ها بر روی نمودار طیف – 5 هرتز با دامنهی 0.5 ولت و 10 هرتز با دامنهی 1 ولت، همهچیز مانند فرمول سیگنال اصلی است. همه چیز درست است، برنامه به درستی کار میکند.
این بدان معناست که اگر سیگنال واقعی را از مخلوط دو سینوس به ورودی ADC وارد کنیم، طیف مشابهی شامل دو هارمونیک خواهیم داشت.
پس، ما واقعی سیگنال اندازهگیریشده به مدت ۵ ثانیه, دیجیتالیشده توسط ADC، یعنی نمایش داده شده توسط گسسته نمونهها، دارد گسسته غیر دورهای طیف.
از دیدگاه ریاضی – چند خطا در این عبارت وجود دارد؟
حالا بیایید تلاش کنیم تا همان سیگنال را به مدت ۰.۵ ثانیه اندازهگیری کنیم.

شکل ۳ نمودار تابع sin(10*2*pi*x)+0.5*sin(5*2*pi*x) برای دورهٔ اندازهگیری ۰.۵ ثانیه

شکل ۴ طیف تابع
در اینجا مشکلی وجود دارد! هارمونیک ۱۰ هرتز بهطور طبیعی رسم شده است و بهجای هارمونیک ۵ هرتز، چند هارمونیک نامشخص وجود دارد.
در اینترنت میگویند که لازم است صفرها را به انتهای نمونه اضافه کرد تا طیف بهطور معمول رسم شود.

شکل ۵: ما تا ۵ ثانیه صفر به نمونه اضافه کردهایم.

شکل ۶. طیف بهدستآمده.
این اصلاً آن چیزی نیست که باید باشد. باید به نظریه بپردازم. بیایید به ویکیپدیا – منبع دانش.
تابع پیوسته و نمایش آن به سری فوریه
از نظر ریاضی، سیگنال ما با مدتزمان T ثانیه، تابعی f(x) است که بر بازهٔ {0, T} تعریف شده است (در این مورد X نمایانگر زمان است). چنین تابعی را همیشه میتوان به صورت مجموعی از توابع هارمونیک (سینوس یا کسینوس) به شکل زیر نمایش داد:

(۱)، که در آن:
k شماره تابع مثلثاتی است (شماره مؤلفه هارمونیک، شماره هارمونیک)
T – بخشی که تابع در آن تعریف شده است (مدتزمان سیگنال)
Ak- دامنهٔ مؤلفهٔ هارمونیک k-ام،
θk- فاز اولیهٔ مؤلفهٔ هارمونیک kام
«نمایش دادن تابع بهصورت مجموع سری» به چه معناست؟ یعنی با جمع کردن مقادیر مؤلفههای هارمونیک سری فوریه در هر نقطه، مقدار تابع را در آن نقطه بهدست میآوریم.
(بهطور دقیقتر، میانگین مربعات خطا بین سری و تابع f(x) به صفر میل میکند، اما با وجود همگرایی میانگین مربعات، سری فوریه یک تابع لزوماً بهطور کلی نقطهبهنقطه به آن همگرا نمیشود.)
این سری همچنین میتواند به شکل زیر نوشته شود:

(2),
که در آن
، دامنه مختلط k-ام.
یا

(3)
رابطه بین ضرایب (۱) و (۳) با فرمولهای زیر بیان میشود:
![]()

توجه داشته باشید که هر سه نمایش سری فوریه کاملاً معادلاند. گاهی هنگام کار با سری فوریه، استفاده از توانهای با آرگومان موهومی بهجای سینوس و کسینوس راحتتر است، یعنی استفاده از تبدیل فوریه به فرم مختلط. اما برای ما استفاده از فرمول (1) مناسبتر است، که در آن سری فوریه بهصورت مجموعی از کسینوسها با دامنهها و فازهای متناظر نمایش داده میشود. بهطور دقیق، تبدیل فوریه یک سیگنال حقیقی واقعاً ضرایب مختلط تولید میکند (فرم (3)): هر ضریب هم دامنه و هم فاز هارمونیک خود را در بر دارد. برای یک سیگنال حقیقی، این ضرایب مختلط دارای تقارن مزدوج (Hermitian) هستند — نیمه فرکانس منفی صرفاً آینه نیمه فرکانس مثبت است و اطلاعات اضافیای حمل نمیکند. به همین دلیل، از ضرایب مختلط همیشه میتوان به دامنههای حقیقیِ نامنفی Ak و فازهای θk در فرمول (1) رسید — و دقیقاً همین طیف دامنه است که برنامههای تحلیل آن را رسم میکنند.
خلاصه کلام:
پایهٔ ریاضی تحلیل طیفی سیگنالها، تبدیل فوریه است.
تبدیل فوریه امکان میدهد تابع پیوسته f(x) (سیگنال) را که بر روی بازهٔ {0, T} تعریف شده است، به صورت مجموعی از تعداد نامتناهی (مجموعهٔ نامتناهی) از توابع مثلثاتی (سینوس و/یا کسینوس) با ضرایب دامنه و فاز مشخص که آنها نیز بر روی بازهٔ {0, T} در نظر گرفته شدهاند، نمایش دهد. چنین مجموعهای سری فوریه نامیده میشود.
چند نکتهٔ دیگر را در نظر بگیرید که درک آنها برای بهکارگیری صحیح تبدیل فوریه در تحلیل سیگنال ضروری است. اگر سری فوریه (مجموع سینوسوئیدها) را روی کل محور X در نظر بگیریم، خواهیم دید که خارج از بازهٔ {0, T}، تابع سری فوریه بهصورت دورهای تابع ما را تکرار میکند.
برای مثال، در نمودار شکل ۷، تابع اصلی روی بازهٔ {−T/2، +T/2} تعریف شده است و سری فوریه نمایانگر یک تابع دورهای است که روی کل محور x تعریف شده است.
این به این دلیل است که خود سینوسوئیدها توابع دورهای هستند، بنابراین جمع آنها نیز تابعی دورهای خواهد بود.

شکل ۷ نمایش یک تابع منبع غیر دورهای با سری فوریه
بدین ترتیب:
تابع اصلی ما تابعی پیوسته و غیر دورهای است که بر روی یک بازه به طول T تعریف شده است.
طیف این تابع گسسته است، یعنی به صورت یک سری بینهایت از اجزای هارمونیک – سری فوریه – نمایش داده میشود.
در واقع، سری فوریه یک تابع دورهای را تعریف میکند که در بازهٔ {0, T} با تابع ما همخوانی دارد، اما برای ما این دورهای بودن ضروری نیست.
در ادامه.
دورههای اجزای هارمونیک مضربی از بازهٔ {0, T} هستند که تابع اولیه f(x) در آن تعریف شده است. به عبارت دیگر، دورههای هارمونیکها مضربی از مدت زمان اندازهگیری سیگنال هستند. برای مثال، دورهٔ اولین هارمونیک در یک سری فوریه برابر با فاصلهٔ T است که تابع f(x) در آن تعریف شده است. دورهٔ دومین هارمونیک در یک سری فوریه برابر با فاصلهٔ T/2 است. و به همین ترتیب (به شکل ۸ مراجعه کنید).

شکل ۸ دورههای (فرکانسهای) اجزای هارمونیک سری فوریه (در اینجا T=2π)
بنابراین، فرکانسهای اجزای هارمونیک مضربی از ۱/T هستند. یعنی فرکانسهای اجزای هارمونیک Fk برابر با Fk = k·1/T است، که k از ۰ تا ∞ متغیر است. برای مثال، k = 0، F0 = 0؛ k = 1، F1 = 1/T؛ k = 2، F2 = 2/T؛ k = 3، F3 = 3/T؛ … Fk = k/T (در فرکانس صفر، یک مؤلفه ثابت).
فرض کنید تابع اولیه ما سیگنالی است که در بازه زمانی T=1 ثانیه ضبط شده است. در این صورت دوره اولین هارمونیک برابر با مدت زمان سیگنال ما یعنی T1=T=1 ثانیه خواهد بود و فرکانس این هارمونیک برابر با 1 هرتز است. دورهٔ هارمونیک دوم برابر با مدتزمان سیگنال ما تقسیم بر ۲ (T2=T/2=0.5 ثانیه) و فرکانس آن برابر با ۲ هرتز است. برای هارمونیک سوم، T3=T/3 ثانیه و فرکانس آن ۳ هرتز است. و به همین ترتیب.
در این مورد، گام بین هارمونیکها ۱ هرتز است.
بدین ترتیب، سیگنالی با مدت ۱ ثانیه را میتوان به اجزای هارمونیک (برای بهدستآوردن طیف) با وضوح فرکانسی ۱ هرتز تجزیه کرد.
برای افزایش وضوح بهمیزان 2 برابر تا 0.5 هرتز، لازم است مدت زمان اندازهگیری را 2 برابر به 2 ثانیه افزایش دهید. یک سیگنال 10 ثانیهای را میتوان به اجزای هارمونیک (طیف) با وضوح فرکانسی 0.1 هرتز تجزیه کرد. روش دیگری برای افزایش وضوح فرکانسی وجود ندارد. میتوانید این رابطه را با ماشین حساب تفکیک پذیری FFT.
راهی وجود دارد که با افزودن صفرها به آرایهٔ نمونهها، بهطور مصنوعی مدتزمان سیگنال را افزایش دهیم. اما این کار وضوح فرکانس واقعی را افزایش نمیدهد.
سیگنالهای گسسته و تبدیل فوریه گسسته
با توسعه فناوری دیجیتال، روشهای ذخیرهسازی دادههای اندازهگیری (سیگنالها) تغییر کردهاند. در حالی که قبلاً میتوانست یک سیگنال را روی دستگاه ضبط نوار ثبت و بهصورت آنالوگ روی نوار ذخیره کرد، اکنون سیگنالها دیجیتالی شده و بهصورت مجموعهای از اعداد (شمارشها) در فایلهای حافظه کامپیوتر ذخیره میشوند.
طرح معمول اندازهگیری و دیجیتالسازی سیگنال به شرح زیر است.
مبدل اندازهگیری —- نرمالایزر سیگنال —- ADC —– کامپیوتر
(شکل ۹ شماتیک کانال اندازهگیری)
سیگنال ترانسدیوسر اندازهگیری برای مدت زمان T به ADC ارسال میشود. مقادیر سیگنال (نمونهبرداری) دریافتشده در بازه زمانی T به کامپیوتر منتقل و در حافظه ذخیره میشوند.

شکل ۱۰ سیگنال دیجیتایز شده – N نمونه دریافتشده برای زمان T
الزامات پارامترهای دیجیتالیسازی سیگنال چیست؟ دستگاهی که سیگنال آنالوگ ورودی را به یک کد گسسته (سیگنال دیجیتال) تبدیل میکند، مبدل آنالوگ به دیجیتال (ADC) نامیده میشود (© ویکی).
یکی از پارامترهای اساسی ADC، حداکثر نرخ نمونهبرداری است – فرکانس نمونهبرداری از سیگنالی که در زمان پیوسته است. نرخ نمونهبرداری بر حسب هرتز اندازهگیری میشود. ((© ویکی))
بر اساس قضیه کوتلنیکوف، اگر یک سیگنال مداوم طیفی داشته باشد که توسط فرکانس Fmax محدود شده است، میتوان آن را به طور کامل و منحصر به فرد از نمونههای گسستهای که در بازههای زمانی Δt ≤ 1/(2*Fmax) گرفته میشوند، بازسازی کرد، یعنی با فرکانس نمونهبرداری Fd ≥ 2*Fmax، جایی که Fd – فرکانس نمونهبرداری؛ Fmax – بیشترین فرکانس طیف سیگنال است. به عبارت دیگر، فرکانس دیجیتالسازی سیگنال (فرکانس نمونهبرداری ADC) باید حداقل دو برابر بیشترین فرکانس سیگنالی باشد که میخواهیم اندازهگیری کنیم.
و اگر نمونهبرداری را با فرکانس پایینتر از آنچه نظریه کوتلنیکوف ایجاب میکند انجام دهیم، چه اتفاقی میافتد؟
در این حالت یک “الیاسینگدر این حالت یک اثر «آلیاسینگ» (که به آن اثر استروبوسکوپی یا اثر مویر نیز گفته میشود) وجود دارد، که در آن یک سیگنال با فرکانس بالا پس از دیجیتالسازی به سیگنالی با فرکانس پایین تبدیل میشود که در واقع وجود ندارد. در شکل ۱۱ موج سینوسی قرمز با فرکانس بالا سیگنال واقعی است. موج سینوسی آبی با فرکانس پایینتر یک سیگنال خیالی است که به این دلیل ایجاد میشود که در طول زمان نمونهبرداری بیش از نیم دوره سیگنال با فرکانس بالا سپری میشود.

شکل ۱۱. ظاهر شدن سیگنال مزاحم فرکانس پایین در نرخ نمونهبرداری ناکافی
برای جلوگیری از اثر نمونهبرداری فیلتر شده ("پاسپایین) در برابر ADC قرار گرفته است. این فیلتر فرکانسهای کمتر از نصف فرکانس نمونهبرداری ADC را عبور میدهد و فرکانسهای بالاتر را حذف میکند.
برای محاسبه طیف سیگنال از طریق نمونههای گسسته آن، تبدیل فوریه گسسته (DFT) استفاده میشود. توجه داشته باشید که طیف یک سیگنال گسسته “طبق تعریف” به فرکانس Fmax کمتر از نصف فرکانس نمونهبرداری Fd محدود است. بنابراین، طیف یک سیگنال گسسته را میتوان به صورت مجموع محدود تعداد هارمونیکها، برخلاف جمع بینهایت در سری فوریه یک سیگنال پیوسته که طیف آن میتواند نامحدود باشد، محدود است. بر اساس قضیه کوتلنیکوف، حداکثر فرکانس یک هارمونیک باید طوری باشد که حداقل دو نمونه را پوشش دهد، بنابراین تعداد هارمونیکها برابر با نصف تعداد نمونههای یک سیگنال گسسته است. یعنی اگر N نمونه در مجموعه نمونهها وجود داشته باشد، تعداد هارمونیکها در طیف N/2 خواهد بود.
اکنون تبدیل فوریه گسسته (DFT) را در نظر بگیرید.

مقایسه آن با سری فوریه

همانطور که میبینیم، آنها همپوشانی دارند، به جز این که زمان در FFT گسسته است و تعداد هارمونیکها به N/2 محدود است که نصف تعداد نمونههاست.
فرمولهای DFT در متغیرهای عددی بیبعد k و s نوشته میشوند، که k تعداد نمونههای سیگنال و s تعداد مؤلفههای طیفی است.
مقدار s نشاندهنده تعداد نوسانات هارمونیک کامل در هر دوره T (مدت زمان اندازهگیری سیگنال) است. تبدیل فوریه گسسته برای یافتن دامنهها و فازهای هارمونیکها بهصورت عددی، یعنی «روی کامپیوتر»، استفاده میشود.
همانطور که قبلاً گفته شد، وقتی یک تابع غیر دورهای (سیگنال ما) را به سری فوریه تجزیه میکنیم، سری فوریه حاصل در واقع معادل یک تابع دورهای با دوره T است (شکل ۱۲).

شکل ۱۲. تابع دورهای f(x) با دوره T0، با دوره T>T0
همانطور که در شکل 12 دیده میشود، تابع f(x) با دوره T0 تناوبی است. اما به دلیل اینکه طول نمونه اندازهگیری T برابر با دوره تابع T0 نیست، تابعی که بهعنوان سری فوریه بهدست میآید در نقطه T دچار ناپیوستگی است. در نتیجه، طیف این تابع شامل تعداد زیادی هارمونیکهای فرکانسبالا خواهد بود. این پدیده بهنام نشت طیفیشناخته میشود، و در عمل با پنجرهبندی سیگنال قبل از تبدیل کاهش پیدا میکند. اگر مدت زمان نمونه اندازهگیری T با دوره تابع T0 برابر بود، آنگاه طیف بهدستآمده پس از تبدیل فوریه فقط شامل اولین هارمونیک (سینوسویدی با دورهٔ برابر با مدت نمونه) خواهد بود، زیرا تابع f(x) سینوسویدی است.
به عبارت دیگر، برنامه DFT «نمیداند» که سیگنال ما «برشی از یک موج سینوسی» است، اما تلاش میکند یک تابع دورهای را بهصورت سری نمایش دهد؛ تابعی که بهدلیل ناپیوستگی قطعات جداگانه موج سینوسی، خود نیز ناپیوسته است.
در نتیجه، هارمونیکها در طیف ظاهر میشوند که در مجموع باید شکل تابع، از جمله این ناپیوستگی، را نشان دهند.
بنابراین، برای بهدست آوردن طیف «صحیح» یک سیگنال که مجموع چندین موج سینوسی با دورههای متفاوت است، ضروری است که یک تعداد صحیح دورهها هر سینوسید باید در دورهٔ اندازهگیری سیگنال حضور داشته باشد. در عمل، این شرط با اندازهگیری سیگنال به مدت کافی طولانی قابل تحقق است.

شکل ۱۳ نمونهای از تابع سیگنال خطای سینماتیکی و طیف یک جعبهدنده
در مدت زمان کوتاهتر تصویر «بدتر» به نظر خواهد رسید:

شکل ۱۴ نمونهای از تابع و طیف ارتعاش روتور
در عمل، ممکن است دشوار باشد که بفهمیم کجا «اجزای واقعی» هستند و کجا «آرتفکتها» که ناشی از ناسازگاری دورههای اجزا و مدت نمونهبرداری سیگنال یا «پرشها و شکستگیها» در شکل موج هستند. البته، واژههای «اجزای واقعی» و «آرتفکتها» به دلیلی در گیومه قرار گرفتهاند. وجود هارمونیکهای زیاد در نمودار طیف به این معنا نیست که سیگنال ما در واقع از آنها تشکیل شده است. این مانند این است که فکر کنیم عدد ۷ «از» اعداد ۳ و ۴ تشکیل شده است. میتوان عدد ۷ را مجموع ۳ و ۴ در نظر گرفت – و این درست است.
به همین ترتیب سیگنال ما… یا بهتر است بگوییم حتی «سیگنال ما» نیست، بلکه یک تابع دورهای است که از تکرار سیگنال (نمونه) ما تشکیل شده و میتوان آن را بهصورت مجموع هارمونیکها (موجهای سینوسی) با آمپلیتویدها و فازهای مشخص نمایش داد. اما در بسیاری از موارد مهم از نظر عملی (رجوع شود به شکلهای بالا) در واقع میتوان هارمونیکهای بهدستآمده در طیف را نیز به فرآیندهای واقعی با ماهیت دورهای مرتبط دانست که بهطور قابلتوجهی در شکل سیگنال نقش دارند.
برخی نتایج
۱. یک سیگنال واقعی اندازهگیریشده با مدت T ثانیه که توسط ADC دیجیتال شده است، یعنی به صورت مجموعهای از نمونههای گسسته (N عدد) نمایش داده میشود، دارای طیف گسسته غیردورهای است که به صورت مجموعهای از هارمونیکها (N/2 عدد) نمایش داده میشود.
2. سیگنال با مجموعهای از مقادیر حقیقی نمایش داده میشود. طیف DFT آن مجموعهای از ضرایب مختلط با تقارن مزدوج است؛ از آنها طیف دامنه بهدست میآید — مجموعهای از دامنههای حقیقی نامنفی (و فازها) در فرکانسهای مثبت، و در عمل همین طیف دامنه یکطرفه است که رسم میشود. فرم مختلط دوطرفه با فرکانسهای منفی و فرم یکطرفه دامنه/فاز نمایشهای معادلِ یک طیف واحد هستند — برای تحلیل سیگنال معمولاً کار با طیف دامنه یکطرفه راحتتر است.
۳. سیگنال اندازهگیریشده در زمان T تنها در زمان T مشخص میشود. آنچه قبل از شروع اندازهگیری سیگنال رخ داده و آنچه پس از آن اتفاق خواهد افتاد برای علم ناشناخته است. و در مورد ما جالب نیست. تبدیل فوریه سریع (FFT) سیگنال محدود در زمان، طیف «واقعی» آن را ارائه میدهد، به این معنی که تحت شرایط خاص امکان محاسبه دامنه و فرکانس اجزای آن را فراهم میکند.