How gtcodes22/cubiclean_farm_robot works
Cubiclean’s intended workflow is waypoint-based bedding surveillance: the robot navigates stops, collects chemical and odometry readings, sends CSVs to a PC server, and exposes readings to operators through web and app interfaces. The README documents navigation and viewer capabilities whose implementation files are absent from this tree; those are represented only at supported enclosing-directory paths. The sampled source confirms the client’s command handling, while detailed sensor, server, and viewer wiring is based on README descriptions.
Main entry points: server_main.py Server runtime · bot_get_readings.py Bot collection · bot_main.py Robot bridge · ThreadedTCPServer.py TCP receiver
Components 17
Robot workflow
- Waypoint navigation
turtlebot3_ws - Bot collection
bot_get_readings.py - Robot bridge
bot_main.py - Command handler
turtlebot_client/query_handler.py
Sensing
- Sensor logger
bed_webview/sci_i2c_logger_unified.py - Sensor drivers
chemical_sensor_drivers - Odometry capture
bot_get_readings.py
Backend
- Server runtime
server_main.py - TCP receiver
server/ThreadedTCPServer.py - Packet protocol
server/packet.py - Bed data
server/BedData.py - Operator GUI
server/pyqt/mainwindow.py
Operator interfaces
- Web dashboard
bed_webview - Mobile desktop app
data_viewer
Other components
- Operator
- PC server
- Onboard sensors
Connections 17
- Waypoint navigation → Bot collection: triggers at stops
- Bot collection → Sensor logger: calls logger
- Sensor logger → Sensor drivers: reads sensors
- Bot collection → Odometry capture: captures alongside
- Bot collection → Robot bridge: signals CSV paths
- Robot bridge → Server runtime: sends CSV data
- PC server → Server runtime: hosts
- Server runtime → TCP receiver: starts receiver
- TCP receiver → Packet protocol: decodes packets
- TCP receiver → Bed data: stores CSVs
- Server runtime → Operator GUI: starts GUI
- Server runtime → Web dashboard: serves dashboard
- Operator → Web dashboard: views readings
- Operator → Mobile desktop app: views data
- Web dashboard → Bed data: reads CSVs
- Command handler → Robot bridge: signals commands
- Robot bridge → Command handler: dispatches queries