EtherNet/IP UDP Capture on Allen-Bradley 842E Encoders — figure 1

EtherNet/IP UDP-forgalom rögzítése Allen-Bradley 842E jeladóknál

Az AB842E UDP-csomagrögzítése nem tud leállni hiányzó válaszok esetén – a szűrők csak a belefoglalást támogatják. Használjon pufferrögzítést és UDP-ciklusidő...

Amikor egy Allen-Bradley 842E EtherNet/IP abszolút jeladó elhallgat, az ösztönös rögzítési kérés ez: „állítsd le a nyomkövetést N megválaszolatlan ENIP-kérés után”. Ez a gondolkodási modell jól illeszkedik a létradiagram-logikához, de nem alkalmazható a Wiresharkra, a tcpdumpra vagy a legtöbb készülékes rögzítési motorra. Ezek az eszközök a bevonási szűrőket a már létező kereteken értékelik ki. Egy néma jeladó nem küld UDP/2222 Class 1 kereteket, amelyekre a szűrő illeszkedhetne, így nincs mire leállítani a rögzítést. A diagnosztikai probléma a hiány észlelése, nem az aláírás illesztése.

EtherNet/IP UDP-rögzítés Allen-Bradley 842E jeladókon — 1. ábra

Rögzítsen folyamatosan a 2222-es UDP-porton, majd hasonlítsa össze az észlelt jeladókereteket az RPI-számítással — ne várjon olyan negatív triggerre, amelyet az elemző nem tud kifejezni.

Hatókör és portok

Ez a munkafolyamat a 842E-SIP, 842E-MIP, 842E-DIP és M12 változatokra vonatkozik, amelyeket a 842E-UM001 dokumentál. Ellenőrizze a firmware-verziót a jeladó weboldalán a Diagnostics → Device Information menüpontban. A futásidejű I/O CIP Class 1 protokollt használ a 2222-es UDP-porton; az explicit üzenetküldés EtherNet/IP-beágyazást használ a 44818-as TCP/UDP-porton. A rögzítési profilokban mindkettőt engedélyezni kell, a kommunikációkimaradás vizsgálata azonban a 2222-es porton létrehozott és fogadott assemblykre összpontosít.

Port Forgalom Tipikus ütemezés
2222 Implicit I/O (létrehozott/fogadott) RPI, gyakran 10 ms
44818 Explicit CIP Igény szerint
67/68 BOOTP/DHCP Csak bekapcsoláskor

Miért hibásodnak meg a hiányra épülő triggerek?

A megjelenítési szűrők keretenként alkalmazott logikai predikátumok. Egy ilyen szűrő: (udp.port == 2222) && (eth.src == <842E_MAC>) megtartja a jeladó kereteit, amikor azok megérkeznek. Amikor nem érkeznek meg, a predikátum soha nem válik igazzá. A „négy kérés nulla válasszal” állapot fenntartásához keretek közötti állapotra lenne szükség, amelyet a szabványos rögzítőeszközök nem tartanak nyilván. Ezt az állapotot a Studio 5000 moduldiagnosztikai lapjai, a FactoryTalk Linx eszközstatisztikái és a rögzítés utólagos elemzése tudják kifejezni.

1. kerülőmegoldás: körkörös puffer, majd számlálás

  1. Tükrözze a jeladó switchportját egy elemzőhöz csatlakozó hálózati kártyára.
  2. Rögzítse a 2222-es UDP-forgalmat körkörös pufferbe (például öt darab, egyenként 40–50 MB-os fájlba).
  3. Nyissa meg a pcap-fájlt, és szűrjön a jeladó MAC-címére, valamint a 2222-es UDP-portra.
  4. Hasonlítsa össze a keretszámot az observation_time / RPI értékkel. A körülbelül 5%-ot meghaladó eltérések vizsgálatot igényelnek.
tcpdump -i eth0 -w capture.pcap udp port 2222
# Wireshark megjelenítési szűrő: eth.addr == <842E_MAC> && udp.port == 2222
EtherNet/IP UDP-rögzítés Allen-Bradley 842E jeladókon — 2. ábra

2. kerülőmegoldás: RPI-hoz igazított időablakok

Igazítsa a rögzítési időablakokat a jeladó RPI-jának egész számú többszöröseihez, hogy a puffer teljes I/O-csereciklusokat tartalmazzon. 10 ms-os RPI esetén egy 10 másodperces ablaknak körülbelül 1000 Class 1 keretet kell tartalmaznia, ha a kapcsolat megfelelően működik. Az „előző keret óta eltelt másodpercek” oszlopban az RPI háromszorosánál hosszabb rések jelentik a gyakorlati leállítási feltételt az áttekintés során.

3. kerülőmegoldás: CIP-állapot és switchszámlálók

Adjon ki időszakos Get_Attribute_Single olvasásokat a CIP Identity Object 0x01 osztályának 1. példányára, 6. attribútumára (Status). Az Owned vagy Configured bitek változásai azt jelzik, hogy a Class 1 kapcsolat megszakadt — ez gyakran három kihagyott RPI után történik. Ettől függetlenül kérdezze le a menedzselhető switch ifOutUcastPkts számlálóját a jeladó portján; a 3 × RPI értéknél hosszabb ideig változatlan számláló pcap-fájl nélkül is megerősíti a kommunikációkimaradást.

Helyszíni eljárás és buktatók

Ellenőrizze az IP-címet, az RPI-t és az assemblypéldányokat (alapértelmezés szerint létrehozott 0x04 / fogadott 0x01) a Logix-modul konfigurációjával összevetve. Ellenőrizze a kapcsolatjelző LED-eket, rögzítsen hatvan másodpercig, számolja meg a kereteket, majd próbáljon CIP-resetet végrehajtani, ha a darabszám nulla. Ha a forgalom a reset után helyreáll, de továbbra is kimaradnak az RPI-pontok, az kábelzajra, az M12 tápfeszültségének beesésére vagy duplikált IP-címre utal. Az áramtalanítás és újraindítás után is fennálló kommunikációkimaradás az Ethernet PHY meghibásodására utal — cserélje ki a jeladót. Ne vesztegesse az időt „válasz hiányakor leálló” trigger létrehozására; az elemző ezt nem tudja kifejezni. Ha egy egység meghibásodik a helyszínen, a jeladó- és vezérlőpótalkatrészeket igazítsa az üzem PLC- és PAC-szabványaihoz.

A szerzőről

Mark Townsend | vezető automatizálási mérnök – Allen-Bradley rendszerek

Mark Townsend vezető automatizálási mérnök, több mint 18 év tapasztalattal az Allen-Bradley platformokon, többek között a ControlLogix, a CompactLogix és a régebbi SLC-500 rendszereken. Mindennapi munkája az RSLogix / Studio 5000 logikák fejlesztése és a FactoryTalk View HMI-k üzembe helyezése elöregedett és vegyes összetételű rendszereken.

EtherNet/IP UDP-forgalom rögzítése Allen-Bradley 842E jeladóknál

Az AB842E UDP-csomagrögzítése nem tud leállni hiányzó válaszok esetén – a szűrők csak a belefoglalást támogatják. Használjon pufferrögzítést és UDP-ciklusidőzítést a néma EtherNet/IP elkülönítéséhez.

Amikor egy Allen-Bradley 842E EtherNet/IP abszolút jeladó elhallgat, az ösztönös rögzítési kérés ez: „állítsd le a nyomkövetést N megválaszolatlan ENIP-kérés után”. Ez a gondolkodási modell jól illeszkedik a létradiagram-logikához, de nem alkalmazható a Wiresharkra, a tcpdumpra vagy a legtöbb készülékes rögzítési motorra. Ezek az eszközök a bevonási szűrőket a már létező kereteken értékelik ki. Egy néma jeladó nem küld UDP/2222 Class 1 kereteket, amelyekre a szűrő illeszkedhetne, így nincs mire leállítani a rögzítést. A diagnosztikai probléma a hiány észlelése, nem az aláírás illesztése.

EtherNet/IP UDP-rögzítés Allen-Bradley 842E jeladókon — 1. ábra

Rögzítsen folyamatosan a 2222-es UDP-porton, majd hasonlítsa össze az észlelt jeladókereteket az RPI-számítással — ne várjon olyan negatív triggerre, amelyet az elemző nem tud kifejezni.

Hatókör és portok

Ez a munkafolyamat a 842E-SIP, 842E-MIP, 842E-DIP és M12 változatokra vonatkozik, amelyeket a 842E-UM001 dokumentál. Ellenőrizze a firmware-verziót a jeladó weboldalán a Diagnostics → Device Information menüpontban. A futásidejű I/O CIP Class 1 protokollt használ a 2222-es UDP-porton; az explicit üzenetküldés EtherNet/IP-beágyazást használ a 44818-as TCP/UDP-porton. A rögzítési profilokban mindkettőt engedélyezni kell, a kommunikációkimaradás vizsgálata azonban a 2222-es porton létrehozott és fogadott assemblykre összpontosít.

Port Forgalom Tipikus ütemezés
2222 Implicit I/O (létrehozott/fogadott) RPI, gyakran 10 ms
44818 Explicit CIP Igény szerint
67/68 BOOTP/DHCP Csak bekapcsoláskor

Miért hibásodnak meg a hiányra épülő triggerek?

A megjelenítési szűrők keretenként alkalmazott logikai predikátumok. Egy ilyen szűrő: (udp.port == 2222) && (eth.src == <842E_MAC>) megtartja a jeladó kereteit, amikor azok megérkeznek. Amikor nem érkeznek meg, a predikátum soha nem válik igazzá. A „négy kérés nulla válasszal” állapot fenntartásához keretek közötti állapotra lenne szükség, amelyet a szabványos rögzítőeszközök nem tartanak nyilván. Ezt az állapotot a Studio 5000 moduldiagnosztikai lapjai, a FactoryTalk Linx eszközstatisztikái és a rögzítés utólagos elemzése tudják kifejezni.

1. kerülőmegoldás: körkörös puffer, majd számlálás

  1. Tükrözze a jeladó switchportját egy elemzőhöz csatlakozó hálózati kártyára.
  2. Rögzítse a 2222-es UDP-forgalmat körkörös pufferbe (például öt darab, egyenként 40–50 MB-os fájlba).
  3. Nyissa meg a pcap-fájlt, és szűrjön a jeladó MAC-címére, valamint a 2222-es UDP-portra.
  4. Hasonlítsa össze a keretszámot az observation_time / RPI értékkel. A körülbelül 5%-ot meghaladó eltérések vizsgálatot igényelnek.
tcpdump -i eth0 -w capture.pcap udp port 2222
# Wireshark megjelenítési szűrő: eth.addr == <842E_MAC> && udp.port == 2222
EtherNet/IP UDP-rögzítés Allen-Bradley 842E jeladókon — 2. ábra

2. kerülőmegoldás: RPI-hoz igazított időablakok

Igazítsa a rögzítési időablakokat a jeladó RPI-jának egész számú többszöröseihez, hogy a puffer teljes I/O-csereciklusokat tartalmazzon. 10 ms-os RPI esetén egy 10 másodperces ablaknak körülbelül 1000 Class 1 keretet kell tartalmaznia, ha a kapcsolat megfelelően működik. Az „előző keret óta eltelt másodpercek” oszlopban az RPI háromszorosánál hosszabb rések jelentik a gyakorlati leállítási feltételt az áttekintés során.

3. kerülőmegoldás: CIP-állapot és switchszámlálók

Adjon ki időszakos Get_Attribute_Single olvasásokat a CIP Identity Object 0x01 osztályának 1. példányára, 6. attribútumára (Status). Az Owned vagy Configured bitek változásai azt jelzik, hogy a Class 1 kapcsolat megszakadt — ez gyakran három kihagyott RPI után történik. Ettől függetlenül kérdezze le a menedzselhető switch ifOutUcastPkts számlálóját a jeladó portján; a 3 × RPI értéknél hosszabb ideig változatlan számláló pcap-fájl nélkül is megerősíti a kommunikációkimaradást.

Helyszíni eljárás és buktatók

Ellenőrizze az IP-címet, az RPI-t és az assemblypéldányokat (alapértelmezés szerint létrehozott 0x04 / fogadott 0x01) a Logix-modul konfigurációjával összevetve. Ellenőrizze a kapcsolatjelző LED-eket, rögzítsen hatvan másodpercig, számolja meg a kereteket, majd próbáljon CIP-resetet végrehajtani, ha a darabszám nulla. Ha a forgalom a reset után helyreáll, de továbbra is kimaradnak az RPI-pontok, az kábelzajra, az M12 tápfeszültségének beesésére vagy duplikált IP-címre utal. Az áramtalanítás és újraindítás után is fennálló kommunikációkimaradás az Ethernet PHY meghibásodására utal — cserélje ki a jeladót. Ne vesztegesse az időt „válasz hiányakor leálló” trigger létrehozására; az elemző ezt nem tudja kifejezni. Ha egy egység meghibásodik a helyszínen, a jeladó- és vezérlőpótalkatrészeket igazítsa az üzem PLC- és PAC-szabványaihoz.

A szerzőről

Mark Townsend | vezető automatizálási mérnök – Allen-Bradley rendszerek

Mark Townsend vezető automatizálási mérnök, több mint 18 év tapasztalattal az Allen-Bradley platformokon, többek között a ControlLogix, a CompactLogix és a régebbi SLC-500 rendszereken. Mindennapi munkája az RSLogix / Studio 5000 logikák fejlesztése és a FactoryTalk View HMI-k üzembe helyezése elöregedett és vegyes összetételű rendszereken.

Hozzászólás írása

Felhívjuk a figyelmedet, hogy a hozzászólásokat jóvá kell hagyni a közzétételük előtt.