Comunicações instantâneas: como elas são possíveis?

A manipulação de sinais digitais é fascinante, mas para que a leitura não fique chata demais, precisarei incluir uma série de ilustrações que irão ajudar na compreensão do tema. Tentarei tratá-lo de forma simplificada, omitindo vários aspectos que julgo omissíveis sem prejudicar a compreensão básica da coisa. Também não farei um resgate histórico sobre os métodos usados nas comunicações empreendidas pela humanidade no decorrer da história. Isto tornaria este escrito cansativo, além de tratarem-se de informações já difundidas o bastante. Farei apenas uma espécie de comparativo com o que tínhamos no passado e o que temos hoje para contextualizar.

Você muito provavelmente está careca de saber que nos primórdios da humanidade, a comunicação era lenta e restrita. Quer seja limitada pela barreira da linguagem ou da tecnologia inexistente na época, assim o era. Hoje, você dirige seu carro há algumas dezenas de quilômetros por hora e, ainda assim, pode conversar com qualquer pessoa que esteja em qualquer ponto do planeta. Já é real, inclusive, a possibilidade de comunicar-se com quem sequer esteja nele, mas manteremos o foco no cotidiano.

A palavra-chave para tal realidade é "onda". Se você quer enviar uma mensagem, seja ela escrita ou falada, você o faz por meio da transmissão de ondas. Quando criança, eu contava quantos segundos levava para que meus gritos chegassem ao fim da rua e ecoar de volta. Era impressionante demais pensar que em poucos segundos algo podia percorrer tanta distância! Eu devaneava sobre o que eu faria se eu tivesse essa velocidade! É claro que, como veremos, essa velocidade é fajuta comparada a outros meios de programação além do ar.

Transmissor versus receptor

Um canal de comunicação só existe quando há um objeto capaz de enviar sinais e outro capaz de recebê-los, assim como o jovem nando que ouvia sua própria voz ecoar. Apesar do vislumbre, a qualidade da voz refletida era muito débil e muito lenta, na verdade. Imagine se você quisesse se comunicar com alguém do outro lado do planeta limitado à velocidade de propagação das ondas sonoras no ar? É, você iria querer um canal mais rápido.

O microfone é o cara capaz de converter ondas sonoras em sinais elétricos - é claro que podemos substituir o microfone por um sensor ou transdutor caso queiramos transmitir outra informação além de áudio, mas vamos focar nele. Apesar de não ser o responsável pela digitalização de fato, ele coloca o fio de cobre no páreo. Dado que a velocidade de propagação do som no ar a 25°C de 346,3 m/s (1 246,7O km/h) é mais de 664 mil de vezes mais lenta frente à propagação elétrica a assombrosos 2,3 × 10^8 m/s do cobre, se eu tiver um receptor na outra ponta desse fio eu estaria reinventando a comunicação. É claro que o fio não é usado para transmitir massa sonora, mas sim sinais elétricos. O que nos leva ao par modulador-demodulador, ou simplesmente "modem". Adiante.

O modem converte ondas senoidais, na forma Acos(B(pi)+(t)) (lê-se A vezes o cosseno do produto de B e pi somado a t). Não se deixe intimidar pela expressão. Apenas acredite em mim: ao substituir (t) por um intervalo de tempo qualquer e A por um numero constante qualquer, você obtém uma equação que descreve o movimento de uma onda analógica real. Se pudesse vê-la sem a ajuda de um osciloscópio, ela teria essa carinha: 


Antes de mais nada, assuma que: 1) a linha azul é a onda propriamente dita avançando infinitamente no decorrer do tempo; 2) o tempo (t) está representado pelo eixo horizontal, que está com escala em (pi) e 3) a amplitude da onda A é metade da soma da distancia medida entre seu vale e seu pico.

A equação  descreve B(pi) indicando B/2 revoluções no círculo trigonométrico. Ter esta noção é importante para entender como um modem funciona. Tenha em mente que, no decorrer da linha azul, existem infinitos números reais, que são imagem da função cosseno variando de -1 até 1, típico de funções senoidais, multiplicada por um coeficiente A e somada a um (t) qualquer.

CONVERSORES A/D, D/A E MODEM

Um modem. Cortesia de Wikimedia Commons.

Trata-se de uma família de dispositivos que basicamente irão criar uma nova onda discreta a partir dos sinais de tensão recebidos para que seja possível a posteriori manipulá-los digitalmente. Em cada ponta do canal de comunicação deverá existir um dispositivo ora convertendo sinais analógicos em digitais, ora digitais em analógicos. Aqui cabe um parêntese: embora exista tecnicamente um canal de comunicação entre um microfone e uma caixa de som sem a necessidade de um dispositivo conversor, o foco deste escrito está na nossa comunicação cotidiana. Por exemplo, ainda que as mensagens de áudio que você ouve e fala no celular para enviar via "WhatsApp" sejam só ondas senoidais analógicas, em algum momento elas tiveram de ser apenas zeros e uns para que pudessem ser armazenadas em seu celular até que você e seu contato pudessem finalmente ouvi-las. Não é possível armazenar ondas senoidais analógicas, a menos que você tenha gravador de discos de vinil ou qualquer outra forma de armazenar ondas fisicamente. Coloquei este parêntese só para lembrar mesmo. Agora, antes de prosseguirmos, observe a seguinte figura:


A área senoidal pontilhada serve apenas para ilustrar que a onda continua além, mas doravante iremos focar apenas na área demarcada sob a faixa senoidal em magenta. Chamaremos essa área de faixa de amostragem.

Quando o conversor recebe um senoide, ele precisa de antemão delimitar duas coisas: a amostragem  e a quantização. Observe:


Acrescentamos duas novas informações: a amostragem, delimitada pelas linhas verdes e a quantização, pelas linhas azuis. 

Pense em cada linha verde como um momento em que o conversor coleta dados da onda senoidal para análise, observa o valor da onda naquele instante e o registra. É intuitivo pensar que, quanto mais vezes ele faz isso por um instante de tempo, mais informações ele terá sobre a onda e, por outro lado, mais bits serão necessários para armazenar ou transmitir digitalmente as informações. Em outras palavras, quanto maior for a taxa de amostragem, melhor a qualidade das informações, mas também mais espaço de armazenamento será necessário ou mais lenta será a transmissão pelo canal de comunicação. Visualizando, seria isso:

Certo, e sobre a quantização? O que ela é? 

Falamos sobre o primeiro aspecto da conversão. Agora é preciso definir o que fazer com as amostras. Por hora, vamos pensar nas linhas azuis como 'zonas'. Cada zona tem um valor numérico atribuído e todos os integrantes desta zona assumem esse valor. Vamos entender isso:


Novamente, tome as linhas verdes como as amostragens dentro de uma zona. A quantização está agora definida pela única linha azul, em 2,5. E repare: as diversas amostragens nessa zona tem seus valores decrescendo de 3 a 2,5. A função da quantização é dizer que, apesar disso, todas essas amostras serão tratadas com um mesmo valor binário para então iniciar a etapa final da codificação.

DE VALORES REAIS PARA VALORES BINÁRIOS

Esta é a etapa final e a qualidade do arquivo/sinal digital está contando com ela. Dependendo da quantização, haverá mais ou menos informações no binário final. Haverá então um limite, em bits, que definirá a quantidade máxima de níveis que a quantização terá. Seria como ter uma peneira mais fina ou grossa. Esse número é definido pela função 2^n. Isto é, com dois bits, podemos quantizar em quatro níveis. Observe:


A imagem mostra uma quantização de dois bits, ou melhor, 2^n com n = 2 bits. Fatos importantes: 1) cada uma destas quatro zonas carrega uma grupo de amostragens (as linhas verdes); 2) todas elas, dentro de cada zona, tem o mesmo valor binário e 3) para cada zona há uma regra. Darei agora um exemplo de regra.

Primo, vamos estabelecer que os valores reais na zona laranja variam de 2,25 a 3,0; na zona amarela variam de 1,5 a 2,25; na zona cinza variam de 0,75 a 1,5 e na zona branca variam de 0 a 0,75; portanto, cada zona escala em 0,75. Observe que, em se tratando de números do conjunto Real, existem infinitos números entre, digamos, 0 e 0,1! Secondo, se queremos converter valores reais em binários, devemos agrupá-los de modo que os infinitos números existentes em cada zona sejam tratados por um computador como sendo o mesmo número. Como nesta quantização temos apenas quatro níveis, deveremos agrupá-los nos seguintes códigos binários: 00, 01, 10   e 11. A tabela a seguir ilustrará essa organização:

Juntando as informações da última imagem e desta tabela, a leitura das infinitas informações no trecho de onda que ocorreu entre t=0 e t=pi pode ser traduzida na seguinte codificação binária: 11100100. Desse modo, o computador que a processará não terá dificuldades em transmitir ou armazenar a informação contida na onda e, posteriormente, usando séries de Fourier, poderá recriar a onda novamente (lembra do áudio do WhatsApp, não?). Obviamente que, com quantização de apenas 2 bits, muita informação é perdida e, portanto, é inapropriada para lidar com áudio. A quantização típica suficiente para ouvir música de alta qualidade é de 24 bits, com amostragens em 44,1 kHz (44.100 amostras por segundo), por apresentar qualidade bastante satisfatória para o ouvido humano ao mesmo tempo que não suprime a velocidade de transmissão ou extrapola o limite considerado aceitável de espaço para armazenamento. Para telefonia, a qualidade é bastante inferior: tipicamente 8 kHz de amostragem e 8 bits de quantização. Um cálculo elementar mostra que 64 kbps (64.000 bits por segundo) de largura de banda (velocidade de transmissão) já é teoricamente suficiente para manter uma conversação nesta qualidade de amostragem!

Vamos observar agora como ficaria, após a digitalização, a representação da onda senoidal digitalizada num gráfico com escala equivalente. Observe as barras azuis e seus novos valores, agora digitais, expressos eu seus rótulos:

Uma outra forma de representar visualmente a saída digitalizada:


E é isso. Embora possa ser dito que a onda real foi transformada numa "onda" digital, o ideal é admitir que a onda simplesmente deixou de existir e, posteriormente - se essa onda transmitir áudio, por exemplo - precisará ser recriada.

RECRIANDO AS ONDAS SENOIDAIS


Precisamos usufruir de todo o trabalho que o conversor teve para digitalizar comunicações. Para recriar as ondas senoidais, o conversor na outra ponta do canal de comunicação irá, como primeiro passo do processo, recuperar os valores da onda usando cálculos matemáticos, mais especificamente aplicando as séries de Fourier nas cadeias de códigos binários. Não é possível criar uma onda exatamente igual a que havia antes da digitalização e o quão próximo poder-se-á chegar dela dependerá, como já dito, das taxas de amostragem e quantização. Se você quer ouvir mp3, você executa um arquivo binário cheio de zeros e uns em um software específico que reconhecerá as cadeias de informações - já que um binário pode conter qualquer tipo de informação. Quanto mais amostras por segundo foram colhidas na criação daquele binário, mais próximo de uma onda real será possível ficar. Em outras palavras: melhor a qualidade do som.

A imagem acima mostra um cone de um autofalante ligado a um ímã. Isso já nos intui do funcionamento do aparato,  mas não façamos confusão aqui: ele não é capaz de entender binários. Apesar dos fios, ele é um equipamento completamente analógico! Primeiro o conversor recupera as informações a partir dos binários, e em seguida, para cada valor aplica uma tensão elétrica. O papel das séries de Fourier aqui é recriar valores de números Reais a partir dos códigos binários. Estes números reais são tratados como valores de tensão elétrica aplicada em cada instante de tempo e então essa tensão passará pela bobina elétrica acoplada ao ímã, criando um campo magnético cuja força é fiel à tensão elétrica aplicada, excitando o cone. Finalmente, a movimentação do cone cria o mesmo tipo de ondas que as suas cordas vocais e a onda senoidal é recuperada. A essa altura você já intuiu que o caminho reverso depende de um microfone em vez de um autofalante e que a ideia de funcionamento é exatamente a mesma. Na seção "Transmissor versus receptor" já havia citado o microfone, e agora que você já tem entendido a quantização, vai pegar melhor a ideia: se um microfone faz com que um sinal ou uma voltagem (o termo ideal é tensão, mas não vamos criar atrito desnecessário com bobagens assim...) oscile de 0,2V a 2V, o conversor irá interpretar isso. Ele poderá, por exemplo, assumir como "zero" qualquer valor de sinal entre 0V até 0,5V e assumir como "1" qualquer valor de sinal entre 1,5V a 2V. E os valores 0,5V e 1,5V? Bem, aqui caímos novamente no já explicado processo de amostragem, quantização e transformação em binário.

A matemática é mesmo deslumbrante, huh?

Figura bônus: a linha vermelha representa o sinal binário - obtido matematicamente usando séries de Fourier - e a linha azul representa a onda real. Se você é amante do disco de vinil e um crítico do mp3, engula essa: a grande maioria das pessoas não tem ouvidos bons o bastante para discernir entre um mp3 de alta qualidade e um áudio proveniente de vinil, portanto muito provavelmente tratarão essa diferença como um tipo de preciosismo. Ninguém tem o direito de questionar a qualidade de uma onda real comparada a uma digital, mas precisamos reconhecer as vantagens da segunda antes de fechar este escrito. E é neste campo que eu quero entrar agora.

A VIDA NO SÉCULO XXI

Antes de mais absolutamente nada, faça o seguinte exercício mental: imagine que você quer enviar uma fotografia a um familiar distante e precisa envelopar a foto e despachá-la pelo correio. Imagine também que precisa saldar uma dívida e para isso precisa deslocar-se fisicamente. Imagine, ainda, que você quer dar notícias a um amigo que vive em outro país e para isso decide enviar uma carta, que levará vários dias até chegar, se chegar, e o mesmo tempo será necessário para que esse amigo te envie uma resposta, portanto, a depender da quantidade de informações a serem trocadas, toda a conversa entre vocês arrastar-se-á por meses. Dependendo de quando você nasceu, idéias como essas podem soar inconcebíveis - não por serem boas demais -, mas, ao mesmo tempo, para nossos ancestrais elas também pareciam inconcebíveis - agora sim, por serem boas demais. Desde o início do século XXI, embora não de forma tão difundida como hoje, todas estas tarefas se davam em minutos e a um custo muito baixo, quando havia custo. Enviamos fotos, vídeos, música, documentos, dinheiro e livros o tempo todo apenas porque já se descobriu como digitalizá-los. Praticamente qualquer coisa que envolva a visão e audição, combinadas ou não, pode ser digitalizada. Você faz uma transferência monetária de qualquer valor em segundos, ao passo que antigamente era preciso fazer o carregamento e o transporte do ouro. Nota-se, enfim, o motivo pelo qual a vida cotidiana tende ao digital. É claro que receber uma foto ou um livro digitalmente não despertam exatamente as mesmas sensações de recebê-los em caráter físico, além do fato de ocorrer algumas supressões na qualidade, mas nesta era, o "andar depressa" é mais importante. O tempo é a comódite mais cara.

Voltemos aos canais de comunicação. Hoje, a maior parte de todo o dado transmitido no mundo passa pelo fundo do oceano, através de redes de fibra óptica. É verdade que existem figurões esperançosos em mudar este padrão para a transmissão via satélite, mas eu sou bastante cético que isso algum dia venha a ocorrer pelas principais superioridades técnicas da fibra óptica: por usar a luz como meio de transmissão, não está suscetível a interferências eletromagnéticas ou atmosféricas, demanda um baixíssimo consumo de energia e apresenta baixíssima latência (atraso) na transmissão. Isto garante que as comunicações sejam confiáveis, estáveis e seguras. Contudo, encaro a transmissão via satélite como uma ótima opção de backup. Observe, na imagem a seguir (deixarei o endereço da fonte logo abaixo, para navegação no mapa):


Fonte: submarinecablemap.com

Não vamos nos prender aos aspectos técnicos da fibra óptica, existe um mundaréu de artigos na internet destrinchando-os muito bem. Apenas considere que a velocidade da luz é de mais de 1 bilhão de quilômetros por hora, ou melhor, quase 300 mil quilômetros por segundo. Considerando que o perímetro equatorial da Terra é de pouco mais de 40 mil quilômetros, pode-se resumir que a luz dá calmamente sete voltas no planeta a cada segundo. Fica fácil, então, compreender como a comunicação nos dias de hoje é tão veloz e porque não havia razão para que eu ficasse deslumbrado com o eco da minha voz.

Contato

Como membro de um grupo de entusiastas da tecnologia, convido-lhe a apoiar o software opensource. A recente história da informática nos mostrou que o software de código aberto é o responsável pelos algoritmos mais avançados e seguros, hoje mais usados no mundo. É graças a estas tecnologias que a disseminação de conhecimento, a velocidade da economia e o barateamento das comunicações atingem um sem-número de pessoas pelo planeta. E ainda estamos apenas começando. Quer seja disseminando a cultura, quer seja empreendendo ou participando de um projeto, você pode contribuir. Venha descobrir conosco.