آموزش آردوینوپروژه های آردوینو

راه اندازی موتور پله ای با موتور درایور و آردوینو

موتور پله ای نوعی موتور DC بدون جاروبک است که چرخش کامل را به چند مرحله تقسیم می کند، بنابراین امکان کنترل دقیق موقعیت موتور را فراهم می کند. درایور A4988 یک موتور درایور همه کاره برای کنترل موتورهای پله ای برای کاربردهای مختلف است. هنگامی که A4988 با یک برد آردوینو UNO ترکیب می‌شود، می‌توان از A4988 برای کنترل یک موتور پله‌ای به روشی بسیار دقیق و کارآمد استفاده کرد. در این راهنما، نحوه کنترل استپر موتور با درایور A4988 و Arduino UNO را بررسی خواهیم کرد. ما با بحث در مورد اصول اولیه موتورهای پله ای و ماژول درایور A4988 شروع می کنیم. سپس به بررسی اتصالات سیم‌کشی بین A4988، استپر موتور و آردوینو می‌پردازیم. پس از آن، به توضیح کد می پردازیم، جایی که نحوه کنترل جهت، سرعت و تعداد مراحل استپر موتور را به شما نشان خواهیم داد.

اگر به کار با استپر موتور ها علاقه دارید، مقاله دیگر ما در مورد کنترل استپر موتور با آردوینو را مطالعه کنید.

موتور درایور A4988 چگونه کار میکند؟

موتورهای پله ای از چرخ دندانه دار و آهنرباهای الکتریکی برای چرخاندن چرخ یک پله در یک زمان استفاده می کنند. هر پالس HIGH به سیم پیچ انرژی می دهد و دندان های نزدیک به چرخ دندانه دار را جذب می کند و موتور را یک قدم به جلو می برد.

درایور استپر موتور A4988 دارای ظرفیت درایو خروجی تا 35 ولت و ± 2 آمپر است. این به شما امکان می دهد یک موتور پله ای دوقطبی مانند NEMA17 را با جریان خروجی حداکثر 2 آمپر در هر سیم پیچ کنترل کنید. گیف بالا نحوه عملکرد موتور را به شما نشان می دهد.

ماژول A4988 در مجموع دارای 16 پین است که به استپر موتور و آردوینو متصل می شود، پین اوت به شرح زیر است:

پین های موتور درایور A4988

VDD: این پایه های پاور ماژول است، پایه VDD مدار منطقی داخلی را تغذیه می کند. ورودی این پایه می تواند از 3.3 ولت تا 5.5 ولت باشد و پین 10 ماژول است.

GND: پایه زمین ماژول به پایه GND آردوینو متصل می شود. ماژول A4988 دارای دو پایه GND (9،16) است.

VMOT: پین تامین موتور به موتور قدرت می دهد که می تواند از 8 ولت تا 35 ولت باشد. با توجه به دیتاشیت، درایور موتور به یک خازن جداکننده مناسب نزدیک به برد نیاز دارد.

MS1، MS2، MS3: درایور A4988 دارای سه ورودی انتخابگر اندازه مرحله (استپ رزولوشن) است با تنظیم سطوح منطقی مناسب برای این پین‌ها، می‌توانیم موتور را روی یکی از وضوح‌های پنج مرحله‌ای تنظیم کنیم.

MS1

MS2

MS3

رزولوشن استپ

Low

اگر در مورد این مطلب سوالی دارید در قسمت نظرات بپرسید

Low

Low

Full Step تمام گام

High

Low

Low

Half Step نیم گام

Low

High

Low

Quarter Step یک چهارم گام

High

High

Low

Eighth Step هشت گام

High

High

High

Sixteenth Step شانزده گام

این سه پایه انتخاب توسط مقاومت های داخلی پایین کشیده (Pull Down) می شوند، بنابراین اگر آنها را بدون اتصال رها کنید، موتور در حالت تمام گام کار می کند.

STEP: ورودی STEP ریز پله های موتور را کنترل می کند. هر پالس HIGH ارسال شده به این پین، موتور را با توجه به تعداد ریز استپ تعیین شده توسط پین های انتخاب میکرواستپ به حرکت در می آورد. هرچه فرکانس پالس بیشتر باشد، موتور سریعتر می چرخد.

ورودی DIR: جهت چرخش موتور را کنترل می کند. با کشیدن آن به بالا HIGH، موتور در جهت عقربه‌های ساعت می‌چرخد، در حالی که با کشیدن آن به پایین LOW، آن را در خلاف جهت عقربه‌های ساعت می‌چرخانید.

EN یک پین ورودی LOW فعال است. وقتی این پین LOW می شود، درایور A4988 فعال می شود. به طور پیش فرض، این پین پایین کشیده می شود، بنابراین اگر آن را HIGH نکنید، درایور همیشه فعال است. این پین هنگام اجرای سیستم توقف یا خاموش کردن اضطراری مفید است.

SLP یک پین با ورودی LOW فعال است. با کشیدن این پینبع حالت LOW موتور درایور را در حالت خواب قرار می دهد و مصرف برق را به حداقل می رساند. شما می توانید از این برای صرفه جویی در مصرف برق استفاده کنید، به خصوص زمانی که موتور در حال استفاده نیست.

RST نیز یک ورودی LOW فعال است. وقتی این پین LOW می شود، تمام ورودی های STEP نادیده گرفته می شوند. همچنین با تنظیم مترجم داخلی در حالت “Home” از پیش تعریف شده، درایور را بازنشانی می کند. حالت Home اساساً موقعیت اولیه ای است که موتور از آن شروع می شود و بر اساس وضوح میکرو استپ متفاوت است.

مدار اتصال موتور پله ای به آردوینو

شماتیک اتصال ماژول A4988 Stepper Driver به آردوینو در زیر بالا نشان داده شده است. مدار بسیار ساده است و در دیتاشیت ماژول A4899 یافت می شود. اما برای سادگی، نمودار مدار را مرور می کنیم و سعی می کنیم حیاتی ترین قسمت هایی را که نیاز به توجه ویژه دارند، کشف کنیم.

مدار اتصال موتور پله ای به آردوینو

شماتیک بسیار ساده است و به اجزای بسیار کمی برای کار کردن نیاز دارد.

کد آردوینو راه اندازی موتور پله ای

کد کامل در فایل دانلودی انتهای صفحه قرار گرفته است در اینجا قسمت های مهم کد را بررسی میکنیم.

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

کد با شناسایی پین‌های آردوینو که برای پیوند دادن پایه‌های STEP و DIR ماژول A4988 استفاده می‌شوند، شروع می‌شود. StepsPerRevolution متغیری است که تعریف شده است. می توانید آن را با مشخصات موتور پله ای خود تنظیم کنید.

const int dirPin = 2;
const int stepPin = 3;
const int stepsPerRevopinMode(stepPin, OUTPUT);
pinMode(dirPin, OUTPUT);

در بخش راه اندازی، تمام پین های کنترل موتور به عنوان OUTPUT دیجیتال پیکربندی شده اند.

pinMode(stepPin, OUTPUT);
pinMode(dirPin, OUTPUT);

در بخش حلقه، موتور به آرامی در جهت عقربه های ساعت و سپس به سرعت در جهت خلاف جهت عقربه های ساعت با فواصل یک ثانیه می چرخد.

جهت چرخش موتور توسط خط زیر کنترل میشود:

digitalWrite(dirPin, HIGH);

سرعت موتور با کد زیر کنترل می شود:

for(int x = 0; x < stepsPerRevolution; x++) {
      digitalWrite(stepPin, HIGH);
      delayMicroseconds(1000);
      digitalWrite(stepPin, LOW);
      delayMicroseconds(1000);
}

موارد موجود در فایل : سورس کامل

4.3 (6 نفر)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید قرار بدهم. سوالات مربوط به این مطلب را در قسمت نظرات همین مطلب اعلام کنید. سعی میکنم در اسرع وقت به نظرات شما پاسخ بدهم.

3 نظر

  1. سلام.چطوری میتونیم تشخیص بدیم موتور درایورa4988 سوخته یا سالمه؟

  2. سلام.چگونه میتوان با پتانسیومتر سرعت استپر موتور با همین درایور تغییر داد؟

  3. سلام لطفا شبیه سازی پروتئوس این پروژه با فایل هگزش رو برای ران مردن قرار بدید ممنون از سایت خوبتون

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *