تامین سیستمهای سوخت گیری سریع
۱۰ شهریور ۱۴۰۰وسایل نقلیه هدایت شونده خودران (AGVs)
۱۰ شهریور ۱۴۰۰فهرست مطالب
۱- مقدمه
۲- الگوریتم پروفیل سرعت ذوزنقهای
۳- مقایسه الگوریتم پروفیل سرعت ذوزنقهای و پروفیل سرعت S شکل
۴- پیادهسازی الگوریتم پروفیل سرعت ذوزنقهای در میکروکنترلر به کمک واحد تایمر
۵- جمع بندی
۱- مقدمه
کنترل سرعت، گشتاور و موقعیت موتورهای الکتریکی در صنایع مختلف کاربردهای فراوانی دارد. انواع روشهای کنترل معمولا به دو صورت حلقهباز یا حلقهبسته صورت میپذیرد. در کنترل حلقهباز کنترلکننده هیچگونه بازخوردی از سرعت، گشتاور و موقعیت موتور در اختیار ندارد. شکل ۱ نمای کلی از کنترل حلقهباز را نمایش میدهد.
از مزایای استفاده از روش کنترل حلقه باز میتوان به سادگی و ارزانی در پیاده سازی اشاره کرد. انواع مختلفی از موتورهای الکتریکی در صنایع به کار گرفته میشوند که از این میان موتورهای استپر یا پلهای به خاطر توانایی در کنترل سرعت و موقعیت به صورت حلقه باز و بدون نیاز به گرفتن بازخورد از سرعت و موقعیت موتور کاربردهای فراوانی دارند.
سرعت و موقعیت موتورهای استپر را میتوان به اعمال پالسهای ولتاژ کنترل کرد به گونهای که سرعت موتور متناسب با فرکانس پالس اعمالی و موقعیت آن متناسب با تعداد پالس اعمالی میباشد. با اعمال هر پالس به درایور موتور از سمت کنترلکننده، موتور استپر به اندازه یک میکرواستپ یا ریزپله حرکت خواهد کرد حال به هر میزان که فاصله زمانی بین پالسهای اعمالی کمتر باشد سرعت چرخش موتور بیشتر خواهد بود.
چنانچه نرخ تغییر فاصله زمانی بین پالسهای اعمالی یا به عبارتی نرخ تغییر فرکانس پالس اعمالی زیاد باشد روتور موتور استپر نخواهد توانست به موقعیت جدید تغییر مکان داده و باعث میشود که بین موقعیت نهایی و موقعیت مطلوب اختلاف ایجاد شود. بنابراین ضروری است که به هنگام راهاندازی موتورهای استپر از الگوریتمهای حرکت شتابدار به هنگام حرکت و توقف موتور استفاده کرد.
۲- الگوریتم پروفیل سرعت ذوزنقهای
چنانچه به منظور رسیدن موتور استپر به موقعیتی مطلوب با سرعتی مشخص فرکانس پالس اعمالی از سمت کنترلکننده به درایور به صورت ناگهانی افزایش یابد موتور استپر نمیتواند تمامی پالسهای اعمالی را دنبال کرده و تعدادی پالس از دست خواهد رفت(ایجاد اختلاف بین موقعیت نهایی و موقعیت مطلوب). در بدترین شرایط چنانچه فرکانس پالس اعمالی بیش از حد زیاد باشد موتور دچار استال و رزونانس شده و اصلا حرکت نخواهد کرد.
به منظور جلوگیری از این رفتار نامطلوب بایستی به هنگام اعمال پالس به درایور فرکانس آن با نرخی مشخص افزایش یابد تا هیچ گونه پله یا پالسی از دست نرود. همچنین قبل از رسیدن موتور به موقعیت مطلوب نیز باید فرکانس پالس اعمالی به تدریج کاهش یافته تا مانع از رد کردن موقعیت نهایی شود. این تغییر نرخ فرکانس به روشهای مختلفی از جمله روش پروفیل سرعت ذوزنقهای و پروفیل سرعت اس – شکل صورت میپذیرد.
۳- مقایسه الگوریتم پروفیل سرعت ذوزنقهای و پروفیل سرعت اس – شکل
در شکل ۲ این دو روش با هم مقایسه شدهاند.
در عمل پروفیل سرعت ذوزنقهای به دلیل ایجاد پدیدهای به نام جرک کمتر استفاده میشود. جرک عبارت است از نرخ تغییر شتاب که در روش پروفیل سرعت ذوزنقهای در گوشههای منحنی نرخ تغییر شتاب بینهایت بوده و این خود باعث ایجاد ارتعاش در آن نقاط در موتور خواهد شد. در روش پروفیل سرعت اس ـ شکل شتاب همواره به صورت پیوسته تغییر میکند و مانع از ایجاد پدیده جرک میشود.
۴- پیادهسازی الگوریتم پروفیل سرعت ذوزنقهای در میکروکنترلر به کمک واحد تایمر
برای اینکه بتوانیم شفت یک موتور استپر را به اندازه معینی مثلا 45 درجه و با سرعتی مشخص بچرخانیم باید تعداد محدودی پالس با فرکانسی ثابت تولید کنیم. برای تولید پالس PWM میتوانیم از واحد تایمر استفاده کنیم. مدولاسیون پهنای باند(PWM) روشی است که در آن میتوان به کمک واحد تایمر میکروکنترلر یک سیگنال با فرکانس و دیوتی سایکل (نسبت زمان روشن بودن به کل زمان پالس) مطلوب تولید کرد. فرکانس پالس به کمک رجیستر ARR و دیوتی سایکل به کمک رجیستر CCR تعیین میشود.
بعد از تعریف مقادیر، رجیسترهای ARR و CCR و فعال کردن تایمر پایه سخت افزاری متناظر شروع به تولیدکردن پالسی با فرکانس و دیوتی سایکل تعیین شده خواهد کرد. برای اینکه بتوانیم تعداد مشخصی پالس تولید کنیم میتوانیم از تابع HAL_TIM_PWM_PulseFinishedCallback استفاده کنیم به این صورت که پس از تولید هر پالس این تابع فراخوانی خواهد شد و با تعریف یک متغییر شمارنده و رسیدن آن به مقدار مطلوب تایمر را متوقف نماییم.
چنانچه روش ذکر شده را پیادهسازی کنیم سیگنالی خواهیم داشت با تعداد محدودی پالس ولی فرکانس ثابت که باعث میشود از همان ابتدای کار موتور با ماکزیمم سرعت شروع به کار کرده و علاوه بر ایجاد ضربه در لحظه شروع و توقف در صورتی که فرکانس پالس بیش از زیاد باشد منجر به رزونانس شده و موتور تنها درجا شروع به ارتعاش کرده و حرکت نخواهد کرد.
برای حل این مشکل از پروفیل سرعت ذوزنقهای بهره میبریم که در آن فرکانس با شیبی ثابت تا رسیدن به فرکانس نهایی شروع به افزایش میکند. همچنین هنگام توقف نیز فرکانس با شیبی ثابت کم خواهد شد. برای پیادهسازی این روش کافی ست تعداد کل پالسها را مطابق شکل۲ الف به سه قست تقسیم کنیم. در زمان ta کافی است مقدار رجیستر ARR را از یک مقدار اولیه تا طی شدن تعداد پالسهای مرحله اول کاهش دهیم (کاهش مقدار رجیستر متناظر با افزایش فرکانس پالس میباشد). در زمان tb مقدار رجیستر ARR ثابت میماند. و در نهایت در زمان tc مقدار رجیستر تا طی شدن تعداد پالسهای مرحله سوم افزایش خواهد یافت. در هر سه مرحله نیز مقدار رجیستر CCR را نصف رجیستر ARR در نظر میگیریم. در شکل ۳، شکل موج پالس تولید شده به کمک پروفیل سرعت ذوزنقهای بعد از پیادهسازی نمایش داده شده است.
۵- جمع بندی
کنترل سرعت و موقعیت موتور استپر با روش پروفیل سرعت ذوزنقهای باعث کاهش ارتعاشات به هنگام شروع بهکار و توقف موتور خواهد شد. همچنین در صورت استفاده از این روش میتوان به سرعتهایی تا ۲ الی ۳ برابر حالت معمولی دست پیدا کرد. کنترلر AMC_11 تولیدی شرکت ربات سازان قادر است تا ۴ موتور استپر را کنترل نماید. در این کنترلر از روش پروفیل سرعت ذوزنقهای استفاده شده است. برای اطلاع از جزئیات این محصول و مشاوره رایگان با شرکت تماس حاصل فرمایید.
ارتباط با ما
به منظور مشاوره و ارتباط با ما؛ در تلگرام به آیدی زیر پیام بدهید:
یا با شماره تلفن:
تماس حاصل فرمایید.
سایر راههای ارتباطی را در صفحه «تماس با شرکت رباتسازان» در اختیار شماست.
2 Comments
سلام ببخشید ممکنه کد و نقشه راه اندازی به صورت ذوزنقه ای و اس شکل رو هم قرار بدید؟با آردوئینو
سلام. کد آردوئینوش رو نداریم. واسه یکی از محصولات الگوریتم پروفیل سرعت ذورنقه ای با زبان C پیاده سازی شده.