Tras la separación
Cuando el muelle de un desplegador expulsa un CubeSat o un PocketQube, la fuerza nunca pasa exactamente por el centro de masas y el rozamiento difiere entre raíles, así que la nave sale con cierta velocidad angular, normalmente de unos pocos a unas decenas de grados por segundo. Para los PocketQubes se han propuesto como criterios de diseño velocidades iniciales de hasta 180°/s y un objetivo por debajo de 5°/s[1]; POQUITO frenó su rotación desde 20°/s en una órbita con magnetopares impresos en sus placas[2]. Ninguna tarea de apuntamiento, desde la adquisición del Sol hasta las antenas y las cámaras, puede empezar antes de que desaparezca el giro.
Par magnético
Un magnetopar () genera un dipolo magnético a partir de la corriente de su bobina. En el campo geomagnético , el dipolo sufre un par[3]
A 500 km el campo es de unos 25 µT sobre el ecuador y de unos 50 µT sobre los polos. Que el par sea siempre perpendicular a es la limitación básica del control magnético: en cada instante, la componente a lo largo del campo no puede controlarse. El eje que falta se recupera con el tiempo, a medida que la dirección del campo gira a lo largo de la órbita.
La ley B-dot
Mientras la nave gira deprisa, la variación del campo medido en los ejes del cuerpo procede sobre todo de su propia rotación:
La ley ordena un dipolo opuesto a esa derivada:
Por qué funciona se ve al sustituir el dipolo en el par y calcular la variación de la energía cinética de rotación. Con :
donde es la componente de la velocidad angular perpendicular al campo. La energía nunca aumenta; solo deja de disminuir mientras la velocidad es paralela al campo, algo que el movimiento orbital no permite que dure. Avanzini y Giulietti analizaron este comportamiento en detalle y mostraron cómo elegir la ganancia a partir de la velocidad orbital y del menor momento de inercia[4].
Por qué la ley no llega a cero
A medida que la velocidad disminuye, la aproximación deja de valer: la propia rotación del campo en el sistema inercial ya no es despreciable. En una órbita polar, la dirección de un campo dipolar da unas dos vueltas por órbita. B-dot intenta entonces que el cuerpo siga al campo, y la velocidad se estabiliza cerca del doble de la velocidad orbital .1A 500 km, °/s, de modo que °/s. Los 0,18–0,19°/s que se observan en la simulación tras tres órbitas son del mismo orden.
Planteamiento de la simulación
Comparamos los dos extremos del intervalo: un 1U de 1,33 kg con 0,05 A·m² por eje y un 1P de 0,25 kg cuyas bobinas en las placas alcanzan 0,005 A·m². Ambos parten de (6, −5, 5,5)°/s, unos 9,6°/s.
- Órbita: circular de 500 km, inclinación de 97,4° (heliosíncrona).
- Modelo de campo: dipolo inclinado 9,4° que gira con la Tierra; T.
- Inercia: aproximación de cubo homogéneo ; unos 2,2 × 10⁻³ kg·m² para el 1U y 1,0 × 10⁻⁴ kg·m² para el 1P.
- Control: muestreo a 1 Hz, por diferencias finitas, saturación por eje.
- Integración: cinemática de cuaterniones y ecuaciones de Euler, Runge–Kutta de cuarto orden, paso de 0,5 s.
- Se desprecian: los pares de gradiente de gravedad, aerodinámico y de , y el ruido de los sensores.
Resultados
- CubeSat 1U, bobinas de 0,05 A·m²
- PocketQube 1P, bobinas de 0,005 A·m²
Mostrar los datos como tabla
| Tiempo (min) | CubeSat 1U, bobinas de 0,05 A·m² | PocketQube 1P, bobinas de 0,005 A·m² |
|---|---|---|
| 0 | 9,55 | 9,55 |
| 5 | 1,10 | 2,19 |
| 10 | 0,69 | 2,05 |
| 30 | 0,60 | 1,90 |
| 60 | 0,20 | 1,14 |
| 90 | 0,20 | 0,96 |
| 120 | 0,10 | 0,63 |
| 180 | 0,13 | 0,36 |
| 240 | 0,17 | 0,20 |
| Escenario | Inercia (kg·m²) | Dipolo máximo (A·m²) | Ganancia k (A·m²·s/T) | Tiempo hasta |ω| < 1°/s | |ω| tras tres órbitas |
|---|---|---|---|---|---|
| CubeSat 1U, bobinas de 0,05 A·m² | 2,30 × 10⁻³ | 0,05 | 30.000 | 5,4 min | 0,18 °/s |
| PocketQube 1P, bobinas de 0,005 A·m² | 1,05 × 10⁻⁴ | 0,005 | 3000 | 87,8 min | 0,19 °/s |
Como referencia, la velocidad orbital es n = 0,0634 °/s y 2n = 0,127 °/s.
En el 1U, la caída inicial pronunciada es la fase en que el dipolo está saturado: el par se mantiene en su máximo y la velocidad baja de 1°/s en pocos minutos. En el 1P la relación entre par e inercia es parecida, pero el dipolo pequeño de las bobinas en las placas y la ganancia elegida para ellas alargan el mismo umbral hasta alrededor de una órbita. El rizado de ambas curvas se debe a la dirección cambiante del campo respecto al cuerpo: el amortiguamiento se ralentiza cada vez que la velocidad queda paralela al campo.
Por qué el tamaño importa menos de lo esperado
El momento principal de inercia de un cubo homogéneo, , escala con la quinta potencia del tamaño, de modo que un PocketQube tiene solo el 3–5 % de la inercia de un 1U[5]. El dipolo de una bobina de la misma tecnología escala con el área que encierra por el número de espiras, así que se reduce más despacio que la inercia. Por eso un 1P con un dipolo diez veces menor frena su rotación igualmente en una órbita.
Una implementación discreta
En el software de vuelo, B-dot es un bucle de pocas líneas. Medición y actuación se alternan, porque los magnetopares en funcionamiento perturban el magnetómetro.
#include <math.h>
#define DT_S 1.0f /* periodo de control [s] */
#define K_BDOT 3.0e4f /* ganancia [A·m²·s/T] */
#define M_MAX 0.05f /* dipolo máximo por eje [A·m²] */
static float b_prev[3];
static int has_prev = 0;
/* b: lectura del magnetómetro en ejes del cuerpo [T]
m: dipolo ordenado a los magnetopares [A·m²] */
void bdot_step(const float b[3], float m[3])
{
for (int i = 0; i < 3; i++) {
float bdot = has_prev ? (b[i] - b_prev[i]) / DT_S : 0.0f;
m[i] = fmaxf(-M_MAX, fminf(M_MAX, -K_BDOT * bdot));
b_prev[i] = b[i];
}
has_prev = 1;
}La frecuencia de muestreo debe adecuarse a la velocidad inicial. A 180°/s, el campo da media vuelta por segundo en los ejes del cuerpo, y una diferencia finita a 1 Hz pierde todo sentido. Los PocketQubes que esperan velocidades iniciales altas necesitan un bucle de 5–10 Hz, con las bobinas apagadas durante cada ventana de medida.
Modos de actitud
stateDiagram-v2 state "Espera" as Wait state "Frenado de la rotación (B-dot)" as Detumble state "Adquisición del Sol" as Sun state "Nominal" as Nominal state "Modo seguro" as Safe [*] --> Wait : separación Wait --> Detumble : temporizador vencido Detumble --> Sun : |ω| ≤ 1°/s Sun --> Detumble : |ω| ≥ 3°/s Sun --> Nominal : sensor solar enganchado Nominal --> Safe : batería baja Safe --> Detumble : batería recuperada
Umbrales distintos de salida y de reentrada en el frenado de la rotación, aquí 1 y 3°/s, dan una histéresis que evita que los modos oscilen.
Reglas de diseño
- Dimensione juntos el dipolo y la inercia. El tiempo de frenado lo fija la relación entre el par máximo y el momento angular; las bobinas en las placas de un 1P dan tiempos del orden de una órbita, no de horas.
- La ganancia fija la fase de saturación. Una ganancia demasiado grande mantiene las bobinas saturadas y degrada la ley a un control todo o nada; una demasiado pequeña desperdicia el par disponible.
- Coloque y calibre el magnetómetro con cuidado. Las corrientes de la batería y las bobinas añaden un sesgo constante a la lectura. La derivación elimina la mayor parte, pero sigue afectando a la saturación y al ruido. Cerca de un imán permanente, como en los diseños con estabilización pasiva, el sesgo puede superar el rango del sensor[6].
- El frenado de la rotación es una primera fase. El apuntamiento fino necesita sensores solares, giróscopos y, quizá, bajo un segundo controlador.