پروژه های آردینو

نحوه کنترل موتور پله ای با پتانسیومتر

نحوه کنترل موتور پله ای با پتانسیومتر

نحوه کنترل موتور پله ای با استفاده از پتانسیومتر و آردوینو

نحوه کنترل موتور پله ای با استفاده از پتانسیومتر و آردوینو موتورهای پله ای به طور فزاینده ای جایگاه خود را در دنیای الکترونیک به دست آورده اند.

با شروع از یک دوربین مداربسته عادی تا یک دستگاه پیچیده CNC / ربات ، این موتورهای استپر در همه جا به عنوان محرک استفاده می شوند زیرا کنترل دقیق را فراهم می کنند.

در این آموزش ما در مورد متداول ترین و ارزان ترین استپ موتور 28-BYJ48 و نحوه رابط آن با Arduino با استفاده از ماژول استپر ULN2003 آشنا خواهیم شد.

در آخرین پروژه ما به سادگی Stepper Motor با Arduino رابط کرده ایم ، جایی که می توانید با وارد کردن زاویه چرخش در مانیتور سریال Arduino ، موتور پله ای را بچرخانید.

در اینجا در این پروژه ، ما موتور Stepper را با استفاده از پتانسیومتر و آردوینو می چرخانیم ، مانند اینکه اگر پتانسیومتر را در جهت عقربه های ساعت بچرخانید ، stepper در جهت عقربه ساعت چرخانده و اگر پتانسیومتر را در جهت خلاف عقربه ساعت بچرخانید ، آن را خلاف جهت عقربه ساعت خواهد چرخاند.

لوارم مورد نیاز

  1. Arduino UNO
  2. درایور استپر موتور
  3. منبع تغذیه
  4. برد برد
  5. استپر موتور

 

بخوانید : پروگرام آردوینو با بلوتوث

نحوه کنترل موتور استپر با پتانسیومتر

Stepper Motors:

اجازه دهید نگاهی به این موتور استپر 28-BYJ48 بیندازیم

نحوه کنترل موتور پله ای با پتانسیومتر

بسیار خوب ، بنابراین برخلاف یک موتور DC معمولی ، این سیم دارای 5 سیم از تمام رنگ های فانتزی است که از آن خارج می شود و چرا چنین است؟

برای درک این موضوع ابتدا باید بدانیم که یک استپر چگونه کار می کند و ویژگی آن چیست.

اول از همه موتورهای استپری نمی چرخند ، آنها قدم می گذارند و بنابراین به آنها موتور پله ای نیز می گویند.

به این معنی که آنها هر بار فقط یک قدم حرکت می کنند.

این موتورها توالی سیم پیچهایی دارند که در آنها وجود دارد و برای چرخاندن موتور باید انرژی خاصی به آنها داده شود.

هنگامی که هر سیم پیچ در حال کار است موتور یک گام برمی دارد و یک دنباله انرژی باعث می شود موتور گام های مداوم برداشته و بدین ترتیب باعث چرخش آن می شود.

اجازه دهید نگاهی به سیم پیچ های موجود در داخل موتور بیندازیم تا بدانیم دقیقاً از کجا این سیم ها می آیند.

نحوه کنترل موتور پله ای با پتانسیومتر

بخوانید : ساخت رسیور IR با استفاده از آردوینو

 

همانطور که مشاهده می کنید موتور دارای آرایش سیم پیچ 5 سرب Unipolar است.

چهار سیم پیچ وجود دارد که باید در یک توالی خاص انرژی داشته باشند.

سیم های قرمز با 5 ولت + تامین می شوند و چهار سیم باقیمانده برای تحریک سیم پیچ مربوطه به زمین کشیده می شوند.

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

نحوه کنترل موتور استپر با پتانسیومتر

حالا چرا این موتور 28-BYJ48 نامیده می شود؟

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

بخوانید : کنترل ماتریس 8×8 با آردوینو

چرا ما در موتورهای Stepper به ماژول های Driver نیاز داریم؟

بیشتر موتورهای پله ای فقط با کمک ماژول درایور کار می کنند.

زیرا ماژول کنترل کننده (در مورد ما Arduino) قادر به تأمین جریان کافی از پایه های ورودی / خروجی خود برای کارکرد موتور نخواهد بود.

بنابراین ما از یک ماژول خارجی مانند ماژول ULN2003 به عنوان درایور موتور پله ای استفاده خواهیم کرد.

انواع مختلفی از ماژول درایور وجود دارد و درجه بندی یکی براساس نوع موتور مورد استفاده تغییر می کند.

اصل اصلی برای تمام ماژول های درایور منبع / فرو رفتن جریان کافی برای کارکرد موتور خواهد بود.

بخوانید : کنترل موتور سروو با استفاده از آردوینو

نمودار مدار چرخش موتور پله ای با استفاده از پتانسیومتر:

نحوه کنترل موتور پله ای با پتانسیومتر

نمودار مدار برای موتور پله ای کنترل کننده با استفاده از پتانسیومتر و آردوینو در بالا نشان داده شده است.

ما از موتور استپر 28BYJ-48 و ماژول Driver ULN2003 استفاده کرده ایم.

برای انرژی بخشیدن به چهار سیم پیچ موتور پله ای از پایه های دیجیتال 8،9،10 و 11 استفاده می کنیم.

ماژول درایور توسط پایه 5 ولت برد آردوینو تغذیه می شود.

یک پتانسیومتر به A0 متصل می شود که در مقادیر آن موتور Stepper را می چرخانیم.

اما ، هنگامی که مقداری بار را به موتور استپی متصل می کنید ، درایور را با منبع تغذیه خارجی تأمین کنید.

از آنجا که من فقط از موتور برای نمایش استفاده می کنم ، از ریل + 5 ولت برد آردوینو استفاده کردم.

همچنین به یاد داشته باشید که باید Ground Arduino را با زمین ماژول Driver متصل کنید.

کد برای Arduino Board:

قبل از شروع برنامه نویسی با Arduino ، به ما بفهمانید که واقعاً در داخل برنامه چه اتفاقی می افتد.

همانطور که قبلاً گفته شد ، ما از روش توالی 4 مرحله ای استفاده خواهیم کرد ، بنابراین چهار مرحله برای انجام یک چرخش کامل خواهیم داشت.

ماژول درایور دارای چهار LED است که با استفاده از آن می توانیم بررسی کنیم که سیم پیچ در هر زمان مشخص است.

در این آموزش قصد داریم Arduino را به گونه ای برنامه ریزی کنیم که بتوانیم پتانسیومتر متصل به پین ​​A0 را بچرخانیم و جهت موتور Stepper را کنترل کنیم.

چند برنامه مهم که در زیر توضیح داده شده است ، می توانید برنامه کامل را در پایان آموزش ببینید.

تعداد مراحل در هر دور برای موتور پله ای ما 32 محاسبه شد.

همانطور که در خط زیر نشان داده شده است ، آن را وارد می کنیم

#define STEPS 32

در مرحله بعدی باید مواردی را ایجاد کنید که در آن پایه هایی را که موتور Stepper را به آنها متصل کرده ایم مشخص کنیم.

Stepper stepper (STEPS, 8, 10, 9, 11);

توجه:

تعداد پین ها به صورت عمدی 8،10،9،11 بی نظم هستند.

حتی اگر پایه هایی را که موتورتان به آن متصل است تغییر دهید ، باید از همین الگو پیروی کنید.

از آنجا که ما از کتابخانه stepper Arduino استفاده می کنیم ، می توانیم سرعت موتور را با استفاده از خط زیر تنظیم کنیم.

سرعت می تواند برای موتورهای استپ 28-BYJ48 بین 0 تا 200 باشد.

stepper.setSpeed(200);

اکنون ، برای اینکه موتور یک قدم در جهت عقربه های ساعت حرکت کند ، می توانیم از خط زیر استفاده کنیم

stepper.step(1);

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

stepper.step(-1);

در برنامه ما مقدار Analog pin A0 را می خوانیم و آن را با مقدار قبلی (Pval) مقایسه می کنیم.

اگر افزایش یافته باشد ، ما 5 قدم در جهت عقربه های ساعت حرکت می کنیم و اگر کاهش یابد ، 5 قدم در جهت عقربه ساعت حرکت می کنیم.

potVal = map(analogRead(A0),0,1024,0,500);
if (potVal>Pval)
  stepper.step(5);
if (potVal<Pval)
  stepper.step(-5);
 Pval = potVal;

کار کردن: نحوه کنترل موتور پله ای با پتانسیومتر

پس از اتصال ، سخت افزار باید مانند تصویر زیر باشد.

اکنون ، برنامه زیر را در Arduino UNO بارگذاری کرده و مانیتور سریال را باز کنید.

همانطور که قبلاً گفته شد ، برای کنترل چرخش موتور Stepper باید پتانسیومتر را بچرخانید.

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

امیدوارم پروژه را درک کرده باشید و از ساخت آن لذت برده باشید.

کار کامل این پروژه در فیلم زیر نشان داده شده است.

اگر شک دارید آنها را در بخش نظرات زیر یا انجمن های ما ارسال کنید.

نحوه کنترل موتور استپر با پتانسیومتر

نحوه کنترل استپر موتور

بخوانید : آشکارساز حرکت با استفاده از سنسور PIR

 

کد :

#include <Stepper.h> // Include the header file

// change this to the number of steps on your motor
#define STEPS 32

// create an instance of the stepper class using the steps and pins
Stepper stepper(STEPS, 8, 10, 9, 11);

int Pval = 0;
int potVal = 0;

void setup() {
Serial.begin(9600);
stepper.setSpeed(200);
}

void loop() {

potVal = map(analogRead(A0),0,1024,0,500);
if (potVal>Pval)
stepper.step(5);
if (potVal<Pval)
stepper.step(-5);

Pval = potVal;

Serial.println(Pval); //for debugging
}

این پروژه توسط گروه وی تات انجام شده wetat.ir

کپی با دکر منبع بلامانع است

نوشته های مشابه

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

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