Skip to content

Commit f2bbd38

Browse files
authored
Merge pull request #1417 from Kanazawanaoaki/add-diagnos-listener
Add diagnostics_ethercat_summarizer.py for packet drop confirmation
2 parents fb73fc3 + 51d2a3d commit f2bbd38

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
#!/usr/bin/env python
2+
3+
import rospy
4+
5+
from diagnostic_msgs.msg import DiagnosticArray
6+
7+
8+
def callback(data):
9+
flag = False
10+
for e in data.status:
11+
#EtherCAT Device
12+
for v in e.values:
13+
if v.key =='Drops':
14+
flag = True
15+
print(e.name + "Drops: {}".format(v.value))
16+
#EtherCAT Master
17+
if e.name == 'EtherCAT Master':
18+
for v in e.values:
19+
if v.key =='Dropped Packets':
20+
print(e.name + " Dropped Packets: {}".format(v.value))
21+
if v.key =='RX Late Packet':
22+
print(e.name + " RX Late Packet: {}".format(v.value))
23+
24+
if flag:
25+
print("--------------------------------------------")
26+
27+
28+
def listener():
29+
rospy.init_node('diagnostics_ethercat_summarizer', anonymous=True)
30+
rospy.Subscriber('/diagnostics', DiagnosticArray, callback)
31+
rospy.spin()
32+
33+
if __name__ == '__main__':
34+
listener()

0 commit comments

Comments
 (0)