Web Analytics

CleanIt

⭐ 295 stars Spanish by Sollimann

CleanIt

Estado de compilación codecov rustc mínimo 1.45 versión Mantenimiento Solicitudes de extracción en GitHub Solicitudes de extracción cerradas en GitHub Contador de vistas Licencia: MIT

Software de autonomía de código abierto en Rust-lang con gRPC para los robots aspiradores de la serie Roomba

Motivación

La motivación es construir un software completo de autonomía DIY desde cero (planificación de movimiento, guía y control de movimiento, SLAM, control de misión, visualización 2D/3D, etc.) con una comunicación cliente-servidor en tiempo real usando gRPC asíncrono para la intercomunicación y cómputo distribuido.

La parte de SLAM está en progreso aquí: https://github.com/Sollimann/Occupancy-Grid-FastSLAM/tree/main

¡Contribuciones son bienvenidas!

Si te gustaría contribuir con trabajo y/o ideas, no dudes en revisar el Project Backlog

Ejecutar el cliente Roomba y la API

#### Ejecutar el servidor

$ cargo run --bin streaming-server

#### Ejecutar el cliente

$ cargo run --bin roomba-client

Estructura

#### Diseño del Proyecto
 ├── Cargo.toml (workspace)
 ├── Cargo.lock
 ├── api (lib/bin)
 |   └── client
 |   └── server
 ├── autonomy (bin)
 |   └── mission
 |   └── motion
 |   └── slam
 |   └── perception
 |   └── risk
 ├── drivers (lib)
 |   └── roomba
 |   └── realsense
 |   └── rplidar
 |   └── raspberryPi
 └── proto (lib)
 |   └── roomba_service.proto
 |   └── messages.proto
 |   └── types.proto
 |   └── robot_state.proto
 |   └── map2D.proto
 ├── setup (bin)
 |   └── config
 |   └── main
 └── visualization (bin)
 |   └── urdf
 |   └── map
 |   └── camera
 ``
 
#### Diseño de caja/paquete
bash ├── Cargo.toml ├── Cargo.lock ├── src │ ├── main.rs │ ├── lib.rs │ └── bin │ └── another_executable.rs ├── tests │ └── some_integration_tests.rs ├── benches │ └── simple_bench.rs └── examples └── simple_example.rs

Requisitos previos

Software

#### _Linux_

bash $ [sudo] apt-get install libudev-dev pkg-config

Se requiere permiso de usuario serial para conectar con Create a través del puerto serial. Puedes añadir tu usuario al grupo dialout para obtener permiso:
bash $ [sudo] usermod -a -G dialout $USER
Cierre sesión y vuelva a iniciar sesión para que esto surta efecto.
##### _MacOs_
bash $ brew install TODO
``

Hardware

--- Tranlated By Open Ai Tx | Last indexed: 2025-12-03 ---