Traducción automática, no revisada por un hablante nativo. El inglés es la referencia.

Páginas de tipos de escenarioEditar en GitHubFuente: docs/kinds/by-kind/aocs.md

aocs (tipo de escenario)

Tipo de escenario del motor v0.40.0, familia Análisis de misión, enlaces y operaciones espaciales. Consultivo: salida de análisis de una herramienta de investigación e ingeniería, no un equipo de navegación homologado ni un servicio de seguridad de la vida humana. Toda etiqueta de aquí es la del motor o la de la matriz de verificación; un tipo de escenario es MODELLED salvo que la matriz diga otra cosa (cómo se gana una etiqueta: la sección Evidence del README).

Qué hace#

Control de actitud de una nave espacial: un giro de apuntamiento inercial de un cuerpo central rígido con tres o más ruedas de reacción equilibradas bajo realimentación MRP (L = -K sigma - P omega), con pares de rueda de norma mínima recortados al límite de cada motor, RK4 con retenedor de orden cero; opcionalmente cerrado sobre un EKF multiplicativo a partir de un giróscopo simulado (paseo aleatorio de ángulo y de velocidad) y un seguidor de estrellas. Informa del tiempo de asentamiento, del error de apuntamiento final y máximo, de la velocidad y el par máximos de las ruedas, de la fracción saturada, de la deriva del momento angular y, con el estimador, de su error de actitud y su NEES. El bucle de estado verdadero es VALIDATED frente a Basilisk 2.9.1; el estimador es MODELLED.

Una ejecución de scenarios/aocs-slew.toml se resume así: aocs: 4 wheels, 600 s slew from 82,06 deg -> settles below 0,1 deg at 481,0 s | final 2.37e-2 deg | peak wheel 1797 rpm | true-state loop

Entradas#

Del esquema (kshana kinds --json):

  • Campos obligatorios: hub_inertia_kg_m2, k_nm, p_nms, wheels, sigma0
  • Campos opcionales: duration_s, dt_s, sample_s, omega0_rad_s, pointing_threshold_deg, estimator

El ejemplo scenarios/aocs-slew.toml establece, entre otros:

Campo Valor Unidad
dt_s 0.1 s
duration_s 600 s
hub_inertia_kg_m2 [[900, 0, 0], [0, 800, 0], [0, 0, 600]] no indicado
k_nm 3.5 N m
kind aocs texto
omega0_rad_s [0.001, -0.01, 0.03] s
p_nms 30 N m s
pointing_threshold_deg 0.1 deg
sample_s 1 s
sigma0 [0.1, 0.2, -0.3] no indicado
wheels[0].axis [0.57735, 0.57735, 0.57735] 1
wheels[0].js_kg_m2 0.08 kg m^2

Ejecútelo#

kshana scenarios/aocs-slew.toml

2 escenarios incluidos usan este tipo de escenario; los demás están en scenarios/.

Qué proporciona#

Los resultados escalares de esa ejecución, con las unidades que indica el motor:

Resultado Valor Unidad
dt_s 0.1 s
duration_s 600 s
estimator sin valor no indicado
evidence.id_rule el identificador estable de la fila de la matriz (el ID texto
evidence.matrix docs/VERIFICATION-MATRIX.md texto
evidence.tier MODELLED texto
final_pointing_error_deg 0.023682 deg
k_nm 3.5 N m
max_pointing_error_deg 82.056509 deg
momentum_drift_nms 1.4672e-12 N m s

Etiqueta del resultado (la del motor): ley de control y dinámica de ruedas VALIDATED (frente a Basilisk 2.9.1 en el bucle de estado verdadero); las entradas de esta ejecución son las propias del escenario — control de actitud con ruedas de reacción bajo realimentación MRP, apuntamiento inercial, sin ruido de sensor, sin fricción

El gráfico que escribe el motor para scenarios/aocs-slew.toml, tipo de escenario aocs

Evidencias#

MODELLED 1 · VALIDATED 1: las filas de la matriz de verificación que nombran este tipo de escenario.

  • VALIDATED Control de actitud con apuntamiento inercial de un cuerpo central rígido con tres o más ruedas de reacción equilibradas: la ley de realimentación MRP L_r = -K sigma_BR - P omega_BR (Schaub y Junkins), con pares de motor de rueda de norma mínima G_s u = -L_r recortados al l Pruebas: aocs_basilisk_oracle.rs.
  • MODELLED El EKF multiplicativo de Lefferts-Markley-Shuster: estados de error de actitud en ejes del cuerpo y de sesgo del giróscopo, propagación con la velocidad del giróscopo menos la estimación del sesgo y el ruido de proceso discreto de Farrenkopf (paseo aleatorio de ángulo y de velocidad), actualización con seguidor de estrellas

Las filas que la propia ejecución puso a prueba, con la referencia independiente que da la matriz a cada una (las fuentes públicas se nombran allí):

  • MODELLED Determinista, con hash de escenario, SBOM + barreras golden multiplataforma. Referencia independiente (ExternalDataset): ajuste a la norma del SBOM al esquema JSON oficial de CycloneDX 1,5 (+ identificadores SPDX válidos) — un estándar externo publicado, cero errores de validación en todo el grafo de dependencias; la parte de determinismo de FoM / reproducibilidad byte a byte sigue siendo una comprobación de autoconsistencia fijada, por lo que la fila sigue siendo MODELLED
  • VALIDATED Control de actitud con apuntamiento inercial de un cuerpo central rígido con tres o más ruedas de reacción equilibradas: la ley de realimentación MRP L_r = -K sigma_BR - P omega_BR (Schaub y J. Referencia independiente (ExternalDataset): Basilisk 2.9.1 (AVSLab, ISC; la ejecución de ruedas de bsk como herramienta aparte, nunca enlazada ni incorporada al repositorio): cuerpo central de la nave, reactionWheelStateEffector (BalancedWheels, límite de par activado), simpleNav, inertial3D, attTrackingError, mrpFeedback (sin término integral) y rwMotorTorque con dt = 0,1 s y su RK4, frente a la implementación propia de Kshana en tres casos (tres ruedas ortogonales; una pirámide de cuatro ruedas; un caso de cuatro ruedas con saturación),
  • MODELLED El EKF multiplicativo de Lefferts-Markley-Shuster: estados de error de actitud en ejes del cuerpo y de sesgo del giróscopo, propagación con la velocidad del giróscopo menos la estimación del sesgo y Farre. Referencia independiente (InternalConsistency): Autoconsistencia interna: el error de estimación normalizado al cuadrado del filtro frente a una verdad simulada con los mismos modelos de sensor sobre semillas de Monte Carlo, y la convergencia de las estimaciones de actitud y de sesgo. LO QUE NO SE HA HECHO: no se ha comparado ningún estimador externo ni datos de vuelo (Basilisk 2.9.1 no tiene módulo MEKF); los modelos de sensor son los de los manuales, sin desalineación, factor de escala ni efectos del campo de visión del seguidor de estrellas.

Limitaciones#

Lo que el propio informe de la ejecución dice que no está modelado o no está validado:

  • El bucle de estado verdadero es VALIDATED frente a Basilisk 2.9.1; el estimador es MODELLED. (catálogo de tipos de escenario (kshana kinds --json))
  • La reproducibilidad y el aseguramiento del software son MODELLED, no están validados: una subafirmación se comprueba externamente, pero la capacidad completa compone piezas modeladas, por lo que la capacidad sigue siendo modelada. (matriz de verificación (docs/MODELLED-RATIONALE.md))
  • La estimación de actitud con EKF multiplicativo a partir de un giróscopo y un seguidor de estrellas es MODELLED, no está validada: se comprueba frente a su propia identidad analítica o de forma cerrada — detecta errores de transcripción y de coeficientes, pero no es una referencia independiente externa. (matriz de verificación (docs/MODELLED-RATIONALE.md))

Véase también#