## مقدمة
يمثل دمج بيئة البرمجة المرئية سكراتش (Scratch) مع منصة راسبيري باي (Raspberry Pi) خطوة مثالية لتعزيز مهارات البرمجة والإلكترونيات لدى النشء والمبتدئين على حدّ سواء. يجمع هذا المزيج بين سهولة الواجهة الرسومية في سكراتش والقوة الحاسوبية وسهولة التوصيل العتادي التي يوفرها الراسبيري باي. يهدف هذا المقال المفصَّل إلى تقديم دليل متكامل لإنشاء لعبة أضواء تفاعلية—تحاكي إشارة مرور أو عرض ألوان متسلسل—باستخدام هاتين الأداتين، مع التركيز على الجوانب التعليمية، والتقنية، وتصميم تجربة المستخدم، وأفضل ممارسات تحسين محركات البحث (SEO) في سياق المحتوى العربي التقني.
### أولاً: نظرة عامة على سكراتش ورسبيري باي
#### سكراتش
-
بيئة برمجة رسومية طُوِّرت في معهد ماساتشوستس للتقنية.
-
تعتمد على السحب والإسقاط للكتل البرمجية، ما يجعلها مناسبة لمختلف الأعمار.
-
تدعم التفاعل مع العتاد الخارجي عبر إضافات (Extensions) أو بروتوكولات وسيطة مثل GPIO لبعض المنصّات.
#### راسبيري باي
-
حاسوب أحادي اللوحة منخفض التكلفة وعالي الاعتمادية.
-
مزوّد بمنافذ GPIO (General Purpose Input/Output) تسمح بتوصيل حسّاسات، مصابيح LED، مفاتيح ضغط، وغيرها.
-
يدعم أنظمة تشغيل مختلفة (Raspberry Pi OS أساساً) مع مكتبات برمجية جاهزة للتعامل مع الدخل/الخرج.
### ثانياً: الهدف التعليمي من مشروع لعبة الأضواء
-
فهم الدوائر الإلكترونية الأساسية (اختيار المقاومة المناسبة، القطبية في مصابيح LED).
-
إتقان ربط العتاد بالبرمجيات عبر منافذ GPIO.
-
تنمية التفكير الحسابي من خلال خوارزمية تغيير الألوان وضبط التوقيت.
-
تعزيز مهارات التصميم القصصي في سكراتش لإنشاء لعبة ذات عناصر رسوم وصوتيات.
### ثالثاً: المتطلبات المادية والبرمجية
| الفئة | البيان | ملاحظات |
|---|---|---|
| عتاد | راسبيري باي 4 أو 3 | موصى به مع بطاقة microSD بسعة ≥ 16 GB |
| كهربائيات | 3 × LED (أحمر/أصفر/أخضر) | يمكن استبدالها بشرائط NeoPixel للمؤثرات المتقدمة |
| مقاومات | 3 × 220 Ω | لحماية الـ LED من التيار الزائد |
| أسلاك توصيل | ذكر–أنثى | لضمان سهولة التوصيل |
| برمجيات | Raspberry Pi OS مع آخر تحديث | يتضمّن Scratch Desktop |
| إضافات | مكتبة gpiozero أو Scratch GPIO | لربط سكراتش بالمنافذ |
### رابعاً: إعداد بيئة العمل على راسبيري باي
-
تحديث النظام
bashsudo apt update && sudo apt full-upgrade -y -
تثبيت Scratch Desktop (إذا لم يكن مثبتاً افتراضياً):
bashsudo apt install scratch -y -
تنصيب إضافة Scratch GPIO التي تُنشئ واجهة وسيطة بين سكراتش ومنافذ GPIO، وذلك عبر:
bashwget https://bit.ly/scratchgpio8 sudo bash scratchgpio8 -
إعادة التشغيل لضمان تفعيل الإضافة وربطها تلقائياً عند فتح سكراتش.
### خامساً: تصميم الدائرة الإلكترونية
-
توصَّل مصابيح LED إلى المنافذ GPIO 17 (أحمر)، GPIO 27 (أصفر)، GPIO 22 (أخضر).
-
يُوصل الطرف الموجب لكل LED بالمقاومة ثم بالمنفذ المعني، بينما يوصل الطرف السالب جميعاً بمنفذ GND (الأرضي).
-
يُختبر كل LED منفرداً عبر سطر أوامر Python باستخدام مكتبة gpiozero:
pythonfrom gpiozero import LED from time import sleep red = LED(17); red.on(); sleep(2); red.off()
### سادساً: بناء منطق اللعبة في سكراتش
#### 1. إنشاء الشخصيات والخلفيات
-
الخلفية: شارع بسيط مع إشارة المرور في الوسط.
-
الشخصيات (Sprites):
-
إشارة المرور ذات ثلاثة أضواء.
-
سيارة كرتونية تتوقف أو تتحرك بناءً على لون الإشارة.
-
#### 2. إضافة الإمتداد Scratch GPIO
-
من قائمة Extensions اختر Pi GPIO فيظهر بلوك برتقالي جديد للتحكم بالمنافذ.
#### 3. الهيكل البرمجي الأساسي
pseudoعند النقر على العلم الأخضر كرر إلى ما لا نهاية شغّل LED الأحمر (GPIO 17) أوقف LED الأصفر وLED الأخضر أوقف السيارة انتظر 5 ثوانٍ شغّل LED الأصفر (GPIO 27) أوقف LED الأحمر وLED الأخضر انتظر 2 ثانية شغّل LED الأخضر (GPIO 22) حرّك السيارة إلى الأمام أوقف LED الأحمر وLED الأصفر انتظر 5 ثوانٍ انتهى
يُحوَّل هذا المخطط إلى كتل سكراتش بحيث تمثّل أوامر تشغيل/إيقاف LED بلوكات التحكم في Pins.
### سابعاً: توسيع اللعبة بعناصر تفاعلية
-
عداد زمني: إضافة مؤقت يظهر تناقص الثواني حتى تغيّر اللون، ما يزيد الترقب.
-
مستويات صعوبة: تقليل زمن الإشارة الخضراء تدريجياً.
-
أصوات: صفارة قصيرة عند الانتقال من الأصفر إلى الأحمر.
-
نظام نقاط: يمنح اللاعب نقاطاً إذا توقف قبل الخط الأبيض خلال الضوء الأحمر.
### ثامناً: تحسين أداء اللعبة على الراسبيري باي
-
تقليل عدد الخلفيات المتحركة لتخفيف العبء على وحدة المعالجة الرسومية.
-
استخدام دقة 720p بدلاً من 1080p في إعدادات سكراتش.
-
إزالة الكتل الزائدة واستبدال الحلقات المتداخلة بكتل دوال (My Blocks) قابلة لإعادة الاستخدام.
### تاسعاً: توظيف تقنيات SEO في مشروع المقال
| عنصر SEO | تطبيق عملي في هذا المقال |
|---|---|
| الكلمات المفتاحية الرئيسة | Scratch، راسبيري باي، لعبة أضواء، GPIO، تعليم البرمجة للأطفال |
| العناوين الفرعية | وُضعت بعلامات H2, H3 مرتَّبة لتعزيز الزحف والفهرسة |
| المعلومات الغنية | شرح معمَّق للدوائر، الشيفرات، خطوات التثبيت |
| الروابط الداخلية | يمكن في المنصة الربط بمقالات سابقة عن “أساسيات الراسبيري باي” أو “مبادئ الإلكترونيات” |
| المقتطفات المميزة | إدراج أوامر ترميزية قصيرة تزيد فرص الظهور كمقتطف في جوجل |
### عاشراً: اختبارات وضبط الجودة
-
اختبار العتاد:
-
التأكد من عدم ارتفاع حرارة المقاومات.
-
قياس الجهد عبر أطراف الـLED لضمان أنه أقل من 2 V للأحمر والأصفر وحوالَي 3 V للأخضر.
-
-
اختبار البرمجية:
-
التحقق من أنّ زمن الانتقال بين الأضواء دقيق (±0.1 ثانية).
-
فحص استجابة السيارة للأضواء في جميع السيناريوهات.
-
-
تجربة المستخدم:
-
ملاحظة وضوح الألوان تحت إضاءة الغرفة.
-
التأكد من أن خطوط العدّاد كبيرة كفاية للأطفال.
-
### حادي عشر: آفاق التطوير المستقبلية للمشروع
-
استخدام مستشعرات: إدماج حساس مسافة (Ultrasonic) ليقف اللاعب عند خط المشاة بناءً على القرب الفعلي للجهاز.
-
شبكات وإنترنت الأشياء (IoT): رفع بيانات أوقات العبور إلى خادم ويب وتحليل حركة المرور الوهمية.
-
برمجة بلغات أخرى: إعادة كتابة منطق اللعبة بـ Python وPygame لزيادة التحكم في الفيزياء والرسوميات.
### ثاني عشر: خلاصة تطبيقية
يوفر إنشاء لعبة الأضواء باستخدام سكراتش على راسبيري باي تجربة تعليمية متكاملة تنقل المتعلم من المفاهيم النظرية في البرمجة المرئية إلى فهم التوصيل الإلكتروني العملي، مع إتاحة فرص لا محدودة للإبداع والتوسّع. إنّ دمج العتاد بالبرمجيات يفتح الباب أمام مشاريع أكثر تعقيداً مثل أنظمة المرور الذكية والمحاكاة التفاعلية، ويحفّز المتعلمين على استكشاف مجالات الروبوتات وإنترنت الأشياء مستقبلاً.
### المراجع
-
Raspberry Pi Foundation. “GPIO Zero Documentation.”
-
MIT Media Lab. “Scratch Wiki – Extensions and Hardware Integration.”

