class AutoPilot

网站作者3个月前KRPC243

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


相关文章

CelestialBody.position(reference_frame)

在kRPC中,CelestialBody 类的 position 方法用于获取天体在指定参考系中的位置。这个方法返回一个三元素的元组,表示天体在参考系中的 (X, Y, Z) 坐标,以米(m)为单位。...

Control.input_mode

在kRPC中,Control 类的 input_mode 方法用于获取当前的控制输入模式。返回的类型是 ControlInputMode,这是一个枚举值,表示当前的输入模式。功能和使用方法input_...

Control.wheel_steering

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

Vessel.available_rcs_torque

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

Vessel.moment_of_inertia

在kRPC中,Vessel 类的 moment_of_inertia 属性用于获取飞行器的惯性矩。惯性矩是一个描述物体绕某轴旋转时惯性大小的物理量,通常以千克平方米(kg·m²)为单位表示。该属性返回...

Vessel.available_thrust_at(pressure)

在kRPC中,available_thrust_at 方法用于计算飞行器在特定压力下的可用最大推力。这个方法允许你模拟引擎在不同大气压力条件下的性能,以帮助你更精确地规划任务和控制飞行器。功能和使用计...

发表评论    

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