O que é?
O termo WiFi é uma abreviação de Wireless Fidelity, também uma alusão à expressão “Hi-Fi” (High Fidelity). O nome foi registrada pela empresa de tecnologia Wi-Fi Alliance, que também foi responsável por trazer a tecnologia wireless ao Brasil. Tal nome se popularizou de tal forma que hoje o termo é atribuído a qualquer tecnologia WLAN (Wireless Local Area Network).
Como funciona?
O WiFi funciona através de ondas de rádio, assim como as TVs, aparelhos de rádio e celulares. A antena do roteador é a responsável por captar e emitir os sinais, bem como decodificá-los. E é assim que os aparelhos conseguem trocar informações.
Essa troca de informações pode ocorrer em duas frequências diferentes, 2.4GHz ou 5 GHz. E quanto mais alta a frequência, maior é a capacidade de transferência de dados.
Também existe um protocolo que os aparelhos precisam seguir para se entenderem, que é o padrão 802.11. Tal padrão é uma série de regulamentações que especifica regras de transmissão e codificação para a troca de informações. Esse protocolo apresenta algumas variações que são sinalizadas pelas letras “a”, “b”, “g” e “n”, a depender da frequência utilizada, do alcance máximo da rede e da velocidade máxima de transmissão.
Por exemplo, o 802.11a transmite as informações na frequência de 5GHz com velocidade de até 54 megabits por segundo. O 802.11b usa a frequência de 2,4GHz e sua velocidade chega a até 11 megabits por segundo. Enquanto o 802.11g é mais rápido que a versão “b”, mesmo usando a frequência de 2,4GHz, e chega a até 54 megabits por segundo. Já o 802.11n foi criado com o objetivo de aumentar tanto o alcance como o sinal de transmissão e chega a até 140 megabits por segundo.
História
Todas essas “letrinhas”, como “b”, “g” e o “n”, que sucedem o número 802.11, contam, também, um pouco da história do WiFi.
- 802.11: esta é a nomenclatura inicial para as redes sem fio, desenvolvida em 1997 pelo Instituto de Engenheiros Eletricistas e Eletrônicos (IEEE). Ainda que uma grande inovação para a época, o padrão apresentava uma taxa de transferência muito baixa, próxima a 2 megabytes por segundo. Por conta disso, o padrão foi descontinuado.
- 802.11b: desenvolvido dois anos depois do anterior, este apresentava uma taxa de transferência de até 11 megabytes por segundo. Porém, este padrão fazia uso das mesmas frequências de operação de diversos outros aparelhos domésticos, como microondas e telefones sem fio, que também operam próximos à 2.4GHz. Isso poderia causar interferências dependendo do local em que o roteador se encontrava.
- 802.11a: este padrão trabalhava com uma transmissão de 54 megabytes por segundo e atuava na frequência de 5GHz. Apesar de conseguir transferir os dados com mais velocidade, a distância entre dispositivos era mais curta. Este sistema tinha um custo mais alto e teve baixa quantidade de vendas se comparado ao anterior. Seu desenvolvimento se deu em paralelo ao padrão b. Porém, o modelo não teve muito adesão do mercado.
- 802.11g: este padrão trouxe a junção das vantagens trazidas pelos dois modelos anteriores. Com isso, este é capaz de transferir dados a 54 megabytes por segundo, usando frequências próximas a 2.4GHz para uma melhor abrangência de sinal.
- 802.11n: este é baseado em uma metodologia chamada MIMO (Multiple Input Multiple Output), que realiza múltiplas conexões de entrada e saída para melhorar as taxas de transferência e abrangência do sinal.
E se construíssemos nosso próprio WIFI?
O WiFi é uma tecnologia de comunicação que consegue transmitir informação através de ondas eletromagnéticas na escala das ondas de rádio. Observado a Figura 1, é possível observar como é o espectro eletromagnético.
Para fins didáticos e experimentais, podemos construir um WiFi de forma que possamos ver seu funcionamento. Nesse sentido, não podemos usar o mesmo comprimento de onda usado pela tecnologia WiFi, pois este, é invisível para o olho humano. Por esse motivo, construiremos um protótipo utilizando a luz visível.
Para isso, utilizaremos duas placas Arduino, um LDR (Light Dependent Resistor), um resistor de 10KΩ para pull down do LDR, dois LED de cores diferentes e dois resistores de 330Ω para os LED.
É possível observar os circuitos por meio da Figura 2 e Figura 3.
Foram utilizados os LED das cores vermelho e azul para representar o sinal binário 1 e 0, respectivamente. Para isso, calibramos os intervalos lidos pelo LDR para que o software embarcado na placa Arduino pudesse diferenciá-los. É possível observar os LED acesos na Figura 4 e na Figura 5.
Com o circuito pronto, podemos partir para a programação. A ideia é que os LED consigam transmitir informações para o LDR. Com esse objetivo, segue o código usado para o transmissor, composto pelos LED azul e vermelho.
Para o teste, o receptor deve receber a palavra “OLA” em código ASCII.
const int ledAzul = 8;
const int ledVermelho = 7;
void setup(){
// put your setup code here, to run once:
pinMode(ledAzul, OUTPUT);
pinMode(ledVermelho, OUTPUT);
}
void loop(){
int palavra[21] = {1,0,0,1,1,1,1, 1,0,0,1,1,0,0, 1,0,0,0,0,0,1}; // OLA
for(int i = 0; i < 21; i++){
if(palavra[i] == 1){
digitalWrite(ledVermelho, HIGH);
delay(500);
digitalWrite(ledVermelho, LOW);
}
else{
digitalWrite(ledAzul, HIGH);
delay(500);
digitalWrite(ledAzul, LOW);
}
}
digitalWrite(ledVermelho, LOW);
digitalWrite(ledAzul, LOW);
delay(2000);
}
Do lado do receptor, o código deve ser conseguir ler as informações enviadas pelos dois LED e decodificar, conforme abaixo:
const int receptor = A0;
int valor;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
int palavra[21];
valor = analogRead(receptor);
//Serial.print("Valor: ");
//Serial.println(valor);
Serial.println("Aguardando mensagem...");
if(valor > 400 && valor < 500){ //ambiente
Serial.println();
Serial.println("Recebendo mensagem...");
Serial.println();
delay(1950);
for(int i = 0; i < 21; i++){
valor = analogRead(receptor);
if(valor > 800 && valor < 900){ //vermelho
palavra[i] = 1;
}
else if(valor > 700 & valor < 800){ //azul
palavra[i] = 0;
}
delay(500);
}
Serial.print("Mensagem: ");
for(int j = 0; j < 21; j++){
Serial.print(palavra[j]);
}
delay(1500);
Serial.println();
Serial.println();
}
}
No Vídeo 1 é possível observar o funcionamento do transmissor.
No Vídeo 2 é possível ver a transmissão da palavra “OLA” acontecendo.
Conclusão
Nesse projeto foi possível construir um modelo didático para um sistema de WiFi. Com esse protótipo, foi possível alcançar incríveis 0.000002 Mbps a uma distância de 3 cm.
Será que é possível deixar esse sistema mais rápido? Se sim, quão mais rápido?
Será que é possível aumentar sua distância de cobertura máxima? Se sim, quão mais distante?
Perguntas essas que poderão ser respondidas em futuros artigos.
Além disso, também é possível implementar um algoritmo capaz de codificar uma mensagem, digitada no Serial Monitor do Arduino IDE, para código ASCII, bem como um decodificador dessa mensagem do lado do receptor. Isso tornaria o modelo um pouco mais próximo do real. Mas e você, tem também alguma ideia de melhoria desse sistema?
Referências
[1] Toda Matéria. Espectro Eletromagnético. 2017. Disponível em: <https://www.todamateria.com.br/espectro-eletromagnetico/>. Acesso em 07/08/2020.William Lehr, Lee W McKnight. Wireless Internet access: 3G vs. WiFi?. Telecommunications Policy.
ELSYS. Wi-Fi. 2017. Disponível em: <https://blog.elsys.com.br/como-funciona-o-wifi/#:~:text=Funcionamento%20do%20WiFi&text=Exatamente%20da%20mesma%20forma%20como,a%20parte%20principal%20do%20WiFi.>. Acesso em 07/08/2020.
Willian Fonseca. Wireless: diferenças entre as gerações b, g e n. 2009. Disponível em: <https://www.tecmundo.com.br/internet/2764-wireless-diferencas-entre-as-geracoes-b-g-e-n.htm>. Acesso em 07/08/2020.
Wikipedia. IEEE 802.11b-1999. 2020. Disponível em: <https://en.wikipedia.org/wiki/IEEE_802.11b-1999>. Acesso em 07/08/2020.









Bem interessante o exemplo. Com algumas modificações dá pra explicar todos os princípios básicos do wifi
Muito obrigado, André! Gostaria de me dar algumas sugestões? Caso queira trocar uma ideia, me envie um e-mail: caiossoliveira@gmail.com
Grande abraço!
Parabéns pelo artigo.
Muito obrigado, Matheus!
Cara eu adorei a forma como você explicou, eu sou estudante de engenharia eletrônica e os professores explicam através de equações , só que essa abordagem as vezes é muito chata, se houvesse uma abordagem assim como a sua e depois a parte teórica onde seria introduzida toda a teoria de como transmitir, receber enviar mais informações através do sinal, tudo seria bem mais prazeroso.
Só gostaria de acrescentar a seguinte informação, com o aumento da frenquência há um atenuação maior no sinal.
Poxa, muito obrigado Gabriel! E valeu pela informação adicional!
Muito bom, parabéns pelo artigo.
Valeu Heittor!