Endüstriyel IoT Sistemlerinde Modbus Protokolü Entegrasyonu

Amazeng Teknik Ekip
6 dakika okuma
ModbusIoTRS485Endüstriyel Otomasyon

Modbus Protokolüne Giriş

Modbus, 1979'da Modicon (şimdi Schneider Electric) tarafından geliştirilen ve günümüzde hala endüstriyel otomasyon sistemlerinde en yaygın kullanılan protokollerden biridir.

Modbus Varyantları

Modbus RTU

RS485 veya RS232 seri iletişim üzerinden çalışır. Binary formatta veri iletimi yapar ve CRC kontrol toplamı kullanır.

Modbus TCP

Ethernet ağları üzerinden TCP/IP ile çalışır. RTU'ya göre daha hızlı ve güvenilirdir.

Modbus ASCII

Seri iletişim üzerinden ASCII karakterlerle veri iletir. Hata ayıklama için daha kolaydır ancak RTU'dan daha yavaştır.

RS485 ile Modbus RTU Uygulaması

ZMA Data Acquisition sistemimizde kullandığımız RS485 tabanlı Modbus implementasyonu:

#define MODBUS_SLAVE_ID 1
#define BAUD_RATE 9600

typedef struct {
    uint8_t slave_id;
    uint8_t function_code;
    uint16_t start_address;
    uint16_t num_registers;
    uint16_t crc;
} modbus_request_t;

uint16_t calculate_crc16(uint8_t *buffer, uint8_t length) {
    uint16_t crc = 0xFFFF;
    for (uint8_t i = 0; i < length; i++) {
        crc ^= buffer[i];
        for (uint8_t j = 0; j < 8; j++) {
            if (crc & 0x0001) {
                crc = (crc >> 1) ^ 0xA001;
            } else {
                crc >>= 1;
            }
        }
    }
    return crc;
}

Function Code'lar

En yaygın kullanılan Modbus function code'lar:

  • 0x03: Holding Register Okuma
  • 0x04: Input Register Okuma
  • 0x06: Tek Register Yazma
  • 0x10: Çoklu Register Yazma

Pratik Uygulama Önerileri

  1. Timeout Yönetimi: Her istek için uygun timeout değerleri belirleyin
  2. Hata İşleme: Exception code'ları düzgün handle edin
  3. Bus Terminasyonu: RS485 hattının başında ve sonunda 120Ω direnç kullanın
  4. Adres Planlama: Slave cihaz adreslerini düzenli tutun

Sonuç

Modbus protokolü, basitliği ve güvenilirliği sayesinde endüstriyel sistemlerde tercih edilmeye devam ediyor. IoT entegrasyonunda da bridge çözümleriyle modern sistemlerle uyumlu çalışabilir.


ZMA Data Acquisition sistemimiz, Modbus RTU desteği ile endüstriyel sistemlerinize kolayca entegre olur. Detaylı bilgi için iletişime geçin.