راه اندازی موتور سروو به کمک برد آردوینو UNO

راه اندازی موتور سروو به کمک برد آردوینو UNO

سلام به شما

به سایت داناساز خوش اومدین

امروز می خوایم به شما آموزش بدیم که چجوری سروو موتور (servo motor) رو به کمک برد آردوینو فعال کنیم.

 با ما همراه باشید

خب اول کار بهتره بدونیم که سروو موتور چی هست و چه کاربردی داره؟

سرو موتور ، موتورهای بسیار دقیقی هستند تشکیل شده از یک موتور الکتریکی و اجزایی دیگر اند که می­تواند برای کنترل سرعت و زاویه شافت موتور در زاویه و سمت دلخواه استفاده بشن. سروو برگرفته از کلمه ی یونانی Servus و به معنی خدمتکار است و این به این دلیل است که مثلا می­تونیم به این موتور فرمان بدیم که دقیقا با چه زاویه ای بچرخه. این دقت سبب میشه که این موتور جایگاه خوبی توی صنایع داشته باشه، صنایعی مثل روباتیک، هواپیما سازی و … .

سروو موتور DC از سه قسمت عمده ی زیر تشکیل شده.

  1. موتور DC
  2. قسمت مکانیکی برای افزایش گشتاور
  3. مدار حسگر موقعیت و کنترل موتور

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

راه اندازی سروو موتور

مثال اول:

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

ابتدا مدار را به صورت زیر می­ بندیم:

حالا شروع به کد نویسی می­کنیم:

اولین کار اینه که باید کتابخانه­ ی سروو رو نصب کنیم. در اینجا توضیح دادیم که به چه صورت اینکار رو انجام بدین.

و به این صورت کتابخانه رو در کد فراخوانی می کنیم.


بعد از اون باید تابع servo رو بنویسیم و برای هر موتور یک اسم مشخص کنیم تا بتونیم اون رو کنترل کنیم. به شکل زیر:

چون ما فقط یک موتور داشتیم، پس فقط یک نامگذاری داریم. تا 12 موتور رو می­تونید نامگذاری کنید.

حالا حلقه­ ی void Setup  رو باز می­کنیم و به کمک تابع Servo.attach پایه ای از آردوینو که سروو به اون متصل شده را مشخص می­کنیم. به صورت زیر:

برای کنترل سروو، از تابع ()Servo.Write استفاده می­ کنیم و در حلقه­ ی void loop آردوینو به کمک این تابع به سروو هر زاویه­ ای که می­خوایم، می دهیم. موتور سروو ما از نوع SG90 هست و فقط از 0 تا 180 رو میشه بهش مقدار داد؛ ولی موتور هایی هستند که تا 360 درجه هم بچرخند. به صورت زیر:

در این حلقه تعریف کردیم که موتور سروو به زاویه­ های صفر درجه، 45 درجه، 90 درجه، 135 درجه و 180 درجه برود و در بین هرکدام از این تغییر زاویه­ ها، 1 ثانیه صبر کند.

کد این برنامه رو به طور کامل می تونید از لینک زیر دانلود کنید.



مثال 2:

در این قسمت می­خوایم کدی بنویسیم که بتونیم سروو موتور رو به صورت دستی به کمک پتانسیموتر بچرخونیم.

مدار رو به شکل زیر می­ بندیم:

حالا برای نوشتن کد باید یک متغیر برای پتانسیومتر به کد اضافه کنیم. به شکل زیر:

در نهایت باید مقدار دریافتی از پتاسیومتر را که از 0 تا 1023 خوانده می­شود ( ورودی آنالوگ)، به مقیاس صفر تا 180 درجه ببریم. برای اینکار از تابع map استفاده می­ کنیم.

دانلود این کد به صورت کامل از لینک زیر:

با تشکر از همراهی شما

هر سوالی داشتین در قسمت نظرات حتما بپرسید.

برای تهیه­ ی لوازم برای راه ­اندازی سروو موتور به فروشگاه ما مراجعه کنید.

ارسال نظر

آدرس ایمیل شما منتشر نخواهد شد.