;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Nasa revela astronautas que vão à Lua na missão Artemis 2; assista ao vivo

Nasa
Imagem: Nasa

Marcella Duarte

De Tilt

02/04/2023 13h40Atualizada em 03/04/2023 11h47

Nesta segunda-feira (3), a Nasa vai revelar os quatro astronautas da missão Artemis 2, que partirá em uma viagem ao redor da Lua no ano que vem.

O anúncio será feito na base Ellington Field, nas proximidades do Centro Espacial Johnson, em Houston, Texas. Tudo será transmitido nos canais da agência espacial, a partir do meio-dia (horário de Brasília).

Há quase 50 candidatos, e até agora só sabemos que serão escolhidos três astronautas dos Estados Unidos e um do Canadá — que garantiu seu assento após desenvolver um moderno braço robótico para o programa de exploração lunar.

Após um primeiro lançamento não tripulado para testar os sistemas, no ano ado, esta segunda missão ainda não irá pousar na Lua — isso só deve ocorrer na Artemis 3, no ano seguinte. Mesmo assim, é histórica: faz mais de 50 anos que nenhum ser humano sequer chega perto de nosso satélite.

Acompanhe a revelação ao vivo:

Primeira mulher na Lua

A Artemis 2 está prevista para ser lançada em novembro de 2024. Será o primeiro voo com astronautas a bordo da cápsula Orion, impulsionada pelo enorme foguete SLS (Sistema de Lançamento Espacial).

Eles farão "apenas" um sobrevoo de dez dias, dando algumas voltas na Lua e chegando até seu lado oculto, a cerca de 400 mil quilômetros da Terra — o mais distante no espaço profundo que qualquer ser humano já foi.

Em 2025, finalmente, o objetivo da Artemis 3 é "alunissar" (aterrissar na Lua) e desembarcar a tripulação no polo Sul, um local diferente e mais desafiador do que os visitados durante as missões Apollo. Nenhuma pessoa, nem sequer uma missão robótica, já pousou lá.

Mas ainda é preciso desenvolver um sistema de pouso para isso; o plano é usar a nave Starship, da SpaceX, que ainda está em fase de testes. Também são necessários novos trajes espaciais, que garantam maior proteção contra o inóspito ambiente lunar — um protótipo foi apresentado em uma polêmica versão preta.

apollo 17 - Nasa - Nasa
Gene Cernan pausa para uma foto durante a missão Apollo 17, a última a ir à Lua; módulo de pouso e rover estão ao fundo
Imagem: Nasa

A última vez que alguém pisou na Lua foi em dezembro de 1972, na Apollo 17, viagem final do icônico programa que levou um total de 12 astronautas (todos homens brancos) para o solo lunar.

A Nasa garante que a Artemis 3 vai incluir a primeira mulher e a primeira pessoa "não branca" (negra, indígena ou latina) a caminhar em nosso satélite.

Da Lua a Marte

Se bem-sucedido e com verbas, a etapa seguinte do programa Artemis é instalar o "Lunar Gateway", uma pequena estação espacial que orbitaria nosso satélite e serviria de ponto de apoio para missões — o braço robótico desenvolvido pela agência espacial canadense (CSA) será usado aqui.

Canadarm3 - CSA - CSA
Concepção artística mostra braço robótico Canadarm3 em operação no Gateway, na órbita da Lua, com a Terra ao fundo
Imagem: CSA

Em parceria com outras agências empresas privadas, como a SpaceX, a Nasa também pretende estabelecer uma base em solo lunar para presença humana constante.

O grande plano futuro é que a Lua possa servir de entreposto para viagens mais longas pelo Sistema Solar, em especial a Marte — que, segundo as previsões mais otimistas, devem começar no fim da década de 2030.