class AutoPilot

网站作者2年前KRPC2623

AutoPilot 类用于控制飞行器的自动驾驶系统。以下是 AutoPilot 类的主要属性和方法:

属性

  • sas:布尔值,控制 SAS(Stability Assist System)的开关状态。

  • sas_modeSASMode,设置 SAS 模式。

  • target_pitch:浮点值,目标俯仰角度。

  • target_heading:浮点值,目标航向角度。

  • target_roll:浮点值,目标滚转角度。

  • engaged:布尔值,自动驾驶是否处于启用状态。

  • error:浮点值,自动驾驶器的当前误差。

  • time_to_go:浮点值,自动驾驶器完成机动所需的时间。

方法

  • engage():启用自动驾驶系统。

  • disengage():禁用自动驾驶系统。

  • hold():保持当前姿态。

  • set_pid_parameters(proportional, integral, derivative):设置自动驾驶 PID 控制器的参数。

    • proportional:浮点值,比例参数。

    • integral:浮点值,积分参数。

    • derivative:浮点值,微分参数。

import krpc

# 连接到kRPC服务器
conn = krpc.connect(name='AutoPilot Example')
space_center = conn.space_center

# 获取当前活跃飞行器
vessel = space_center.active_vessel

# 获取自动驾驶对象
autopilot = vessel.auto_pilot

# 设置目标姿态
autopilot.target_pitch = 90
autopilot.target_heading = 90
autopilot.target_roll = 0

# 启用自动驾驶
autopilot.engage()

# 设置 SAS 模式为顺行方向
autopilot.sas = True
autopilot.sas_mode = space_center.SASMode.prograde

# 设置 PID 参数
autopilot.set_pid_parameters(1.0, 0.1, 0.1)

# 打印当前误差和时间到达
print(f"Error: {autopilot.error}")
print(f"Time to go: {autopilot.time_to_go}")

# 禁用自动驾驶
autopilot.disengage()


相关文章

Control.roll

在kRPC中,Control 类提供了 roll 属性,用于获取或设置飞行器的滚转值。这个属性返回一个浮点值,表示当前的滚转控制输入。功能和使用属性roll:返回一个浮点值,表示飞行器的滚转控制输入。...

Orbit.radius_at_true_anomaly(true_anomaly)

在kRPC中,Orbit 类的 radius_at_true_anomaly 方法用于计算飞行器在给定真近点角(true anomaly)下的轨道半径。这个方法返回一个浮点数,表示飞行器在指定真近点角...

class SpeedMode

SpeedMode 是一个表示在导航球(navball)中显示的速度模式的枚举类。以下是 SpeedMode 的各个枚举值及其含义:SpeedModeorbit:相对于飞行器的轨道显示速度。surfa...

krpc transfer_crew

在kRPC中,transfer_crew 方法用于在两个飞行器的船员舱之间转移船员。这个功能在需要更换船员位置或将船员从一个飞行器转移到另一个飞行器时非常有用。功能和使用转移船员:transfer_c...

CelestialBody.biome_at(latitude, longitude)

在kRPC中,CelestialBody 类的 biome_at 方法用于获取天体在指定纬度和经度的生物群落名称。这个方法返回一个字符串,表示该位置的生物群落名称。参数latitude:浮点数,表示纬...

krpc target_vessel

在kRPC中,target_vessel 用于管理和操作Kerbal Space Program (KSP)中的目标飞行器。目标飞行器是指当前选定为交互目标的飞行器,这在进行对接操作、编队飞行、或者其...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。