domingo, diciembre 31, 2017

¡Feliz año 2018!

¡Qué tengáis todos una buena salida y entrada de año!. ¡Qué disfrutéis de esta noche en compañía de los vuestros!.

...
Que es mi barco mi tesoro,
que es mi Dios la libertad;
mi ley, la fuerza y el viento;
mi única patria, la mar.
...

Prueba del generador de gas de un RocketDyne F1

Como parte del proyecto Space Launch System, la NASA decidió probar uno de los elementos del motor RocketDyne F1, el generador de gas, el cual generaba el chorro de gas caliente que movía la turbina encargada de accionar las turbo bombas de combustible y oxidante del motor. En el año 2013, en el NASA's Marshall Center, se arrancó durante 30 segundos un generador de gas, cuyo flujo de gases es capaz de mover la turbina de las bombas de combustible con una potencia aproximada de 55000 caballos en el eje. Una fracción de la potencia que es capaz de desarrollar el motor F1 en su conjunto. Aunque la propuesta de RocketDyne - F1B - no se ha escogido para el Space Launch System - se van a usar versiones modificadas del RS-25 que usaba el Space Shuttle, merece la pena ver el vídeo de la prueba del generador de gas.

Reconozco que poder ver una prueba de un F1 original hubiera sido espectacular, pero según cuenta en How NASA brought the monstrous F-1 “moon rocket” engine back to life, hubiesen tenido que rehacer la estructura de test de estos motores - con un coste prohibitivo , aparte que su cercanía a la ciudad de Huntsville, se hubiese llevado por delante todos los cristales de la zona.

sábado, diciembre 30, 2017

Rocketdyne F1 engine

El Rocketdyne F-1 es un motor cohete que se empezó a desarrollar a finales de los años 50 por RocketDyne y que acabó siendo usado en la primera etapa del Saturno V, S-IC. Con unas dimensiones aproximadas de 5.79 metros de altura y 3.76 metros de diámetro era capaz de producir un 1.5 millones libras (0.680 millones Kg) de empuje al nivel del mar. La primera etapa del Saturno V usaba cinco de estos motores para unas 7.4 millones de libras (3.4 millones de Kg) de empuje al nivel del mar. El motor usa como comocumbustible RP-1 - un queroseno muy refinado - y oxígeno líquido como oxidante a un ritmo de 3945 lb/s de oxígeno líquido y 1738 lb/s de RP-1.

Para poder inyectar tal cantidad de combustible y oxidante en la cámara de combustión con la presión y caudal necesarios, el motor disponía de una turbo bomba: Dos bombas, una para inyectar el oxidante y otra para inyectar el combustible que se movían gracias a una turbina que producía cerca de 55000 caballos de potencia. Un generador de gases producía el chorro de gases calientes que se encargaba de mover la turbina.

El combustible y el oxidante se mezclan en la cámara de combustión, quemándose para producir el chorro de gases a alta velocidad que produce el empuje deseado. Antes de llegar al sistema de inyección, parte del combustible se usa para refrigerar las parades de ésta, retornando después a los inyectores que lo introducen en la cámara. Para poder arrancar el motor se usaba un cartucho de con un líquido inflamable que arde espontáneamente en contacto con el oxígeno en cualquier forma, que entra mezclado en la cámara de combustión cuando aumenta la presión del combustible. La temperatura de funcionamiento es de casi 3300 ºC.

Los gases resultantes de la combustión son expulsados a gran velocidad por la tobera, produciendo el empuje necesario. Para refrigerla, se usa tanto el combustible como parte de los gases de escape del generador de gas que mueve la turbo bomba, ya que está a una temperatura inferior, entorno a los 800 ºC.

Cinco de estos motores se usan en la primera etapa del Saturno V, para conseguir un empuje cercano a los 7.5 millones de libras. Su distribución en la primera etapa es de un motor central - fijo - y cuatro rodeándolo (Quincunx , que permitían cierto movimiento para controlar el cohete. Estos motores funcionaban durante unos 150 segundos, lo suficiente para elevar al Saturno V hasta unos 60 km de ascenso.

En el siguiente vídeo se puede ver la secuencia de encendido de los motores del Saturno V que lanzó al Apollo 11, la primera misión espacial que llevó al ser humano a la Luna.

Referencias

jueves, diciembre 28, 2017

Secuencias de escape de ssh

Cuando se está utilizando el cliente de ssh de manera interactiva y por tanto, su entrada y salida está conectada a un pseudoterminal, ssh es capaz de interpretar ciertos códigos de control para ejecutar algunas acciones. Por defecto el caracter de control que utiliza ssh es ~, que siempre debe ser introducido después de introducir una nueva línea - es decir, pulsar el enter. Tras él se puede introducir alguno de los caracteres de la siguiente tabla

~.Termina la conexión actual
~ˆZPasa a segundo plano el cliente ssh
~#Lista las conexiones
~&Pasa el ssh a segundo plano cuando se está esperando a que las conexiones que han sido tunelizadas por ssh
~?Muestra la ayuda
~BManda un BREAK al sistema remoto
~CAbre la línea de comandos que permite el control de las redirecciones de puertos.
~RRegenera la clave de sesión, si los extremos de la conexión soportan esta opetración
~VIncrementa el nivel de logs del cliente (equivalente a las opciones -v)
~vReduce el nivel de logs del cliente

El caracter que se usa para mandar la secuencia de escape puede cambiarse pasando en la línea de comandos -e o con la opción EscapeChar.

La opción más interesante que permite es ~C, ya que el cliente de ssh mostrará un prompt desde el cual se podrán gestionar los túneles que normalmente se lanzan en la línea de comandos, sin necesidad de salirnos de la conexión. Las opciónes que se permite son -L, -D o -R. De igual manera, se pueden cerrar los túneles si estas opciones se les pone el prefijo K, es decir -KL, -KD y -KR. Estas opciones se comportan igual que los parámetros que se le pasan a la línea de comandos de ssh. Por ejemplo, si se quiere redirigir el puerto local 5000 a la máquina remota 8443, se haría de la siguiente manera:

ssh> -L 5000:localhost:8443
Forwarding port.

El reenvío podría cancelarse con ayuda del comando -KL

ssh> -KL 5000
Canceled forwarding.

Si se está conectado a un sistema remoto, y se necesita mandar un BREAK, por ejemplo porque se está ejecutando un emulador de terminal conecvtado a la línea serie de la máquina remota, se puede usar ~B

lunes, diciembre 25, 2017

viernes, diciembre 08, 2017

Reenviar las claves en el ssh-agent

A pesar de los años que llevo usando openssh, desconocía que existía la posibilidad de reenviar las claves que esta almacenadas en el ssh-agent a un agente remoto. Si se está ejecutando en local, basta con activar la opción ForwardAgent a la hora de conectarse a la máquina remota.

ssh -oForwardAgent=yes remote_host

Cuando se activa esta opción, todas las claves que se tengan cargadas en el ssh-agent local, serán reenviadas a través del canal ssh hacia el agente remoto. Cualquier clave que se añada al agente local con ssh-add, será automáticamente enviada al agente remoto. Eso si, como bien apunta la información sobre esta opción en ssh_config, hay que tener en cuenta que cualquiera que tenga permisos para acceder al socket Unix que utiliza el agente en el sistema remoto, podrá acceder al agente local a través de la conexión d reenvío que se ha reenviado, pudiendo realizar ciertas operaciones sobre el agente.

¿Para qué es útil?. Pues para no tener la necesidad de añadir claves privadas a ordenadores remotos para poder saltar desde ellos a otras máquinas.