Margaret H. Hamilton é uma cientista informática que foi fundamental para os esforços da NASA em aterrar humanos na Lua nos anos 60 e 70. Por seu trabalho, ela foi homenageada com a Medalha Presidencial da Liberdade em 2016.
Hamilton liderou a divisão de engenharia de software no Laboratório de Instrumentação do Instituto de Tecnologia de Massachusetts. Nesse papel, ela assumiu a liderança do software usado para governar a dinâmica de vôo da nave espacial Apollo, que foi usada para seis missões de pouso entre 1969 e 1972.
“Hamilton contribuiu para os conceitos de software assíncrono, agendamento de prioridades e exibições prioritárias, e capacidade de decisão humano-em-linha, que estabeleceram as bases para o design e engenharia de software moderno e ultraconfiável”, a citação para sua leitura da medalha.
Early achievements
Hamilton tem uma formação diversa, incluindo uma graduação em matemática pela Earlham College em Indiana, e um trabalho de pós-graduação em meteorologia no MIT. Além de seu trabalho na Apollo, ela fez parte do Sistema de Defesa Aérea Semi-Automática do MIT Lincoln Laboratory, ou SAGE. Segundo o MIT, este foi o primeiro sistema de defesa aérea do país e ajudou a impulsionar a computação digital nas décadas de 1950 e 1960.
O laboratório de instrumentação do MIT recebeu o contrato para os sistemas de orientação e controle da Apollo em 9 de agosto de 1961, quando os Estados Unidos haviam realizado apenas dois vôos espaciais – ambos com apenas um tripulante a bordo, e ambos no espaço suborbital. O contrato foi concedido apenas semanas antes – o então presidente John F. Kennedy anunciou que planejava ter humanos a bordo da Lua até o final da década.
Os sistemas de orientação e controle se aplicariam tanto ao módulo lunar (que pousaria na Lua) quanto ao módulo de comando (que orbitaria a Lua enquanto o módulo lunar estivesse na superfície, depois abrigaria os astronautas em sua viagem de volta para casa). O objetivo era guiar a nave espacial uma vez que eles tivessem alcançado a órbita da Terra.
Após apenas uma missão da tripulação na órbita da Terra – a Apollo 7 no início de 1968 – a NASA escolheu enviar o módulo de comando da Apollo 8 a solo em Dezembro, numa missão orbital à Lua, por preocupação de que a União Soviética chegasse primeiro. A Apollo 9 testou o módulo lunar e o módulo de comando juntos na órbita da Terra pela primeira vez, e depois as duas naves espaciais foram testadas novamente na órbita lunar para a Apollo 10.
A missão de coroação, Apollo 11 em julho de 1969, viu Neil Armstrong e Buzz Aldrin descendo até a superfície no módulo lunar, retornando com segurança ao módulo de comando (pilotado por Mike Collins) e voltando à Terra.
Os alarmes 1201 e 1202
Mas um incidente de software quase descarrilou a aterrissagem, como lembrou Hamilton em uma entrevista de 2009 ao MIT. “Tudo estava indo conforme o planejado até que algo totalmente inesperado aconteceu, assim como os astronautas estavam no processo de aterrissagem na Lua”, ela lembrou.
“De repente, as seqüências normais de missão foram interrompidas por exibições prioritárias de alarmes 1201 e 1202, dando aos astronautas uma decisão de ir/não ir (pousar ou não pousar)”, ela acrescentou. “Rapidamente ficou claro que o software não só estava informando a todos que havia um problema relacionado com o hardware, mas que o software estava compensando o problema”. Com apenas alguns minutos de sobra, foi tomada a decisão de ir para a aterrissagem”
Apesar da decisão de deixar os astronautas aterrissarem, Hamilton apontou que foi feita uma análise de falhas para ver onde o erro foi cometido. Apurou-se que a lista de verificação dos astronautas, que regia as ações que a tripulação tinha que fazer antes de pousar, fez com que a tripulação colocasse o interruptor do radar de encontro na posição errada. Isso sobrecarregou a unidade central de processamento durante o pouso, mas felizmente, o software se recuperou nos momentos quentes antes da Apollo 11 aterrissar.
“Toda vez que a CPU se aproximava da sobrecarga, o software limpava toda sua fila de processos, reiniciava suas funções; permitindo que apenas as de maior prioridade fossem executadas até que o pouso fosse concluído”, disse ela. Com o erro corrigido, os aterrissagens lunares para as Apollos 12, 14, 15, 16 e 17 foram possíveis. (A Apollo 13 abortou antes do pouso devido a uma explosão na área de serviço do módulo de comando.)
Hamilton’s legacy
NASA ficou tão impressionada com o software utilizado no Apollo que a base do mesmo foi adaptada para o Skylab (o primeiro software de orientação do MIT nos Estados Unidos). estação espacial), o ônibus espacial (que realizou mais de 100 missões bem-sucedidas na órbita da Terra – e duas falhas fatais – entre 1981 e 2011) e os primeiros sistemas digitais fly-by-wire em aeronaves.
“Hamilton foi homenageada pela NASA em 2003, quando lhe foi entregue um prêmio especial reconhecendo o valor de suas inovações no desenvolvimento do software Apollo”, escreveu a NASA em 2016. “O prêmio incluiu o maior prêmio financeiro que a NASA já havia concedido a qualquer indivíduo até aquele momento”
Hamilton deixou mais tarde o MIT para iniciar sua própria empresa de software, mas seu nome ainda é mais reconhecido por suas conquistas na aterrissagem lunar. Seu nome era claramente visível quando todo o código fonte da Apollo 11 foi lançado no GitHub em 2016; de acordo com o MIT, a primeira linha completa do software dizia: “SUBMITTED”: MARGARET H. HAMILTON DATA: 28 MAR 69 / M.H.HAMILTON, LÍDER DE PROGRAMAÇÃO COLOSSUS / ORIENTAÇÃO E NAVEGAÇÃO DA APOLLO”
Para Hamilton, embora a Apollo 11 fosse monumental, ela gostou do desafio de fazer o seu trabalho por ela. “Da minha própria perspectiva, a experiência do software em si (desenhando-o, desenvolvendo-o, evoluindo-o, vendo-o funcionar e aprendendo com ele para futuros sistemas) foi pelo menos tão emocionante quanto os eventos em torno da missão”, disse ela.
Recent news