العنوان يقول اردوينو بمدخل USB !!!!
نعم العنوان صحيح.. اردوينو متكامل دون الحاجه الى اى شرائح FTDI او RS232 او TTL converters من اى نوع وكذلك دون الحاجة ﻷستخدام شرائح الكترونيه غالية ومعقدة .. فى هذا المشروع لن تحتاج سوى شريحة واحدة من عائلة ATmega مثل ATmega8 او ATmega168 او ATmega328
استجمع ما لديك من قوى عقلية واضف كوب من القهوه… ثم اكمل قرائه المقال
توكلنا على الله
بداية المشكلة اسمها SMD (*_*) !!
فى الثورة اﻹلكترونية الحديثة تم تصغير حجم المكونات اﻹلكترونية الحديثة ليصل حجمها الى بضعه مللى مترات وظهر نوع جديد من المكونات اﻹلكترونيه يتم تركيبه على سطح اللوحات اﻹلكترونيات و يشغل حيز اقل من الفراغ و سميت هذه المكونات بأسم Surface Mount Devices او ما يعرف باسم (المكونات المثبة على السطح), على العكس هناك المكونات التقليدية Hole mounted وهى المكونات التى يتم لحامها فى ثقوب تصنع فى اللوحة اﻹلكترونية
تتميز المكونات SMD بالحجم الصغير و استهلاك اقل للطاقة و كذلك امكانية صناعة دارات إلكترونيه فائقة الصغر, لكن لها عيب خطير على مستوى مشاريع الهواة التى تصنع يدويا حيث يتطلب هذا النوع من المكونات مهارة عاليه جدا فى اللحام باﻷضافه الى صعوبه شراء هذا النوع من المكونات وعدم توافرة محليا فى معظم البلاد العربية
اذا ما علاقة المكونات من نوع SMD باردوينو ؟؟؟
تأتى العلاقة بسبب شرائح ال Serial communication الموجوده على كل لوحات اردوينو و التى يصعب توفيرها محلياً و تستخدم هذه الشرائح فى نقل البرامج من الحاسب اﻵلى الى اردوينو او نقل بيانات من لوحة اردوينو الى الحاسب اﻵلى
فى تدوينه سابقه كنا تحدثنا عن طريقه لعمل دائرة اردوينو بسيطة على لوحة التجارب و استخدام شريحه FTDI جاهزه لتقوم بعمل Serial Communicator ولكن قد لا تتوفر هذه الشريحة فى معظم البلدان العربية و فى بعض البدان يكون سعرها غالى بعض الشئ (حوالى 13 دولار)
خلال هذه التدوينه سنشرح كيفية بناء ارخص لوحة اردوينو متكاملة و مزودة بنفذ USB لبرمجتها مباشره باستخدام الحاسب اﻵلى ودون الحاجة الى اى شرائح اضافية و بتكلفة زهيده جداً (4 دولارات فقط)
دعونا نمارس بعض السحر البرمجى و نتعرف على الــVirtual-USB
تقنية منفذ اليو اس بى الوهمى أحد التقنيات البرمجية التى تمكنك من اضافه اتصال USB مباشر لاى شريحة متحكم دقيق من شركة ATmel يعمل بمعمارية AVR مثل عائلة ATmega و عائلة ATTiny و باقى عائلات المتحكمات الدقيقة التى تم انتاجها شرط ان يتوفر بداخلها ذاكرة فلاشية تزيد عن 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
نصنع هذة اللوحة الصغيرة لتوصيل المبرمجة على لوحة التجارب
- DEVICE = atmega168 قم بتغير هذه القيمة الى نوع الشريحة التى استخدمتها و فى حالتنا هذه لقد استخدمت atmega8
- BOOTLOADER_ADDRESS = 3800 غير هذه القيمة الى 1800 اذا كنت استخدمت اتميجا 8 او الى 7800 اذا كنت استخدمت اتميجا 328
- افتح فولدر الSketchbook الخاص بك و مساره فى لينكس سيكون /home/abdallah/sketchbook/
- اصنع فولدر جديد باسم hardware قم ادخل الى هذا الفولدر
- اصنع فولدر اخر بداخل hardware , اجعل اسمه Metaboard ثم ادخل الى هذا الفولدر
- اصنع ملف نصى باسم boards.txt
- انقل الاوامر التاليه الى هذا الملف
############################################################## 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 ##############################################################
ملحوظة: لا تستخدم اى مبرمجة معتمده على Serial port و انما استخدام الانواع المتوافقة مع معاييرUSB AVRISP
لماذا
موضوع شيق للغاية ممتاز جدا لم اعرف ان هناك مدونة عربية مهتمة باردينو شكرا على المجهود
الفكره كلها فى برنامج avrdude
وهو البرنامج المستخدم فى نقل البووت لودر على شريحة الاتميجا
وهو يدعم مجموعه معينه فقط من المبرمجات و التى تتوافق مع AVRISP standardization
هذا بالطبع بالنسبه للينكس
بالنسبه لويندوز يكنك استخدام برنامج AVR studio و استخدام ملفات .hex التى تأتى مع V-USB مباشرة
و بذلك يمكنك (نظريا) استخدام اى مبرمجة على ويندوز مادام البرنامج الخاص بها يدعمها
و بالنسبه لقيم الفيوزات ستجدها فى ملف Makefile
برنامج Avrdude يدعم البرمجة من السيريال وبأبسط المبرمجات هو ده ميزته وده نوع المبرمجه
ponyser = design ponyprog serial, reset=!txd sck=rts mosi=dtr miso=cts [C:\WinAVR\bin\avrdude.conf:724]
كذا هتحتاج تعدل في ملف Makefile وتستبدل sk500 باسم المبرمجه المدعومه 🙂
أين مدخل كابل USB ؟
لا استطيع ان اراه على breadboard
لوحة التجارب breadbaord لا تستخدم في اردوينو نفسه مباشره و انما في برمجة الشريحة فقط اما دائره اردوينو بمنفذ اليو اس بي اسمها metaboard و التي ستجد المخطط الهندسي الخاص بها علي موقع البوردة الرسمي و الذي ارفقته في الموضوع
جزاك الله خيرا
ولكن من أين أستطيع ان اشترى PCB خام لكى اطبع عليها تصميم metaboard
بالنسبه لمصر يمكنك الذهاب الى محل (رام الكترونيكس, النخيلى, الجمال) و جميع هذه المحلات في باب اللوق المتفرع من ميدان التحرير
و بالنسبة لباقي الدول العربية يمكنك شرائها اونلاين من رام الكترونيكس ايضا http://ram-e-shop.com
السلام عليكم
بصراحة انا لا أملك
مبرمجة شرائح اتميجا AVRISP V2.0 STK500 USB ISP
و لا أملك الأردوينو …..و لم أجد أي حالة أخرى لنقل البووت لودر على المتحكمة
ألا يوجد طريقة أخرى ……
هناك بعض المبرمجات البسيطة جدا المتوافقة مع avrdude
http://www.electronics-lab.com/blog/?p=4661
http://1010.co.uk/2008.04.10.html
http://www.ladyada.net/learn/avr/programmers.html
جرب احدى هذه المبرمجات …
السلام عليكم
ارجو من حضرتك مراجعة الرابط الخاص بملفات محمل الأقلاع حيث اننى قمت بتنزيله ولم اجد به فولدر USBaspLoader.2010-07-27
وبعد البحث وجدته على هذا الرابط
http://www.obdev.at/products/vusb/usbasploader.html
و عليكم السلام و رحمه الله و بركاته 🙂
تم تعديل الرابط .. مع العلم ان الرابط الموجود مسبقا كان لنسخة أحدث فى الاصداره و الاختلاف فى اسم الفولدر
tests
وجدت موضوع يحتوى على طريقة سهلة لصنع مبرمجة بسيطه وتم استخدام شريحة ATMEGA8-16PI
http://electronics-diy.com/avr_programmer.php
هل يمكن استخدام هذه المبرمجة مع الشرائح التى ذكرتها هنا؟
وبفرض اننى سوف استخدم شريحة ATMEGA8L-8PI فما هو ملف hex بالتحديد الذى سأقوم بتحميله عليها؟
وهل هناك أى تعديلات أخرى يجب القيام بها ؟
جزاك الله خيرا على المساعدة
اولا قم بتحميل هذا الملف
http://www.obdev.at/products/vusb/usbasploader.html
ستجد فولدر يحتوى على مجموعه جاهزه من ملفات الهيكس لباقة متنوعة من شرائح اتميجا
يمكنك اختيار اى ملف يبدأ بأسم atmeg8
مع ملاحظة اختيار الملف المتوافق مع الكريستالة (المهتز) الذى ستستخدمة فى الدائرة
سيتجد فى نهاية اسم كل ملف رقم الكريستالة التى يعمل معها
الكريستاله المستخدمة فى الدائرة 4MHz
اما ملفات الهيكس فهى 12 و 15 و 16 MHZ
فهل من الممكن استبدال كريستالة الدائرة بأخرى 12 MHz ؟
أو هل من الممكن الحصول على ملف هيكس 4 MHz ؟
نعم يمكنك استخدام كريستاله 12 ميجا هرتز
و يمكنك ان تصنع ملف الهيكس بفسك للكريستاله 4 ميجا و هذا عن طريق تعديل اعدادات الكريستاله داخل ملف
Makefile
لكنى لا انصحك بهذا … الافضل ان تستخل كريستاله 16 او 12
افضل الكرستالات المهتزه هى 16 ميجا هرتز حيث تجعل شريحه اتميجا تعمل بأقصى سرعة
Pingback: Rasheduino … أول نسخة Arduino عربية من سوريا ^_^ « rashedkoutayni
Pingback: أطلاق الراشدوينو – أول نسخة عربية معدلة من اردوينو | آردوينو ببساطة Simply Arduino
Pingback: اصنع اردوينو بنفسك بمكونات محلية و حل مشكلة الـSerial communication | آردوينو ببساطة Simply Arduino
لو سمحت و ان كنت بستخدم ATmega328p
اية الى هعدلة فى ملف makefile
في الملفات المرفقة هتلاقي ملف README فيه كل المعلومات عن التعديلات و الأرقام المطلوبة في حالة استخدام شرائح مختلفة
ما اسماء المكونات الموجوده علي breadboard ؟
خلاص لقيتها كنت متلخبط 🙂
قمت بالحصول على شريحة من عائلة أتمل وهي ذات ترتيب رقمي غير أتميجا فهي AT80c51 وهي كبيرة بحيت ستعطي أكبر عدد من المداخل وهل ستتجاوب مع لغة الاردوينو ومسبقا مع البتلودر ومع العلم أنها ذات تزامن كريستالي 4 ميجاهرتز هل يمكن إستبداله ب 16 ميجاهرتز
موضوع رائع جدااا
لكن هناك بعض الصور لم تظهر,قد تحتاج لاعادة تحميل
هل ممكن تعيد رفع الصور لان ف مشكله ف الصور
ولا استطيع التنفيذ
وشكرا