Arduino - 01 - Apresentação Geral




Placa Arduino



A PLATAFORMA ARDUINO E SUA EVOLUÇÃO

Desde que o Arduino Project teve início em 2005, mais de 150.000 placas Arduino foram vendidas em todo o mundo. O número de placas-clone não oficiais sem dúvida supera o de placas oficiais, assim, é provável que mais de 500 mil placas Arduino e suas variantes tenham sido vendidas. Sua popularidade não para de crescer, e cada vez mais pessoas percebem o incrível potencial desse maravilhoso projeto de fonte aberta para criar projetos interessantes rápida e facilmente, com uma curva de aprendizagem relativamente pequena.

A maior vantagem do Arduino sobre outras plataformas de desenvolvimento de microcontroladores é a facilidade de sua utilização; pessoas que não são da área técnica podem, rapidamente, aprender o básico e criar seus próprios projetos em um intervalo de tempo relativamente curto.  Artistas, mais especificamente, parecem considera-lo a forma perfeita de criar obras de arte interativas rapidamente, e sem conhecimento especializado em eletrônica. Há uma grande comunidade de pessoas utilizando Arduinos, compartilhando seus códigos e diagramas de circuito para que outros os copiem e modifiquem. A maioria dessa comunidade também está muito disposta a auxiliar outros desenvolvedores. Você descobrirá que o Fórum do Arduino é o melhor local para buscar por respostas rápidas.

Entretanto, apesar da enorme quantidade de informação disponível aos iniciantes na Internet, a maioria desses dados está espalhada em várias fontes, fazendo com que seja complicado rastrear as informações necessárias. Desta forma, eu irei tentar aos poucos, reunir as informações que eu julgo importantes e disponibilizar aqui na medida do possível para os alunos e curiosos que acessarem minha página.

Arduino Duemilanove

DE QUE VOCÊ NECESSITA?

Para ser capaz de acompanhar os projetos que eu irei disponibilizar aqui, eu sugiro que você compre apenas alguns LEDs inicialmente, mais na frente pretendo disponibilizar alguns exemplos de programação onde teremos que utilizar alguns componentes mais complexos como um servo-motor ou display LCD por exemplo. No entanto, a utilização da placa Arduino é inevitável. Eu tenho um Arduino Mega, porém podemos utilizar o Uno que é o mais comum entre as placas disponíveis no mercado. Assim como o Arduino Uno, temos várias variantes de placas-clone, como o Freeduino, Sanguino, Roboduino, Wayduino ou qualquer uma das outras variantes “duino”. Todas são compatíveis com o IDE do Arduino, com seus Shields e com tudo o mais que você utilizar com uma placa Arduino oficial. Lembre-se que o Arduino é um projeto de código aberto e, portanto, livre para criação de clones ou de outras variantes. Entretanto, se você deseja apoiar a equipe de desenvolvimento da placa Arduino original, adquira uma placa oficial de um dos distribuidores reconhecidos. Em setembro de 2010, a mais recente variação da placa Arduino era a Arduino Uno.

Você deverá ter acesso à Internet para fazer o download do IDE (Integrated Development Environment, ou Ambiente de Desenvolvimento Integrado) do Arduino – o software utilizado para escrever seu código.

A página Central do Arduino é http://arduino.cc/
Temos também o link de Download do IDE do Arduino nesta página, ou mais especificamente em: http://arduino.cc/en/Main/Software
Nesta página basta você selecionar o Sistema Operacional que está utilizando e baixar a IDE.

Recomendo também você utilizar uma mesa bem iluminada, ou se outra superfície plana para dispor seus componentes; essa mesa deve está próxima de seu PC ou laptop para permitir o upload do código para o Arduino. Lembre-se que você está trabalhando com eletricidade (ainda que uma corrente contínua de baixa tensão); portanto uma superfície de metal deverá ser coberta por um material não condutivo, como uma toalha ou papel, antes que você posicione seus materiais. Da mesma forma, será interessante ter, ainda que não seja essencial, um par de alicates para cortar fios, alicates de ponta fina, e um desemcapador de fios, detesto ver estudante de curso técnico desemcapando fios com os dentes, isso é tecnicamente incorreto, todos nós sabemos disso. Um caderno e uma caneta também serão úteis para esborçar diagramas aproximados, detalhar conceitos e projetos etc.

Apesar de tudo isso, acredito que os elementos fundamentais para aprender sobre Arduino será entusiasmo e a disposição em aprender. Não adianta você tentar aprender sobre isto já que está fazendo por obrigação. O Arduino foi projetado como uma forma simples e barata de você se envolver com eletrônica de microcontroladores, e nada é difícil demais, desde que você esteja disposto a, ao menos, tentar.

O QUE EXATAMENTE É UM ARDUINO?

A Wikipédia afirma que “Um Arduino é um microcontrolador de placa única e um conjunto de software para programá-lo. O Hardware consiste em um projeto simples de hardware livre para o controlador, com um processador Atmel AVR e suporte embutido de entrada/saída. O Software consiste de uma linguagem de programação padrão e do bootloader que roda na placa.”

Em termos práticos, um Arduino é um pequeno computador que você pode programar para processar entradas e saídas entre o dispositivo e os componentes externos conectados a ele. O Arduino é o que chamamos de plataforma de computação física ou embarcada, ou seja, um sistema que pode interagir com seu ambiente por meio de hardware e software. Por exemplo, um uso simples de um Arduino seria para acender uma luz por certo intervalo de tempo, digamos, 30 segundos, depois que um botão fosse pressionado. Nesse exemplo, o Arduino teria uma lâmpada e um botão conectado a ele. O Arduino aguardaria pacientemente até que o botão fosse pressionado; uma vez pressionado o botão, ele acenderia a lâmpada e iniciaria a contagem. Depois de contados 30 segundos, apagaria a lâmpada e aguardaria um novo apertar do botão. Você poderia utilizar essa configuração para controlar uma lâmpada em um closet, por exemplo.

Esse conceito poderia ser estendido pela conexão de um sensor, como um sensor de movimento PIR, para acender a lâmpada quando ele fosse disparado. Esses são alguns exemplos simples de como você poderia utilizar um Arduino.

O Arduino pode ser utilizado para desenvolver objetos interativos independentes, ou pode ser conectado a um computador, a uma rede, ou até mesmo à Internet para recuperar e enviar dados do Arduino e atuar sobre eles. Em outras palavras, ele pode enviar um conjunto de dados recebidos de alguns sensores para um site, dados estes que poderão, assim, ser exibidos na forma de um gráfico.

O Arduino pode ser conectado a LEDs, displays (mostradores) de matriz de pontos, botões, interruptores, motores, sensores de temperatura, sensores de pressão, sensores de distância, receptores GPS, módulos Ethernet ou qualquer outro dispositivo que emita dados ou possa ser controlado. Uma pesquisa na Internet revelará muitos outros projetos em que um Arduino foi utilizado para ler dados e controlar uma enorme quantidade de dispositivos.

A placa do Arduino é composta de um microprocessador Atmel AVR, um cristal ou oscilador (relógio simples que envia pulsos de tempo em uma frequência especificada, para permitir sua operação na velocidade correta) e um regulador linear de 5 volts. Dependendo do tipo de Arduino que você utiliza, ele também pode ter uma saída USB, que permite conectá-lo a um PC ou Mac para upload ou recuperação de dados. A placa expõe os pinos de entrada/saída do microcontrolador, para que você possa conectá-los a outros circuitos ou sensores.

ARDUINO UNO X ARDUINO DUEMILANOVE

A mais recente placa do Arduino, a Uno, difere das versões prévias por não utilizar o chip FTDI, que conduz a USB para a serial. Em vez disso, ela utiliza um Atmega8U2, programado como um conversor USB para serial. Isso confere à placa muitas vantagens quando comparada à sua predecessora, a Duemilanove. Primeiro, o chip Atmega é muito mais barato que o chio FTDI, diminuindo o preço das placas. Segundo, e mais importante, ele permite que o chip USB tenha seu firmware atualizado, para que seu Arduino seja exibido em seu PC como outro dispositivo, tal como o mouse ou joystick de jogos. Isso abre uma série de novas possibilidades para o Arduino. Infelizmente, a mudança para esse tipo de novo chip USB tornou muito mais difícil para fabricantes de clones criarem clones do Arduino Uno, o que resulta na compra apenas do produto “original da Itália” tornando o custo um pouco maior se comparado a supostos clones.

IDE

Para programar o Arduino (fazer com que ele faça o que você deseja) você utiliza o IDE do Arduino, um software livre no qual você escreve o código na linguagem que o Arduino compreende (baseada na linguagem C). O IDE permite que você escreva um programa de computador, que é um conjunto de instruções passo a passo, das quais você faz o upload para o Arduino. Seu Arduino, então, executará essas instruções, interagindo com o que estiver conectado a ele. No mundo do Arduino, programas são conhecidos como sketches (rascunho ou esborço).

A linguagem do arduino é uma DSL (domain specific language) inspirado no C e C++, com diversos atalhos para você não ter muita dificuldade ao programar as portas digitais, analógicas e outros recursos de um microprocessador como os Atmegas.


Plataforma e Comércio

O hardware e o software do Arduino são ambos de fonte aberta, o que significa que o código, os esquemas, o projeto, etc. podem ser utilizados livremente por qualquer pessoa e com qualquer propósito. Dessa forma, há muitas placas-clone e outras placas com base no Arduino disponíveis para compra, ou que podem ser criadas a partir de um diagrama. De fato, nada impede que você compre os componentes apropriados e monte seu próprio Arduino em uma matriz de pontos ou em sua PCB (Printed Circuit Board, placa de circuito impresso) feita em casa. A única ressalva que a equipe do Arduino impõe é que você não utilize a palavra “Arduino”. Esse nome é reservado à placa oficial. Daí a existência de nomes para as placas-clone como Freeduino, Roboduino etc.

Como os projetos são de fonte aberta, qualquer placa-clone é 100% compatível com o Arduino e, dessa forma, qualquer software, hardware, shield etc. também será 100% compatível com o Arduino Genuino.

Shields

O Arduino também pode ser estendido utilizando os Shields (escudos), que são placas de circuito contendo outros dispositivos (por exemplo, receptores GPS, Displays de LCD, módulos de Ethernet etc.), que você pode simplesmente conectar ao seu Arduino para obter funcionalidades adicionais. Os Shields também estendem os pinos até o topo de suas próprias placas de circuito, para que você continua a ter acesso a todos eles. Você não tem de utilizar um shield se não quiser; pode fazer exatamente o mesmo circuito utilizando uma Protoboard, Stripboard, Veroboard, ou criando sua própria PCB.

Tipos de Placas

Há muitas variantes diferentes do Arduino. A versão mais recente é o Arduino Uno. A versão anterior, a popular Duemilanove (2009 em italiano), é a placa que você provavelmente encontrará na vasta maioria dos projetos para Arduino na Internet. Você também pode obter versões Mini, Nano e Bluetooth do Arduino. Outra nova edição aos produtos disponíveis é o Arduino Mega 2560, esse eu costumo mostrar para meus alunos também, não resisti à tentação e comprei um. Ele oferece mais memória e um número maior de pinos de entrada/saída. As novas placas  utilizam um novo bootloader, o Optiboot, que libera mais de 1,5KB de memória flash e permite uma inicialização mais rápida.

Talvez o Arduino mais versátil, e daí o mais popular, seja o Arduino Uno (ou seu predecessor, o Duemilanove). Isso ocorre porque ele utiliza um chip padrão de 28 pinos, ligado a um soquete de circuito integrado (CI). A beleza desse sistema é que, se você criar alguma coisa com um Arduino e depois quisar transformá-lo em sua própria placa de circuito, em seu dispositivo personalizado. Dessa forma, você tem um dispositivo embarcado personalizado, o que é muito bacana. Essa possibilidade de mover o CI, não acontece no Arduino Mega, pois este último tem o chip soldado na placa de forma BGA.

Então, com um pouco mais de investimento, você pode substituir o chip AVR em seu Arduino por um novo. Note que o chip deve ser pré-programado com o Arduino Bootloader (Software programado no chip para habilitá-lo a utilizar o IDE do Arduino), mas você pode comprar um AVR Programmer para gravar o bootloader você mesmo, ou comprar um chip já programado; a maioria dos fornecedores de componentes para o Arduino oferece essas opções. Também é possível programas um chip utilizando um segundo Arduino; não é difícil encontrar instruções online nesse sentido.

Se você fizer uma pesquisa online por “Arduino”, ficará surpreso com o grande número de sites dedicados ao Arduino, ou que apresentam projetos interessantes criados com ele. O Arduino é um dispositivo incrível, e possibilitará que você crie de tudo, desde obras de arte interativas até robôs. Com um pouco de entusiasmo para aprender como programas um Arduino e fazê-lo interagir com outros componentes, assim como tendo um pouco de imaginação, você poderá construir tudo que quiser.

No próximo post, eu irei falar um pouco sobre a IDE do Arduino, suas funcionalidades, importância e como utilizar no dia-a-dia de modo a desenvolver projetos interessantes. Adiante,  irei também dar introdução à linguagem C com alguns exemplos e estruturas..

0 comentários: