sexta-feira, 20 de julho de 2012

MAIS ARDUINO, O QUE É E O QUE ELE FAZ!!!


Tecnicamente, o Arduino é uma controladora lógica programável. Oficialmente, porém, é uma plataforma de prototipagem eletrônica aberta. Mas o que isso significa?
Para eu ou você, é como um pequeno computador o qual você pode programar para fazer coisas e que interage com o mundo através de sensores eletrônicos, luzes e motores. Em essência, ele deixa projetos eletrônicos complexos acessíveis a qualquer um — dessa forma artistas e pessoas criativas podem concentrar-se em em transformar suas ideias em realidade. É a ferramenta de “fuçar” definitiva.
Arduino é uma plataforma de prototipagem eletrônica aberta baseada em hardware e software flexíveis e fáceis de usar. É destinada a artistas, designers, hobbistas e a qualquer um interessado em criar objetos ou ambientes interativos.

O que você pode fazer com ele?

Antes de falarmos sobre o que faz do Arduino um dispositivo revolucionário, acredito ser uma boa mostrar a você alguns dos meus projetos favoritos feitos com o Arduino.

Maker-Bot

Semana passada mostramos o Marker-Bot, uma impressora 3D. Bem, ele usa alguns Arduinos para controlar coisas como ejetar o plástico derretido do cabeçote da impressora até toda a movimentação.

Puff, o dragão mágico lutador robô

Todos os tipos de robôs são fortes candidatos a serem feitos com Arduino, mas este aqui é o mais engraçadinho que eu já vi. Usando um esquema básico de robô, dois motores e dois sensores de luz, esse rapazinho é capaz de encontrar uma fonte de calor, ir até ela e apagar o fogo — tudo de forma autônoma*.
* Autônoma significa que ele faz tudo por conta própria, sem controle humano.

Harpa de lasers

Uma explosão sensacional de sons e lasers — o que mais no mundo você poderia querer?

Tweet padeiro

Uma maneira simples de dizer aos seus clientes que o pãozinho acabou de sair do forno, o BakerTweet tem um dial de seleção para escolher o tipo de pão e um botão para Tweetar! Acredito que você concorde que este é um dos usos mais singulares do Arduino.

Cubos de LED

A melhor maneira de explicar este aqui é assistindo ao vídeo do (extremamente belo) cubo de LEDs 8x8x8 (isso dá 256 LEDs) totalmente controlado por um Arduino. Uau, esse com certeza vai para a minha to-do list, junto com outras 20 coisas que quero fazer primeiro! (O nível de dificuldade é mais elevado, vale dizer)

Diversão e jogos à parte, o que exatamente faz do Arduino algo tão especial? Existem outras controladoras programáveis por aí. E então?

Open source

Hardware e software são abertos (open source) — os esquemas estão disponíveis online, então se você não quiser comprar um Arduino pré-montado, sinta-se livre para comprar os componentes e fazê-lo você mesmo. Existem até mesmo clones que funcionam da mesma forma. Tenha em mente, claro, que comprando o dispositivo original você ajuda os criadores e o desenvolvimento futuro do Arduino.
Esquema completo do Arduino.
Quer fazer o seu próprio Arduino?

Conectividade

Sendo uma peça de hardware, o Arduino pode operar de forma independente (como um robô), conectado a um computador (desse modo dando ao computador acesso às informações dos sensores do mundo exterior e provendo feedback) ou conectado a outro Arduino ou outro equipamento eletrônico ou chips de controle. Praticamente qualquer coisa pode ser conectada e a única limitação são sua imaginação e boa vontade em dispensar algum tempo e esforço para aprender algo novo, além da disponibilidade de componentes. Se você pode pensar em algo, o Arduino pode fazê-lo.
Arduino conectado via USB.
Arduino e suas infinitas possibilidades de conexão.

Riqueza de suporte

Existem milhares de pessoas e organizações por aí engajadas no Arduino. Como resultado disso, se você estiver sem ideias, existem sempre algum projeto pré-codificado para construir, existem sempre novas maneiras de aprender. É, também, muito fácil começar.
Placa de LED mostrando 'Hello world... I love arduinos'.
'Hello world...' feito com Arduino.

Versatilidade e custo

Uma unidade oficial completa custa US$ 50 — muito menos que outras plataformas micro controladas, o que faz esses pequenos milagres da eletrônica serem acessíveis a hobbistas e instituições de ensino.
A linguagem de programação com a qual você trabalha é incrivelmente simples e deve ser familiar a qualquer um que tenha experiência com Java ou linguagens similares. (Ela é, na realidade, baseada na Processing)
O Arduino ainda é uma fantástica ferramenta de aprendizagem, com a qual você pode experimentar com eletrônicos e aprender as fundações. Na realidade, se tivéssemos isso quando eu estava na escola, tenho certeza de que teria virado um engenheiro de hardware.
Quer saber mais? Dê uma olhada neste curto documentário sobre o Arduino que vai um pouco mais fundo dos bastidores e motivações da criação do projeto. Muito dele está em italiano porque, se o nome não lhe deu a pista, o projeto teve início na Itália.

É com muita alegria que lhes digo que o meu Arduino chegou ontem e, com alguns minutos, consegui ajustar o aplicativo de demonstração padrão em LED “hello world” com uma sirene que toca em intervalos aleatórios. Foi feito em, literalmente, alguns minutos.

O que é Arduino?



O que é um Arduino?
Arduino é uma ferramenta para criar computadores que podem sentir e controlar mais o mundo que seu PC. Ele é uma plataforma física de computação de código aberto baseado numa simples placa microcontroladora, e um ambiente de desenvolvimento para escrever o código para a placa.
O Arduino pode ser usado para desenvolver objetos interativos, admitindo entradas de uma séria de sensores ou chaves, e controlando uma variedade de luzes, motores ou outras saídas físicas. Projetos do Arduino podem ser independentes, ou podem se comunicar com software rodando em seu computador (como Flash, Processing, MaxMSP.). Os circuitos podem ser montados à mão ou comprados pré-montados; o software de programação de código-livre pode ser baixado de graça.
A linguagem de programação do Arduino é uma implementação do Wiring, uma plataforma computacional física semelhante, que é baseada no ambiente multimídia de programação Processing.
Como eu posso obter um Arduino?
Você pode comprar de um dos distribuidores listados na página de compras. Se você preferir montar o seu próprio, veja oCircuito Serial Arduino de Lado Único, que pode ser facilmente impresso e montado.
Quem faz os circuitos do Arduino?
A maioria dos circuitos oficiais do Arduino são fabricados pela SmartProjects na Itália. O Arduino Pro, Pro Mini e LilyPad são fabricados pela SparkFun Electronics (uma companhia estado-unidense). O Arduino Nano é fabricado pela Gravitech (também uma companhia estado-unidense).
O Arduino é de código aberto?
Sim. O código do ambiente Java é liberado sob a licença GPL, as bibliotecas microcontroladoras C/C++ sob LGPL, e os esquemas e arquivos CAD sob Creative Commons Attribution Share-Alike.
Eu quero projetar minha própria placa. O que devo fazer?
Os projetos de referência do Arduino estão disponíveis na página de hardware. Eles são licenciados sob Creative Commons Attribution Share-Alike, portanto você é livre para usá-los e adaptá-los às suas necessidades próprias sem precisar pedir autorização ou pagar taxas. Se você pretende criar algo de interesse da comunidade, nós o encorajamos a discutir suas ideias no fórum de desenvolvimento de hardware para que usuários em potencial possam dar sugestões.
Como eu devo nomear minhas placas?
Se você está construindo sua própria placa, invente seu próprio nome! Isso permitirá que as pessoas identifiquem seu produto e o ajude a cosntruir uma marca. Seja criativo: tente sugerir para que as pessoas usarão a placa, ou enfatizar seu formato, ou simplesmente um nome qualquer que seja legal. “Arduino” é uma marca comercial da equipe Arduino e não deve ser utilizado em variantes não oficiais.. Se você quer que seu projeto seja incluído na lista oficial de produtos Arduino, por favor, veja o documento Então você quer fazer um Arduino e entre em contato com a equipe Arduino. Note que não queremos restringir o uso do sufixo “duino”, ele causa arrepios nos italianos da equipe (aparentemente isso soa terrível); talvez você queira evitá-lo.
Posso construir um produto comercia baseado no Arduino?
Sim, com as seguintes condições:
  • Anexar fisicamente um circuito Arduino dentro de um produto comercia não requer que você divulgue ou torne público qualquer informação de seu projeto.
  • Derivações do projeto de um produto comercial dos arquivos Eagle para um circuito Arduino requerem que você libere as modificações sobre a mesma licença Creative Commons Attribution Share-Alike. Você pode fabricar e vender o produto resultante.
  • Usar o núcleo e bibliotecas do Arduino para o firmware de um produto comercial não requer que você publique o código fonte do firmware. A licença LGPL, no entanto, requer que você disponibilize arquivos que permitam a religação do firmware com versões atualizadas do núcleo e bibliotecas do Arduino. Qualquer modificação no núcleo ou bibliotecas deve ser liberada sob licença LGPL.
  • O código fonte do ambiente do Arduino é coberto pela licença GPL, que requer que quaisquer modificações sejam de código-livre e sob a mesma licença. Ela não proíbe a venda de derivações ou sua inclusão em produtos comerciais.
Em todos os casos, os requerimentos exatos são determinados pela licença aplicável. Além disso, veja perguntas anteriores para mais informações do uso do nome “Arduino”.
Como posso rodar o ambiente Arduino no Linux?
Veja instruções para Ubuntu LinuxDebian LinuxGentoo LinuxLinux, ou Linux no PPC. Este tópico tem mais informações. Ou ainda, você pode usar o Arduino via linha de comando, sem precisar instalar o Java.
Posso programar o circuito do Arduino em C?
De fato, você já programa; a linguagem do Arduino é meramente um conjunto de funções C/C++ que podem ser chamadas em seu código. Seu esboço sofre pequenas mudanças (como geração automática de protótipos de funções) e então é passado diretamente para um compilador C/C++ (avr-g++). Todas as construções padrão C e C++ suportadas pelo avr-g++ devem funcionar no Arduino. Para mais detalhes, veja a página Processo de construção do Arduino.
Posso usar um ambiente diferente para programar o Arduino?
É possível compilar programas para o Arduino usando um Makefile e a linha de comando. Se você consegue fazer seu ambiente rodar, então você está pronto.
Posso usar um Arduino sem o software Arduino?
Claro. Ele é apenas uma implementação de um circuito AVR, você pode usar diretamente AVR C or C++ (com avr-gcc e avrdude ou AVR Studio) para programá-lo.
Posso usar o software do Arduino com outros circuitos AVR?
Sim, embora seja necessário modificar as bibliotecas do núcleo do Arduino. Veja a página de outros hardwares para detalhes.
Solução de problemas
Estas perguntas foram movidas paraa seção de solução de problemas do guia do Aruino.