كيف يمكنني حساب فرق الطور بين إشارتين في MATLAB؟


الاجابه 1:

ما هو الشائع حول الإشارات التي تشير إلى أن الاختلافات في الطور ستكون معلمة مفيدة لفحصها؟ أفترض أننا ننظر إلى ملف تعريف المرحلة كدالة للتردد. أحد الأمثلة التي تتبادر إلى الذهن هو المقارنة بين الطيف لطيف ردود نبض المرشح لثلاثة معايير تصميم مختلفة. قل المرحلة الدنيا ، المرحلة الخطية ، المرحلة القصوى. يمكننا تصميم فلتر FIR بنفس استجابة Log Logitude نفسها ولكن بثلاثة ردود مختلفة على الطور. أفعل ذلك عندما أقوم بتدريس تصميم المرشح وإعطاء الطلاب إحساسًا بالحد الأدنى للطور مقارنة بالمرحلة الخطية ... الحد الأقصى للطور هو الاكتمال. أقوم بتصميم مرشح تمرير منخفض مع خوارزمية Parks McLellan (Remez) ثم أضعاف الأصفار خارج دائرة الوحدة مرة أخرى إلى داخل الأصفار معكوس لتشكيل مرشح المرحلة الحد الأدنى وفي حين أن تفعل العكس ، أضعاف الأصفار الداخلية مرة أخرى على الأصفار الخارجية لتشكيل مرشح المرحلة القصوى. وبعد ذلك ، أظهر استجابة دافعة لكل المرشحات الثلاثة ، والحجم الطيفي لكل منها ، واستجابة الطور غير المغلفة (محاذاة في العاصمة). هذا يظهر بوضوح لماذا لديهم أسماءهم. يمكنني إرسال أي شخص يريد كود ماتلاب المثال.

فريد هاريس


الاجابه 2:

استخدم [corr.lags] = xcorr؛ للقيام الارتباط المتبادل. العثور على أقصى مؤشر الذروة ، [~ ، التاسع] = كحد أقصى (corr) ؛ التأخير = التأخر (التاسع) ؛ وهذا يعطي الفرق بين الإشارة إلى العينات. قم بالتحويل إلى راديان (أو أيًا كان) بناءً على فترة إشاراتك: IF N_sig هو عدد العينات في فترة:

phase_deg = 2 * pi * delay / N_sig؛ أو 360 * تأخير / N_sig إذا في درجة.