RS485 Modbus RTU ile veri okumak

xseroot

Üye
Katılım
30 Ara 2018
Mesajlar
21
Puanları
1
Merhabalar,
Elimde bir adet Delta DVP14SS PLC var, bu PLC com2 portuna bir adet Sıcaklık Kontrol cihazı bağladım.
PLC iletişim COM2 hızını 9600/even/1 8bit ->0087 (aygıt no 1) olarak ayarladım. Bağladığım autonic sıcaklık kontrol cihazını da slave adres olarak 2 verdim ve onun da bağlantı parametreleirnş aynı şekilde yaptım. Ancak ne yapasam yapayım bu cihazın aşağıdaki resimde verilen registerlarını okuyamadım. Cihazın okumak ve yazmak istediğim modbus adresleri aşağıdaki gibidir.
Bu konuda yardımcı olabilecek olan ya da nasıl okuma/yazma yapmam gerektiği konusunda yardımcı olabilcek var mıdır? Bir de slave cihazla RS485 haberleşmeyi sağladığımı nasıl teyit edebilirim bir yolu var mı?

Teşekkürler


autonic.png
 

Ekli dosyalar

huh

Paylaşımcı üye
Katılım
10 Şub 2007
Mesajlar
1,067
Puanları
108
Plc programında modbus ayarlarını yaptığınız satırlar ile kullanılan sensörün hangi haberleşme standartlarını desteklediğini yazabilirmisiniz.
 
Konu Sah
X

xseroot

Üye
Katılım
30 Ara 2018
Mesajlar
21
Puanları
1
Merhaba, sıcaklık kontrol cihazı kullanıyorum RS485 destekleyen (tx-4s-b4r), PLCde RS485 özelliklerini yazdığım gibi, PLC parametreleri de resimde görüldüğü gibi, altta da cihazın desteklediği iletişim parametreleri var.



1583090262795.png
 

Ekli dosyalar

  • 1.1 MB Görüntüleme: 27

huh

Paylaşımcı üye
Katılım
10 Şub 2007
Mesajlar
1,067
Puanları
108
MODRW komutu kullanılmadan haberleşme yapmış olmazsınız.
En son satırın altına şunları ekleyin

LD M1
MODRW K2 H3 H03E8 D10 K1
LD M1


MODRW Komutunda sıra ile
K2 istasyon adresi
H3 okuma yapacak demek
H03E8 okunacak adres
D10 okunan verinin plc de yazılacağı data adresi
K1 kaç adet ardışık veri okunacağı


Ekleme:
Haberleşme sağlandığını teyit için;
M1123 kontrol edin. Bu data alma tamamlandı bilgi biti SV serisi içindir.

SS serisi için kontrol edin.
 
Son düzenleme:
Konu Sah
X

xseroot

Üye
Katılım
30 Ara 2018
Mesajlar
21
Puanları
1
dediğiniz gibi yaptım hocam, ancak d10 registerinde 2 gibi bir değer görüyorum, bu değerde bir hata var, PLC de özel registerlardan biri olan D1130 registerı bana K2 değerini dönüyor bu neden kaynaklanıyor olabilir, programın tamamını aşağıya yazıyorum.


61848
61849
 

Ekli dosyalar

huh

Paylaşımcı üye
Katılım
10 Şub 2007
Mesajlar
1,067
Puanları
108
O değerin farklı bir formatı var.
Onu normal görmek için
MOV D1296 D30
yaparak d30 içini okuyun.

D1296 SV için SS de farklı olabilir.
 
Konu Sah
X

xseroot

Üye
Katılım
30 Ara 2018
Mesajlar
21
Puanları
1
D1296 registeri ASCII formatında saklanan veri için adres bölgesi diye belirtmiş kullanıcı kitabında, ben ASCII değil RTU kullanıyorum, cihaz da onu desteliyor sadece, bahsettiğiniz "MOV D1296 D30" komutu ile D30 okuduğumda da 0 görüyorum ordaki değeri.
 

huh

Paylaşımcı üye
Katılım
10 Şub 2007
Mesajlar
1,067
Puanları
108
M1 konaklarını M1013 yapın.
M1123 set olduğunda yükselen kenar ile önce sayıyı farklı bir dataya atın.
M1123 resetleyin.
M1013 bir sn ara ile ayni islemleri yaptıracak.
 
Konu Sah
X

xseroot

Üye
Katılım
30 Ara 2018
Mesajlar
21
Puanları
1
dediğinizi denedim, sonuç değişmedi, direkt bir rs485 dönüştürücü ile bilgisayar bağladığımda H0 adresinden okuma yaptım ama plc aşağıdaki program ile bir türlü okuma yapmıyor.

61880
 

Ekli dosyalar

huh

Paylaşımcı üye
Katılım
10 Şub 2007
Mesajlar
1,067
Puanları
108
MODRW komutu başındaki kontak yükselen kenar değil normal kontak olacak.

SET M1122 satır başındaki kontak ise yükselen kenar olarak kalsın.
 

Sponsor Bağlantı

Forum istatistikleri

Konular
112,965
Mesajlar
795,017
Kullanıcılar
414,789
Son üye
yarenolmmz

Yeni konular

Üst