Anvil

Anvil – Dovmenin Kalbi

Her demirci atolyesinde ors merkezi aractir – burada metal sekil verilir, sertlestirilir ve islenir. Anvil, PLC calisma zamani ile protokol kopruleri arasindaki ara katmandir. Proses verileriniz burada dovulur: alinir, donusturulur ve dogru alicilara dagitilir.

Anvil, surecler arasi iletisim icin tescilli bir sifir kopyalama paylasimli bellek tasima katmani kullanir. Serializasyon yok, kopyalama yok, odun yok.


Mimari

+--------------+         +------------+         +------------------+
|              |         |            |         |                  |
| PLC Programi |<------->|  anvild    |<------->|  Modbus Koprusu  |---> Saha Cihazlari
| (IEC Kodu)   |  gRPC   | (Daemon)   |  Anvil  |  EtherCAT Koprusu|---> Suruculer
|              |         |            |         |  Profibus Koprusu |---> Sensorler
+--------------+         +------------+         |  OPC-UA Koprusu  |---> SCADA
                                                +------------------+

                         <--- Anvil --->
                         Sifir Kopyalama IPC
                         Paylasimli Bellek

anvild ile protokol kopruleri arasindaki veri alisverisi Anvil uzerinden gerceklesir – sifir kopyalama paylasimli bellege dayali yuksek performansli bir IPC kanali. Her segment kendi iletisim kanalini alir.


Neden Anvil?

Mikrosaniye Gecikmesi

Geleneksel IPC mekanizmalari (borular, soketler, mesaj kuyruklari) surecler arasinda veri kopyalar. Anvil her kopyayi ortadan kaldirir. Veriler paylasimli bellekte bulunur – alici dogrudan okur.

YontemTipik GecikmeKopyalar
TCP Soketi50-200 us2-4
Unix Soketi10-50 us2
Anvil< 1 us0

Endustriyel Kalite

  • Deterministik davranis – kritik yolda dinamik bellek ayirma yok
  • Kilitsiz algoritmalar – engelleme yok, kilitlenme yok
  • Yayinla/Abone ol modeli – uretici ve tuketici arasinda gevsek baglanti
  • Otomatik yasam dongusu yonetimi – koprulerin izlenmesi ve cokme durumunda yeniden baslatilmasi

IEC Programinda PUBLISH/SUBSCRIBE

Anvil, IEC 61131-3 programlamaya sorunsuz olarak entegre olur:

VAR_GLOBAL PUBLISH 'Motorlar'
    K1_Sebeke   AT %QX0.0 : BOOL;
    K1_Hiz      AT %QW10  : INT;
END_VAR

VAR_GLOBAL SUBSCRIBE 'Sensorler'
    Sicaklik    AT %IW0   : INT;
    Basinc      AT %IW2   : INT;
END_VAR

PUBLISH/SUBSCRIBE anahtar kelimeleri, IEC 61131-3 standardina bir ForgeIEC uzantisidir. Derleyici otomatik olarak Anvil baglamalarini olusturur.


Desteklenen Protokoller

ProtokolKopruDurum
Modbus TCPtongs-modbustcpMevcut
Modbus RTUtongs-modbusrtuMevcut
EtherCATtongs-ethercatGelistirmede
Profibus DPtongs-profibusGelistirmede
OPC-UAtongs-opcuaPlanlanmis

Her kopru bagimsiz bir suerec olarak calisir. anvild, kopruleri otomatik olarak baslatir, izler ve yeniden baslatir. Bir koprunun cokmesi ne PLC’yi ne de diger kopruleri etkiler.


Teknik Detaylar

  • IPC Cercevesi: Anvil (tescilli sifir kopyalama paylasimli bellek)
  • Mimari: Veri yolu segmenti basina bir yayinci/abone kanali
  • Veri Formati: Ham IEC degiskenleri – serializasyon yok, ek yuk yok
  • Platformlar: x86_64, ARM64, ARMv7 (Linux)
  • Suerec Modeli: Aktif segment basina bir kopru suereci

Anvil – Verilerin kontrol komutlarina dovuldugu yer.

blacksmith@forgeiec.io