Projeto Final Antenas e Propagação - Criação de uma Antena de Microfita Triangular

          Aqui irei descrever o projeto final apresentado pelos alunos Cláudio Queiroga (Eu), José Diniz, Diego Travassos e Eloise Rodrigues, a disciplina de Antenas e Propagação que constitui em fabricar uma antena de microfita triangular que opere na frequência de 2.45GHz. Primeiramente é preciso descrever o que é uma antena de microfita em seguida falar da fabricação da nossa antena.
      Em sua forma mais simples, a antena de microfita é composta de um elemento metálico (patch) depositado num substrato (fibra de vidro ou fenolite) que por sua vez está sobre um plano terra. Sua alimentação é feita através de uma linha de microfita ou de um cabo coaxial. O patch pode apresentar várias geometrias como: quadrada, circular, triangular, etc. A Figura 1 descreve a geometria básica da antena de microfita e a Figura 2 exemplifica os formatos tipicamente usados em antenas de microfita.

Figura 1 - Geometria básica de uma antena de microfita

Figura 2 - Formato mais usados em antenas de microfita

    A forma do patch influencia principalmente na distribuição de corrente, consequentemente, na distribuição do campo na superfície da antena. Sua irradiação pode ser determinada a partir da distribuição de campo entre o patch e o plano terra. A geometria triangular, foco deste trabalho, fornece características semelhantes à retangular, porém com a vantagem de oferecer uma otimização no tamanho da antena.
         O patch triangular usado neste trabalho possui as dimensões conforme visto na Figura 3. Para se chegar nesses resultados foi utilizado o método empírico de fabricação, já que naquele momento não tínhamos a disposição as fórmulas para este tipo de antena, desta forma, a antena foi fabricada inicialmente sem reentrances para a frequência de 2.45GHz, foi alterado apenas a largura e o comprimento das reentrances, foram feito diversas simulações para que conseguíssemos chegar no melhor resultado, o que demandou uma grande quantidade de tempo. Para a simulação da antena foi utilizado o software Ansoft Designer v3.

Figura 3 - Medidas da antena de microfita triangular
               
         Na Figura 4 podemos observar a perda de retorno (S11) é um parâmetro que irá nos dizer a qualidade da nossa antena, mostrando aquilo que está retornando na nossa frequência de operação (2.45GHZ), quanto menor o valor, dado em dB, melhor.

Figura 4 - Gráfico da perda de retorno S11 da antena de microfita triangular simulada

       Para uma análise melhor da nossa antena, podemos também olhar para outro parâmetro que é a corrente de superfície, na Figura 5 podemos ver como se distribui a corrente pela superfície da antena de microfita triangular e consequentemente ter uma ideia da distribuição do campo da antena.

Figura 5 - Gráfico da corrente de superfície da antena de microfita triangular simulada

        Por fim a Figura 6 mostra o protótipo da antena de microfita triangular que apresentou os melhores resultados medidos que pode ser visto na Figura 7.
Figura 6 - Protótipo da antena de microfita triangular

Figura 7 - Gráfico da perda de retorno S11 da antena de microfita triangular medida
    
          Com isto podemos concluir que mesmo utilizando a forma empírica, foi possível fabricar uma antena ótima com resultados medidos ainda melhores que os simulados, superando as nossas expectativas. Essa antena possui diversas aplicações como:
  • Sistemas de comunicações móveis (Celulares)
  • Sistemas de comunicações via satélite (GPS, UMTS)
  • Biomédicas (Tratamento de Câncer)

          Inicialmente nós não possuíamos as fórmulas mas posteriormente foi adquirida as fórmulas e feito uma análise entre a nossa fabricação empírica e a fabricação utilizando as fórmulas e os resultados são praticamente os mesmos, aqueles que desejarem o arquivo com as fórmulas deixe seu e-mail nos comentários.


Projeto Final Microcontroladores - Arduino + RF

          Bom pessoal, para a disciplina de Microcontroladores do curso de Engenharia Elétrica do Instituto Federal de Educação, Ciência e Tecnologia da Paraíba - IFPB, o intuito do projeto é transmitir uma mensagem de um Arduíno para o outro utilizando Radiofrequência (RF).
       Para isso foi utilizado no circuito transmissor, um Arduíno UNO REV3 conectado ao Módulo Transmissor de RF (433MHz), já no circuito receptor foi utilizado um Arduíno Nano V3.0 conectado ao Módulo Receptor de RF (433MHz) e para exibir a mensagem que está sendo enviada pelo Arduíno UNO foi utilizado um display LCD 16x2. Para conferir o funcionamento do projeto veja o vídeo abaixo:


        Bom pessoal, basicamente é isso o projeto, se alguém desejar o código para realização de projetos próprios ou até mesmo de melhorar o projeto feito por mim, basta deixar um comentário com o e-mail que enviarei o mais rápido possível.

Primeiros Passos BeagleBone

           Neste post irei mostrar um passo a passo que pode ser visto no site (www.beagleboard.org/bone), neste passo a passo inicial mostrarei como se configura o seu BeagleBone, como acessar o Cloud9 IDE, usado para programar o mesmo sem a necessidade de fazer download de nenhum kit de desenvolvimento da Texas Instruments, uma observação não usem o Internet Explorer, pois o BeagleBone só funcionará pelo Chrome ou Firefox, também não é aconselhado utilizar maquinas virtuais.

1º Passo: Ligue o BeagleBone via USB

         Use o cabo USB fornecido para ligar o BeagleBone em seu computador. Isto dará tanto energia para placa como acesso a interface de desenvolvimento. O BeagleBone irá iniciar o Linux proveniente do microSD fornecido e operará como um driver flash. Isto fornecerá para você uma copia local da documentação e dos drivers.
       Você irá ver o PWR LED aceso. Em 10 segundos, você deverá ver o USR0 LED piscar em um padrão de batimento cardíaco. Durante o acesso ao cartão SD, você deverá ver o USR1 LED acender.

2º Passo: Instaland os Drivers

      Instale  os drivers para o seu sistema operacional.
      Obs.: Windows Driver Certification irá avisar por pop up duas ou três vezes. Clique em "Ignore" ou "Install".   No final você deverá reiniciar o computador.
     Outra forma de encontrar os drivers é ao ligar o BeagleBone no computador ele irá montar o cartão SD como armazenamento de dados, dentre dele você irá encontrar uma cópia dos drivers e documentos.

3º Passo: Ejete o BEAGLE_BONE

      A operação de ejetar diz para o seu BeagleBone para trocar de "storage mode" para "network mode", ativando o seu acesso aos recursos de rede sobre o seu cabo USB. Em cada power-up, o padrão do BeagleBone é "storage mode". Algumas complicações podem ser encontradas utilizando Mac OS, mas não adentrarei no assunto já que focarei na utilização no Windows.


4º Passo: Explore Cloud9 IDE

       Cloud9 IDE pode ser usado para desenvolver softwares para o seu BeagleBone sem a necessidade de fazer download de nenhum software de desenvolvimento. Cloud9 IDE roda diretamente de seu BeagleBone e é acessível através de qualquer um, Chrome ou Firefox (Não funcionará no Internet Explorer)

       Como um exercício simples para se familiarizar com o Cloud9 IDE e a biblioteca Bonescript JavaScript, criaremos uma simples aplicação para piscar um dos 4 LEDs acessíveis ao programador presentes na própria placa do BeagleBone, já é um bom começo.
  • Passo A: Feche todas as abas de arquivo abertas.
  • Passo B: Clique no "+" no topo do lado direito para criar um arquivo novo.


  • Passo C: Copie e cole o seguinte código dentro da nova aba.
require ('bonescript');

setup = function () {
        pinMode (bone.USR3, OUTPUT);        // Ativa o controle do LED USR3
}

loop = function () {
        digitalWrite(bone.USR3, HIGH);      // Acende o LED USR3
        delay(100);                         // Delay 100ms
        digitalWrite(bone.USR3, LOW)        // Apaga o LED USR3
        delay(100);                         // Delay 100ms
}
  • Passo D: Salve o arquivo clicando no ícone parecido com disquete e nomeie o arquivo com um nome com a extensão .js.




  • Passo E: Execute o código selecionando na seta a direita de "run" (ou "debug") na barra de ferramentas para puxar para baixo a lista de arquivos de execução e selecione seu novo arquivo.

  • Passo F: Observe o LED USR 3 do BeagleBone piscar mais ou menos 5 vezes por segundo.

  • Passo G: Pare a execução do códigio clicando em "stop" na barra de ferramentas

5º Passo: Navegue pela sua placa

         Usando ou Chrome ou Firfex (lembrando que no Internet Explore não funciona), navegue no servidor web que está rodando em sua placa. Irá carregar uma apresentação mostrando para você as capacidades da placa. Use a botão direcional do teclado para navegar pela apresentação.

       No próximo post irei mostrar como programar o cartão SD com a imagem da ultima versão do software (Angstrom Distribution).


Comparativo BeagleBone e Concorrentes

     Irei mostrar neste post um breve comparativo entre o BeagleBone e seus concorrentes Arduíno, Raspberry Pi e Beagleboard-XM, que são as placas de desenvolvimento mais utilizadas no momento.

1. BeagleBone vs Beagleboard-XM

        Muitos pensam que o BeagleBone é uma evolução da Beagleboard-XM, mas o que acontece é o contrário, o hardware da Beagleboard-XM é superior, foram feitos com intuitos de projetos diferentes. Se você quer um hardware fácil de expandir, de baixo custo, melhor é o BeagleBone, agora se você quiser mais processamento, memória, portas USB, HDMI, entre outros, melhor é o Beagleboard-XM.

2. BeagleBone vs Raspberry Pi

     Não faz sentido a comparação dos dois, pois o objetivo do projeto Raspberry Pi (www.raspberrypi.org) é o de ser um PC de baixo custo, devido ao seu baixíssimo custo ($25-$35 a depender do modelo), muita gente quer tirar uma casquinha e até usar em algum projeto, se o que você precisa é algo próximo à um computador pessoal (com saídas de áudio, vídeo, portas USB e etc) e de baixo custo, é até uma boa usar o Raspberry Pi. Se você está procurando algo com diferentes interfaces de I/O (Entrada/Saída), maior capacidade de processamento e capacidade de fácil expansão, melhor é usar o BeagleBone.

3. BeagleBone vs Arduíno

          O BeagleBone veio para preencher uma lacuna existente em desenvolvimento rápido e prototipagem para soluções high-end com Linux. Por esse motivo, não tem como deixar de fazer uma comparação com o Arduíno. Ambos foram projetados com o conceito de exmpansão para facilitar a prototipagem, o Arduíno com os seus Shields e o BeagleBone com seus Capes. Ambos possuem um ambiente de desenvolvimento que roda em qualquer SO, linguagem mais amigável ao usuário, bibliotecas prontas, entre outros.
          Não creio que seja questão de concorrência. O Arduíno continuará sendo usado para acender leds, controlar motores e fazer seu robô andar, mas se você preicsar de um sistema de reconhecimento facial dentro do seu robô, é ai que pode entrar o BeagleBone

         O questão agora é esperar a evolução do projeto, ver as placas de expansão que serão lançadas, e se o Linux Embarcado vai se popularizar

Introdução ao BeagleBone

    Neste post irei falar um pouco sobre o BeagleBone (www.beaglebone.com), um projeto de hardware aberto e de baixo custo, desenvolvido pela Texas Instruments junto ao grupo BeagleBoard (www.beagleboard.org), e que venho trabalhando a pouco tempo. Como uma plataforma de prototipagem para computação móvel, uma das principais propostas do BeagleBone é torná-la uma referência similar as placas Arduíno (www.arduino.cc), já que usa o conceito de shields (placas de expansão, que para o BeagleBone recebe o nome de capes), porém com um processador muito mais potente (com frequência de operação de 550-720 MHz) e com muito mais possibilidades em relação a software. O BeagleBone não é interessante somente para projetos pessoais ou de pesquisa, mas também para empresas, que podem se aproveitar da fácil reprodução deste equipamento.
           No site dos desenvolvedores achamos várias imagens pré-montadas para usarmos no BeagleBone, temos: Android, Ubuntu, Debian, ArchLinux, Gentoo, Sabayon, Buildroot, Erlang, Fedora, entre outros.


1. Hardware

         O BeagleBone possui um processador AM3359, ele é um ARM Cortex-A8 com acelerador gráfico 3D produzido pela Texas Instruments, roda em até 720MHz, possui 32KB de cache L1, 256KB de cache L2, 176KB de ROM e 64K de RAM interna. Tamém possui controlador LCD de 24 bits e controlador para interface touchscreen.

          O BeagleBone possui ainda 256MB de SDRAM, e não tem memória flash, então é necessário o uso de um cartão SD (incluso ao comprar a placa) como unidade de armazenamento. Possui dois conectores de expansão de 46 pinos que podem fornecer diferentes conexões e barramentos como SPI, I2C, GPIO, LCD, HDMI, VGA, etc. Você pode alimentá-lo através de uma fonte externa ou pela porta USB, vizinho a porta Ethernet. Através da porta externa o processador dele trabalha até 720MHz e pela porta USB até 550MHz. A porta USB também fornece conexão serial com a placa.


2. Software

           Alimente o BeagleBone diretamente com o cabo USB, ou ligue uma fonte externa de 5V. O led de Power irá acender, e os leds USER0 e USER1 começarão a piscar. O BeagleBone será identificada na sua máquina de desenvolvimento como um dispositivo de armazenamento, como se fosse um pendrive. Você verá um dispositivo chamada BEAGLE_BONE com um monte de arquivos, incluindo as imagens do bootloader e do kernel, documentação e drivers para outros sistemas operacionais.



          O primeiro passo é abrir o arquivo README.html no seu navegador e dar uma lida. Este arquivo contém algumas orientações gerais sobre o funcionamento do BeagleBone. Neste momento, a distribuição Angstrom que vem com a placa já esta rodando e pode ser acessado de diversas formas
            No próximo post irei mostrar um passo a passo sobre como configurá-lo, instalar drivers e etc, e testar um primeiro programa (piscar um led) no BeagleBone.




Teste com Robô Lego Mindstorms NXT

              Bom galera, hoje vim aqui para divulgar um vídeo que fizemos com o teste do Robô Lego Mindstorms Segue Faixa para realizar o percurso mostrado no vídeo, o mesmo foi montado por Fernandes Mathias, e filmado por mim pelo celular no laboratório de pesquisa do IFPB - GYNPA (Grupo de Inovação da Paraíba).



               Espero que vocês gostem e logo logo estarei colocando mais vídeos interessantes, comentem!

Introdução - Arduino

1. Introdução

             O Arduíno é uma ferramenta de desenvolvimento “open source”, tendo surgido de um projeto acadêmico. Como ferramenta é usualmente associado à filosofia de “Physical Computing”, ou seja, ao conceito que engloba a criação de sistemas físicos através do uso de Software e Hardware capazes de responder a entradas vindos do mundo "real".
             Poderíamos dizer que o Arduíno é simplesmente uma peça de Hardware ou um Software de desenvolvimento, mas é muito mais que isso. Devido ao sucesso que tem vindo a alcançar ao longo do tempo, existe uma enorme comunidade de utilizadores/seguidores em todo o Mundo. As razões para tal sucesso baseiam-se no seu baixo custo, dadas as suas funcionalidades, a simplicidade na utilização e a possibilidade de utilização em vários sistemas operacionais, como o Windows, Macintosh OS e Linux, capacidade essa denominada por “Cross-platform”.
        O estudo do Arduíno abre as portas à compreensão de uma importante ferramenta de desenvolvimento através de uma aprendizagem simples mas dedicada, onde podemos fazer desde robôs à domótica entre muitas outras aplicações, bastando simplesmente ter imaginação. 

2. Hardware vs Software

                Antes de começar a trabalhar propriamente com esta plataforma de desenvolvimento, torna-se necessário começar por perceber o seu funcionamento, para tal descrever-se-á neste capítulo o funcionamento do Arduino, em termos de Hardware e Software.
             Espera-se assim de certa forma “iluminar o caminho” neste estudo, fazendo com que toda a percepção do assunto a tratar se torne mais simples, ou seja, serão aqui apresentadas as bases para a sua compreensão.

2.1 Hardware

                 De seguida, far-se-á uma exposição do tema incidindo na placa Arduíno Duemilinove e Uno, em tudo semelhante em termos de utilização à placa de desenvolvimento Arduíno Mega. Contudo verificam-se pequenas diferenças como a diferença na sua capacidade de armazenamento (memória disponível), o número de pinos analógicos, o número de pinos digitais e as dimensões.
          O Arduíno Duemilinove apresenta-se com o microcontrolador ATMega168 ou ATMega328, o Arduíno Uno também apresenta o ATMega328, enquanto o Arduíno Mega apresenta-se com um microcontrolador ATMega1280, conforme figuras 1, 2 e 3.


Figura 1 - Arduíno Duemilanove
Figura 2 - Arduíno Uno

Figura 3 - Arduíno Mega



2.1.1 Tipos e Quantidade de Memória Disponíveis

               Uma das principais diferenças em termos de capacidade nos diferentes modelos disponíveis reside na memória do microcontrolador utilizado. Vamos começar por analisar essa diferença, já que representa um fator crucial no seu desempenho.
              As quantidades de memória disponíveis nos diversos modelos de microcontrolador utilizados pelo Arduíno são os seguintes:
Tabela 1 – Quantidade de memória disponível em cada modelo de microcontrolador
Fonte: Retirado do datasheet dos respectivos microcontroladores

              Como podemos constatar pela análise da tabela 1, o ATMega1280 leva clara vantagem em termos de capacidade. Uma das memórias mais “importantes”, além da memória Flash que permite o armazenamento do bootloader e do programa – sketch - a ser executado, é a memória SRAM (Static Random Access Memory), que se comporta de forma semelhante à RAM nos nossos computadores. É na SRAM que o programa, ao ser executado, cria e modifica todo o tipo de variáveis necessárias à sua execução. Este tipo de memória apenas mantém os dados enquanto se encontra alimentada, o mesmo não acontece com a memória EEPROM (Electrically-Erasable Programmable Read-Only Memory) e memória Flash.
           A memória Flash é nos dias de hoje comumente utilizada em cartões de memória, pendrives, memória de armazenamento em câmaras de vídeo, telemóveis, PDA (Personal Digital Assistant), entre muitas outras aplicações. Podemos resumir o tipo de memória, em função da sua utilização, da seguinte forma:


Tabela 2 – Utilização dada pelo Arduíno (utilizador) aos diversos tipos de memória
Fonte: Site oficial Arduíno (www.arduino.cc)

2.2 Software

            O Software de desenvolvimento Arduíno é bastante fácil e intuitivo de utilizar, não havendo qualquer nível de dificuldade. Foram estruturados passos de forma a simplificar a sua utilização e instalação.
           1- O 1º passo consiste em efetuar o download do respectivo software de desenvolvimento, através do site oficial Arduíno (www.arduino.cc).


          A última versão disponível aparecerá na parte superior da página, como mostra a figura abaixo, sendo só necessário escolher a versão apropriada para o sistema operacional estamos trabalhando. Atualmente, a versão mais atual é a 1.0.3, mas quando estiver a ler este tutorial muito provavelmente já deve haver uma versão mais avançada.

            2- O 2º passo consiste em descompactar o ficheiro “.ZIP” (versão Windows e Mac OS) ou “.tgz” (versão Linux) para uma pasta à sua escolha. Escolha uma pasta de destino final, pois o programa não necessita de instalação. Utilizando o sistema operacional Windows, o conteúdo da pasta deverá ser o seguinte:

          3- O 3º passo consiste em ligar a placa de desenvolvimento ao computador e instalar os drivers FTDI, os drivers encontram-se disponíveis na pasta do Software Arduíno - que descompactou no passo 2 - ou se preferir pode sempre retirar os drivers mais atualizados do site oficial FTDI - http://www.ftdichip.com/.
           4- O 4º passo consiste em configurar a porta serial a ser utilizada e qual o tipo de modelo Arduíno  que nos encontramos a utilizar. Para tal, necessitamos de abrir o Software de desenvolvimento e escolher na barra de menus a opção “Tools”.
            5- O 5º e último passo para a utilização do Software consiste em elaborar o seu Sketch, compilar(verificar) e, caso não tenha erros, fazer o uploading para a placa de desenvolvimento Arduíno.
Botão Verify/ Compile


Botão Upload

           No próximo post, irei fazer o primeiro programa, piscar led, o famoso alô mundo! (da programação) dos microcontroladores, mostrando passo a passo desde as linhas de programação, até como fazer upload e montar na protoboard.