Control.add_node(ut[, prograde = 0.0][, normal = 0.0][, radial = 0.0])

网站作者10个月前KRPC662

在kRPC中,add_node 方法用于在轨道上添加一个航天节点(Maneuver Node),可以指定其时间和三种推力方向的变化。该方法属于 Control 类,并返回一个 Node 对象,表示创建的航天节点。

功能和使用

方法

  • add_node(ut, prograde=0.0, normal=0.0, radial=0.0):在指定的时间添加一个航天节点。

参数

  • ut:双精度浮点数,表示航天节点的通用时间(Universal Time)。

  • prograde:可选的浮点数,表示顺行(Prograde)方向的推力变化。

  • normal:可选的浮点数,表示法线(Normal)方向的推力变化。

  • radial:可选的浮点数,表示径向(Radial)方向的推力变化。

返回值

  • Node:一个 Node 对象,表示创建的航天节点。




import krpc

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

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

# 获取控制对象
control = vessel.control

# 获取当前时间
current_time = space_center.ut

# 在100秒后添加一个航天节点,顺行方向推力为100m/s
node = control.add_node(current_time + 100, prograde=100.0)
print(f"Added node at UT: {node.ut}, prograde: {node.prograde}")

示例解释

  1. 连接到kRPC服务器:使用 krpc.connect() 函数连接到 kRPC 服务器。

  2. 获取当前活跃飞行器:通过 space_center.active_vessel 获取当前活跃的飞行器对象。

  3. 获取控制对象:通过 vessel.control 获取控制对象。

  4. 获取当前时间:通过 space_center.ut 获取当前的通用时间。

  5. 添加航天节点:调用 control.add_node 方法,在当前时间的100秒后添加一个航天节点,并设置顺行方向的推力变化为100m/s。

  6. 打印节点信息:打印新添加的航天节点的时间和顺行方向的推力变化。

应用场景

  • 轨道调整:在飞行过程中,通过编程方式添加航天节点,以实现轨道调整和变轨。

  • 自动化任务:在自动化脚本中,根据任务需求添加航天节点,以确保飞行器按照预期进行操作。

  • 调试和测试:在飞行器设计和测试过程中,使用航天节点接口进行精确的控制和调试。

相关方法和属性

  • Control 类的其他方法和属性:如 throttlepitchyawrollsasrcsgearlightsbrakes 等,用于控制飞行器的各个方面。

  • Node:获取和设置航天节点的各种参数,如时间、推力变化等。


相关文章

CelestialBody.velocity(reference_frame)

在kRPC中,CelestialBody 类的 velocity 方法用于获取天体在指定参考系中的速度。这个方法返回一个三元素的元组,表示天体在参考系中的 (X, Y, Z) 速度分量,以米每秒(m/...

Control.forward

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

CelestialBody.latitude_at_position(position, reference_frame)

在kRPC中,CelestialBody 类的 latitude_at_position 方法用于获取天体在指定位置的纬度。这个方法返回一个浮点数,表示指定位置的纬度,以度为单位。参数position...

Orbit.relative_inclination(target)

在kRPC中,Orbit 类的 relative_inclination 方法用于计算当前飞行器轨道与目标轨道之间的相对倾角。这个方法返回一个浮点数,表示两个轨道平面之间的倾角,以弧度为单位。功能和使...

Orbit.speed

在kRPC中,Flight 类的 speed 属性用于获取飞行器的当前速度。这个属性返回一个浮点数,表示飞行器的速度,以米每秒(m/s)为单位。功能和使用属性speed:飞行器的当前速度,以米每秒(m...

Orbit.inclination

在kRPC中,Orbit 类的 inclination 属性用于获取飞行器轨道的倾角。轨道倾角是轨道平面与参考平面(通常是赤道平面)之间的角度。这个属性返回一个浮点数,表示轨道的倾角,以弧度为单位。功...

发表评论    

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