飞行控制器

2022-07-08
暂无评分

介绍

飞行控制器是一台机载计算机,它将来自飞手的控制信息与传感器信息相结合,用于调节每桨叶的动力,并根据需要飞行。

飞行控制器负责:

  • 飞行控制,包括电机控制,起降,手动飞行模式。
  • 飞机状态信息,例如姿态,位置,速度。
  • 传感器子组件,例如指南针,IMU和定位系统。
  • 飞机子部件,例如起落架。
  • 飞行限制系统,例如GEO区域和GEO系统。
  • 飞行仿真,用于测试和调试。

基本飞行控制概念可以在 这里open in new window找到。

状态

飞行控制器以高达10 Hz的频率提供详细的状态信息,包括:

  • 飞机位置,速度和高度
  • 剩余电池和飞行时间信息
  • 返航点位置
  • 传感器信息(指南针,IMU,卫星定位)
  • 返航点状态
  • 电动机是否打开以及飞机是否在飞行
  • 飞行限制和GEO系统信息

飞行

电机控制

可以通过Mobile SDK中的API打开和关闭电机。 只能在飞机不飞行时关闭电动机。 如果存在IMU 或Compass校准错误,或者IMU仍在预热,则电动机将不能打开。

开始和结束飞行

飞机起降可通过Mobile SDK中的API进行自动化。 当飞机悬停在地面1.2米(4英尺)以上时,起飞即视为完成。 自动起飞只能在电动机关闭时启动。

发送自动着陆命令后,飞机将下降到当前位置并着陆。

飞行控制

飞行可以通过以下几种方式进行控制:

  • 手动飞行: 遥控器可以由用户手动控制
  • 航线飞行open in new window: 简单的高级自动化飞行
  • 虚拟摇杆控制: 可使用模拟手动飞行的Mobile SDK API发送摇杆命令。
  • 手势控制: 某些飞机(例如Spark)会根据用户的手势执行基本的飞行操作。

飞行方向

遥控器操纵杆可用于向前,向后,向左和向右移动飞机。 但是,如果看不清飞机的朝向,飞行员可能很难在地面的角度来控制飞机。

几种飞行方向模式可以使飞行更轻松:

  • Course Lock: 飞机相对于锁定的航向进行飞行。
  • Home Lock: 飞机相对于返航点进行飞行。
  • Aircraft Heading: 飞机相对于飞机机头进行飞行。

有关更多详细信息,请查看 飞行控制概念open in new window

飞行限制

最大的飞机高度和离返航点的距离可以用来限制飞机可以飞入的区域。Mobile SDK提供了API,允许开发人员查询和更改这些限制。

GEO地理围栏系统 (GEO)

DJI大疆GEO地理围栏系统open in new window是由DJI大疆创新独立研发,致力于为DJI大疆用户提供实时更新的飞行安全与飞行限制相关信息,以及法律法规的全球信息系统。GEO地理围栏系统为DJI大疆用户提供最佳的飞行资讯,提供合适的飞行时间和地点以协助您制定最佳的飞行决策。除了实时空域信息,GEO系统还包含了警示和飞行限制系统、解禁系统和针对部分决策的轻微问责制。

传感器

飞行控制器管理飞机的几个子组件,包括传感器和起落架。

指南针

指南针测量磁场方向,并用于确定飞机相对于北方的航向。 如果在电磁干扰附近飞行,有时需要校准指南针。 指南针校准将要求用户通过方位角垂直和水平旋转飞机。 具有多个指南针的产品(例如Phantom 4)将其指南针状态融合到一个指南针类中,以简化操作。

IMU-惯性测量单元

IMU包含一个加速度计和陀螺仪,用于测量线性加速度和角速度。 IMU是一个灵敏的系统,它取决于温度,有时需要重新校准。 飞机会自动进行预热,并且可以在飞行控制器状态数据中监视其状态。 必要时,可通过Mobile SDK API进行校准。

某些产品具有多个IMU以实现冗余。 Phantom 4具有两个IMU,而M600最多可容纳三个。

RTK定位系统

DJI产品内置GPS和GLONASS卫星的消费级卫星定位系统。 消费级卫星定位可能会出现几米的位置误差。

DJI DRTK定位系统可进行厘米级定位。 DRTK是使用GPS + GLONASS或GPS + 北斗(取决于DRTK模型)的实时动态卫星定位系统。

该系统需要基站和移动站,它们通过无线链路连接在一起。 基站接收器部署在地面上的已知位置,而移动站部署在飞机上。 基站和移动站可能同时接收错误的卫星信号。 由于基站位于已知位置,因此它可以将实时校正信息发送到移动站,从而为移动站提供相对于基站的厘米精确定位信息。

该移动站带有两个天线,可以将它们部署在飞机的相对两侧。 由于两个天线的位置都可以组合成航向矢量,因此在磁场干扰较大的环境(例如大型金属结构或高压线路附近)中,航向矢量通常比指南针航向更精确。

视觉系统和智能飞行助手

摄像机可用于检测障碍物并准确确定相对位置和速度。 这些摄像头通常向下安装在产品上,以便定位,而面向前方则用于障碍物检测。 它们与用于捕获照片和视频的主相机是分开的。

避障

一些产品具有成对的摄像机,这些摄像机使用立体视觉来确定环境的深度。 例如,Mavic Pro具有一对面向飞机前部的摄像头,而Phantom 4 Professional具有面向前方和后方的两对摄像头。 该视觉系统使飞机可以停在其飞行路径的前方,也可以绕过障碍物。

视觉系统使用户能够以更高的舒适度飞行,因为他们犯错误并撞击物体的可能性较低。 但是,为了安全飞行,仍然需要了解系统的局限性。 难以检测到的物体是那些很小,很窄,外观光滑(无法提取视觉特征),两个摄像头都不在视野内,或者离产品太近或太远的物体 (请查看 产品页面 ) 获取更多特性)。

定位

面向下方的摄像头可以比消费级卫星定位系统更准确地确定相对位置和速度。 它们还可以用于在GPS信号不好的环境(例如建筑物内部)中悬停。

智能飞行助手

Mobile SDK提供了智能飞行助手,可以访问避障和定位视觉系统的状态信息。

另外,警告和距离信息也将提供给开发者们用于躲避障碍物。

起落架

某些产品具有可移动的起落架,这些起落架在降落时会展开以保护相机,但在飞行时可以升起(缩回)避免遮挡相机的视野。

起落架可以通过编程方式或自动方式展开或缩回。 自动起落时,飞行控制器将确定何时展开起落架以及何时收起起落架。 在需要快速着陆的情况下,最好以编程方式部署起落架,可以高处就可以自动触发起落架展开。

运输模式

在运输模式下,起落架将与飞机机身位于同一几何平面上,因此可以轻松运输。

飞行时间和电池阈值

飞机的飞行时间取决于飞机的总重量,飞机上可用的存储(电池)能量,飞机在其中飞行的环境以及飞机的飞行方式。 与在轻载下无风悬停相比,在重载下快速逆风飞行的飞行时间要短。

在飞行过程中,飞行控制器和智能电池将根据飞行过程中收集的数据,以估算当前飞行的剩余时间。 它还将提供从当前位置回到返航点所需的电池电量百分比的估计值。

此外,可以设置两个手动电池阈值,这些阈值将在电池电量不足时自动启动如下行为:

  • 返航: 阈值通常设置在25%到50%之间,如果超过阈值,它将自动启动返航警告。 如果10秒钟之内未采取任何措施,则飞机将返航。 可以通过按遥控器上的Return Home按钮取消返航。
  • 就地降落:阈值通常设置在10%到25%之间,如果超过该阈值将立即使飞机就地降落。

返航

在以下几种情况下,飞机可以自动返航(RTH):

  • 智能返航: 由飞手通过应用程序或遥控器触发。
  • 失控返航:如果遥控器和飞机之间的无线链接丢失。
  • 低电量返航:如果电池电量下降到足以回家的阈值以下会触发。

自动返航时,飞机将升至最低高度,使用GPS定位飞行至返航位置(返航点),然后降落。

返航点自动设置为飞机开机后首次起飞的位置。 之后,可以通过Mobile SDK中的API更新返航点,仅限于距初始起飞位置30m以内,当前飞机位置,当前移动设备位置或当前遥控器位置(适用于具有GPS功能的遥控器) 。

注意: 如果起飞时GPS信号不足以记录返航点,则会等待到GPS信号足够强时才会记录返航点。 在恶劣的卫星信号环境中起飞时,开发人员应确保设置的返航点在用户期望的范围内。

智能返航

按遥控器上的Return Home按钮以启动智能返航。 然后,飞机将自动返回到最后记录的返航点。

遥控器的操纵杆可用于更改飞机的位置,以避免在智能返航过程中发生碰撞。 按一次按钮并按住以启动返航,再次按下以终止返航并重新获得对飞机的完全控制。

您也可以通过Mobile SDK启动和取消智能返航。

失控返航

如果成功记录了返航点并且指南针正常工作,当遥控器信号丢失超过三秒钟,则会自动触发失控返航。 如果重新建立了遥控器信号连接,则失控返航可能会中断,并且飞手可能会重新获得对飞机的控制。

在某些任务中,当信号连接丢失时,不希望立即返航。 可以使用Mobile SDK API设置失控保护行为。

低电量返航

当电池电量降至某个阈值以下(通常为25%至50%)时,飞机将要求返航。 监视飞行控制器状态的API也会收到返航状态推送,同时遥控器将开始发出哔哔声。

可以通过按遥控器上的home按钮或通过使用SDK发送取消命令来取消返航过程。

无线链接丢失

如果距离太大或障碍物阻碍了链接,有时遥控器和飞机之间的无线连接可能会丢失。

如果链接丢失3秒钟,飞机将开始执行失控保护行为。 行为选项包括:

  • 自动返航 (请查看 返航)
  • 悬停
  • 下降

Onboard SDK通讯

使用Mobile SDK的应用程序可以通过Lightbridge无线通信链路与飞机上部署的Onboard SDK应用程序进行通信。

Mobile SDK使开发人员能够检测Onboard SDK应用程序是否已连接至飞行控制器,并向其发送和接收数据。 数据的大小不能大于100字节,并且将每14ms以40字节的增量发送。

模拟器

DJI飞行控制器支持仿真模式,可以更快,更安全地开发应用程序。 飞行控制器接受控制命令,并使用它们来模拟传感器和状态信息。 在室内可以先在模拟器中测试应用程序。

可以使用Mobile SDK启动和停止模拟器。 模拟器的程序控制意味着持续的集成环境可以在每次构建应用程序时利用模拟器进行全面的应用程序测试。

Windows应用程序(对于P4为Mac应用程序)可用于可视化模拟的飞行。 有关使用模拟器的更多详细信息,请参见 链接open in new window

虚拟摇杆

Mobile SDK中的虚拟摇杆功能可以模拟遥控器的操纵杆,可以模拟手动飞行的方式进行自动飞行。 与航线任务相比,这是一种更为复杂但灵活的自动飞行方法。

虚拟摇杆 API有几种重要的操作模式需要了解。

坐标系

可以选择“Ground”坐标系或“Body”坐标系。 所有水平移动命令(X,Y,俯仰,横滚)将相对于坐标系。

倾角控制模式

可以使用X/Y速度或横滚/俯仰角度设置虚拟摇杆命令以水平移动飞机。 较大的横滚角和俯仰角分别导致较大的Y和X速度。 横滚角和俯仰角始终相对于水平面。 横滚和俯仰方向取决于坐标系。 为了方便起见,下面给出了一张表格,详细说明了飞机如何根据坐标系和俯仰俯仰控制模式进行移动。 这可以使用坐标系的定义来计算。

坐标系RollPitch控制模式飞机航向飞行控制数据.俯仰(正)飞行控制数据.俯仰(反)飞行控制数据.横滚(正)飞行控制数据.横滚(反)
GroundAngleNorthGo SouthGo NorthGo EastGo West
AngleEastGo SouthGo NorthGo EastGo West
GroundVelocityNorthGo EastGo WestGo NorthGo South
VelocityEastGo EastGo WestGo NorthGo South
BodyAngleNorthGo SouthGo NorthGo EastGo West
AngleEastGo WestGo EastGo SouthGo North
BodyVelocityNorthGo EastGo WestGo NorthGo South
Velocity EastGo SouthGo NorthGo EastGo West

偏航控制模式

可以设置为“角速度模式”或“角模式”。 在“角速度模式”下,偏航参数指定旋转速度(以度/秒为单位),并且偏航受使用的坐标系影响。 当偏航控制模式设置为“角模式”时,该值将在地面坐标系中解释为一个角度。 请确保选择正确的坐标系。

垂直油门控制模式

垂直移动可以使用速度或位置来实现。 位置是相对于起飞位置的高度。 速度始终是相对于飞机的,并且不遵循典型的坐标系惯例(正垂直速度会导致飞机上升)。