DIY 无人机:第 4 课。飞行控制器..

内容

介绍

现在您已经选择或设计了无人机框架、电机、旋翼、电调和电池,您可以开始选择您的飞控。多旋翼无人机的飞行控制器是集成电路,通常由微处理器、传感器和输入/输出引脚组成。开箱后,飞控不知道你使用的无人机具体类型或配置,所以最初你需要在软件中设置一些参数,然后将给定的配置加载到飞机上。我们在这里采用的方法不是简单地比较当前可用的飞行控制器,而是列出了 PC 的哪些元素负责哪些功能,以及需要注意的方面。

主处理器

8051 vs AVR vs PIC vs ARM: 微控制器系列构成了大多数现代飞行控制器。 Arduino 基于 AVR (ATmel),社区似乎将 MultiWii 作为首选代码。 Microchip 是 PIC 芯片的主要制造商。很难说一个比另一个更好,这一切都归结为软件可以做什么。 ARM(如 STM32)使用 16/32 位架构,有几十个使用 8/16 位 AVR 和 PIC。随着单板计算机变得越来越便宜,预计下一代飞行控制器可以运行成熟的操作系统,如 Linux 或 Android。

CPU: 通常,它们的位深是 8 的倍数(8 位、16 位、32 位、64 位),其中turn 表示 CPU 中主要寄存器的大小。微处理器一次(时钟)只能处理内存中的一组(最大)位数。微处理器可以处理的位越多,处理就越准确(和更快)。例如,在 8 位处理器上处理 16 位变量比在 32 位处理器上慢得多。请注意,代码还必须以正确的位数运行,在撰写本文时,只有少数程序使用针对 32 位优化的代码。

运行频率: 主处理器运行的频率。默认情况下,它也称为“时钟速率”。频率以赫兹(每秒周期数)为单位。工作频率越高,处理器处理数据的速度就越快。

程序/闪存: 闪存是存储主代码的地方。如果程序很复杂,它可能会占用大量空间。显然,内存越大,可以存储的信息就越多。内存还与存储飞行数据有关,例如 GPS 坐标、飞行计划、自动相机移动等。即使关闭电源,加载到闪存中的代码仍保留在芯片上。

SRAM: SRAM 代表静态随机存取存储器,是执行计算时使用的芯片空间。当电源关闭时,存储在 RAM 中的数据将丢失。 RAM 量越大,在任何给定时间“随时可用”用于计算的信息就越多。

EEPROM: 电可擦除可编程只读存储器 (EEPROM) 通常用于存储在飞行过程中不会改变的信息,例如与数据相对的设置。存储在 SRAM 中,其中可能包括传感器读数等。

附加 I/O 端口: 大多数微控制器都有大量的数字和模拟输入和输出端口,在飞行控制器上有些用于传感器,其他用于通信,或用于一般输入和输出。这些额外的端口可以连接到遥控舵机、万向节、蜂鸣器等。

A/D 转换器: 如果传感器使用板载模拟电压(通常为 0-3.3V 或 0-5V),则模拟 A 数字转换器必须转换这些读数为数字数据。与处理器一样,ADC 可以处理的位数决定了最大精度。与此相关的是微处理器可以读取数据的时钟频率(每秒次数),以确保信息不会丢失。然而,在这个转换过程中很难不丢失一些数据,所以 ADC 的位深度越高,读数就越准确,但重要的是处理器可以处理数据的速度。被发送。

电源

通常飞控规范描述了两个电压范围,第一个是飞控本身的输入电压范围(大多数工作在额定电压5V),其次是主微处理器的输入电压范围(3.3V或5V)。由于飞控是嵌入式设备,您只需要关注飞控的输入电压范围即可。大多数多旋翼无人机飞行控制器在 5V 下运行,因为该电压由 BEC 产生(有关更多信息,请参阅“ 动力装置 ”一节)。

让我们重复一遍。理想情况下,飞行控制器无需与主电池分开供电。唯一的例外是如果您需要备用电池,以防主电池发出如此多的电量以致 BEC 无法产生足够的电流/电压,从而导致断电/重置。但是,在这种情况下,通常使用电容器代替备用电池。

传感器

从硬件的角度来看,飞行控制器本质上是一个普通的可编程微控制器,只有机上有特殊的传感器。至少,飞行控制器将包括一个 3 轴陀螺仪,但没有自动调平。并非所有飞行控制器都配备以下传感器,但它们也可以包括它们的组合:

  • 加速度计: 顾名思义,加速度计测量线性加速度在三个轴(让我们称它们为:X、Y 和 Z)。通常以“G(俄语。相同)”来衡量。标准(正常)值为 g = 9.80665 m/s²。为了确定位置,可以对加速度计的输出进行两次积分,但由于输出的损耗,物体可能会发生漂移。三轴加速度计最重要的特性是它们记录重力,因此,它们可以知道“下降”的方向。这对确保多旋翼无人机的稳定性起到了重要作用。加速度计必须安装在飞行控制器上,使线性轴与无人机的主轴重合。

  • 陀螺仪: 陀螺仪测量沿三个角轴的角度变化率(让我们称它们为:alpha、beta 和 gamma)。通常以度每秒为单位。请注意,陀螺仪不会直接测量绝对角度,但您可以迭代获得一个角度,与加速度计一样,它会促进漂移。真实陀螺仪的输出往往是模拟或 I2C,但大多数时候您无需担心这一点,因为所有传入数据都由飞行控制器代码处理。陀螺仪的安装必须使其旋转轴与无人机的轴重合。

  • 惯性测量单元 (IMU): IMU 本质上是一块包含两者的小板一个加速度计和一个陀螺仪(通常是多轴的)。其中大部分包括一个三轴加速度计和一个三轴陀螺仪,其他可能包括额外的传感器,例如三轴磁力计,提供总共 9 个测量轴。

  • 罗盘/磁力计: 一种能够检测地球磁场并使用的电子磁罗盘该数据用于确定无人机罗盘的方向(相对于磁北极)。如果系统具有 GPS 输入并且可从一轴到三轴使用,则该传感器几乎总是存在。

  • 压力/气压计: 由于大气压力随着距海平面的距离而变化,您可以使用一个压力传感器,以获得相当准确的无人机高度读数。为了计算最准确的高度,大多数飞行控制器同时从压力传感器和卫星导航系统 (GPS) 接收数据。组装时请注意,气压计外壳的孔最好用一块泡沫橡胶覆盖,以减少风对芯片的负面影响。

  • GPS: 全球定位系统 (GPS) 确定您的特定的地理位置,使用由几颗绕地球运行的卫星发送的信号。飞行控制器可以有一个内置的 GPS 模块和一个电缆连接的模块。 GPS 天线不应与 GPS 模块本身混淆,它看起来像一个小黑盒子或普通的“鸭子”天线。为了获得准确的位置数据,GPS 模块必须接收来自多颗卫星的数据,而且越多越好。

  • 距离: 距离传感器越来越多地用于无人机,因为 GPS 坐标和压力传感器无法分辨你离地面多远(山、山或建筑物),或者你是否会与物体碰撞。向下的距离传感器可以基于超声波、激光或激光雷达技术(红外传感器在阳光下可能会遇到问题)。距离传感器很少作为飞行控制器的标准配置。

飞行模式

以下是最流行的飞行模式列表,但并非所有模式都适用于飞行控制器... “飞行模式”是飞行控制器使用传感器和传入的无线电命令来稳定和飞行无人机的方式。如果使用的控制设备有五个或更多通道,用户可以通过软件配置,在飞行过程中直接通过第5个通道(辅助开关)改变模式。

  • ACRO - 通常是所有可用传感器的默认模式,飞行控制器仅使用陀螺仪(无人机无法自动调平)。与运动(杂技)飞行有关。
  • ANGLE ——稳定模式;在所有可用的传感器中,飞行控制器使用陀螺仪和加速度计。角度有限。将无人机保持在水平位置(但不保持位置)。
  • HORIZON - 结合了“ANGLE”模式的稳定性,当摇杆靠近中心并缓慢移动时,以及杂技当操纵杆处于极限位置并快速移动时的“ACRO”模式。飞控只使用陀螺仪。
  • BARO (Altitude Hold) - 稳定模式;在所有可用的传感器中,飞行控制器使用陀螺仪、加速度计和气压计。角度有限。当控制设备没有发出指令时,气压计用于保持一定的(固定)高度。
  • MAG (Heading Hold) - 航向锁定模式(罗盘方向),无人机将保持偏航方向。在所有可用的传感器中,飞行控制器使用陀螺仪、加速度计和指南针。
  • HEADFREE (CareFree, Headless) - 消除无人机的方向跟踪 (Yaw),从而允许您在 2D 方向上移动根据运动 ROLL / PITCH 控制杆。在所有可用的传感器中,飞行控制器使用陀螺仪、加速度计和指南针。
  • GPS / 返航 - 自动使用指南针和 GPS 返回起飞位置。在所有可用的传感器中,飞行控制器使用陀螺仪、加速度计、指南针和 GPS 模块。
  • GPS / Waypoint - 允许无人机自主跟随预设 GPS 点。在所有可用的传感器中,飞行控制器使用陀螺仪、加速度计、指南针和 GPS 模块。
  • GPS / 位置保持 - 使用 GPS 和气压计(如果可用)保持当前位置。在所有可用的传感器中,飞行控制器使用陀螺仪、加速度计、指南针和 GPS 模块。
  • Failsafe - 如果没有指定其他飞行模式,无人机将切换到 Acro 模式。在所有可用的传感器中,飞行控制器仅使用陀螺仪。在无人机软件出现故障的情况下,它允许您使用先前预设的命令恢复对无人机的控制。

软件

PID 控制器(分配和设置)

比例积分微分 (PID)或比例积分微分 (PID) 是一种飞行控制器软件,它从传感器读取数据并计算电机必须旋转多快才能保持无人机的所需速度。

准备飞行的 UAV 的开发人员倾向于优化调整 PID 控制器参数,这就是为什么大多数 RTF 无人机开箱即可完美驾驶的原因。关于定制无人机组件有什么不能说的,重要的是使用适用于任何多旋翼组件的通用飞行控制器,能够调整 PID 值,直到它们满足最终用户所需的飞行特性。

GUI

图形用户界面 (GUI) 或图形用户界面 用于可视化编辑将加载到飞行控制器中的代码(使用计算机)。飞控自带的软件越来越好;第一个飞行控制器主要使用基于文本的界面,这要求用户了解几乎所有代码并更改特定部分以适应设计。最近,GUI 一直在使用交互式图形界面,使用户更容易配置必要的参数。

附加功能

某些飞行控制器上使用的软件可能具有附加功能其他。特定飞行控制器的选择可能最终取决于开发人员提供的附加特性/功能。这些功能可以包括:

  • 自主航路点导航 - 允许用户设置无人机将自主跟随的 GPS 航路点。
  • 轨道 - 无人机围绕给定 GPS 坐标移动,其中无人机的前部始终指向给定坐标(与射击相关)。
  • Follow me - 许多无人机都有“Follow Me”功能,该功能可以基于卫星定位(例如,跟踪智能手机的 GPS 坐标,或内置模块)控制设备 GPS)。
  • 3D 图像 - 大多数 3D 图像是在飞行后使用飞行期间获取的图像和 GPS 数据拍摄的。
  • 开源 - 某些飞行控制器的软件无法更改/配置。开源产品通常允许高级用户修改代码以满足他们的特定需求。

通信

无线电控制 (RC)

无线电控制通常包括 RC 发射器/RC发射器(在无人爱好中 - 无线电控制设备/遥控器)和 RC 接收器(RC 接收器)

  • Throttle / Elevation
  • Yaw
  • (183)(184)Pitch(前后移动)​​(185)(186)Roll(左右移动)]

所有其他可用通道可用于以下操作:

  • 布防(布防或布防)/撤防(撤防或撤防) - 布防/撤防电机...
  • 云台控制(向上/向下平移、顺时针/逆时针旋转、缩放)
  • 更改飞行模式(ACRO / ANGLE 等)
  • 激活/激活有效载荷(降落伞) 、蜂鸣器或其他设备)
  • 任何其他应用

大多数用户(无人机飞行员)更喜欢手动控制,这再次证明了使用控制设备仍然是第一选择。 RC 接收器本身只是传输来自 RC 发射器的值,这意味着它无法控制无人机。 RC 接收器必须连接到飞行控制器,而后者必须被编程为接收 RC 信号。市场上很少有飞行控制器可以直接从接收器接收无线电指令,大多数 PC 甚至从其中一个引脚为接收器供电。选择遥控器时的其他考虑因素包括:

  • 并非所有 RC 发射器都能提供从 500ms 到 2500ms 的全范围 RC 信号;一些人为地限制了这个范围,因为大多数 RC 使用的是无线电遥控汽车、飞机和直升机。
  • 范围/最大空气范围(以英尺或米为单位) RC 系统-几乎不由制造商提供,因为该参数受许多因素的影响,例如噪音、温度、湿度、电池电量等。
  • 一些遥控系统有一个接收器,它也有一个内置发射器,用于从传感器传输数据(例如 GPS 坐标),然后这些数据将显示在 RC 发射器的 LCD 上。

蓝牙

蓝牙和后来的 BLE(低功耗蓝牙)产品最初旨在无需配对或频率即可在设备之间传输数据匹配。一些市售的飞行控制器可以通过蓝牙连接以无线方式发送和接收数据,从而更容易在现场进行故障排除。

Wi-Fi

Wi-Fi 控制通常通过 Wi-Fi 路由器实现,计算机(包括笔记本电脑、台式机、平板电脑)或智能手机。 Wi-Fi 能够同时处理数据传输和视频流,但同时,这项技术更难配置/实施。与所有 Wi-Fi 设备一样,距离受 Wi-Fi 发射器的限制。

射频(RF 或 RF)

在此上下文中,射频 (RF) 控制是指使用射频发射器/接收器(或双频收发器)将数据从计算机或微控制器无线传输到飞机。使用连接到计算机的传统 RF 单元可以实现长距离、高数据密度(通常为串行格式)的双向通信。

智能手机

虽然这不是一种通信,但问题本身是如何控制使用智能手机的无人机,足以给它一个单独的部分。现代智能手机本质上是功能强大的计算机,巧合的是,它还可以拨打电话。几乎所有智能手机都内置蓝牙模块和 WiFi 模块,每个模块都用于控制无人机和/或接收数据和/或视频。

红外线 (IR)

电视遥控器)很少用于控制无人机,因为即使在普通房间(更不用说开放空间)有太多的红外干扰,它不是很可靠。尽管该技术可用于控制无人机,但它不能作为主要选项提供。

其他注意事项

功能: 飞行控制器制造商通常会尝试提供尽可能多的功能 -默认包含或作为选项/附加组件单独购买。以下只是您在比较飞行控制器时可能需要查看的众多附加功能中的一小部分。

阻尼: 即使是框架中的微小振动,通常由不平衡的转子和/或电机引起,也可以被内置加速度计检测到,进而将向主处理器发送适当的信号,主处理器将采取纠正措施。这些小的修复对于稳定飞行来说是不必要的或不可取的,最好使飞控尽可能少地振动。为此,飞行控制器和框架之间经常使用减振器/阻尼器。

外壳: 飞行控制器周围的保护外壳可以在各种情况下提供帮助。除了比裸 PCB 更美观之外,外壳通常还提供一定程度的电气保护。元素,以及发生碰撞时的额外保护。

安装: 有多种方式将飞控安装到框架上,并非所有飞控都有相同的安装选项:

  1. 彼此相距 30.5 毫米或 45 毫米平方的四个孔。
  2. 平底,可与贴纸一起使用。
  3. 矩形中的四个孔(未安装标准)。

社区: 由于您正在构建自定义无人机,因此参与在线社区可以提供很多帮助,尤其是当您遇到问题或需要建议时.从社区获取建议或查看有关不同飞行控制器的质量和易用性的用户反馈也很有帮助。

配件: 为充分利用产品,除飞控本身外,可能还需要其他物品(配件或选件)。此类配件可能包括但不限于:GPS 模块和/或 GPS 天线;电缆;安装配件;屏幕(LCD / OLED);

示例

因此,通过所有这些不同的比较,您可以获得有关飞行控制器的哪些信息以及飞行控制器可能包含哪些信息?我们选择了 Quadrino Nano Flight Controller

主处理器

用于板载ATMel ATMega2560 是最强大的Arduino 兼容ATMel 芯片之一。尽管它总共有 100 个引脚,包括 16 个模拟数字通道和 5 个 SPI 端口,但由于其体积小且打算用作飞行控制器,因此板上只有少数引脚。

  • AVR vs PIC:AVR
  • 处理器:8 位
  • 工作频率:16MHz
  • 程序存储器/闪存:256KB
  • SRAM:8KB
  • EEPROM:4KB
  • 附加 I/O 引脚:3 × I2C; 1 × 串口; 2 × 10 针 GPIO;伺服 5x 输出; OLED 端口
  • A/D 转换器:10 位

传感器

Quadrino Nano 包括MPU9150 IMU芯片,包括一个3轴陀螺仪、一个3轴加速度计和一个3轴磁力计。这有助于在不牺牲传感器质量的情况下保持电路板足够小。 MS5611 气压计提供压力数据,并覆盖有一块泡沫。集成 Venus 838FLPx GPS,带外部 GPS 天线(随附)。

软件

Quadrino Nano 专为使用最新的 MultiWii 软件(基于 Arduino)而构建。不是直接修改 Arduino 代码,而是创建了一个单独的、更图形化的软件。

通信

  • 来自标准 RC 接收器的直接输入。
  • 专用频谱卫星接收器端口
  • 串行(SBus 和/或蓝牙或 3DR 无线电)

附加因素

  1. 外壳: 标准的保护性半透明外壳
  2. 安装: Quadrino 有两种主要的连接方式纳米到无人机:螺丝和螺母或泡沫橡胶贴纸。
  3. 紧凑型设计: 控制器本身(不包括 GPS 天线)尺寸为 53x53mm。