> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/turkish/fonksiyon-bloklari/blocks-reference/input-output/communication/twincat-read.md).

# TwinCAT Read

Bu fonksiyon bloğu, TwinCAT PLC'den bir değişken okur ve alınan değeri bir başarı göstergesiyle birlikte çıktı verir. Otomasyon senaryolarında basit PLC veri okuma işlemleri için kullanılır.

## 📥 Girdiler (soketler)

* `Connection` — Genel PLC bağlantı nesnesi (örneğin `TwinCAT Connect` gibi bir connect bloğu kullanılarak sağlanır).

## 📤 Çıktılar (soketler)

* `Data` — PLC'den okunmuş değişken değeri.
* `Success` — Okuma işleminin başarılı olup olmadığını belirten Boolean (doğru/yanlış) bayrağı.

## 🕹️ Kontroller

* `Variable Name` — Okunacak PLC değişken adını gireceğiniz metin alanı. Bu değer, PLC'de tanımlı değişken tanımlayıcısıyla aynı olmalıdır.

## 🎯 Özellikler

* Basit ve anlaşılır PLC okuma işlemi; başarı durumu açıkça döndürülür.
* Bağlantı yönetimini okumadan ayırmak için ayrı bir bağlantı bloğundan (`TwinCAT Connect`) bağlantı kabul eder.
* Gerekli girdileri doğrular ve bağlantı veya değişken adı eksikse net hata mesajları verir.

## 📝 Kullanım

1. `Connection` girişine bir PLC bağlantısı sağlayın. Tipik yol, `TwinCAT Connect` bloğunu kullanıp onun çıkışını bu bloğun `Connection` soketine bağlamaktır.
2. `Variable Name` kontrolüne hedef PLC değişken adını girin.
3. Değerlendirmeyi başlatın (manuel veya akış kontrollerinden). Bloğun adı verilen değişkeni okumaya çalışacak ve `Data` ile `Success` çıktılarını verecektir.
4. Yalnızca geçerli okumalarda işlem yapmak için (`Success` true iken) sonraki mantığı (`logging`, kaydetme vb.) tetikleyin.

## 📊 Çalışma Zamanı Davranışı

Çalıştırıldığında blok, geçerli bir `Connection` olup olmadığını ve `Variable Name` alanının boş olmadığını kontrol eder. Eksikse hata raporlar ve `Success` çıktısını başarısız olarak verir. Geçerli yapılandırmada ise okuma yapar, okunan değeri `Data` çıkışına ve sonucu `Success` çıkışına verir.

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

* `TwinCAT Connect` kullanarak PLC bağlantısını oluşturun ve bu bloğun `Connection` girişine verin.
* Okuma sıklığını kontrol etmek için `Rising Edge` veya `Cycle Timer` gibi bloklarla kombinleyin (ör. başlangıçta bir kere veya periyodik okumalar).
* Başarılı okuyup değerleri kaydetmek için `CSV Export` veya `Data to JSON` ile eşleştirin.
* Sistemi kurarken değerleri incelemek için `Debug Input` veya `Scope` kullanın.
* PLC'ye yazma yapmak isterseniz bu bloğu `TwinCAT Write` ile eşleştirip mantık blokları (`Logic Input`, `Set - Reset` vb.) ile okuma/yazma zamanlamasını kontrol edin.
* Değerleri senaryonun diğer bölümlerinde kullanmak için `Data Write Local` veya `Data Write Global` ile saklayın.

## 🛠️ Sorun Giderme

* "Connection is not established" hatası görürseniz, bağlantı bloğunun (`TwinCAT Connect`) yapılandırıldığını ve bağlı olduğunu kontrol edin.
* `Variable Name` boşsa blok okuma yapmaz — geçerli bir PLC değişken tanımlayıcısı girin.
* Geçerli girdilere rağmen okuma başarısız oluyorsa, PLC erişim izinlerini, değişken adının yazımını ve ağ/PLC durumunu kontrol edin. Hata ayıklamak için `Debug Input` ile ham yanıtı yakalayın ve hata dallanması için `Success` çıkışını kullanın.
* Periyodik kararlılık gerekiyorsa, okumaları `Cycle Timer` gibi zamanlama bloklarıyla kontrol edin ve basit tekrar denemesi mantığını mantık bloklarıyla ekleyin.
