السبت، 28 مارس 2015

ما هو الفرق بين تقنيتي NXT و EV3 ؟




سلسلة روبوتات ليغو: ما هو الفرق بين تقنيتي NXT و EV3 ؟

هل قمت يوماً بتصميم الروبوتات اعتماداً على القطع الموفرة من قبل شركة ليغو ؟ حسناً، ستكون تعرف تماماً عما نتحدث عنه هنا، وإن لم تكن قد قمت سابقاً بذلك، فسنقوم بالبداية بتسليط الضوء على فكرة روبوتات ليغو، ومن ثم ننتقل للمقارنة بين تقنيتي NXT و EV3.
تعود فكرة روبوتات ليغو لتسعينيات القرن الماضي، فقد قامت شركة ليغو الدنمركية (عبر شقها التعليمي Lego Education) وبالتعاون مع عددٍ من الجامعات (مثل معهد ماساشوستس للتقنية MIT وجامعة كولورادو) وعددٍ من الشركات التقنية الرائدة بمجال الالكترونيات والبرمجيات، قامت الشركة بإنتاج عدة متكاملة، يمكن عبرها بناء وبرمجة روبوت، يتمتع بكامل الوظائف التي يستطيع أي روبوت أن يقوم بها، وذلك اعتماداً على قطع الليغو البلاستيكية كوحدات بناء أساسية، بالإضافة لمجموعة من المحركات والحساسات والقطع الميكانيكية، والمتحكم المنطقي القابل للبرمجة الذي يقوم بالتحكم بعمل المحركات والحساسات.
بعد أن تم بنجاح إطلاق العدة الأولى (كانت تدعى RCX) تم التأسيس للعديد من البطولات المعتمدة على هذه الروبوتات، والتي تهدف لتشجيع الأطفال واليافعين على تعلم المهارات التقنية والهندسية، بأسلوبٍ بسيط وممتع، على شكل منافسة مع العديد من الفريق الأخرى. كانت هذه البطولات – ولا زالت – سبباً رئيسياً لدخول روبوتات ليغو بشكلٍ جدي ضمن المناهج التعليمية في العديد من الدول، وذلك لطلاب المدارس الابتدائية والإعدادية والثانوية، وحتى في الجامعات الأكاديمية، حتى أن معهد ماساتشوستس للتقنية قد أضاف مقرراً خاصاً بالروبوتات ضمن مقرراته التعليمية، تحت عنوان “Lego Robotics”.
lego-robotics-evolution
صورة توضيحية للأجيال الثلاثة الأساسية لروبوتات ليغو. على اليسار تظهر لبنة جيل RCX، وفي المنتصف اللبنة NXT 2.0، وعلى اليمين الإصدار الحديث وهو EV3.
تقوم شركة ليغو بتوفير القطع والأدوات اللازمة لبناء وبرمجة الروبوتات، وذلك عبر مجموعة متكاملة من القطع، بالإضافة للبرنامج الخاص بها، وبعد أن تم إطلاق لبنة RCX، تم إطلاق لبنة Mindstorms NXT في عام 2006، ومن ثم تم إطلاق لبنة Mindstorms EV3 في عام 2013. بالنسبة لمستخدمي معدات ليغو والمشاركين بالمسابقات الروبوتية، فإن الأشهر حالياً بالنسبة لهم والأكثر استخداماً هو لبنة NXT، ومؤخراً بدأت لبنة EV3 بالانتشار.


صورة توضيحية لأهم ميزات تقنية NXT. اللبنة NXT Brick في المنتصف، مع 3 محركات من نمط سيرفو، وحساس إضاءة وحساس صوت وحساس أمواج فوق صوتية وحساس لمس.

صورة توضيحية لتقنية EV3 وأهم مميزاتها.

بعد هذه المقدمة البسيطة، يسعدنا أن نبدأ بالمقارنة التقنية بين هاتين التقنيتين. ومن أجل الإيضاح، فإننا لن نقوم بتسليط الضوء على كامل العدة التي توفرها الشركة (والتي تتضمن العديد من القطع الميكانيكية البلاستيكية)، بل ستقتصر المقارنة على المتحكم المنطقي القابل للبرمجة  – أو اللبنة Brick – الخاصة بكل إصدار، بالإضافة للمحركات والحساسات التي تتوافر مع كل منها بشكلٍ أساسي.

وجه المقارنة

NXT

EV3

المعالج
معالج ARM من شركة Atmel بسعة 32 بت.
سرعة المعالج: 48 ميغا هرتز
ذاكرة فلاش: 256 كيلوبايت
ذاكرة RAM: 64 كيلوبايت
معالج ARM9 بسعة 64 بت
سرعة المعالج: 400 ميغا هرتز
ذاكرة فلاش: 16 ميغا بايت
ذاكرة RAM: 64 ميغا بايت
المعالج المساعد
متحكم ATmega48 من شركة Atmel بسعة 8 بت.
سرعة المتحكم: 8 ميغا هرتز
ذاكرة فلاش: 4 كيلو بايت
ذاكرة RAM: 512 بايت
(مخصص للتحكم بتزامن المحركات)
لا يوجد
نظام التشغيل
اختياري (لينوكس أو يندوز)
لينوكس بشكلٍ أساسي
عدد مداخل الحساسات
4 مداخل تشابهية
سرعة التبديل: 9600 بت/ثانية باستخدام معيار I2C
4 مداخل تشابهية
سرعة التبديل: 460 كيلوبايت باستخدام معيار UART
عدد مداخل المحركات3 مداخل
4 مداخل
اتصال الـ USBالسرعة: 12 ميغابت/ثانية
السرعة: 480 ميغابت/ثانية
بطاقة ذاكرة SD/Card
لا يوجد
مدخل وحيد، قادر على تحمل بطاقة ذاكرة ذات سعة حتى 32 غيغابايت
التواصل مع الأجهزة الذكية
نظام الأندرويدنظام الآندرويد ونظام iOS
التواصل مع المستخدم
4 أزرار
6 أزرار، مع ميزة الإضاءة الخلفية للأزرار
الإظهار
شاشة من نمط LCD، أحادية اللون، الدقة 100×64 بيكسل
شاشة من نمط LCD، أحادية اللون (تتوفر بإضاءة خلفية)، الدقة 178×128 بيكسل
التخاطببلوتوث ومنفذ USB 2.0
بلوتوث إصدار v2.1DER
منفذ USB 2.0
ملاحظات هامة:
1-   لا يمكن استخدام الحساسات الخاصة بتقنية EV3 مع اللبنة الخاصة بتقنية NXT، ولكن يمكن استخدام المحركات الخاصة بـ EV3 مع اللبنة الخاصة بـ NXT.
2-   كلا اللبنتين تعملان على البطاريات القابلة لإعادة الشحن. البطاريات ليست متوافقة، وبالتالي لا يمكن استخدام بطارية أحد اللبنتين لتشغيل الأخرى.
3-   تم تزويد تقنية EV3 بنسخةٍ جديدة من البيئة البرمجية الخاصة بها. البيئة الجديدة تعتمد نفس مبدأ البرمجة الكتلية الخاص بتقنية NXT، ويشابهه كثيراً من حيث الأشكال والواجهات. الأمر الرائع أنه يمكن استخدام البيئة البرمجية الخاصة بـ EV3 من أجل برمجة اللبنة الخاصة بـ NXT، ولكن العكس غير صحيح.
4-   بشكلٍ عام، يمكن استخدام محركات وحساسات تقنية NXT على اللبنة الخاصة بتقنية EV3.

الأحد، 8 مارس 2015

فكرة السومو روبوت


بسم الله الرحمن الرحيم



من اشهر المسابقات العالمية في مجال الروبوتات بين الهواة هي مصارعة السومو , وتقام سنوياً العديد من الفعاليات المحلية  و الدولية لهذه المسابقة.

السومو ( sumo ) هي بالأصل رياضة يابانية يتبارى فيها شخصان في حلبة، و يحـاول كل منهمـا إخـراج منافسـه من الحلبة . 





و مسابقة السومو للروبوتات لها نفس المبدأ , حيث يوضع روبوتـين على الحلبة و يحاول كل منهم اخراج الآخر .







• قوانين مسابقة السومو للروبوت :


هذه بعض القوانين الخاصة بتصميم الروبوت التي يجب مراعتها عند عمل الروبوت الخاص بك .

-         يجب أن يكون حجم الروبوت محدد بعرض 20 سم، وطول 20 سم , وارتفاع غير محدد .

-         يمكن أن يتغير حجم الروبوت بعد بدء السباق ولكن دون أن ينفصل إلى أجزاء ويحافظ على كونه جسما مركزيا واحدا، والروبوت الذي يخالف هذه القوانين يخسر المصارعة في حال سقوط بعض أجزاء الروبوت التي تقل في وزنها عن 5 جرام مثل البراغي أو الأجزاء الساقطة (القليلة) نتيجة التصادم لا يتسبب في خسارة المباراة.

-       يجب أن لا يتعدي الوزن الكلي للروبوت عند بداية المسابقة عن 3 كجم.

-     يجب أن تكون الروبوتات ذاتية التحكم ويمنع التحكم بها من قبل المتسابقين عن بعد بأي طريقة بعد بدء المسابقة.

-    يجب أن ينتظر الروبوت عند بدء تشغيله مدة 5 ثواني قبل أن يبدأ بالتحرك ليسمح للمتسابقين الخروج من الحلبة.

-    لا يسمح باستعمال أجهزة التشويش أو الكبح مثل (IR LEDs) التي قد تسبب في عجز أجهزة الاستشعار للفريق الآخر.

-    لا يسمح بالأجزاء التي يمكن أن تتسبب في كسر أو أضرار للحلبة ولا يسمح باستخدام الأجزاء التي يمكن أن تسبب ضرراً للروبوت أو اللاعب المنافس ولا تعتبر الإصتدامات العادية تعمد للضرر.

-     لا يسمح باستعمال الأجهزة التي تخزن السوائل، البودرة، الغازات أو غيرها من المواد التي قد تستعمل في القذف على الروبوت المنافس.

-         لا يسمح بأي أداة قابلة للاشتعال أو تسبب الوهج الناري.

-         لا يسمح بالأجهزة التي تقذف أشياء ضد الفريق المنافس.


-         لايسمح باستخدام أجهزة تساعد على زيادة قوة تثبيت الروبوت مثل وضع الشفاطة والمغناطيس.

 ( باقي القوانين الخاصة بشكل الحلبة و طريقة اللعب و النقاط و المخالفات .. الخ , يمكن الاطلاع عليها من هــنــا )











 البرمجة :


يمكن برمجة الروبوت بأكثر من طريقة , حسب الطريقة التي تريد ان يلعب فيها الروبوت على الحلبة . 

طــريقــة اللـعب : 
  • سنجعل الروبوت يدور حول نفسه بشكل مستمر . 
  • يقوم الروبوت بقياس المسافة بشكل متواصل اثناء الدوران .
  • في حال قلت المسافة المقاسة عن قيمة معينة (10سم مثلاً ), يعني ذلك وجود الروبوت الخصم امام الروبوت الخاص بنا مباشرة .
  • يتوقف الروبوت مباشرة عن الدوران . ثم يبدأ بالهجوم ( التحرك للأمام باقصى سرعة).