نظرسنجي
نظر شما در مورد سايت چيست؟

عالي
خوب
متوسط
بد

تقويم
<    «  آبان 1396  »    >
شیدسچپج
 12345
6789101112
13141516171819
20212223242526
27282930 
مطلب تصادفی
پست تصادفي:
» معرفی یک PC صنعتی (RB-110) فوق العاده برای ربات ...
» شبيه ساز اتوماسيون ديجيتال با Rockwell Automation 2011 ...
» ديكشنري تخصصي مهندسي برق الكترونيك
» استخراج اتوماتیک نقاط کلیدی صورت از روی تصاویر رنگی متعامد ...
» كتاب الكترونيك كاربردي - كتاب هنرستان
» پروژه آموزشي دستگاه RFID
» كتاب آموزش الكترونيك ربات
» رباتي كه شكلات درست مي كند!
» مجله بسيار عالي (Robotics Automation Magazine 2011)
» آموزش راه اندازي انكودر صنعتي (Autonics) با بهترين روش ...
رتبه در الكسا

 

مطلب اختصاصي مركز مكاترونيك ايران
توسط :محمدرضا ناظم

 

همواره يكي از مهمترين بخش هاي يك آسانسور و يا يك روبات رولر (چرخ دار) كنترل حركت و ميزان آن به صورت دقيق است. از قطعات بسيار مفيدي كه امروزه براي اين هدف استفاده مي شود، مي توان به انكودرها اشاره نمود. كه در حال حاضر به شكل هاي خاصي يافت مي شوند. هدف از اين آموزش آشنايي با انكودرهاي مكانيكي و يا نوري نيست، بلكه هدف بالاتري را در نظر داريم تا شما را با انكودرهاي جدا و انكودرهايي كه به صورت مجتمع با موتورها نصب شده اند را بررسي نماييم. در حقيقت اين انكودرها از نوع انكودرهاي مستقل و وابسته هستند كه هر دو از لحاظ عملكرد به يك شكل كار مي كنند.

روش عملكرد انكودر ها به اين صورت هست كه به ازاي مثلا يك دور كامل 3600 پالس توليد كنند. در نتيجه با شمارش پالس ها مي توان ميزان چرخش و در نتيجه ميزان جابه جايي را محاسبه نمود.

فرض كنيد يك چرخ با قطر 10 سانتي متر را به يك انكودر بسته ايم. در اينجا به ازاي هر دور چرخ 3600 پالس توليد مي شود كه در حقيقت اين 3600 پالس بيانگر محيط طي شده دايره چرخ مي باشد. كه با يك نسبت ساده در برنامه نوشته شده براي انكودر، قابل محاسبه خواهد بود. بديهي است هرچه تعداد پالس ها بيشتر شوند، دقت محاسبه حركت هم بيشتر مي شود ولي بايد اين نكته را هم در نظر گرفت كه آي سي متصل شده به انكودر نيز قادر به شمردن اين پالس ها با توجه به كريستال به كار برده شده در شمارنده، باشد.

از جمله انكودرهاي مستقل كه در حال حاظر در بازار به انكودر آسانسورها نيز معروفند، انكودرهاي Autonics  مي باشند كه با پالس هاي گوناگون و دقيق از جلمه 1024، 2048، 3600 (از 10 پالس تا 10000 پالس) در بازار مي باشند. اين انكودر ها در گروه بندي به انكودرهاي INCREMENTAL  نيز معروف هستند كه در ادامه به بحث  توضيح آنها خواهيم پرداخت.

 

 

 

 

عملكرد اصلي يك انكودر بر اساس توليد پالس هاست و هدف اصلي ما در اين آموزش ارائه ي روشي مطمئن براي شمارش اين پالس ها توسط AVR مي باشد.

و اما يك انكودر در عمل چگونه كار مي كند.

بسياري از انكودر هاي بازار داراي چند سيم مختلف هستند كه به طور كلي به صورت زير مي باشد:

1- سيم ولتاژ (VCC) انكودر

2- سيم زمين (GND)انكودر

3- سيم A براي پالس اول

4- سيم B براي پالس دوم با اختلاف فاز 90 درجه نسبت به پالس A

5- سيم Z  كه به ازاي هر دور كامل انكودر (از لحظه حركت آن ، تا يك دور كامل) يك پالس توليد مي كند.

6- سيم شيلد دار براي حذف نويز

 

تعداد پالس هاي توليدي A يا B براي شناسايي تعداد پالس ايجاد شده براي هر دور انكودر كافي است. ولي نكته اصلي اينجاست كه علاوه بر هر تعداد پالس، ما نيازمند به اطلاعات جهت چرخش نيز هستيم و اينجاست كه پالس B به كمك ما مي آيد. اين پالس به دليل اختلاف فازي كه دارد در چرخش هاي CW (ساعتگرد) انكودر جلوتر و در چرخش هاي CCW  (پادساعتگرد) انكودر عقب تر قرار مي گيرد. اين اختلاف به راحتي در شكل زير قابل مشاهده است (براي بزرگتر ديدن تصوير بر روي آن كليك كنيد):

 

آموزش راه اندازي انكودر صنعتي (Autonics) با بهترين روش
و اما روش شمارش پالس ها با AVR :
از مهمترين مواردي كه در شروع كار بايد در نظر گرفت، روش خواندن اين پالسها با خطاي نزديك به صفر درصد است . پس انتخاب بهترين روش، براي خواندني با اين دقت، نيازمند راهكارهايي است كه در ادامه ذكر خواهند شد.
گام هايي كه در اينجا براي شمارش پالس ها نياز است:
1- ساخت مدار ساده فليپ فلاپ از نوع D براي شناسايي پالس پيشتاز  (در حقيقت براي شناسايي CCW يا CW انكودر)
2- فعال سازي Interupt خارجي ميكرو براي شمارش تعداد پالس هاي توليدي و ارتباط اين پالس با ميكرو به بهترين شكل
3- ايجاد سطح ولتاژ مناسب آي سي براي حذف كاهش خطا با توجه به ولتاژ انكودر (5 ولت يا 12 ولت)
هدف بزرگ ديگري كه اين آموزش دنبال مي كند، ارائه روشي است كه از انكودرهاي 12 ولتي هم مانند انكودرهاي 5 ولتي بتوان استفاده نمود، ولي مشكل اصلي استفاده از انكودرهاي 12 ولتي، ايجاد پالس تا سطح 10 ولت است كه اين حد از مقدار قابل قبول AVR بيشتر بوده و منجر به آسيب رسيدن به اين آي سي مي شود. لذا در اينجا روشي را ارائه خواهيم نمود تا از اين آسيب نيز جلوگيري كامل به عمل آيد.
و اما شروع كار:
در مرحله اول مي خواهيم با آي سي 4013 يك فليپ فلاپ از نوع D (تاخيري) را براي اتصال به انكودر آماده سازي كنيم. (PDF اين آي سي در فايل پيوست قابل دانلود است.)
نتيجه خروجي اين فليپ فلاپ يك سطح منطقي صفر و يك است كه به يكي از پورت هاي آي سي وصل مي شود و براي شناسايي CCW  يا CW چرخيدن انكودر به راحتي استفاده مي شود. نكته مهم ديگر در مدار عملي اين فليپ فلاپ، استفاده از مقاومت هاي نويز گير هست كه حتما شما نيز در مدار عملي بايد از آنها بهره ببريد.
در زير شماتيك اين مدار را مي توانيد مشاهده كنيد....
براي خواندن اين مطلب، به ادامه مطلب برويد....
   
             بازديدها: 33346    نظرات:44

 

 

 

زبان Bascom AVR که در حقیقت Basic می باشد، یکی از زبان های پر طرفدار برای برنامه نویسی آی سی های AVR می باشد که امروزه توجه زیادی به آن می شود. هم اکنون آموزش این زبان محبوب، را می توانید در مر کز مکاترونیک ایران دریافت نمایید. این آموزش از پنج بخش اصلی تقسیم شده است :

 1- آشنایی با محیط نرم افزار BASCOM AVR

در بخش اول شما با محیط بسکام آشنا میشوید ؛ شما یاد میگیرید در این محیط چگونه با پروژه ها کار کنید ، آنها را ویرایش کنید و ایرادهای احتمالی را برطرف کنید .

2- آشنایی با زبان BASIC و کار با LCD و پورت ها:

در این بخش طریقه کار با LCD و کار با پورت ها گفته می شود.

3- معرفی سایر دستورات BASIC :

در این بخش سایر دستورات بیسیک شرح داده میشود.

4-  راه اندازی لوازم جانبی AVR :

در این بخش طریقه ی کار با امکانات جانبی خارجی مانند LCD گرافیکی و ... و امکانات  جانبی داخلی مانند ADC  و ... گفته میشود .

5- ضمیمه ها :

در این بخش ضمایمی همچون آموزش Proteus و نحوه ی پروگرم کردن میکرو برای درک بیشتر مطلب آورده شده است.

 

برای دانلود این مقاله آموزشی مفید به ادامه مطلب بروید ...

   
             بازديدها: 16447    نظرات:23

 PWM چيست؟!

 

 

در بسياري از موارد، ما نياز به كنترل ولتاژ بر روي پايه‌هاي خروجي ميكروكنترلر را داريم. مثلاً اگر بخواهيم سرعت موتور را كنترل كنيم، بايد ولتاژي كه بر روي موتور اعمال مي‌شود را كنترل كرد. در حقيقت سرعت موتور تقريباًً تابع مستقيمي از ولتاژي است كه بر روي آن اعمال مي‌شود. يعني اگر ولتاژ كاريِ موتوري (ولتاژ استاندارد براي فعال سازي موتور كه بر روي بدنه‌ي آن نوشته مي‌شود) 12 ولت باشد، با اعمال ولتاژ 6 ولت روي آن، مي‌توانيد سرعت چرخش آن(rpm) را حدوداً به نصف كاهش دهيد.
كنترل سرعت ربات، در همه‌ي سطوح رباتيك اهميت بسيار زيادي دارد، از ربات‌هاي مسيرياب ساده گرفته تا ربات‌هاي فوتباليست. ما تا كنون ياد گرفته‌ايم كه چگونه مي‌توان به موتور دستور حركت يا توقف داد، اما راهي براي كنترل سرعت موتور ياد نگرفته‌ايم.
يادآوري
همانطور كه مي‌دانيد سطح ولتاژ پايه‌هاي خروجي ميكروكنترلر منطقي است، يعني يك پايه‌اي كه براي كنترل موتور ربات استفاده مي‌شود فقط مي‌تواند 0 يا 1 باشد. ما 2 پايه از ميكروكنترلر را به حركت ربات اختصاص مي‌دهيم، براي صدور دستور حركت، بايد يك پايه را 0 و پايه‌ي ديگر را 1 كنيم، در اين حالت بين 2 پايه‌ي موتور اختلاف پتانسيل برقرار مي‌شود و حركت مي‌كند. اگر هم بخواهيم موتور معكوس بچرخد، بايد پايه‌اي كه 1 بود 0 ، و پايه‌اي كه 0 بود را 1 كنيم؛ و براي توقف موتور، بايد هر دو پايه را 0 يا هر دو پايه را 1 كنيم (تا بين 2 پايه‌ي موتور اختلاف پتانسيل 0 ولت باشد). در نتيجه در حالت عادي ما فقط 2 فرمان "حركت" و "توقف" را مي‌توانيم به موتورها بدهيم، و ما هيچ كنترلي بر روي سرعت موتور نداريم.
PWM تكنيكي است كه به كمك آن مي‌توانيم ولتاژ پايه‌هاي خروجي ميكروكنترلر، و در نتيجه سرعت موتور يا ساير قطعات جانبي كه به ميكروكنترلر متصل مي‌شود را كنترل كنيم.

PWM مخفف واژه‌ي Pulse Width Modulation و به معناي "مدولاسيون پهناي پالس" است. همانطور كه گفتيم PWM تكنيكي براي كنترل ولتاژِ پايه‌ي خروجي است. حال ببينيم چگونه با اين تكنيك مي‌توان ولتاژ خروجي را كنترل كرد.
مي‌دانيم كه ولتاژ در پايه‌هاي خروجي ميكروكنترلر يا 0 است يا 5 ولت، اما براي كنترل سرعت موتور، بايد بتوانيم حداقل ولتاژ يكي از پايه‌ها را بين 0 تا 5 تغيير دهيم. PWM روشي است تا ما بتوانيم با استفاده از همين پايه‌ي خروجي معمولي، به نوعي ولتاژ را بين 0 تا 5 ولت تغيير دهيم.
در اين روش، ما با سرعت بالايي سطح ولتاژ خروجي را 0 و بلافاصله 1 مي‌كنيم(مثلاً هزار بار در ثانيه)، نمودار ولتاژ خروجي بر حسب زمان به شكل زير مي‌شود.

 

نمودار بالا ولتاژ خروجي اين پايه بر حسب زمان است.

 


در شكل بالا جمع 2 بازه‌اي كه با فلش‌هاي 2طرفه نشان داده شده است، (به عنوان مثال) 10 ميكرو ثانيه است. كه 5ميكرو ثانيه خروجي 1 و سپس 5ميكرو ثانيه 0 مي‌شود. اما همانطور كه گفته شد، اين عمل هزاران بار در ثانيه تكرار مي‌شود، اما آيا موتور نيز به همين تعداد در ثانيه روشن و خاموش مي‌شود؟

براي خواندن توضيحات كامل اين مبحث همراه با مثال هاي متعدد، به ادامه مطلب برويد...

   
             بازديدها: 55733    نظرات:40

 

 

ADC مخفف "Analog-Digital Converter" و به معناي مبدل آنالوگ به ديجيتال است.

اگر بخواهيم اين قابليت را به صورت ساده توصيف كنيم، يك ولت متر ديجيتال است كه بر روي پايه‌هاي ميكروكنترلر نصب شده است و به وسيله‌ي آن مي‌توان ولتاژ پايه‌هاي ورودي را با دقت مناسبي اندازه‌گيري كرد. همانطور كه مي‌دانيد ما تا به حال در هيچ‌ آي سي نمي‌توانستيم شدت ولتاژ ورودي را به دقت اندازه گيري كنيم و فقط مي‌توانستيم بدانيم آيا ولتاژ ورودي بالاي 2.5 ولت است يا زير 2.5 ولت، و ورودي‌هايمان را به صورت 0 و 1 برسي مي‌كرديم.(آي سي ها ورودي‌هاي خود را منطقي مي‌كنند)

اما به كمك اين قابليتِ ميكروكنترلر‌هايِ خانواده‌ي AVR، ما مي‌توانيم با دقت مناسبي ولتاژ ورودي خود را بررسي كنيم.

يكي از كاربرد‌هاي مهم ADC مي‌تواند در ربات‌هاي امدادگر دانش‌اموزي براي تشخيص رنگ باشد. همانطور كه مي‌دانيد هر رنگ، ميزان مشخصي از نور را بازتاب مي‌دهد و بقيه‌ را جذب مي‌كند، ما با اندازه‌گيري مقدار نور بازتاب شده، ميتوانيم رنگ را تشخيص دهيم. در اينجا ما براي اندازه‌گيري ميزان شدت نور بازتاب شده، بايد از ADC ميكروكنترلر استفاده ‌كنيم تا بتوانيم ولتاژ خروجي سنسور نوري خود را به دقت اندازه‌گيري كنيم.

ADC يكي از مهمترين و پر كاربردترين قابليت‌هاي ميكروكنترلر‌هاي خانواده‌ي AVR است كه به تدريج با كاربرد‌هاي فراوان آن در بخش‌هاي مختلف آشنا خواهيد شد.

هم اكنون نحوه‌ي انجام تنظيمات اوليه‌ي CodeWizard براي راه‌اندازي ADC را آموزش مي‌دهيم.

 

براي خواندن اين مطلب به ادامه مطلب برويد....

   
             بازديدها: 29002    نظرات:18



ارتباط سنسور آلتروسونيك SRF02 با کامپیوتر+ اتصال به ميكرو و برنامه نويسي با بسكام AVR


سنسور SRF02 يكي از سنسور هاي ارزان قيمت (22 هزار تومان) و بسيار خوب براي فاصله سنجي با دقت سانتي متر است.
در اينجا برنامه اي كه توسط خودم تست و 100 درصد بدون مشكل بوده است، ارائه مي شود. اين برنامه تحت C#.net 2010 نوشته شده و به صورت Real time اطلاعات فاصله و شماره سنسور را نمایش می دهد . با استفاده از يك ماژول USB به سریال مي توانيد خیلی راحت به USB وصل کنید !!

همچنين در بخش بعدي PDF فارسي شده SRF02 به همراه روش ارتباط با آي سي AVR به زبان بيسيك اضافه شده است.
براي دانلود سمپل و توضيحات بيشتر به ادامه مطلب برويد....

   
             بازديدها: 16792    نظرات:5
موضوعات
باز کردن همه شاخه ها | بستن كل شاخه ها

آمار سايت
آمار مطالب:
  يک ساعت پيش: 0
  امروز: 0
  اين ماه: 0
  مجموع مطالب: 93
  کل نظرات: 447



آمار بازديد:
  بازديد امروز: 49
  بازديد ديروز: 591
  مجموع بازديدها: 3086811



آمار کاربران:
  يک ساعت پيش: 0
  امروز: 2
  اين ماه: 28
  مجموع کابران: 10547
  بن شدگان: 4

آخرين عضو مكاترونيك:


mostafa110

رتبه گوگل
Display Pagerank