NASA perde milhões de dólares por erros de unidade

nasa_logo

Geralmente um dos primeiros tópicos que temos contato quando estudamos ciências é unidades e medidas. Conhecemos, então, algumas unidades que não são muito comuns aqui no Brasil como pés e libras. Mas aprendemos que há fatores de conversão entre essas unidades e as que estamos acostumados e geralmente esse tópico é tido como simples e até mesmo entediante.

Nesse artigo veremos como a NASA já perdeu projetos de milhões de dólares por simples erros de conversão de unidades. Também veremos qual sistema de unidades que levou o homem à Lua no Programa Apollo analisando o código fonte do computador de bordo.

Caso prefira ver em vídeo, clique no player abaixo. O artigo completo se encontra após o vídeo.

Mars Climate Orbiter (MCO)

Em 11 de dezembro de 1998, a NASA lançava o Mars Climate Orbiter (MCO), uma sonda espacial de 638 kg cujo objetivo era estudar o clima marciano. No entanto, em 23 de setembro de 1999, quando a sonda fazia a manobra de inserção na órbita de Marte, a comunicação com a sonda foi perdida.

nasa_mco
Concepção artística da Mars Climate Orbiter. Fonte

Um dos relatórios produzidos posteriormente para entender os motivos do acidente determinou que a causa principal foi o uso de sistemas de unidades conflitantes. Os softwares utilizados pela equipe de controle na Terra forneciam dados no sistema de unidades usuais do Estados Unidos (similar ao sistema imperial) enquanto que a sonda utilizava unidades do Sistema Internacional de Unidades. Como resultado, instruções erradas foram enviadas para a sonda, fazendo-a se aproximar demais do planeta. Acredita-se que ela foi destruída no atrito de entrada da atmosfera ou que foi perdida no espaço caso tenha conseguido sair da atmosfera. Custo da missão: $ 327,6 milhões de dólares.

nasa_mco_comparacao_orbitas
Comparação entre a órbita prevista e a órbita que efetivamente foi feita. Fonte

De acordo com o relatório, o sistema em terra que calculava o impulso da sonda produzia os resultados em libra-força segundo (lbf s) enquanto que o sistema de cálculo de trajetória esperava o resultado em Newton segundo (N s). A conversão é de aproximadamente 4,45 conforme mostra a imagem abaixo utilizando a calculadora SpeedCrunch, sobre a qual já escrevemos aqui.

nasa_speedcrunch
Fator de conversão de libra-força (pound force em inglês) para Newton, utilizando a calculadora SpeedCrunch

A NASA havia contratado a empresa Lockheed para fazer o sistema de software da missão e nas especificações solicitadas estava que o sistema de unidades de todo o sistema deveria ser o Sistema Internacional de Unidades. Mas a NASA optou por não culpar a Lockheed pelo acidente, afirmando que falhou em fazer checagens e testes que teriam alertado para a discrepância. A leitura do relatório mostra que houve uma série de falhas internas de comunicação e de procedimentos, inclusive mostrando que parte da equipe já havia detectado algo estranho nos dados durante o trajeto da sonda mas resolveu comunicar por e-mail(!!!) ao invés de abrir um procedimento formal de análise, o que talvez explique essa postura da NASA. Veja alguns trechos do relatório:

In the MCO project, and again in the MPL project, there is evidence of inadequate communications between the project elements, including the development and operations teams, the operations navigation and operations teams, the project management and technical teams, and the project and technical line management. It was clear that the operations navigation team did not communicate their trajectory concerns effectively to the spacecraft operations team or project management. In addition, the spacecraft operations team did not understand the concerns of the operations navigation team.


An early comparison of these spacecraft-generated data with the tracking data might have uncovered the units problem that ultimately led to the loss of the spacecraft. When conflicts in the data were uncovered, the team relied on e-mail to solve problems, instead of formal problem resolution processes such as the Incident, Surprise, Anomaly (ISA) reporting procedure. Failing to adequately employ the problem tracking system contributed to this problem “slipping through the cracks.”

O relatório mostra também que os módulos de software foram testados separadamente, mas por falhas em formatação (ver página 17 do relatório) de arquivo os testes de integração, onde o resultado de um módulo é usado como input de outro, foram postergados e a equipe teve pouco tempo de análise.

The Software Interface Specification (SIS) was developed but not properly used in the small forces ground software development and testing. End-to-end testing to validate the small forces ground software performance and its applicability to the specification did not appear to be accomplished. It was not clear that the ground software independent verification and validation was accomplished for MCO. The interface control process and the verification of specific ground system interfaces was not completed or was completed with insufficient rigor.

Assim como em boa parte dos acidentes, nesse houve componentes humanos que foram determinantes para a ocorrência do acidente. Esse excelente artigo da IEEE Spectrum mostra mais detalhes e com entrevistas outros aspectos desse acidente. Um trecho desse artigo mostra que participantes do projeto relatavam problemas de tomada de decisão que já haviam na NASA anteriormente e que resultaram no infeliz acidente do ônibus espacial Challenger, que matou os 7 astronautas tripulantes em 1986.

Vídeo do lançamento e da explosão da Challenger. Fonte

O processo de tomada de decisão e gerenciamento de riscos na NASA também foi apontado como um dos responsáveis por outra explosão de ônibus espacial quatro anos após a perda do MCO, em 2003, quando o Columbia se desintegrou ao reentrar na atmosfera terrestre também matando os 7 tripulantes.

Vídeo sobre o desastre da Columbia

Demonstration for Autonomous Rendezvous (DART)

Em 2005, apenas 6 anos após a perda da MCO na atmosfera marciana, outro projeto da NASA teve problemas. O DART era um satélite que tinha como objetivo principal testar técnicas de navegação automática, podendo se acoplar automaticamente em outros dispositivos aeroespaciais evitando colisões. O projeto não tinha nenhuma forma de controle interativo via solo nem havia formas de se atualizar os softwares após o lançamento. Todas as operações em órbita dependiam apenas de critérios pré-programados. O DART se chocou com o satélite MUBLCOM numa manobra de aproximação. Custo da missão: 110 milhões de dólares.

nasa_dart02
Concepção artística da aproximação do DART com o satélite MUBLCOM

Em uma prévia do relatório feito pela equipe de análise do acidente, o processo de desenvolvimento de software foi duramente criticado. Havia parâmetros no código que não eram utilizados (residuais), não foram feitos testes para diversos cenários e havia um erro de conversão de unidade em um dos modelos matemáticos de simulação.

Chama a atenção que um trecho dessa prévia afirma que a velocidade medida pelos instrumentos era “cerca de” 0,6 metros por segundo a mais do que deveria (original: DART’s primary GPS receiver consistently produced a measured velocity that was offset or “biased” about 0.6 meters per second from what it should have been). Alguns desconfiam que havia uma conversão de unidades mal feita no código. Pois 1 ft/s (ft é do inglês foot, unidade pés em português) equivale a 0,3048 m/s. A diferença das magnitudes é de 0,6952 ou, usando os termos científicos do relatório (rs), cerca de 0,6. Assim, há a desconfiança que algum fator de conversão de pés para metros erradamente feito na forma de soma possa estar no código. Desconfiança que aumenta tendo em vista que há a citação de um erro de conversão de unidade em um dos modelos matemáticos de simulação (original: an omitted units conversion caused an error in a simulation math model).

Infelizmente mais detalhes não foram disponibilizados ao público pois o relatório completo não foi divulgado. Segundo a NASA, haviam detalhes protegidos pela lei ITAR – Regulamentos sobre o tráfego internacional de armas dos Estados Unidos. Mas a prévia do relatório deixa claro diversos problemas no fluxo de desenvolvimento de software, assim como no caso da MCO. O relatório deixa claro também os problemas de comunicação e de desenvolvimento de software na NASA, o que também foi alvo da mídia a época.

A NASA e o Sistema Internacional de Unidades

A ida para a Lua

A história da NASA com sistemas de unidades é bem longa. Para se ter uma ideia, o Apollo Guidance Computer (AGC), computador de bordo do módulo de comando e do módulo lunar do Projeto Apollo, armazenava internamente os dados no Sistema Internacional de Unidades, mas apresentava os dados e resultados no Sistema de Unidades Usuais dos Estados Unidos. Isso ocorria pois as pessoas do nível operacional da NASA e os próprios astronautas se entendiam melhor com o sistema americano.

nasa_apollo_computer
Apollo Guidance Computer (AGC) e DSKY (Display and Keyboard). Fonte

Assim, por mais que internamente a altitude e a velocidade, por exemplo, fossem armazenadas em metros e metros/segundo eram apresentadas em pés e pés/segundo. Da mesma forma, massas eram apresentadas em libras embora armazenadas em quilogramas. A análise do código fonte disponibilizado deixa isso bastante claro:

# *** THE ORDER OF THE FOLLOWING SIX CONSTANTS MUST NOT BE CHANGED ***

FDPS		2DEC	4.3670 B-7		# 9817.5 LBS FORCE IN NEWTONS
MDOTDPS		2DEC	0.1480 B-3		# 32.62 LBS/SEC IN KGS/CS
DTDECAY		2DEC	-38
FAPS		2DEC	1.5569 B-7		# 3500 LBS FORCE IN NEWTONS
MDOTAPS		2DEC	0.05135 B-3		# 11.32 LBS/SEC IN KGS/CS
ATDECAY		2DEC	-10

# ********************************************************************

FRCS4		2DEC	0.17792 B-7		# 400 LBS FORCE IN NEWTONS
FRCS2		2DEC	0.08896 B-7		# 200 LBS FORCE IN NEWTONS

		SETLOC	P40S1
		BANK
		COUNT*	$$/P40

# *** APS IMPULSE DATA FOR P42 ***************************************

K1VAL		2DEC	124.55 B-23		# 2800 LB-SEC
K2VAL		2DEC	31.138 B-24		# 700 LB-SEC
K3VAL		2DEC	1.5569 B-10		# FAPS (3500 LBS THRUST)

# ********************************************************************

S40.136		2DEC	.4671 B-9		# .4671 M NEWTONS (DPS)
S40.136_	2DEC	.4671 B+1		# S40.136 SHIFTED LEFT 10.

Nesse trecho de código temos especificações para o motor do Módulo Lunar. DPS significa Descent Propulsion System e APS, Ascent Propulsion System. Repare que nos comentários do código, indicados por #, foram colocados os respectivos valores no Sistema Americano de medidas.

O próprio relatório da missão é interessante do ponto de vista de sistemas de unidades. A parte mais voltada para engenharia, com dados da aeronave e da viagem, utiliza sistema americano, enquanto que a parte com os resultados dos experimentos utiliza Sistema Internacional. Um reflexo de que, já naquela época, a comunidade científica americana utilizava mais o Sistema Internacional, provavelmente devido ao fato de que as revistas e demais publicações usualmente exigem esse sistema de unidade.

nasa_apollo_report
Figuras do relatório da missão Apollo. Esquerda: movimentações orbitais previstas, utilizando o Sistema Americano de medidas. Direita: informações de experimentos científicos sismológicos, utilizando o Sistema Internacional de Unidades.

A migração de sistema de unidades de 300 milhões de dólares

A NASA começou em alguns momentos de sua história movimentos de transição para o Sistema Internacional de unidades. É interessante esse link do site da NASA onde é citada uma lei americana que força o uso do SI em programas financiados pelo governo a menos que seu uso seja inviável. Governantes e seus brilhantes legisladores… Não é de se espantar que, algumas linhas depois aparece (livre tradução): “embora o uso do SI esteja crescendo nos Estados Unidos, sabe-se que na área aeroespacial sua adoção será difícil, devido ao longo tempo de uso do sistema americano”. Então tá…

O caso do Programa Constellation é emblemático no que concerne a sistemas de unidades. O programa, iniciado em 2005, era bem ambicioso, propondo-se a completar a construção da Estação Espacial Internacional e a retornar ao solo lunar antes de 2020. Sabemos que isso não aconteceu, o programa foi cancelado em 2010 por seus elevados custos, embora alguns projetos em andamento tenham sido redirecionados para outros programas. O programa havia proposto inicialmente que utilizaria o sistema métrico mas… internamente foi solicitado que não fosse utilizado o sistema métrico e foi gerado um relatório da análise dessa solicitação. Vamos analisar brevemente esse relatório.

De acordo com o relatório, a equipe do Programa Constellation teria estimado um custo de $368 milhões de dólares entre 2009 e 2015 para fazer a transição para o SI. Boa parte desse custo viria do reuso de hardwares e softwares de programas passados, de forma que seria necessário revisão de documentação e de interfaces. E a equipe também teria dito ser impraticável fazer a mudança por ter ocorrido problemas técnicos de outras naturezas que levaram a necessidade de cortar custos e agilizar procedimentos para cumprir prazos.

nasa_constellation_cost
Estimativa do custo de migrar para o Sistema Métrico de acordo com a equipe do Programa Constellation.

A resposta dada pelos avaliadores no relatório é sensacional. Primeiro eles criticaram o fato de que o programa levantou o custo de se adotar o SI. OK, mas e o custo de NÃO adotar? Não foi feita uma análise de custo de ciclo de vida. Considerando a internacionalização dos programas espaciais, a não migração para o SI poderia custar mais futuramente pois boa parte da comunidade internacional utiliza o sistema métrico e seria necessário treinamento no sistema americano para futuros colaboradores.

Outro argumento da equipe do Programa é que a conversão adicionaria riscos inaceitáveis ao projeto. Mas o relatório questiona o porquê de então, em 2007 durante o período de planejamento do Programa, o sistema métrico ter sido selecionado sob justificativa da própria equipe de ser mais simples, menos propenso a erros e alinhado com a política internacional da NASA. E ainda cita o caso da MCO, que já descrevemos, para mostrar que mudar de política envolvendo sistemas de medida com o projeto em andamento pode levar a riscos que, agora sim, são inaceitáveis.

A equipe do Programa também tentou utilizar o argumento de que peças e demais partes costumam ser fabricadas com medidas compatíveis com o sistema americano. No entanto, o relatório afirma que medidas no sistema métrico estão igualmente disponíveis e que, novamente, o ciclo de vida como um todo deve ser considerado. Com as indústrias migrando cada vez mais para o sistema métrico, era pouco razoável começar um novo programa no sistema americano. E novamente o texto nesse ponto reforça a importância de se considerar parcerias internacionais tanto para peças, quanto para parcerias comerciais e de pessoal, todos utilizando sistema métrico.

A decisão do Programa acabou comprando briga com outro órgão do governo americano, o National Institute of Standards and Technology (NIST). O relatório mostra a comunicação entre os dois entes estatais, deixando claro que o NIST não estava nem um pouco satisfeito com a postura da NASA. Chama atenção esse trecho de uma das respostas do NIST: “[t]he successful voluntary U.S. transition to the metric system is a critical factor in the competitive success of companies and the country. NASA is a flagship federal agency to which other agencies and industry look for leadership and inspiration.”

Por fim, o último argumento da equipe do Programa era que o uso do sistema métrico pela NASA era dificultado pelo fato de o Departamento de Defesa não utilizar em seus projetos. Isso faria com que as empresas do setor aeroespacial não tivessem tantas peças disponíveis para o sistema métrico, tendo em vista a grande influência dos contratos do Departamento de Defesa. Anteriormente o relatório já havia demonstrado que há sim peças disponíveis o suficiente e nesse trecho o relatório ainda cita projetos do Departamento de Defesa que haviam sido feitos inteiramente no SI.

Parece que os cowboys do espaço não se importam muito em arranjar desavenças… Primeiro o NIST e agora o Departamento de Defesa. Alguém lá realmente não gosta de fatores de conversão de unidades e do sistema métrico.

Essa decisão não foi bem recebida pelo setor privado conforme mostra esse artigo da época. Representantes das empresas reclamavam, com razão, que a demora da NASA em migrar para o SI prejudicava a criação de um mercado aeroespacial global, além de atrapalhar colaborações internacionais em pesquisa. Afinal, uma empresa estatal do tamanho da NASA impactava muito o mercado em cada decisão que tomava. Lembrando que estamos falando de pouco mais de uma década atrás.

Situação atual

Mas e como estamos agora, uma década depois de todo esse acontecimento? A NASA se rendeu ao Sistema Internacional de Unidades?

Bom, se você leu esse artigo até aqui deve ter percebido que o sistema de unidades é o menor problema da NASA. O que fica evidente são os diversos problemas de comunicação e de gestão desses projetos. Se uma aparentemente “simples” mudança de sistema de unidades tem um custo de milhões de dólares imagine outros fatores envolvidos nesses projetos? Cada relatório mostra claramente diversos problemas de desenvolvimento dos projetos, desde software até os equipamentos em si. A realidade é que cada projeto se tornava cada vez maior e mais caro. E dinheiro, mesmo estatal, é finito.

Tendo isso em vista, desde meados dos anos 2000 a NASA intensificou programas de colaboração com empresas privadas como Boeing, Orbital, Sierra Nevada e, a mais conhecida, SpaceX. Esses programas economizaram milhões de dólares para a NASA. Obviamente ainda há programas liderados pela NASA, mas parte significativa deles são em cooperação com empresas e órgãos espaciais de outros países como Japão, Canadá e a Agência Espacial Europeia. Dessa forma, a realidade se impôs e, quando o sistema de medidas americano ainda é usado, é em menor escala e internamente. Equipamentos e softwares são (esperamos) desenvolvidos no SI.

Isso não significa que a cultura das pessoas envolvidas e da instituição mudou. Uma simples visita ao site da NASA mostra isso. Os materiais de divulgação ainda utilizam o sistema americano. Por exemplo, veja esse material do Space Launch System, um foguete de lançamento em desenvolvimento. O material é claramente voltado para os próprios americanos, o que já é de esperar de um órgão governamental americano, não é mesmo?

Agora veja esse material dos veículos Falcon da SpaceX. Durante todo o documento o sistema métrico é mostrado primeiramente com a conversão pro sistema americano entre parênteses. Afinal é uma empresa prestadora de serviço logo, vai buscar se comunicar de forma a ter o máximo de clientes possível. Além disso, o marketing e a percepção pública sobre a empresa também são importantes.

nasa_vs_spacex
Comparativo entre materiais de divulgação da NASA (esquerda, utilizando Sistema Americano de unidades) e da SpaceX (direita, utilizando Sistema Internacional e, também, o Sistema Americano).

Se boa parte do mundo usa sistema métrico, é importante para a empresa que as pessoas possam entender seus materiais. Isso é perceptível nos vídeos de lançamento da SpaceX:

Vídeo da SpaceX onde os infográficos utilizam o Sistema Internacional de Unidades

Nos vídeos a altitude é mostrada em quilômetros e a velocidade em quilômetros por hora. Isso chamou a atenção da imprensa na época dos primeiros lançamentos.

Para termos uma ideia de quanto de nosso planeta já adota o sistema métrico, o seguinte mapa mostra como anda o processo de metrificação pelo mundo:

nasa_metrification
Processo de metrificação pelo mundo. Verde: completo; amarelo: quase completo; laranja: uso misto; vermelho: pouca adoção. Fonte

Conclusão

E aí? Alguma vez você parou para pensar que o assunto conversão/sistemas de unidade poderia ter tantos desdobramentos? Por mais que os sistemas e as conversões em si sejam simples, há diversos fatores humanos envolvidos, especialmente culturais. Aproveitamos o assunto também e fizemos algumas discussões sobre desenvolvimento de software. Espero que tenha curtido o artigo, não esqueça de deixar seus comentários e de compartilhar.

Caso queira ler mais sobre uma outra situação onde erros de unidades causaram problemas, veja o caso do avião que caiu por ter ficado sem combustível em pleno voo.

Até a próxima.

Compartilhe:

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima