ساخت ربات مسیریاب ویژه با 7 سنسور CNY70 توسط AVR

ساخت ربات مسیریاب ویژه

در این بخش دانلود پروژه ساخت ربات مسیریاب ویژه با 7 سنسور CNY70 توسط میکروکنترلر AVR, توسط تیم الکترونیک و برنامه نویسی الکترونیک ۹۸ برای شما علاقه مندان به پروژه های میکروکنترلر AVR آماده شده است. هدف از طراحی و ساخت ربات تعقیب خط (ربات مسیریاب), ایجاد یک سیستم الکترومکانیکی هوشمند است که بتواند خط سیاهی را در زمینه سفید و یا در بعضی مواقع به صورت بلعکس خط سفیدی را در زمینه سیاه دنبال کند. ربات پیروز, رباتی است که در کمترین زمان مسیر مسابقه را طی نماید.

در ربات مسیریاب, تنها متغیر فیزیکی قابل اندازه گیری است. حسگرهای نوری برای شناسایی (Scan) رنگ پیست و خط به کار می روند و کلیه ربات های مسیریاب به آن ها نیاز دارند. سنسورها این عمل را با تاباندن نور به سطح پیست و اندازه گیری میزان بازتاب نور انجام می دهند. سطوح مختلف, نور را با شدت های متفاوتی باز می تابانند, زیرا رنگ های مختلف, طیف های مختلفی از نور را جذب می کنند. رنگ سفید, بیشتر نور را باز می تاباند و رنگ سیاه, بیشتر نور تابیده را جذب می کند.

سنسورهای نوری پس از انجام فرآیند اندازه گیری نور محیط (زمینه سفید یا خط سیاه), نتیجه را به صورت سیگنالی الکتریکی (معمولا یک سطح منطقی 5 ولت) ارائه می کنند که آماده پردازش در پردازنده ربات است. این اطلاعات به میکروکنترلر AVR ارسال می گردند و در آنجا درباره حرکت موتور به سمت راست یا چپ تصمیم گیری می شود.

دانلود پروژه ساخت ربات مسیریاب ویژه با 7 سنسور CNY70 توسط AVR

سنسور مادون قرمز (IR)

اصول این حسگرها بر اساس ارسال و دریافت نور مادون قرمز است. یک فرستنده مادون قرمز, امواج مادون قرمز را به سطح می تاباند و امواج بازگشتی توسط گیرنده مادون قرمز دریافت می شوند. از آنجا که که سطح سفید, بیشترین بازتاب و سطح سیاه, کمترین بازتاب نور را دارد, شدت نور دریافت شده توسط گیرنده متفاوت خواهد بود. خروجی این سنسور, اگر مقابل سطح سفید قرار گیرد, حدود 5 ولت و در صورتی که مقابل یک سطح تیره قرار گیرد, حدود صفر ولت است. به یاد داشته باشید که این وضعیت می تواند در مدل های مختلف سنسور, برعکس باشد. در هر حال, این حسگر در مواجهه با دو سطح نوری مختلف, ولتاژ متفاوتی تولید می کند. سنسور مادون قرمز از دو عدد ال ای دی LED سیاه و سفید تشکیل شده است. ال ای دی LED سفید, فرستنده و ال ای دی LED سیاه, گیرنده می باشد. این سنسورها دارای دو نوع (یعنی دو قطر متفاوت) 3 و 5 میلی متری می باشند. کنترل تلویزیون یکی از کاربردهای روزمره این سنسورهاست که همه با آن آشنایی دارند.

عملکرد این نوع سنسورها, سبیه به یک مقاومت است. در صورتی که نور بیشتری توسط گیرنده مادون قرمز دریافت شود, مقاومت آن کاهش پیدا می کند. حال اگر این سنسور در مداری مانند شکل زیر قرار گیرد, ولتاژ خروجی بر اساس میزان نور مادون قرمز دریافتی توسط گیرنده, متفاوت خواهد بود.

دانلود پروژه ساخت ربات مسیریاب ویژه با 7 سنسور CNY70 توسط AVR

در مدار شکل بالا پایه منفی اپ امپ OPAMP به خروجی گیرنده مادون قرمز و پایه مثبت آن به یک پتانسیومتر وصل شده است. با توجه به این مدار, در صورتی که گیرنده مادون قرمز, نور زیادی دریافت کند, مقاومت آن و در نتیجه ولتاژ خروجی آن کاهش می یابد. اگر این ولتاژ از ولتاژ پایه مثبت اپ امپ, که توسط پتانسیومتر تنظیم می شود, کمتر باشد خروجی اپ امپ برابر یک خواهد شد. به همین ترتیب اگر نور مادون قرمز کمی توسط گیرنده دریافت شود, خروجی اپ امپ برابر صفر خواهد بود, البته این عملکرد مستلزم کالیبره شدن پتانسیومتر است. برای مثال فرض کنید خروجی گیرنده مادون قرمز با قرار گرفتن روی سطح سفید برابر 2 ولت و در صورت قرار گرفتن روی سطح سیاه 4 ولت باشد. برای اینکه خروجی اپ امپ به این تغییرات عکس العمل نشان دهد, باید توسط پتانسیومتر, ولتاژ پایه مثبت اپ امپ روی یک ولتاژ در محدوده 2 تا 4 ولت (مثلا 3 ولت) تنظیم شود.

برای راه اندازی فرستنده باید پایه بلندتر را به مقاومتی در حدود 300 اهم و ولتاژ 5 ولت و پایه دیگر را به GND وصل کنید. برای راه اندازی گیرنده, پایه بلند را به GND و پایه کوتاه را به پتانسیومتر متصل نمائید. پتانسیومتر برای تنظیم میزان حساسیت سنسور استفاده می شود. اگر نمی خواهید از پتانسیومتر استفاده کنید, می توانید به جای آن از یک مقاومت 100 کیلو اهم استفاده کنید.

نحوه تشخیص خط توسط سنسورهای مادون قرمز

همانطور که در مطالب قبلی این پروژه مربوط به سنسورهای مادون قرمز گفته شد, این سنسورها بر اساس تفاوت بازتاب نور از سطوح مختلف کار می کنند و به همین دلیل می توانیم از آن ها خط سیاه در زمینه سفید و بلعکس یعنی خط سفید در زمینه سیاه را تشخیص دهیم. شکل زیر چیدمان سنسورها روی بورد مدار چاپی و مسیر فرضی حرکت ربات را نشان می دهد که در آن از هفت سنسور مادون قرمز CNY70 استفاده شده است.

دانلود پروژه ساخت ربات مسیریاب ویژه با 7 سنسور CNY70 توسط AVR

فرمان ارسالی از میکروکنترلر به موتور, زمانی که دو حسگر وسط روی خط سیاه قرار می گیرند, باید به گونه ای باشد که موتور, مستقیم حرکت کند. حال اگر یکی از حسگرهای سمت چپ روی خط قرار بگیرد, ربات به سمت راست می چرخد و اگر یکی از حسگرهای سمت راست روی خط قرار بگیرد. به سمت چپ حرکت می کند. به این ترتیب برای تعقیب خط سیاه در شرایط عادی ( یعنی زمانی که هیچ نوع بریدیگی, زاویه, المان خاص و… وجود نداشته باشد) تنها چهار حسگر وسط کافی است.

سنسور مادون قرمز CNY70

این حسگر, یک گیرنده و فرستنده امواج مادون قرمز است و در ربات های مسیریاب برای تشخیص رنگ سیاه و سفید کاربرد داد. اندازه سنسور CNY70 بسیار کوچک است و قیمت نسبتا مناسبی دارد. این سنسور, که به صورت بسته های آماده در بازار موجود است, از سنسورهای خوب و پرکاربرد است. فرستنده این سنسور آبی رنگ و گیرنده آن سفید رنگ می باشد. این سنسور زمانی بهترین عملکرد را دارد که فاصله اش از زمین 3 میلی متر و حداکثر 4 میلی متر باشد. این سنسور, چهار پایه دارد که دو پایه آن ها به GND و دو پایه دیگر با مقاومت های 220 اهمی برای فرستنده و 10 کیلو اهمی برای گیرنده به VCC وصل می شوند. خروجی این سنسور از بین پایه گیرنده و مقاومت 10 کیلو اهم گرفته می شود و به ورودی مثبت اپ امپ OPAMP متصل می شود.

نقشه شماتیک مدار راه اندازی موتور با استفاده از آی سی L298

همانطور که در نقشه شماتیک پروژه مشاهده می کنید، موتورها توسط کانکتورهای مخابراتی به تراشه L298 متصل می گردند. پایه های IN1 و IN3 این تراشه جهت کنترل سرعت حرکت موتورهای DC به خروجی پالس PWM از پایه های OC1A و OC1B میکروکنترلر ATmega32 متصل می شود. و همچنین پایه های 1N2 و 1N4 تراشه L298 برای چرخش معکوس موتورها که بیشتر در مواقع رسیدن ربات به سرپیچ ها می باشد  به خروجی PORTC.0 و PORTC.1 میکروکنترلر ATmega32 متصل می شوند. لازم به ذکر است با استفاده از تراشه L298 می توانید موتور DC با حداکثر جریان 2 آمپر و ولتاژ حداکثر 50 ولت راه اندازی نمائید.

نقشه شماتیک مدار راه اندازی موتور با استفاده از آی سی L298

منبع تغذیه ربات مسیریاب ویژه

برای تغذیه ربات ها می توانید از باتری های مختلف موجود در بازار استفاده کنید. از آنجا که این باتری ها, ولتاژ مختلفی دارند, باید برای قابل استفاده بودن توسط مدارات الکترونیکی, رگوله شوند. به همین منظور از رگولاتور 7805 در مداری مشابه شکل زیر استفاده می کنیم. ولتاژ VCC نشان داده روی شکل زیر, 5 ولت است که می تواند در جاهای مختلف استفاده شود. ولتاژ VDD همان ولتاژ باتری وصل شده به ربات مسیریاب ویژه است.

دانلود پروژه ساخت ربات مسیریاب ویژه با 7 سنسور CNY70 توسط AVR

خازن هایی که در این مدار مشاهده می کنید, اثرات مربوط به نویز (Noise) موتورها (یا محیط) را کاهش می دهند و برای ثابت نگه داشتن سطح ولتاژ در بخش های مختلف مدار ربات مسیریاب ویژه به کار گرفته می شوند.

توجه : از آنجا فیوز بیت JTAG بر روی PORTC میکروکنترلر ATmega32 قرار دارد و به صورت پیش فرض فعال می باشد, و ما نیز در این پروژه از پورت C میکروکنترلراستفاده کرده ایم, به همین خاطر در هنگام پروگرام کردن میکروکنترلر ATmega32 حتما فیوز بیت JTAG را غیر فعال نمائید. در غیر اینصورت عملکرد چپ گرد و راست گرد موتورها انجام نمی شود.

برنامه میکروکنترلر در محیط نرم افزار Bascom AVR

 اطلاعات پروژه

 رمز فایل : www.electronics98.com

 محیط برنامه نویسی : BASCOM-AVR

 برنامه نویسی شده به زبان : BASIC

 نویسنده : فرهاد اکبری

 تاریخ انتشار : 17 آگوست 2014

19 دیدگاه

  1. davoodimami@gmail.com
    احساس میکنم سورس هم که اینجا زده اشکال داره.چون یکی از موتورهاباید از پورت D خروجی بده به آی سی ولی توی سورس از پورت D خبری نیست.و چندتا متغیر هم هست که فقط اسمشون اومده و داخل برنامه استفاده ای ازشون نشده.البته نظرشخصی من هستش ممکن اشتباه کرده باشم.خواهشا اگه ممکن یک مدار و سورس کاملتر از این ربات برام ایمیل کنید برای پسرم ساختمش ولی ناقص مونده.ممنون میشم از دوستان.

  2. سلام دوست عزیز
    سورس پروژه سالم است و مشکلی در آن نیست، همچنین ورژن جدید و کاملتر این پروژه در سایت منتشر شده است که در انتهای همین پروژه لینک آن درج گردیده است.

  3. سلام، وقت بخیر
    لینک دانلود برای ربات مسیریاب وجود نداره. چطوری باید دانلود کرد؟

  4. سلام دوست عزیز
    این پروژه قدیمی است و ورژن جدید آنرا می توانید از طریق لینک زیر دانلود کنید:
    آموزش ساخت ربات امدادگر جونیور (مسیریاب پیشرفته)

 شرایط و قوانین ثبت دیدگاه

 فارسی بنویسید و از کیبورد فارسی استفاده کنید.

 لطفاً بیش‌از‌حدِ معمول، شکلک یا ایموجی استفاده نکنید و از کشیدن حروف یا کلمات با صفحه‌کلید بپرهیزید.

 به کاربران و سایر اشخاص احترام بگذارید. پیام‌هایی که شامل محتوای توهین‌آمیز و کلمات نامناسب باشند، حذف می‌شوند.

 از ارسال لینک‌های سایت‌های دیگر و ارایه‌ی اطلاعات شخصی خودتان مثل شماره تماس، ایمیل و آی‌دی شبکه‌های اجتماعی پرهیز کنید.