class AutoPilot

网站作者2年前KRPC2437

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()


相关文章

Orbit.time_to_soi_change

在kRPC中,Orbit 类的 time_to_soi_change 属性用于获取飞行器到达下一个引力影响区域(SOI,Sphere of Influence)变化所需的时间。这个属性返回一个浮点数,...

Control.brakes

在kRPC中,Control 类提供了 brakes 属性用于获取或设置飞行器的刹车状态。这个属性返回一个布尔值,表示刹车是否开启。功能和使用属性brakes:返回一个布尔值,表示飞行器的刹车状态。i...

Flight.total_air_temperature

在kRPC中,Flight 类的 total_air_temperature 属性用于获取飞行器当前所处位置的总空气温度。总空气温度是指飞行器运动中的静止气体温度(静温)和由于飞行器速度引起的动能转化...

Flight.normal

在kRPC中,Flight 类的 normal 属性用于获取飞行器相对于轨道参考系的轨道法线向量。这个属性返回一个三元素的元组,表示飞行器在轨道参考系中的轨道法线向量,以 (X, Y, Z) 的形式给...

Orbit.apoapsis_altitude

在kRPC中,Orbit 类的 apoapsis_altitude 属性用于获取飞行器轨道的远地点相对于参考天体表面的高度。这个属性返回一个浮点数,表示飞行器的远地点高度,以米为单位。功能和使用属性a...

CelestialBody.biome_at(latitude, longitude)

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

发表评论    

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