Navigation

شرح صنع اردوينو من الصفر بمدخل USB مُدمج بمكونات محلية بسيطة

نعم العنوان صحيح.. اردوينو متكامل دون الحاجه الى اى شرائح FTDI او RS232 او TTL converters من اى نوع وكذلك دون الحاجة ﻷستخدام شرائح الكترونيه غالية ومعقدة .. فى هذا المشروع لن تحتاج سوى شريحة واحدة من عائلة ATmega مثل ATmega8 او ATmega168 او ATmega328

العنوان يقول اردوينو بمدخل USB !!!!


نعم العنوان صحيح.. اردوينو متكامل دون الحاجه الى اى شرائح FTDI او RS232 او TTL converters من اى نوع وكذلك دون الحاجة ﻷستخدام شرائح الكترونيه غالية ومعقدة .. فى هذا المشروع لن تحتاج سوى شريحة واحدة من عائلة ATmega مثل ATmega8 او ATmega168 او ATmega328
استجمع ما لديك من قوى عقلية واضف كوب من القهوه… ثم اكمل قرائه المقال
توكلنا على الله

بداية المشكلة اسمها SMD (*_*) !!

فى الثورة اﻹلكترونية الحديثة تم تصغير حجم المكونات اﻹلكترونية الحديثة ليصل حجمها الى بضعه مللى مترات وظهر نوع جديد من المكونات اﻹلكترونيه يتم تركيبه على سطح اللوحات اﻹلكترونيات و يشغل حيز اقل من الفراغ و سميت هذه المكونات بأسم Surface Mount Devices او ما يعرف باسم (المكونات المثبة على السطح), على العكس هناك المكونات التقليدية Hole mounted  وهى المكونات التى يتم لحامها فى ثقوب تصنع فى اللوحة اﻹلكترونية
تتميز المكونات SMD  بالحجم الصغير و استهلاك اقل للطاقة و كذلك امكانية صناعة دارات إلكترونيه فائقة الصغر, لكن لها عيب خطير على مستوى مشاريع الهواة التى تصنع يدويا حيث يتطلب هذا النوع من المكونات مهارة عاليه جدا فى اللحام باﻷضافه الى صعوبه شراء هذا النوع من المكونات وعدم توافرة محليا فى معظم البلاد العربية

اذا ما علاقة المكونات من نوع SMD باردوينو ؟؟؟

تأتى العلاقة بسبب شرائح ال Serial communication الموجوده على كل لوحات اردوينو و التى يصعب توفيرها محلياً  و تستخدم هذه الشرائح فى نقل البرامج من الحاسب اﻵلى الى اردوينو او نقل بيانات من لوحة اردوينو الى الحاسب اﻵلى
فى تدوينه سابقه كنا تحدثنا عن طريقه لعمل دائرة اردوينو بسيطة على لوحة التجارب و استخدام شريحه FTDI جاهزه لتقوم بعمل Serial Communicatorr ولكن قد لا تتوفر هذه الشريحة فى معظم البلدان العربية و فى بعض البدان يكون سعرها غالى بعض الشئ (حوالى 13 دولار)
خلال هذه التدوينه سنشرح كيفية بناء ارخص لوحة اردوينو متكاملة و مزودة بنفذ USB لبرمجتها مباشره باستخدام الحاسب اﻵلى ودون الحاجة الى اى شرائح اضافية و بتكلفة زهيده جداً (4 دولارات فقط)

 دعونا نمارس بعض السحر البرمجى و نتعرف على الــVirtual-USB

 تقنية منفذ اليو اس بى الوهمى أحد التقنيات البرمجية التى تمكنك من اضافه اتصال USB مباشر لاى شريحة متحكم دقيق من شركة ATmel يعمل بمعمارية AVR مثل عائلة ATmega و عائلة ATTinyy و باقى عائلات المتحكمات الدقيقة التى تم انتاجها شرط ان يتوفر بداخلها ذاكرة فلاشية تزيد عن 2 كيلو بايت
يتم عمل المنفذ الوهمى عن طريق اضافه Bootloader خاص للمتحكمة الدقيقة و الذى لحسن حظنا انة متوافق مع اردوينو و يعمل بكفائة تامة و بذلك يمكننا تحويل اى شريحه مشهورة مثل ATmega 8/168/328 الى اردوينو بنفذ USB مباشر و دون الحاجة الى اى شرائح اضافية مثل FTDI

لنبدأ العمل مع Metaboard فى استراليا ثم نسافر الى اليابان  !!!

 الميتابورد هى بوردة الكترونية مفتوحة المصدر تم تطوريها من قبل الشباب فى الهاكرسبيس اﻻسترالى metalab.at
تعتبر هذة البوردة هى ارخص بوردة متوافقة مع لغة برمجة اردوينو وكما ترون فى الصورة تحتوى على منفذ يو اس بى مباشر ودون الحاجة الى اى شرائح FTDI او اضافات اخرى و تعتمد بالكامل على V-USB الذى سيتم وجعه على شريحة ATmega المركبة على البوردة
للحصول على كامل التصميمات الهندسية : https://metalab.at/wiki/images/0/0c/Metaboard-1.0.zip
ومع ظهور هذة البوردة تم تنفيذ العديد من اﻷفكار الرائعه المبنية عليها مثل الثصميم اليابانى الرائع
Arduino on Single Chip اردوينو متكامل على شريحة واحدة 
لمعرفة المزيد عن التصميم الهندسى لهذا المشروع الرائع , اليك النسخة اﻷنجليزية من المشروع هنا

 طريقة تجهيز شريحة ATmega

سواء اخترت الطريقة الاسترالية او اليابانية فى بناء اردوينو فسيتبقى لك خطوة هامه جدا و هى حجر الاساس فى عملية البناء و تسمى عملية نقل محمل الاقلاع الخاص Bootloader و الذى سيشغل تقنية V-USB على شريحه اتميجا
اولا: انواع الشرائح المناسبة ﻷردوينو بتقنية V-USB:
  • ATmega 8 و سعرها حوالى 2 دولار (اشهر شرائح عائله اتميجا و ارخصها و متوفرة فى كل البلدان العربية)
  • ATmega 168 و سعرها حوالى 4 دولار (وهى الاكثر توافقا مع V-USB و تم تنفيذ جميع المشاريع عليها)
  • ATmega 328 وسعرها حوالى 6 دولار (مثل اختها الصغرى 168 لكن بذاكرة اكبر و استهلاك اقل للطاقة)
شخصيا افضل اتميجا 168 ومع ذلك يمكنك استخدام اى نوع تشاء

ما ستحتاجة لنقل محمل الاقلاع

ملاحظة: هذه العملية تتطلب الكثير من الخبرة بتعامل مع شرائح AVR واستخدام المبرمجات المتوافقة مع منتجات شركه Atmel واى خطأ فى تنفيذ التعليمات قد يتسبب فى ضرر للشريحة المتسخدمة 
اولا: المكونات اﻻلكترونية
  • اى شريحة اتميجا من الشرائح المذكورة مسبقا
  • مبرمجة شرائح اتميجا AVRISP V2.0 STK500 USB ISP
  • مهتز كريستال 16 ميجا هرتز
  • عدد 2 مكثف سيراميك بقيمة 22 بيكو فاراد
  • مقاومة 10 كيلو اوم
  • منظم جهد 5 فولت IC 7805
  • عدد 2 مكثف كيميائى 10 uf
  • اسلاك للتوصيل
لمعرفة المزيد من المعلومات حول مبرمجة AVRISP يمكنك اﻷطلاع على هذا الرابط
ملحوظة: لا تستخدم اى مبرمجة معتمده على Serial port و انما استخدام الانواع المتوافقة مع معاييرUSB AVRISP
 ثانيا: البرمجيات
  • نظام تشغيل لينكس (سأستخدم ابونتو ubuntu 12.04)
  • بيئة تطوير اردوينو Arduino IDE
  • ملفات محمل الاقلاع V-USB من هذا الرابط
لماذا استخدمت لينكس فقط و لم اقل ويندوز ؟؟
لان لينكس سيوفر الكثير من العناء و التعب فى كتابة الاوامر لنقل البووت لودر و فى حالة انه لم يكن لديك سوى ويندوز يمكنك الرجوع لهذا المقال لتتعلم كيف تستخدم برنامج avrdude مع بيئة ويندوز (البرنامج المستخدم فى نقل البووت لودر) http://www.ladyada.net/learn/avr/avrdude.html و فى حالة استخدامك لينكس لن تحتاج لقرائة هذا المقال 🙂

خطوات نقل V-USB Bootloader

اولاً: توصيل المبرمجة بشريحة اتميجا 8
الان شريحة اتميجا جاهزة لاستقبال محمل الاقلاع
الخطوة الثانية: نقل v-usb من لينكس
قم بفك ضغط ملف V-USB الذى حملتة و ضعه داخل فولدر الHome الخاص بك حيث سيكون ناتج فك الضغط هو فولدر USBaspLoader.2010-07-27
سنفترض ان اسم فولدر الhome لديك هو abdallah و مساره /home/abdallah/
 و بذلك يصبح المسار النهائى لفلودر محمل الاقلاع هو /home/abdallah/USBasploader/
افتح فولدر firmware حيث ستجد بداخلة ملف Makefile قم بفتح الملف بأى محرر نصوص لديك
فى هذا الملف جميع الاعدادات الخاصة بنوع الشريحة المستخدمة فى عملية النقل و يجب ان تغير بعض القيم :
  • DEVICE = atmega168 قم بتغير هذه القيمة الى نوع الشريحة التى استخدمتها و فى حالتنا هذه لقد استخدمت  atmega8
  • BOOTLOADER_ADDRESS = 3800 غير هذه القيمة الى 1800 اذا كنت استخدمت اتميجا 8 او الى 7800 اذا كنت استخدمت اتميجا  328
قم بحفظ الملف ثم افتح سطر اﻷوامر Termianl و نفذ الاوامر التالية بالترتيب
cd  USBaspLoader.2010-07-27
cd firmware
sudo make
sudo make fuse
sudo make flash
sudo make lock
سسألك التيرمنال عن كلمه السر الخاصة بك فى عند كتابة الامر sudo make ادخلها و انتظر قليلا ثم نفذ باقى الاوامر كما هى
فى حالة انك ستسخدم ويندوز بدل لينكس
ستجد ملف readme.txt داخل فولدر  USBaspLoader.2010-07-27 و ستجد بداخلة خطوات تركيب البوت لودر من ويندوز
بعد الانتهاء من نقل محمل الاقلاع بنجاح يمكنك انتزاع شريحة اتميجا من لوحة التجارب و وضعها فى لوحة الMetaboard مباشرة ثم عمل تعديل على بيئة اردوينو البرمجية لتتعرف على البوردة
 الخطوات ستكوت كالتالى:
  1. افتح فولدر الSketchbook الخاص بك و مساره فى لينكس سيكون /home/abdallah/sketchbook/
  2. اصنع فولدر جديد باسم hardware قم ادخل الى هذا الفولدر
  3. اصنع فولدر اخر بداخل hardware , اجعل اسمه Metaboard ثم ادخل الى هذا الفولدر
  4. اصنع ملف نصى باسم boards.txt
  5. انقل الاوامر التاليه الى هذا الملف
##############################################################

metaboard.name=Metaboard

metaboard.upload.protocol=usbasp
metaboard.upload.maximum_size=14336
metaboard.upload.speed=19200

metaboard.build.mcu=atmega168
metaboard.build.f_cpu=16000000L
metaboard.build.core=arduino

metaboard.upload.disable_flushing=true

##############################################################


الخطوة الاخيرة هى اختيار الMetaboard من قائمة tool – boards – Metaboards
مشاركة

أضف تعليق:

0 comments: