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.
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
- Tükrözze a jeladó switchportját egy elemzőhöz csatlakozó hálózati kártyára.
- 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).
- Nyissa meg a pcap-fájlt, és szűrjön a jeladó MAC-címére, valamint a 2222-es UDP-portra.
- 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
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.