Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
1© 2018 The MathWorks, Inc.
玩转 Simulink 之智能硬件
Simulink 设计和部署 PARROT 四旋翼无人机飞行控制
胡乐华
MathWorks中国
2
内容
▪ Simulink 建模与仿真快速入门
▪ Simulink 项目实践 – 为PARROT Mambo四旋翼无人机设计并部署飞行控制系统
3
Simulink仿真以及基于模型设计
MATLAB科学计算语言
数学,统计,优化 应用程序 数据库和报告
快速原型与HIL仿真
验证、确认和测试
仿真图示和报告
基于事件的建模 物理建模
代码生成并行计算
控制系统
信号处理和通讯
图像和视频处理
测试测量
金融计算
生物计算
应用
MATLAB 产品家族
基于 MATLAB 和 Simulink 的近百种工具箱和扩展模块 正应用于当下的各行各业
4
MATLABSimulink
Aerospace BlocksetAntenna Toolbox
Automated Driving System Toolbox
Communications Toolbox
Computer Vision System Toolbox
Control System Toolbox DO Qualification Kit
Deep Learning Toolbox
Embedded Coder
Financial Toolbox
GPU Coder
HDL Coder
IEC Certification Kit LTE Toolbox MATLAB Report Generator
Model Predictive Control Toolbox
Optimization Toolbox Model-Based Calibration Toolbox
Optimization Toolbox
Polyspace Code Prover
Predictive Maintenance Toolbox
Powertrain Blockset
Signal Processing Toolbox
Sensor Fusion and Tracking Toolbox
Simscape
Simulink Control DesignSimulink Test
Stateflow
Vehicle Dynamics Blockset
Vehicle Dynamics Blockset
SimBiology
Simulink Coverage
System Identification Toolbox
Simulink Design Verifier
Simulink Code Inspector
Parallel Computing Toolbox
5
内容提要
▪ Simulink 建模与仿真快速入门
▪ Simulink 项目实践 – 为PARROT Mambo四旋翼无人机设计并部署飞行控制系统
6
什么是 Simulink?
7
什么是 Simulink?
8
什么是 Simulink?
9
什么是 Simulink?
10
11
Simulink 在多领域的应用
11
12
13
14
15
Simulink 建模与仿真基础
16
17
18
19
20
演示代数系数建模
34
35
演示逻辑系统建模
36
练习
37
速度和精度
38
影响速度的三大因素
39
求解器
40
演示
44
Simulink Onramp
45
如何开始学习
下载安装R2018b
下载安装Simulink
Onramp安装包
启动Simulink,登陆MathWorks
ID
从开始页面进入,开始Simulink学
习之旅
46
你能学到什么?
概述
Simulink 图形界面介绍
查看信号
基本算法搭建
如何使用帮助
在Simulink中使用MATLAB
动态系统建模(连续、离散)
仿真时间设置
练习
47
48
玩转Simulink
▪ Simulink 建模与仿真快速入门
▪ Simulink 项目实践 – 为PARROT Mambo四旋翼无人机设计并部署飞行控制系统
49
基于项目的学习
以项目为基础的学习是一种综合性的课堂教学方法,它旨在使学生参与真实问题的研究。
* Motivating Project-Based Learning: Sustaining the Doing, Supporting the Learning, Educational Psychologist
Volume 26, Issue 3-4, 1991
50
自动代码生成
Simulink Coder
– 为Simulink模型,Stateflow流程图和
MATLAB函数生成C/C++代码
– 可用于实时和非实时应用
– 可用于加速仿真,快速原型和硬件加速
Embedded Coder:
– 优化的 C/C++ 代码(内存、速度和可读性)
– SIL、PIL 仿真
– 数据对象用于数据管理和定制化
– 针对指定硬件深层次优化
– 适用于 MCU 和 DSP (定点、浮点支持)
验证
Simulink
Coder
Embedded
Coder代码生成
C++
C
51
Simulink 和硬件实现
乐高机器人MINDSTORMS
NXT/EV3
PARROT Mambo 树莓派 Pi,Pi2,Pi3
C 代码生成
代码部署
52
多种硬件支持
BeagleBoard /PandaBoard
LEGO MINDSTORMS NXT
Arduino® Nano, Uno, Mega 2560Raspberry PiTM
Raspberry PiTM2
KINECTTM for Windows®
Digilent® Analog DiscoveryTM
Apple® iOS Devices
PARROT ® Mambo Minidroes
LEGO® MINDSTORMS® EV3
RTL-SDR Radio
所有支持硬件:http://mathworks.com/hardware-support
KINECTTM for Windows® V2TurtleBot™
53
概况介绍
▪ 软件要求
– MATLAB R2018B
– Simulink®
– Simulink Support Package for
PARROT® Minidrones
– Embedded Coder™
– Aerospace Blockset™
– Simulink 3D Animation™
54
硬件要求
55
概述
1) 什么是基于模型设计?
2) 什么是Simulink Coder™
3) 什么是 PARROT® 迷你无人机?
4) 什么是 Simulink Support for PARROT Minidrones?
5) 什么是Aerospace Blockset?
56
什么是基于模型设计?
57
基于模型设计
• 自动回归测试
• 检验设计错误
• 支持认证和标准
• 生成高效、优化的代码
• 优化、权衡软硬件实现
• 多域系统建模
• 探索并优化浮点和定点的系统特性
• 跨团队协作开发
集成
实现
设计
测试
与验
证
研究 需求
ARM FPGA
VHDL, VerilogC, C++
环境模型
物理组件
算法
58
什么是Simulink Coder™
59
什么是 PARROT® 迷你无人机?
60
什么是 Simulink Support for PARROT Minidrones?
61
基于Aerospace Blockset™飞行动力学建模和仿真
▪ 如何在软件例子中查找并打开Quadcopter项目
▪ 四旋翼飞行仿真模型介绍
▪ 如何在Simulink中仿真模型
62
例子介绍演示
63
配置无人机硬件和无线通信
▪ 下载并硬件支持包(Hardware Support Package, HSP)
▪ 安装蓝牙驱动,配置蓝牙通信,并建立连接
▪ 代码生成并部署到无人机上
64
蓝牙连接无人机
65
配置无人机硬件和无线通信
66
演示
自动悬停
67
飞行测试 : 悬停
68
流程总结
被控对象和控制算法建
模
模型在环仿真测试验证
安装支持包和蓝牙驱动
配置蓝牙和无人机通信
下载控制系统代码到无
人机
使用控制界面启动无人
机
69© 2018 The MathWorks, Inc.© 2018 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for
a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.