قراءة
وضع القصص

من الـ difference equations لتحويل Z

~14 دقيقة قراءة الدرس 1 من الوحدة 4

ليه محتاجين أداة جبرية؟

في الوحدة التالتة، درسنا أنظمة LTI عن طريق الـ impulse response (الاستجابة النبضية) h[n] والـ convolution (الالتواء). بس حساب y[n] = x[n] * h[n] محتاج تجمع series لانهائية في الـ IIR filters، وتحليل الاستقرار محتاج تفحص كل sample من h[n] لوحدها. أما تصميم الـ filter — إنك تختار المعاملات عشان توصل لـ frequency response مطلوب — فأصعب بكتير لو في الـ time domain بس.

الـ Z-transform (تحويل Z) بيحل المشكلة دي بإنه بينقل المسألة للمستوى المركّب z، حيث الـ convolution بيبقى ضرب، والـ difference equations (معادلات الفروق) بتبقى معادلات جبرية، والاستقرار بيتلخّص في شرط هندسي على مكان جذور polynomial. وهو النسخة المتقطعة من تحويل لابلاس، وأساس كل تقنيات تصميم الـ filters الرقمية وتحليلها.

تعريف تحويل Z
X(z) = \sum_{n=-\infty}^{\infty} x[n]\,z^{-n}
تحويل Z بيحوّل الـ sequence x[n] لدالة X(z) في المتغيّر المركّب z. كل sample x[n] بتتوزن بقوة z مرفوعة لـ −n، فالـ sequence كلها بتتضغط في كيان جبري واحد.

المتغيّر z مركّب — z = rejω بالصيغة القطبية. عند r = 1 بتترسم دايرة الوحدة، وX(z) محسوبة على دايرة الوحدة بتساوي الـ DTFT: X(ejω). يعني تحويل Z بيعمّم الـ DTFT على المستوى المركّب كله، فبيسمح بالتحليل برا محور الـ frequency.

أزواج تحويل Z المنتشرة

فيه عدد صغير من الـ sequences بيظهر طول الوقت لدرجة إن تحويلاتهم بتتحفظ صمّ. وإنك تطلّعهم من التعريف تمرين مفيد: عوّض تعريف الـ sequence في المجموع وطبّق قوانين الـ geometric series.

الـ unit impulse
\mathcal{Z}\{\delta[n]\} = 1
δ[n] بتتحوّل لـ 1 — صالحة لكل قيم z. أبسط زوج، وبيأكّد إن تحويل Z للـ unit impulse هو الواحد.
الـ unit step
\mathcal{Z}\{u[n]\} = \frac{z}{z-1}, \quad |z|>1
u[n] بتتحوّل لـ z/(z−1)، صالحة لـ |z| > 1. الـ pole عند z = 1 بيعكس إن الـ step مبتصغرش.
الـ exponential sequence
\mathcal{Z}\{a^n u[n]\} = \frac{z}{z-a}, \quad |z|>|a|
الـ exponential sequence أحادية الجانب aⁿu[n] بتتحوّل لـ z/(z−a)، صالحة لـ |z| > |a|. مستقرة عند |a| < 1.
الـ cosine sequence
\mathcal{Z}\{\cos(\omega_0 n)\,u[n]\} = \frac{z^2 - z\cos\omega_0}{z^2 - 2z\cos\omega_0 + 1}
الـ cosine sequence بتطلّع poleين مركّبين على دايرة الوحدة عند ±ω₀. بتتستخدم في تحليل الـ steady-state للـ sinusoids.

الأزواج دي، مع خصائص تحويل Z اللي تحت، بيعملوا عدّة كاملة. بدل ما تحسب المجموع اللانهائي كل مرة، المهندسين بيبنوا X(z) بإنهم يفكّكوا x[n] لنسخ متكبّرة ومتزحزحة من sequences معروفة ويطبّقوا الـ linearity.

الخصائص الأساسية

قوة تحويل Z في خصائصه. تلات خصائص مهمين جدًا في تحليل الـ filters.

الخاصية 1
الـ linearity
Z{ax[n] + by[n]} = aX(z) + bY(z). مبدأ الـ superposition شغّال — المجموع الموزون في الزمن بيتحوّل لمجموع موزون من التحويلات.
الخاصية 2
الـ time shift
Z{x[n−k]} = z−kX(z). تأخير k sample بيضرب في z−k في الـ z-domain — أساس الـ delay operator.
الخاصية 3
الـ convolution ← ضرب
Z{x[n] * h[n]} = X(z)·H(z). الـ convolution بيتحوّل لضرب — السبب الأساسي لأهمية تحويل Z في تحليل أنظمة LTI.
الخاصية 4
الـ scaling في z
Z{aⁿx[n]} = X(z/a). الضرب في aⁿ في الزمن بيكبّر/يصغّر مستوى z. بيتستخدم في إزاحة الـ frequency وتحويلات الـ prototype filter.
خاصية الـ time shift
\mathcal{Z}\{x[n-k]\} = z^{-k}\,X(z)
وحدة التأخير z⁻¹ في الـ z-domain بتقابل تأخير sample واحدة في الـ time domain. والخاصية دي بتحوّل على طول الـ difference equations لمعادلات جبرية في z.

تحويل الـ difference equations

خاصية الـ time shift هي الكوبري بين الـ difference equations والـ z-domain. خد LCCDE عامة بمعاملات {bk} و{ak}. طبّق تحويل Z على الطرفين واستخدم الـ linearity وخاصية الـ time shift على كل حد:

الصورة الجبرية في الـ z-domain
Y(z)\sum_{k=0}^{M}a_k z^{-k} = X(z)\sum_{k=0}^{N}b_k z^{-k}
تطبيق تحويل Z على الـ LCCDE بيحوّلها من معادلة زمنية recursive لمعادلة rational polynomial — تتحل جبريًا.

النسبة Y(z)/X(z) هي الـ transfer function (دالة النقل) H(z) — تحويل Z للـ impulse response. وهي نسبة بين polynomialين في z−1 (أو اللي يساويها في z)، ومعاملات الـ filter بتحدّدها بالكامل. وأي نظام LTI ينفع يتمثّل بـ LCCDE ليه transfer function rational.

IIR من الدرجة الأولى: الـ time domain ← الـ z-domain

خد الـ IIR filter البسيط: y[n] = ay[n−1] + x[n]. طبّق تحويل Z على الطرفين:

Y(z) = az−1Y(z) + X(z)

لمّ Y(z): Y(z)(1 − az−1) = X(z)

H(z) = Y(z)/X(z) = 1/(1 − az−1) = z/(z − a)

تحويل Z أحادي الجانب قصاد ثنائي الجانب

التعريف اللي فوق بيجمع على كل n من −∞ لـ +∞ — ده تحويل Z الثنائي (bilateral). بيتعامل مع الـ sequences الـ causal والـ non-causal مع بعض بس محتاج تحدد الـ region of convergence (منطقة التقارب) أو ROC بحرص عشان المعكوس يطلع واحد بس.

في الشغل الهندسي، أغلب الـ signals causal (صفر لـ n < 0)، فبنستخدم تحويل Z أحادي الجانب (unilateral) اللي بيجمع من n = 0 لـ +∞. والصيغة أحادية الجانب مفيدة بالذات في حل الـ difference equations بشروط ابتدائية.

تحويل Z أحادي الجانب
X(z) = \sum_{n=0}^{\infty} x[n]\,z^{-n}
تحويل Z أحادي الجانب بيجمع على n ≥ 0 بس. وللـ sequences الـ causal النتيجة هي هي تحويل Z الثنائي. وللـ sequences الـ non-causal الصيغتين بيختلفوا.

العلاقة بتحويل لابلاس

تحويل Z هو النسخة المتقطعة من تحويل لابلاس. والصلة بتبان لما نفتكر الـ sampling: الـ signal المستمرة x(t) بعد الـ sampling بتتكتب x[n] = x(nT)، وتحويل لابلاس للـ signal اللي اتاخد منها samples فيه حدود بالشكل esT. ولما نعرّف z = esT العلاقة بين المستوى s والمستوى z بتوضح.

الـ mapping من المستوى s للمستوى z
z = e^{sT}
التعويض z = e^(sT) بيعمل mapping للمستوى s على المستوى z. المحور التخيلي jω في المستوى s بيروح لدايرة الوحدة في المستوى z. والنص الشمال من المستوى بيروح لجوه دايرة الوحدة.

الـ mapping ده ليه نتايج عميقة. في المستوى s، استقرار النظام المستمر محتاج الـ poles بتاعته تبقى في النص الشمال (الجزء الحقيقي سالب). وبعد الـ mapping، الـ poles اللي في النص الشمال بتقع جوه دايرة الوحدة في المستوى z. يعني الاستقرار في الزمن المتقطع — كل الـ poles جوه دايرة الوحدة — هو النسخة الرقمية المباشرة من الاستقرار في الزمن المستمر.

المستوى s قصاد المستوى z في لمحة

منطقة الاستقرار: النص الشمال (s) ↔ جوه دايرة الوحدة (z)

محور الـ frequency: المحور التخيلي jω (s) ↔ دايرة الوحدة ejω (z)

منطقة عدم الاستقرار: النص اليمين (s) ↔ برا دايرة الوحدة (z)

لابلاس ↔ تحويل Z، زي المستمر ↔ المتقطع بالظبط

الدرس الجاي بيستكشف الـ region of convergence (منطقة التقارب) أو ROC — مجموعة قيم z اللي مجموع تحويل Z بيتقارب عندها. والـ ROC بتحدد هل الـ signal causal ولا anti-causal ولا ثنائية الجانب، وضرورية عشان تعكس تحويل Z صح.

أهم النقط
  • تحويل Z بيودّي الـ sequence المتقطعة x[n] لدالة X(z) في المتغيّر المركّب z، وبيحوّل الـ difference equations الـ recursive لمعادلات polynomial جبرية.
  • التعريف: X(z) = Σ x[n]·z⁻ⁿ. ولما يتحسب على دايرة الوحدة |z| = 1 بيساوي الـ DTFT.
  • الأزواج الأساسية: δ[n]↔1، u[n]↔z/(z−1)، aⁿu[n]↔z/(z−a).
  • الخصائص الأساسية: الـ linearity، والـ time shift (تأخير k → ضرب في z⁻ᵏ)، والـ convolution ← ضرب.
  • أي LCCDE بتبقى transfer function rational H(z) = Y(z)/X(z) — نسبة بين polynomialين في z.
  • تحويل Z أحادي الجانب (الجمع من n=0) بيتستخدم للأنظمة الـ causal ومسائل الشروط الابتدائية.
  • الـ mapping z = e^(sT) بيربط تحويل لابلاس بتحويل Z؛ والنص الشمال من المستوى s بيروح لجوه دايرة الوحدة في المستوى z.
اللي فات الـ impulse response (الاستجابة النبضية) وأنظمة LTI نظرة عامة على الموديول اللي بعده الـ region of convergence (منطقة التقارب)