به کمک نیاز دارید؟
استپر موتور - Stepper
شناخت استپر موتور
موتور استپر (Stepper Motor) یک نوع موتور الکتریکی است که با استفاده از میدان مغناطیسی، شافت خروجی آن را به شکل قطعات کوچک تر یا استپ ها، حرکت میدهد. این نوع موتور به صورت دیجیتال کنترل میشود و برای دقت بالا و حرکتهای دقیق استفاده میشود. برخلاف موتورهای دیگری که به صورت مستمر و بدون توقف در حال چرخش هستند، موتور استپر با انجام حرکتی دقیق در هر بار کنترل، توانایی دقت بسیار بالایی را در حرکت خروجی خود دارد. به همین دلیل در بسیاری از مواقع برای کنترل دقیق حرکات رباتها، سیستمهای CNC، دستگاههای پرینت سه بعدی و غیره استفاده میشود.
کاربرد استپر موتور چیست؟
استپر موتورها در بسیاری از صنایع و کاربردها به دلیل دقت بالا و قابلیت کنترل دقیق حرکت، مورد استفاده قرار میگیرند. برخی از کاربردهای رایج استپر موتور به شرح زیر است.
1- دستگاههای پزشکی: استپر موتورها در دستگاههای پزشکی، مانند دستگاههای تصویربرداری و دستگاههای تحت تاثیر لیزر، به دلیل دقت بالا و قابلیت کنترل دقیق حرکت، استفاده میشوند.
2- دستگاههای اداری: استپر موتورها در دستگاههای اداری، مانند پرینتر، اسکنر و دستگاههای فکس، به دلیل دقت بالا در حرکت و کنترل دقیق، استفاده میشوند.
3- دستگاههای خودکار: استپر موتورها در دستگاههای خودکار، مانند دستگاههای پولشمار، ماشینهای خودران و دستگاههای کنترل دستی، به دلیل دقت بالا در حرکت و کنترل دقیق، استفاده میشوند.
4- رباتیک: استپر موتورها در رباتیک به دلیل دقت بالا در حرکت و کنترل دقیق، استفاده میشوند. به عنوان مثال در حرکت دستهای ربات یا حرکت مفصلهای پاها استفاده میشوند.
5- ماشینآلات صنعتی: استپر موتورها در ماشینآلات صنعتی، به دلیل دقت بالا در حرکت و کنترل دقیق، به کنترل حرکت در موقعیتهای دقیق کمک میکنند.
درایور استپر موتور برای راه اندازی استپ موتور
برای راه اندازی استپ موتور به یک درایور موتور نیاز داریم. دایور موتور موج PWM را از میکروکنترلر دریافت و به سیگنال و پالس قابل دریافت برای استپر موتور تبدیل میکند. درایور استپر موتور ULN از تراشه ULN2003 برای راه اندازی استپ موتور استفاده کرده است. ولتاژ کاری درایور موتور ۳ تا ۵٫۵ ولت DC است. این درایور تا ۵۰۰ میلی آمپر جربان خواهد کشید. درایور موتور ULN2003 از ۷ پایه ورودی تشکیل شده است. یک سوکت برای اتصال استپر موتور به داریور بر روی فیبر قرار گرفته شده است. دو پایه GND , VCC برای تغذیه دایور و اتصال به میکروکنترلر بر روی برذ قرار دارد. دمای کاری درایور استپر موتور ULN بین – ۲۵ درجه تا + ۹۰ درجه سانتی گراد است.
استپر موتور 4 سیمه و استپر موتور 5 سیمه چه تفاوتی دارند؟
استپر موتورهای 4 سیمه و 5 سیمه از نظر کاربردی و عملکردی مشابه هستند، با این حال دارای تفاوتهایی در سیم بندی پایهها هستند.
استپر موتور 4 سیمه: این نوع موتور دارای چهار سیم با رنگهای متفاوت است. به ازای هر یک از آنها یک خروجی درایور استپر موتور مورد نیاز است. در استپر موتور 4 سیمه، هر یک از موتورهای استپر با 4 سیمه، 2 جفت سیم دارند. برای کنترل موتور، الکترونیک باید به ترتیب تغییر جهت جریان در جفت سیمها را انجام دهد. به عبارت دیگر، برای جابجایی استپر موتور به جلو و عقب، تغییر جهت جریان در دو جفت سیم صورت میگیرد. در این نوع موتور، هر میدان مغناطیسی برای تحریک کردن موتور به صورت جداگانه کنترل میشود و برای همین نوع استپر موتور 4 سیمه، با قابلیت کنترل دقیقتر و بهتری روبرو است.
استپر موتور 5 سیمه: هر یک از موتورهای استپر با 5 سیمه، یک سیم اضافه دارد که به عنوان سیم "center tap" شناخته میشود. این سیم در واقع از نقطه مرکزی هر دو جفت سیم در موتور خارج شده است و به عنوان یک نقطه مشترک برای هر دو جهت چرخش استفاده میشود. به عبارت دیگر، برای جابجایی استپر موتور به جلو و عقب، تغییر جهت جریان در دو جفت سیم صورت میگیرد و همچنین تغییر جهت جریان در سیم "center tap" نیز برای ایجاد چرخش در هر دو جهت انجام میشود.
بنابراین، استپر موتور 5 سیمه دارای یک سیم اضافی است که به عنوان نقطه مرکزی در میان دو جفت سیم استفاده میشود و در نتیجه، میتواند با دقت و کیفیت بیشتری چرخش کند.
پایه های pinout درایور uln2003
درایور ULN2003 یک درایور قدرتمند برای کنترل استپر موتور است که شامل 7 خروجی است که هر کدام از آنها قادر به ارائه جریان 500 میلیآمپر هستند. پایههای Pinout درایور ULN2003 به شرح زیر هستند.
IN1: ورودی 1 برای کنترل جهت حرکت استپر موتور
IN2: ورودی 2 برای کنترل جهت حرکت استپر موتور
IN3: ورودی 3 برای کنترل جهت حرکت استپر موتور
IN4: ورودی 4 برای کنترل جهت حرکت استپر موتور
COM: ورودی مشترک برای تأمین برق به درایور و موتور
VCC: ورودی برق 5 ولت برای تأمین برق به درایور
GND: ورودی زمین برای تأمین برق به درایور و موتور
در کاربردهای مختلف، ممکن است نام پایهها با نامهای دیگری هم شناخته شود، بنابراین در هر مورد بهتر است با دقت نامگذاری پایهها را بررسی کرده و به منبع اصلی مراجعه کنید.
انواع کتابخانه آردوینو راه اندازی استپر موتور
برای راه اندازی استپر موتور با آردوینو میتوان از کتابخانههای مختلفی استفاده کرد که برخی از آنها عبارتند از:
AccelStepper
Stepper
Adafruit Motor Shield
EasyDriver
BigEasyDriver
هر کدام از این کتابخانهها قابلیتها و امکانات مختلفی دارند که بسته به نیاز و سطح پیچیدگی پروژه، میتوانید از آنها استفاده کنید. بهطور کلی کتابخانه AccelStepper برای کنترل دقیق و سرعت پایین، کتابخانه Stepper برای استفاده ساده تر و کم پیچیدهتر، کتابخانه EasyDriver و BigEasyDriver برای کنترل بیشتر و قابلیت ارتقاء پایینتر، و کتابخانه Adafruit Motor Shield برای استفاده با شیلد آدافرویت و کنترل سادهتر به شمار میآیند.
راه اندازی استپر موتور با آردوینو
راهاندازی استپر موتور با آردوینو به کمک کتابخانههای موجود برای استپر موتورها و برد آردوینو قابل انجام است. برای راهاندازی استپر موتور با آردوینو، میتوانید از کتابخانههای موجود در اینترنت مانند AccelStepper و Stepper استفاده کنید. این کتابخانهها امکان کنترل سرعت و جهت چرخش استپر موتور را به کمک آردوینو فراهم میکنند.
برای راهاندازی استپر موتور با آردوینو، ابتدا باید دو دستگاه را به یکدیگر متصل کنید. برای این کار، پایههای درایور استپر موتور خود را به پایههای آردوینو متصل کنید. سپس کد مورد نظر خود را در نرمافزار آردوینو بنویسید. در کد، میتوانید سرعت و جهت چرخش استپر موتور را تنظیم کنید. بهعنوان مثال، کد زیر یک مثال ساده برای راهاندازی استپر موتور با آردوینو است.
#include <AccelStepper.h>
// Define stepper motor connections and steps per revolution
#define dirPin 2
#define stepPin 3
#define stepsPerRevolution 200
// Create stepper object
AccelStepper stepper(AccelStepper::DRIVER, stepPin, dirPin);
void setup() {
// Set the maximum speed and acceleration
stepper.setMaxSpeed(1000);
stepper.setAcceleration(100);
}
void loop() {
// Set the target position
stepper.moveTo(stepsPerRevolution);
// Run to the target position
while (stepper.distanceToGo() != 0) {
stepper.run();
}
// Delay for 1 second
delay(1000);
// Set the target position to zero
stepper.moveTo(0);
// Run to the target position
while (stepper.distanceToGo() != 0) {
stepper.run();
}
// Delay for 1 second
delay(1000);
}
در این مثال، کتابخانه AccelStepper برای کنترل استپر موتور استفاده شده است. ابتدا پایههای استپر موتور به پایههای درایور متصل شدهاند، سپس وضعیت شافت موتور کنترل خواهد شد.
پایه های pinout درایور TB6600
درایور TB6600 یک درایور موتور قدرتمند است که برای کنترل موتورهای استپر و سروو استفاده میشود. پایه های آن به شرح زیر است.
VCC: ورودی تغذیه با ولتاژ ۹ تا ۴۲ ولت
GND: اتصال به میزان منفی ورودی تغذیه
CLK-: ورودی کلاک منفی، مربوط به راهاندازی موتور
CLK+: ورودی کلاک مثبت، مربوط به راهاندازی موتور
CW-/DIR-: ورودی جهت منفی، مربوط به جهت گردش موتور
CW+/DIR+: ورودی جهت مثبت، مربوط به جهت گردش موتور
ENABLE: ورودی فعال/غیرفعال کردن درایور
VREF: ورودی تنظیم جریان خروجی موتور
لازم به ذکر است که پایه های مربوط به کلاک و جهت ممکن است بر اساس نوع موتور متفاوت باشند و در دیتاشیت موجود برای موتور خاص مشخص شدهاند.
پایه های pinout درایور TB6560
درایور TB6560 یک درایور موتور قدرتمند است که معمولا برای کنترل موتورهای قدرتمند استفاده میشود. پایههای Pinout درایور TB6560 به شرح زیر است.
ENA+ : ورودی فعال کردن / غیرفعال کردن A (+)
ENA- : ورودی فعال کردن / غیرفعال کردن A (-)
ENB+ : ورودی فعال کردن / غیرفعال کردن B (+)
ENB- : ورودی فعال کردن / غیرفعال کردن B (-)
CP : ورودی ساعت
CW/CCW : جهت گیری موتور
A+ : خروجی مربوط به A (+)
A- : خروجی مربوط به A (-)
B+ : خروجی مربوط به B (+)
B- : خروجی مربوط به B (-)
VCC : تغذیه (+)
GND : زمین (-)
لازم به ذکر است که پایههای ENA+، ENA-، ENB+ و ENB- برای فعال کردن / غیرفعال کردن محرکها (موتورها) استفاده میشوند. پایههای A+، A-، B+ و B- خروجیهای مربوط به موتورها هستند و CW/CCW برای تعیین جهت گیری موتور استفاده میشود. پایههای VCC و GND هم برای تغذیه و زمین کردن درایور استفاده میشوند.
تفاوت استپر نما 17 و نما 23 چیست؟
استپر نماهای 17 و 23 دو نوع استپر موتور هستند که تفاوتهای زیر را دارند.
1- سایز: اندازه استپر نما 23 بزرگتر از استپر نما 17 است.
2- شماره پایه: تعداد پایه در استپر نما 23 بیشتر از استپر نما 17 است.
3- حرکت: استپر نما 23 قابلیت حرکت با سرعت بیشتری را نسبت به استپر نما 17 دارد.
4- گام: استپر نما 23 قابلیت حرکت با گامهای بزرگتری را نسبت به استپر نما 17 دارد.
با توجه به این تفاوتها، استپر نما 23 برای کاربردهایی که نیاز به حرکت با سرعت بالا و گامهای بزرگتری دارند، مورد استفاده قرار میگیرد. اما استپر نما 17 برای کاربردهایی که نیاز به حرکت با دقت بیشتر دارند، مناسبتر است.
استپ موتور Stepper Motor
استپ موتور Stepper Motor یا همان استپر موتور یک دستگاه الکترومکانیکی است که پالس های الکتریکی را به حرکتهای مکانیکی مجزا تبدیل میکند. یک شافت بر روی استپر موتور قرار گرفته است. سرعت شافت موتور Stepper Motor به فرکانس پالس ورودی بستگی دارد. از ویژگی اصلی استپ موتور میتوان به توانایی کنترل دقیق در یک سیستم حلقه باز Open Loop اشاره کرد. به هنگام خرید استپ موتور بایستی تمامی ویژگیها از جمله ولتاژ کاری، فازهای چرخش شافت و توان گشتاوری آن را بررسی کرد. در سیستم حلقه باز Open Loop خروجی تاثیری بر عملکرد مدار نخواهد داشت. در این حالت خروجی با ورودی مقایسه نشده و در طول مدار خروجی اندازه گیری نمیشود. در استپر موتور حرکت شافت مستقیما به پالس ورودی بستگی دارد. از اینرو دقت اندازه گیری و کالیبراسیون در ورودی بسیار تاثیرگذار است.