class AutoPilot

网站作者11个月前KRPC1170

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


相关文章

krpc transform_velocity

在kRPC中,transform_velocity 方法用于在不同的参考系之间转换速度向量。这个方法在需要在不同参考系中进行速度计算的任务中非常有用,例如从飞行器的参考系转换到地面参考系。功能和使用转...

Control.reaction_wheels

在kRPC中,Control 类没有提供直接的 reaction_wheels 属性或方法来获取或设置反应轮(Reaction Wheels)的状态。不过,您可以通过访问飞行器的部分(Parts)来控...

Flight.lift

在kRPC中,Flight 类的 lift 属性用于获取飞行器当前所承受的升力。升力是空气动力学力的一部分,作用于飞行器,通常用来抵抗重力。这个属性返回一个三元素的元组,表示飞行器在指定参考系中的升力...

CelestialBody.density_at(altitude)

在kRPC中,CelestialBody 类的 density_at 方法用于获取天体在指定高度的大气密度。这个方法返回一个浮点数,表示在该高度的大气密度,以千克每立方米(kg/m³)为单位。参数al...

Vessel.available_rcs_torque

在kRPC中,available_rcs_torque 属性用于获取飞行器当前所有RCS(反作用控制系统)能够提供的可用转矩。RCS是用于姿态控制和小规模推进的系统,常用于在空间中的精细姿态调整。该属...

Vessel.met

在kRPC中,met 是一个用于获取飞行器任务执行时间(Mission Elapsed Time, MET)的属性。MET 是从飞行器任务开始(例如发射)到当前时刻所经过的时间,以秒为单位。这在任务控...

发表评论    

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