# ros2-smart-car **Repository Path**: nine-point-software/ros2-smart-car ## Basic Information - **Project Name**: ros2-smart-car - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-28 - **Last Updated**: 2025-05-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 麦克纳姆轮小车控制 本项目旨在使用四个520型号电机来控制一辆配备麦克纳姆轮的智能小车。该小车能够向各个方向移动,具备更强的机动性。 ## 项目结构 ``` mecanum-car-control ├── src │ ├── main.py # 应用程序的入口点 │ ├── motor │ │ ├── __init__.py # 将motor目录标记为一个包 │ │ └── motor_driver.py # 包含用于电机控制的MotorDriver类 │ ├── controller │ │ ├── __init__.py # 将controller目录标记为一个包 │ │ └── mecanum_controller.py # 包含用于运动控制的MecanumController类 │ └── utils │ └── __init__.py # 将utils目录标记为一个包 ├── requirements.txt # 列出所需的Python库和依赖项 └── README.md # 项目文档 ``` ## 安装 1. 克隆仓库: ``` git clone <仓库地址> cd mecanum-car-control ``` 2. 安装所需的依赖项: ``` pip install -r requirements.txt ``` 导航 ```bash sudo apt install ros-jazzy-slam-toolbox ros-jazzy-nav2-bringup ``` ## 使用方法 1. 运行雷达 ``` ros2 launch ydlidar_ros2_driver ydlidar_launch.py ``` 2. 按照`motor_driver.py`文件中的说明,将电机连接到树莓派的GPIO引脚上。 3. 运行主程序: ``` python src/main.py ``` 4. 按照屏幕上的指示来控制智能小车的移动。 5. 建图与导航 **启动建图** 启动 slam_toolbox: ```bash ros2 launch slam_toolbox online_async_launch.py ``` 用 RViz 可视化 /map,并保存地图: ```bash ros2 run nav2_map_server map_saver_cli -f ~/map ``` **导航** 启动导航: ```bash ros2 launch nav2_bringup navigation_launch.py map:=/home/pi/map.yaml ``` ## 功能 - 控制四个520型号电机驱动麦克纳姆轮。 - 实现小车前进、后退、左转和右转。 - 安全地使小车停止。 ## 其他 1. 在创建虚拟环境时使用`--system-site-packages`选项 ```bash python3 -m venv --system-site-packages my_venv ``` ## 贡献 欢迎提交问题或拉取请求以进行改进或修复漏洞。 ## 许可证 本项目基于MIT许可证授权。