You are on page 1of 7

O Arduino e o seu ambiente de desenvolvimento foram desenvolvidos com intuito de permitir que iniciantes nas reas de electrnica e programao

pudessem facilmente iniciar a sua aprendizagem criando os seus prprios projectos. Com o Arduino possvel criar projectos que controlam ou respondem luminosidade, som, movimento e vibrao entre outros. O Arduino tem sido utilizado para desenvolver alguns projectos espectaculares, desde instrumentos musicais, robs, esculturas de luz, jogos, at moblia, roupa e acessrios interactivos. Esta plataforma utilizada em muitos programas educativos pelo Mundo fora, especialmente em cursos superiores ligados a design e arte, em que os utilizadores querem dar forma aos seus prottipos mas no necessitam, e muitas vezes nem pretendem, ter um conhecimento profundo sobre os detalhes tcnicos em que assentam as suas criaes. Porque foi desenvolvido desde o incio tendo como publico alvo pessoas no tcnicas, o ambiente de desenvolvimento (software), tem vrios exemplos de cdigo que demonstram de maneira simples como usar as vrias funcionalidades do Arduino. Apesar de ser de utilizao fcil e a curva de aprendizagem facilitada pelos numerosos exemplos, o Arduino tem a mesma sofisticao ao nvel de hardware, que aquela empregue por engenheiros no desenvolvimento de sistemas embebidos. Quem j tem experincia tambm beneficiado pela agilidade das funcionalidades de desenvolvimento e pela facilidade de rpida implementao de ideias.
Arduino, refere-se no s ao hardware mas tambm ao software/ambiente de desenvolvimento, os dois partilham o mesmo nome, o que por vezes d origem a confuses, e utilizados em conjunto permitem criar, como j referido, aplicaes sensveis e capazes de controlar o mundo que as rodeia. Tanto o software(gratuito) como o hardware so open-source e compatveis com varias plataformas/sistemas operativos. Ao contrrio do software o hardware no gratuito mas tem um preo acessvel e possvel construir a prpria placa, uma vez que o hardware open-source. A juntar a tudo isto, existe ema vasta comunidade espalhada pelo Mundo que procura dar suporte atravs dos fruns e wikis.

Software Arduino
Os ficheiros de cdigo (programa), com que se programa o Arduino, so desenvolvidos no ambiente de desenvolvimento integrado disponibilizado pelo software Arduino. A estes ficheiros d-se o nome de Sketches e tm extenso .pde. O ambiente de desenvolvimento integrado permite criar e editar cdigo e convert-lo por fim em instrues que o Arduino entenda (cdigo mquina). O ambiente de desenvolvimento tambm responsvel pela transferncia do cdigo para o Arduino, um processo chamado uploading.

Arduino Hardware
A placa arduino , onde o cdigo executado, controla e reage a tenses elctricas, sendo conectados componentes elctricos ou electrnicos que lhe permitem interagir com o ambiente(no sentido lato) envolvente. Estes componentes podem ser sensores ou actuadores, que expandem as capacidades da placa e a sua habilidade de interagir e modificar o mundo. Podem ser conectados interruptores, acelermetros, sensores de distncia por ultra-sons ou infra vermelhos, piezoelctricos, sensores de fora e presso, entre muitos outros. J em termos de actuadores podem ser ligados LEDs, altifalantes, motores de baixa potncia, monitores LCD e mesmo cargas de alta potncia com auxlio de rels ou transstores de potncia. Existe uma grande variedade de placas oficiais compatveis com o software Arduino, bem como placas no oficiais produzidas por membros desta comunidade que so tambm elas compatveis. As mais populares contm um conector USB, que alimenta a placa e permite comunicar e programar a mesma.

Existem ainda placas to pequenas como um selo, como por exemplo Arduino Mini e Pro Mini, ou placas maiores como com mais opes de conexo, mais terminais de entrada/sada, e melhores processadores como por exemplo o Arduino Mega. Destacam-se ainda as placas LilyPad para aplicaes relacionadas com a rea txtil, a Fio pra projectos sem fios, e a Arduino Pro para aplicaes embebidas. H tambm placas no oficias, incluindo as seguintes: Arduino Nano, (http://store.gravitech.us/arna30wiatn.html) Bare Bones Board, placa de baixo custo(http://www.moderndevice.com/products/bbb-kit) Boarduino, placa de baixo custo compatvel com bread-board, Adafruit Industries (http://www.adafruit.com/) Seeeduino, Seeed Studio Bazaar (http://www.seeedstudio.com/) Teensy and Teensy++, placas pequenas etremamente versteis, PJRC (http://www .pjrc.com/teensy/) Est disponvel uma lista de placas compatveis com Arduino em : http://www.freeduino .org/.

Outra forte razo para a escolha do Arduino como placa de desenvolvimento, foi a quantidade enorme de expanses denominadas Shields que j foram desenvolvidas e ainda mais continuam a ser, e que permitem incrementar as funcionalidades bsicas de uma placa Arduino, isto , o Arduino Uno por exemplo no tem interface ethernet nem permite usar esse protocolo para comunicar, mas se se adicionar o Shield Ethernet, que compatvel pino-a-pino ento poder-se- tirar partido dessas funcionalidades.

Photo: John Boxall

Neste momento contam-se 259 shields aprovados, desenvolvidos por 110 fabricantes e o nmero continua a aumentar.

Photo: Narbotic Instruments

Este shield permite adicionar funionalidades MIDI e audio.

Photo: David Mellis

Este shield permite controlar motores DC. Apresenta-se em seguida um resumo do tipo de licenas destes Shields:

TIPO DE LICENA
Desconhecida CC BY-SA 3.0 CC BY-SA 2.5 Desconhecida / fechada TAPR Open Hardware License GPL v2 GPL v3 CC BY-SA 3.0 US CC BY-SA 2.5 AU CC BY 3.0 CC BY-NC-SA 3.0 BSD

NMERO
174 shields 35 shields 13 shields 12 shields 10 shields 3 shields 3 shields 2 shields 2 shields 2 shields 2 shields 1 shield

Caracteristicas: Baixo custo, desenvolvimento rpido e aberto Microcontrolador AVR ATmega 168 (328) C-Programming Programao via USB Alimentao via USB ou externa 16 kByte EEPROM 1 kByte RAM 16 MHz Clock Entradas/Sadas 14 entrada/sadas digitais 6 entradas analgicas 6 sadas PWM I2C-Bus, serial Bus (TX/RX)

INSTALAO A instalao do software Arduino no sistema operativo da Microsoft Windows 7, um processo bastante pacfico e documentado, e no ser por isso aqui abordado. A instalao em Linux , at pela quantidade de distribuies Linux existente e de sabores diferentes (distribuies baseadas em Debian ou baseadas em RedHat), bastante mais complexa. Requisitos para instalao em Linux (dependente da distribuio): Jdk da Sun Java verso 6 pelo menos Avr-gcc verso 4.3.2 ou maior, verses 4.4.x apresentam problemas (pacote compilador) o Verso 4.3.0. contm um erro grave referente a multiplicao de inteiros longos. Confirmar a verso com o comando "avr-gcc --version", e o Verses anteriores no suportam o ATmega328
avr-gcc-c++ avr-libc actualizar se necessrio

Estes so os pacotes mnimos que se devem ter instalado no sistema, antes de proceder instalao do software. A maneira como tal se consegue depende da distribuio em utilizao. A utilizao em Fedora (baseada em redhat) revelou-se mais problemtica do que em Ubunttu(baseada em debian), pelo que doravante sempre que se referir a Linux, se estar a considerar a distribuio Linux Ubuntu, salvo quando referido.

Bibliotecas/dependncias includas

O software Arduino inclui nos seus ficheiros duas dependncias: RXTX- uma biblioteca Java nativa, para comunicao com interfaces srie como as placas Arduino. Avrdude uma aplicao para fazer o upload de programas para microcontroladores AVR (como o caso).

O RXTX que acompanha o Arduino foi modificado para suportar perifricos no format /dev/ttyACM* que so usados pelas placas Arduino Uno e Mega 2560, que utilizam um ATmega8U2 ao invs de um chip FTDI para a comunicao srie. Infelizmente, o processo no linear e pode ser preciso fazer alguns ajustes nas bibliotecas do sistema operativo em questo, que por serem diferentes consoante a distribuio no sero abordadas. de referir apenas, que poder ser necessrio criar links dos dispositivos /dev/ttyACM* para /dev/ttyUSB*, e dos ficheiros librxtxSerial.so para od directrios lib do jdk. Ser tambm necessrio copiar o pacote jar RXTXcomm.jar para o directrio correcto.

Alteraes ao Hardware:

Sempre que se inicia o upload de um novo programa para o arduino, o mesmo reiniciado, o que evita que se tenha de pressionar o boto de reset sempre que se quer reprogramar o arduino. Tal, d-se no momento em que a porta srie do PC comea a transmitir dados. No entanto, como neste projecto se utiliza a porta srie para comunicao de dados, e pode ser necessrio, sendo sem dvida o mais correcto, fazer aquilo que comummente se designa por abrir a porta, antes de transmitir os dados, e por fechar a porta, depois dos dados transmitidos, libertando assim esse recurso, deve-se proceder alterao ilustrada na figura, ou seja colocar um condensador de uma ordem de grandeza a rondar os 10uF entre o pino Reset e a terra(GND). Existem ainda outras alternativas mas que requerem alterao definitiva da placa, envolvendo operaes de dessoldagem e soldagem de componentes SMD. Como evidente, quando o condensador estiver inserido, deixar de ser possvel programar o arduino. Existe ainda uma soluo via software que passa por desabilitar o pino DTR na porta srie, contudo uma soluo que depende da linguagem utilizada no programa e da plataforma. Esta problemtica ser aprofundada mais adiante.

Ciclo de Desenvolvimento Arduino

EDITAR

COMPILAR E FAZER UPLOAD

COMPILAR

ERRO?

SIM

UPLOAD

SIM

ERRO?

ERRO?

SIM

CORRER

You might also like