Serial Read

Bu fonksiyon bloğu, bir seri bağlantıdan en son satırı okur (bloklamayan) ve seçilen veri tipine dönüştürür. Eski (stale) veya hatalı biçimlendirilmiş girdilere karşı dayanıklı olacak şekilde; gerektiğinde kullanıcı tarafından belirlenen bir varsayılan değeri döndürür.

📥 Girdiler

  • Enable — Okumayı etkinleştiren/devre dışı bırakan boolean giriş soketi.

  • ConnId — Hangi seri bağlantıdan okunacağını seçen generik giriş soketi (bağlantı kimliği).

📤 Çıktılar

  • Data — En son dönüştürülmüş değeri (veya stale/çözümleme başarısız olduğunda varsayılan değeri) ileten generik çıkış soketi.

🕹️ Kontroller

  • Stale timeout (s) — Yeni bir satır gelene kadar ne kadar bekleyeceğini ayarlayan metin girişi (saniye).

  • Data Type — Gelen satırların dönüştürülmesi için seçilecek açılır liste. Mevcut seçenekler: String, Int, Float, Boolean, HexInt, Bytes.

  • Default (on stale/parse fail) — Taze veri yoksa veya dönüştürme başarısız olursa döndürülecek varsayılan değeri belirleyen metin girişi. Bytes için hex karakterleri girin (örn. AA55).

🎯 Özellikler

  • En son kullanılabilir satırın bloklamayan şekilde okunması.

  • Eski verilerin (stale) tespit edilmesi, böylece eski satırların sonsuza dek iletilmemesi.

  • Birden çok dönüşüm tipi ve yapılandırılabilir bir yedek (fallback) değeri.

  • Daha büyük senaryolara entegre etmek için basit girişler ve çıkışlar.

📝 Kullanım

  1. Aktif bir seri bağlantıya işaret eden bir bağlantı kimliğini ConnId girişine verin.

  2. Bloğu kaldırmadan okuma başlatmak/durdurmak için Enable kullanın.

  3. Gelen verinin ne kadar taze olması gerektiğini tanımlamak için Stale timeout (s) değerini ayarlayın.

  4. Gelen satırları dönüştürmek için istenen Data Type seçeneğini seçin.

  5. Taze veya çözümlenebilir veri olmadığında blok çıkışının ne olacağını kontrol etmek için Default (on stale/parse fail) değerini belirleyin.

  6. Data çıkışından gelen değeri kayıt, görselleştirme veya yayınlama gibi sonraki bloklarda kullanın.

📊 Değerlendirme

  • Etkinleştirildiğinde, blok seçilen bağlantıdan en son satırı okumaya çalışır.

  • Yapılandırılan Stale timeout (s) içinde yeni bir satır gelmezse blok yapılandırılmış varsayılan değeri yayar.

  • Seçilen veri tipine dönüştürme başarısız olursa blok yapılandırılmış varsayılan değeri yayar.

  • Bytes tipi için blok, varsayılanı onaltılık (hex) metin olarak kabul eder.

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

  • Geliştirme sırasında ham sonuçları kaydetmek veya incelemek için Debug Input kullanın.

  • Seri okumalarını yapılandırılmış kayıt veya toplu dışa aktarım için Data to JSON veya CSV Exporta yönlendirin.

  • İşlenmiş değerleri yayınlamak için MQTT Publish kullanın veya bir web servisine göndermek için REST API - Post kullanın.

  • Değerleri daha sonra kullanmak üzere Data Write Local veya Data Write Global ile kaydedin ve ilgili okuma bloklarıyla geri alın.

  • Sayısal verileri gerçek zamanlı izlemek ve eğilimleri görmek için Scope ile çizdirin.

  • Gelen değerlere göre eylem tetiklemek için Logic Input veya karşılaştırma bloklarıyla birleştirin (ör. sayısal değer bir eşik değeri aşarsa alarm tetikleme).

🛠️ Sorun Giderme

  • Data üzerinde veri görünmüyorsa, verilen ConnId'nin gerçekten aktif bir bağlantıya işaret ettiğini doğrulayın.

  • Çıktı her zaman varsayılan değerse, Stale timeout (s) değerini artırın veya kaynağın etkin şekilde satır gönderdiğinden emin olun.

  • Sayısal veya boolean türü için dönüşüm başarısız oluyorsa, cihazdan gelen ham metin formatını kontrol edin ve varsayılan değeri buna göre ayarlayın.

  • Bytes türü için varsayılanın geçerli onaltılık karakterler (boşluk veya geçersiz karakter yok) olduğundan emin olun.

Last updated