项目简介
HyphaROS MiniCar自动驾驶系统是一款低成本、高性能的1/20比例赛车,专为控制算法评估设计。项目完全开源,硬件和软件成本低于300美元,支持纯追踪(Pure - Pursuit)和非线性模型预测控制(MPC),集成了多种SLAM算法和动态障碍物避让功能。
项目的主要特性和功能
- 非线性模型预测控制(MPC):基于非线性自行车模型,通过Ipopt求解器实现。
- 纯追踪控制器:用于路径跟踪。
- 车载地图构建:支持Gmapping、Hector - SLAM、Karto - SLAM和MRPT - ICP等多种SLAM算法。
- STM32电机速度闭环控制:通过STM32微控制器实现电机速度的闭环控制。
- AMCL定位:基于编码器里程计的定位。
- 动态障碍物避让:实现动态障碍物的避让功能。
- Stage仿真:支持MPC和纯追踪控制器的仿真。
安装使用步骤
1. 安装ROS Kinetic
确保已安装ROS Kinetic桌面完整版,可按照ROS Kinetic安装指南进行安装。
2. 安装依赖项
bash
sudo apt-get install remmina synaptic gimp git ros-kinetic-navigation* ros-kinetic-gmapping ros-kinetic-hector-slam ros-kinetic-mrpt-icp-slam-2d ros-kinetic-slam-karto ros-kinetic-ackermann-msgs -y
3. 安装Ipopt
参考项目文档中的ipopt_install
教程进行安装。
4. 创建并配置你的catkin工作空间
bash
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
cd ~/catkin_ws
catkin_make
5. 运行仿真
bash
roslaunch hypharos_minicar HyphaROS_Simulation_Stage.launch
默认使用MPC控制器,可通过参数controller
切换到纯追踪控制器或其他控制器。
6. 连接到Odroid
默认情况下,Odroid的以太网IP地址为10.0.0.1
。通过以太网连接时,将主机IP设置为10.0.0.X
。首次启动时,需通过HDMI显示器更新Odroid的MAC地址。
7. 进行地图构建
- 在MiniCar(Odroid)端:
bash roslaunch hypharos_minicar HyphaROS_MiniCar_Mapping.launch
默认使用Gmapping算法,可通过参数slam_type
切换到其他SLAM方法。 - 在主机(桌面)端:
bash roslaunch hypharos_minicar HyphaROS_Desktop_Mapping.launch
使用键盘控制MiniCar。
8. 进行赛车
- 在MiniCar(Odroid)端:
bash roslaunch hypharos_minicar HyphaROS_MiniCar_Racing.launch
默认使用MPC控制器,可通过参数controller
切换到其他控制器。 - 在主机(桌面)端:
bash roslaunch hypharos_minicar HyphaROS_Desktop_Racing.launch
使用键盘中断控制器的行为。
通过以上步骤,可成功安装并运行HyphaROS MiniCar自动驾驶系统,进行仿真、地图构建和赛车等操作。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】