Siemens S7
Siemens S7 protokolü, Siemens S7 serisi PLC’ler ile TCP/IP üzerinden haberleşme sağlar. ProfiNET (Process Field Network) endüstriyel ethernet standardı üzerine çalışır ve varsayılan olarak port 102 kullanır.
inSCADA, S7 protokolünü yalnızca Client rolünde destekler.
Desteklenen PLC Serileri
Section titled “Desteklenen PLC Serileri”- Siemens S7-300
- Siemens S7-400
- Siemens S7-1200
- Siemens S7-1500
Veri Modeli
Section titled “Veri Modeli”Connection (Bağlantı — IP, port, rack, slot)└── Device (Cihaz) └── Frame (Veri Bloğu — S7 bellek alanı) └── Variable (Değişken — adres + veri tipi)Yapılandırma
Section titled “Yapılandırma”Connection
Section titled “Connection”| Parametre | Örnek | Açıklama |
|---|---|---|
| Protocol | S7 | Protokol seçimi |
| IP Address | 192.168.1.1 | PLC IP adresi |
| Port | 102 | S7 portu (varsayılan: 102) |
| Rack | 0 | PLC rack numarası (varsayılan: 0) |
| Slot | 0 | PLC slot numarası (S7-1200/1500 için 0, S7-300/400 için 2) |
| Timeout | 5000 ms | Bağlantı timeout süresi |
| Connection Type | S7_BASIC | Bağlantı tipi |
Bağlantı Tipleri
Section titled “Bağlantı Tipleri”| Tip | Açıklama |
|---|---|
| PG | Programlama cihazı bağlantısı |
| OP | Operatör paneli bağlantısı |
| S7_BASIC | Standart S7 bağlantısı (varsayılan) |
Device
Section titled “Device”| Parametre | Örnek | Açıklama |
|---|---|---|
| Scan Time | 1000 ms | Tarama periyodu |
| Scan Type | PERIODIC | PERIODIC veya FIXED_DELAY |
Frame (Veri Bloğu)
Section titled “Frame (Veri Bloğu)”| Parametre | Örnek | Açıklama |
|---|---|---|
| Type | DB | Bellek alanı tipi (aşağıya bakın) |
| Start Address | 0 | Başlangıç byte adresi |
| Quantity | 100 | Okunacak byte sayısı |
| DB Number | 8 | Datablock numarası (yalnızca DB ve DI tipleri için) |
Bellek Alanları (Frame Tipleri)
Section titled “Bellek Alanları (Frame Tipleri)”| Tip | Açıklama | Kullanım |
|---|---|---|
| DB | DataBlock (Peripheral I/O) Area | En yaygın — Global Data Block |
| DI | DataBlock Area | Instance Data Block |
| DB_LOCAL | DataBlock (local) Area | Local Data Block |
| MK | Marker (Flags) Area | Merker alanı (M) |
| PE | PE (Inputs) Instance Area | Giriş alanı (I) |
| PA | PA (Outputs) Instance Area | Çıkış alanı (Q) |
| TM | S7 Timer Area | Zamanlayıcı |
| CT_INPUTS | S7 Counter Area | Sayaç |
| SYS_INFO | System Information | Sistem bilgisi |
| SYSTEM_FLAGS | S7 Counters | Sistem bayrakları |
| TM_IEC | IEC Counters (200 Family) | IEC sayaçlar |
| TM_V | IEC Timers (200 Family) | IEC zamanlayıcılar |
| ANALOG_INPUTS | Analog Inputs (200 Family) | Analog giriş |
| ANALOG_OUTPUTS | Analog Outputs (200 Family) | Analog çıkış |
Variable
Section titled “Variable”| Parametre | Örnek | Açıklama |
|---|---|---|
| Start Address | 0 | Frame içindeki byte ofseti |
| Bit Offset | 0 | Bit ofseti (BIT tipi için, 0-7) |
| Type | REAL | S7 veri tipi |
| Max Len | 0 | String değişkenler için maksimum uzunluk |
Desteklenen Veri Tipleri
Section titled “Desteklenen Veri Tipleri”| Veri Tipi | Boyut | Açıklama |
|---|---|---|
| BIT | 1 bit | Tek bit (Bool) — Bit Offset ile erişilir |
| BYTE | 8 bit | İşaretsiz 8-bit tam sayı |
| WORD | 16 bit | İşaretsiz 16-bit tam sayı |
| INT | 16 bit | İşaretli 16-bit tam sayı |
| DWORD | 32 bit | İşaretsiz 32-bit tam sayı |
| DINT | 32 bit | İşaretli 32-bit tam sayı |
| REAL | 32 bit | 32-bit kayan nokta (Float) |
| LREAL | 64 bit | 64-bit kayan nokta (Double) |
| DATETIME | 8 byte | Tarih ve saat |
| S7STRING | Değişken | S7 string formatı |
| S7WSTRING | Değişken | S7 wide string formatı |
Adres Hesaplama Örneği
Section titled “Adres Hesaplama Örneği”S7 adresleme byte ve bit tabanlıdır. Frame’in başlangıç adresine göre variable adresleri hesaplanır:
Frame: DB8, Start Address: 0, Quantity: 100
Variable örnekleri:├── DB8.DBX0.0 → Start: 0, Bit Offset: 0, Type: BIT (ilk bit)├── DB8.DBX0.1 → Start: 0, Bit Offset: 1, Type: BIT (ikinci bit)├── DB8.DBB2 → Start: 2, Type: BYTE (3. byte)├── DB8.DBW4 → Start: 4, Type: WORD (5-6. byte)├── DB8.DBD8 → Start: 8, Type: REAL (9-12. byte)└── DB8.DBD12 → Start: 12, Type: DINT (13-16. byte)Siemens TIA Portal Ayarları
Section titled “Siemens TIA Portal Ayarları”S7 protokolü ile haberleşme için PLC tarafında bazı ayarların yapılması gerekir. Bu ayarlar TIA Portal V12 ve üzeri sürümlerde geçerlidir.
1. Optimized Block Access’i Devre Dışı Bırakma
Section titled “1. Optimized Block Access’i Devre Dışı Bırakma”S7-1200 ve S7-1500 PLC’lerde Global DB’lerin optimized block access özelliği varsayılan olarak açıktır. inSCADA ile haberleşme için bu özellik kapatılmalıdır:
- TIA Portal’da ilgili DB’ye (Data Block) çift tıklayın
- DB’nin Properties (Özellikler) penceresini açın
- Attributes sekmesinde “Optimized block access” seçeneğinin işaretini kaldırın
- DB’yi kaydedin ve PLC’ye yükleyin
2. Full Access Level Ayarı
Section titled “2. Full Access Level Ayarı”PLC’nin dış haberleşmeye izin vermesi için erişim seviyesi ayarlanmalıdır:
- TIA Portal’da CPU Properties (CPU Özellikleri) bölümüne gidin
- Protection & Security (Koruma ve Güvenlik) sekmesini açın
- Access Level ayarını “Full access (no protection)” olarak seçin
3. PUT/GET İzni
Section titled “3. PUT/GET İzni”S7 protokolü PUT/GET mekanizması ile çalışır. Bu özelliğin PLC’de etkinleştirilmesi gerekir:
- TIA Portal’da CPU Properties bölümüne gidin
- Protection & Security sekmesinde
- “Permit access with PUT/GET communication from remote partner” seçeneğini etkinleştirin (işaretleyin)
Özet: TIA Portal Kontrol Listesi
Section titled “Özet: TIA Portal Kontrol Listesi”| # | Ayar | Konum | Durum |
|---|---|---|---|
| 1 | Optimized block access | DB Properties → Attributes | ☐ Kapalı |
| 2 | Access Level | CPU Properties → Protection | ☐ Full access |
| 3 | PUT/GET permission | CPU Properties → Protection | ☐ Etkin |
Frame Parametreleri Detay
Section titled “Frame Parametreleri Detay”Minutes Offset
Section titled “Minutes Offset”Minutes Offset parametresi, PLC’den okunan zaman damgalarına dakika cinsinden ofset uygular. Örneğin PLC UTC saatinde çalışıyor ve inSCADA yerel saat göstermesi gerekiyorsa:
- UTC+3 (Türkiye) için:
180(3 saat × 60 dakika) - Saat geri almak için negatif değer:
-60(1 saat geri) - Varsayılan:
0(ofset yok)
Scan Time Factor
Section titled “Scan Time Factor”Frame’in tarama periyodu, Device’ın Scan Time değeri ile çarpılarak hesaplanır:
Frame Scan Time = Device Scan Time × Scan Time FactorÖrneğin Device Scan Time = 1000 ms ve Frame Scan Time Factor = 5 ise, bu frame her 5 saniyede bir taranır. Yavaş değişen veriler için factor artırılarak gereksiz haberleşme yükü azaltılabilir.