صفحة 227 - كتاب إنترنت الأشياء - الصف 11 - الفصل 1 - المملكة العربية السعودية

الكتاب: كتاب إنترنت الأشياء - الصف 11 - الفصل 1 | المادة: إنترنت الأشياء | المرحلة: الصف 11 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

📚 معلومات الصفحة

الكتاب: كتاب إنترنت الأشياء - الصف 11 - الفصل 1 | المادة: إنترنت الأشياء | المرحلة: الصف 11 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

نوع المحتوى: درس تعليمي

📝 ملخص الصفحة

📚 برمجة الأردوينو (أسئلة تمارين)

المفاهيم الأساسية

لا تحتوي الصفحة على تعريفات للمفاهيم، بل على أسئلة تطبيقية فقط.

خريطة المفاهيم

```markmap

برمجة الأردوينو (أسئلة تمارين)

دوال الأردوينو الأساسية

استخدام دالة setup()

استخدام دالة loop()

برمجة المكونات الإلكترونية

خطوات اختزال مكون إلكتروني إلى لغة C++

```

نقاط مهمة

  • تركز الصفحة على سؤالين تطبيقيين حول برمجة لوحة الأردوينو.
  • السؤال الأول يطلب توضيح استخدام الدالتين الأساسيتين `setup()` و `loop()` في مخطط الأردوينو.
  • السؤال الثاني يطلب توضيح الخطوات اللازمة لبرمجة مكون إلكتروني متصل بلوحة الأردوينو باستخدام لغة C++.

📋 المحتوى المنظم

📖 محتوى تعليمي مفصّل

9

نوع: QUESTION_HOMEWORK

وضح استخدام دالة setup() و loop() في مخطط الأردوينو.

10

نوع: QUESTION_HOMEWORK

وضح الخطوات اللازمة لاختزال مكون إلكتروني يتصل بلوحة الأردوينو إلى لغة C++.

📄 النص الكامل للصفحة

--- SECTION: 9 --- وضح استخدام دالة setup() و loop() في مخطط الأردوينو. --- SECTION: 10 --- وضح الخطوات اللازمة لاختزال مكون إلكتروني يتصل بلوحة الأردوينو إلى لغة C++.

✅ حلول أسئلة الكتاب الرسمية

عدد الأسئلة: 2

سؤال 9: وضّح استخدام دالتي ()setup و ()loop في مخطط الأردوينو.

الإجابة: س9: setup(): تُنفذ مرة واحدة عند التشغيل لتهيئة الإعدادات. loop(): تُنفذ بشكل متكرر ومستمر لتنفيذ المهام.

خطوات الحل:

  1. **الشرح:** لنفهم هذا السؤال، يجب أن نعرف أن برنامج الأردوينو يتكون من جزأين رئيسيين. الجزء الأول هو دالة `setup()`، وهي تُنفذ مرة واحدة فقط عند بدء تشغيل لوحة الأردوينو. وظيفتها الأساسية هي تهيئة الإعدادات الأولية، مثل تحديد منافذ الإدخال والإخراج (Input/Output) أو بدء الاتصال مع شاشة عرض. الجزء الثاني هو دالة `loop()`، وهي تُنفذ بعد انتهاء `setup()`. المهم هنا أن دالة `loop()` تعمل بشكل متكرر ومستمر دون توقف، حيث تُنفذ التعليمات الموجودة داخلها مراراً وتكراراً. هذا الجزء هو المسؤول عن تنفيذ المهام الرئيسية للبرنامج، مثل قراءة مستشعر أو تشغيل محرك. إذن الإجابة هي: **دالة `setup()` تُنفذ مرة واحدة عند التشغيل لتهيئة الإعدادات، ودالة `loop()` تُنفذ بشكل متكرر ومستمر لتنفيذ المهام.**

سؤال 10: وضّح الخطوات اللازمة لاختزال مُكوّن إلكتروني يتصل بلوحة الأردوينو إلى فئة وكائن في لغة ++C.

الإجابة: س10: 1)تحديد المكوّن 2)الخصائص 3)السلوكيات 4)إنشاء الفئة(Class) 5)المنشئ 6)الكائن 7)الاستخدام

خطوات الحل:

  1. **الخطوة 1 (المفهوم):** نتذكر أن البرمجة كائنية التوجه (OOP) في لغة ++C تسمح لنا بتنظيم الكود عن طريق تجميع الخصائص والوظائف المتعلقة بكيان ما داخل فئة (Class). هذا يجعل الكود أكثر تنظيماً وأسهل في الصيانة.
  2. **الخطوة 2 (التطبيق):** لنطبق هذا المفهوم على مكون إلكتروني (مثل مستشعر أو محرك) متصل بلوحة الأردوينو. أولاً، نحدد المكون الذي نريد تمثيله. ثم نفكر في خصائصه (مثل رقم المنفذ الذي يتصل به) وسلوكياته (مثل دالة للقراءة أو الكتابة). بعد ذلك، ننشئ فئة (Class) تحمل اسم المكون، ونضع داخلها هذه الخصائص (كمتغيرات) والسلوكيات (كدوال). نكتب أيضاً منشئاً (Constructor) للفئة لتهيئة الخصائص عند إنشاء كائن منها. أخيراً، ننشئ كائناً (Object) من هذه الفئة في البرنامج الرئيسي ونستخدمه.
  3. **الخطوة 3 (النتيجة):** إذن الخطوات هي: **1) تحديد المكون، 2) تحديد خصائصه، 3) تحديد سلوكياته، 4) إنشاء الفئة (Class)، 5) كتابة المنشئ (Constructor)، 6) إنشاء كائن (Object) من الفئة، 7) استخدام الكائن في البرنامج.**

🎴 بطاقات تعليمية للمراجعة

عدد البطاقات: 5 بطاقة لهذه الصفحة

ما الوظيفة الأساسية لدالة `setup()` في برمجة الأردوينو؟

  • أ) تُنفذ بشكل متكرر ومستمر لقراءة المستشعرات وتشغيل المحركات.
  • ب) تُستخدم فقط لعرض رسائل الترحيب على الشاشة.
  • ج) تُنفذ مرة واحدة عند بدء التشغيل لتهيئة الإعدادات الأولية للوحة.
  • د) تُستخدم لحفظ البيانات في الذاكرة الدائمة للوحة.

الإجابة الصحيحة: c

الإجابة: تُنفذ مرة واحدة عند بدء التشغيل لتهيئة الإعدادات الأولية للوحة.

الشرح: 1. دالة `setup()` هي جزء أساسي من أي برنامج أردوينو. 2. تُنفذ مرة واحدة فقط عند تشغيل اللوحة أو إعادة ضبطها. 3. وظيفتها الرئيسية هي تهيئة الإعدادات مثل تحديد منافذ الإدخال/الإخراج أو بدء الاتصال مع أجهزة طرفية. 4. بعد انتهائها، تبدأ دالة `loop()` بالعمل بشكل متكرر.

تلميح: تتعلق بالتهيئة الأولية قبل بدء البرنامج الرئيسي.

التصنيف: تعريف | المستوى: سهل

ما الوظيفة الأساسية لدالة `loop()` في برمجة الأردوينو؟

  • أ) تُنفذ مرة واحدة لتحميل المكتبات المطلوبة.
  • ب) تُنفذ بشكل متكرر ومستمر بعد `setup()` لتنفيذ المهام الرئيسية للبرنامج.
  • ج) تُستخدم لإيقاف تشغيل اللوحة تلقائياً بعد فترة زمنية.
  • د) تُستخدم فقط لفحص حالة البطارية.

الإجابة الصحيحة: b

الإجابة: تُنفذ بشكل متكرر ومستمر بعد `setup()` لتنفيذ المهام الرئيسية للبرنامج.

الشرح: 1. دالة `loop()` هي الجزء الرئيسي الذي يعمل بعد دالة `setup()`. 2. تُنفذ التعليمات الموجودة داخلها بشكل متكرر ولانهائي. 3. مسؤولة عن تنفيذ المهام الأساسية مثل قراءة المستشعرات، معالجة البيانات، وتشغيل المشغلات. 4. تعمل طالما اللوحة قيد التشغيل.

تلميح: تتعلق بالتنفيذ المستمر والدوري للبرنامج.

التصنيف: تعريف | المستوى: سهل

ما الخطوة الأولى في عملية نمذجة مكون إلكتروني (مثل مستشعر) كفئة في لغة C++ باستخدام البرمجة كائنية التوجه؟

  • أ) كتابة المنشئ (Constructor) للفئة.
  • ب) تحديد المكون الإلكتروني المراد تمثيله.
  • ج) ترجمة الكود وتحميله على لوحة الأردوينو.
  • د) تحديد جميع المكتبات البرمجية المطلوبة.

الإجابة الصحيحة: b

الإجابة: تحديد المكون الإلكتروني المراد تمثيله.

الشرح: 1. عملية النمذجة تبدأ بتحديد الكيان الذي نريد تمثيله في البرنامج. 2. في سياق إنترنت الأشياء، هذا الكيان غالباً ما يكون مكوناً إلكترونياً متصلاً بلوحة الأردوينو (مستشعر درجة حرارة، محرك، إلخ). 3. تحديد المكون بوضوح يساعد في تحديد خصائصه وسلوكياته لاحقاً. 4. هذه الخطوة أساسية قبل الانتقال إلى كتابة الكود.

تلميح: تتعلق بالخطوة التمهيدية قبل كتابة أي كود.

التصنيف: صيغة/خطوات | المستوى: متوسط

بعد تحديد المكون الإلكتروني في عملية النمذجة، ما الخطوتان التاليتان اللازمتان لإنشاء فئة (Class) له؟

  • أ) إنشاء كائن ثم اختباره.
  • ب) تحديد اسم الفئة ثم كتابة كود التحكم الرئيسي.
  • ج) تحديد خصائص المكون (مثل رقم المنفذ) ثم تحديد سلوكياته (مثل دالة القراءة).
  • د) اختيار لون للوحة الأردوينو ثم تحديد جهد التشغيل.

الإجابة الصحيحة: c

الإجابة: تحديد خصائص المكون (مثل رقم المنفذ) ثم تحديد سلوكياته (مثل دالة القراءة).

الشرح: 1. بعد تحديد المكون، يجب تحليله إلى جزأين رئيسيين: 2. **الخصائص (Properties/Attributes):** وهي البيانات التي تصف حالة المكون (مثال: رقم المنفذ الرقمي المتصل به، قيمة معايرة). 3. **السلوكيات (Behaviors/Methods):** وهي الإجراءات أو الوظائف التي يمكن للمكون القيام بها (مثال: `read()` لقراءة القيمة، `initialize()` للتهيئة). 4. هاتان الخطوتان تحددان هيكل الفئة التي سيتم إنشاؤها.

تلميح: تتعلق بتحديد سمات البيانات والإجراءات الخاصة بالكائن.

التصنيف: صيغة/خطوات | المستوى: متوسط

في البرمجة كائنية التوجه (OOP) بلغة C++، ما الفرق الرئيسي بين الفئة (Class) والكائن (Object) في سياق نمذجة مكون إلكتروني؟

  • أ) الفئة هي الكود المكتوب بلغة الآلة، والكائن هو الكود المكتوب بلغة C++.
  • ب) الفئة هي القالب أو التصميم الذي يحدد الخصائص والسلوكيات، بينما الكائن هو نسخة عملية ملموسة منشأة من ذلك القالب.
  • ج) الفئة تستخدم فقط في لوحات الأردوينو، بينما الكائن يستخدم في الحواسيب الشخصية.
  • د) الكائن هو ملف الرأس (.h)، والفئة هي ملف التنفيذ (.cpp).

الإجابة الصحيحة: b

الإجابة: الفئة هي القالب أو التصميم الذي يحدد الخصائص والسلوكيات، بينما الكائن هو نسخة عملية ملموسة منشأة من ذلك القالب.

الشرح: 1. **الفئة (Class):** هي تعريف مجرد. تشبه المخطط أو الوصفة. تحتوي على تعريف المتغيرات (الخصائص) والدوال (السلوكيات) التي ستكون لدى كل كائن من هذا النوع. 2. **الكائن (Object):** هو نسخة محددة من الفئة. تشبه البيت المبني حسب المخطط. له قيم فعلية مخزنة في خصائصه، ويمكن استدعاء دواله. 3. مثال: فئة `TemperatureSensor` هي التصميم. الكائن `sensor1` هو مستشعر محدد متصل بمنفذ رقمي معين.

تلميح: فكر في العلاقة بين مخطط البيت والبيت المبني نفسه.

التصنيف: فرق بين مفهومين | المستوى: صعب