Tia Portal V20 ModBus

gazi1669

Üye
Katılım
6 Ocak 2021
Mesajlar
223
Puanları
1
Yaş
27
Herkese selam, 8 adet v20 inverter var elimde hepsini modbus ile sürmeliyim. Ekteki dosyadaki programda network 13ten itibaren modbus blockları var ve plc ye yüklü olduğu zaman sadece 1. inverter kontrol edilebiliyor. Nerede yanlış yapıyorum yardım olabilecek varmı?
 

Ekli dosyalar

  • tia.pdf
    161.8 KB · Görüntüleme: 7
KNX Standardı, küçük bir rezidansın içerisindeki aydınlatma, perde panjur, klima kontrolünden, Dünya’nın en büyük havalimanlarındaki aydınlatma otomasyonu gibi çözümler için tercih edilen bir Dünya standardıdır.
Yazımızda endüstrinin can damarı sayılabilecek PLC’yi inceleyeceğiz.
Her bir V20 inverterin modbus adreslerini ayrı ayrı belirlemek gerekiyor. (P2021) 1 den 247 ye kadar tanımlanabilir.
 
Hayır hepsinin modbus adresini 1-2-3-4... Diye sıralayarak mb_master kısmında o numaraları verdim
 
Tamam,
Her bir V20inverter için ayrı kontrol blokları oluşturmak ve bu kontrol blokları, her bir inverterin durumunu izlemek ve gerektiğinde kontrol etmek için kullanır.

Aşağıdaki kodu deneyin:


VAR
// Her bir inverter için modbus adreslerini tanımla
Inverter1_Address : UINT := 1; // Örnek olarak 1. inverter için
Inverter2_Address : UINT := 2; // Örnek olarak 2. inverter için
// Diğer inverterler için aynı şekilde devam edebilirsin

// Inverterlerin durumlarını saklayacak değişkenler
Inverter1_Status : BOOL;
Inverter2_Status : BOOL;
// Diğer inverterler için aynı şekilde devam edebilirsin

END_VAR

// Inverter 1 için kontrol bloğu
IF Modbus_Read_Coil(StartAddress := Inverter1_Address, Quantity := 1) THEN
// Inverter 1'den gelen veri başarıyla okundu
Inverter1_Status := TRUE; // Inverter 1 çalışıyor
ELSE
// İletişim hatası veya inverter çalışmıyor
Inverter1_Status := FALSE; // Inverter 1 çalışmıyor
END_IF

// Inverter 2 için kontrol bloğu
IF Modbus_Read_Coil(StartAddress := Inverter2_Address, Quantity := 1) THEN
// Inverter 2'den gelen veri başarıyla okundu
Inverter2_Status := TRUE; // Inverter 2 çalışıyor
ELSE
// İletişim hatası veya inverter çalışmıyor
Inverter2_Status := FALSE; // Inverter 2 çalışmıyor
END_IF

// Diğer inverterler için aynı şekilde devam edebilirsin


Bu kod, her bir inverter için modbus adreslerini tanımlar ve her bir inverterin çalışma durumunu kontrol eder. Eğer modbus iletişimi başarılı ise ilgili inverterin çalışma durumu TRUE olarak ayarlanır, aksi halde FALSE olarak ayarlanır.
Bu şekilde, her bir inverterin durumunu izleyebilirsiniz.
 
Son düzenleme:

Forum istatistikleri

Konular
128,400
Mesajlar
917,276
Kullanıcılar
450,294
Son üye
tugrulkusderci

Yeni konular

Geri
Üst