كتاب تعلم أردوينو ببساطة
إذا أردت أن تتعلم أساسيات تصميم الإلكترونيات الذكية والمتحكمات الدقيقة فهذا الكتاب بالتأكيد سيكون خطوتك اﻷولى لهذا العالم التكنولوجي الرائع.
يناقش كتاب أردوينو ببساطة أحد أشهر التقنيات الحديثة في عالم المتحكمات الدقيقة، وهي أنظمة تطوير الإلكترونيات الذكية المعروفة باسم أردوينو Arduino ويبدأ مع القارئ من الصفر بأساسيات الإلكترونيات والبرمجة والمبادئ اللازمة لوضع القارئ على أول طريق تصميم اﻷنظمة الإلكترونية الذكية، وانتهاءً بدمج المتحكمات الدقيقة مع الحواسيب الشخصية والخوادم.
======================
إذا أردت أن تتعلم أساسيات تصميم الإلكترونيات الذكية والمتحكمات الدقيقة فهذا الكتاب بالتأكيد سيكون خطوتك اﻷولى لهذا العالم التكنولوجي الرائع.
يناقش كتاب أردوينو ببساطة أحد أشهر التقنيات الحديثة في عالم المتحكمات الدقيقة، وهي أنظمة تطوير الإلكترونيات الذكية المعروفة باسم أردوينو Arduino ويبدأ مع القارئ من الصفر بأساسيات الإلكترونيات والبرمجة والمبادئ اللازمة لوضع القارئ على أول طريق تصميم اﻷنظمة الإلكترونية الذكية، وانتهاءً بدمج المتحكمات الدقيقة مع الحواسيب الشخصية والخوادم.
======================
الآردوينو (بالإنجليزية: Arduino) هو لوح تطوير إلكتروني يتكون من دارة إلكترونية مفتوحة المصدر مع متحكم دقيق يُبرمج عن طريق الحاسب الآلي، وهو مصمم لتسهيل استخدام الإلكترونيات التفاعلية في المشاريع متعددة التخصصات. يُستخدم الآردوينو بصورة أساسية في تصميم المشاريع الإلكترونية التفاعلية أو المشاريع التي تستهدف بناء حساسات بيئية مختلفة كدرجات الحرارة، الرياح، الضوء و الضغط وغيرها... يّمكن توصيل الآردوينو ببرامج مختلفة على الحاسب الشخصي، ويعتمد في برمجته على لغة البرمجة مفتوحة المصدر بروسيسنج، وتتميز الأكواد البرمجية الخاصة بلغة الآردوينو أنها تشبهه لغة السي وتعتبر من أسهل لغات البرمجة المستخدمة في كتابة برامج المتحكمات الدقيقة.
2. لماذا Arduino ؟
في الحقيقة يوجد الكثير من المتحكمات الإلكترونية Micro-Controllers المتوفرة في السوق مثل Parallax و Basic Stamp و Netmedia’s BX-24 Phidgets و Raspberry Pi و كلها تتميز بإمكانيات قوية و لها القدره على التحكم في مختلف القطع الإلكترونية و البرمجيات Software و ذلك طبعا بنسبة أفضلية متفاوتة لكن ما يميز الآردوينو Arduino هو مجموعة من الأمور اللتي تصنع الفارق بينه و بين غيره أهمها:
البساطة: قطعة الآردوينو Arduino مصممة لتناسب احتياجات الجميع، محترفين، أساتذة، طلاب وهواة الإلكترونيات التفاعلية.
الثمـــن: لوح الآردوينو Arduino أقل ثمناً مقارنةً مع الألواح الأخرى من نفس النوع فثمن أغلى Arduino لا يتجاوز 50$.
التركيب الذاتي (Self-Assembly): يمكنك تحميل ورقة البيانات Datasheet الخاصة بالآردوينو Arduino مجاناً من الموقع الرسمي و شراء القطع وتركيبه بنفسك !
متعدد المنصات: برنامج الآردوينو له القدرة على الاشتغال على الويندوز windows, الماك Mac OS و اللينكس Linux وأغلب المتحكمات الإلكترونية الأخرى تشتغل فقط على الويندوز فقط.
بيئة برمجية سهلة و بسيطة: البيئة البرمجية Programming Environment مصممة لتكون سهلة للمبتدئين و ثابتة و قوية للمحترفين.
Open Source Software: مكتوب بلغة السي ++C و متاح للجميع لتحميله و بامكان المبرمجين التعديل عليه وفق احتياجاتهم.
Open Source Hardware: الآردوينو Arduino مصنوع أساساً من متحكمات ATMEGA8 و ATMEGA168 و المخططات منشورة تحت ترخيص Creative Commons مما يتيح إلى مصممي الدارات الإلكترونية Electronic Circuits تصميم داراتهم الخاصة.
3.ما الفرق بين Arduino و Raspberry Pi ؟
أولاً يمكنك الإطلاع على هذا الموضوع حول Raspberry Pi حتى تعرف ما هو و ماهي ميزاته.أما بالنسبه للفرق بين Arduino و Raspberry Pi و أيهما الأفضل فلن أجيب على هذا السؤال لكني سأسرد أهم نقاط الإختلاف بينهما و أدع للقارئ حرية الإختيار.
من حيث سهولة الإستعمال:
في حالة Arduino ستحتاج إلى تحميل البرنامج من الموقع الرسمي ثم ما عليك سوى وصل القطعة بالجهاز و ربما ستحتاج إلى شراء USB Cable إذا لم تكن تملكه مسبقاً. الآن انت مستعد للإنطلاق، بالنسبه لـ Raspberry Pi فالأمر مختلف قليلاً، ستحتاج مسبقاً إلى شراء USB Cable و بطاقة ذاكرة SD card من أجل النظام و كذلك فأرة ولوحة مفاتيح وشاشة بها منفذ HDMI و أخيراً ستحتاج إلى Ethernet Cable أو WiFi Dongle لوصل القطعة بالإنترنت و بعد كل هذا سيتعين عليك تحميل النظام المناسب إلى بطاقة الذاكرة.
من حيث التواصل:
هنا أقصد التواصل مع أجهزة أخرى عن طريق شبكة محلية أو منزلية أو حتى عن طريق الإنترنت. Raspberry Pi سيكون له بعض الأفضلية في هذه الناحية لأنه يملك منفذ Ethernet مدمج في أغلب قطعه و بالإمكان أيضاً إضافة WiFi Dongle بسهولة عن طريق منفذ USB. لكن Arduino أيضاً له القدرة على الإتصال بالشبكات بسهولة إذا ما أضفنا له Ethernet shield وهي قطعة إضافية مدعومة من الموقع الرسمي أو يمكن شراء لوح Arduino مجهز بخاصية WiFi وأيضاً يوجد لوح Arduino به خاصية الإتصال بشبكات GSM مما يفتح الباب إلى التفكير في مشاريع مشوقة.
قوة المعالج Processor:
من هذه الناحية لا يمكن مقارنة لوح Arduino الذي يملك معالج من نوع ATMEG168 و الذي يعمل بسرعة 16Mhz مع Raspberry Pi بمعالج BCM2835 بسرعة 700Mhz وحتى أقوى لوح آردوينو Arduino Due لا يمكنه منافسة Raspberry Pi بمعالج SAM3X8E ذو سرعة 84Mhz. لكن رغم هذا يجب أن أشير إلى أن Raspberry Pi يحتاج إلى معالجات قوية و سريعة لأنه يتعامل مع الرسوميات و مع شاشات بدقة عالية.
البرمجة:
سأخبرك مسبقاً أن البرمجة على Arduino IDE أفضل بكثير من حيث سهولة التعلم و التطبيق و تمرير الكود إلى Arduino و الأمر ليس بنفس البساطة بالنسبة لـ Raspberry Pi, فسيتحتم عليك الدخول إلى اللوح عن طريق SSH ثم كتابة الكود ثم تشغيله لكن يمكنك أيضاً إستعمال لغة Python في كلا البيئتين و الإستفادة من مكتبتها الضخمة في تنفيذ مشاريعك.
2. لماذا Arduino ؟
في الحقيقة يوجد الكثير من المتحكمات الإلكترونية Micro-Controllers المتوفرة في السوق مثل Parallax و Basic Stamp و Netmedia’s BX-24 Phidgets و Raspberry Pi و كلها تتميز بإمكانيات قوية و لها القدره على التحكم في مختلف القطع الإلكترونية و البرمجيات Software و ذلك طبعا بنسبة أفضلية متفاوتة لكن ما يميز الآردوينو Arduino هو مجموعة من الأمور اللتي تصنع الفارق بينه و بين غيره أهمها:
البساطة: قطعة الآردوينو Arduino مصممة لتناسب احتياجات الجميع، محترفين، أساتذة، طلاب وهواة الإلكترونيات التفاعلية.
الثمـــن: لوح الآردوينو Arduino أقل ثمناً مقارنةً مع الألواح الأخرى من نفس النوع فثمن أغلى Arduino لا يتجاوز 50$.
التركيب الذاتي (Self-Assembly): يمكنك تحميل ورقة البيانات Datasheet الخاصة بالآردوينو Arduino مجاناً من الموقع الرسمي و شراء القطع وتركيبه بنفسك !
متعدد المنصات: برنامج الآردوينو له القدرة على الاشتغال على الويندوز windows, الماك Mac OS و اللينكس Linux وأغلب المتحكمات الإلكترونية الأخرى تشتغل فقط على الويندوز فقط.
بيئة برمجية سهلة و بسيطة: البيئة البرمجية Programming Environment مصممة لتكون سهلة للمبتدئين و ثابتة و قوية للمحترفين.
Open Source Software: مكتوب بلغة السي ++C و متاح للجميع لتحميله و بامكان المبرمجين التعديل عليه وفق احتياجاتهم.
Open Source Hardware: الآردوينو Arduino مصنوع أساساً من متحكمات ATMEGA8 و ATMEGA168 و المخططات منشورة تحت ترخيص Creative Commons مما يتيح إلى مصممي الدارات الإلكترونية Electronic Circuits تصميم داراتهم الخاصة.
3.ما الفرق بين Arduino و Raspberry Pi ؟
أولاً يمكنك الإطلاع على هذا الموضوع حول Raspberry Pi حتى تعرف ما هو و ماهي ميزاته.أما بالنسبه للفرق بين Arduino و Raspberry Pi و أيهما الأفضل فلن أجيب على هذا السؤال لكني سأسرد أهم نقاط الإختلاف بينهما و أدع للقارئ حرية الإختيار.
من حيث سهولة الإستعمال:
في حالة Arduino ستحتاج إلى تحميل البرنامج من الموقع الرسمي ثم ما عليك سوى وصل القطعة بالجهاز و ربما ستحتاج إلى شراء USB Cable إذا لم تكن تملكه مسبقاً. الآن انت مستعد للإنطلاق، بالنسبه لـ Raspberry Pi فالأمر مختلف قليلاً، ستحتاج مسبقاً إلى شراء USB Cable و بطاقة ذاكرة SD card من أجل النظام و كذلك فأرة ولوحة مفاتيح وشاشة بها منفذ HDMI و أخيراً ستحتاج إلى Ethernet Cable أو WiFi Dongle لوصل القطعة بالإنترنت و بعد كل هذا سيتعين عليك تحميل النظام المناسب إلى بطاقة الذاكرة.
من حيث التواصل:
هنا أقصد التواصل مع أجهزة أخرى عن طريق شبكة محلية أو منزلية أو حتى عن طريق الإنترنت. Raspberry Pi سيكون له بعض الأفضلية في هذه الناحية لأنه يملك منفذ Ethernet مدمج في أغلب قطعه و بالإمكان أيضاً إضافة WiFi Dongle بسهولة عن طريق منفذ USB. لكن Arduino أيضاً له القدرة على الإتصال بالشبكات بسهولة إذا ما أضفنا له Ethernet shield وهي قطعة إضافية مدعومة من الموقع الرسمي أو يمكن شراء لوح Arduino مجهز بخاصية WiFi وأيضاً يوجد لوح Arduino به خاصية الإتصال بشبكات GSM مما يفتح الباب إلى التفكير في مشاريع مشوقة.
قوة المعالج Processor:
من هذه الناحية لا يمكن مقارنة لوح Arduino الذي يملك معالج من نوع ATMEG168 و الذي يعمل بسرعة 16Mhz مع Raspberry Pi بمعالج BCM2835 بسرعة 700Mhz وحتى أقوى لوح آردوينو Arduino Due لا يمكنه منافسة Raspberry Pi بمعالج SAM3X8E ذو سرعة 84Mhz. لكن رغم هذا يجب أن أشير إلى أن Raspberry Pi يحتاج إلى معالجات قوية و سريعة لأنه يتعامل مع الرسوميات و مع شاشات بدقة عالية.
البرمجة:
سأخبرك مسبقاً أن البرمجة على Arduino IDE أفضل بكثير من حيث سهولة التعلم و التطبيق و تمرير الكود إلى Arduino و الأمر ليس بنفس البساطة بالنسبة لـ Raspberry Pi, فسيتحتم عليك الدخول إلى اللوح عن طريق SSH ثم كتابة الكود ثم تشغيله لكن يمكنك أيضاً إستعمال لغة Python في كلا البيئتين و الإستفادة من مكتبتها الضخمة في تنفيذ مشاريعك.
