rclshark2 is released.
latest : v1.0.3
Monitor the status of computers on a network using the DDS function of ROS2.
- Zenn : https://zenn.dev/array/articles/9fd8cb5941bb94
- DockerHub : https://hub.docker.com/r/ray255ar/rclshark
- Computer_msgs : https://github.com/Ar-Ray-code/computer_msgs
- rclshark-smi : https://github.com/Ar-Ray-code/rclshark-smi
- Website : https://ar-ray-code.github.io/05_rclshark
- ROS2 foxy-base Installation
- python3-colcon-common-extensions
- python3-psutil
- build-essential
- Ubuntu 20.04 (x86_64, Armv8) (Full support)
- Raspberry Pi OS (aarch64) (Full support)
- Windows 11 (x86_64) (rclshark-smi only)
Repository : https://github.com/Ar-Ray-code/rclshark
rclshark is an IP address display system that takes advantage of the DDS publishing nature of the ros2 node to the local network, and can recognize any device with ROS2 installed. rclshark is also a service server, and has a function to Repositoryrt computer status using psutil.
See rclshark-smi for details.
If you want to know how to install ROS-Foxy , please check ROS2-Foxy-Installation.
# ROS-Foxy & depends Installation
sudo apt update && sudo apt install curl gnupg2 lsb-release python3-psutil python3-colcon-common-extensions build-essential git
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
sudo apt install ros-foxy-base
After installation, rclshark will start automatically.
#rclshark installation
git clone https://github.com/Ar-Ray-code/rclshark.git
sudo bash rclshark/rclshark/install.bash /opt/ros/foxy
If you want to enable rclshark immediately, run $ sudo systemctl start rclshark.service
.
sudo systemctl stop rclshark.service
sudo systemctl disable rclshark.service
sudo bash ~/ros2_ws/src/rclshark/rclshark/install.bash uninstall
Docker container is used for viewer testing and communication load testing, but can also be used as a Raspberry Pi replacement for trial purposes.
docker pull ray255ar/rclshark
RUN docker container
docker run -it --rm rclshark
Since rclshark is an application that uses the basic functions of ROS2, you can find it with the ros2 command.
## Confirmation rclshark 1
ros2 node list | grep ip_
> /ip_192.168.11.10_end
> /ip_192.168.11.22_end
## Confirmation rclshark 2
ros2 service list | grep endcb
> /ip_192.168.11.10_endcb
> /ip_192.168.11.22_endcb
Now you can safely forget your IP address.:wink:
Repository : https://github.com/Ar-Ray-code/rclshark-smi
You can use rclshark to check the hardware status of multiple computers. You don't even need to bother opening htop. Good for you! 😊
IP addresses are sorted in ascending order and are dynamically added and removed.
rclshark-smi is installed with rclshark. It can also be built and used as a regular ROS2 package. ros2 run rclshark_smi rclshark_smi
## Install
git clone --recursive https://github.com/Ar-Ray-code/rclshark.git
sudo bash rclshark/rclshark/install.bash /opt/ros/foxy
## Run rclshark-smi
rclshark-smi
- rclshark-smi v1.0.2 limits the display to only one time.
Repository : https://github.com/Ar-Ray-code/rclshark-bridge
rclshark-bridge performs CSV conversion of data in order to use rclshark on other platforms.
Repository : https://github.com/Ar-Ray-code/rclshark-web
rclshark-web is data viewer
Before creating the web server, please set up the Python dependency module and ROS2 environment.
git clone https://github.com/Ar-Ray-code/rclshark-web.git
git clone https://github.com/Ar-Ray-code/rclshark-bridge.git
pip3 install -r rclshark-web/requirements.txt
source /opt/ros/foxy/setup.bash
python3 rclshark-bridge/rclshark_bridge/rclshark_bridge.py &
python3 rclshark-web/flask_main.py
Access http://localhost:5000