Skip to content

研究生课程《机器人系统》

成都信息工程大学 软件工程学院

课程简介

研究生课程《机器人系统》面向软件工程专业研究生,系统讲授机器人从底层硬件到上层智能的全栈技术。课程以 STM32 单片机为硬件基础,从嵌入式编程与实时操作系统出发,经由电机驱动、传感器融合与闭环控制(机器人"小脑"),上升到 ROS2 机器人操作系统、视觉感知、SLAM 建图、自主导航、多机器人协同与机器学习(机器人"大脑")。教学以"基础→底层→小脑→大脑→实验"为主线,理论讲授与动手实验并重,三个综合实验(K3 机器人、智能轮椅仿真、多 AGV 调度)贯穿课程始终。

课程目标:

  • 理解机器人系统体系结构与常用软件设计模式(分层架构、状态机、事件驱动);
  • 掌握 STM32 单片机编程与 CubeMX 工具链,能独立完成 GPIO/PWM/ADC/USART 等外设驱动;
  • 掌握 FreeRTOS 实时操作系统原理与多任务编程(调度、同步、通信);
  • 理解电机驱动、编码器测速与 PID 闭环控制的原理与实现;
  • 掌握传感器融合与状态估计方法(卡尔曼滤波/互补滤波),能在嵌入式平台实现 EKF 里程计融合;
  • 理解高级运动控制方法(串级 PID、轨迹生成、MPC、纯追踪),能实现差速机器人轨迹跟踪;
  • 能使用 PicSimlab/Renode 进行硬件仿真与自动化测试;
  • 掌握 ROS2 核心编程(Node/Topic/Service/Action)与 micro-ROS 嵌入式集成;
  • 掌握视觉感知基础(相机模型、特征检测、立体视觉、目标检测),为 SLAM 和导航提供感知支撑;
  • 理解 SLAM、路径规划与导航栈(Nav2)的原理,并能在仿真环境中调试;
  • 了解多机器人系统架构、通信协议与协同算法;
  • 了解机器学习在机器人中的应用(强化学习、模仿学习、具身智能),把握前沿研究方向;
  • 培养系统级工程实践能力,为机器人方向的科研与工程开发奠定基础。

教学方法:课堂讲授 + 上机实验 + 综合项目。评估方式含平时作业、实验报告、期中考试与期末项目答辩。

课程章节概览

本课程按照 基础 → 底层 → 小脑 → 大脑 → 实验 → 附录 的学习路径组织,各部分逻辑关系如下:

RTOS ROS SLAM ML K3 多AGV 基础(第1-2章) 机器人底层(第3-7章) 机器人小脑(第8-10章) 机器人大脑(第11-16章) 课程实验(第17-19章) 仿 仿

上图直观呈现了课程章节概览的组成要素与数据通路,有助于理解系统整体的工作机理。

部分 章号 章节标题 内容简介
基础 第1章 机器人系统基础 机器人定义与分类、嵌入式系统体系结构(硬件层/HAL/系统软件/应用层)、最小嵌入式系统结构、输入-加工-输出模型
基础 第2章 机器人系统软件设计模式 分层架构与 HAL 抽象、有限状态机(FSM)、观察者与事件驱动、生产者-消费者模式、命令模式、单例与资源守卫
底层 第3章 单片机编程 STM32 芯片与 Blue Pill 开发板、CubeMX 图形化配置、GPIO/时钟/电路基础、核心外设接口概览(详见附录C 实践项目)
底层 第4章 单片机操作系统(FreeRTOS) RTOS 基本概念、任务调度(抢占/时间片)、信号量/互斥锁/消息队列、定时器与中断、内存管理、多任务实战
底层 第5章 STM32 定时器的应用 定时器架构(基本/通用/高级)、PWM 生成、输入捕获、编码器接口、看门狗、多定时器协同
底层 第6章 机器人运动与电机驱动 机器人运动分类、差速驱动运动学、PWM 原理、H 桥与 TB6612 驱动、步进电机与舵机、编码器测速
底层 第7章 机器人硬件仿真 PicSimlab 教学仿真(界面/开发流程/虚拟外设)、Renode 高级仿真(时序建模/Python 自动化/故障注入/CI 集成)
小脑 第8章 闭环控制与 PID 闭环控制系统原理、PID 控制器(比例/积分/微分)、时域与频域分析、离散化与嵌入式实现、调参方法、直流电机速度闭环
小脑 第9章 传感器融合与状态估计 贝叶斯估计框架、卡尔曼滤波(KF/EKF/UKF)、互补滤波与 IMU 姿态估计、粒子滤波、轮式+IMU 里程计融合、嵌入式 EKF 实现
小脑 第10章 高级运动控制 串级 PID、前馈+反馈复合控制、轨迹生成(梯形/S 曲线/多项式)、MPC 入门、纯追踪/Stanley 路径跟踪
大脑 第11章 ROS 程序设计 ROS2 核心概念(Node/Topic/Service/Action/DDS)、Python+C++ 编程、TF2 坐标变换、micro-ROS 嵌入式集成
大脑 第12章 机器人感知与视觉基础 针孔相机模型与标定、ORB 特征检测与匹配、立体视觉与深度估计、3D 点云处理(ICP/分割)、视觉里程计、目标检测与语义感知
大脑 第13章 机器人 SLAM SLAM 数学建模、前端/后端架构、LiDAR SLAM(Gmapping/Cartographer/LOAM)、Visual SLAM(ORB-SLAM3/VINS)、回环检测
大脑 第14章 机器人导航与路径规划 A*/RRT 路径规划、DWA/TEB 局部规划、代价地图、AMCL 定位、Nav2 架构与行为树、多机器人导航
大脑 第15章 多机器人系统与通信 多机器人架构(集中/分布/混合)、DDS/MQTT/Mesh 通信、ROS2 多机器人编程、编队控制/任务分配/群体智能
大脑 第16章 机器学习与机器人 深度学习感知(深度估计/光流)、强化学习(PPO/SAC)、模仿学习(行为克隆)、具身智能与基础模型、语义 SLAM
实验 第17章 K3 机器人 嵌入式全栈实验:电机 PID 闭环、多传感器循迹、超声波避障、OLED 显示、FreeRTOS 综合巡航任务
实验 第18章 智能轮椅仿真 ROS2+Gazebo 仿真:URDF 建模、SLAM Toolbox 建图、Nav2 导航栈配置与调试、多楼层导航
实验 第19章 多 AGV 调度 多机器人调度:匈牙利/拍卖任务分配、CBS 无冲突路径规划、路口互斥交通管理、ROS2 多实例编排
附录 附录A CubeMX 编程指南 STM32CubeMX 详细使用指南:工程创建、引脚配置、时钟树、外设参数、代码生成与工程管理
附录 附录B 实验用容器与开发环境 Docker 开发环境配置、VSCode 远程开发、Git 版本控制、交叉编译工具链搭建
附录 附录C STM32 实践项目集 5 个由浅入深的 STM32 实战项目:流水灯、PWM 呼吸灯、ADC 电压表、USART 控制台、智能温控风扇

通过上表的对比可以看出,不同方案在部分、章号、章节标题等等方面各有优劣,实际选型时应结合具体应用场景综合权衡。