کنترل بازوی مکانیکی

Servo_Potentiometer_NodeMCU

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

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

قطعات مورد نیاز:

برای خرید هر کدام از قطعات مورد نیاز این پروژه می تونید براحتی با کلیک روی آنها وارد فروشگاه شوید و قطعه خود را تهیه نمایید:

سروو موتور:

سروو موتور نوعی از موتور های گیربکسی هستش با این تفاوت که فقط در زاویه های خاصی میچرخه وقدرت بیشتری داره. از سروو موتور داخل جاهای مختلف و زیادی استفاده میشه به طور مثال توی هواپیماهای کنترلی ماشین کنترلی بازو رباتیک مایع ریز هوشمند و… استفاده میشه.
این موتور سه تا پایه داره یکی مثبت(vcc) و یکی (منفی) و یکی دیتا هست که با دادن pwm به پایه دیتا زاویه چرخش سروو موتور کنترل میشه.

sg90 9g micro servo motor 500x500 1 - کنترل بازوی مکانیکی

شماتیک و اتصالات:

پایه سمت راست پتانسیومتر= پایه ۳.۳ ولت برد NodeMCU
پایه وسط پتانسیومتر = پایه A0 برد NodeMCU
پایه سمت چپ پتانسیومتر = پایه GND برد NodeMCU
سیم قرمز سروو موتور = پایه VIN برد NodeMCU
سیم قهوه ای سروو موتور = پایه GND برد NodeMCU
سیم نارنجی سروو موتور = پایه D1 برد NodeMCU

Untitled Sketch bb 10 1024x666 - کنترل بازوی مکانیکی

کد نویسی:

برنامه به این شکل هستش که مقدار آنالوگ خونده شده از پتانسیومتر رو به عدد صفرتا ۱۸۰ تبدیل میکنیم و اون رو روی سروو رایت میکنیم.

 

توضیحات کدها:

اول از همه کتابخونه سروو رو اضافه میکنیم و بعد سروو رو فرامیخونیم و یه متغیر برای معرفی پایه آنالوگ پتانسیومتر و یه متغیر برای ریختن مقدار آنالوگ مینویسیم.

داخل void setup پایه سروو فراخوانی شده رو مشخص میکنیم.

حالا داخل void loop مقدار آنالوگ خونده شده از پتانسیومتر رو توی متغیر val میریزیم و بعد با دستور map عدد اون رو به ۰ تا ۱۸۰ تبدیل میکنیم و روی سروو رایت میکنیم .

 

 

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

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