本文来源于http://ardupilot.org/copter/docs/mission-command-list.html#condition-distance
由于对APM/Pixhawk的爱好,翻译成中文供参考,希望多多支持,有不足之处望指出,可以联系QQ:1172730075
地面站航迹规划指令单
本文详细介绍了支持飞机完成自动飞行模式的任务的地面站指令清单。文中的每个指令要么是“导航”或者是“执行”。导航指令(如起飞,航路点)作用飞机的位置,然而执行指令是气作用并不能作用飞机的位置。在一个时间段执行一个任务时最多只有一个“导航”指令和一个“执行”指令被运行。一旦导航命令着手开始运行前执行命令将会有序运行。更多的设置信息请参考http://ardupilot.org/copter/docs/common-planning-a-mission-with-waypoints-and-events.html#common-planning-a-mission-with-waypoints-and-events(怎么加载航路点和事件)。
起飞
飞机将会从目前位置爬升到目标高度(单位:米)。这应该是几乎所有中第一个执行的任务,如果在开始执行操作之前飞机已经处于飞行状态,飞行器将会直接爬升到预定高度。如果飞行器已经达到了预定高度之上时将会忽视这个指令,立即执行下一个指令。
直线航路点
飞机将会沿直线飞行到预定经纬度和高度的位置(单位:米)。
延迟:在执行到下一个指令前飞机会在航路点出等待一定的时间(单位:秒)。
Hit Rad:不支持,意思就是保持到将被限制完成的目标航路点的距离。这个指令不被支持。相反这个WPNAV_RADIUS 参数将被使用(注意“WP半径”在屏幕上得标示,或者通过标准参数清单调整)。
LAT,LON:目标经纬度,如果左为零将会保持在当前位置。
ALT 目标高度在家的位置之上,如果左边为零将会保持当前高度。
曲线航路点
高于3.2版本的都支持曲线航路点,曲线航路点和直线航路点设置的参数都是一样的,但是当执行飞行时飞机是按平滑路径(垂直和水平)而不是直线路径。曲线航路点和直线航路点合一混合使用,如上图。
Loiter-Time(悬停时间)
飞机飞到预定位置等待预定时间(秒),这个任务就相当于悬停模式。
Loiter_Turns(绕圈旋转飞行)
这个任务相当于绕圈模式,飞机将会绕预定经纬度和高度点飞行,可设参数CIRCLE_RADIUS课改变飞行半径。
TURN:飞机旋转一圈绕点飞行圈数。
Dir 1=CW :-1表示逆时针,+1顺时针(飞机绕点飞行的方向,不是旋转方向)。
Loiter_Unlimited
飞机在不确定的位置悬停等待,处于这个任务是将不会继续过去的任务。
Return-To-Launch(返回起飞)
这个任务相当于返航模式,详细描述在返航模式页面中,在返航前飞机首先爬升到预定高度(默认15米),这个家的位置是最近解锁起飞的位置。
Land(着路)
飞机将会着路在当前位置或者提供的经纬度坐标位置,这个任务相当于着路模式。
Delay(延迟)
在预定时间或绝对时间内,飞机将会保持在原地。第一栏中“second”就是延迟时间(s),如果设置-1应该是无效的,“hour UTC”,“minute UTC”and“second UTC” 区域用来设置绝对时间。例如我们可以设在1:30pm起飞,注意小时和分钟设置区域设置为-1是无效的。
Condition-Delay(条件延迟)
这个延迟命令是延迟到下一个“DO”命令开始,在图例子中,Do-Set-Roi指令被延迟以至于5s后飞机开始经过航路点2,注意:这个指令不终止飞机飞行,也应该注意:这个延迟时间执行的条件是下一个航路点到达。因此如果“DO”没有产生条件时间延长也是不会执行的。
Time:是执行下一个“DO”延迟的时间。
Condition-Distance条件距离
飞机在离下一个航路点的预定距离时开始执行“DO”指令,在上图的例子中,指令4被延迟以至于一旦飞机距离航路点5只有50米时开始执行延迟,注意:这个指令不会使飞机停止或在任务期间终止,它仅仅影响“DO”命令。Dist栏就是设置距离(米)。
Condition-Yaw(条件航向)
飞机机头指向预定的方位数。
Deg:当rel/abs为0时表述的是飞机机头朝向,当rel/abs为1时飞机的航向是就是一个变化量。
Dir:为1(顺时针),-1(逆时针),航向被预定时使用这个,预定的航向是操控员从当前的航向上增加或者减少去计算目标航向。无论是航向增加还是减少,飞机都将快速的转向新目标的航向。
Rel/abs:允许设定相对航向“0”和绝对向航“1”
Do-Jump
跳转到预定次数的预定任务之前继续这个任务。在上图例子中,飞机在飞向航路点4之前先要在航路点1和2之间飞行3次。
WP:任务指令跳转
Repeat:跳转的最大次数,1代表始终跳转。
不管这个名字,Do-jump是个“nav”命令而不是“DO”命令,因此带条件的命令像CONDITION_DELAY不会影响DO-jump指令,它一旦满足那样的指令就会执行Do-jump。注意:这里最大的次数是3,第四和第五十无效的命令,不会执行。支持版本3.1.5以上。
Do-Change-Speed
改变飞机水平目标速度(m/s)。
注意:3.1.5和更早版本速度改变仅在导航命令执行完了起作用,从3.2开始改变速度将会立即执行。
Do-Set-Home不支持
如有需要在自动飞行过程中控制相机伺服电机和植保喷洒开关等的可以联系博主。