生成 Walker 星座参数。用户需要根据种子轨道与星座构型参数快速生成 Walker 星座时使用。
注意walker星座的常用三参数表示法:T/P/F
注意和接口参数中NumPlanes,NumSatsPerPlane的区别:
POST /OrbitWizard/Walker| 参数名 | 类型 | 必须 | 说明 |
|---|---|---|---|
SeedKepler | object | 是 | 种子轨道开普勒根数(见下表) |
WalkerType | string | 是 | 星座构型类型: / / |
DeltaStarCustomNumPlanes | integer | 是 | 轨道面数量 |
NumSatsPerPlane | integer | 是 | 每轨道面卫星数 |
InterPlanePhaseIncrement | integer | 否 | 相位因子 F (Delta/Star 有效, 0 ≤ F < NumPlanes) |
InterPlaneTrueAnomalyIncrement | number | 否 | 相邻轨道面真近点角增量 deg (Custom 有效) |
RAANIncrement | number | 否 | 相邻轨道面 RAAN 增量 deg (Custom 有效) |
| 类型 | RAAN 分布 | 相位关系 | 适用场景 |
|---|---|---|---|
Delta | 均匀分布在 0°~360° | 由 F 因子决定相邻面相位差 | 全球覆盖星座(如 GPS、Starlink) |
Star | 均匀分布在 0°~180° | 由 F 因子决定相邻面相位差 | 极轨覆盖星座(如铱星) |
Custom | 由 RAANIncrement 自定义 | 由 InterPlaneTrueAnomalyIncrement 自定义 | 非均匀构型 |
| 字段名 | 类型 | 说明 |
|---|---|---|
SemimajorAxis | number (double) | 轨道半长轴 (m) |
Eccentricity | number (double) | 轨道偏心率 |
Inclination | number (double) | 轨道倾角 (deg) |
ArgumentOfPeriapsis | number (double) | 近地点幅角 (deg) |
RightAscensionOfAscendingNode | number (double) | 升交点赤经 (deg) |
TrueAnomaly | number (double) | 真近点角 (deg) |
GravitationalParameter | number (double) | 引力常数 (m³/s²), 可省略使用默认地球值 |
| 字段名 | 类型 | 说明 |
|---|---|---|
IsSuccess | boolean | 结果(True:成功;False:失败) |
Message | string | 失败原因或提示信息 |
WalkerSatellites | array | 二维数组, [i][j] 为第 i 个轨道面第 j 颗卫星的开普勒根数 |
SeedKepler 六根数是否完整(半长轴单位 m, 角度单位 deg)WalkerType 是否为 Delta/Star/Custom 之一Delta/Star 模式需要 InterPlanePhaseIncrement(默认 0)Custom 模式需要 InterPlaneTrueAnomalyIncrement 和 RAANIncrement{BASE_URL}/OrbitWizard/Walker 发送 JSONIsSuccessexport BASE_URL=http://astrox.cn:8765
curl "${BASE_URL}/OrbitWizard/Walker" \
--request POST \
--header 'Content-Type: application/json' \
--data-binary "@skills/orbitwizard-walker/fixtures/orbitwizard-walker-min.json"
curl "${BASE_URL}/OrbitWizard/Walker" \
--request POST \
--header 'Content-Type: application/json' \
--data '{
"SeedKepler": {
"SemimajorAxis": 7158137,
"Eccentricity": 0.001,
"Inclination": 86.4,
"ArgumentOfPeriapsis": 0,
"RightAscensionOfAscendingNode": 0,
"TrueAnomaly": 0
},
"WalkerType": "Star",
"NumPlanes": 6,
"NumSatsPerPlane": 11,
"InterPlanePhaseIncrement": 0
}'
curl "${BASE_URL}/OrbitWizard/Walker" \
--request POST \
--header 'Content-Type: application/json' \
--data '{
"SeedKepler": {
"SemimajorAxis": 6878136.3,
"Eccentricity": 0,
"Inclination": 53,
"ArgumentOfPeriapsis": 0,
"RightAscensionOfAscendingNode": 0,
"TrueAnomaly": 0
},
"WalkerType": "Custom",
"NumPlanes": 3,
"NumSatsPerPlane": 4,
"InterPlaneTrueAnomalyIncrement": 30.0,
"RAANIncrement": 120.0
}'