3 Eylül 2014 Çarşamba

Bina Otomasyon Sistemi Elemanları ( Ekipmanları )






Bina Otomasyonu Sisteminin ayrılmaz parçaları aşağıdaki gibi ana başlıklar altında sıralanabilir. Her binada elbette uygulamada yer alan bina servislerine göre farklılıklar olacaktır,Bina Otomasyon Sistemi bina tiplerine,mekanik sistem çözümlerine ve ısıl kapasitelere göre farklı eleman sayılarından ve kümelerinden oluşur. Bu bakımdan bina tipi aynı olsa dahi binadan binaya farklı kompozisyonlarda uygulamalar ortaya çıkar,bir binadan diğer binaya kopyala yapıştır bir uygulama pratiği söz konusu değildir Bina Otomasyon Sistemi Mimarisi 1. Yönetim Seviyesi Bu seviyede Bina Yönetim Sistemi Yazılımı ve bu yazılımın çalıştığı Bilgisayar (lar) ve çevre donanımları vardır. Haberleşme protokolü bu seviyede Ethernet / Bacnet / Modbus vd protokoller olabilir. 2. Saha Seviyesi 2.a Saha İstasyonları _ Saha Panelleri 2.a.1 I/O Modülleri 2.a.2 Haberleşme kartları / İşlemcileri / Master paneller 2.b DDC Panolar Saha Panellerine ait modüllerin ve haberleşme kartlarının yerleştirildiği saç pano. İçerisinde kablo giriş ve çıkışı için gerekli klemensler güç besleme ünitesi (leri) topraklama barası sigorta vs elektrik ekipmanlarından oluşur. 3. Saha Elemanları 3.a Sensörler 3.b Sviçler 3.c Kuru kontak bilgileri ( Röle / Termik...vs arayüz kontakları ) 4.Son kontrol elemanları 4.a Damper Servomotorları 4.b Vana Servomotorları 5. Vana gövdeleri 5.a İki Yollu Vanalar 5.b Üç Yollu Vanalar 5.c Dört Yollu Vanalar

30 Nisan 2014 Çarşamba

Network Protokolleri


Network lerde kullanılan protokollerin listesi...

Bluetooth Fibre Channel network
Internet Protocol Suite veya TCP/IP model yada TCP/IP stack
OSI protokolleri ailesi
ISO ve ITU-T Routing protokolü
IP protocol IPv4 ve IPv6
Yahoo ! Messenger,
RTPS protokol,
karşılıklı işlem protokolü SSH Secure Shell
FTP File Transfer Protocol
SMTP Simple Mail Transfer Protocol
Telnet Telephone Network
HTTP Hyper Text Transfer Protocol
HTTPs Secure Hyper Text Transfer Protocol
SFTP Secure File Transfer Protocol
SSL Secure Socket Layer
TLS Transport Layer Security
POP post office protocol
 E6 Ethernet globalization protocols
NTP Network time protocol
PPP Point to Point Protocol
NNTP Network News Transfer Protocol
IMAP Internet Message Access Protocol

Otomasyon Haberleşme Protokolleri






Otomasyon Sistemleri uygulandıkları alanlara göre farklı veya birkaçı ortak olan aşağıdaki haberleşme protokollerini kullanırlar.
 A. BİNA OTOMASYONU SİSTEMLERİ - HABERLEŞME PROTOKOLLERİ
1-Wire BACnet
C-Bus
DALI DSI KNX
LonTalk
Modbus
 oBIX
VSCP
X10
xAP
xPL
ZigBee

 B. ENDÜSTİYEL KONTROL SİSTEMLERİ - HABERLEŞME PROTOKOLLERİ
AS-i
BSAP
CC-Link
CIP
CAN bus
ControlNet
DeviceNet
DF-1
DirectNET
 EtherCAT
Ethernet Global Data (EGD)
Ethernet Powerlink
EtherNet/IP
FINS FOUNDATION
Fieldbus (H1, HSE)
GE SRTP HART Protocol
Honeywell SDS HostLink
INTERBUS MECHATROLINK
MelsecNet
Modbus
Optomux
PieP
Profibus
PROFINET IO
SERCOS interface
SERCOS III
Sinec H1
SynqNet
TT Ethernet
RAPIEnet

 C. GÜÇ OTOMASYONU - HABERLEŞME PROTOKOLLERİ
IEC 60870
IEC 60870-5
IEC 60870-6
DNP3
IEC 61850
 IEC 62351
Modbus Profibus

 D. SAYAÇ OKUMA - HABERLEŞME PROTOKOLLERİ
ANSI C12.18
IEC 61107
DLMS/IEC 62056
M-Bus
Modbus
 ZigBee
E. ARAÇ ( TREN - METRO- OTOMOBİL) -HABERLEŞME PROTOKOLLERİ
AFDX
ARINC 429
ARINC 825
CAN
FMS
FlexRay
IEBus
J1587
J1708
J1939
Keyword Protocol 2000
LIN
MOST
NMEA
2000 VAN

2 Temmuz 2013 Salı

Modbus Hataları ( Modbus Errors )


Resim yazısı ekle

Modbus Errors:

 

 

Modbus Hataları:

 

Bir Modbus mesajı Server tarafından alındığında tüm parametreleri doğrumu diye analiz edilir.Eğer doğru ise Server bir cevap (response) yollar.Bu cevap Data içerebilir
Veya bir mesajın alındığı teyidi olabilir.
Eğer bir hata (error) var ise,Server iki şeyden birini yapabilir.Eğer mesaj hiç bir şekilde çözülemiyorsa (decode)  ( yani bir bad check sum varsa) mesaj doğrudan çöpe atılır.
Eğer mesaj çözülebiliyor ancak bir veya birkaç parametre doğru değilse ( yani olmayan bir adres için okuma girişiminde bulunulmuş ise ) server bir hata kodu (fault code)
İle cevap verecektir.
Hata kodu (fault code) basit olarak fonksiyon koduna (Function Code)128 eklenerek oluşur.
Örneğin eğer Client, function 3( Holding Register’i oku) ile bir talep te ( request ) bulunuyor ise ve bir hata içeriyorsa,server hata kodu  131 (3 + 128 = 131) verecektir.


Modbus Exceptions : Modbus İstisnaları

Hata koduna ek olarak,server neyin yanlış olduğu hakkında daha detaylı bir istisna kodu ( exception code) ile dönüş yapar.İstisna kodları her bir fonksiyon için ayrı ayrı tanımlanmıştır,ancak en yaygın kullanılan istisna fonksiyonları aşağıdakilerdir.

  • 1 = İstenilen fonksiyon kodu (command) desteklenmiyor
  • 2 = Adres doğru değil (varlığı yok).Çoklu adreslerde çalışan bu fonksiyon,requet den etkilen tüm adresler için check’i içerir.
  • 3 = Adres miktarı doğru değil.Mşktar parametresi istenen fonksiyon için çok geniş ( yada sıfır)
  •  4 = İsteğin(request) yerine getirilişi esnasında Server da bazı tanımlanamayan hatalar oluştu

Modbus İşlemleri " Functions "



Modbus   “Functions ” nedir.


Modbus işlemleri functions olarak bilinir.Bir function veri tablo adresine oku yada yaz komutudur.Fonksiyonlar 1,2,3,4 vs olarak numaralandırılır.
Örneğin function “1” bir ya da daha fazla “ coil “okur.
Function “15” bir veya daha fazla “coil” e yazar.
Tüm fonsiyon kodları ( Function Codes ) Modbus Standart’ının bir parçası olarak tanımlanmıştır.ancak hangi fonksiyon un bir cihazda gerçeklendiği cihaz tasarımcısına bağlıdır.Örneğin bir Vana bank’ı sadece coil yazma fonksiyonlarını yerine getiriyor olabilir çünkü o cihaz için gerekli olan sadece bu olabilir.

Aşağıda bazı ortak fonksiyonlar ( Common Functions ) listelenmiştir.Modbus protokolünde bir çok fonksiyon vardır ancak en çok karşılaşılan aşağıdakilerdir.
  • 1 -  Read multiple coils.
  • 2 -  Read multiple discrete inputs.
  • 3 -  Read multiple holding registers.
  • 4 -  Read multiple input registers.
  • 5 -  Write single coil.
  • 6 -  Write single holding register.
  • 15 - Write multiple coils.
  • 16 - Write multiple holding registers.

Quantity: ( Miktar )

Çoklu Okuma veya yazma yapan Modbus fonksiyonları için bir miktar parametresi gereklidir.Bu miktar parametresi kaç adet ardışık adresin okunup yazılacağını tayin eder.

Tek Seferde Okunup yazılabilecek Adres sayısı :

Modbus protokolü tek seferde kaç adet adresin okunup yazılabileceğini tanımlamıştır.
Bu tek komut ile transfer edilecek datayı 255 byte ile sınırlandırır.
Oku komutu için limit 2000 coil veya Discrete Input yada 125 Register dır.
Yaz komutu için limit 1968 coil,123 Register ‘dır.

Modbus Adresleri ile ilgili bazı yanlış kavramlar



Modbus Adresleri ile ilgili bazı yanlış kavramlar





Modbus standartlarına göre adresler değişik kapsamda  adreslerden oluşan coils,holding register vs olarak tanımlanan 0 dan 65,535 e kadar tamsayılardır.Buna rağmen bazı imalatçılar donanımlarında Modbus
adreslerinin gerçekte bir parçası olmayan adres ön ekleri kulanmaktadır.Bunun kaynağı Modbus Protokolü kullanan bazı PLC lerde aynı zamanda iç veri tablosunda ön ekler kullanılmasıdır:Bu durum IEC tipi PLC lerde
"I", "Q", "V" vs adres ön eklerinin kullanılması gibidir.

Öte yandan,bu ön ekler dökümantasyon için geçerli olan ancak Modbus Protokolünün gönderdiği mesajların  bir parçası olmayan ön eklerdir (prefix)
Bu ön ekler Modbus standartlarında  bir yerlerde bahsedilmiş şeylerdir.Ancak aşağıdaki örnekler dökümantasyon bazlı eski konvanda tipik kullanımı gösterir
  • 0xxxx - Coils.
  • 1xxxx - Discrete inputs.
  • 3xxxx - Input registers.
  • 4xxxx - Holding registers.
Dikkat edin  2xxxx adres ön eki yoktur.
Sayısal öneklere ek olarak bazı dökümantasyonlarda protokol adreslerine atıfta bulunulur
(0 da başlayan adresler )öte yandan diğer dökümanlar data model adreslerine atıfta bulunur ( 1 de başlayan adresler ). Bu ise ilk Holding Register ‘i 0 ve ya 1 ( 40000 e 40001 ön ek kullanımı ) yapabilir.
Öte yandan bu haberleşme hattı üzerinden Modbus mesajı olarak gideceği anlamını taşımaz.Modbus Protokol mesajı için en düşük adres her zaman “0” dır “1” değildir.
Standart Modbus Protokolünde terimler ve adresler ön ekler ve ofset ler içermez.
Sensör blokları ,vanalar ve diğer cihazlarını imalatçı kendi cihaz kataloğunda farklı şekilde belgelendirmiş olabilir.

Modbus Tablo Adresleri



Modbus Tablo Adresleri

Sistem Veri Tablosu


Modbus data tablo adresleri basit tam sayılardır.Her adres tipi (discrete input,coil,input register,holding register) kendi numaralandırılmış adres setine sahiptir. Örneğin discrete input 42 ile coil 42 ayrı adreslerdir.
Modbus Protokol adresleri ile data model adreslerini birbirinden ayırır.
Protokolde kullanılan adresler 0 dan 65535 e kadar numaralandırılmıştır.Öte yandan imalatçı ( vendor)  dokümantasyonu 1 den başlayıp 65536 ya kadar numaralanmış olabilir.
Bu dokümantasyon protokol adreslerine ( ilk adres 0 olarak ) referans verecektir.
65536 adrese sahip olmak mümkün olmasına rağmen her bir tipe ait adresler gerçekte tek bir özel cihazda gerçeklenir (Sensör bloku,vana bankı,PLC v.s) ve genelde bundan daha azdır.Her bir cihaz tasarımcısının uygulamasını neyin anlamlı kılacağına kendisi karar vermelidir.Bu yüzden bir hafıza haritası “ memory map” sağlayarak yada adres listesi vererek cihazlarındaki adreslerde neyin “gerçeklendiğini” ve her bir birinin ne yaptığını anlatmaları gerekir.

Adres tiplerine bindirme “overlay” yapmakta mümkündür.Yani, aynı fiziki hafıza adresine refere eden birden fazla değişik adres tiplerine sahip cihaz tasarlamak mümkündür.
Örneğin Holding Register 10 ile Input Register 10 ‘u aynı hafıza birimine atamak mümkündür.Bu durumda holding regsiter 10 a yazdığınız değer Input Register 10 da da görünebilecektir.Bu durum Coil ve Discrete Inputs içinde geçerlidir.
Aynı şekilde coils ve discrete inputs register da paket edilebilir.Örneğin coils 0 dan 15 e kadar Holding Register  0’da Coils 16 dan 31 ‘e Holding Register 1 ‘e ve saire.
Bu birden çok coil in  harfler “words” olarak okunması ( veya yazılmasına) müsaade eder.
Data tiplerini ve Coil Paketlerini  register lara  bindirmek mümkün olsada pratikte pek rastlanan bir durum değildir.