任务名称
2015年_C题:多旋翼自主飞行器
任务要求
难度

一、任务
设计并制作一架带航拍功能的多旋翼自主飞行器。飞行区域俯视图和立体图分别如图 1 和图 2 所示。

二、要求
1. 基本要求
(1)多旋翼自主飞行器(下简称飞行器)摆放在图 1 所示的 A 区,开启航拍,一键式启动,飞行器起飞;飞向 B 区,在 B 区中心降落并停机;航拍数据记录于飞行器自带的存储卡中,飞行结束后可通过 PC 回放。飞行高度不低于 30cm;飞行时间不大于 30s。
(2)飞行器摆放在图 1 所示的 A 区,一键式启动,飞行器起飞;沿矩形 CDEF逆时针飞行一圈,在 A 区中心降落并停机;飞行高度不低于 30cm;飞行时间不大于 45s。
(3)制作一个简易电子示高装置,产生示高线 h1、h2 (如激光等),h1、h2 位于同一垂直平面,飞行器触碰 h1、h2 线时该装置可产生声光报警。示高线 h1、h2的高度在测试现场可以调整。调整范围为 30cm~120cm。
2. 发挥部分
(1)飞行器摆放在 A 区,飞行器下面摆放一小铁板 M1,一键式启动,飞行器拾取小铁板 M1 并起飞。飞行器携带小铁板 M1 从示高线 h1、h2间飞向B 区,并在空中将小铁板 M1 投放到 B 区中心;飞行器从示高线 h1、h2间飞回 A 区,在 A 区中心降落并停机。飞行时间不大于 30s。小铁板M1 形状不限,重量 20g、100g、200g 三挡自选,重量重得分高。h1、h2高度差小得分高。 

(2)飞行器摆放在 A 区,小铁板 M2 摆放在 B 区任意位置;一键式启动,飞行器飞到 B 区寻找并拾取小铁板 M2,携带小铁板 M2 飞回 A 区,在 A区中心降落并停机。飞行高度不低于 30cm;飞行时间不大于 30s。小铁板 M2 为边长 5cm 的正方形,重量不限。
(3)其他。 

三、说明:
1.飞行器桨叶旋转速度高,有危险!请务必注意自己及他人的人身安全。
2.飞行器的飞行控制板可自行选择,数据处理及导航板必须使用组委会统一下发的 2015 全国大学生电子设计竞赛 RL78/G13 开发套件中 RL78/G13MCU 板(芯片型号 R5F100LEA)。
3.飞行器可自制或外购,带防撞圈,外形尺寸(含防撞圈)限定为:长度≤50cm,宽度≤50cm。飞行器机身必须标注参赛队号。
4.多旋翼指旋翼数量不少于两个。
5.飞行区域地面为白色;A 区、B 区形状大小相同,由直径 20cm 黑色实心圆和直径 75cm 的同心圆组成,同心圆虚线线宽小于 0.1cm;引导线宽度5cm,可用黑色胶带;场地四周设 30cm 等高线;飞行区域不得额外设置任何标识、引导线或其他装置。
6.简易电子示高装置不得与飞行器间有任何形式的通讯。
7.每项允许测试 2 次,每次测试全程不得更换电池。2 次测试之间允许更换电池,更换电池时间不超过 2 分钟。
8.飞行器不得遥控,飞行过程中不得人为干预。
9.飞行器降落和小铁板 M1 投放于 A 区和 B 区以外,酌情扣分。
10.飞行器飞行期间,触及地面后自行恢复飞行的,酌情扣分;触地后 5s 内不能自行恢复飞行视为失败,失败前完成的动作仍计分。
11.飞行器起飞,距地面高度 30cm 以上视为飞离地面。
12.参赛队自备发挥部分所需小铁板 M1、M2,小铁板 M1 重量不得低于规定重量的 95%,M2 上不得附加任何其他装置,颜色不限。
13.一键式启动是指飞行器摆放在 A 区后,只允许按位于飞行器上的一个键启动。如有飞行模式设置应在飞行器摆放在 A 区前完成,不得使用可编程设备进行设置。
14.为保证安全,可沿飞行区域四周架设安全网(长 500cm,宽 400cm,高200cm),顶部无需架设。若安全网采用排球网、羽毛球网时可由顶向下悬挂不必触地,不得影响视线。安装示意图如图 3 所示。

评审标准

参考答案

GPT-4o给出的设计方案

1. 概述

设计并制作一架带有航拍功能的多旋翼自主飞行器,满足自动飞行任务,具备稳定的飞行控制和姿态保持能力。飞行器需依次按特定路径飞行,并在空中悬停,完成指示任务。

2. 硬件结构

  1. 多旋翼飞行器

    • 骨架:重量轻且坚固,材料可以选择碳纤维或铝合金。
    • 驱动系统:无刷电机(brushless motor)和电子调速器(ESC)。
    • 电池:高容量锂聚合物电池(LiPo)。
    • 飞行控制器(FC):具有姿态保持、导航和自动飞行功能,可选Pixhawk或其他支持开源固件的控制器。
    • 传感器模块:GPS、IMU(加速度计、陀螺仪)、气压计(高度计)。
  2. 导航和定位系统

    • 超声波传感器或激光测距仪:用于精确测量高度。
    • 摄像头/激光传感器:用于起降点识别和自主导航。
  3. 通信模块

    • 无线电遥控系统(RC):用于手动控制和紧急状况下接管飞行。
    • 数据链路:实现飞行器与地面站的通信,上传任务指令和实时数据传输。

3. 工作原理

  1. 开机及自检

    • 飞行器通电,飞行控制器自检完成,定位系统获取初始位置。
  2. 自动起飞

    • 飞行器自主起飞,达到设定的高度h1(30cm-120cm),开始执行任务。
  3. 路径飞行

    • 根据预设的路径依次飞行至A区、B区、C区位置,实时监测并调整姿态,确保飞行稳定。
  4. 悬停及任务执行

    • 飞行器在指定位置悬停,进行任务执行,如拍摄、物品投放等。
  5. 返航及降落

    • 飞行器按路径返航,降落至起飞点,完成任务。

4. 关键技术实现(C代码示例)

初始化及传感器读取

#include <AP_HAL/AP_HAL.h>

void setup() {
    AP_HAL::hal.init(0, NULL); 
   
    // 初始化飞行控制器
    setup_flight_controller();
  
    // 传感器初始化
    setup_sensors();
}

void loop() {
    // 传感器数据读取
    read_sensors();
  
    // 自动飞行逻辑
    auto_flight();
}

void setup_flight_controller() {
    // 设置飞行模式
    set_flight_mode(AUTO);
    
    // 加载飞行任务
    load_mission();
}

void setup_sensors() {
    // 初始化GPS
    GPS.init();
    
    // 初始化IMU
    IMU.init();
  
    // 初始化高度传感器
    AltitudeSensor.init();
}

void read_sensors() {
    // 读取GPS
    GPS.update();
    
    // 读取IMU数据
    IMU.update();
  
    // 读取高度数据
    AltitudeSensor.update();
}

自动飞行任务

void take_off(float altitude) {
    // 起飞到指定高度
    set_takeoff_altitude(altitude);
    arm_motors();
    while (current_altitude() < altitude) {
        adjust_throttle(); 
    }
    hold_position();
}

void navigate_to(float x, float y) {
    // 导航到指定坐标点
    while (!at_position(x, y)) {
        adjust_heading(x, y);
        adjust_position(x, y);
    }
    hold_position();
}

void auto_flight() {
    // 起飞到h1高度
    take_off(100.0);
    
    // 飞行到A点
    navigate_to(A_X, A_Y);
    
    // 悬停并执行任务,如悬停30秒
    delay(30000);
    
    // 飞行到B点
    navigate_to(B_X, B_Y);
    delay(30000);

    // 返回起点并降落
    navigate_to(LAUNCH_X, LAUNCH_Y);
    land();
}

5. 调试与验证

  1. 调试

    • 单独测试每个传感器,确保其功能正常。
    • 调试飞行控制参数,确保飞行器在不同时段内的稳定性和响应速度。
    • 在安全区域内进行初步飞行测试,验证各飞行模式和任务的执行情况。
  2. 验证

    • 在实际飞行场地内,按任务要求进行多次飞行测试。
    • 验证飞行器在执行复杂飞行路径和任务中的可靠性和精度。
    • 根据测试结果调整飞行控制参数和导航策略,确保飞行平稳和任务顺利完成。

该设计方案涵盖了从硬件选择、传感器配置到控制算法实现的关键步骤,确保多旋翼飞行器能够自主完成指定的飞行任务。


本题目考察的主要知识点:

  1. 多旋翼飞行器原理
    1. 了解多旋翼飞行器的控制原理,包括姿态稳定、动力分配等。
  2. 飞行控制系统
    1. 理解飞行控制器(FC)的配置和编程,掌握常见控制算法,如PID控制。
  3. 传感器应用
    1. 了解各种传感器(IMU、GPS、压力传感器)的工作原理和在飞行器中的应用。
  4. 路径规划与导航
    1. 学习如何设置和实现飞行路径规划,利用传感器数据进行导航和避障。
  5. 电机与电源管理
    1. 了解无刷电机及其驱动电路的原理,学会设计和管理飞行器的电源系统。
  6. 图像分析与处理(如有涉及相机或激光传感器):
    1. 使用相机或激光传感器识别目标,进行飞行路径的自主调整。
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号