Creates an interactive dashboard for a mobile robot via ROS2, retrieving robot data, and allowing for Nav2 control over the web.
Requires ROS1 driver bridging to ROS2. Follow setup instructions for KMR this repository
Create directory & virtual enviornment & install
mkdir cs_dashboard && cd cs_dashboard
python3 -m venv venv
source venv/bin/activate
pip install numpy dash dash-bootstrap-components pandas plotly requests tinytuya websocket-client scipy shapely roslibpy websockets
-
Go to directory
cd cs_dashboard -
Clone repository
git clone https://github.com/CoreSenseEU/cs_mt_dashboard.git -
Run a websocket server from ROS2 pc
ros2 run rosbridge_server rosbridge_webocket --port=<port>
NOTE
-
In 'defs.py' replace rosIP with your ROS2 PC IP.
-
Run dashboard.py & go to IP address given to access dashboard
- assets - images, cvs data files, txt logic files ect
- APIs - Connect to Mir/shelly to handle requests
- defs.py - Defines missions from mir
- network.py - to be updated...void?
- networkMap.py - records robot position and signal strength data to be plotted
- rosAMCL.py - performs localisation
- rosDiagnostics.py - recieves signal level from mir ros driver
- rosStatus.py -provides status of the robot
- rvizGUI.py - can see ros rviz
- layout2.py - plotly dash layout of dashboard
- dashboard.py - handles all call backs, creates map plot