项目简介
本项目是基于STM32微控制器和Robot Operating System (ROS)的机器人开发项目,目标是通过设计与实现复杂机器人系统,助力开发者理解机器人系统各组成部分,涵盖硬件设计、低级控制、高级ROS集成及简单AI功能。
项目的主要特性和功能
- 硬件设计:采用STM32F103C8T6微控制器进行基础控制;设计基于“Blue Pill”的开发板,处理传感器数据与控制电机;使用IR传感器作为限位开关,保证机器人与墙壁保持安全距离。
- 低级控制:运用裸机编程编写微控制器代码,与传感器和电机控制器交互;实现SPI通信通道,编写电机控制器驱动代码。
- ROS集成:创建ROS工作空间,用于高级机器人交互;利用ros_bridge包建立PC与微控制器的通信;开发包含控制、仿真和机器人描述的ROS包。
- 高级功能:引入视觉系统和简单AI功能,提升机器人智能性;使用Gazebo进行仿真,测试和验证机器人行为。
安装使用步骤
硬件需求
- STM32F103C8T6开发板
- 支持ROS的设备(如PC或Raspberry Pi)
- IR传感器和电机驱动模块
- 其他必要的连接线和配件
软件需求
- ROS软件环境(如Melodic版本)
- STM32开发环境(如STM32CubeIDE)
- Git或其他版本控制系统用于获取源代码
安装步骤
- 安装ROS:依据ROS官方文档安装并配置ROS环境。
- 获取源代码:使用Git复制项目仓库。
- 配置STM32开发环境:安装STM32CubeIDE并导入项目,编译项目后将生成的二进制文件烧录到STM32开发板。
- 配置ROS工作空间:
- 进入ROS工作空间目录:
bash cd maria-robot/maria_ros_ws
- 编译ROS包:
bash catkin_make
- 运行ROS节点以控制机器人。
- 进入ROS工作空间目录:
- 测试和验证:使用Gazebo进行仿真测试,在实际硬件上测试机器人的行为和功能。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】