اطلاعیه

Collapse
No announcement yet.

ساخت ربات تعقیب خط با قابلیت به خاطر سپردن مسیر طی شده !!!

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    ساخت ربات تعقیب خط با قابلیت به خاطر سپردن مسیر طی شده !!!

    سلام .

    بچه ها یه استاد از خدا بی خبر یه پروژه به من داده که فکر نکنم خودش و 7 جد و آبادش بتونن بسازنش X-( X-(

    استاد به من گفته باید یک ربات تعقیب خط بسازی که وقتی یک بار مسیر را رفت برای دفعه بعد من کابل پنل سنسورش را جدا میکنم بدون سنسور باید اون مسیر را دوباره طی کنه !!! :-(( :-(( :-((

    میدونم که باید میکرو دستورات و خروجی pwm موتور را در حافظه ذخیره کنه و برای دور بعد اون مقادیر رو دوباره در خروجی اعمال کنه ولی چطوریش را خدا می دونه !!!

    دوستانی که یه خورده دستشون تووی کار هست می دونن که همچین پروژه ای حتی اگر در تئوری ممکن باشه در عمل اجرای اون 100 برابر مشکل تره !

    انصافاً اگر می رفتم دانشگاه MIT آمریکا هم درس می خوندم فکر نکنم همچین پروژه ای بم می دادن !

    حالا شما فکری به نظرتون نمی رسه که عملی باشه ؟ :cry2: :cry2: :cry2: ضمنا ً من میکرو AVR و با زبان بیسیک کار میکنم .

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

    #2
    پاسخ : ساخت ربات تعقیب خط با قابلیت به خاطر سپردن مسیر طی شده !!!

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

    دیدگاه


      #3
      پاسخ : ساخت ربات تعقیب خط با قابلیت به خاطر سپردن مسیر طی شده !!!

      سلام.این طرح خیلی وقته که تو ذهنم بود ولی فرصت نکردم عملی انجامش بدم!

      به جزئیاتش فکر کرده بودم.اگه درست باشه! فکر کنم این پارامترها رو باید داشته باشی:

      1-نمونه برداری از ولتاژ اعمالی به موتورها جهت اطمینان از اینکه ولتاژ موتورها کی و چطور تغییر میکنن.

      2-شمردن دور هر موتور تا تغییر بعدی PWM اعمالی ( به محض تغییرPWM باید شمارش قبلی ذخیره بشه و شمارش جدید شروع بشه)

      3-زمان سنجی(هر موتور وقتی ولتاژشx ولت هست،PWM به اندازه ی y بهش اعمال شده،n دور در مدت t ثانیه چرخیده)

      4-حافظهEEPROM که پیشنهادم استفاده از چند تا حافظه هست که اطلاعات هر مموری با اون یکی متفاوت هست.جهت قاطی نشدن اینکه توی کدوم خونه ی حافظه

      چی ذخیره شده.البته این چندتا مموری اختیاری هست.میتونی از یه 512k استفاده بکنی که احتمال زیاد حافظه اضافی هم بیاری!

      5-ببخشید که اینقدر واضح میگم ولی باید بدجور پوست کلفت باشی تا بتونی ازش جواب بگیری!! :mrgreen:

      فعلا اینها به ذهنم میرسه.دوستان دیگه نظر بهتری دارن؟

      دیدگاه


        #4
        پاسخ : ساخت ربات تعقیب خط با قابلیت به خاطر سپردن مسیر طی شده !!!

        من خودم تقریباً تا حدودی روال کار رو میدونم ولی طریقه پیاده کردنش رو نمی دونم ! یه روش کار هم استفاده از موتور انکودر دار هست . مشکل من این هست که حدااکثر کاری که از دستم بر میاد محاسبه مسافت طی شده است . ولی جهت حرکت ربات و یا بهتر بگم تعداد و فواصل تایم روشن و خاموش بودن موتورها رو نمیتونم اندازه گیری و اعمال کنم !
        خدایا هر چقدر دوست داری از عمر من کم کن و به طول عمر پدر و مادرم اضافه کن...

        دیدگاه


          #5
          پاسخ : ساخت ربات تعقیب خط با قابلیت به خاطر سپردن مسیر طی شده !!!

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

          دیدگاه


            #6
            پاسخ : ساخت ربات تعقیب خط با قابلیت به خاطر سپردن مسیر طی شده !!!

            هااااا.... :mrgreen: یه چی الان پرید تو ذهنم!! میتونین از سنسور شتاب سنج استفاده بکنین.بعضی از مدل ها فقط جهت x و y رو تشخیص میدن اگه تو مسیرت تغییر سطح نداشته باشی(که اگه باشه چی مییییشه!!! :twisted فکر کنم از راه پیشنهادی قبلیم بهتر باشه....
            واسه راه قبلی هم در نظر داشته باش که شاااااید لازم باشه بیشتر از یه میکرو داشته باشی و بینشون ارتباط برقرار کنی.البته احتمالش خییلی کمه.من AVR کار نکردم تا مشخصات دقیقشون رو بدونم.ولی فکر کنم همون مگا32 معروف قضیه رو حل کنه.با PIC هم بخوای کار کنی یه 18F452 یا 18F4550 قضیه رو میتونه حلش کنه...
            جزئیات دقیق تر که بدونی چطور این کار رو انجام بدی به نظرم اول از ذخیره دیتا روی 2 تا EEPROM شروع کن روی هر کدوم دیتای مختلف بنویس و بخون.اون که حل شد.شفت انکودر رو راه اندازی کن.دیتای شفت انکودرها رو جداگانه روی EEPROM ذخیره کن.تا اینجا رو انجام بده و نتیجه ش رو بررسی بکن تا بعد ببینیم چه میشه کرد!
            ضمنا حتما سرعت موتور ها رو پایین بگیر تا خطای کمتری داشته باشی.حتی اگه میتونی ولتاژ اعمالی به موتورها رو ثابت کنی که یکی از متغیرها کم بشه بهتر میشه.اونجوری دیگه PWM و مسائل مربوط به جواب موتور به PWM هم از بین میره.فعلا همین!

            دیدگاه


              #7
              پاسخ : ساخت ربات تعقیب خط با قابلیت به خاطر سپردن مسیر طی شده !!!

              نوشته اصلی توسط سید علی شاهرخی

              انصافاً اگر می رفتم دانشگاه MIT آمریکا هم درس می خوندم فکر نکنم همچین پروژه ای بم می دادن !
              آره اونها هم این مسابقات رو دارن حتی یه مسابقه تعقیب خط ساده. اما اونها با استفاده از تئوری های منطق فازی، هوش مصنوعی و الگوریتم شبکه های عصبی این کارها رو انجام میدن که خیلی ساده تر از رباتیه که به شما داده شده. :mrgreen:

              من توی مسابقات زمان دانشجویی دقیقا اینو ساختم. یادگیری مسیر رفته شده جزء قوانین مسابقات بود.
              این کار خیلی ساده است. من یکی از روش هایی رو که میشه استفاده کرد رو میگم.
              شما باید از استپرموتور استفاده کنی و برنامه رو طوری بنویسی که مثلا هر 10 میلی ثانیه پالس اعمالی به موتورها کنترل بشه و هر 10میلی ثانیه 10میلی ثانیه مقادیر هر موتور رو ذخیره میکنی.
              تو مرحله بعد یعنی زمانیکه میخوای ربات مسیر رو از حفظ بره باید هر 10میلی ثانیه همون مقادیری که ذخیره کردی رو به استپرموتورها میدی. اینجا نکته ای که مهمه اینه که اولا تایمرت خیلی دقیق باشه و دوما ولتاژ اعمالی به استپرموتورها بیشتر باشه تا گشتاور زیاد بشه و سرعت ربات کم نشه. مثلا اگه استپرموتورت 12 ولته شما باید با ولتاژ 15ولت راه اندازیشون کنی.

              من اینکار رو با 2تا میکرو انجام دادم. چون مقادیر باید توی EEPROM ریخته میشد و نیاز به یه تاخیر در حد میلی ثانیه داشت یه میکرو احتمال ادم نتونه درست کار بکنه. اما اگه الان بخوام بسازم فقط یه میکرو میذارم چون میدونم که میشه، تو مسابقات همش از ترس اینکه نکنه رباتم خراب بشه، نکنه دیتاها درست ذخیره نشه، نکنه هنگ بکنه مداراتو الکی پیچیده میکردم.
              اون سال توی یزد اول شدم.

              دیدگاه


                #8
                پاسخ : ساخت ربات تعقیب خط با قابلیت به خاطر سپردن مسیر طی شده !!!

                نوشته اصلی توسط Irankit
                آره اونها هم این مسابقات رو دارن حتی یه مسابقه تعقیب خط ساده. اما اونها با استفاده از تئوری های منطق فازی، هوش مصنوعی و الگوریتم شبکه های عصبی این کارها رو انجام میدن که خیلی ساده تر از رباتیه که به شما داده شده. :mrgreen:

                من توی مسابقات زمان دانشجویی دقیقا اینو ساختم. یادگیری مسیر رفته شده جزء قوانین مسابقات بود.
                این کار خیلی ساده است. من یکی از روش هایی رو که میشه استفاده کرد رو میگم.
                شما باید از استپرموتور استفاده کنی و برنامه رو طوری بنویسی که مثلا هر 10 میلی ثانیه پالس اعمالی به موتورها کنترل بشه و هر 10میلی ثانیه 10میلی ثانیه مقادیر هر موتور رو ذخیره میکنی.
                تو مرحله بعد یعنی زمانیکه میخوای ربات مسیر رو از حفظ بره باید هر 10میلی ثانیه همون مقادیری که ذخیره کردی رو به استپرموتورها میدی. اینجا نکته ای که مهمه اینه که اولا تایمرت خیلی دقیق باشه و دوما ولتاژ اعمالی به استپرموتورها بیشتر باشه تا گشتاور زیاد بشه و سرعت ربات کم نشه. مثلا اگه استپرموتورت 12 ولته شما باید با ولتاژ 15ولت راه اندازیشون کنی.

                من اینکار رو با 2تا میکرو انجام دادم. چون مقادیر باید توی EEPROM ریخته میشد و نیاز به یه تاخیر در حد میلی ثانیه داشت یه میکرو احتمال ادم نتونه درست کار بکنه. اما اگه الان بخوام بسازم فقط یه میکرو میذارم چون میدونم که میشه، تو مسابقات همش از ترس اینکه نکنه رباتم خراب بشه، نکنه دیتاها درست ذخیره نشه، نکنه هنگ بکنه مداراتو الکی پیچیده میکردم.
                اون سال توی یزد اول شدم.
                سلام . مهندس این چیزی که شما میگید فکر جالبی هست . فقط میدونی مشکل من چیه ؟ من 3 واحد درس رباتیک معرفی به استاد دارم و به دلایلی زود باید برم سربازی و یه جورایی در وضعیتی نیستم که برم با همچین پروژه هایی سرو کله بزنم :sad: شما برنامه و یا شماتیک اون ربات خودتون رو ندارید که من تغییرات لازم رو خودم روش اعمال کنم ؟ البته شخصاً خودم از این آدم هایی نیستم که چیزی رو آماده استفاده می خوان ولی خوب این دفه یه خورده قضیه فرق داره دوست ندارم بشینم از صفر شروع به ساخت و طراحی این پروژه کنم. اگر کسی یه مثال عملی از همچین پروژه ای داشته باشه خیلی می تونه کمکم کنه . :redface:
                خدایا هر چقدر دوست داری از عمر من کم کن و به طول عمر پدر و مادرم اضافه کن...

                دیدگاه

                لطفا صبر کنید...
                X