# TwinCAT Connect

Bu fonksiyon bloğu, diğer blokların PLC'den okuma yapabilmesi veya PLC'ye yazabilmesi için TwinCAT PLC ile bir bağlantı kurar. PLC istemci bağlantısını oluşturmak ve sürdürmek ve bağlantı durumunu senaryonuzun geri kalanına bildirmek için kullanın.

## 📥 Girdiler

Bu fonksiyon bloğunun giriş soketleri yoktur.

## 📤 Çıktılar

* `Connection` Etkin bağlantı tutamağı (aşağı yönlü iletişim bloklarıyla kullanın).
* `Success` PLC'ye başarılı bir bağlantı kurulup kurulmadığını gösteren boolean.

## 🕹️ Kontroller

* `AMS ID` PLC AMS tanımlayıcısını (adres) girin. Bu genellikle PLC yapılandırmasında veya sistem yöneticiniz tarafından sağlanır.
* `Port` TwinCAT bağlantısı için port numarasını girin. Ortak bir varsayılan port önceden doldurulmuştur (gerekirse değiştirebilirsiniz).
* `Timeout (ms)` Bağlantı zaman aşımı süresini milisaniye cinsinden ayarlayın. Daha yavaş veya uzak ağlar için daha büyük değerler kullanın.

Not: Sistem üzerinde gerekli TwinCAT destek kitaplıkları yüklü değilse, blok düzeninde TwinCAT modüllerinin mevcut olmadığına dair bir mesaj gösterir ve gerekli bileşenler kurulana kadar bağlanamaz.

## 🎯 Özellikler

* Aşağı yönlü blokların yeniden başlatma yapmadan kullanabilmesi için kalıcı bağlantı çıktısı.
* Bağlantı durumunu koşullu iş akışları için etkinleştiren boolean `Success` çıktısı.
* `AMS ID`, `Port` ve `Timeout (ms)` değerlerini ayarlamak için basit, etiketli kontroller.
* TwinCAT bileşenleri gerektiğinde eksik sistem bağımlılıklarını kullanıcıya nazikçe bildirir.

## ⚙️ Çalışma Mekanizması

* Blok çalıştığında yapılandırılmış `AMS ID`, `Port` ve `Timeout (ms)` değerlerini kullanarak PLC bağlantısı kurmaya çalışır.
* Başarılı olduğunda, kurulan bağlantıyı `Connection` çıktısı üzerinden sağlar ve `Success` değerini true olarak ayarlar. Başarısız olduğunda null/boş bir bağlantı sağlar ve `Success` false olur.
* Bağlantı çıktısı, aynı kurulmuş bağlantıyı yeniden oluşturmak zorunda kalmadan kullanabilmeleri için diğer iletişim bloklarına bağlı bırakılabilir.
* Yapılandırma eksikse veya sistem bağımlılıkları mevcut değilse blok, kullanıcı arayüzünde net hata mesajları bildirir.

## 📝 Kullanım Talimatları

1. `AMS ID` alanına PLC adresinizi ve `Port` alanına hedef portu girin.
2. Ağınız yavaş veya güvensizse `Timeout (ms)` değerini ayarlayın.
3. Senaryoyu çalıştırın; bağlantıyı doğrulamak için `Success` çıktısını kontrol edin.
4. PLC okuma/yazma işlemlerini gerçekleştiren bloklara `Connection` çıktısını bağlayın.

## 💡 İpuçları ve Püf Noktaları

* Sağlanan `Connection` ile okuma ve yazma işlemleri yapmak için bu bloğun altına `TwinCAT Read` ve `TwinCAT Write` bloklarını kullanın.
* Bağlantı yalnızca aktif olduğunda PLC işlemlerini geçişlendirmek için `Logic Input` ile `Success` çıktısını birleştirin.
* Geliştirme sırasında bağlantı durumunu veya hataları göstermek için `Debug Input` veya bir günlükleme/görüntüleme bloğu kullanın.
* PLC'den okunan değerleri kaydetmek veya son işlem yapmak için okuyucuları `CSV Export` veya `Data Write Global` bloklarına bağlayın.
* Bağlantı oluştuğunda veya koptuğunda diğer eylemleri tetiklemeniz gerekiyorsa, `Success` çıktısıyla birlikte `Rising Edge` veya `Set - Reset` gibi mantık bloklarını kullanın.

## 🛠️ Sorun Giderme

* Blok, TwinCAT modüllerinin mevcut olmadığını bildiriyorsa, makinede TwinCAT çalışma zamanı ve gerekli Python paketlerinin yüklü olduğundan emin olun ve uygulamayı yeniden başlatın.
* `Success` false kalıyorsa, `AMS ID` ve `Port` alanlarının doğru ve ağınızdan erişilebilir olduğunu kontrol edin.
* Uzak PLC'lere bağlanırken veya aralıklı ağ gecikmeleri yaşanıyorsa `Timeout (ms)` değerini artırın.
* Bağlantı aralıklı olarak başarısız oluyorsa, yeniden bağlanma denemelerini yalnızca gerektiğinde yapmak için küçük bir mantık devresi (ör. `Delay Step` + `Retry` mantığı ile `Rising Edge`) kullanın.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.augelab.com/turkish/fonksiyon-bloklari/input-output/communication/twincat-connect.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
