پروژه کنترل موتور DC
در این پروژه قصد داریم با استفاده از درایور L298 و میکروکنترلر ATMEGA8 مداری طراحی کنیم جهت کنترل سرعت و جهت موتور DC ، همچنین در این مدار با استفاده از یک سنسور دما LM35 دمای محیط را اندازه گیری می کنیم و نسبت به دمای اندازه گیری شده توسط سنسور LM35 ، سرعت موتور تغییر می کند.
همچنین با استفاده از یک LCD کاراکتری 2*16 ،جهت چرخش موتور و دمای اندازه گیری شده توسط سنسور LM35 را نمایش می دهیم .
در این پروژه از 3 کلید استفاده کرده ایم ، یک کلید برای چپ گرد و راست گرد کردن موتور و 2 کلید باقی مانده جهت افزایش و کاهش سرعت موتور DC استفاده شده است .
درایور L298N
آیسی L298N یک درایور موتور است و با استفاده از آن می توانیم موتور DC را کنترل کنیم. همانطور که در تصویر زیر می بینید این آیسی 15 پایه دارد و همزمان می تواند 2 موتور DC را کنترل کند. همچنین این آیسی از قدرت بالایی برخوردار است و توانایی کنترل موتور با ولتاژ 46 ولت و جریان 4 آمپر را دارد.
اما تشریح پایه های این آیسی درایور به شکل زیر است:
- پایه یک و 15 این آیسی مربوط به کنترل جریان مصرفی موتور است،به این صورت که شما می توانید با اتصال یک مقاومت به زمین و این پایه ها جریان عبوری از موتور را محدود کنید که در برخی از مدارها کاربرد خواهد داشت اما در صورت اتصال مستقییم این پایه ها به زمین حداکـثر جریان مصرفی را خواهیم داشت
- پایه 2 و 3 خروجی موتور A و پایه 13 و 14 خروجی موتور B است.
- پایه 4 تغذیه متناسب با موتورهای مورد استفاده است که می تواند بین 2.5 تا 46 ولت باشد.
- پایه 5 و 7 ورودی موتور A و پایه های 10 و 12 ورودی موتور B است.
- پایه های 6 و 11 جهت کنترل دور موتور استفاده می شوند که این عمل با اعمال پالس PWM انجام می شود.
- پایه 8 زمین یا GND است.
- پایه 9 مربوط به تغذیه این آیسی و 5 ولت است.
اما برای راه اندازی این آیسی و استفاده آن به عنوان درایور موتور DC ، نیاز به مدولاسیون عرض پالس داریم.
مدلاسیون عرض پالس (Pulse Width Modulation)
برای کنترل سرعت موتور توسط درایور L298 نیاز به مدلاسیون عرض پالس یا همان PWM (Pulse Width Modulation) داریم . در این پروژه برای تولید این پالس و کنترل آن از میکروکنترلر مگا8 استفاده می کنیم.
مدولاسیون عرض پالس یا PWM روشی برای تنظیم توان الکتریکی است در این روش با High و Low شدن یک سیگنال می توانیم توان خروجی را کنترل کنیم ، به این صورت که هر چقدر زمان یک یا High بودن سیگنال بیشتر باشد خروجی بیشترین توان را خواهد داشت و اگر زمان صفر یا Low بودن سیگنال بیشتر باشد خروجی توان کمتری خواهد داشت.
اما برای تولید یک سیگنال PWM توسط میکروکنترلر ATMEGA8 از پایه OC1A و OC1B استفاده میکنیم که برای فعال سازی این پایه ها باید تایمر یک فعال شود که دستور آن به شکل زیر است:
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 1
در این دستور تایمر یک در مد PWM و 8 بیتی فعال شده است ، Comparea و b هر دو به صورت مستقیم در خروجی قرار میگیرند اگر به صورت Clear Down باشند به صورت معکوس در خروجی قرار خواهند گرفت . این جمله به این معنی است که اگر مقدار PWM برابر با 255 با شد در حالت مستقیم بیشترین توان و در حالت معکوس کمترین توان را در خروجی خواهید داشت.
توجه کنید برای فعال کردن تایمر میکروکنترلر و استفاده آن در مد PWM حتما باید همه وقفه ها فعال شوند.
اما یکی از آپشن هایی که در این پروژه در نظر گرفته شده استفاده از سنسور دما Lm35 برای اندازه گیری دما و کنترل سرعت موتور نسبت به دمای محیط هستش که از این قسمت می توان برای کنترل دمای محیط هم استفاده کرد و عملکرد
آن به این صورت است که اگر دما از حد مد نظر ما فراتر رفت سرعت موتور فن افزایش پیدا کند تا دمای محیط کاهش پیدا کند و بعد از این که دما به حد نرمال رسید مجددا سرعت موتور فن به حالت اولیه باز خواهد گشت.
سنسور Lm35 یک سنسور 3 پایه و خطی است که تغییرات ولتاژ پایه خروجی این سنسور نسبت به هر درجه سانتی گراد 10 میلی ولت است .
در ادامه این مقاله ویدیو کامل ساخت و عملکرد این پروژه و فایل های مربوط به این پروژه شامل شماتیک مدار ، سورس و هگز برنامه در اختیار شما قرار گرفته است.
برای مشاهده لینک دانلود لطفا وارد حساب کاربری خود شوید!
ورود / عضویتپسورد فایل : MicroBas.ir گزارش خرابی لینک
2 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
دیدگاهتان را بنویسید لغو پاسخ
برای نوشتن دیدگاه باید وارد بشوید.
وسط ساخت مدار ول کردم اومدم اینجا فقط بگم لایک داری
ممنون از شما و لطفتون