-
 
No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.

ros_monitoring package from cedri_ros_monitoring repo

ros_monitoring

Package Summary

Tags No category tags.
Version 0.0.1
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/alf767443/ros_monitoring.git
VCS Type git
VCS Version main
Last Updated 2023-06-30
Dev Status DEVELOPED
CI status Continuous Integration : 0 / 0
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The ros_monitoring package

Additional Links

Maintainers

  • Andre Luis Frana

Authors

  • Andre Luis Frana

ros_monitoring

This ROS package is intended to collect data from topics, transform, store, manage and send them to a MongoDB server. Being designed to maintain the collection even in connection drops with the server.

Install

To install this ROS package:

cd ~/catkin_ws/src
git clone https://github.com/alf767443/ros_monitoring.git
sudo chmod +x src/get*
cd ..
catkin_make

Installation of node_monitoring is recommended. Check the link:

https://github.com/alf767443/node_monitoring.git

Get the ROS running nodes (getNodes.py)

This package is intended to get the running nodes and connections between them. Publishing a message of type NodesInformation from ros_monitoring, in the publisher /nodesStatus

Published information (/nodesStatus)

The information published by this node is as follows:

{
    nodes: 	[{
	    node: -- node name.................as string
	    publications: [{
		    topic:    -- topic name....as string
		    msg_type: -- message type..as string
	    }, ...],
	    subscriptions: [{
		    topic:    -- topic name....as string
		    msg_type: -- message type..as string
	    }, ...],
	    services: [ -- node name...........as string, ...]
    }, ...]
}

Get the connection with an IP and port (getSignal.py)

This topic should get the connection status between the computer running ROS, with other IPs pings periodically. The information is published in a message of type SignalInformation from ros_monitoring in the publisher /connectionStatus.

pinglist (pingList.py)

To configure which IPs the node will ping, you must edit the file pingList.py, which is a dictionary in the following format:

{	
    'ip': 	    -- IP to ping......as string
    'port': 	    -- Port to ping....as integer
	'interval': -- Ping interval...as integer
	'timeout':  -- Timeout ping....as integer
	'count':    -- Number of trys..as integer
}

Published information (/connectionStatus)

The information published by this node is as follows:

{
    Info_ping: [{
	    is_alive: 	  	  -- The status of connection...as integer
		packets_sent: 	  -- Number of sent packets.....as integer
		packets_loss: 	  -- Number of loss packets.....as integer
		packets_received: -- Number of received packets.as integer
		port:	          -- Port it was sent to........as integer
		rtt_max:	  -- Maximum connection RTT.....as float
		rtt_min:	  -- Minimum connection RTT.....as float
		rtt_avg:	  -- Average connection RTT.....as float
		ip_target:	  -- IP it was ping.............as string
		}, ...]
 }

More information

This package was developed as part of the thesis for a Master in Industrial Engineering with a specialization in Electrical Engineering at the Polytechnic Institute of Bragança (IPB), the work was developed at the Research Centre in Digitalization and Intelligent Robotics (CeDRI). The project consists of three repositories with the links below:

https://github.com/alf767443/node_monitoring

https://github.com/alf767443/ros_monitoring

https://github.com/alf767443/UGV-dashboard

https://github.com/alf767443/UGV-backend

CHANGELOG
No CHANGELOG found.

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros_monitoring at Robotics Stack Exchange

No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.
No version for distro kinetic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.