FabyaVisionKullanım Kılavuzu
/

MQTT sürücüsü

6 dk okumaHaberleşme

Bir MQTT sunucusuna (broker) bağlanıp konulara abone olarak tag değeri almak, tag yazmayı konuya yayın (publish) olarak göndermek; TLS, kullanıcı / şifre, QoS ve JSON alan adresleri.

Ne zaman kullanılır

MQTT sürücüsü, Live'ı MQTT 3.1.1 istemcisi yapar. Live sunucuya (broker) bağlanır, tag'lerin konularına abone olur; konuya gelen son yayın o tag'in değeri olur. Tag'e yazmak, değeri konuya yayınlamaktır. Cihazlar, ağ geçitleri ve IoT sistemleri veriyi genellikle bu yolla paylaşır.

Bu sürücü yenidir ve Tanıtım projesinde bağlantısı yoktur. Gerçek bir MQTT sunucusuyla sahada denenmemiştir.

Sunucu tarafında ön koşullar

  • MQTT sunucusu Live bilgisayarından erişilebilir olmalı (varsayılan port 1883, TLS ile genellikle 8883).
  • Kimlik doğrulama kullanılıyorsa sunucuda kullanıcı tanımlı olmalı ve kullanıcının okuma / yazma izni bulunmalı. İzin yoksa sunucu aboneliği reddeder.
  • Cihazların yayınladığı konu adlarını ve yük (payload) biçimini (düz değer ya da JSON) bilin.

Bağlantı kurma

  1. Bağlantı ekleyin

    Bağlantılar bölümünde Ekle, sürücü MQTT; sunucunun adresini yazın, port 1883 gelir. TLS kullanıyorsanız portu 8883 yapın ya da adresi mqtts://sunucu:8883 biçiminde yapıştırın (güvenlik TLS'e geçer).

  2. Parametreleri girin
    MQTT bağlantısının parametreleri; Hedef kartı mqtt:// ya da mqtts:// adresini gösterir.
    MQTT bağlantısının parametreleri; Hedef kartı mqtt:// ya da mqtts:// adresini gösterir.
    Güvenlik
    Yok (şifrelenmemiş), TLS (sunucu sertifikası doğrulanır) ya da TLS (sertifika doğrulanmaz). TLS 1.2 kullanılır.
    Kimlik doğrulama
    Anonim ya da Kullanıcı adı ve şifre.
    Kullanıcı adı
    Şifre proje dosyasına yazılmaz; Live'da girilir (Bağlantı güvenliği).
    İstemci kimliği
    Boşsa fv-<bilgisayar>-<bağlantı> biçiminde otomatik üretilir. Aynı kimlikle bağlanan iki istemciden eskisi sunucu tarafından atılır.
    Abonelik kalitesi (QoS)
    QoS 0 — en çok bir kez (varsayılan) ya da QoS 1 — en az bir kez.
    Yazma kalitesi (QoS)
    QoS 0 — yanıt beklenmez ya da QoS 1 — sunucunun onayı beklenir (varsayılan).
    Yazılanı sunucuda tut (retain)
    Açıksa yazılan mesaj sunucuda saklanır ve sonradan abone olanlara hemen gönderilir. Varsayılan kapalı.
    Bool yazma biçimi
    true / false (varsayılan), 1 / 0 ya da ON / OFF.
    Canlı tutma süresi (sn)
    0 – 3600, varsayılan 30. Sessiz kalan bağlantıda bu aralıkla sunucuya ping gider; 1,5 katı süre hiçbir şey gelmezse bağlantı kopmuş sayılır. 0 = kapalı.
  3. Tag ekleyin

    Tag'in adresine konu adını yazın (Tag adresleri).

Konu adresleri

AdresAnlamı
fabrika/hat1/sicaklikYükün tamamı tag'in değeridir (sayı, true / false, on / off, metin, ISO tarih).
hat1/durum#motor.hizYük JSON belgesidir; tag belgenin içindeki değerdir (# konu ile JSON yolunu ayırır).
hat1/olcumler#deger[2]JSON dizisinin elemanı (sıra 0'dan başlar).
cihaz/role/durum|cihaz/role/komutOkuma ve yazma ayrı konularda (| ile ayrılır).
  • Konu joker karakter (+, #) içermez; tag tek bir konunun değeridir. Konu ve JSON yolu büyük / küçük harfe duyarlıdır. Yazma konusu $ ile başlayamaz.
  • JSON yolu nokta ile ayrılmış alan adları ve dizi sıralarıdır (motor.hiz, dizi[0].alan); başındaki $. isteğe bağlıdır; en çok 16 adım.

Okuma ve yazma davranışı

  • Okuma: sürücü her konuya bir kez abone olur. Sunucu tutulan (retained) mesajı aboneliğe hemen gönderir. Henüz hiç yayın gelmemiş konunun tag'i hata vermez; değer gelene kadar bekler (kalitesiz görünür).
  • Değer çevirme: Bool için true / false / 1 / 0 / on / off / yes / no okunur. Tag tipine sığmayan değer kırpılmaz, tag hata alır. DateTime için ISO 8601 ya da unix saniye / milisaniye kabul edilir. Yük UTF-8 metindir; 1 MB'tan büyük yük okunmaz.
  • Yazma: değer, tag'in yazma konusuna yayınlanır. Okuma konusuyla aynıysa değer, sunucudan dönmesi beklenmeden tag'e de işlenir. Bağlantı kopmuşsa yazma reddedilir.
  • JSON alanı yazma: konuya son gelen belgenin yalnızca ilgili alanı değiştirilir, diğer alanlar korunur. Konuda henüz belge yoksa ya da yazma konusu ayrıysa ve önceki belge bilinmiyorsa yalnızca o alanı içeren yeni bir belge yayınlanır.

Sürücü başvurusu

MQTT

MQTT 3.1.1 istemcisi: Live sunucuya (broker) bağlanır, tag'lerin konularına abone olur ve gelen son yayını tag değeri yapar; yazma konuya yayın (publish) olarak gider. Adres bir konudur (ör. fabrika/hat1/sicaklik); yük JSON ise "konu#yol" ile içindeki alan seçilir; okuma ve yazma konuları ayrıysa "okuma|yazma" yazılır.

Sürücü kimliği
mqtt (proje dosyasındaki ad)
Bağlantı
IP adresi / bilgisayar adı ve port gerekir (varsayılan port 1883)
Veri tipleri
Bool Byte SInt Int UInt DInt UDInt Real LReal String DateTime
Aynı adres
Aynı adrese birden çok bağlantı tanımlanabilir.

Bağlantı parametreleri

Bağlantı seçiliyken Denetçi penceresinde görünür.

ParametreTürVarsayılanAçıklama
GüvenlikseçimYok (şifrelenmemiş)TLS için port genellikle 8883'tür. Kendinden imzalı sertifika kullanan sunucularda sertifikayı Windows'a güvenilen olarak ekleyin; "doğrulanmaz" yalnızca kapalı ağlarda kullanılmalıdır.
Yok (şifrelenmemiş) · TLS (sunucu sertifikası doğrulanır) · TLS (sertifika doğrulanmaz)
Kimlik doğrulamaseçimAnonim
Anonim · Kullanıcı adı ve şifre
Kullanıcı adımetin—Şifre proje dosyasına yazılmaz; Live bilgisayarında girilir.
İstemci kimliğimetin—Boşsa otomatik üretilir (fv-bilgisayar-bağlantı). Aynı kimlikle bağlanan iki istemciden eskisi sunucu tarafından atılır.
Abonelik kalitesi (QoS)seçimQoS 0 — en çok bir kez
QoS 0 — en çok bir kez · QoS 1 — en az bir kez
Yazma kalitesi (QoS)seçimQoS 1 — sunucunun onayı beklenir
QoS 0 — yanıt beklenmez · QoS 1 — sunucunun onayı beklenir
Yazılanı sunucuda tut (retain)açma / kapamakapalıYazılan mesaj sunucuda saklanır ve sonradan abone olanlara hemen gönderilir.
Bool yazma biçimiseçimtrue / false
true / false · 1 / 0 · ON / OFF
Canlı tutma süresi (sn)sayı (0 – 3600)30Sessiz kalan bağlantıda bu aralıkla sunucuya ping gider; 1,5 katı süre hiçbir şey gelmezse bağlantı kopmuş sayılır. 0 = kapalı.

Adres biçimleri

BiçimAnlamı
topicYükün tamamı tag'in değeridir (sayı, true / false, on / off, metin, ISO tarih)
topic#alan.altalanYük JSON belgesidir; tag belgenin içindeki değerdir
topic#dizi[2].alanJSON dizisinin elemanı (sıra 0'dan başlar)
readTopic|writeTopicOkuma ve yazma ayrı konularda (ör. durum | komut)

Örnek adresler

Veri tipiÖrnekler
Boolcihaz/role/durum   cihaz/role/durum|cihaz/role/komut   hat1/durum#motor.calisiyor
Stringhat1/urun   hat1/durum#ad
Diğer tiplerfabrika/hat1/sicaklik   hat1/durum#motor.hiz   hat1/olcumler#deger[2]

Sık hatalar

Her satırın başındaki işaret, iletinin Live'da nerede görüneceğini söyler: [bağlantı] sistem menüsünün Bağlantılar bölümünde; [yazma] yazmayı yapan operatöre bildirim penceresinde; [Studio] Studio'daki adres hücresinde görünür. [tag] okuma sırasındaki tag hatasıdır: tag kalitesiz kalır, iletinin metni bu sürümde Live'da gösterilmez (Tag hataları); metni nedeni anlamak için okuyun.

İletiNeden ve çözüm
[bağlantı] MQTT sunucusu 2000 ms içinde yanıt vermedi (…). Adresi, portu ve ağ bağlantısını kontrol edin.Sunucuya ulaşılamıyor.
[bağlantı] MQTT sunucusu kullanıcı adını ya da şifreyi reddetti. Kullanıcı adını bağlantı parametrelerinden, şifreyi Live'daki bağlantı şifresi penceresinden kontrol edin.Kullanıcı ya da şifre yanlış; şifre Live'da girilmemiş olabilir.
[bağlantı] MQTT sunucusu bu istemcinin bağlanmasına izin vermedi (yetkisiz). …Sunucuda bu kullanıcı ya da istemci için erişim tanımı yok.
[bağlantı] MQTT sunucusu istemci kimliğini reddetti (kimlik geçersiz ya da başka bir istemci aynı kimlikle bağlı). …İstemci kimliği'ni değiştirin.
[tag] MQTT sunucusu bu konuya aboneliği reddetti (kullanıcının bu konuyu okuma yetkisi olmayabilir): konuKullanıcının o konuyu okuma izni yok.
[bağlantı] Sunucu sertifikasına bu bilgisayar güvenmiyor (kendinden imzalı ya da bilinmeyen sertifika otoritesi). …Sertifikayı Windows'a güvenilen olarak ekleyin; yalnızca kapalı ağlarda TLS (sertifika doğrulanmaz) seçin.
[bağlantı] Sunucu sertifikasının adı "…" ile uyuşmuyor (adres olarak IP yerine sertifikadaki bilgisayar adını yazın …).Adrese sertifikadaki adı yazın.
[tag] "…" Bool olarak okunamıyor (true / false, 1 / 0, on / off, yes / no beklenir). · "…" bir sayı değil; Int olarak okunamıyor.Yükün biçimi tag tipine uymuyor.
[tag] Yük geçerli bir JSON belgesi değil (…). Adreste "#yol" yazdıysanız yük JSON olmalıdır. · JSON yolu "…" yükte bulunamadı (… alanı yok).Yük JSON değil ya da yol belgede yok.
[yazma] MQTT sunucusu yayını onaylamadı (PUBACK gelmedi).Yazma kalitesi QoS 1 iken sunucu yayını onaylamadı.

Sınırlar

İlgili konular

FabyaVision 0.1.0 Kullanım Kılavuzu · 18 Ekim 2026© Fabyatek Yazılım Bilişim Teknolojileri Ltd. Şti.