0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于Simulink的迷你无人机飞行控制系统设计

MATLAB 来源:MATLAB 2023-12-14 10:32 次阅读

| 作者 Hamidreza Nemati

Nemati 博士在日本福冈九州大学获得了航空航天博士学位,目前是布里斯托尔西英格兰大学的航电和控制讲师。他的研究方向包括自主导航和智能控制,其中涉及用于控制液压机械臂以及实现微型飞行器鲁棒稳定性的系统。

在学生时期,我经常觉得工程理论与其解决实际问题的实践应用之间相差甚远。比如,我发现航空航天工程专业的大部分课程都未讲解如何应对导航或图像处理挑战的主题。我想,之所以对此避而不谈,部分原因是有观点认为,这些主题属于计算机科学家的专业领域,而非航空航天工程师的专业领域。我一直觉得这种观点很奇怪,因为我们生活在一个复杂的世界里,需要使用多学科方法来教会工科学生如何解决实际难题。

现在,作为一名讲师,我可以借此机会弥合我在学生时期认识到的这种差距。为此,我借鉴了自己作为博士后研究员参加并赢得 MathWorks 迷你无人机比赛所取得的经验。这项比赛在世界各个国家/地区举行。在比赛中,学生们先要使用 Simulink 设计、仿真和实现基于视觉的循线算法,然后在 Parrot Mambo 迷你无人机上进行实际飞行测试,将自己的解决方案与其他学生的解决方案一较高下。

作为参赛者,我需要了解如何在运用工程理论的同时,考虑现实环境对无人机部署的影响,这要比课堂上学到的知识多得多。与此同时,我也在基于模型的设计以及导航和图像处理算法的开发、实现和优化方面收获了宝贵的经验。作为一名讲师,我希望我的学生能够从这种经验中受益。因此,我将 MathWorks 迷你无人机比赛直接纳入到了我面向大三学生教授的航电和控制课程。在 2021 至 2022 学年教授这版课程时,我将学生分成了六个小组。这些小组先在 Simulink 中开发并调整他们的算法,最后在决赛中轮流对这些算法进行测试。尽管发生了一些重大事故,但与我当时一样,学生们也从这次经历中收获颇丰,这让他们兴致勃勃。

课程结构设计

在考虑如何教授该课程时,我决定采用与迷你无人机比赛相同的结构,让学生通过一系列里程碑来完成整个设计。该结构主要涵盖英国工程专业能力和个人承诺标准的知识与理解这两个方面,以及设计、开发和工程问题解决方面。

不过,在开始设计工作之前,我留出了一些时间来确保学生们对他们所需的概念有深入的了解。我从回顾 MATLAB 和 Simulink 基础知识入手,让学生们学习了《MATLAB 入门之旅》和《Simulink 入门之旅》教程。另外,我还向学完《Stateflow 入门之旅》教程的学生提供了额外学分,以鼓励他们提前学习如何创建、编辑和仿真状态机。我知道,在课程后期,需要规划飞行状态时,他们将会庆幸自己已掌握了这些技能。

在接下来的几周里,该课程涵盖飞机动力学和建模、无人机航电设备,以及迷你飞行器(包括 Parrot 迷你无人机)的运动学和动力学等主题。本系列的最后一节课重点讲述计算机视觉基础知识,这为学生们完成本课程的第一个项目奠定了必要的基础。

开发计算机视觉算法

我把全班学生分成了由四到六名学生组成的小组,让他们完成第一个重要里程碑,那就是在 MATLAB 中开发直线检测算法。为了帮助他们入门,我将一些基本的边缘、直线和目标检测方法纳入到了讲义中。学生们还在 MATLAB 和 Simulink 中学完了《图像处理入门之旅》教程。他们要实现的直线检测算法是迷你无人机飞行控制系统中图像处理组件的一部分。作为比赛(和我的课程)的一部分,学生们会获得该系统的基本 Simulink 模型)。他们先要实现 Image Processing System 模块,然后再处理 Control System 模块。

wKgZomV6aYSAFh7uAACyBvSdxVA673.jpg

图 . 飞行控制系统的 Simulink 模型。

除了基本的边缘和直线检测算法,学生们还需要实现圆形检测算法,用来识别无人机在飞行路径末端要降落的小着陆区。我鼓励学生们探索先进的图像处理技术,并为他们提供额外的学分,用于实现阴影去除或光照不变测度。学生们在直线检测和圆形检测算法方面提出的创新想法给我留下了深刻的印象。对于这两种算法,他们都想出了让我意想不到的有趣方法。

路径规划

下一个重要里程碑是在 Simulink 控制系统模型中实现 Path Planning 模块。在该阶段,我将术语“路径规划”与“轨迹跟踪”作了区分,以便学生们能够开发独立于路径物理参数(如长度和几何形状)的算法。于是,他们使用了路径颜色,并根据从图像中获得的信息计算所需的所有参数。该模块采用学生图像处理算法的结果作为输入。

wKgaomV6aYSAAjBUAAC1Y6X7cl4590.jpg

图 . 控制系统的 Simulink 模型,包括路径规划子系统。

如同图像处理算法那样,我也向学生们介绍了一些常用的路径规划算法,包括 RRT、RRT* 和 A*,但不会让他们拘泥于这些方法。各小组先让无人机沿直线路径飞行,直到它到达一个路口,然后他们再基于自己的算法进行构建,直到无人机能够沿着完整路径飞行并降落到着陆区。为了测试自己的算法,这些小组使用 MathWorks 提供的无人机模型在 Simulink 中运行了闭环仿真。在实现过程中,学生们再次展现了他们的创造性思维;有个小组实现的一种算法成功导航了整个路径,而根本没有改变无人机航向!

控制设计和调整

在学生们实现了路径规划算法后,我就把教学重点转向了姿态和高度控制设计。我让他们通过以下方法重新调整了比例-积分-微分控制器的增益:使用优化算法,尽可能降低积分绝对误差、积分均方误差、积分时间加权绝对误差乃至均方根误差这些标准之一。MathWorks 提供的基础模型中包含姿态和高度控制器,但我提醒学生们不要过于激进。我强烈建议,作为总体实现策略的一部分,他们应让设计简洁明了,因为我深知,如果设计过于复杂或控制器调整过度,则可能会导致在真实硬件上进行测试时困难重重。

当学生们处理无模型线性控制器(如 PID)时,我还向他们介绍了基于模型的线性控制设计,包括线性二次调节器 (LQR)。此外,我还比较了实施 LQR 与更先进的非线性控制策略(称为滑动模式控制 (SMC))时的性能,以说明当存在不确定性和外部干扰的情况下应用稳健控制器的效果。然而,考虑到 SMC 会受到意外高频振动的影响,我实现了一个连续滑动模式控制 (CSMC),以便能够根据滑动面的分数指数消除这种振动,并确保控制系统性能稳定。为了比较线性 (PID) 和非线性 (CSMC) 控制设计的性能,我们运行了仿真,并在 MATLAB 中绘制了生成的路径。有些同事对我向本科生教授基于模型的控制技术(如 LQR)感到很惊讶。我解释说,一旦我们有了工作模型,其实就很容易将 PID 控制器替换为 LQR 控制器,并演示如何应用先进的控制方法。

wKgaomV6aYSAYsIBAADuOGHLAYo796.jpg

图 . 使用 PID 控制器(上图)和 CSMC 控制器(下图)绘制的无人机仿真飞行路径。

部署到 Parrot 迷你无人机上

对于最后一个里程碑,学生们需要在真实硬件上运行他们在 Simulink 中建模、仿真和验证的算法。在这一步,他们需要使用 Simulink Support Package for Parrot Minidrones,通过蓝牙 将算法无线部署到 Parrot Mambo 迷你无人机上。

无人机比赛在布里斯托尔机器人实验室举行,有几名实验室研究人员观看了决赛。活动当天,MathWorks 的工程师们也到场协助搭建比赛环境。

第一次飞行测试并没有达到各小组的预期,主要是因为学生们把增益设得太高,并且对控制器调整过度。真实无人机并未像他们在仿真中看到的那样沿着路径稳定飞行,而是表现出飞行姿态不稳,并且遭受了多次严重撞击。虽然学生们起初很失望,但很快重振旗鼓,调整了增益并对设计的各个方面进行了简化,以将他们当前面临的实际影响均考虑在内。其中一个小组的无人机成功完成了整个赛程,为他们赢得了比赛。赛后,多个小组留下来继续改进他们的算法,这充分展现了全班同学对该项目的兴趣有多浓厚。

学生们不断高涨的热情,是我想在明年继续教授该课程并将迷你无人机比赛作为课程核心的诸多原因之一。我也期待着我的学生们能有机会参加英国或邻国官方的 MathWorks 迷你无人机比赛。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • matlab
    +关注

    关注

    175

    文章

    2922

    浏览量

    228441
  • 计算机
    +关注

    关注

    19

    文章

    6649

    浏览量

    84533
  • Simulink
    +关注

    关注

    22

    文章

    513

    浏览量

    61567
  • 飞行器
    +关注

    关注

    13

    文章

    695

    浏览量

    45043
  • 无人机
    +关注

    关注

    224

    文章

    9884

    浏览量

    174812

原文标题:教学前沿 | 迷你无人机比赛助力航电和控制教学

文章出处:【微信号:MATLAB,微信公众号:MATLAB】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    无人机的大脑——飞行控制系统【技术周刊】

    消费级无人机的火爆已经持续了几年时间,在今年的CES上大疆、零度智控、昊翔等厂商也纷纷亮相。国际无人机载具协会预估2025年无人机市场规模达100亿美元,不过去年的裁员和破产事件也为市场笼罩一层阴云。为了能够开发出具有竞争力的
    发表于 02-10 17:36 1w次阅读

    无人机有人管了 全国首个无人机飞行服务中心试运行

    双流机场紧急关闭跑道,大量航班延误。无人机“闷头黑飞”惹事,已不是第一次。不过此类事件有望大幅减少。记者昨日获悉,位于郫县菁蓉小镇的西南无人机飞行服务中心已开始试运行,国内最为先进的无人机
    发表于 06-01 14:05

    【MM32 MiniBoard申请】无人机飞行控制系统设计

    项目名称:无人机飞行控制系统设计试用计划:1.拿到产品,首先 对产品硬件进行了解,并撰写相关报告;2.配合自己的开发板对申请的开发套件进行配合使用,完成相关的例程实验,并撰写相应的使用心得;3.针对
    发表于 12-07 16:51

    无人机侦测和反制系统

    和确保人身安全无人机侦测和反制系统是通过实时测量无人机电磁发射的信号方向,从而侦测入侵的未知无人机,进而对未知无人机进行驱离和迫降。利用
    发表于 04-05 10:15

    无人机中的MCU是如何工作的?

    无人机由飞机机体、飞控系统、数据链系统、发射回收系统、电源系统等组成。飞行管理与
    发表于 10-09 10:44

    无人机飞行控制器电路该怎么设计?

    无人机飞行控制系统中,飞行控制器是其核心部件,它负责飞行
    发表于 10-22 07:58

    航模/无人机遥控的解决方案

      一、方案概述:  一个典型的无人机系统包括飞行器、一个地面控制站(Ground Control Station)GCS、有效载荷及数据链路。地面
    发表于 07-03 14:56

    无人机飞控系统

    摘要:无人机(UAV)是无人驾驶飞机的简称,是指利用无线电遥控设备和自备的程序控制装置操纵的不载人飞行器。无人机最初诞生在一战时期,作为靶机
    发表于 07-21 08:03

    无人机控制系统原理是什么?

    无人机控制系统原理是什么?
    发表于 11-08 08:24

    有刷电机无人机飞行控制

    描述有刷电机无人机飞行控制器 Mini本项目用于有刷电机微型无人机专用的控制实践。使用6轴IMU,我们可以使
    发表于 08-08 06:37

    基于ARM的无人机飞行控制系统的实现

    以AT91M55800A微控器为核心设计并实现了基于ARM 的新型无人机飞行控制器,详细给出了无人机飞行
    发表于 07-07 14:48 194次下载

    无人机飞行控制系统地面仿真平台设计与实现

    为满足无人机控制律参数调节及后期控制策略优化的需要,以某型无人机为应用背景,提出了一种无人机飞行
    发表于 05-06 11:15 136次下载
    <b class='flag-5'>无人机</b><b class='flag-5'>飞行</b><b class='flag-5'>控制系统</b>地面仿真平台设计与实现

    基于RTX的无人机飞行剖面实时仿真

    无人机一般由飞行控制系统控制其在全自主状态下飞行,因此进行无人机飞行剖面实时仿真变得越来越重要
    发表于 05-06 11:17 37次下载
    基于RTX的<b class='flag-5'>无人机</b><b class='flag-5'>飞行</b>剖面实时仿真

    基于SOPC的微型无人机飞行控制系统设计_宋宇

    基于SOPC的微型无人机飞行控制系统设计_宋宇
    发表于 03-19 19:12 1次下载

    基于STM32微控制器的小型无人机飞行控制系统

    基于STM32微控制器的小型无人机飞行控制系统
    发表于 09-25 10:45 37次下载
    基于STM32微<b class='flag-5'>控制</b>器的小型<b class='flag-5'>无人机</b><b class='flag-5'>飞行</b><b class='flag-5'>控制系统</b>