Modbus - Byte ve Frame arası süreler hakkında soru ?

Başlatan camby, 07 Şubat 2012, 15:05:38

camby

Modbus slave cihazı yapıyorum.

Referanslarda her frame arası en az 3.5 char olmalı , frame içindeki byte'lar arası süre de 1.5 char'dan fazla olmamalı yazıyor.

Sorularım :

1- Cihaza gelmekte olan frame'in tamamlandığını bu süreleri kullanarak mı anlayacağım. Örneğin her byte yerleştikten sonra timer başlatacağım , bu timer 3.5 char süreyi geçtiğinde , frame'in tamamlandığı mı anlayacağım. Farklı uzunlukta frame'ler beklediğim için bu kısım önemli zannediyorum.

2 - Benzer olarak master byte paketleri arası , 1.5 char'dan fazla süre tanımayacak. Bununla ilgili bir kontrol yazmama gerek var mı ?

3- Char süresi ne demek , 3.5 char süre neye karşılık geliyor ?

Klein

Evet veri alımının bittiğini öyle anlayacaksın.
Byte araları için özel bir şey yapmayacaksın. Veriyi gönderirhen her baytın arasında fazla bekleme yapma yeter.

3.5Char süre şuna karşılık geliyor.

Start+Data+Parity+Stop bitlerinin toplam süresinin 3.5 katı.
örn

9600 baud  8 bit no parity 1 stop bit  formatında veri gönderiyoruz.
1 byte veri göndermek için start ve stop dahil toplam 10 bit gönderiyoruz demektir.
saniyede 9600 bit gönderebildiğimize göre  10 biti  yaklaşık 1 milisaniyede gönderebiliriz.  3.5 charlık süre yaklaşık 3.5 milisaniye eder.

camby


camby

Slave çalıştırmak ve test etmek için kullanabileceğim bir PC yazılımı var mıdır ?

Klein

modbus poll iyi programdır onunla test edebirsin.