DELTA DVP Serisi PLC HABERLESME PROTOKOLU 1.0 DELTA ELECTRONICS, INC. 1
1. Haberlesme Arabirimi: RS-232C 2. Haberlesme protokolu ASCII mod, 9600(Baud rate), EVEN(Parity), 1 (Start bit),1(stop bit) 3. DELTA PLC MODBUS PROTOKOL 4. Haberlesme Data Yapisi STX Karakteri : (H) ADR 1 Haberlesme Adresi: ADR 0 8-bit adres 2 ASCII kod icerir. CMD 1 Komut kodu: CMD 0 8-bit komutu 2 ASCII kod icerir. DATA(0) Data Icerigi: DATA(1) n 8-bit data 2n ASCII kod icerir.. n 37, maksimum 74 ASCII kodu DATA(n-1) LRC CHK 1 LRC check sum: LRC CHK 0 8-bit check sum 2 ASCII kod icerir END 1 End karakter: END 0 END 1 = CR(0DH),END 0 = LF(0AH) ADR(Haberlesme Adresi) Gecerli haberlesme adres araligi 0 31. Haberlesme Adresi `0` oldugunda butun PLC'lerle haberlesme gerceklesir (broadcast). PLC Master uniteye cevap gonderir. Ornegin, 16 no'lu PLC ile haberlesmek icin: (ADR 1, ADR 0)= 1, 0 1 =31H, 0 = 30H CMD (Komut Kodu) ve DATA (data karakterleri) Data karakterlerinin formati komut koduna baglidir. Ornegin, 01H no'lu PLC'nin 0614H adresinden itibaren 8 tane datayi okumak icin: (Heading) Komut Kodu 03 Bas.Adresi (Yuksek) 06 Bas.Adresi (Dusuk) 14 Nokta Sayisi (Yuksek) 00 Nokta Sayisi (Dusuk) 08 DA 2
Max. Nokta Sayisi = 18(16 bit register) = 9(32 bit register) Ornek:01 no'lu PLC'den T20~T27 bobinlerini okuma. PC PLC :01 03 06 14 00 08 DA CR LF PLC PC :01 03 10 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 B8 CR LF Komut kodu 03 Byte Sayisi 10 Data Yuksek(T20) 00 Data Dusuk(T20) 01 Data Yuksek(T21) 00 Data Dusuk(T21) 02 Data Yuksek(T22) 00 Data Dusuk(T22) 03 Data Yuksek(T23) 00 Data Dusuk(T23) 04 Data Yuksek(T24) 00 Data Dusuk(T24) 05 Data Yuksek(T25) 00 Data Dusuk(T25) 06 Data Yuksek(T26) 00 Data Dusuk(T26) 07 Data Yuksek(T27) 00 Data Dusuk(T27) 08 Hata Kontrol(LRC) C8 LRC CHK(check sum) LRC (Longitudinal Redundancy Check) once her bir alana karsilik gelen sayilari toplanir, sonra toplamin komplementi alinarak elde edlir. Eger sonuc 3 basamakli ise son iki basamagin degeri dikkate alinir. 3
Ornegin, 01H no'lu PLC'nin 0401H adresinden itibaren 1 data okumak icin: STX : ADR 1 0 ADR 0 1 CMD 1 0 CMD 0 3 0 Data Adresi 4 0 1 0 Data Sayisi 0 0 1 LRC CHK 1 F LRC CHK 0 6 END 1 CR END 0 LF 01H+03H+04H+01H+00+01H = 0AH 0AH degerinin komplementi F6H Istisnai Cevaplar: PLC Master Cihaz'dan komut mesaji aldktan sonra master cihaza normal cevap vermesi beklenir. Asagida PLC Master cihaza beklenen normal cevabi vermedigi zaman ki durumlar aciklanmaktadir. Haberlesme hatasi durumunda PLC mesaj alamaz ve buna bagli olarak Master cihaza cevap veremez. Sonuc olarak master cihaz zaman asimi durumuna gecer. Haberlesmede problem yoksa PLC datayi normal olarak alir fakat bu datayi kullanamaz ve master cihaza istisnai cevap gonderir. Gonderilen bu istisnai cevapta orjinal komut kodunun en yuksek degerli biti 1 olur. Bu cevapla bitlikte gelen harici kod PLC 'den gelen bu mesajin nedenini aciklar. 4
01H no'lu PLC'ye gonderilen komut kodunun 02H istisnai cevap ornegi: Komut Mesaji: Fonksiyon 01 Adresi (Yuksek) 04 Adresi (Dusuk) 00 Nokta Sayisi (Yuksek) 00 Nokta Sayisi (Dusuk) 10 EA Cevap Mesaji: Fonksiyon 81 Istisnai Kod 02 7C Istisnai kod: 01 02 03 07 Anlami: Gecersiz Komut Kodu: Master'dan gonderilen komut mesaji icinde alinan komut kodu PLC'de yok. Gecersiz device adresi: Master'dan gonderilen komut mesaji icinde alinan device adresi PLC'de yok. Illegal device value: Master'dan gonderilen komut mesaji icinde alinan device degeri PLC'de yok. Check Sum Hatasi Check Sum dogrulugunu kontrol et. Gecersiz komut mesaji Komut Mesaji cok kisa Komut mesaji izin vrilen sinirlarin disinda. 5
Data karakterlerinin formati komuta baglidir. Kullanilabilecek komut kodlari asagidadir. Kod Isim Aciklama 01 Bobin Durumu Okuma S, Y, M, T, C 02 Giris Durumu Okuma S, X, Y, M,T, C 03 Tutucu Register Okuma T, C, D 05 Tek Bobin Enerjilendirme S, Y, M, T, C 06 Tek Register Deger Girme T, C, D 15 Coklu Bobin Enerjilendirme S, Y, M, T, C 16 Coklu Register Deger Girme T, C, D 17 Slave ID Raporu None DELTA DVP-ES Serisi PLC DEVICE ADRESLERI Device Aralik Gercek Aralik Adres S 000~255 0000~00FF S 246~511 0100~01FF 000~127 S 512~767 0200~02FF S 768~1023 0300~03FF X 000~377 (Octal) 000~177 (Octal) 0400~04FF Y 000~377 (Octal) 000~177 (Octal) 0500~05FF T 000~255 000~127 0600~06FF M 000~255 0800~08FF M 256~511 0900~09FF M 512~767 0000~1279 0A00~0AFF M 768~1023 0B00~0BFF M 1024~1279 0C00~0CFF C 000~255 000~127 232~255 0E00~0EFF D 000~255 1000~10FF D 256~511 1100~11FF 000~599 D 512~767 1200~12FF 1000~1143 D 768~1023 1300~13FF D 1024~1279 1400~14FF 6
Komut Kodu :01, Bobin Durumu Okuma Komut Kodu 01 Adresi(Yuksek) 06 Adresi (Dusuk) 14 Nokta Sayisi (Yuksek) 00 Nokta Sayisi (Dusuk) 25 BF Nokta Sayisi(max) = 255 = 0x00FF Ornek:01 no'lu PLC'den T20~T56 bobin durumlarini okuma PC PLC :01 01 06 14 00 25 BF CR LF PLC PC :01 01 05 CD 6B B2 0E 1B D6 CR LF Komut Kodu 01 Byte Sayisi 05 Data(Coils T27 T20) CD Data(Coils T35 T38) 6B Data(Coils T43 T36) B2 Data(Coils T51 T44) 0E Data(Coils T56 T52) 1B Hata Kontrol(LRC) E6 Komut Kodu :02, Giris Durumunu Okuma Komut Kodu 02 Adresi(Yuksek) 05 Adresi (Dusuk) 14 Nokta Sayisi (Yuksek) 00 Nokta Sayisi (Dusuk) 25 BF Ornek:01 no'lu PLC'den Y024~Y070 kontaklarin durumunu okuma PC PLC :01 02 05 14 00 25 BF CR LF PLC PC :01 01 05 CD 6B B2 0E 1B E5 CR LF 7
Slave Address 01 Komut Kodu 02 Byte Sayisi 05 Data(Y033..Y024 Bobinleri) CD Data(Y043..Y034 Bobinleri) 6B Data(Y053..Y044 Bobinleri) B2 Data(Y063..Y054 Bobinleri) 0E Data(Y070..Y064 Bobinleri) 1B Error Check(LRC) E5 Komut Kodu :03, Tutucu Register Okuma Tutucu Register Okuma:T, C, D Komut Kodu 03 Adresi(Yuksek) 06 Adresi (Dusuk) 14 Nokta Sayisi (Yuksek) 00 Nokta Sayisi (Dusuk) 08 DA Max. Nokta Sayisi = 18(16 bit register) = 9(32 bit register) Example:01 no'lu PLC'nin T20~T27 bobinlerinin degerini okuma PC PLC :01 03 06 14 00 08 DA CR LF PLC PC :01 03 10 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 B8 CR LF Komut Kodu 03 Byte Sayisi 10 Data Yuksek(T20) 00 Data Dusuk(T20) 01 Data Yuksek(T21) 00 Data Dusuk(T21) 02 8
Data Yuksek(T22) 00 Data Dusuk(T22) 03 Data Yuksek(T23) 00 Data Dusuk(T23) 04 Data Yuksek(T24) 00 Data Dusuk(T24) 05 Data Yuksek(T25) 00 Data Dusuk(T25) 06 Data Yuksek(T26) 00 Data Dusuk(T26) 07 Data Yuksek(T27) 00 Data Dusuk(T27) 08 Hata Kontrol(LRC) C8 Komut Kodu :05, Tek Bobin Enerjilendirme Komut Kodu 05 Adresi(Yuksek) 05 Adresi (Dusuk) 00 Force Data (Yuksek) FF Force Data (Dusuk) 00 F6 MMNN = 0xFF00.Bobin ON MMNN = 0x0000.Bobin OFF Ornek:01 No'lu PLC'nin Y0 bobinini enerjilendirme (Y0=ON) PC PLC :01 05 05 00 FF 00 F6 CR LF PLC PC :01 05 05 00 FF 00 F6 CR LF Komut Kodu 05 Bobin Adresi (Yuksek) 05 Bobin Adresi (Dusuk) 00 Force Data (Yuksek) FF Force Data (Dusuk) 00 F6 9
Komut Kodu :06, Tek Register Deger Girme Komut Kodu 06 Register Adres (Yuksek) 06 Register Adres (Dusuk) 00 Data Ayarlama (Yuksek) 12 Data Ayarlama (Dusuk) 34 AD Ornek:T0 Registerini 12 34 ayarlama PC PLC :01 06 06 00 12 34 AD CR LF PLC PC :01 06 06 00 12 34 AD CR LF Switch ( c ) Komut Kodu 06 Register T0 Adres Yuksek 06 Register T0 Adres Dusuk 00 Data Ayarlama (Yuksek) 12 Data Ayarlama (Dusuk) 34 Hata kontrol ( LRC ) AD Durum 0:T0 Durum 1:C0 Durum 2:C232 Durum 3:D10 Durum 4:D1000 Q :01 06 06 00 12 34 AD CR LF Q :01 06 0E 00 12 34 AF CR LF Q :01 06 0E E8 12 34 56 78 EF CR LF Q :01 06 10 0A 12 34 99 CR LF Q :01 06 13 E8 12 34 BA CR LF 10
Komut Kodu :15, Coklu Bobin Enerjilendirme Komut Kodu 0F Bobin Adresi (Yuksek) 05 Bobin Adresi (Dusuk) 00 Bobin Sayisi (Yuksek) 00 Bobin Sayisi (Dusuk) 0A Byte Sayisi 02 Force Data (Yuksek) CD Force Data (Dusuk) 01 Hata Kontrol (LRC) 11 Max. Bobin Sayisi = 255 Ornek:Y007 Y000 Bobinleri SET Etme= 1100 1101, Y011 Y010 = 01. PC PLC :01 0F 05 00 00 0A 02 CD 01 11 CR LF PLC PC :01 0F 05 00 00 0A E1 CR LF Komut Kodu 0F Register Y0 Adres Yuksek 05 Register Y0 Adres Dusuk 00 Data Ayarlama (Yuksek) 00 Data Ayarlama (Dusuk) 0A Hata kontrol ( LRC ) E1 11
Komut Kodu :16, Coklu Register Deger Girme Komut Kodu 10 Adresi(Yuksek) 06 Adresi (Dusuk) 00 Register Adres (Yuksek) 00 Register Adres (Dusuk) 02 Byte Sayisi 04 Data Yuksek 00 Data Dusuk 0A Data Yuksek 01 Data Dusuk 02 Hata Kontrol (LRC) C6 Max. Nokta Sayisi = 16(16 bit register) = 8(8 bit register) Ornek:T0 = 00 0A, T1 = 01 02 Ayarlama. PC PLC :01 10 06 00 02 00 04 00 0A 01 02 D6 CR LF PLC PC :01 10 06 00 00 02 E7 CR LF Komut Kodu 10 Adresi(Yuksek) 06 Register Adres (Dusuk) 00 Register sayisi (Yuksek) 00 Register sayisi (Dusuk) 02 E7 12
Komut Kodu :17, Slave ID Raporu Kontrol cihazinin slave adresi hakkinda RUN indikatoru hakkinda ve diger ozel bilgiler verir. Komut Mesaji: Cevap Mesaji: Komut Kodu 11 Hata Kontrol (LRC) EE Komut Kodu 11 Byte Sayisi 04 Slave ID 01 Run Indikator Durumu 00 = OFF FF = ON FF Data 0(D1001 HI) 40 Data 1(D1001 LOW ) 10 Hata Kontrol (LRC) 9A 13