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

الـ signals (الإشارات) اللي حوالينا

~10 دقايق قراءة الدرس 1 في الوحدة 1

كل حاجة signal

كل صوت بتسمعه، وكل صورة بتشوفها، وكل رسالة بتبعتها — كله signals (إشارات). المزيكا اللي شغّالة في السماعات بتاعتك، والنبضات الكهربية في ضربات قلبك، وحتى طلوع ونزول أسعار الأسهم — كل دول signals شايلة معلومات. الدرس ده بيشرح الـ signals إيه، وبتيجي منين، وليه بقى تعلّم معالجتها من أهم المهارات في الهندسة النهارده.

الـ Digital Signal Processing (معالجة الإشارات الرقمية) أو DSP هي فن وعلم التعامل مع الـ signals دي بالكمبيوتر. وهي في قلب تقريبًا كل تكنولوجيا بتستخدمها كل يوم — من السماعات اللي بتلغي الـ noise (الضوضاء)، للتصوير الطبي، لشبكات الموبايل 5G.

الفكرة الأساسية

الـ signal هي أي كمية بتتغيّر مع الوقت، أو المكان، أو أي متغيّر مستقل تاني، وشايلة معلومات. والـ signal processing هي إنك تطلّع المعلومات دي، وتحوّلها، وتفهمها.

الـ signal = معلومات بتتغيّر مع الوقت (أو المكان)
الخط الزمني — محطات في تاريخ الـ signal processing
1822
فورييه نشر نظريته في الحرارة، وفيها فكرة إن أي signal ممكن تتفكّك لـ sine waves (موجات جيبية)
1928
نايكويست حط نظرية الـ sampling (الاعتيان) — الكوبري بين الـ signals المستمرة والمنفصلة
1948
شانون نشر "النظرية الرياضية للاتصالات" — أساس الـ information theory (نظرية المعلومات)
1965
كولي وتوكي نشروا خوارزمية الـ Fast Fourier Transform (تحويل فورييه السريع) أو (FFT) — وده اللي خلّى الـ DSP في الـ real time (الوقت الحقيقي) حاجة عملية

يعني إيه signal؟

في أبسط صورها، الـ signal هي أي كمية بتتغيّر مع الوقت (أو المكان) وشايلة معلومات. فكّر في موجة صوت ماشية في الهوا: ضغط الهوا بيتغيّر مع الوقت، والتغيّرات دي هي اللي شايلة المعلومة اللي بنسمعها كلام أو مزيكا.

الـ signals حوالينا في كل حتة في حياتنا اليومية. شوية أمثلة:

موجات الصوت — تغيّرات في ضغط الهوا ودانك بتلقطها ومخك بيفهمها صوت أو مزيكا أو دوشة. إشارات رسم القلب (ECG) — فولتات كهربية بتتقاس على القلب، والدكاترة بيستخدموها عشان يشخّصوا أمراض القلب. أسعار الأسهم — قيم مالية بتطلع وتنزل مع الوقت وممكن تتحلّل عشان نلاقي الاتجاهات. الصور — قيم إضاءة بتتغيّر على بعدين في المكان، وبتعمل الصور اللي على شاشتك.

رياضيًا، بنمثّل الـ signal كـ function (دالة). لو الـ signal بتتغيّر مع الوقت، بنكتبها x(t)، وt هو متغيّر الزمن.

الرموز العامة للـ signal
x(t) \;\;\text{(continuous)} \qquad x[n] \;\;\text{(discrete)}
x(t) بتمثّل signal مستمرة في الزمن؛ وx[n] بتمثّل signal منفصلة في الزمن، وn فيها index صحيح

مستمرة ولا منفصلة

العالم الفيزيائي تناظري بطبعه — الصوت والنور والحرارة والضغط كلهم بيتغيّروا بنعومة ومن غير انقطاع. إنما الكمبيوتر رقمي: بيشتغل بأرقام منفصلة متخزّنة في memory محدودة. التعارض الأساسي ده هو اللي بيخلّي الـ signal processing ضرورية وممتعة في نفس الوقت.

الـ signal المستمرة (التناظرية) ليها قيمة عند كل لحظة. الصوت في الحقيقة مستمر — ضغط الهوا بيتغيّر بنعومة، من غير قفزات ولا فجوات. والـ signal المنفصلة (الرقمية) عبارة عن samples (عيّنات) منفصلة متاخدة على فترات ثابتة. لما بتسجّل صوت على الكمبيوتر، إنت بتاخد samples من موجة الصوت المستمرة آلاف المرات في الثانية.

التحويل من المستمر للمنفصل اسمه الـ sampling (sampling)، وبتحكمه نظرية نايكويست-شانون للـ sampling (1928): عشان تبني الـ signal تاني بالظبط، لازم تاخد samples بمعدّل على الأقل ضعف أعلى frequency (تردد) فيها. النظرية دي هي الكوبري النظري بين العالم التناظري والعالم الرقمي.

الفرق الأساسي

تناظرية (مستمرة): ليها قيمة عند كل نقطة في الزمن. رقمية (منفصلة): ليها قيمة عند نقط الـ sampling بس. العالم تناظري، والكمبيوتر رقمي — فلازم نحوّل بين الاتنين.

العالم التناظري → الـ sampling → المعالجة الرقمية → إعادة البناء → العالم التناظري

خصائص الـ signal

أي signal، مهما كانت معقّدة، تقدر توصفها بتلات خصائص أساسية:

الـ amplitude (السعة) بتقيس قوة الـ signal — الموجة "عالية" قد إيه. في الصوت، الـ amplitude بتحدد علو الصوت. في الراديو، بتحدد قوة الـ signal. والـ frequency بتقيس الـ signal بتتغيّر بسرعة قد إيه — عدد الدورات في الثانية. في الصوت، الـ frequency بتحدد طبقة النغمة. في الراديو، بتحدد القناة. والـ phase (الطور) بيوصف الـ signal واقفة فين في دورتها دلوقتي. الـ phase بيفرق لما تيجي تجمع signals أو تقارنها ببعض.

أبسط signal وأهمها هي الـ sine wave. أي signal — مهما كانت معقّدة — ممكن تتفكّك لمجموع sine waves بـ frequencies وamplitudes وphases مختلفة. الحقيقة المدهشة دي، اللي اكتشفها فورييه سنة 1822، هي أساس الـ signal processing كلها.

الـ sine wave
x(t) = A \sin(2\pi f t + \varphi)
A = الـ amplitude، وf = الـ frequency (هرتز)، وφ = الـ phase (راديان). دي الطوبة الأساسية اللي كل الـ signals مبنية منها.

ليه بنعالج الـ signals؟

الـ signals الخام نادرًا ما تبقى مفيدة لوحدها. بتبقى مليانة noise، أو كبيرة أوي على التخزين، أو فيها معلومات مستخبية مش باينة على طول. الـ signal processing بتدّينا الأدوات عشان:

نشيل الـ noise — ننضّف تسجيل بإننا نعمل filtering (ترشيح) للوِش اللي في الخلفية، أو نحسّن صورة طبية بإننا نشيل الـ artifacts (التشوهات). نضغط البيانات — MP3 وJPEG والـ video codecs (برامج ترميز الفيديو) كلها بتستخدم تقنيات DSP عشان تصغّر حجم الملفات وتحافظ على الجودة اللي بنحسّها. نطلّع المعلومات — نكتشف حاجة غلط في ضربات القلب، أو نميّز صوت واحد وسط زحمة، أو نلاقي اتجاه في بيانات مالية. نحوّل للإرسال — نعمل modulation (تعديل) للـ signals عشان الاتصالات اللاسلكية، وده اللي بيشغّل كل حاجة من WiFi لتلفزيون الأقمار الصناعية.

من غير الـ signal processing، العالم الرقمي اللي إحنا عايشين فيه مكانش هيبقى موجود أصلًا. كل مكالمة تليفون، وكل فيديو بتتفرّج عليه على النت، وكل أشعة رنين مغناطيسي، بيعتمدوا على خوارزميات DSP بتعمل مليارات العمليات في الثانية.

المعالجة الرقمية قصاد التناظرية

قبل الكمبيوترات الرقمية، الـ signal processing كانت بتتعمل كلها بدواير تناظرية — مقاومات ومكثّفات وملفات وop-amps (مضخمات العمليات). والطريقة دي ليها مميزات: الدواير التناظرية سريعة، ومبتدخّلش quantization error (خطأ الكمّنة).

بس المعالجة الرقمية قلبت المجال. مميزات الرقمي: نتايج بتتكرّر بالظبط (نفس الـ input بيدّي دايمًا نفس الـ output)، سهل تبرمجه وتغيّر إعداداته، تحكّم دقيق في كل parameter، وتقدر تنفّذ خوارزميات مستحيل تتعمل في hardware تناظري. مميزات التناظري: مفيش sampling artifacts، سريع بطبعه، ومش محتاج تحويل من تناظري لرقمي.

في الواقع، الأنظمة الحديثة بتستخدم الاتنين: دواير تناظرية في الأول والآخر (المكان اللي الـ signals بتتعامل فيه مع العالم الفيزيائي)، ومعالجة رقمية في النص (المكان اللي الحسابات بتحصل فيه). الطريقة الهجين دي بتدّينا أحسن ما في العالمين.

الـ signals في حياتنا اليومية

الـ signals والـ DSP داخلين في تقريبًا كل تكنولوجيا بنستخدمها. الصوت — تطبيقات المزيكا بتستخدم DSP للضغط (AAC، MP3)، والـ equalization (الموازنة)، وإلغاء الـ noise. والمساعد الصوتي بتاعك بيستخدم DSP عشان يفهم الكلام. الفيديو — منصّات البث بتضغط الفيديو بالـ codecs. والكاميرا بتاعتك بتستخدم DSP لتثبيت الصورة والـ autofocus ومعالجة الـ HDR.

الطب — أجهزة رسم القلب بتعمل filtering لإشارات القلب. وأجهزة الرنين المغناطيسي بتبني الصور من بيانات في الـ frequency domain (مجال التردد) باستخدام تحويل فورييه. والسونار الطبي بيستخدم الـ beamforming (تشكيل الحزمة). الاتصالات — WiFi و4G و5G كلهم معتمدين على OFDM (تقسيم التردد المتعامد). وGPS بيستخدم الـ correlation (الارتباط) بين الـ signals عشان يحدد مكانك. المالية — خوارزميات التداول بتحلّل signals الأسعار بتدوّر على أنماط. والـ moving averages والـ filters (المرشحات) بتنعّم بيانات السوق اللي مليانة noise.

في الدرس الجاي، هندخل أعمق في الفرق بين الـ signals التناظرية والرقمية، وهنتعلّم الـ sampling بيشتغل إزاي — وكمان إيه اللي بيحصل لما الأمور تبوظ.

أهم النقط
  • الـ signal هي أي كمية شايلة معلومات وبتتغيّر مع الوقت أو المكان — الصوت والصور وضربات القلب وأسعار الأسهم كلها signals.
  • الفرق الأساسي في الـ DSP هو بين الـ signals المستمرة (التناظرية) والمنفصلة (الرقمية) — ونظرية نايكويست هي اللي بتربط العالمين.
  • الـ DSP بتحوّل الـ signals التناظرية لشكل رقمي عشان تعالجها، وده بيخلّينا نشيل الـ noise، ونضغط، ونطلّع معلومات، ونحوّل للإرسال.
  • الـ signals في كل حتة: الصوت والفيديو والتصوير الطبي والاتصالات اللاسلكية والمالية كلها معتمدة على تقنيات الـ signal processing.
الدرس اللي فات لا يوجد نظرة عامة على الموديول الدرس اللي بعده الـ signals التناظرية قصاد الرقمية