产品简介: 1)采用最新版本的树莓派4B平台,运算能力和资源配置大幅提高。不仅可以进行嵌入式Linux系统以及ROS系统的实践与开发,同样能够驾驭处理速度要求较高的应用场景,如竞速小车、深度学习、机器视觉等; 2)采用阿克曼底盘结构,运动学模型最接近真实汽车结构,轻松验证自动驾驶的各类控制算法; 3)根据智能车的控制特点深度定制基于ARM Cortex-M4单片机的底盘控制器,将单片机大部分资源进行利用,可在此平台完成单片机相关课程的所有实验教学,同时能够进行RT-Thread等微型实时操作系统的开发与教学; 4)在Ubuntu18下的ROS系统中,实现了多种SLAM框架下的建图、导航、路径规划、图像识别等算法和例程,可直接在其基础上进行相关的学生竞赛训练以及工程项目的开发。 产品特点:(提供所有源码) 1)底盘控制器采用STM32F407高性能ARM处理器,主频高、资源丰富。可实现电池电量监测、电池充电管理、IMU姿态数据采集与解算、OLED显示界面、SPI的Flash读写、PWM方式的电机调速与转速PID控制、编码器数据采集与车速计算、阿克曼底盘运动解析及控制接口、蓝牙无线串口通信、WiFi网络通信、与树莓派的数据通信; 2)底盘控制器搭载国产优秀的嵌入式实时操作系统RT-Thread,实现所有内核功能模块调用、用户编写BootLoader、Finsh shell命令行交互模块、文件系统管理、网络系统管理、支持Python编程的MicroPython系统框架、基于阿克曼底盘智能车的控制系统框架; 3)树莓派搭载Ubuntu18.04版本Linux操作系统,配置ROS及相关开发工具,实现ROS核心通信机制及组件、对底盘状态监测及运动控制、ROS分布式远程开发、摄像头数据采集与处理、基于激光雷达的SLAM建图算法(gmapping/hector/karto/cartographer)、movebase导航框架实现(Navfn/Global全局规划器;DWA/TEB局部路径规划器)、stage仿真环境、基于openCV的人脸识别和巡线。 配套课程列表(共分为单片机开发、嵌入式系统开发以及ROS应用开发三大类) 单片机开发课程(基于STM32F407底盘控制器) 课程1:开发环境搭建----Keil、Jlink驱动、STM32CubeMX软件的安装与使用 课程2:STM32F4单片机及其系列产品介绍、选型指导 课程3:使用STM32CubeMX软件新建工程 课程4:STM32时钟树及RCC配置方法 课程4-1:RTC时钟模块的功能配置和应用案例 课程4-2:SysTick模块的功能配置和应用案例 课程5:IO口原理及应用案例 课程6:EXIT外部中断机制、配置与应用案例 课程7:ADC模块的原理、配置与应用案例 课程8:DAC模块的原理、配置与应用案例 课程9:TIM定时器模块的原理与应用 课程9-1:TIM的计数器功能配置和应用案例 课程9-2:TIM的输入捕获功能配置和应用案例 课程9-3:TIM的PWM功能配置和应用案例 课程10:DMA模块的原理、配置与应用案例 课程11:WDG看门狗模块的原理、配置与应用案例 课程12:UART串口模块的原理、配置与应用案例 课程13:I2C总线模块的原理、配置与应用案例 课程14:SPI总线模块的原理、配置与应用案例 【专题】课程15:基于MPU6050的数据采集、处理与姿态解算 【专题】课程16:基于双轮驱动与编码器的小车速度PID闭环控制 【专题】课程17:基于UART串口的多重校验通信协议设计 【专题】课程18:基于WDG的控制器防死机框架设计 嵌入式系统开发课程(基于STM32F407底盘控制器) 课程1:嵌入式实时操作系统(RTOS)介绍与产品选择 课程2:RT-Thread系统架构与功能特点 课程3:RT-Thread Studio工具的安装与使用方法 课程4:RT-Thread shell工具(Finsh)的使用 课程5:RT-Thread 内核基础 课程6:RT-Thread 内核的线程管理与应用 课程7:RT-Thread 内核的时钟管理与应用 课程8:RT-Thread 内核的线程间同步与应用 课程9:RT-Thread 内核的线程间通信与应用 课程10:RT-Thread 内核的内存管理与应用 课程11:RT-Thread 内核的中断管理与应用 课程12:RT-Thread 内核的文件系统 课程13:RT-Thread 内核的网络系统 课程14:RT-Thread 内核工具介绍和使用 【专题】课程15:RT-Thread的驱动程序开发 【专题】课程16:RT-Thread的Bootloader程序开发 【专题】课程17:RT-Thread的CPU架构移植 【专题】课程18:RT-Thread的MicroPython组件开发 【专题】课程19:RT-Thread的智能车框架开发 机器人操作系统(ROS)应用开发课程(基于树莓派4B) 课程1:机器人操作系统(ROS)介绍 课程2:树莓派资源介绍与使用 课程3:Linux系统介绍、安装及基础操作 课程4:ROS系统的安装、使用与开发 课程5:ROS的核心概念与命令行工具 课程6:工作空间的创建与功能包 课程7:ROS远程分布式开发环境搭建 课程8:话题(Topic)的订阅(Publish)与发布(Subscrib) 课程9:话题消息的定义与使用 课程10:服务器(Server)与客户端(Client)的机制与应用 课程11:数据服务的定义与使用 课程12:参数的使用与编程 课程13:ROS的坐标管理(TF树) 课程14:Launch文件的原理及应用 课程15:ROS的常用工具使用 【专题】课程16:ROS与底盘控制器之间的通信 【专题】课程17:阿克曼底盘运动学分析与控制 【专题】课程18:激光雷达的数据采集与处理 【专题】课程19:IMU的数据采集与处理 【专题】课程20:数据融合算法详解(卡尔曼滤波) 【专题】课程21:AMCL定位算法详解 【专题】课程22:MoveBase导航框架原理与应用 【专题】课程23:SLAM建图算法原理与使用 【专题】课程24:基于openCV的图像采集与处理 【专题】课程25:基于stage仿真器的智能车仿真
|