Anatomia de um “Data Center Espacial”. Servidor altíssimo: olhe sob o capô

Anatomia de um “Data Center Espacial”. Servidor altíssimo: olhe sob o capô

Amanhã enviaremos nosso servidor para a estratosfera. Durante o voo, o balão estratosférico distribuirá a Internet, filmará e transmitirá dados de vídeo e telemetria para o solo. Escrevemos diversas vezes que falaríamos sobre a parte técnica do nosso projeto “Space Data Center” (anteriormente respondia pelo nome “Servidor nas nuvens 2.0"). Prometemos - nós entregamos! Abaixo do corte há um punhado de peças de hardware e código.

Servidor web

Mesmo no projeto anterior “Servidor nas Nuvens”, quando subimos em um balão completo com uma tripulação de duas pessoas, levar conosco um servidor completo com conjunto de bateria não foi, digamos, racional. E agora estamos falando de um pequeno balão estratosférico, que terá que subir 30 km, e não 1. Portanto, escolhemos o mesmo Raspberry Pi como servidor web. Este microcomputador irá gerar uma página HTML e exibi-la em um display separado.

Comunicações por satélite

Além do Raspberry, voarão a bordo modems das redes de comunicação por satélite Iridium e Globalstar. Como vocês lembram, planejamos adicionar um modem para a rede doméstica Gonets à empresa deles, mas não tivemos tempo de recebê-lo com antecedência, por isso o enviaremos no próximo vôo. Através de modems satélite, o servidor web receberá suas mensagens, que poderão ser enviadas para página do projeto. Essas mensagens serão transmitidas ao Raspberry Pi, que as colocará na fila e as exibirá em uma página HTML.

Ponto importante: o limite de comprimento de uma mensagem de texto em russo é de 58 caracteres (incluindo espaços). Se a mensagem for mais longa, ela será cortada durante a transmissão. Além disso, todos os caracteres especiais serão cortados do texto, por exemplo, /+$%&;''""<>n e similar.

Como o Raspberry Pi possui apenas uma porta UART, conectaremos os modems satélites através de um hub intermediário, que coletará os dados dos modems e os enviará ao Raspberry Pi.

Modem de rádio

O servidor web não apenas exibirá todas as mensagens recebidas de você no display, mas também as transmitirá para a Terra por meio de um modem de rádio LoRa. Queremos então testar a ideia de distribuir a Internet a partir da estratosfera (uma homenagem ao projeto Google Loon). É claro que nosso balão estratosférico não é um repetidor de comunicação completo, mas mesmo que suas capacidades sejam suficientes para uma transmissão estável de dados, sem grandes perdas de informações, então os sistemas especializados certamente darão conta da distribuição da Internet do pré-espaço.

Telemetria

Além disso, planejamos exibir dados de telemetria na mesma página HTML. O Raspberry Pi irá retirá-los de um controlador de vôo separado.

Anatomia de um “Data Center Espacial”. Servidor altíssimo: olhe sob o capô

Ele interroga vários sensores que podem ser colocados dentro e fora da caixa hermética de hardware, coleta as informações em uma pilha, penteia-as e entrega-as de forma conveniente a quem as solicita. No nosso caso, será solicitado Raspberry Pi. Registraremos pressão, altitude, coordenadas GPS, velocidade vertical e horizontal e temperatura.

Os dados do controlador de vôo são transmitidos em longas filas, que são então, utilizando este código:

$str = 'N:647;T:10m55s;MP.Stage:0;MP.Alt:49;MP.VSpeed:0.0;MP.AvgVSpeed:0.0;Baro.Press:1007.06;Baro.Alt:50;Baro.Temp:35.93;GPS.Coord:N56d43m23s,E37d55m68s;GPS.Home:N56d43m23s,E37d55m68s;Dst:5;GPS.HSpeed:0;GPS.Course:357;GPS.Time:11h17m40s;GPS.Date:30.07.2018;DS.Temp:[fc]=33.56;Volt:5.19,0.00,0.00,0.00,0.00,0.00,0.00,0.00';
parse_str(strtr($str, [
	
':' => '=',
	
';' => '&'
]), $result);
print_r($result);

transforme-se em um array em um formato conveniente para exibição:

Array 
(
       [N] => 647
       [Т] => 10m55з
       [MP_Stage] => 0
       [MP_Alt] => 49
       [MP_VSpeed) => 0.0
       [MP_AvgVSpeed] => 0.0
       [Baro Рrеss] => 1007.06
       [Baro_Alt] => 50
       [Baro_Temp] => 35.93
       [GPS_Coord] => N56d43m23s,E37d55m68s 
       [GPS_Home) => N56d43m23s,E37d55m68s 
       [Dst] => 5
       [GPS_HSpeed] => 0
       [GPS_Course] => 357
       [GPS_Time] => 11h17m40s
       [GPS_Date] => 30.07.2018
       [DS_Temp] => [fс] ЗЗ.56
       [Volt] => 5.19, 0.00,0.00,0.00,0.00,0.00,0.00,0.00 
)

Também transmitiremos dados de telemetria para a Terra junto com suas mensagens. Para isso, implantaremos uma estação receptora no local de lançamento.

Tela e câmera

Para que você possa ter certeza de que o servidor está realmente recebendo suas mensagens via comunicação via satélite, e que realmente voou para a estratosfera e não está em nosso escritório, decidimos exibir todas as mensagens com telemetria em um display que será capturado por uma GoPro. Houve pouco tempo para preparar o projeto (como pode haver muito?!), então não nos preocupamos com Aliexpress e um ferro de soldar, mas pegamos um aparelho pronto. É mais que suficiente para as nossas necessidades. Conectaremos o display ao Raspberry via HDMI.

Também planejamos transmitir vídeo da GoPro por meio de um canal de rádio separado, mas ainda não se sabe como isso funcionará - talvez nuvens baixas reduzam bastante o alcance da comunicação. Mas em qualquer caso, depois de encontrarmos o balão estratosférico pousado, postaremos um vídeo da câmera e você poderá ver por si mesmo quais mensagens nosso “data center pré-espacial” recebeu e a que altitude ele subiu - a telemetria será exibida na mesma página HTML, além disso, um pedaço do horizonte ficará visível.

Comida

Toda a beleza descrita acima será alimentada por um conjunto de baterias de lítio montadas de acordo com o circuito 3S4B - três em série, quatro em paralelo. A capacidade total é de cerca de 14 Ah na tensão de 12 V. Pelas nossas estimativas, isso deve ser suficiente, mas após a montagem final, é claro, mediremos o consumo real e, se necessário, adicionaremos mais baterias.

Adicione a tudo isso balizas GPS, que usaremos para procurar o balão estratosférico pousado. E a caixa hermética será a “casa” do servidor e demais dispositivos.

Anatomia de um “Data Center Espacial”. Servidor altíssimo: olhe sob o capô

Protegerá equipamentos delicados contra mudanças de temperatura e pressão. Ao mesmo tempo, também reduzirá a dose de radiação, embora isso não desempenhe nenhum papel para o nosso projeto, o servidor voará na estratosfera por um tempo muito curto e o fundo lá não será tão alto quanto na ISS.

Além de enviar mensagens para site do projeto, você pode participar de uma competição e adivinhar onde a sonda irá pousar. O prêmio principal é uma viagem a Baikonur para o lançamento da espaçonave tripulada Soyuz-MS-13.

Anatomia de um “Data Center Espacial”. Servidor altíssimo: olhe sob o capô

Fonte: habr.com

Adicionar um comentário