Çok Eksenli Servo Senkronizasyonu: EtherCAT, Gearing, Camming ve CNC Uygulamaları
Özet: Tek eksen servo, bir motoru istenilen pozisyona götürmekten ibarettir; fakat bir pick & place robotu, flying saw, rotary cut veya 24 eksenli CNC makinesi kurarken iş karmaşıklaşır — eksenlerin birbirleriyle senkron, tam zamanlı, mikron seviyesinde uyumlu çalışması gerekir. Bu rehber; çok eksenli senkronizasyonun fiziğini (DC, jitter, bandwidth), EtherCAT üzerinde Distributed Clocks’un neden oyun değiştirici olduğunu, elektronik dişli (gearing) ile elektronik kam (camming) arasındaki farkı, CSP/CSV/CST modlarını ve Fatek M Serisi PLC + Veichi SD700 EtherCAT servo kombinasyonuyla nasıl uygulanacağını anlatır. Sonunda 7 tipik senaryoda (gantry, pick&place, flying saw, rotary cut, 3 eksen CNC, winder, 3+2 eksen makine) hangi tekniği ne zaman kullanacağınızı bilir olursunuz.
1. Senkronizasyon Neden Zordur? — Fiziksel Problem
İki ya da daha fazla servo ekseninin aynı anda aynı pozisyonda olması dört fiziksel gereksinimi karşılamayı gerektirir:
- Zaman senkronizasyonu (time sync): Tüm eksenlerin “şimdi” tanımı aynı olmalı. İki sürücünün saati 1 µs farklıysa, saniyede 60 mm ilerleyen bir eksen diğerinden 60 nm kayık olur — mikron hassasiyetinde işte bu kritiktir.
- Deterministik güncellenme: Her servo, pozisyon komutunu aynı döngüde alır. Döngü süresi 500 µs-1 ms aralığında, jitter < 1 µs olmalı.
- Planlanmış yörünge (trajectory): Komut üretiminin kendisi de tutarlı — PLC tüm eksenlere aynı komut vermeli, karışıklık olmamalı.
- Sıkı kontrol döngüsü: Servo iç döngü bandwidth’i, komut hızına göre en az 10 kat yüksek olmalı (Nyquist dışı).
2. EtherCAT Distributed Clocks — 1 µs’in Altında Senkron
EtherCAT, standart Ethernet’i “geçiş-işle-geri aktar” (process on the fly) felsefesiyle kullanır. Her slave cihaz pakete aynı anda erişir ve kendi kısmını düşer. Ama iki slave’in aynı anda hareket etmesini sağlayan asıl mekanizma Distributed Clocks (DC)‘tur:
- Master cihaz (Fatek M Serisi PLC), ağdaki ilk slave’i (referans clock, genellikle 1. sürücü) otoritative saat olarak seçer.
- Master, her slave’e “senin saatin referansa göre şu kadar kaymış” şeklinde offset gönderir.
- Her slave, gelen pozisyon komutunu kendi saatiyle değil, referans saatin belirlediği SYNC0 sinyali ile işler.
- Böylece 50 slave varsa bile, hepsi aynı anda aynı döngüyü yaşar — kablo uzunluğu, propagation gecikmesi otomatik telafi edilir.
EtherCAT Döngüsü (tipik 1 ms): t=0 ms: Master paket gönderir → slave'ler paket içindeki komutu alır t=0.1: Paket master'a döner t=0.2: Her slave, referans saate göre SYNC0 bekler t=0.25: SYNC0 tüm slave'lerde AYNI ANDA tetiklenir (±<1 µs) → Pozisyon komutu motora uygulanır → encoder geri beslemesi alınır t=1 ms: Yeni döngü başlar
Bu mimari sayesinde, 24 eksenli bir makinede her ekseni aynı µs’de hareket ettirebilirsiniz. Klasik pulse/direction kablolu çözümde imkânsız, CANopen’da çok zor, PROFINET IRT’de mümkün ama daha karmaşık olan şey EtherCAT’te standart özelliktir.
3. CiA 402 — Servo İçin Standart Cyclic Modlar
EtherCAT üzerinde servo sürmek için CiA 402 profili kullanılır (CANopen’dan türetilmiştir). Üç ana “cyclic” mod vardır:
| Mod | Master ne gönderir? | Slave ne yapar? | Kullanım |
|---|---|---|---|
| CSP (Cyclic Sync Position) | Her döngüde hedef pozisyon | Pozisyon kontrolü tamamen master’da, slave sadece takip | En yaygın: gantry, CNC, koordineli hareket |
| CSV (Cyclic Sync Velocity) | Her döngüde hedef hız | Hız kontrolü; pozisyon entegrasyonu slave’de | Rulman testi, winder (dinamik hız) |
| CST (Cyclic Sync Torque) | Her döngüde hedef tork | Tork komutu direkt uygulanır | Gerilim kontrolü, tork sınırlı uygulamalar |
Ek olarak sürücü tarafında tek başına çalışan modlar da vardır:
- PP (Profile Position): Master hedef pozisyonu gönderir, slave kendi trajectory’sini üretir. Koordinesiz hareketler için (homing, pozisyona git).
- PV (Profile Velocity): Hız hedefi gönderilir, slave rampı kendi üretir.
- HM (Homing): Referans arama modu.
- IP (Interpolated Position): CSP’nin öncüsü, genellikle artık kullanılmaz.
4. Elektronik Gearing — Sabit Oranlı Senkronizasyon
Elektronik dişli (electronic gearing), iki eksen arasında sabit oranda pozisyon ilişkisi kurar. Yani Master eksen 1000 pulse giderse, slave eksen N × 1000 pulse gider. Orantı programlanabilirdir.
4.1. Tipik Uygulamalar
- Gantry X ekseni: Bir X köprüsü iki motor tarafından sürülür (X1, X2). Simetri için X2 mutlaka X1’in 1:1 takipçisi olmalı.
- Konveyör + besleme: Ana konveyör hızlanınca besleme rulosu otomatik 1:0.8 oranında hızlanmalı.
- Ruloda gerilim kontrolü: Baskı makinesinde 2. rulo, 1. rulodan +%0.5 hızlı dönmeli (çekme).
4.2. Oran Nasıl Belirlenir?
Slave pozisyonu = Master pozisyonu × (N_num / N_den) + Offset Örnek: Gantry master → slave 1:1 N_num = 1, N_den = 1 Master 10.000 pulse = Slave 10.000 pulse Örnek: Baskıda çekme +%0.5 N_num = 1005, N_den = 1000 Master 10.000 = Slave 10.050 (50 pulse ileri)
4.3. Gearing “Engage” / “Disengage” Problemi
Gearing aktifleştirildiği anda slave pozisyonu aniden master’ı takibe başlar — eğer master o an hareketliyse, slave’de ani şok olur. Bu yüzden profesyonel sistemlerde rampalı engage kullanılır:
- Aktif olmayan slave: master hareket etse de dokunmaz.
- Engage komutu verildiğinde: slave, bir rampa içinde kendi pozisyon komutunu master’ın türevine (hızına) eşitler.
- Rampa bittiğinde: sabit oranda takipçi.
MC_GearIn ve MC_GearOut PLCopen fonksiyon blokları hazır olarak gelir. Ramp zamanı (AccelTime) ayarlanabilir.5. Elektronik Camming — Değişken Profilli Senkronizasyon
Elektronik kam (camming), slave eksenin master eksenin pozisyonuna göre tabloda tanımlı, değişken bir profili izlemesidir. Mekanik kamlı (krank) sistemlerin modern karşılığıdır:
Master pozisyonu (derece) Slave pozisyonu (mm) 0° 0 45° 10 90° 35 ← hızlanır 135° 50 180° 55 ← yavaşlar 225° 50 270° 35 315° 10 360° 0 ← cycle biter
Bu tablo (kam profili, cam profile) master döndükçe slave’e yansıtılır. İki master turu eşit sürede olsa bile slave’in her kısımda farklı hızı olur — tam sinüs, trapezoidal, polinom, spline eğrileri kullanılabilir.
5.1. Camming Tipik Uygulamaları
- Flying shear / flying saw: Ürün sürekli hareket ederken makas/testere ürünle birlikte hareket edip keser, sonra başa döner. Kam profili: hızla yetiş → sabit hızla kes → geri dön.
- Rotary cut / rotary die: Dönen bir bıçak, sürekli akan malzemeyi belli aralıklarla keser. Slave bıçak motoru, master malzeme konveyör hızı.
- Pick & place pozisyonlama: Bir ürün akışına göre pick kafası yüksek hızda yetişir, ürün yönüne dönerek yavaşlar, alır.
- Ambalaj kesim / katlama: Sürekli hareket eden kağıt/film üzerine baskı, katlama, kesim yapan motorlar.
- Şişe dolum: Dönen tablada şişeler dolum noktalarına geldiğinde pompa motoru doldurur.
5.2. Cam Tablosu (Cam Profile) Nasıl Tanımlanır?
Cam tablosu; master-slave pozisyon çiftlerinin listesidir. Ara değerler için üç tip interpolation kullanılır:
| Interpolasyon | Profil | Kullanım |
|---|---|---|
| Doğrusal (linear) | Keskin köşeli, sabit hızlı kısımlar arası | Basit pick & place, hızlı programlama |
| Kübik (cubic spline) | Pürüzsüz hız, sürekli ivme | Yüksek hızlı baskı, titreşimsiz hareket |
| 5. derece polinom (quintic) | Sürekli jerk, en yumuşak | Hassas optik, ölçüm cihazları |
5.3. PLCopen Motion: MC_CamIn ve MC_CamTableSelect
Standart PLCopen hareket kontrol kütüphanesinde cam yönetimi iki adımda yapılır:
// 1. Kam tablosunu tanımla (bir kez, başlatmada) MC_CamTableSelect( Master := axis_Master, Slave := axis_Slave, CamTable := MyCamTable_Packaging, // önceden tanımlı tablo Periodic := TRUE, // tablo tekrarlanır mı? MasterAbsolute := FALSE, // relatif master SlaveAbsolute := FALSE, Done => cam_selected ); // 2. Camming'i başlat (her cycle) MC_CamIn( Master := axis_Master, Slave := axis_Slave, MasterOffset := 0.0, SlaveOffset := 0.0, MasterScaling := 1.0, SlaveScaling := 1.0, StartMode := #relative, Execute := start_packaging, InSync => packaging_running, EndOfProfile => cycle_complete );
6. Fatek M Serisi + Veichi SD700 Çözüm Mimarisi
Fatek M Serisi PLC’nin motion yetenekleri, Veichi SD700 EtherCAT servolarla birleştirildiğinde, 2 eksenden 24 eksene kadar koordine çözüm sunar:
| Bileşen | Rol | Özellik |
|---|---|---|
| Fatek M Serisi PLC (örn. MU) | EtherCAT master + PLCopen motion kütüphanesi | 0.8 ns komut hızı, 24 eksen EtherCAT, Dual-CPU |
| Veichi SD700 servo sürücü | EtherCAT slave, CSP/CSV/CST modları | CiA 402 uyumlu, DC destekli, 23-bit encoder |
| UperLogic/UperMotion yazılım | IEC 61131-3 LD/ST + PLCopen motion FBs | MC_Power, MC_Home, MC_MoveAbsolute, MC_CamIn, MC_GearIn |
| Fatek P5 HMI | Operatör arabirimi, parametre, alarm | FvDesigner, EtherCAT durum görselleştirme |
6.1. Fiziksel Topoloji
┌──────────────────┐ EtherCAT (1 Gbps, IN/OUT port) │ Fatek M Serisi │───────────────────────────────────┐ │ PLC (Master) │ │ └──────┬───────────┘ │ │ │ ┌─────▼──────┐ ┌────────────┐ ┌────────────┐ │ │ SD700 #1 │───▶│ SD700 #2 │───▶│ SD700 #3 │ │ │ (ref DC) │ │ │ │ │ │ └──────┬─────┘ └──────┬─────┘ └──────┬─────┘ │ │ │ │ │ Motor 1 Motor 2 Motor 3 │ │ │ │ │ ▼ ▼ ▼ │ Yük 1 Yük 2 Yük 3 │ │ ... 24 slave'e kadar zincir, son slave ring için │ ilk slave'e dönebilir (redundancy) ──────────────────┘
6.2. Tipik Parametre Eşleme
| Parametre | SD700 adresi | PLCopen karşılığı |
|---|---|---|
| Hedef pozisyon | Object 0x607A | MC_MoveAbsolute.Position |
| Hız limiti | Object 0x6081 | MC_MoveAbsolute.Velocity |
| Hedef hız (CSV) | Object 0x60FF | MC_MoveVelocity.Velocity |
| Hedef tork (CST) | Object 0x6071 | MC_TorqueControl.Torque |
| Gerçek pozisyon | Object 0x6064 | Axis.ActualPosition |
| Durum kelimesi | Object 0x6041 | Axis.StatusWord |
| Kontrol kelimesi | Object 0x6040 | MC_Power.Enable → ControlWord |
| Modes of operation | Object 0x6060 | CSP=8, CSV=9, CST=10, PP=1, HM=6 |
7. Saha Senaryoları — Hangi Teknik Ne Zaman?
7.1. Senaryo A: Gantry X ekseni (iki motor, tek köprü)
Problem: 3 metre geniş köprü iki motorla sürülür; bir motor önde, diğer motor geride kalırsa köprü eğrilir, raylar aşınır.
Çözüm: Electronic gearing 1:1. Master = X1 motor (komuta alan). Slave = X2 (takipçi). MC_GearIn ile 1:1 bağla. Ek olarak MC_CamIn ile “yaw koreksiyonu” varsa düzeltici tablo.
DC gerekir mi? Evet — tolerance ≤10 µm.
7.2. Senaryo B: Pick & Place (4 eksen)
Problem: X, Y, Z ve Rotate eksenleri birlikte ürünü tutup taşıyacak; hareket boyutlu koordineli.
Çözüm: CSP modu, PLC’de yörünge planlayıcı (trajectory planner). Her cycle’da 4 eksene yeni pozisyon komutu. Kartezyen hareket için PLCopen’ın MC_MoveLinearAbsolute veya OEM fonksiyon bloğu.
Döngü: 500 µs – 1 ms.
DC: Zorunlu.
7.3. Senaryo C: Flying saw (ürün kesme)
Problem: Ekstrüzyondan çıkan PVC profil durmadan akıyor, belli aralıklarla kesilmeli.
Çözüm: Master = profil hızını ölçen encoder (konveyör rulo). Slave = testere arabası ekseni + testere mili.
Camming kullanılır: arabanın master’a göre pozisyonu profil hızına göre değişir — yetiş, kes, geri dön.
Profile: Kübik spline; köşe yumuşak.
7.4. Senaryo D: Rotary cut (dönen bıçakla kesim)
Problem: Sürekli akan film üzerine dönen bıçak her 30 cm’de bir kesim yapmalı.
Çözüm: Camming tabanlı, 1 master turu = 1 slave turu (bıçak). Tablo şekli: kesim dilimi anında bıçak film hızıyla eşleniyor, diğer kısımda geri alınıyor.
7.5. Senaryo E: 3 eksen CNC freze
Problem: X, Y, Z koordineli olarak G-code’a göre hareket etmeli, interpolation gerekli.
Çözüm: CSP modu; PLC’de G-code parser + trajectory planner (trapezoidal veya S-eğri). CNC kütüphanesi (Fatek M Serisi UperMotion CNC paketi) kullanımı pratik.
DC: Zorunlu.
7.6. Senaryo F: Winder (sarıcı)
Problem: Bir bobinden diğerine malzeme sarılır; çap değiştikçe motor hızı ve torku değişmeli, gerilim sabit kalmalı.
Çözüm: CSV veya CST modu. Gerilim sensöründen PI kontrol ile slave tork/hız ayarı. Elektronik dişli, çap hesabı yazılımla yapılır (adaptif oran).
7.7. Senaryo G: 3+2 eksen (rotary tabla + 3 eksen tezgah)
Problem: Freze tezgahı X, Y, Z ekseni + rotary tabla (C ekseni) + tilting kafa (A ekseni). 5 eksen koordineli.
Çözüm: CSP modu tüm 5 eksen; 5-axis CAM yazılımından G-code üretip Fatek M Serisi + CNC kütüphanesi ile işletilir.
8. Devreye Alma Sırası — Adım Adım
- Tekil eksenler: Her ekseni bağımsız homing + PP moda git, çalıştığından emin ol. Encoder yönü, tork limiti, soft limit ayarlarını kontrol et.
- EtherCAT topolojisi ve DC: Master’da tüm slave’leri tespit et, DC aktif mi doğrula (EtherCAT manager içinde “DC Sync Status” OK olmalı).
- Mod değişimi: Her ekseni CSP moduna al (0x6060 = 8). Döngü süresini 1 ms ayarla.
- Koordinat sistemini kalibre et: Gantry/Pick&place için eksenler sıfır noktasında aynı fiziksel konumda olmalı.
- Elektronik dişli/cam test: Gearing 1:1’den başla, stabilite doğrula. Sonra oranı/profili değiştir.
- Yük testi: Yükle ve değişen inertia ile çalıştır; gain ayarı gerekebilir (bkz. Blog 12).
- Hata senaryosu testi: Bir eksene acil dur → diğerleri nasıl tepki veriyor?
MC_Stoptüm eksenlerde koordineli mi?
9. Sık Yapılan 8 Hata
| Hata | Sonuç | Çözüm |
|---|---|---|
| DC aktifleştirilmeden CSP kullanmak | Jitter, titreme, pozisyon hatası | Master’da tüm slave’ler için DC etkin |
| Döngü süresi slave için çok kısa | Pozisyon kaçır, hata 0x8611 | 1 ms ile başla, sonra 500 µs’e indir |
| Gearing engage anında sıfır hız | Slave takip etmez | Master hareketliyken engage et |
| Cam tablosu keskin köşe | Mekanik şok, motor alarmı | Spline veya quintic profil |
| İki slave aynı Node ID | EtherCAT bulur ama karışır | Her slave’e unique ID (SD700 Pn00F) |
| Encoder yönü ters | Servo kaçar, aşırı akım | Önce tek eksen doğrula, sonra birleştir |
| Kablo SF/FTP değil | EtherCAT frame loss, telegram gap | CAT5e ekranlı, toprak kanalda |
| Acil durdurmada eksen düşmesi | Dikey ekseni kontrolsüz düşer | Mekanik fren + STO + koordineli MC_Stop |
10. Performans Karşılaştırması — Farklı Mimariler
| Mimari | Eksen sayısı | Jitter | Koordinasyon | Maliyet (rel.) |
|---|---|---|---|---|
| Pulse/Dir kablo | Max 4-6 | Yüksek | Zor, PLC kesmeli | Düşük |
| CANopen DS402 | Max 8-16 | ~100 µs | Orta | Orta |
| PROFINET IRT | Max 32 | <1 µs | İyi | Yüksek |
| EtherCAT DC (Fatek M + Veichi SD700) | Max 24 (M serisi) | <1 µs | Mükemmel | Uygun |
| SERCOS III | Max 64 | <1 µs | İyi | Çok yüksek |
Küçük ve orta ölçekli (2-24 eksenli) sistem entegrasyonunda EtherCAT + Fatek M Serisi + Veichi SD700 kombinasyonu, performans-maliyet dengesinde en güçlü çözümdür. TSOM (Total Cost of Ownership) hesabında; kablo tasarrufu, devreye alma süresi ve tek vendör avantajı birleşir.
11. Sıkça Sorulan Sorular
EtherCAT ile CANopen arasındaki temel fark nedir?
CANopen 1 Mbps, komutlar sırayla slave’lere gider — 10 slave için ortalama 10 ms döngü. EtherCAT 100 Mbps, tüm slave’ler tek pakette, aynı frame’de işlenir — 100 slave için bile 1 ms altı döngü mümkün. Ayrıca Distributed Clocks ile µs altı senkron CANopen’da yoktur.
Gearing ve camming arasındaki fark?
Gearing sabit orandır (slave = master × N). Camming tablo tabanlı değişken profildir. Flying saw, rotary cut gibi malzeme akışına göre şekil alan hareketler için camming gerekir; sabit oranlı takiplerde gearing yeterli.
Fatek M Serisi kaç eksen sürebilir?
MU serisi 24 eksen EtherCAT motion control’ü standart olarak destekler. Daha az eksen için MA (16 eksen) ya da MS (8 eksen) seçenekleri vardır — ihtiyaca göre optimize model seçilir.
SD700 harici enkoder desteği var mı?
Evet — SD700’de harici tam kapalı çevrim (full-closed loop) desteği vardır. Motor encoder yerine makine üzerine takılmış lineer enkoderi takip edebilir; bu yüksek hassasiyetli vidalı mil uygulamalarında 2-3 kat pozisyon hassasiyet artışı sağlar.
Acil durdurma (STO) çok eksende nasıl koordineli çalışır?
Her SD700 servo SIL2/PLd kategorisinde STO (Safe Torque Off) girişine sahiptir. Çok eksenli makinede tüm servolara paralel güvenlik devresi bağlanır; acil dur anında tüm servolar eş zamanlı STO yapar. Ek olarak PLC tarafında MC_Stop çağrılarak yörünge üzerinde koordineli duruş sağlanır.
Cam tablosu kaç nokta ile tanımlanır?
Uygulamaya göre 8’den 1024 noktaya kadar değişir. Basit pick&place için 16-32 nokta yeterli; flying saw, rotary cut için 64-128 nokta tipik; yüksek hızlı baskı için 256-512 nokta. Noktalar arası spline interpolasyon zaten pürüzsüzlüğü sağlar.
PLCopen motion standardı neden önemli?
PLCopen, farklı markalar (Fatek, Siemens, Schneider vs) için aynı fonksiyon bloklarını (MC_Power, MC_MoveAbsolute, MC_CamIn) tanımlar. Projenizi standart bloklarla yazarsanız, gelecekteki marka değişiklikleri kolay olur; saha mühendisi de farklı markalarda aynı mantığı uygulayabilir.
12. Sonuç — Doğru Soru, Doğru Mimari
Çok eksenli makine projesinde “Kaç eksen?” sorusundan önce “Eksenler birbirine nasıl bağlı?” sorusu sorulmalıdır. Bağımsız iseler basit motion; sabit oranlı takipçi varsa gearing; değişken profilli hareket gerekiyorsa camming. Mimari, hareket tipinin kendisine göre seçilir — yoksa sonradan düzeltmesi pahalı olur.
Fatek M Serisi PLC + Veichi SD700 EtherCAT servo kombinasyonu; gantry’den 24 eksen CNC’ye kadar geniş yelpazede, Distributed Clocks temelli mikron altı senkronizasyon sunar. PLCopen standart motion blokları ve UperMotion kütüphanesi sayesinde devreye alma süresini haftalardan günlere indirir. Tek vendör (Fonksiyonel Akıllı Teknolojiler üzerinden Fatek + Veichi) olmanın avantajı, teknik desteğin de tek noktadan alınmasıdır.
Çok eksenli projeleriniz için mühendislik desteği
Fonksiyonel Akıllı Teknolojiler olarak Fatek M Serisi PLC ve Veichi SD700 EtherCAT servo kombinasyonuyla 2 eksenden 24 eksene kadar sistem entegrasyon projelerinizde saha desteği sunuyoruz. Motion kütüphanesi, G-code parser, cam tablosu oluşturma ve devreye alma için bize yazın.
teknik@fonksiyonelas.onlineNot: Bu rehber genel mühendislik prensiplerine dayanır; her uygulamanın mekanik, güvenlik ve performans gereksinimi farklıdır. Kritik uygulamalarda (havacılık, medikal, otomotiv safety) proje bazlı tasarım gözden geçirme yapılmalıdır.
