کنترل سروو موتور با PLC چیست؟
کنترل سروو موتور یکی از پایههای اصلی Motion Control در اتوماسیون صنعتی است. هر جا که ماشین علاوه بر روشن و خاموش کردن موتور به موقعیت دقیق، سرعت کنترلشده، شتاب و توقف دقیق، حرکت هماهنگ چند محور یا تکرارپذیری بالا نیاز داشته باشد، سیستم Servo میتواند مورد استفاده قرار گیرد.
برخلاف یک سیستم ساده موتور و کنتاکتور، در سیستم سروو فقط دستور «حرکت کن» داده نمیشود. سیستم باید بداند:
- موتور در چه موقعیتی قرار دارد؟
- با چه سرعتی در حال حرکت است؟
- آیا به موقعیت فرمان دادهشده رسیده است؟
- آیا بار باعث ایجاد خطای موقعیت شده است؟
- چه مقدار گشتاور برای حرکت موردنیاز است؟
- آیا موتور با سرعت و شتاب موردنظر حرکت میکند؟
برای پاسخ به این موارد، سروو از Feedback استفاده میکند.
در یک Servo System معمولی، Servo Motor، Encoder، Servo Drive و Controller در کنار مکانیزم مکانیکی ماشین یک سیستم کنترل حلقهبسته تشکیل میدهند. Encoder موقعیت و سرعت را اندازهگیری میکند و Servo Drive بر اساس اختلاف بین مقدار فرمان و مقدار واقعی، عملکرد موتور را اصلاح میکند.
اجزای اصلی یک سیستم Servo Control
یک سیستم سروو صنعتی معمولاً از بخشهای زیر تشکیل میشود:
PLC یا Motion Controller
PLC یا Motion Controller فرمان حرکت را ایجاد میکند.
برای مثال PLC ممکن است فرمان دهد:
Move to Position = 250.00 mm
Speed = 500 mm/s
Acceleration = 1000 mm/s²
Deceleration = 1000 mm/s²
در یک سیستم ساده، PLC ممکن است فرمان Position را به صورت Pulse Train به Servo Drive ارسال کند.
در سیستمهای پیشرفتهتر، کنترلر میتواند از شبکه Motion مانند EtherCAT یا CANopen استفاده کند.
Servo Drive
Servo Drive رابط بین Controller و Servo Motor است.
Drive:
- فرمان حرکت را دریافت میکند.
- جریان موتور را کنترل میکند.
- Feedback Encoder را میخواند.
- سرعت واقعی را محاسبه میکند.
- موقعیت را کنترل میکند.
- گشتاور موردنیاز را ایجاد میکند.
- خطاها و وضعیت سیستم را مدیریت میکند.
در مستندات Delta، Servo Driveهای خانواده ASDA بسته به مدل میتوانند حالتهای Position، Speed و Torque را ارائه کنند. برای نمونه ASDA-A3 این سه حالت پایه را دارد و علاوه بر آن حالتهای ترکیبی و ارتباطی نیز ارائه میکند.
Servo Motor
Servo Motor موتور مخصوص سیستم کنترل حلقهبسته است.
در سرووهای صنعتی معمولاً Encoder نیز روی موتور قرار دارد. Encoder اطلاعات مربوط به حرکت شفت را در اختیار Servo Drive قرار میدهد. سرووموتورهای صنعتی رایج از ساختار Brushless و Permanent Magnet استفاده میکنند.
Encoder
Encoder یکی از مهمترین اجزای سیستم سروو است.
Encoder میتواند اطلاعاتی مانند:
- Position
- Speed
- Direction
را در اختیار سیستم کنترل قرار دهد.
در سرووها از Encoderهای مختلفی استفاده میشود و بسته به طراحی سیستم ممکن است Incremental یا Absolute باشند. برخی سیستمها نیز از Encoder خارجی برای اندازهگیری مستقیم موقعیت مکانیزم استفاده میکنند.
Mechanical System
Servo فقط موتور نیست.
بعد از موتور ممکن است تجهیزات زیر قرار داشته باشند:
- Gearbox
- Ball Screw
- Pulley
- Belt
- Rack & Pinion
- Coupling
- Linear Guide
- Lead Screw
- Rotary Table
بنابراین انتخاب سروو باید بر اساس کل مکانیزم انجام شود، نه فقط توان موتور.
Servo Control چگونه کار میکند؟
مفهوم اصلی Servo Control بسیار ساده است:
Command
↓
Controller
↓
Servo Drive
↓
Servo Motor
↓
Mechanical Load
↓
Encoder Feedback
└──────────────→ Servo Drive
کنترلر یک مقدار هدف ایجاد میکند.
برای مثال:
Target Position = 100 mm
Encoder مقدار واقعی را گزارش میکند:
Actual Position = 97 mm
بنابراین خطای موقعیت برابر است با:
Position Error = Target - Actual
در این مثال:
Position Error = 100 - 97
= 3 mm
Servo System تلاش میکند این خطا را کاهش دهد.
این فرآیند به صورت پیوسته و بسیار سریع انجام میشود. ساختارهای Servo Control میتوانند شامل حلقههای Position، Speed و Torque باشند.
حلقههای کنترل در Servo System
یکی از مهمترین موضوعات در Servo Control، شناخت حلقههای کنترل است.
Torque Loop
داخلیترین بخش کنترل معمولاً مربوط به جریان و گشتاور است.
بهصورت مفهومی:
Torque Command
↓
Current/Torque Control
↓
Motor
گشتاور موتور به جریان موتور ارتباط دارد و Drive جریان لازم برای ایجاد گشتاور موردنیاز را کنترل میکند.
Speed Loop
در حلقه سرعت، سرعت واقعی موتور با سرعت موردنظر مقایسه میشود.
Speed Command
↓
Speed Loop
↓
Torque Command
↓
Motor
↑
Encoder Feedback
اگر سرعت واقعی کمتر از مقدار فرمان باشد، کنترلر میتواند فرمان گشتاور را افزایش دهد.
Position Loop
در Position Control، موقعیت هدف با موقعیت واقعی مقایسه میشود.
Position Command
↓
Position Loop
↓
Speed Command
↓
Speed Loop
↓
Torque Command
↓
Motor
↑
Encoder
در سیستمهای Position Servo، حلقه موقعیت معمولاً یک حلقه بیرونی نسبت به حلقه سرعت و گشتاور است. مستندات کنترل Motion شرکتهای صنعتی نیز همین ساختار حلقههای Position، Velocity و Torque را نشان میدهند.
سه روش اصلی کنترل سروو
Servo Drive معمولاً میتواند در یکی از سه حالت اصلی کار کند:
Position Control
در Position Control هدف اصلی رسیدن موتور به یک موقعیت مشخص است.
مثلاً:
Move to 100 mm
یا:
Rotate 180°
یا:
Move 50000 pulses
این حالت در ماشینهای زیر بسیار رایج است:
- CNC
- دستگاه برش
- بستهبندی
- Labeling
- Pick & Place
- ماشینهای چاپ
- ماشینهای پانچ
- سیستمهای Indexing
Delta برای نمونه در ASDA-A3 حالت Position را به دو روش Terminal/Pulse و Register/PR ارائه میکند.
Speed Control
در Speed Control هدف کنترل سرعت موتور است.
برای مثال:
Target Speed = 1500 RPM
Servo Drive تلاش میکند موتور را در سرعت موردنظر نگه دارد.
Speed Control برای مواردی مانند:
- رولر
- نوار نقاله
- سیستمهای Feed
- ماشینهای پردازش
- سیستمهای چرخشی
کاربرد دارد.
در ASDA-A3 Delta، Speed Command بسته به حالت میتواند از Register یا ورودی آنالوگ ±10V دریافت شود.
Torque Control
در Torque Control هدف اصلی کنترل گشتاور است.
مثلاً در سیستمهایی که کشش یا Tension اهمیت دارد، گشتاور موتور میتواند متغیر اصلی کنترل باشد.
کاربردهای معمول:
- Winding
- Unwinding
- Tension Control
- Roller Systems
- بعضی ماشینهای پردازش مواد
Delta نیز در خانواده ASDA حالت Torque Control را ارائه میکند و بسته به مدل میتوان فرمان گشتاور را از Register یا ورودی آنالوگ دریافت کرد.
تفاوت Servo Motor و موتور معمولی با اینورتر
این دو سیستم ممکن است ظاهراً شبیه باشند اما هدف کنترل آنها متفاوت است.
موتور + اینورتر
در یک سیستم ساده:
PLC
↓
Inverter
↓
AC Motor
هدف میتواند کنترل سرعت موتور باشد.
اما اگر Feedback خارجی اضافه شود، سیستم میتواند قابلیتهای کنترل دقیقتری پیدا کند.
Servo System
ساختار معمول:
PLC / Motion Controller
↓
Servo Drive
↓
Servo Motor
↓
Encoder
└────────→ Drive
در این سیستم Feedback بخشی اساسی از کنترل است.
Servo System برای کاربردهایی که موقعیت، سرعت و پاسخ دینامیکی اهمیت بیشتری دارند طراحی شده است.
PLC چگونه سروو را کنترل میکند؟
روش کنترل به PLC، Servo Drive و سطح Motion Control سیستم بستگی دارد.
سه ساختار بسیار رایج عبارتاند از:
Pulse Train
PLC خروجی پالس به Servo Drive میدهد.
PLC
│
├── Pulse
└── Direction
↓
Servo Drive
↓
Servo Motor
تعداد پالسها میتواند با مقدار حرکت ارتباط داشته باشد و فرکانس پالس نیز با سرعت فرمان مرتبط است.
این روش برای سیستمهای تکمحوره و کاربردهای ساده تا متوسط بسیار رایج است.
Analog Command
در برخی Servo Driveها، فرمان سرعت یا گشتاور میتواند با سیگنال آنالوگ ارسال شود.
برای نمونه:
0 ... 10 V
یا در برخی مدلها:
-10 ... +10 V
Delta در مستندات ASDA-A3 برای برخی حالتهای Speed و Torque استفاده از ورودی ±10V را ذکر میکند.
Industrial Network
در سیستمهای Motion پیشرفته، PLC و Servo Drive میتوانند از طریق شبکه صنعتی با یکدیگر ارتباط برقرار کنند.
نمونهها:
- EtherCAT
- CANopen
- DMCNET
برای مثال Delta در ASDA-A3 حالتهای ارتباطی CANopen، DMCNET و EtherCAT را مستند کرده است.
در چنین سیستمهایی اطلاعات Motion میتواند از طریق شبکه منتقل شود و نیاز به سیمکشی تعداد زیادی سیگنال مجزا کاهش پیدا کند.
کنترل سروو با Pulse Train چیست؟
یکی از مهمترین روشهای آموزش Servo Control برای PLC، استفاده از Pulse Train است.
فرض کنید Servo Drive برای یک دور موتور به:
10000 pulses/rev
نیاز داشته باشد.
اگر PLC:
10000 pulses
ارسال کند، در این مثال یک دور حرکت ایجاد میشود.
اگر:
5000 pulses
ارسال شود:
5000 / 10000 = 0.5 revolution
یعنی:
180°
البته مقدار واقعی حرکت باید بر اساس تنظیمات Electronic Gear و پارامترهای همان Servo Drive محاسبه شود.
محاسبه سرعت سروو با فرکانس پالس
اگر تعداد پالس موردنیاز برای یک دور را PPR_command در نظر بگیریم:
مثلاً:
PPR = 10000 pulse/rev
Frequency = 5000 Hz
بنابراین:
نتیجه:
RPM = 30
یعنی در این مثال فرکانس 5 kHz معادل 30 RPM است.
محاسبه فرکانس پالس موردنیاز برای سرعت مشخص
فرمول معکوس:
مثلاً اگر:
RPM = 600
PPR = 10000
باشد:
نتیجه:
Frequency = 100000 Hz
یعنی:
100 kHz
بنابراین قبل از طراحی سیستم باید حداکثر فرکانس Pulse Output در PLC بررسی شود.
Electronic Gear چیست؟
یکی از مهمترین تنظیمات Servo Position Control، Electronic Gear است.
Electronic Gear به ما اجازه میدهد رابطه بین پالس ورودی و حرکت موتور را تنظیم کنیم.
به زبان ساده:
PLC Pulse
↓
Electronic Gear
↓
Position Command
↓
Servo Motor
Delta در مستندات سروو خود Electronic Gear را برای تنظیم Resolution حرکت معرفی میکند. در برخی مدلها این نسبت با Numerator و Denominator تنظیم میشود.
بهصورت مفهومی:
که در آن:
N= NumeratorM= Denominator
است.
مثال Electronic Gear
فرض کنیم سیستم طوری تنظیم شده که:
10000 pulses = 1 revolution
و میخواهیم:
5000 pulses = 0.5 revolution
در این حالت رابطه مستقیم است.
اما اگر مکانیزم به گونهای باشد که با یک دور موتور، مثلاً:
5 mm
حرکت خطی داشته باشیم، میتوانیم تعداد پالس لازم برای هر میلیمتر را محاسبه کنیم.
محاسبه حرکت خطی با Servo
فرض کنید:
Ball Screw Lead = 10 mm/rev
Servo Resolution = 10000 pulses/rev
بنابراین:
نتیجه:
1000 pulses/mm
برای حرکت:
250 mm
نیاز داریم:
پس:
250000 pulses
این یکی از کاربردهای بسیار مهم Servo + PLC در ماشینهای Linear Motion است.
Servo Position و دقت واقعی
یک اشتباه رایج این است که تصور کنیم اگر Encoder رزولوشن بالایی داشته باشد، دقت نهایی ماشین نیز دقیقاً برابر همان رزولوشن خواهد بود.
در عمل دقت سیستم به عوامل مختلفی بستگی دارد:
- Encoder
- Servo Tuning
- Mechanical Backlash
- Ball Screw
- Coupling
- Belt
- Gearbox
- Machine Rigidity
- Load
- Vibration
- Temperature
- External Disturbance
به همین دلیل باید بین Resolution، Repeatability و Accuracy تفاوت قائل شد.
در سیستمهای دارای Feedback روی موتور، خطاهای مکانیکی بعد از موتور ممکن است مستقیماً توسط Encoder موتور اندازهگیری نشوند. در کاربردهای با دقت بسیار بالا میتوان از Feedback خارجی نیز استفاده کرد.
Homing در سیستم Servo چیست؟
در بسیاری از ماشینها PLC پس از روشن شدن باید بداند محور دقیقاً کجاست.
این فرآیند را معمولاً Homing یا Reference Search مینامیم.
ساختار ساده:
Machine Start
↓
Servo ON
↓
Homing
↓
Find Home Sensor / Reference
↓
Set Machine Zero
↓
Ready
روش Homing بسته به Servo Drive و طراحی ماشین میتواند متفاوت باشد.
ممکن است از:
- Home Sensor
- Limit Sensor
- Encoder Index
- Mechanical Reference
استفاده شود.
Servo ON چیست؟
Servo Drive معمولاً دارای وضعیت Enable یا Servo ON است.
در این حالت Drive اجازه میدهد موتور تحت کنترل سیستم Servo قرار گیرد.
ساختار ساده:
Safety OK
↓
Servo ON
↓
Drive Ready
↓
Motion Command
در طراحی واقعی ماشین، Servo ON نباید بهتنهایی به عنوان جایگزین مدار ایمنی در نظر گرفته شود.
عملکردهای ایمنی مانند STO و مدارهای Emergency Stop باید مطابق Manual تجهیزات و استانداردهای ماشین طراحی شوند.
Servo Tuning چیست؟
یکی از مهمترین مراحل راهاندازی Servo، Tuning است.
حتی اگر:
- موتور درست انتخاب شده باشد،
- Encoder درست کار کند،
- PLC درست برنامهنویسی شده باشد،
باز هم تنظیم نامناسب Gain میتواند باعث رفتار نامطلوب شود.
Delta در مستندات ASDA-B3 برای Tuning به Response Bandwidth و Gain Adjustment اشاره میکند و توضیح میدهد که افزایش بیش از حد Response میتواند باعث Mechanical Resonance شود.
Gain در Servo Control چیست؟
Gain مشخص میکند سیستم با چه شدتی به خطای ایجادشده واکنش نشان دهد.
بهصورت ساده:
Low Gain
↓
Response slower
↓
Possible position error
و:
Very High Gain
↓
Fast response
↓
Possible vibration / resonance
بنابراین هدف صرفاً افزایش Gain نیست؛ هدف رسیدن به پاسخ مناسب برای مکانیزم واقعی ماشین است.
Auto Tuning چیست؟
بعضی Servo Driveها قابلیت Auto Tuning دارند.
در این روش Drive میتواند با بررسی رفتار موتور و بار، پارامترهای مناسبتری را برای کنترل پیشنهاد یا تنظیم کند.
Delta برای خانواده ASDA-B3 قابلیت Auto Tuning و ابزارهای تحلیل سیستم را به عنوان بخشی از امکانات سروو معرفی میکند.
با این حال، Auto Tuning جایگزین بررسی مکانیک ماشین و تنظیم صحیح سیستم نیست.
Mechanical Resonance در Servo چیست؟
یکی از مشکلات رایج سیستمهای Servo، Resonance یا تشدید مکانیکی است.
علائم ممکن است شامل موارد زیر باشد:
- صدای غیرعادی
- لرزش
- Oscillation
- افزایش خطای موقعیت
- حرکت ناپایدار
- گرم شدن موتور
- رفتار نامناسب هنگام Acceleration/Deceleration
علت میتواند از مواردی مانند:
- سختی مکانیکی پایین
- لقی
- کوپلینگ نامناسب
- ساختار مکانیکی ضعیف
- Gain نامناسب
باشد.
به همین دلیل Tuning باید همراه با بررسی مکانیکی انجام شود.
Acceleration و Deceleration در سروو
سرعت تنها پارامتر حرکت نیست.
یک حرکت واقعی معمولاً شامل:
Acceleration
↓
Constant Speed
↓
Deceleration
↓
Stop
است.
برای مثال:
0 RPM
↓
Acceleration
↓
1500 RPM
↓
Constant Speed
↓
Deceleration
↓
0 RPM
اگر Acceleration بیش از حد بالا باشد، موتور باید گشتاور بیشتری تولید کند.
در ماشینهای مکانیکی حساس، شتاب بالا میتواند باعث:
- لرزش
- Slip
- Mechanical Shock
- Overshoot
شود.
S-Curve در Servo Motion چیست؟
در برخی سیستمهای Motion میتوان به جای تغییر ناگهانی شتاب، از S-Curve استفاده کرد.
بهصورت مفهومی:
Acceleration
______
/
/
/
در مقابل حرکت خطی ساده:
Acceleration
────────────
S-Curve باعث نرمتر شدن تغییرات حرکت میشود و میتواند برای مکانیزمهایی که نسبت به Shock و Jerk حساس هستند مفید باشد.
Delta در ASDA-B3 برای Position Command قابلیت S-Curve filtering را مستند کرده و آن را برای نرمتر شدن حرکت و کاهش jerk معرفی میکند.
Servo و Encoder چگونه با یکدیگر کار میکنند؟
در یک سیستم Servo، Encoder معمولاً به Servo Drive متصل است.
Servo Motor
│
└── Encoder
│
↓
Servo Drive
│
↓
Control Loop
Encoder مقدار واقعی حرکت را گزارش میکند.
Drive از این اطلاعات برای کنترل استفاده میکند.
این موضوع تفاوت مهم Servo با بسیاری از سیستمهای Open Loop مانند Stepper ساده است.
در یک Stepper Open Loop ممکن است کنترلر فرض کند موتور حرکت موردنظر را انجام داده است؛ اما در سیستم Servo، Feedback برای بررسی حرکت واقعی استفاده میشود.
Incremental Encoder و Absolute Encoder
Incremental Encoder
Incremental Encoder معمولاً اطلاعات تغییر موقعیت را به صورت پالس ارائه میکند.
Absolute Encoder
Absolute Encoder میتواند موقعیت مطلق را در اختیار سیستم قرار دهد.
در Servo Systems بسته به طراحی Drive و Motor ممکن است از Encoderهای مختلف استفاده شود. Delta برای ASDA-B3 از Encoderهای Incremental و Absolute با رزولوشن 24-bit در مشخصات خود نام میبرد.
کنترل چند سروو با PLC
در ماشینهای صنعتی ممکن است چندین Servo Axis داشته باشیم.
مثلاً:
PLC / Motion Controller
│
├── Axis 1 → Servo
├── Axis 2 → Servo
├── Axis 3 → Servo
└── Axis 4 → Servo
در این حالت فقط کنترل مستقل هر موتور کافی نیست.
ممکن است نیاز باشد محورها:
- Synchronize
- Electronic Gear
- Electronic Cam
- Coordinated Motion
انجام دهند.
Electronic Gear بین دو محور
فرض کنید محور Master با سرعت مشخص حرکت میکند و محور Slave باید با نسبت مشخص حرکت کند.
مثلاً:
Master = 1000 RPM
Ratio = 0.5
پس:
نتیجه:
Slave = 500 RPM
در سیستمهای Motion واقعی این نسبت میتواند برای هماهنگی مکانیکی یا فرآیند تولید استفاده شود.
Electronic Cam چیست؟
Electronic Cam زمانی کاربرد دارد که حرکت یک محور باید بر اساس موقعیت محور دیگر تعریف شود.
مثلاً:
Master Position
↓
Electronic Cam Profile
↓
Slave Position
این روش در ماشینهایی مانند:
- بستهبندی
- Cutting
- Printing
- Filling
- Labeling
- Rotary Machinery
کاربرد دارد.
Delta نیز در برخی خانوادههای ASDA مانند A2 قابلیتهای Motion پیشرفته از جمله Electronic Cam را ارائه کرده است.
کنترل سروو با EtherCAT
در سیستمهای چندمحوره، EtherCAT یکی از روشهای مهم ارتباط Motion است.
ساختار:
PLC / Motion Controller
│
EtherCAT
│
┌────┼────┐
↓ ↓ ↓
Servo Servo Servo
#1 #2 #3
مزیت چنین معماری این است که Command و Feedback و اطلاعات وضعیت محورهای مختلف میتوانند از طریق شبکه صنعتی تبادل شوند.
Delta برای خانوادههای مختلف Servo از جمله ASDA-B3 و ASDA-A3 پشتیبانی از EtherCAT را ارائه میکند؛ اما امکانات دقیق و تعداد محورهای قابل کنترل باید بر اساس مدل Controller و Drive بررسی شود.
CANopen در Servo Control
CANopen نیز یکی از روشهای ارتباطی مورد استفاده در سیستمهای Motion است.
در برخی Servo Driveهای Delta، CANopen برای دریافت Command و تنظیمات و تبادل اطلاعات محور استفاده میشود.
ساختار کلی:
PLC
│
CANopen
│
Servo Drive
│
Motor
Pulse Train یا EtherCAT؛ تفاوت معماری
Pulse Train
ساختار سادهتر:
PLC
↓
Pulse + Direction
↓
Servo Drive
↓
Motor
برای یک یا چند محور ساده میتواند مناسب باشد، مشروط به اینکه PLC خروجی Motion مناسب داشته باشد.
EtherCAT
ساختار شبکهای:
Motion Controller
↓
EtherCAT
↓
Servo Drive 1
↓
Servo Drive 2
↓
Servo Drive 3
برای سیستمهای Motion چندمحوره و هماهنگ، معماری شبکهای میتواند امکانات بیشتری ارائه دهد.
انتخاب روش باید بر اساس PLC، Drive، تعداد محور، سرعت Motion، نیاز Synchronization و امکانات نرمافزاری انجام شود.
انتخاب Servo Motor چگونه انجام میشود؟
انتخاب Servo فقط بر اساس kW انجام نمیشود.
پارامترهای مهم شامل موارد زیر هستند:
Load Torque
گشتاور موردنیاز بار باید مشخص شود.
Required Speed
حداکثر و سرعت کاری محور باید مشخص شود.
Acceleration
شتاب موردنیاز روی گشتاور لازم تأثیر مستقیم دارد.
Inertia
Inertia بار یکی از پارامترهای بسیار مهم Servo Sizing است.
Duty Cycle
مشخص کنید موتور چه مدت در چه سرعت و گشتاوری کار میکند.
Mechanical Transmission
اگر Gearbox یا Pulley یا Ball Screw وجود دارد، نسبت انتقال باید در محاسبات لحاظ شود.
Encoder
نوع و رزولوشن Feedback باید با Drive سازگار باشد.
Brake
در محورهای عمودی ممکن است Servo Motor دارای Brake موردنیاز باشد.
Environment
شرایط محیطی مانند:
- دما
- گردوغبار
- رطوبت
- لرزش
- فضای نصب
باید بررسی شود.
محاسبه نسبت انتقال Servo
فرض کنید موتور با سرعت:
3000 RPM
کار میکند و Gearbox نسبت:
10:1
دارد.
در حالت ایدهآل:
بنابراین:
Output RPM = 300 RPM
در محاسبات واقعی باید راندمان و مشخصات واقعی انتقال نیز در نظر گرفته شوند.
محاسبه حرکت Ball Screw
فرض کنید:
Ball Screw Lead = 5 mm/rev
و موتور:
1000 RPM
باشد.
سرعت خطی ایدهآل:
پس:
83.33 mm/s
یا:
5 m/min
است.
این محاسبه یکی از پایههای مهم طراحی Servo Axis است.
Servo Alarm چیست؟
Servo Drive برای حفاظت و تشخیص مشکلات، Alarm و Warning دارد.
بسته به مدل Drive، خطاها میتوانند مربوط به مواردی مانند:
- Over Current
- Over Voltage
- Overload
- Encoder Error
- Position Error
- Communication Error
- Over Temperature
- Emergency/Safety State
باشند.
کد دقیق Alarm باید همیشه از Manual همان Servo Drive بررسی شود.
نباید فقط بر اساس نام یک Alarm در یک خانواده Servo، نتیجه را به تمام مدلها تعمیم داد.
Position Error یا Following Error چیست؟
یکی از پارامترهای مهم سیستم Motion، اختلاف بین موقعیت فرمان و موقعیت واقعی است.
مثلاً:
Command = 10000 pulses
Actual = 9950 pulses
پس:
Error = 50 pulses
اگر این خطا از محدوده مجاز بیشتر شود، Drive یا Controller ممکن است Alarm ایجاد کند؛ مقدار دقیق حد خطا وابسته به سیستم و تنظیمات آن است.
چرا Servo گاهی لرزش دارد؟
دلایل متعددی ممکن است وجود داشته باشد:
Gain نامناسب
Gain زیاد یا کم میتواند پاسخ سیستم را نامناسب کند.
Mechanical Resonance
ساختار مکانیکی ممکن است در فرکانس خاصی تشدید شود.
Backlash
لقی مکانیکی میتواند باعث خطای موقعیت شود.
Coupling
کوپلینگ نامناسب میتواند باعث vibration شود.
Load Inertia
اگر Inertia بار نسبت به موتور مناسب نباشد، تنظیم سیستم دشوارتر میشود.
Acceleration زیاد
شتاب زیاد میتواند نیروی مکانیکی زیادی ایجاد کند.
چرا Servo به موقعیت صحیح نمیرسد؟
اگر Servo Position Error دارد، موارد زیر باید بررسی شوند:
Mechanical Problem
- لقی
- گیرکردن مکانیزم
- اصطکاک زیاد
- Ball Screw
- Belt
- Gear
Encoder
- اتصال Encoder
- Feedback
- کابل
- تنظیمات Drive
Electronic Gear
تنظیم نادرست Electronic Gear میتواند نسبت حرکت را تغییر دهد.
PLC Pulse
ممکن است تعداد پالس یا فرکانس خروجی PLC صحیح نباشد.
Servo Tuning
Gain و Tuning نامناسب نیز میتواند باعث خطای حرکت شود.
برنامه PLC برای کنترل سروو
ساختار برنامه به نوع PLC و روش کنترل بستگی دارد.
در Pulse Train Control معمولاً برنامه شامل بخشهایی مانند:
Enable Servo
↓
Home Axis
↓
Set Target Position
↓
Set Speed
↓
Execute Move
↓
Wait Motion Done
↓
Next Position
است.
برای مثال یک Sequence ساده:
START
↓
Servo ON
↓
Homing
↓
Home Complete
↓
Move 100 mm
↓
Motion Done
↓
Move 250 mm
↓
Motion Done
↓
Return Home
دستورهای واقعی PLC برای این فرآیند به برند و مدل PLC و Motion Module بستگی دارند و نباید یک Instruction خاص را برای تمام PLCها یکسان در نظر گرفت.
نکات مهم در برنامهنویسی Servo
قبل از Motion، Servo Ready را بررسی کنید
PLC بهتر است قبل از ارسال فرمان حرکت، وضعیت Drive را بررسی کند.
Home Complete را بررسی کنید
اگر محور نیاز به Reference دارد، قبل از عملیات اصلی باید وضعیت Home تأیید شود.
Limitها را در نظر بگیرید
Limit Switchها و Software Limitها باید در طراحی محور لحاظ شوند.
Motion Done را بررسی کنید
بعد از اجرای Move، برنامه باید بداند حرکت کامل شده است.
Alarm را بررسی کنید
در صورت Alarm، اجرای Motion بعدی نباید بدون بررسی وضعیت سیستم انجام شود.
Servo Control در ماشین بستهبندی
Servo یکی از کاربردهای مهم خود را در ماشینهای Packaging دارد.
برای مثال:
PLC
↓
Servo Axis
↓
Film Feed
↓
Encoder / Registration
↓
Cutting
Servo میتواند Film را با طول مشخص حرکت دهد و سپس متوقف کند.
اگر:
Required Length = 250 mm
باشد، سیستم میتواند این مقدار را به Position Command تبدیل کند.
Servo در دستگاه برش
در ماشین Cutting:
Material Feed
↓
Servo Motor
↓
Encoder Feedback
↓
PLC
↓
Cut Command
Servo میتواند طول Feed را کنترل کند.
برای مثال:
Cut Length = 500 mm
پس PLC باید محور Feed را به اندازه 500 mm حرکت دهد.
Servo در دستگاه Labeling
در Labeling، هماهنگی بین:
- Conveyor
- Product
- Label Roller
اهمیت زیادی دارد.
در چنین سیستمهایی ممکن است Servoها با Encoder و Electronic Cam یا Electronic Gear هماهنگ شوند.
Servo در سیستمهای Indexing
در ماشین Indexing محور باید از یک Position به Position دیگر حرکت کند.
مثلاً:
0°
↓
90°
↓
180°
↓
270°
↓
360°
Servo برای چنین کاربردی بسیار مناسب است زیرا Position Feedback در سیستم وجود دارد.
تفاوت Servo با Stepper
Stepper
در یک سیستم Stepper Open Loop:
PLC
↓
Pulse
↓
Stepper Driver
↓
Stepper Motor
Feedback الزاماً وجود ندارد.
Servo
در Servo:
PLC
↓
Servo Drive
↓
Servo Motor
↑
Encoder
Feedback در کنترل نقش اساسی دارد.
در نتیجه این دو سیستم نباید فقط بر اساس «تعداد پالس» با یکدیگر مقایسه شوند. Servo یک سیستم Closed Loop است، در حالی که Stepper میتواند بهصورت Open Loop نیز کار کند.
چه زمانی Servo انتخاب میشود؟
Servo معمولاً زمانی مطرح میشود که ماشین به ترکیبی از موارد زیر نیاز داشته باشد:
- Position Control
- Speed Control
- Torque Control
- High Dynamic Response
- Repeatable Motion
- Synchronization
- Feedback
- Multi-Axis Motion
اما انتخاب نهایی باید با توجه به مشخصات واقعی ماشین و الزامات Motion انجام شود.
معماری کامل یک سیستم Servo
یک معماری کامل میتواند به شکل زیر باشد:
┌──────────────────┐
│ PLC │
│ Motion Controller│
└────────┬─────────┘
│
Pulse / EtherCAT
│
▼
┌──────────────────┐
│ Servo Drive │
└────────┬─────────┘
│
Power Output
│
▼
┌──────────────────┐
│ Servo Motor │
└────────┬─────────┘
│
Mechanical
Load
│
▼
Encoder
│
└──────────►
Feedback
این ساختار نشان میدهد که Servo Control فقط «PLC + موتور» نیست؛ بلکه یک سیستم کامل Motion Control است.
چکلیست راهاندازی Servo
قبل از راهاندازی واقعی محور، این موارد را بررسی کنید:
Hardware
- Servo Motor صحیح
- Servo Drive صحیح
- Encoder
- کابل Motor
- کابل Encoder
- Power
- Grounding
- Mechanical Coupling
Parameter
- Motor Model
- Control Mode
- Electronic Gear
- Maximum Speed
- Acceleration
- Deceleration
- Gain
- Encoder Settings
PLC
- Pulse Output یا Motion Network
- Direction
- Enable
- Alarm Input
- Ready Signal
- Home
- Limit
- Motion Done
Mechanical
- Load
- Inertia
- Gear Ratio
- Ball Screw
- Belt
- Coupling
- Backlash
- Mechanical Limits
Safety
- Emergency Stop
- STO در صورت وجود
- Limit Switch
- Safety Relay/PLC
- Protective Guarding
- Safe Restart
اشتباهات رایج در Servo Control
انتخاب سروو فقط بر اساس توان
دو موتور با توان یکسان ممکن است از نظر سرعت، گشتاور، Inertia و کاربرد کاملاً متفاوت باشند.
بیتوجهی به Inertia
عدم تطابق مناسب بین موتور و بار میتواند Tuning را دشوار کند.
تنظیم Gain بدون توجه به مکانیک
افزایش Gain همیشه به معنی عملکرد بهتر نیست و میتواند باعث Resonance شود.
اشتباه در Electronic Gear
این خطا میتواند باعث شود حرکت واقعی با مقدار موردنظر متفاوت باشد.
نادیده گرفتن Homing
در محورهایی که بعد از روشن شدن نیاز به Reference دارند، وضعیت Home باید در Sequence برنامه لحاظ شود.
استفاده از Pulse Frequency بیشتر از ظرفیت PLC
قبل از طراحی Pulse Train باید حداکثر Frequency خروجی PLC بررسی شود.
استفاده از Pinout یا پارامتر یک مدل برای مدل دیگر
Servo Driveها و Motorها مدلهای مختلفی دارند. همیشه باید Manual همان مدل بررسی شود.
جمعبندی کنترل سروو موتور با PLC
Servo Control یک سیستم کنترل حلقهبسته برای کنترل دقیق حرکت است که از Servo Motor، Encoder، Servo Drive و Controller تشکیل میشود.
سه حالت پایه Servo Control عبارتاند از:
Position
Speed
Torque
PLC یا Motion Controller میتواند فرمان حرکت را از طریق:
Pulse Train
Analog Command
Industrial Network
ارسال کند.
Servo Drive فرمان را دریافت کرده، Encoder را میخواند و با استفاده از حلقههای کنترل، عملکرد موتور را اصلاح میکند. Delta در خانوادههای مختلف ASDA این معماری را با تفاوتهایی در Mode، Feedback، ارتباط و امکانات Motion ارائه میکند.
برای طراحی صحیح یک محور Servo باید علاوه بر PLC و Servo Drive، مواردی مانند Load، Inertia، Speed، Torque، Acceleration، Mechanical Transmission، Encoder، Electronic Gear، Homing و Tuning نیز بررسی شوند.
بنابراین Servo Control را نباید فقط به «فرستادن پالس به موتور» محدود کرد؛ بلکه باید آن را بهعنوان یک سیستم کامل Motion Control در نظر گرفت.
سوالات متداول درباره Servo Control
سروو موتور چیست؟
سروو موتور بخشی از یک سیستم کنترل حلقهبسته است که همراه Servo Drive و Feedback مانند Encoder برای کنترل دقیق موقعیت، سرعت یا گشتاور استفاده میشود.
آیا میتوان سروو موتور را با PLC کنترل کرد؟
بله. بسته به PLC و Servo Drive میتوان از Pulse Train، ورودیهای فرمان یا شبکههای Motion مانند EtherCAT و CANopen استفاده کرد. روش دقیق به مدل تجهیزات بستگی دارد.
تفاوت Position و Speed Control چیست؟
در Position Control هدف اصلی رسیدن به موقعیت مشخص است، در حالی که در Speed Control هدف حفظ سرعت فرمان دادهشده است.
Encoder در Servo چه کاری انجام میدهد؟
Encoder اطلاعات Feedback مربوط به حرکت موتور، از جمله موقعیت و سرعت، را در اختیار سیستم کنترل قرار میدهد.
Electronic Gear چیست؟
Electronic Gear نسبت بین فرمان پالس و Position Command را تنظیم میکند و برای تنظیم Resolution حرکت استفاده میشود.
Homing چیست؟
Homing فرآیندی است که محور موقعیت مرجع خود را پیدا میکند تا سیستم بتواند موقعیت ماشین را نسبت به یک نقطه مشخص تعریف کند.
آیا همه Servo Driveها با EtherCAT کار میکنند؟
خیر. قابلیتهای ارتباطی به مدل Servo Drive و Controller بستگی دارد. برای نمونه برخی خانوادههای ASDA Delta از EtherCAT پشتیبانی میکنند، در حالی که قابلیتهای هر مدل باید از مشخصات همان مدل بررسی شود.
آیا Servo همیشه از Stepper دقیقتر است؟
نباید این موضوع را فقط با نام موتور تعیین کرد. دقت و عملکرد نهایی به Encoder، کنترلر، Drive، Tuning و مکانیک ماشین بستگی دارد. Servo یک سیستم Feedback-based است، در حالی که Stepper میتواند Open Loop باشد.
