مشاوره تخصصی ۰۹۱۲ ۰۰۴ ۶۳۷۳
LEARN KNOWLEDGE BASE

دانش فنی اتوماسیون صنعتی

LEARN

کنترل سروو موتور با PLC چیست؟ آموزش کامل Servo Control، Position، Speed و Torque

کنترل سروو موتور با PLC یکی از مهم‌ترین بخش‌های Motion Control در ماشین‌آلات صنعتی است. در این مقاله ساختار Servo Motor و Servo Drive، نقش Encoder، کنترل موقعیت، سرعت و گشتاور، پالس PTO، Electronic Gear، Homing، Tuning، محاسبات حرکت و روش ارتباط PLC با سروو را به‌صورت کامل بررسی می‌کنیم.

سروو موتور

کنترل سروو موتور با 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 در نظر بگیریم:RPM=Frequency×60PPRRPM = \frac{Frequency \times 60}{PPR}

مثلاً:

PPR = 10000 pulse/rev
Frequency = 5000 Hz

بنابراین:RPM=5000×6010000RPM = \frac{5000 \times 60}{10000}

نتیجه:

RPM = 30

یعنی در این مثال فرکانس 5 kHz معادل 30 RPM است.


محاسبه فرکانس پالس موردنیاز برای سرعت مشخص

فرمول معکوس:Frequency=RPM×PPR60Frequency = \frac{RPM \times PPR}{60}

مثلاً اگر:

RPM = 600
PPR = 10000

باشد:Frequency=600×1000060Frequency = \frac{600 \times 10000}{60}

نتیجه:

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 تنظیم می‌شود.

به‌صورت مفهومی:Position Command=Pulse Input×NMPosition\ Command = Pulse\ Input \times \frac{N}{M}

که در آن:

  • N = Numerator
  • M = 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

بنابراین:Pulses/mm=1000010Pulses/mm = \frac{10000}{10}

نتیجه:

1000 pulses/mm

برای حرکت:

250 mm

نیاز داریم:250×1000250 \times 1000

پس:

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=1000×0.5Slave = 1000 \times 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=300010Output\ RPM = \frac{3000}{10}

بنابراین:

Output RPM = 300 RPM

در محاسبات واقعی باید راندمان و مشخصات واقعی انتقال نیز در نظر گرفته شوند.


محاسبه حرکت Ball Screw

فرض کنید:

Ball Screw Lead = 5 mm/rev

و موتور:

1000 RPM

باشد.

سرعت خطی ایده‌آل:Linear Speed=1000×560Linear\ Speed = \frac{1000 \times 5}{60}

پس:

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، اختلاف بین موقعیت فرمان و موقعیت واقعی است.Following Error=Commanded PositionActual PositionFollowing\ Error = Commanded\ Position – Actual\ Position

مثلاً:

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 باشد.

سوالی دارید؟

اگر در انتخاب یا پیاده‌سازی سیستم‌های اتوماسیون نیاز به راهنمایی دارید، با ما تماس بگیرید.

تماس با ما