fbpx

RPi for Normies|وصفة رقم واحد

عالم إفتراضي لمشاريع أردوينو
مارس 11, 2019
Creative Coding Cairo في أرض المحروسة
مارس 14, 2019

RPi for Normies|وصفة رقم واحد

ها قد اتينا بوصفات جديدة 😀 دي الوصفة رقم واحد في سلسة RPi for normies و اللي هتكون مقسمة ل ٨ وصفات باذن الله

السلسلة دي هدفها إنها تحط رجلك على أول طريق عالم لوحة الراسبيري باي (raspberry pi) و كمان تحط رجلك على طريق البرمجة بلغة بايثون (Python)، مش كده و بس.. لا ده كمان في خلال السلسلة دي هنبني مشروعين مع بعض من البداية للنهاية، يعني السلسلة دي معتمدة علي الشغل العملي مش مجرد شرح بدون تطبيق.

طيب إيه هما ال ٨ وصفات و ترتيبهم إيه و إيه المشاريع اللي هننفذها ؟

  1. وصفة رقم واحد (اللي إنت فيها دلوقتي) : نظرة عامة على لوحة الراسبيري باي (Raspberry Pi) و على المشاريع التي سيتم تنفيذها.
  2. وصفة رقم اتنين : نظرة عميقة على مكونات لوحة الراسبيري باي (Raspberry Pi) و تهيئتها للعمل.
  3. وصفة رقم تلاتة: نظرة عميقة على نظام تشغيل (Raspbian Software) لوحة الراسبيري باي (Raspberry Pi)  الجزء الاول.
  4. وصفة رقم أربعةنظرة عميقة على نظام تشغيل (Raspbian OS) لوحة الراسبيري باي (Raspberry Pi)  الجزء الثاني.  
  5. وصفة رقم خمسة: مقدمة للغة البرمجة بايثون (Python Programming Language).
  6. وصفة رقم ستة : مشروع رقم واحد و اللي هيكون بعنوان The Meme Generator علشان أنا ميم لورد و شرطة مكافحة النورميز مكلفاني أكتب الوصفة دي ظظظ
  7. وصفة رقم سبعة: تفاعل لوحة الراسبيري باي (Raspberry Pi) مع العالم الخارجي من خلال الـGPIO Pins اختصارا ل (General Purpose Input Output Pins).
  8. وصفة رقم ثمانية: المشروع النهائي و اللي هيكون بعنوان Smart home automation using flask and python و اللي هنطبق فيه كل اللي اتعلمناه فوق.
 
 

لعمل هذا المشروع، تحتاج إلى خبرة مسبقة في:

 مش محتاج تكون عارف أي حاجة لإننا هنبدأ من الصفر 🙂

مستوى صعوبة المشروع:

مبتدئ

المكونات المستخدمة في المشروع:

إحنا في الوصفة دي مش هنحتاج غير بوردة راسبيري باي موديل ٣ ( 3 Raspberry Pi) لإن أنا هشتغل ببوردة موديل ٣ على مدار السلسة كلها إن شاء الله ..مش عارف إيه هي موديل ٣ أصلاً؟ متقلقش لإننا هنشرح كل حاجة في الخطوات 🙂

شوية افتراضات عملناها عنك، كطالب:

  • عمرك ما استخدمت الراسبيري باي قبل كده.
  •  عمرك ما عملت أي مشروع ليه علاقة بالالكترونيات بشكل عام
  • سمعت عن حاجة اسمها برمجة لكن مكتبتش كود قبل كده
  • عندك جهاز كمبيوتر D:
  • ببساطة السلسلة دي موجهة لأي حد مبتدأ و لأي حد عاوز يتعلم حاجة جديدة.

إيه هي الراسبيري باي؟

لوحة الراسبيري باي (Raspberry Pi) بكل بساطة هي جهاز كمبيوتر تعليمي قابل للبرمجة في حجم بطاقتك الشخصية، الراسبيري باي  (Raspberry Pi)، بما إنه جهاز كبيوتر صغير الحجم فهو بيتيح ليك كل الإمكانيات اللي موجودة على جهازك اللابتوب أو الديسكتوب .. الراسبيري باي  (Raspberry Pi) بتشتغل بنظام تشغيل (operating system) اسمه Linux هو نظام تشغيل مجاني و مفتوح المصدر و ده من أشهر أنظمة التشغيل بين المبرمجين و المطورين و ده لإنه يعتبر من أكثر أنظمة التشغيل أماناً و علشان كده بتلجأ ليه الشركات اللي بتكون محتاجة نظام أمن يصعب اختراقه.. كل ال servers حوالين العالم بتشتغل بنظام linux. لو حابب تعرف أكتر عن نظام التشغيل Linux هنتكلم عنه بالتفصيل في الوصفة رقم (٣ و ٤).

لوحة الراسبيري باي موديل ٣  (Raspberry Pi model 3) بالتحديد بتيجي إمكانية محترمة جداً مقارنة بحجمها، الراسبيري باي  (Raspberry Pi) هي كمبيوتر كامل على شريحة إلكترونية واحدة و اللي يعرف باسم SoC أو System on Chip، 

 معالج بيانات CPU رباعي النواة بسرعة 1.2 GHz و معالج رسوميات GPU من نوع Broadcom VideoCore IV قادر على تشغيل الأفلام بدقة HD و الألعاب ثلاثية الأبعاد و كمان ذاكرة عشوائية Ram بسرعة 1GB و كمان الراسبيري باي موديل ٣ بتيجي مزودة ببلوتوث و واي فاي Built-in كل ده زائد إن فيه على اللوحة مخارج تحكم رقمية زي اللي موجودة على أي متحكم دقيق (Micro-controller) و اللي بتديك الإمكانية إنك تتحكم في القطع الالكترونية المختلفة زي المواتير الحساسات و غيرها كتير و ده هنتكلم عنه بالتفصيل قدام.

ممكن أستخدم لوحة الراسبيري باي في إيه؟

 تقدم تستخدم لوحة الراسبيري باي (Raspberry Pi) كحاسب آلي عادي: تقدر تشغل أفلام، أو تسمع أغاني، كمان تتصفح الإنترنت، أو تبعت إيميل لمديرك الرخم… كل دي حاجات طبيعية تقدر تعملها على اللابتوب بتاعك، لكن في الحقيقة اللوحة دي اتعملت علشان تديك إمكانيات أكتر من كده بكتير، تقدر تعمل بالراسبيري باي حاجات كتير جداً. على سبيل المثال:

  •  تستخدم لوحة الراسبيري باي كخادم Web Server تستضيف عليها صفحات مواقع، و ده هيوفر عليك فلوس و هيساعدك كمان تتعلم أساسيات الـ Networking و الـ Web Development، كل اللي عليك إنك تعمله هو إنك تختار النظام اللي تفضل إنك تشتغل بيه و اللي أشهرهم Apache أو حتى Flask  منظمة الراسبيري باي عاملة دروس و شرح لإزاي تستخدم الأنظمه دي على الراسبيري باي.
  • كمان تقدر تستخدمها في مشاريع المنازل الذكية Smart homes و ده المشروع اللي هنعمله في نهاية السلسلة 🙂
  • كمان تقدر تستخدمها في إنك تبني روبوت و تتحكم فيه عن طريق الراسبيري باي و اللي هتديك إمكانيات عالية جدا بسبب توفر أكثر من نوع اتصال و قدرة المعالج العالية، تقدر تكتب برامج و خوارزميات معقدة و الراسبيري باي هتنفذها بكل إرياحية مقارنه بالمتحكمات الدقيقة العادية مثل الأردوينو. 
  • كمان تقدر تستخدمها في مجالات الذكاء الاصطناعي، على سبيل المثال تطبيقات معالجة الصور Image processing و ده معناه إنك بتقدر تخلي الراسبيري باي إنها تتعرف على وجوه الأشخاص عن طريق إنك بتزود لوحة الراسبيري بمجموعة من الصور لشخص معين مع كتابه بعض السطور البرمجية يتم تدريب اللوحة على التعرف على هذا الشخص، علشان تقدر تعمل حاجة زي كده محتاج يكون عندك خبرة في إحدى لغات البرمجة بجانب الخبرة في استخدام بعض المكتبات البرمجية مثل مكتبة ال openCV

و أفكار تانيه بقى كتير جدا ملهاش آخر، و كما قال الشعراء the sky is your limit.

هطلع بأيه من السلسلة دي؟

على مدار السلسلة دي هنبني أكتر من مشروع مع بعض بمستويات صعوبة مختلفة و اللي هتزيد بالتدريج مع تقدم الوصفات و ده هيدينا فرصة كويسة إننا نشرح مواضيع و تفاصيل مهمة جداً زي مثلا هنتكلم عن أكتر من لغة برمجة زي بايثون (Python) و جافا اسكربت (Javascript) زائد بعض لغات الترميز markup languages اللي بتستخدم في تصميم مواقع الإنترنت زي ال HTML و ال CSS و كمان بعض ال technologies المختلفة زي ال Flask Web server، طبعا كل ده بجانب الإلكترونيات اللي هنتعامل معاها و اللي هنشرح طريقة عملها بالتفصيل

في نهاية السلسلة دي من المتوقع إنك تكون اكتسبت خبرة في:

  • التعامل مع القطع الإلكترونية المختلفة و أساسيات بناء الدوائر الكهربائية.
  • فهمك لأساسيات البرمجة بلغة باثون (Python)، و لو اتعلمت الأساسيات كويس هتقدر تطبقها على أي لغة برمجة تانية.
  • فهمك لأساسيات التعامل مع ال HTML و ال CSS ال js و طرق بناء مواقع ويب بسيطة.
 

المشروع رقم واحد: The Meme Generator

و في المشروع ده هنبني صفحة ويب (Web Page) بسيطة هندخلها صورة و جملة و هي هتحولها ل ميم (Meme). الغرض من المشروع ده إننا نتعلم شوية أساسيات في ال HTML و ال CSS و ال JS و بردو هنتعلم شوية أساسيات في التعامل مع النظام لينكس (Linux).

المشروع رقم اتنين: Simple Smart Home (IoT) using Python and Flask

في المشروع ده هنتعلم إزاي نعمل مشروع في مجال إنترنت الأشياء (IoT)، هنحول الراسبيري باي (Raspberry Pi) لويب سيرفر(Web Server) بحيث إننا نقدر نتحكم في المخارج (GPIO Pins) بتاعت البورد عن طريق الإنترنت، و علشان نقدر نعمل ده هنستخدم فريمورك (Framework) اسمها Flask و دي أداة هتخلينا نقدر نعمل Web Application بسيط باستخدام لغة البرمجة بايثون (Python) و نرفع الـ Web Application ده علي الويب سيرفر (Web Server) اللي بيفوره لي Flask بردو، بعد كده هنكون قادرين نتحكم في الأجهزة داخل بيتنا عن طريق ال Web Application اللي عملناه و كمان هنقدر نعرض شوية معلومات جايلنا من مجموعة من الحساسات على واجهة Web page و كله هيحصل Locally يعني عن الطريق الشبكة المحلية، هنبني المشروع ده في نهاية السلسلة علشان نلم كل المعلومات اللي اتشرحت.

مستنيك في الوصفة رقم اتنين….

التكلفة الشاملة للوصفة دي بس:

بوردة راسبيري باي موديل ٣ (Raspberry Pi 3) –> ١٤٠٠ جنيه

أماكن شراء المكونات المستخدمة
  • تقدر تشتري البوردة من أي محل إلكترونيات تعرفه أو تحبه.
  • هي متاحة في رام الكترونكس في اللينك المدرج اللي فوق.
  • و هتلاقيها متاحةكمان في فيوتشر الكترونكس
  • و كمان هتلاقيها في free elctronics في باب اللوق.
لو تقدر تشتريها من بره مصر هتجيبها أرخص بس هتتعطل و هتتعب في الجمارك.
 
Ahmed
Ahmed
Junky Egyptian Hardcore DIYer
X