PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : اتصال موترو به L298 و Atmega8



مجتبی تاجیک
05-02-2011, 21:19
سلام ،

من 2 تا موتور 6 ولت دارم که هر کدوم حدود 1 آمپر میکشه ، میخوام این دو موتور رو به Atmega8 متصل کنم و توسط PWM سرعت و دورشون رو کنترل کنم ، از L298 به عنوان درایور استفاده میکنم .

کسی شماتیکی از نحوه اتصال 2 موتور و نحوه کدنویسی اونها اطلاع دارم ؟

ممنون .

M3R
06-02-2011, 02:47
سلام.
فکر کنم می خوای ربات مسیر یاب بسازی درسته؟؟؟
اول از همه دیتاشیت رو از آدرس زیر دانلود کن :
l298 (You can see links before reply)
اگه هم داری که چه بهتر !!
اول یه توضیحی در مورد pwm بدم:
pwm یا Pulse-Width-Modulation به مدولاسیونی میگن که فرکانس ثابت باشه ولی نسبت صفر به یک بودن سیگنال تغییر کنه.
مثلا اگه بخوای روی پایه میکرو یه ولتاژ 2.5 ولت تولید کنی باید نسبت 0 به 1 با هم برابر باشن که با یه میانگین گیری ولتاژ خروجی به دست میاد.
پیکر بندی pwm در بیسکام:
برای استفاده از pwm میتونی از timer1 و یا timer2 استفاده کنی و باتوجه به اینکه تایمر 1 یک تایمر 16بیتی هست دو تا خروجی pwm به نامها oc1a و oc1b (پایه های 15 و 16 مگا 8)که برای کنترل دو موتور از تایمر 1 استفاده کنی راحت تر هستی.
pwm رو میتونی به صورت 8 یا 9 یا 10 بیتی استفاده کنی که هر چی تعداد bit بالا تر بره سیگنال خروجی دقیقتر هست.
دستور پیکر بندی تایمر 1 به عنوان pwm :



config timer1=pwm , pwm=8|9|10 , comapre a pwm=clear up | clear down | disconnect , compare b pwm=clear up | clear down | disconnect , prescale=1|8|64|256|1024

pwm=8|9|10 :
با این دستور میتونی pwm رو به صورت 8 یا 9 یا 10 بیتی استفاده کنی.
اگر از 8 بیتی اسفاده کنی حداکثر مقدار pwm برابر 256
اگر از 9 بیتی استفاده کنی حداکثر مقدار pwm برابر 512
اگر از 10 بیتی استفاده کنی حداکثر مقدار pwm برابر 1024

: comapre a pwm=clear up | clear down | disconnect
اگر از clear up استفاده کنی و مقدار pwm رو حداکثر قرار بدی خروجیت 0 میشه و اگه 0 قرار بدی خروجیت 1 میشه
اگر از clear down استفاده کنی مقدار pwm رو حداکثر بزاری خروجیت 5 ولت و به ازای 0 خروجی 0 میشه
اگر هم disconnect بزاری که خروجی غیر فعال میشه
برای compare b pwm هم به همین شکل
prescale :
این دستور فرکانس pwm رو مشخص میکنه به اینصورت که هر عددی (1|8|64|256|1024) بزاری فرکانس میکرو تقسیم بر این عدد میشه و فرکانس pwm به دست میاد.
در ضمن باید پایه های oc1a و oc1b به صورت خروجی تعریف بشن.
فایل شبیه سازی پروتئوس و نحوه اتصال l298 و یه برنامه ساده با بیسکام پیوست کردم.
اون ولتاژ vs تو l298 هم ولتاژی هست که میخوای با اون موتورهات رو روشن کنی.
فایلها رو نگاه کن اگه مشکل داشتی بگو
موفق باشی :0013: