基于Ardupilot/PX4固件,APM/PIXhawk硬件的VTOL垂直起降固定翼软硬件参数调试(第四篇)飞行特性

基于Ardupilot/PX4固件,APM/PIXhawk硬件的VTOL垂直起降固定翼软硬件参数调试(第四篇)飞行特性

自动起飞


固定翼飞机可以自动发射多种类型的飞机。下面的说明将教你如何设置你的任务来支持自动起飞。
基本说明
自动起飞的基本思想是自动驾驶仪将油门设置为最大,并爬升到指定的高度。要使飞机执行起飞,请将NAV_TAKEOFF命令添加到您的任务中,通常作为第一个命令。这个命令有两个参数 - 最小俯仰角和起飞高度。最小俯仰控制飞机在起飞过程中以什么俯仰角地爬升。建议大多数飞机的值在10到15度之间。起飞高度控制起飞被认为完成的高于家中的高度。确保这个高度足以让飞机在起飞后安全地转弯。 40米的高度适合各种飞机。
在起飞过程中,机翼将保持在LEVEL_ROLL_LIMIT范围内内。这样可以防止急转弯造成机翼撞地面起飞的跑道。
请注意,起飞方向是从自动起飞命令开始时飞机所在的方向设置的。所以你需要把飞机指向正确的方向,然后切换到自动模式。在起飞的第一阶段,自动驾驶仪将使用陀螺仪作为保持飞机直行的主要机制。在达到良好的GPS航向足够的速度之后,飞机将切换到使用GPS地面轨道,这使得它能够考虑横风。
只要有可能,你应该尝试着迎风。

手抛发射

手抛发射是发射较小的飞机,如泡沫滑翔机的常用方法。飞机有许多参数来控制手的启动。如果您打算以自动模式启动您的飞机,请仔细查看这些选项。
一个很好的手抛发射的关键是:
如果螺旋桨在发动时落在手后面,那么确保电动机在您的手经过之前不会启动
控制手发射的主要参数是:
• TKOFF_THR_MINACC
• TKOFF_THR_DELAY
• TKOFF_THR_MINSPD
• TECS_PITCH_MAX
当自动起飞任务命令开始时(通常通过切换到自动模式),自动驾驶仪以“油门抑制”模式启动。只有TKOFF_THR_参数设置的条件满足后,油门才会启动。
TKOFF_THR_MINACC参数控制油门将会结合飞机的最小前进加速度。前进的加速度来自你发射飞机的手臂投掷动作。您需要将此值设置得足够高,使得当您正常携带飞机时,电机不会自动启动,但又足够低,以便您可以通过正常的投掷动作可靠地触发加速。大多数飞机的价值大约15米/秒/秒。
TKOFF_THR_DELAY参数是延迟1/10秒的单位,以在达到最小加速度后阻止启动电机。这是为了确保在电机启动之前螺旋桨已经过了你的手。建议手动启动至少2秒(0.2秒)。
TKOFF_THR_MINSPD参数是电机启动前的最低地面速度(由GPS测量)。这是一个额外的安全措施,以确保在电机启动之前飞机已经脱离您的手。推荐使用4m / s的值。
请注意,如果您的飞机是“拖拉机”类型的电机在前面,那么您可能需要将TKOFF_THR_DELAY和TKOFF_THR_MINSPD设置为零,或使用较低的值。
您应该考虑的最后一个参数是TECS_PITCH_MAX参数。这将控制自动驾驶在自动飞行中要求的最大俯仰。设置为非零值时,将替换所有自动油门飞行模式的LIM_PITCH_MAX参数。将此参数设置为一个足够小的值以确保飞机能够在全油门时可靠爬升将使起飞更可靠。对于大多数飞机来说,设置成20就可以了。

弹射器发射

弹射器发射和手发射之间的主要区别在于,弹射器通常会给飞机提供更高的加速度,所涉及的风险主要是螺旋桨将撞击弹射框而不是击中你的手。
在大多数其他方面,弹射器的发射就像是手动发射,同样的4个关键参数也适用。如果您的弹射器设置为使得电机在飞机离开弹射器的框架之前不能运行,那么您将需要选择参数以确保有足够的延迟。通常这意味着TKOFF_THR_MINACC(比如说20m / s / s)的值更高,测量GPS地面速度之前的延迟更长。可能需要进行一些实验,但是TKOFF_THR_DELAY值为5很可能对许多弹射器有好处。

蹦极发射

一次蹦极式发射使用了一段长长的弹力来发射飞机。这可以是一个更便宜的替代弹射器,并为许多中小型号提供良好的结果。
适用于手动发射和弹射发射的4个参数也适用于蹦极发射,但是您需要的值是不同的。蹦极发射的主要风险(尤其是推进螺旋桨)的主要风险是螺旋桨将撞击蹦极绳,损坏螺旋桨或蹦极或两者。为了防止这种情况的发生,你应该有更高的TKOFF_THR_DELAY值,使得它在电机启动之前就已经松开了蹦极。 50左右的值(延迟5秒)可能是一个很好的起点。
跑道起飞(CTOL)
跑道起飞,也被称为轮式起飞或CTOL(常规起飞着陆)。从跑道上设置一个好的自动起飞比其他类型的发射要复杂一些,需要更多的参数设置和更多的调整。
跑道起飞的一个关键考虑因素是你是否有拖车(尾轮转向)或三轮车底盘(前轮转向)。三轮车起落架飞机的自动起飞更容易,尾部牵引机需要额外的参数。
跑道起飞的关键参数是:
TKOFF_TDRAG_ELEV
TKOFF_TDRAG_SPD1
TKOFF_THR_SLEW
TKOFF_ROTATE_SPD
TECS_PITCH_MAX
GROUND_STEER_ALT
除了这些参数之外,还需要调整地面转向,以便地面转向控制器能够可靠地转向飞机。参见设置地面转向的单独页面。作为这个调整的一部分,你需要设置GROUND_STEER_ALT参数。
前两个参数主要用于尾翼飞机,尽管它们也可以用来在起飞时保持三轮摩托车的前端。
TKOFF_TDRAG_ELEV参数用于在起飞初始阶段在跑道上牢牢抓住尾部牵引装置的尾部,以便在跑道上有足够的抓地力进行引导。对于尾部牵引机,这通常设置为100,这意味着在起飞的初始阶段,升降机100%起飞。对于三轮车底盘飞机,需要在鼻子上额外增加一点重量才能获得良好的转向,可能会发现-20(意味着降低20%)值可能会有所帮助。
当起飞开始时,自动驾驶仪将使用TKOFF_TDRAG_ELEV电梯(按百分比),直到飞机达到每秒TKOFF_TDRAG_SPD1米的速度。您需要将TKOFF_TDRAG_SPD1设置为低于起飞速度的速度,但高于飞机能够使用其方向舵转向的速度。当飞机到达TKOFF_TDRAG_SPD1时,它将释放升降舵,而是使用正常的飞行俯仰控制器来尝试保持俯仰水平。这将有一个拖尾飞机尾巴抬高的效果。
TKOFF_ROTATE_SPD参数控制自动驾驶仪何时试图抬起机头(俯仰)离开地面。这需要是飞机能够爬升的速度,所以它应该比飞机失速速度高出至少2米,最好是更高。较高的值将意味着更长的起飞时间(因此需要更多的跑道)。
TKOFF_THR_SLEW参数控制起飞过程中的油门摆动速率(以每秒百分比为单位)。这是用来让油门以适合您飞机的速度升高。这应该有多高取决于飞机的类型。地面起飞通常是一个好主意,可以限制油门斜度的上升速度,以防止来自电机的扭矩导致大的转向变化。值为20(意味着每秒20%的节气门变化)对于许多尾部牵引器是好的。三轮车起落架飞机可能能够处理较大的油门转速。
与其他类型的起飞一样,TECS_PITCH_MAX参数控制着起飞时所用的最大桨距。确保这是限制在一个价值,飞机可以使用爬满油门快速。大约20度的值适用于多种飞机。

在FBWA模式下测试地面起飞

使用FBWA飞行模式测试起飞代码有时很有用。这样做的方法是将FBWA_TDRAG_CHAN参数设置为发送器上的RC输入通道(通常是一个瞬时开关,如教练开关)。当您在跑道上等待FBWA模式起飞时,此RC通道变高,自动导航将检查您是否配置了TKOFF_TDRAG_ELEV和TKOFF_TDRAG_SPD1参数。如果它们被设置为非零值,则电梯将在FBWA中以与它是如何控制AUTO自动起飞相同的方式进行控制。一旦该RC通道升高,电梯将转到TKOFF_TDRAG_ELEV值(通常为尾部拖车的100%),并且将停留在那里,直到飞机达到每秒TKOFF_TDRAG_SPD1米的地面速度。
这为在FBWA模式下测试自动起飞提供了一个方便的方法,也是一种在FBWA模式下获得更好的地面转向的好方法。

自动着陆


这篇文章解释了如何将飞机降落作为任务计划的一部分,并且包括如何安全着陆的信息。

配置自动着陆

飞机可以自动降落飞机,作为任务计划的一部分。
要使飞机着陆,需要在任务结束时添加一个NAV_LAND命令,指示所需着陆点的纬度,经度和高度。在大多数情况下,高度应设置为0.在着陆期间,当飞机到达熄火点时,自动驾驶仪将关闭油门并保持当前航向,由下述参数控制。
关键参数
控制自动着陆的关键参数是:
LAND_FLARE_ALT
LAND_FLARE_SEC
LAND_PITCH_CD
TECS_LAND_ARSPD
TECS_LAND_SPDWGT
下面介绍每个参数的含义和建议值。
设置flare点
“flare”是当自动驾驶仪切断油门并提高倾斜度时,着陆的最后阶段,增加阻力并放慢飞机沉入地面。适当的flare时间取决于飞机的类型,并由LAND_FLARE_ALT和LAND_FLARE_SEC参数控制。
flare的主要控制是LAND_FLARE_SEC参数。如果飞机继续以当前的下降速度继续飞行,那么这是几秒钟之前的时间。所以,如果飞机以2米/秒的速度下降,并且将LAND_FLARE_SEC设置为3,则飞机将在地面以上6米的高度发射。通过使用一段时间冲击来控制flare,如果飞机快速下降,则飞机能够在更高的高度发射;如果飞机缓慢下降,则可以在更低的高度发射。这有助于确保flare能够产生平稳的触地。
第二个控件是LAND_FLARE_ALT。无论飞机的下降速度如何,这个高度都是以米为单位的高度。
这两个参数的适当值取决于自动驾驶仪如何估算其高度在地面以上。如果自动驾驶仪有一个很好的测距仪(如激光雷达),那么你可以安全地选择相当小的数字,并接近地面熄火。这通常会产生更好的着陆。 LAND_FLARE_SEC为1.5,LAND_FLARE_ALT为2的值是以LiDAR开始的好地方。如果仅仅依靠气压计着陆高度,则可能需要更高的值才能解释气压误差。

控制滑翔坡度

设置flare点的另一个重要因素是下滑道。滑翔坡度是从最后一个航点到着陆点的距离与最后航点和着陆点之间的高度差的比率。例如,如果着陆点距离最后一个航点300米,最后一个航点是地面30米,那么滑翔斜率为10%。
如果滑翔坡度太陡,那么飞机将不能及时发亮以避免撞击,加上自动驾驶仪可能无法准确地将飞机保持在进近坡道上。建议您以最多10%的下滑坡度开始。您的飞机能够处理的下滑坡度取决于您的俯仰控制器的调校能力,您的TECS调校的效果以及您要求的着陆速度。
如果您发现您的飞机没有准确地跟踪所需的滑行坡度,那么您应该首先检查您的日志中的俯仰调整,并确保在着陆过程中要求的和实现的音高在几度之内匹配。如果他们没有看到音调调整文档(或者可能需要重新运行AUTOTUNE)。如果要求和达到的pitch匹配,那么你应该检查你的TECS记录,以确保在着陆过程中要求和达到的空速相匹配。查看TECS调整补丁以获取更多信息。
你也应该知道,很多模型飞机可以长距离滑行,也可能是你所要求的滑翔坡度和空速组合不可能实现。

着陆空速

自动着陆通过使用空速传感器得到极大的帮助。使用空速传感器时,着陆进场速度(下滑速度)由TECS_LAND_ARSPD参数控制,单位为米/秒。
您需要为TECS_LAND_ARSPD选择高于您的飞机失速速度的值,但要足够低以使飞机能够在合理的距离内降低高度并降落。请注意,由于失速速度取决于您的飞机的重量,如果您显着改变飞机的重量(例如添加电池或摄像头),则需要调整降落速度。
为了进一步改善着陆,您可以使用预扩张来在发生火光之前降低空速。这可以通过设置LAND_PF_ALT或LAND_PF_SEC来进入一个固定高度的预闪光状态,或者估计到地面的秒数(考虑到你现在正常的速率)。一旦Pre-Flare被触发,所需的空速变为LAND_PF_ARSPD。该值应该低于TECS_LAND_ARSPD,但大于失速速度。在反向推力可用的情况下,这一点特别有用。然而,一些飞机可以处理失速降落,所以将其设置为非常低的数字(1)将告诉飞机在发生火炬之前尽可能多地排空空气。
控制方法
在着陆进近过程中,自动驾驶仪需要平衡要求的空速(由TECS_LAND_ARSPD设置)和要求的滑翔坡度和着陆位置(由前一个航点和最终着陆点设定)。默认配置试图平衡这两个要求,但对于某些飞机,您可能需要优先考虑。
空速控制与高度控制的优先级使用TECS_LAND_SPDWGT参数进行设置。值1(默认)意味着两者之间的平衡。接近于2的值给出空速的更高优先级,而接近于零的值给予高度控制更高的优先级。例如,如果您以接近失速速度的速度降落,则您可能希望将空速控制放在最重要的位置。为此,应将TECS_LAND_SPDWGT设置为接近2的值,如1.9。
如果你想在着陆的时候想要的是精确的,那么你应该把TECS_LAND_SPDWGT设置为一个较小的数字,比如0.2甚至0.0。在这种情况下,飞机仍然会尝试使用油门来达到目标着陆的空速,但是它不会试图用俯仰来控制空速。
如果您正在降落滑翔机(或者没有电机的飞机),那么您应该将TECS_LAND_SPDWGT设置为2.0,这样空速就是优先级,空距将用于控制空速。
在大多数情况下,-1的值给出最好的结果。这个特殊的值会在着陆过程中自动调整数值,从正常的TECS_SPDWEIGHT值降到零点。在进近的过程中,您保持良好的空速,但在您登陆的时候,重点是更准确的着陆。

控制flare

着陆的最后阶段被称为“flare”。在flare期间,飞机试图保持沿着最后一个航点和着陆航点之间的航线,并且仅使用目标下降速度来控制其高度。一旦flare开始,油门被“禁用” - 设置为THR_MIN和零之间的某个值。
飞行控制器在flare中的主要工作是尝试达到TECS_LAND_SINK参数中指定的下降速率。默认为0.25米/秒,对大多数飞行器来说是一个合理的降落垂直速度。为了达到这个速度,TECS控制器只有在马达被迫归零时才使用桨距控制。
影响飞机达到理想下降速度能力的主要参数是LAND_PITCH_CD,TECS_LAND_DAMP和主俯仰调整参数。
LAND_PITCH_CD参数设置耀斑中的最小俯仰目标(以厘米为单位)。这个参数是非常专门设计的,目的是为了防止在接地时飞机的机头过低,造成损坏起落架或破坏螺旋桨的问题。对于大多数飞机来说,这应该是一个小正数(如300,意思是3度),但对于一些腹部着陆的飞机,可以设成小负数,如果flare时飞机远离地面,将失速。
请注意,由于TECS控制器试图控制下降速率,因此飞机的实际俯仰角可能比LAND_PITCH_CD高很多。如果TECS_PITCH_MAX参数非零,则最大俯仰由TECS_PITCH_MAX参数控制,否则由LIM_PITCH_MAX参数控制。
TECS_LAND_DAMP参数是过程中桨距控制的阻尼常数。数字越大,俯仰要求变化越慢。这个参数可以用来减少熄火发生时突然发生俯仰变化的问题。

Flare之后

飞机flare后继续导航,但零油门。导航方向是从最后一个航点通过着陆点向前外推的一条线。请注意,导航滚动将被限制为LEVEL_ROLL_LIMIT(默认为5度)以防止机翼打击,所以如果存在显着的横风,则飞机可能无法保持精确的路径。
如果您的飞机长时间持续着陆(可能出于各种原因),那么您可以调整TECS_LAND_SRC以强迫失速(负)或降低(正)。此值会调整您的TECS_LAND_SINK与距离LAND点的距离成比例。这有助于确保您从LAND点合理的距离。
注意
长期着陆的可能原因包括地面效应使得飞机有更多的升力,因为它靠近地面,或者只是飞机飞得很快。
当飞机停止移动LAND_DISARMDELAY秒(默认20秒)时,它将解锁电机。或者,可以通过设置LAND_THEN_NEUTRL触发LAND_DISARMDELAY,从而禁用伺服移动。
使用测距仪
如果你已经为你的飞机安装了测距仪,那么你可以使用它来更准确的着陆控制。要允许测距仪用于着陆,您需要将RNGFND_LANDING参数设置为1。
当使用测距仪着陆时,测距仪给出的高度仅用于着陆进近和确定眩光点,其目的是使飞机更准确地跟随下滑道并在正确的时间闪光。
注意
测距仪的效果可能取决于您飞过的地面,所以最好在飞行模式(如FBWA)中进行一些低通,然后检查日志以检查测距仪是否正常工作。
另外请注意,如果您有更远距离的测距仪,那么将测距仪的最小范围设置为远高于零是个好主意。例如,脉冲激光雷达的典型范围超过40米,当它读取错误的读数往往读取范围小于1米。将RNGFND_MIN_CM设置为150将丢弃1.5米以下的任何测距仪读数,并将极大地提高激光雷达着陆的鲁棒性。

改善着陆

一个好的着陆的关键是自动驾驶知道它离地面有多远。使用默认设置,可用于检测高度的唯一传感器是晴雨表。不幸的是,气压计有三种主要的误差:
气压变化引起的气压漂移
由于自动驾驶仪电子部件的温度变化而造成的气压漂移
气压计周围气流的局部压力变化引起的气压误差
良好的自动着陆的理想设置是激光雷达。激光雷达可以非常准确地测量到地面的距离,而不会发生漂移。如果您安装了激光雷达,则可以使用RNGFND_LANDING = 1进行着陆。
如果激光雷达没有安装,那么可以采取一些措施来尽量减少自动着陆的气压误差问题
在电子设备加热后执行气压计校准。 Pixhawk最简单的方法是用安全开关解除飞机的飞行状态。当飞机撤防时,它假定它在地面上,并将气压计调到当前的压力。
尽量避免直接通过自动驾驶仪的气流,这可能导致速度相关的压力变化
飞行时间缩短,可以减少更换空气的时间。检查你的日志,看看是否一直在零高度着陆
在飞机降落的情况下,它也可以很好的设置着浅间距的着陆(在LAND_PITCH_CD中),并设置一个稍微高一点的高度,只有当你的失速速度足够低,滑行一段时间才能可靠地工作,这将是唯一的工作。
使用DO_LAND_START
有时触发自动着陆作为RTL(返回到启动)的一部分是有用的。要做到这一点,你需要做两件事情:
在你的着陆序列开始之前,向你的任务添加一个DO_LAND_START任务物品
将RTL_AUTOLAND参数设置为1或2
它的工作方式是当飞机进入RTL时,它检查参数RTL_AUTOLAND是否被设置为1或2.如果是,则搜索当前任务DO_LAND_START类型的任务项目。如果找到了,那么飞机将自动进入自动模式并着陆,从DO_LAND_START标记之后的任务部分开始。
确切的行为取决于RTL_AUTOLAND值:
如果RTL_AUTOLAND = 1,那么飞机将首先像往常一样RTL,然后当它开始绕回返回点(回家或集合点)时,它将在DO_LAND_START和陆地之后切换到AUTO任务
如果RTL_AUTOLAND = 2,则飞机将完全绕过RTL并直接进入着陆序列。
你可以选择在你的任务中包含多个DO_LAND_START任务物品。如果这样做,则使用DO_LAND_START任务项目的纬度/经度来选择使用哪个着陆序列。使用最接近当前位置的DO_LAND_START。如果您针对不同的风况或不同的地区有多个着陆序列,这可能会很有用。

如何中止自动着陆

提供一个着陆中止机制,允许您以安全,受控和预期的方式中止着陆顺序。自定义中止行为可以预先编程作为任务的一部分,或者您可以使用默认的中止机制。要启用此功能,请设置参数LAND_ABORT_THR = 1。
这个功能有三个步骤:#。触发中止#。中止#期间的行为。中止完成后的任务状态。
步骤1)中止降落触发
这是触发自动着陆中止的三种方式。他们都只能在自动模式下工作,并且正在执行LAND航点任务项目:
使用GCS发送MAV_CMD_DO_GO_AROUND命令。 Mission Planner在FlightData Actions标签上有一个标记为“Abort Landing”的按钮。
RC输入油门> 90%。这会在AUTO模式下触发一个中止。油门只需要很短的时间来触发它。不要忘记降低它!
模式改变。对于人体飞行着陆中止,您可以将自动模式切换到例如MANUAL / STABILIZE / FBWA,然后根据需要安全地导航飞行器。使用此方法将跳过中止行为步骤2,因为它正在手动完成。当切换回AUTO时,任务将按照下面的步骤3所述继续。
步骤2)中止飞行行为
中止行为具有默认配置,不需要预先计划的任务。默认的中止行为是模拟自动起飞:调高至少10度,并将油门设置为TKOFF_THR_MAX并保持航向,直到达到目标高度30米。可以改变俯仰和高度以允许定制的行为。
俯仰最小。如果在这次任务中执行过NAV_TAKEOFF,那么相同的音高将在这里被重新使用。
目标高度。如果NAV_LAND参数1> 0,那么它被用作以米为单位的目标高度。否则,如果NAV_TAKEOFF曾经执行过这个任务,那么相同的高度将在这里被重新使用。
如果放弃触发器是通过模式改变的话,这个步骤将被跳过,因为假定飞行员手动地接管并且以他们选择的音高和油门飞行到安全高度。
步骤3)中止着陆完成后的任务状态
一旦中止土地完成,通过达到目标高度或切换回AUTO,任务指数将会改变,您将不再执行NAV_LAND命令。使命指数将改变为这三个选项之一,并按此顺序进行检查:
如果NAV_LAND任务项目后面是任务项目CONTINUE_AND_CHANGE_ALT且param1 = 0或1,则任务索引将增加一次该命令并像正常一样执行。这之后可以进行任何定制的任务行为的进一步的中止任务计划。
否则,如果在任务中有DO_LAND_START,则跳转到该索引。
否则任务指数减一次是NAV_LAND之前的索引。这将确保重复相同的着陆方法。
逆推着陆
一些ESC允许反向。在螺旋桨上反向使用时,会产生一个负向推力,可以用来降低空速。在陡峭着陆的过程中,这种方法可以用来保持稳定的低速空速,让您更轻松准确地降落。要使用此功能,强烈建议使用空速传感器和测距仪(见上文)以获得准确的高度。
注意
从Plane v3.5.1开始,反向推力着陆是可用的。
关键参数
控制反推着陆的关键参数除了1.1中列出的外,还有:
LAND_PF_ALT
LAND_PF_SEC
LAND_PF_ARSPD
USE_REV_THRUST
TECS_APPR_SMAX
RC3_TRIM
THR_MIN
ESC(电子调速器)
硬件选择和编程
大多数电调可以正反转运行,但这通常不是股票功能,可能需要重新编程才能完成。 任何SimonK和BLHeli兼容的ESC都可以flare以支持反向推力。
这里是关于BLHeli兼容的信息。
硬件配置
通过改变它的中性点来配置您的ESC反向推力。许多ESC需要定制固件来实现这一点。搜索谷歌或您的ESC的mfgr有关如何配置您的特定ESC的说明。
设置这些:
最小PWM到1000,中间到1500,最大到2000。
THR_MIN为负值,例如-100。接下来将RC3_TRIM(或其他RCx映射到通过RCMAP_THROTTLE进行调节)设置为ESC的中间值。
确定您的最大下滑角度
对于陡峭的着陆方法,限制是你能保持你想要的空速。这取决于您的飞机创造反向推力(电机+支撑推力)的能力及其对减速(飞机质量)的阻力。在许多情况下,极度陡峭是不必要的,但是可能的。超大型电机和轻型飞机可以像60度一样陡峭。
要确定最陡峭的接近角度,请将TECS_APPR_SMAX设置得非常高,以免限制您(例如99)。接下来,计划一个比正常的方法更陡峭的任务(尝试15度,从那里上去)。在进场时注意你的空速 - 飞机应该能够保持TECS_LAND_ARSPD而不超过可用倒车油门范围的75%。如果不是这样,那么你的飞机的负推力质量比就太高了。
请记住,无论您决定的最大值如何,在所有的风力条件下都是不可接受的。保持可重复性最好保守一点。
设置前眩光
在安装了测距仪和空速传感器之前,在闪光点前,我们将获得精确的空速和高度读数。这给了我们一个很好的想法,我们的动力和稳定的“初始条件”,以最后的耀斑。将LAND_PF_ALT(或LAND_PF_SEC)设置为相当高的点(例如10米)并从那里调整。接下来将LAND_PF_ARSPD设置为恰好高于您的失速速度的值。
当达到LAND_PF_ALT时,空速需求将立即从TECS_LAND_ARSPD变为LAND_PF_ARSPD。这将导致它通过增加的反向推力而踩下制动器,从而使空速减小到期望的空速。
诀窍是将LAND_PF_ALT设置为达到LAND_PF_ARSPD的高度,然后杀死LAND_FLARE_ALT处的油门(发生在一个稍低的高度 - 约1米或2米)。
例如,TECS_LAND_ARSPD = 15,LAND_PF_ARSPD = 12,LAND_PF_ALT = 12,LAND_FLARE_ALT = 2。根据您的斜率,飞机质量和电机+推进器推力,您预计飞机从15m / s减速到12m / s空速,同时降低10m到2m。这些是调整的关键参数,以确保低于2米高度的平稳和缓慢的flare。
Flare
现在,您正在以稳定和可预测的空速开始Flare,控制Flare更容易。如果你已经调整了你的flare,而不是反向推力的话,你会想要调整它。您会注意到您的广告调整速度要慢得多。你之前必须做的调整和妥协更容易处理。
确定您的飞机的实际失速速度
除非你真的知道你在做什么,否则摊位速度很难估计。传统上,要确定这个真正的价值,你需要慢慢地降低你的空速,直到你失速,但是这个麻烦的问题是,现在你有一架失速的飞机从天上掉下来。
借助LAND_PF_ALT和LAND_PF_ARSPD,您可以将您的失速速度降到更低的水平。要知道空速在什么时候停止,当您的机翼失去升力并通过比较实际的滚转(CTUN.Roll)和所需的滚动来检查您的数据闪存日志(SD卡上的* .bin)的空速(ARSP.Airspeed) (CTUN.NavPitch)分歧。
现在,您正在以稳定和可预测的空速开始闪光,控制耀斑更容易。如果你已经调整了你的flare,而不是反向推力的话,你会想要调整它。您会注意到您的广告调整速度要慢得多。你之前必须做的调整和妥协更容易处理。
确定您的飞机的实际失速速度
除非你真的知道你在做什么,否则摊位速度很难估计。传统上,要确定这个真正的价值,你需要慢慢地降低你的空速,直到你失速,但是这个麻烦的问题是,现在你有一架失速的飞机从天上掉下来。
借助LAND_PF_ALT和LAND_PF_ARSPD,您可以将您的失速速度降到更低的水平。要知道空速在什么时候停止,当您的机翼失去升力并通过比较实际的滚转(CTUN.Roll)和所需的滚动来检查您的数据闪存日志(SD卡上的* .bin)的空速(ARSP.Airspeed) (CTUN.NavPitch)分歧。

反向飞行


飞机现在支持倒飞。您可以通过查找INVERTEDFLT_CH EEPROM配置参数来确定您的版本是否支持倒飞。
细节
INVERTEDFLT_CH参数允许您配置变送器开关以启用APM的倒飞。默认值为零,这意味着没有倒飞。要启用它,请选择一个RC输入通道,该通道不用于其他任何功能,并且在启用先前未使用的2位置开关时,将发射器设置为大于1750的PWM值,当未使用2位置开关时,将该值设置为低于1750启用。
例如,如果通道7当前未被使用,并且您将INVERTEDFLT_CH设置为7,则如果您的发射器在通道7上发送1900,则APM将翻转飞机,并且以所处的任何模式继续飞行,但飞机是倒立的。
变送器设置
启用倒飞仅改变APM稳定飞机的方式。当启用倒飞时,它将稳定在与正常的180度滚转。
为了充分利用倒飞航班,在启用倒飞航班开关的同时,还可以倒置发射机升降舵和方向舵控制。这应该可以用任何好的发射机。例如,使用Turnigy 9X变送器上的ER9X固件,您可以使用这样的混合:
CH01 + 100%AIL
CH02 + 100%ELE
-100%完全开关(GEA)
CH03 + 100%THR
CH04 + 100%RUD
-100%完全开关(GEA)
CH07 + 100%MAX开关(GEA)
当GEAR开关激活时,将设置油门和方向舵,同时将CH7设置为满。
与飞行模式的互动
倒飞可以用于任何稳定的飞行模式(这意味着除了手动模式之外的任何模式)。这意味着你可以在任务期间切换倒飞,飞机将继续颠倒任务。确保在尝试着陆之前将其禁用
提示
以下是关于倒飞的一些常规提示
先在HIL仿真中尝试一下,以适应它,并确保您的发射机安装正确。
确保你有足够的高度之前接合或脱离倒飞。 根据您的机身,翻转时可能会损失很多高度,也可能是您的机身在翻转时挣扎保持高度
预防失速


在某些模式下,飞机有逻辑来防止失速。这个页面描述了它是如何工作的以及如何配置它。
基本的想法
用户崩溃最常见的方式之一是通过摊位。当机翼上的气流不足以将飞机保持在空中时发生失速。失速可以以任何速度发生,但是最常见的失速类型是低速失速,其中气流太慢而不能提供足够的升程。
你需要通过机翼将空气保持在空中的气流量(取决于)你正在飞行的岸角。如果你被困住了,那么你需要飞得更快,以获得足够的升力。这是因为电梯是垂直于机翼产生的,所以当机翼翻转时,只能提供电梯的一部分来举起飞机,电梯的其余部分则使飞机转弯。
当STALL_PREVENTION参数设置为1时,有两件事情完成:
当在滚动控制模式下,自动驾驶仪将监视你所要求的倾斜角度和空速,并且如果你有足够的裕量超过失速速度以在需要的倾斜角度转弯,就算出来。如果你不这样做,那么转弯将被限制在安全限度,但是它总是允许一个至少25度的银行(为了确保你的空速估算值不会太差,你仍然可以操纵)。
当在自动油门门模式下,自动驾驶仪还将TECS系统中的最小空速提高到当前需要的坡度角可以安全达到的水平。所以它会增加更多的发动机功率或降低机头提升空速,使得导航控制器所要求的倾斜角度可以在没有障碍物的情况下实现

配置失速预防

有两个控制失速预防的关键参数:
STALL_PREVENTION参数。如果这设置为零,则不进行失速预防。如果您没有空速传感器,并且合成空速估计不够好,这可能会很有用
ARSPD_FBW_MIN参数,这是配置的飞行最小空速。为了计算任何要求的倾斜角度的安全空速就是用该倾斜角度来缩放这个值
受影响的模式
以下模式受防失速代码的倾斜角限制的影响:
FBWA
FBWB
AUTOTUNE
CIRCLE
RTL
AUTO
CRUISE
LOITER
GUIDED
TRAINING (from Plane 3.4)
在这些模式中的每一种中,飞机正在计算导航代码的期望倾斜角度,或者用户正在经由副翼杆输入期望的倾斜角度。在这两种情况下,防失速代码将根据ARSPD_FBW_MIN和当前空速之间的余量来限制倾斜角。
以下模式受到失速防止限制倾斜角度时,TECS自动提速的影响:
CIRCLE
RTL
AUTO
CRUISE
LOITER
GUIDED
这些都是“自动油门”模式,TECS控制器控制俯仰和油门。

用法示例

在自动着陆转弯时,防止失速的一个例子就是在自动模式下。着陆方法将以TECS_LAND_ARSPD的空速为目标,该速度通常相当低,并且可能高于失速速度。如果最后一个回合是锐利的(通常是90度),那么飞机可能会试图在下降的速度下急转弯。这可能会导致一个摊位。失速预防代码意味着两件事情发生:
最初的转弯足够浅以防止失速
在转弯期间目标空速保持足够高以允许转弯完成,之后降低
在FBWA和AUTOTUNE下降
FBWA模式还有一个特殊功能来帮助防止直线停车。飞行员在飞行的时候往往难以判断飞机的空速,而许多飞行员在试图以FBWA模式飞行时发现自己的飞行速度太慢。如果ArduPilot变桨控制器调节良好,并且即使在缓慢飞行的情况下也能保持机头稳定,情况尤其如此。
为了使飞行低速失速的可能性降低,基于节气门位置在FBWA和AUTOTUNE模式中增加了一些额外的俯仰角。添加的降低音调的数量基于STAB_PITCH_DOWN参数,默认为2度。在零油门,这个完整的下降音高被添加。如果油门高于TRIM_THROTTLE,则不会添加俯仰音高。在这两个值之间,下降音高与节气门成比例地增加。
当您在FBWA和AUTOTUNE模式下降低油门时,会产生轻微降低的效果,这会使飞机增加一些速度,从而减少停机的可能性。 STAB_PITCH_DOWN所需的值取决于您的飞机有多少拖动。一个非常光滑的模型将需要一个较小的值。高阻力模型将需要更大的价值。

在飞机上的地理围栏


平面中的地理围栏支持允许您在要飞行的区域周围设置地理围栏,指定为GPS位置的封闭多边形以及最小和最大高度。
注意
在固定翼上,必须为地理围栏参数绘制栅栏多边形。在“直升机”中,您可以指定一个没有围栏多边形的最大围栏高度,并且“直升机”将遵守此规定,但“固定翼”要求您为包括最大/最小值ALT在内的任何围栏参数绘制多边形。
启用保护时,如果您的飞机离开围栏区域,则会切换到“引导”模式,然后飞回预定义的返回点,然后在那里闲逛,准备再次接管。然后,您可以使用遥控器上的开关或使用地面控制站(GCS)中的命令来取回控制权。
用于R C控制训练
地理围栏的主要用途之一是教自己(或其他人)使用无线电遥控飞机。当你有一个正确配置的地理围栏,几乎不会出现地理围栏失效的情况,所以是非常可靠和安全的设置。
地理围栏可以与任何APM飞行模式相结合。所以对于初学者来说,你可以将它与稳定的飞行模式(如STABILIZE或FBWA)结合起来。一旦飞行员获得了一些信心,就可以将其与手动模式结合起来,从而直接控制飞机,并允许进行最有趣的特技飞行。当以这种方式使用时,APM完全不受控制,只是将控制器直接传递给伺服系统,并且只有在您离开围栏区域或超出定义的高度范围时才能进行控制。

用于阻拦


在完全自主操作期间,围栏可以用作故障安全措施以确保飞机停留在预期的飞行区域内。在完全自主操作期间,使用FENCE_AUTOENABLE参数,飞机在起飞完成后将自动启用围栏,并在到达降落点时自动禁用围栏。将FENCE_AUTOENABLE参数设置为1以使用此功能。有关设置登陆和起飞航点的详细信息,请参阅规划航点和事件任务页面。
当然,围栏也可以用于半自主任务中的阻拦(例如起飞和/或着陆是手动的任务),围栏仍然可以通过R / C发射器或GCS控制 - FENCE_AUTOENABLE是可选的。
设置地理围栏
要在Plane中设置地理围栏,您需要配置几件事情:
• 围栏的边界,作为一组GPS点
• 对到达围栏边界采取的行动
• 返回点的位置;请注意,您可以选择使用FENCE_RET_RALLY参数让飞机返回最近的集合点而不是围栏返回点。
• 围栏区域的最小和最大高度
• 你将使用什么RC通道来启用地理围栏(如果有的话)
• 当您想要配置围栏在自动起飞后自动启用并在自动着陆后自动禁用时,可选设置(FENCE_AUTOENABLE)
• 在突破围栏之后,你想如何收回控制权
这些都可以使用APM Mission Planner进行设置。
在设置围栏边界时,您必须遵守一些规则:
• 返回点必须在围栏边界内
• 围栏边界必须完全封闭。这意味着它必须至少有4个点,最后一点必须与第一个点相同
• 边界最多可以有18个点

如果您使用APM plnner设置围栏,应确保遵循这些规则。

请记住,在制作围栏边界时,您的飞机撞击围栏时会有一些动量,并需要时间返回到返回点。对于像SkyWalker这样的飞机,我们建议在你想飞的地方的真实边界内增加一个大约30米的安全边界。最低高度也是一样 - 你需要做足够的高度以使APM有时间从快速跳水中恢复过来。您需要多少保证取决于飞机的飞行特性。
除围栏边界外,以下MAVLink参数还可以控制地理围栏行为:
• FENCE_ACTION - 对突破围栏采取的行动。默认为零,禁用地理围栏。将其设置为1,以启用地理围栏并飞向围栏突破处的返回点。设置为2向GCS报告违规行为,但不采取其他行动。设置为3使飞机在违规时返回到飞机的返回点,但飞行员在这种情况下将保持手动油门控制。
• FENCE_MINALT - 以米为单位的最小高度。如果这是零,那么你将不会有最低的高度。
• FENCE_MAXALT - 以米为单位的最大高度。如果这是零,那么你将不会有最高的高度。
• FENCE_CHANNEL - 用于启用地理围栏的RC输入通道。默认为零,禁用地理围栏。您应该将其设置为一个备用RC输入通道,该通道连接到变送器上的两位开关。当此通道高于1750的PWM值时,屏蔽将被启用。如果您的发射器支持此功能,则启用此通道(每隔几秒发出一声蜂鸣)时启用声音反馈也是一个好主意。
• FENCE_TOTAL - 栅栏中的点数(返回点加上封闭的边界)。这应该由计划者在创建围栏时为您设置。
• FENCE_RETALT - 飞机在返回点和在返航点游荡时的飞行高度(以米为单位)。请注意,当FENCE_RET_RALLY设置为1时,此参数将被忽略,并使用最接近的拉力点的游标高度。如果此参数为零且FENCE_RET_RALLY也为零,则使用FENCE_MAXALT和FENCE_MINALT参数的中点作为返回高度。
• FENCE_AUTOENABLE - 如果设置为1,则飞机将在禁用围栏的情况下启动。自主起飞完成后,围栏将自动启用。当自主任务到达着陆点时,围栏自动禁用。
• FENCE_RET_RALLY - 如果设置为1,当围栏被破坏时,飞机将前往最近的集合点而不是围栏返回点。请注意,集合点的空闲高度被用作返回高度。
注意
集结点可以在地理围栏之外,但不建议这样做。如果在地理围栏外有一个集结点,则需要使用FENCE_CHANNEL禁用地理围栏,然后才能再次控制飞机,否则飞机将停留在“引导”模式,以避免绕过集合点。一旦地理围栏被禁用,您应该将飞机放回地理围栏内,然后重新启用它。
一个额外的参数可能有助于充分利用地理围栏。当您突破围栏时,飞机将切换到导航模式并飞回返回点(或者如果FENCE_RET_RALLY设置为1,则返回最近的集结点)。一旦你回到围栏边界内,你就可以再次控制,你需要告诉APM你想要控制。您可以通过以下三种方式之一来完成此操作:
使用遥控器上的APM模式开关更改模式,或通过Mission Planner GCS(例如,从GUIDED模式更改为AUTO模式)更改模式。
使用FENCE_CHANNEL通道禁用和重新启用地理围栏
将RST_SWITCH_CH MAVLink参数设置为连接到弹簧加载开关的另一个双位置通道。 RST_SWITCH_CH参数默认为零,禁用它。如果您将其设置为频道,那么您可以使用此通道切换器在突破围栏后收回控制权。
如果不是完全自主飞行,我发现使用RST_SWITCH_CH是地理围栏的最佳选择,因为这意味着APM在整个飞行过程中启用了围栏,并且您不会通过切换模式来改变任何行为。但它确实占用了另一个通道,所以有些人可能没有足够的通道来使用它。

地形跟随

从固定翼3.0.4起,自动驾驶板(如Pixhawk),可以使用自动地形跟随功能。 本页面将介绍地形跟踪的工作原理,如何启用它,以及它的局限性。
如果使用直升机,请看
参见直升机特定地形

工作原理

通过在自动驾驶仪上的MicroSD卡上维护一个地形数据库来实现地形跟踪,该地形数据库为地理位置的网格提供海拔高度以米为单位的地形高度。在Pixhawk上,该数据库存储在microSD卡上的APM TERRAIN目录中。
数据库由自动驾驶仪通过MAVLink遥测链路从地面站请求地形数据自动填充。在飞行计划中,当自动驾驶仪通过USB连接时,或在通过无线电连接进行连接时,这可能发生。一旦地形数据从GCS发送到自动驾驶仪,它将存储在microSD卡上,即使GCS未连接,它也可以使用。这使得自动驾驶仪即使在无法与地面站通话的情况下,也可以使用地形数据执行RTL(返回发射)之后的地形。
在飞行过程中,当飞机接近新的区域时,ArduPilot代码自动将所需的地形数据从microSD卡存入内存。如果使用默认的地形网格间隔,它将保持内存约7km乘8km的区域。
除了飞机附近的任何地形数据外,ArduPilot还要求地面站提供任何装载的任务航点的地形数据,以及装载的任何航点。这确保了即使GCS变得不可用,在整个任务中也可以在microSD卡上使用地形数据。

地形跟随飞行模式

在以下飞行模式中可以使用飞机地形:
RTL - 返航
LOITER - 悬停
cruise - 长途巡航
FBWB - 定高
GUIDED - “飞向”航点
AUTO - 自动
使用RTL,LOITER,CRUISE,FBWB和GUIDED模式中的地形由TERRAIN—FOLLOW参数控制。该参数默认为关闭,因此在这些模式下不会使用地形跟踪。将TERRAIN_FOLLOW设置为1以在这些模式下启用地形跟踪。
在AUTO任务中使用地形跟随在航路点上,使用航路点的参考坐标系进行控制。正常(非地形跟踪)航路点具有“相对”参考系,并且相对于本地位置指定高度。地形下面的航点有一个“地形”参考框架,高度是相对于地形数据库中给出的地面高度。

使用地形跟踪

• 在地形可能变化很大的地区飞行ArduPilot时,地形跟踪非常有用。主要用途是:
• 安全的RTL。当你在山区进入RTL时,能够爬过山而不是试图飞过山,这是非常有用的! 航空摄影。在拍摄一系列航拍照片时,能够保持地面的恒定高度是非常有用的 FPV飞行。在巡航模式下飞行FPV时,保持高于地面的恒定高度是有用的,这样您可以花更多时间欣赏风景,避开山坡 地形数据的来源 地面站负责提供通过MAVLink发送给飞机的原始地形数据。目前只有MissionPlanner(版本1.3.9或更高版本)和MAVProxy支持地形跟踪支持所需的TERRAIN_DATA和TERRAIN_REQUEST消息。如果您正在使用不同的地面站,那么要加载地形数据,您需要使用两个支持地面站之一进行连接,以便ArduPilot将地形数据加载到您的板上。通常需要大约2分钟才能加载任务的所有地形数据。一旦它被加载它永久保存在microSD卡上。
MissionPlanner和MAVProxy都支持地形数据的全球SRTM数据库。该数据库的全球网格间距为3弧秒(约100米),但在世界某些地方(美国约30米)的网格间距较小。通过扩展地面站代码,可以添加对其他地形数据库的支持,而无需更改ArduPilot代码。

地形间距

ArduPilot地形编码有一个用户可设置的参数,称为TERRAIN_SPACING,它控制网格间距,用于请求从飞机到地面站的地形数据。默认的TERRAIN_SPACING是100米,但用户可以为专业应用程序设置不同的网格间距。
请注意,保存在内存中的地形数据量与网格间距直接相关。如果将TERRAIN_SPACING减少2倍,则保留在内存中的地形面积减少4倍。建议使用至少30米的TERRAIN_SPACING,以防止飞机从侧面在飞行中的网格并没有可用的数据。
如果地面站在飞机要求的分辨率下没有可用的地形数据,则地面站将根据需要内插以提供所要求的网格尺寸。 地形精度 SRTM数据库的准确性在地球表面上各不相同。典型的精度是10到20米左右,虽然有些地区更糟。这使得地形适合飞行在60米或更高海拔的飞机。不建议使用低空飞行的地形数据。

设置地形跟踪

要设置您的固定翼飞机的地形下面遵循这些步骤
确保你有平面3.0.4或更高版本加载 确保你安装了最新的MissionPlanner(版本1.3.9或更高版本) 将TERRAIN_ENABLE设置为1,将TERRAIN_FOLLOW设置为1 GPS锁定时,通过USB连接到车辆 检查MissionPlanner中的FlightData-> Status页面并查找地形状态数据:

通道输出功能


所有伺服输出都可以映射到ArduPilot支持的任何功能。前4个通道的默认设置是Aileron,Elevator,Throttle和Rudder(通常称为AETR),但是您可以根据需要重新分配它们。
本页介绍如何配置这些输出通道以及每个可用功能是什么。
SERVOn_FUNCTION参数
在GCS的高级参数视图中,您会发现每个SERVO输出通道都有一个SERVOn_FUNCTION参数。例如,SERVO5_FUNCTION控制通道5的输出功能,SERVO6_FUNCTION控制通道6的输出功能等等。
您可以设置这些参数的值与飞行器和车固件共享,而不是所有这些参数都在固定翼飞机上实施。下面列出了在固定翼实施的那些:
Disabled=0
RCPassThru=1
Flap=2
Flap_auto=3
Aileron=4
mount_pan=6
mount_tilt=7
mount_roll=8
camera_trigger=10
mount2_pan=12
mount2_tilt=13
mount2_roll=14
DifferentialSpoilerLeft1=16
DifferentialSpoilerRight1=17
DifferentialSpoilerLeft2=86
DifferentialSpoilerRight2=87
Elevator=19
Rudder=21
FlaperonLeft=24
FlaperonRight=25
GroundSteering=26
ParachuteRelease=27
QuadPlaneMotor1=33
QuadPlaneMotor2=34
QuadPlaneMotor3=35
QuadPlaneMotor4=36
QuadPlaneMotor5=37
QuadPlaneMotor6=38
QuadPlaneMotor7=39
QuadPlaneMotor8=40
MotorTilt=41
RCPassThru1=51
RCPassThru2=52
RCPassThru3=53
RCPassThru4=54
RCPassThru5=55
RCPassThru6=56
RCPassThru7=57
RCPassThru8=58
RCPassThru9=59
RCPassThru10=60
RCPassThru11=61
RCPassThru12=62
RCPassThru13=63
RCPassThru14=64
RCPassThru15=65
RCPassThru16=66
Ignition=67
Starter=69
Throttle=70
ThrottleLeft=73
ThrottleRight=74
TiltMotorLeft=75
TiltMotorRight=76
ElevonLeft=77
ElevonRight=78
VTailLeft=79
VTailRight=80
前4个通道的默认值是副翼,升降,油门和舵。所有其他通道的默认值为0,意味着禁用。禁用通道将输出该通道的修正值(例如,如果SERVO5_FUNCTION为0,则通道5将输出SERVO5_TRIM),除非被任务命令覆盖。
所有这些功能都可以在多个通道上使用。因此,如果您因为某些原因需要3个电梯通道,则可以在3个输出通道上将SERVOn_FUNCTION设置为19。
DISabled
对于正常操作,禁用输出功能将通道的输出值设置为修整值。此例外是使用通道或任务伺服组的MAVLink覆盖。所以在某些方面“残禁用”可以被称为“任务控制”。
当你执行一个飞行任务时,你可以要求一个伺服作为该任务的一部分设置一个值。在这种情况下,您应该将该通道的SERVOn_FUNCTION设置为“已禁用”,以便在任务设置值后,该值不会被另一个输出功能立即更改。
RCPassThru
将通道设置为RCPassThru意味着将从相应的输入通道输出进入板子的值。例如,如果SERVO5_FUNCTION是1(意思是RCPassThru),那么通道5的输出总是等于通道5的输入。
您还可以使用特定的频道映射功能将单个频道映射到任何输出频道。对于RCInputChannel1,它们从值51开始编号。例如,您可以设置SERVO11_FUNCTION = 53,将RC输入通道3映射到输出通道11。
flap
当通道设置为襟翼时,其值来自襟翼输入通道(由FLAP_IN_CHANNEL参数控制)。您可能想要使用此功能而不是RCPassThru的原因是,您可以设置具有不同修剪和范围的多个翻板通道,并且您可能需要利用FLAP_SLEWRATE来限制翻盖移动的速度。
Flap_auto
襟翼自动输出功能的行为就像翻板输出,除了它也可以接受来自TKOFF_FLAP_PCNT和LAND_FLAP_PERCNT参数的自动襟翼输出,以及FLAP_1_SPEED,FLAP_1_PERCNT,FLAP_2_SPEED和FLAP_2_PERCNT参数。
如果同时设置了FLAP_IN_CHANNEL和Flap_auto输出功能,则应用的襟翼量是两者中较大的一个。
Aileron
Aileron输出功能增加了额外的副翼输出,单独的每个通道的微调和范围。当你想单独调整每个副翼,或者如果你的主副翼被设置为高音调音台(使用ELEVON_OUTPUT选项),并且你还想要一些正常的副翼,这是非常有用的。
Mount_pan,Mount_tilt和Mount_roll
这些控制用于控制伺服万向节的输出通道。有关详细信息,请参阅相机云台配置文档。
Mount2_pan,Mount2_tilt和Mount2_roll选项是相同的,但控制第二台相机云台
Camera_trigger
Camera_trigger输出功能用于通过伺服触发摄像机。有关详细信息,请参阅相机万向节文档。
Elevator
Elevator功能增加了额外的电梯输出,具有单独的每通道调整和范围。如果要分别修剪每个电梯,或者如果将主电梯设置为Elevon调音台(使用ELEVON_OUTPUT选项),并且还想要一些正常的电梯,则此功能非常有用。
Rudder
Rudder输出功能增加了额外的方向舵输出,单独的每个通道的微调和范围。单独的方向舵通道对于前轮转向特别有用,其中与正常方向舵通道或多轮平面相比,前轮可能需要颠倒。
GroundSteering
GroundSteering输出功能非常像方向舵输出功能,除了只在飞机低于GROUND_STEER_ALT高度时才起作用。在GROUND_STEER_ALT之上的海拔高度,输出将是通道的修正值。
Flaperon1和Flaperon2
使用flaperon1和flaperon2输出功能,您可以设置襟副翼,副翼是双副翼。对于有副翼但没有襟翼的飞机,它们非常有用。
请注意,襟副翼就像上面所描述的Flap_auto输出的襟翼部分一样。

飙升

Ardupilot中的自主飞行功能允许飞机响应升高的气流(散热),以延长续航时间并以最少的电机(飙升)获得高度。
这张照片显示了使用飞升功能时飞行的不同阶段:
当输入AUTO,FBWB或CRUISE模式时,如果飞机高于SOAR_ALT_MIN高度,油门将被设置为零。飞机开始滑翔。
如果飞机达到SOAR_ALT_MIN高度,油门重新启用,飞机将开始爬升到下一个航点的高度。
当飞机达到SOAR_ALT_CUTOFF高度时,再次将油门设置为零。
如果在滑翔飞行期间,空气估计升高超过SOAR_VSPEED,飞机将进入LOITER模式。它会调整留待的位置,以更好的盘旋。
• LOITER模式在以下条件下退出:
• 已达到SOAR_ALT_MAX。
• 已达到SOAR_ALT_MIN。
• 飞行模式是手动更改。
可实现的爬升率的估计值降到SOAR_VSPEED以下,并且至少持续了SOAR_MIN_THML_S秒。
在LOITER被触发之前,飞行模式将返回到以前的状态,除了以下例外。如果之前的模式是FBWB或CRUISE,并且由于到达SOAR_ALT_MIN而结束,则会触发RTL。

建立飙升

使用你的飞机飞行,理想情况下应该是一个滑翔机类型的飞机,具有良好的阻力比,并配有空速传感器。 有一些步骤可以使飞机飞升:
• 建立一个合适的使命。 调整TECS。 估计飞机拖动。 设置飞升的参数。 任务设置 一个任务的主要要求是,它需要飞机上面SOAR_ALT_CUTOFF,以便滑翔飞行启动。 为此,请将航路点高度设置为高于SOAR_ALT_CUTOFF。
警告
自动驾驶仪可以在相对较长的路途中移动路点,特别是在有风的情况下。 您应该设置一个地理围栏以保持安全距离

调整TECS

TECS需要设置成在滑行时以一致的空速飞行。为此,请将TECS_SPDWEIGHT设置为2.0,将SOAR_ENABLE设置为1,并将SOAR_VSPEED设置为一个很大的数字,例如50.0。这意味着飞机将会滑行但永远不会开始飞行。将SOAR_ALT_CUTOFF设置为您感觉舒适的高度。它应该足够高,以便花费很长的时间来滑行。启动飞机并将其置于自动模式。它应该爬到SOAR_ALT_CUTOFF,然后开始滑行下降。观看遥测图或查看Dataflash日志。飞机是否维持要求的空速?在Dataflash日志中可以看到要求的空速为TECS.spdem,通过遥测可以使用NAV_CONTROLLER_OUTPUT.aspd_error。您可能需要增加PTCH2SRV_IMAX和TECS_INTEG_GAIN才能在滑翔飞行中实现良好的空速跟踪。

估算飞机的阻力

要计算空气的上升速度或下沉速度,自动驾驶仪需要知道飞机在静止空气中的给定空速时的下沉速率。这与飞机的阻力极性有关。估计极地可能有一点涉及。如果您的机身与Parkzone Radian非常相似,则保持SOAR_POLAR_B和SOAR_POLAR_CDO不变是合理的。您应该使用以下公式为您的飞机调整SOAR_POLAR_K:
SOAR_POLAR_K = 16 *重量/面积(以千克为单位的重量,以平方米为单位的面积)。

设置飞行参数

将SOAR_VSPEED参数更改回合理的值。请记住,此参数控制何时将模式更改为LOITER并启动热启动。将SOAR_ALT_MAX更改为您希望自动驾驶停止提升的高度。

高级指南针设置

本文提供有关如何设置和校准罗盘(磁力计)的高级指导。
选择3DR UBlox GPS +指南针模块(推荐)并根据指定的说明进行安装的用户通常可以执行简单的“实时校准”,如“罗盘校准页面”中的指南针校准中所述)。
本主题提供了更完整的罗盘校准概述。 如果罗盘以非标准方向安装或需要额外的校准支持,这将非常有用。
概述
准确设置罗盘是至关重要的,因为它是航向信息的主要来源。 没有准确的航向,在自动驾驶模式(即AUTO,LOITER,PosHold,RTL等)中,车辆将不会以正确的方向移动。 这可能导致盘旋(也称为“马桶效应”)或失控炸机。
ArduPilot目前支持使用三个罗盘。 只有一个罗盘(使用COMPASS_PRIMARY参数指定,默认罗盘#1为主罗盘)用于导航。 虽然许多自动驾驶仪具有内部指南针,但大多数将使用外部指南针。 由于与其他电子设备的分离,采集的数据比内部罗盘提供的数据更可靠。
主要自动驾驶仪板的标准配置如下表所示:

设置配置

AC3.4以上固件下支持板载磁校准,如果配合使用1.3.46以上版本的地面站地面站自动屏蔽现场校准界面,强制执行板载磁校准,根据有关资料及实测显示板载磁校准比现场校准更为可靠,下面介绍一下板载磁校准:

快速配置

地面站支持自动配置最常见的自动驾驶仪板的所有参数。 所以您需要选择与您的自动驾驶仪对应的按钮:
对于Pixhawk和PX4,选择Pixhawk / PX4按钮。 可能会提示您输入特定的ArduPilot版本。
对于APM 2.6,使用外部指南针选择APM。
对于APM 2.5,选择APM(内部指南针)。
如果外部指南针处于非标准方向,则必须手动选择组合框中的方向(从ROTATION_NONE更改)。 外部罗盘COMPASS_ORIENT选项与AHRS_ORIENTATION参数方向选项无关。
大多客户FITNESS选项可选very Relaxed,这样校准比较容易通过。
检查指南针方位
AHRS_ORIENT参数的正确,可以确保您的内置罗盘的方位正确。
通过旋转您的飞机所有的轴,每个罗盘沿相同的方向移动,应该是大致相同的值
• 北半球: - 指南针向上放置Z轴应为正 - 当自动驾驶仪下降时,X轴数值应变大 - 当自动驾驶仪右转时,Y轴数值应变大。
• 南半球:指南针向上放置Z轴应为负 - 当自动驾驶仪下降时,X轴数值应减小 - 当自动驾驶仪右转时,Y轴数值应减小。

常规设置

一般设置适用于连接到自动驾驶仪控制器的所有指南针:
启用罗盘:确定是否启用(任何)罗盘。如果启用,如果启用,飞行控制器将使用主罗盘作为航向数据,否则航向将从GPS估算。启用此复选框对应的设置参数为MAG_ENABLE = 1
主指南针:指定ArduPilot用于导航的罗盘(只有一个罗盘用于导航)。一般默认为第一个罗盘(“Compass1”)。此选择列表对应参数COMPASS_PRIMARY,可设置为从0到2(即是在界面中标记为1到3,罗盘顺序也是从0开始)。
自动获取偏角:根据GPS锁定后的查找表设置偏角。用户可以修改这个偏角;在去掉复选框中的勾(COMPASS_AUTODEC = 0)后,可以在COMPASS_DEC中手动输入偏角。

指南针特定设置

在指南针校准界面可选择任意罗盘组合使用
• 使用这个罗盘。在这个复选框中勾选指南针即使用该指南针,禁用即不勾选,复选框对应的参数为compass _usex参数(x是0-2)。
• 外部安装的罗盘。用于设置是否是一个外部安装的罗盘,外部安装对应参数compass_external=1.如果是内部罗盘方向对应AHRS__ORIENTATION.如果是外部罗盘可能与飞控内部罗盘航向不同。
• 指南针方向:设置外部罗盘安装方向,保存为COMPASS_ORIENTx参数的值。
OFFSETS(COMPASS_OFFSx)和MOT(COMPASS_MOT)参数由实时校准和CompasMot程序填充(参见下面的校准部分)。

CompassMot - 补偿来自电源线,ESC和电机的干扰

对于只有内部罗盘以及电机电源线对罗盘存在严重干扰的飞控,推荐使用。首先需要有电池电流监视器,因为磁力干扰与电流有线性关系,CompassMot才能正常工作。在技术上可以使用油门设置CompassMot,但不建议这样做。
请按照以下说明操作:
• 启用电压电流计
• 把螺旋桨反装,这样即使油门升高时,由于浆产生向下压的压力让飞机飞不起来。
• 固定好飞机,使其不移动
• 打开遥控器
• 连接电池给飞控供电
• 使用usb线连接电脑地面站
如果使用AC3.2:
打开初始设置|可选硬件|指南针/马达Calib界面
按开始按钮

你应该听到你的哔哔两声
将油门缓慢升至50%〜75%(飞机将旋转!)5〜10秒
快速将油门回到零
按完成按钮(AC3.2)完成校准
检查显示的干扰百分比。 如果小于30%,则您的罗盘干扰是可以接受的,您应该看到良好的Loiter,RTL和AUTO性能, 如果高于30%,应该尝试将APM / PX进一步向上远离干扰源,或考虑购买外部指南针(或GPS +罗盘模块)。

指南针错误警报

• Compass Health:在半秒内指南针没有发送至少一个信号。
• Compass Variance:卡尔曼滤波器检测不合格,多个罗盘同轴差值过大(x轴差值大于100,y轴差值大于100,或z轴反向)。
• Compass Not Calibrated:指南针未校准。
• Compass Offsets High:你的一个指南针偏移量超过600, 指示可能磁干扰,检查的来源 干扰和再次校准。

传感器位置偏移补偿

直升机3.5(及更高版本)包括补偿飞机上的传感器位置。 该页面阐明了可以设置哪些参数以及如何设置它们。
在15cm以内,大多数飞行器上的全部传感器(包括imu 、光流)不太可能提供一个补偿使其性能显著提升。

传感器的位置偏移被指定为与IMU(可以假定为飞行控制器板的中间)或飞行器重心的距离(以米为单位)的3个值(X,Y和Z)。
X:IMU和重心的前后距离。 数值为正表示飞行控制器安装在前方,负值表示在后方。
Y:IMU距离和重心的左右距和。 正值为重心在飞行器的右侧,负值表示在左侧。
Y:IMU和重心的距离。 正值较低,负值较高。
实际上距离传感器可以测量飞行控制器的中心距离,除非飞行控制器放置再与飞行器的重心距离很远的地方,在这种情况下,可以指定IMU位置偏移,然后另一个传感器的位置偏移 可以从飞行器的重心指定。

参数的细节

IMU(又名INS):
为了获得最佳效果,飞行控制器(以及因此的IMU)应放置在车辆的重心处,但如果物理上不可能,则通过设置以下参数可以部分补偿偏移。
INS_POS1_X,INS_POS1_Y,INS_POS1_Z第一个IMU的位置和飞行器的重心距离
INS_POS2_X,INS_POS2_Y,INS_POS2_Z第二个IMU的位置和飞行器的重心
距离
INS_POS3_X,INS_POS3_Y,INS_POS3_Z第三个IMU的位置和飞行器的重心距离
补偿只是部分,因为ArduPilot可以根据飞行器的速度和位置估计,但不能校正加速度估计值。例如,如果飞行控制器被放置在飞行器的前方上,并且飞行器突然向后倾斜(即,旋转,使得它的前方向上),而没有偏移补偿,飞行器速度估计将暂时显示车辆在不行驶时爬升。随着位置偏移量的增加,不会显示这个瞬间爬升。 EKF仍然会显示出瞬时的垂直加速度,并且由于我们在高度保持控制器中使用加速度,这仍然可能导致飞行器瞬时减速。
虽然可以为每个IMU设置单独的位置偏移量,但大多数飞行控制器板上的IMU位置之间的差异非常小,以至于所有IMU都可以使用相同的值

全球定位系统:

GPS_POS1_X,GPS_POS1_Y,GPS_POS1_Z gps1的位置和飞机重心的距离
GPS_POS2_X,GPS_POS2_Y,GPS_POS2_Z gps2的位置和飞机重心的距离

Range Finder(声纳或激光雷达):

RNGFND_POS_X,RNGFND_POS_Y,RNGFND_POS_Z第一个RangeFinder和飞行器重心的距离
RNGFND2_POS_X,RNGFND2_POS_Y,RNGFND2_POS_Z第二个RangeFinder和飞行器重心的位置

光流:

FLOW_POS_X,FLOW_POS_Y,FLOW_POS_Z 光流和飞行器重心的距离。

CUAV标准电压电流检测及供电模块


这个页面主要介绍PIXHACK飞控标配的PM模块如何设置和使用
概述:
Pixhack在附件中,会标配一个PM模块,支持10-35V电压输入及60A电流检测
它主要有3个功能:

  1. 提供5.2V电压输出及最大3A电流 给飞控供电
  2. 检测当前电压输出模拟信号给飞控
  3. 检测当前系统电流输出模拟信号给飞控
    因为PIX飞控ADC最大检测电压为3.3,所以最大只能支持60A电流检测
    它的使用很简单,带有芯片的面向你,左边是接电池,右边是接负载(马达 电调)
    6P的信号线插入到飞控的POWER接口

地面站设置:

使用USB或者数传连接到地面站
初始设置>>可选硬件>> 电池检测器
选择 监控器:4;传感器 4;APM版本 4

手动校准:

因为PM模块是模拟传感器器件,都可能会存在一定的差异性
可以校准参数获得比较好的准确性
校准前准备:
1:万用表或者BB响 (校准电压使用)
2:高精度的可控负载源如数字负载(校准电流使用)
如果没有数字负载,只能校准电压(一般玩家都没有,不校准的话,一般误差都在1-3A左右)

校准电压步骤:

1:使用电池供电,以及连接上地面站
2:使用万用表或者BB响测量当前电池电压
3:选择 传感器版本 为0,在测量的电池电压 输入 当前测量出来的电压 填进去框里,随便点一下鼠标或者按一下TAB键,地面站会自动计算一个分压比系数和自动保存写入到飞控
4:校准完成,不校准电流的话, 安培每伏不要去改变,默认是18.0018

相机快门触发

pixhack/pixahwk支持设置相机快门触发,触发方式包括pwm/伺服及电平触发/继电器。
下面介绍一下两种触发方式的设置方法:

pwm(伺服)触发相机快门

这个方式原理是通过飞控给相机快门线(pwm快门触发线)发出pwm信号控制相机快门。
在设置前需要购买一条与相机适用的pwm快门触发线或者使用伺服(舵机)触发。
飞控设置方法如下:
• CAM_TRIGG_TYPE:相机快门触发方式设置(0为伺服,1为继电器),应在全部参数表内设置该参数为0.
• 在初始设置》可选硬件》相机云台》快门》设置快门触发信号输出口(即从飞控那个接口输出pwm触发信号,注意aux1-6即servo9-12)可以根据需要设置舵机限位及快门pwm值
• 将快门/舵机线插入飞控对应的接口即可(如前面设置为servo9则插在飞控aux1/fs1).

继电器(电平)触发

• CAM_TRIGG_TYPE:相机快门触发方式设置(0为伺服,1为继电器),应在全部参数表内设置该参数为1.
• 全部参数表》CAM_FEEDBACK_PIN设置为快门触发电平输出口(即从飞控那个接口输出pwm触发信号,注意aux1-6即servo9-12)》写入参数》切换到配置/调试》扩展调参》通道七选项设置为camera trigger(使用遥控器第7通道控制快门触发)>写入参数。

• 将快门线插入飞控对应的接口即可(如前面设置为54则插在飞控aux5/fs5)
设置触发电平反相:
• relay_default:继电器开启状态
• CAM_relay_ON:继电器开闭状态电平设置
• 如相机快门是低电平触发则设置为继电器开启输出低电平

使用空速传感器


空速传感器是固定翼专用配件,这可以帮助在有风的条件下,缓慢的飞行和自主着陆。
以下部分介绍如何将传感器连接到飞行控制器。 安装空速传感器后,不要忘记校准!

Pixhawk数字空速引脚

Pixhawk可以使用这种数字空速传感器。 将空速传感器连接到Pixhawk的I2C端口(或I2C转接板模块)。
启用数字空速传感器
连接地面站》切换到初始设置部分(Mission Planner |硬件|可选硬件|空速)中选择类型勾选启用,如下图示。


使用模拟空速计


PIXHACK/PIXAHWK支持模拟空速计
pixhack/pixhawk模拟输入引脚
pixhack/pixhawk有2个模拟输入引脚,分别为adc3.3/adc6.6.
cuav 模拟空速计需要连接到pixhack /pixhawk adc 3.3引脚上。

启用模拟空速传感器

连接地面站》切换到初始设置部分(Mission Planner |硬件|可选硬件|空速)中选择pixhawk Analog As port勾选启用。


安装皮托管

将空速传感器放入飞机中时,请皮托管套件。 在EasyStar的情况下,您需要将管子顶部穿过驾驶舱内的泡沫,才可以完全接触到气流(首先在泡沫中钻孔或切割一个小孔)。 确保管子侧面的孔没有被堵塞。 它们应该至少伸出 机头1厘米。 首先将两个出来的管子连接到空速传感器上。 直接从后面出来的管应该进入顶端口,并且以一定角度出来的管应该连接到空速传感器的底端口。

如果您的飞机前方有螺旋桨,必须将皮托管安装在一个机翼上,或者至少在机身下方以避开螺旋桨气流。


校准空速计

手动校准:
将空速计安装后需要进行校准,校准需确保周围没有风,否则会影响校准的效果。
校准操作:连接上mission planner,打开飞行数据界面下的动作栏,点击下方动作选择框选择PREFLIGHT_CALIBRATE点击执行动作(校准过程中切勿动空速计)。

自动校准:为确保安全不建议使用。
本文英文参考:http://ardupilot.org/plane/docs/airspeed.html

降落伞


本主题介绍如何设置手动和自动降落伞释放。
警告
在Copter 3.2中引入了对此功能的支持。 此功能仍然是实验性的,应谨慎使用。
连接到Pixhawk
降落伞版本可以从继电器或触发机制 PWM(即伺服),但因为一个问题与继电器引脚被拉在启动高,我们 建议使用PWM,特别是Pixhawk的任何辅助1到4 别针。

通过mission planner计划

要配置降落伞释放,请先连接Mission Planner,然后打开配置 / 调试>> 全部参数表页面并设置以下参数。
CHUTE_ENABLED =“1”
CHUTE_TYPE =“10”用伺服释放
应将CHUTE_SERVO_ON设置为释放降落伞所需的伺服位置
CHUTE_SERVO_OFF应该是“静止”伺服位置。即 在释放降落伞之前伺服的位置
如果使用AC3.5(或高)设置SERVO9_FUNCTION =“27”。 SERVO9_引用Pixhawk的AUX OUT 1.要使用AUX OUT2而不是将SERVO10_FUNCTION设置为27等。
如果使用AC3.4.6(或更低)设置RC9_FUNCTION =“27”。 RC9_引用Pixhawk的AUX OUT 1.要使用AUX OUT2而不是将RC10_FUNCTION设置为27等。
设置Ch7从Mission Planner的扩展调整页面手动设置降落伞。
降落伞何时会开启?
当“碰撞检查”功能确定飞行器失去姿态控制并开始下落时,电机将停止,降落伞将自动展开。对于碰撞检查器触发降落伞的释放,需要保持2秒都是满足以下条件:
• 电机装备好了
• 飞行器不是“降落”(如果输出油门小于25%,电机达到下限,飞行器旋转超过20度 / 秒,不是飞行员要求降落,这个姿态保持不超过一秒 飞行器会认为是自己降落)
• 飞行器不处于FLIP或ACRO飞行模式
• 飞行器的侧倾角和/或俯仰角相对于目标倾斜角偏差大于20度
• 气压计测量出飞行器没有爬升
• 飞行器高于CHUTE_ALT_MIN高度

发布了6 篇原创文章 · 获赞 1 · 访问量 218

猜你喜欢

转载自blog.csdn.net/u011322358/article/details/104208218
今日推荐