-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
1
Tutorial 1 Como Escolher meu Arduino
Aps descobrir o Arduino e perceber a infinidade de documentao e
projetos disponveis, a grande questo : Por qual modelo de Arduino
optar?
Vamos descobrir juntos?
Para deixar mais claro, primeiramente vamos elucidar o porque de
tantos modelos.
Era uma vez um cara que criou uma estrutura para um
microcontrolador AVR. Sua ideia era facilitar o acesso de indivduos
que no dominavam essa poderosa tecnologia que envolvia programao
complexa e muita eletrnica. E assim chamou a Bela de Arduino.
Mas no s isso ele tambm era open hardware e open software. E
esse novo conceito livre e aberto que acompanha as novas tendncias
das tecnologias e comunidades mais modernas, como; Linux, Firefox,
Wiki e outros que acabou por criar uma legio de
Arduinomaniacos.
Podemos dizer que o Arduino criou um BOOM! Como no surgimento
dos videogames. Ter um Atari era o motivo de tietagem dos vizinhos.
Bem Sendo Open software e Open Hardware o Arduino disponibilizou
toda sua documentao, assim, qualquer um poderia montar o seu em
casa, fazer modificaes bsicas e criar uma variao do Arduino que
melhor se adaptava ao seu projeto e publica-la para que outros
pudessem conhece-la. Ento foram surgindo Arduinos mais compactos
para projetos com pouco espao, j outros maiores para projetos com
maior necessidade de sensores e pinos. Tudo deu to certo que o
prprio Arduino passou a sofrer atualizaes, tanto em Hardware(na
placa do arduino) como em software(programas e bibliotecas que
escrevem o cdigo) e assim o Arduino passou de NG, para Diecimila,
depois para Duemilanove e em seguida UNO, Mega, Leonardo e por
ltimo o Due.
Estas mudanas de Hardware so evolues e adaptaes necessrias para
que a famlia de Arduinos possa se adaptar s diferentes necessidade
de nossas aplicaes e criaes.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
2
Normalmente essas mudanas no representam uma alterao drstica a
ponto de no se poder usar um ou o outro. Muito pelo contrrio.
priorizado a compatiblidade entre eles.
O mesmo acontece com o aplicativo de interface com o usurio IDE
(interface de desenvolvimento do Arduino) que constantemente
atualizada, trazendo consigo a compatibilidade para os novos
modelos.
IDE o software mnimo necessrio em seu computador para que se
possa programar seu Arduino.
Ciente de tudo isso agora fcil escolher o seu modelo de
Arduino.
Existem basicamente trs linhas de arduino que recomendo: -Os bem
pequenos: NANO -Os de tamanho Mdio e tradicional: Duemilanove ou
UNO -Os Grandes: Mega ou Due Recomendo ento: -Os Arduinos UNO ou
Duemilanove para projeto de tamanho padro como robs, interface IHM,
central de monitoramento, dentre outros. -Os Arduinos Mega ou Due
para projetos com maior demanda de memria, sensores e rels. -O
arduino NANO para projetos que precisam ser leves e ocupar pouco
espao. Possui a mesma configurao do Duemilanove/UNO mas em tamanho
reduzido.
Vamos as fotos e descries:
-Arduino NANO
Apresenta estrutura bem compacta Possui entrada para cabo Mini
USB J encontrado com Atmega328 Pesa aproximadamente: 6g Dimenso:
4,2 x 1,7 x 2,00cm
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
3
-Arduino Duemilanove
Apresenta estrutura de tamanho mdio Possui entrada para cabo USB
Possui Atmega328 Pesa aproximadamente: 28g Dimenso: 6,8 x 5,5 x 1,0
cm
-Arduino UNO
Apresenta estrutura de tamanho mdio Possui entrada para cabo
USB
Possui Atmega328 Pesa aproximadamente: 28g Dimenso: 6,8 x 5,5 x
1,0 cm
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
4
-Arduino UNO Italiano
Apresenta estrutura de tamanho mdio
Este modelo fabricado na Itlia. Tabm chamado de modelo original
por ser fabricado na Itlia onde foi criado o Arduino. Mas como Open
Source, no existe original. apenas um apelido.
Possui entrada para cabo USB Possui Atmega328 Pesa
aproximadamente:26g Dimenso: 6,8 x 5,5 x 1,0 cm
-Arduino MEGA 1280
Apresenta estrutura de tamanho relativamente grande. Apresenta
maior nmero de pinos: I/O, Analgicos, maior memria Possui entrada
para cabo USB Possui Atmega1280 Memria flash: 128k Pesa
aproximadamente: 35g Dimenso: 5,2x10x1,0 cm
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
5
-Arduino MEGA2560
Apresenta estrutura de tamanho relativamente grande. Apresenta
maior nmero de pinos: I/O, Analgicos, maior memria Possui entrada
para cabo USB Possui Atmega2560 Pesa aproximadamente: 33g Dimenso:
5,2x10x1,0cm
-Arduino MEGA DUE
O Arduino uma placa de microcontrolador baseado no Atmel SAM3X8E
ARM Cortex-M3 . a primeira placa Arduino baseada em um
microcontrolador de 32 bits de ncleo ARM. Ele tem 54 digitais de
entrada / sada (dos quais 12 podem ser usados como sadas PWM), 12
entradas analgicas, 4 UARTs (portas seriais de hardware), um relgio
de 84 MHz, uma conexo USB OTG capaz, 2 DAC (digital para analgico)
, 2 TWI, uma tomada de energia DC, um conector SPI, um conector
JTAG, um boto de reset e um boto de apagar.
a segunda gerao de Arduinos de alta capacidade de memria e
processamento.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
6
Algumas perguntas so frequentes, ento vamos a elas: -Qual a
diferena entre o Uno e o Duelimanove? O UNO a verso atualizada em
Hardware do Duemilanove. A grande modificao a substituio do chip
FTDI por um outro microcontrolador da Atmega que permite a gravao
do cdigo com uma velocidade maior(duas ou trs vezes maior que o
FTDI). O FTDI o componente responsvel pela comunicao do
arduino(Atmega328) com o compupador(porta COM) atravs do cabo USB.
-Qual a diferena entre o Uno e UNO Italiano? O Arduino Open Source
e pode ser fabricado em qualquer lugar. Os criadores do Arduino so
italianos e fabricam o modelo na Itlia assim o arduino UNO Italiano
muitas vezes chamado de original. Mas no ha diferena estrutural
entre os que so fabricados em outro local. A diferena fabrica
mesmo.
-Qual a diferena entre o Duemilanove/Uno e o MEGA? O Duemilanove
e o UNO so menores em nmero de portas entradas/sada tem menor
memria flash(que grava o cdigo). Entretanto mais leve e compacto
que o MEGA. Outra grande diferena que o chip Atmega DIP no
Duemilanove/UNO e isso permite retirar este chip e troca-lo por
outro em caso de danos ou para fazer um projeto sem o uso da
plataforma Arduino. No Mega o Atmega SMD e no permite fcil remoo e
troca do microcontrolador AVR, para isso deve conhecer as tcnicas
novas de solda em SMD.
-O arduino precisa de alimentao externa como uma fonte? O cabo
USB fornece energia para o arduino, no precisando de alimentao
externa. Mas tambm possvel alimentar o arduino sem o cabo USB pela
entrada de energia alternativa. Para projetos que demandam grande
carga (muita corrente) preciso usar uma fonte externa e circuito
para dar ganho de corrente.
-O arduino melhor que o PIC e o 8051? Sim, para os
microcontroladores de 8bits o Arduino mais rpido, possui maior
memria e instrues. Alm de tudo isso possui documentao open e uma
grande comunidade trocando informao.
-O Arduino a plataforma de desenvolvimento mais fcil para
iniciantes? Sim, sua estrutura foi pensada para facilitar ao mximo
a interao com novos usurios. Mas ao mesmo tempo permite que
desenvolvedores avanados usem essa plataforma.
- possivel usar o Arduino para fazer um rob? Sim, essa uma das
aplicaes mais frequentes.
- possvel usar o Arduino em projetos industriais ou em campo
aberto? Sim, o arduino amplamente usado em projetos diversos e bem
aceito tem todos os campos. Possui interao com painel solar,
permite alimentao com tenso da rede e opes de baixo consumo.
-Posso tirar o chip microcontrolador Atmega do arduino e por
outro? Sim, o arduino Duemilanove e UNO aceita o Atmega8, Atmega168
ou Atemga328. Entretanto preciso dar o bootloader do arduino no
chip novo para tudo funcionar perfeitamente.
-Quando compro o arduino ele j vai pronto? Sim, o arduino vai
pronto para uso. Basta espetar o cabo USB instalar os drives de
comunicao com a USB do seu PC e rodar.
- possvel gravar mais de uma vez o cdigo no arduino? Sim, o
nmero de gravaes no arduino muito grande, como o pendrive que
usamos no dia a dia: apaga escreve, apaga Costumo dizer que tende
ao infinito. Recomendo consultar o datasheet do atmega e conferir
os dados.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
7
Tutorial 2 Preparando seu Arduino para Gravar
Assim que estiver com o Arduino nas mos preciso fazer algumas
etapas simples para que tudo funcionar corretamente.
1- O Arduino usa um programa para fazer as gravaes dos cdigos.
Vai encontr-lo para baixar neste link: BAIXAR IDE do Arduino.
Faa o download da verso compatvel com seu PC. Se roda Windows,
Linux ou, MAC Perceba que ha verses de IDE anteriores a 1.0 E
importante lembrar que muitas bibliotecas no rodam nesta verso pois
modificaes mais drsticas foram feitas. Pode ser preciso usar a 022
que esta compatvel com cdigos mais antigos. Mas s uma questo de
tempo para tudo ficar padro no 1.0
BemFeito isso, basta descompactar o arquivo .zip e imediatamente
a interface de programao estar pronta para funcionar.
Clicando no cone principal teremos a tela abaixo:
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
8
A verso 1.0 apresenta uma verso um pouco diferente mas todas as
funcionalidades so iguais. Temos os cones principais:
Verify: Para Verificar se o programa est sem erros.
Upload: Carrega o programa no Microcontrolador. (Grava codigo no
Arduino)
Serial Monitor: Ativa a leitura da porta serial. (Mostra valores
numa tela especial)
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
9
2- Agora voc precisa preparar a sua IDE para a gravao do
arduino. Como existem vrios modelos de arduino voc deve informar
qual modelo esta usando. Para isso basta ir em Board depois
escolher a placa. 3- Outra configurao a ser feita informar a COM
(porta onde o cabo USB esta entrando no seu PC).
Para isso v em: Serial Port e escolha a que e referente ao seu
arduino. Note que se os drives do arduino no foram instalados
automaticamente pelo PC no aparecera a COM do Arduino. Para saber
se e a COM do arduino basta retirar o cabo USB e a opo COM deve
sumir.
Para saber como gravar os drives do arduino veja aqui: DOC: COMO
INSTALAR os DRIVES
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
10
Ento ao colar um cdigo tudo deve ficar assim:
Apos compilar (clicando em Upload ou Verify ) uma informao
aparece mostrando o tamanho do cdigo e o espao disponvel para mais
cdigo.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
11
Outra dica importante que ao clicar em uploud e o codigo for
gravado no arduino, os LEDs RX e TX que se encontram na placa
arduino devero piscar informando que o codido esta sendo carregado.
Obviamente o cabo USB deve estar ligado a placa Arduino e ao
PC.
Perfeito. Passando por estas etapas voce esta pronto para
iniciar seu primeiro projeto.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
12
Tutorial 3 Programando Attiny85 ou Attiny45 com Arduino
Video da configurao
J imaginou programar um Chip bem pequeno como os 555 que possuem
8pinos? Seria possvel levar as facilidades do Arduino e tecnologia
AVR para os projetos extremamente pequenos e ainda reduzir ao mximo
o custo. A Proposta ento usar o seu Arduino como uma ferramenta de
gravao dos Attiny45 ou Attiny85.\
possvel montar na protoboard ou mesmo montar a sua propria
sheild. Nesta aula aprenderemos como montar na matriz de contatos,
como programar e veremos um modelo de sheild.
Vamos mergulhar no mundo do Attiny?
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
13
Inicialmente temos um chip chamado Attiny com 8 pinos e a
primeira pergunta:
Ele igual ao Arduino?
No exatamente. O Arduino uma plataforma e possui um
microcontrolador diferente mas todos so do mesmo fabricante: a
ATMEL. Outra diferena que o Arduino precisa de bootloader, mas
Attiny no usa boot. Para fins prticos podemos imaginar o tiny como
um Arduininho, pois possui um menor nmero de pinos I/O, Analgicos e
tambm menor memria. Mas com este possvel montar robs, monitorar
sensores de temperatura, escrever num display de LCD, 7seg, dentre
outras aplicaes que so comuns para o Arduino padro.
Para esse projeto iremos usar:
1x Arduino qualquer modelo. 1x Attiny85 ou Attiny45 (O modelo
Attiny85 possui 8K de memria flash para cdigo e o 45 4K) 1x
Resistor 220R( pode ser entre 220R e 1K) 1x LED 1x Capacitor de
10uF/16V 1x boto 2x barra de pinos Femea ou Macho com 4x pontos.
Fios Matriz de contatos Baixar os arquivos e cdigos que sero usados
ao longo da aula.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
14
Vamos dar uma olhada no Datasheet e ver as configuraes de cada
pino: Datasheet do Attiny
Simplificando Os dados que so minimamente necessrios para montar
e programar podem ser vistos nas imagens abaixo:
1
Ento temos:
3x Portas analgicas.
2x Portas I/O com PWM
1x Pino de Reset
2x Pinos de alimentao (+Vcc, -GND )
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
15
Lembrando: postas analgicas podem ser lidas como portas I/O ento
na prtica tm 5x portas de I/O.
Sumrio da Instalao, se precisar, siga o Passo a Passo nos tpicos
descritos nas etapas mais abaixo:
Download: Attiny texto de configurao Localize a pasta sketchbook
Arduino (voc pode encontrar a sua localizao no dilogo de
preferncias no software do Arduino) Criar uma nova sub-pasta
chamada hardware na pasta sketchbook ( possvel que ela j exista).
Copie a pasta Attiny de dentro do zip. Para a pasta de hardware.
Voc deve ter agora, uma estrutura de pastas como segue:
Documentos> Arduino> hardware> attiny
Neste diretrio, voc colocar os arquivos do zip, incluindo o
boards.txt e possivelmente encontrar uma outra pasta chamada de
variantes.
Reinicie o ambiente de desenvolvimento IDE do Arduino. Voc deve
encontrar vrias opes Attiny no menu Ferramentas> Board.
Passo a Passo
Etapa 1- Inicialmente precisamos preparar a interface para
receber esse novo modelo de micro controlador.
Vamos usar a interface IDE : se precisar, BAIXAR AQUI
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
16
Se tudo ocorrer corretamente ao abrir a IDE do Arduino voc ter
novas opes de micros controladores quando for a TOOLs>BOARD
Caso a IDE j esteja aberta voc deve fechar e reinicializar-la
para aparecer a atualizao.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
17
Etapa 2- Agora vamos tornar o Arduino um gravador de Attiny.
preciso gravar um cdigo que far essa tarefa de comunicao e gravao
dos dados. Este j est disponvel na IDE do Arduino. Veja como
fazer:
Abra o cdigo ArduinoISP
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
18
Escolha o modelo da placa Arduino que est usando:
Faa o mesmo com a COM(porta usb)
Faa a gravao do cdigo na sua placa Arduino.
Essa etapa deve ser feita sem as conexes com o circuito que ser
apresentado ao longo da aula.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
19
Etapa 3 Agora com seu cdigo que permite a gravao do Attiny monte
o circuito abaixo numa protoboard.
Veja como fica:
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
20
Ao fim da montagem vamos gravar um cdigo bsico e verificar o
funcionamento de tudo:
Ateno: No existe pino de nmero 13 no Attiny ento preciso
mudar.
Vamos adotar o pino de nmero 0 para este teste.
Ento basta mudar onde tem 13 para 0 no cdigo do Blink.
Tudo deve ficar como na imagem abaixo:
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
21
Faa a gravao do cdigo clicando em Upload.
OBS: Caso voc no tenha preparado o Arduino como interface de
gravao, o cdigo no ser gravado no Attiny.
A presena do capacitor de 10uF-16V permitir que o cdigo seja
gravado no Attiny. Assim com presena do capacitor no pino de RESET
do Arduino no ser possvel a gravao de cdigos no Arduino. Basta
retirar o fio do Reset que tudo retorna ao normal. Aps a gravao uma
mensagem em vermelho pode aparecer na IDE do Arduino mas isso no
afeta na gravao.
Feito os testes e aps tudo estar supimpa voc pode montar uma
sheild para gravao de Attiny. Com ajuda de um saca Chip voc pode
retirar o Attiny do socket e por outros e ir gravando, ou mesmo
usar a interface para prototipagem. possvel usar uma placa de fcil
prototipagem ou fazer num software de CAD como o Proteus e corroer
a trilha. Veja como pode ficar:
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
22
Funes que o Attiny suporta com o Arduino:
The following Arduino commands should be supported:
pinMode() digitalWrite() digitalRead() analogRead()
analogWrite() shiftOut() pulseIn() millis() micros() delay()
delayMicroseconds() SoftwareSerial (has been updated in Arduino
1.0)
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
23
Tutorial 4 Programando o Attiny2313 com o Arduino O processador
Attiny 2313 tem 20 pinos com 17 I/O, ele no tem um ADC (conversor
analogico/digital).
Ele pode ser configurado para rodar nas velocidades de 1 MHz at
8 MHz sem um oscilador externo.
Carregue o arquivo de Configurao do IDE seguindo as mesmas
orientaes dadas para a configurao do Attiny 45 ou 85.
Faa o Download do arquivo de configurao aqui.
Conecte seu Arduino ATtiny acordo com a imagem abaixo:
Video de Demonstrao
Lista das ligaes ao Arduino:
Arduino ATtiny2313 13 19 PB7/SCK 12 18 PB6/MISO 11 17 PB5/MOSI
10 1 PA2/Reset 5v 20 VCC GND 10 GND
Carregar o ArduinoISP para o Arduino no ligar o capacitor
ainda.Mais informaes sobre este passo.
Nota: o ArduinoISP tem alguns problemas na ver. 1,00, Veja esta
correo para uma soluo.
Conecte um capacitor mF 10 de reinicializao para a terra sobre o
Arduino (lado negativo para o terra). Se voc estiver usando um
Duemilanove, um resistor de 120 ohm deve ser conectado ao Vcc.
Selecionar a placa de ATtiny2313 @ 1MHZ.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
24
Carregar o esboo Blink.
Conecte um LED com resitor ao pino PB4
Agora voc deve ter um Led piscando em seu ATtiny 2313
Observe o padro de fbrica de 1MHz, se voc deseja executar em
8MHz: necessrio alterar o bootloader como segue:
Selecione placa -> ATtiny2313 @ 8MHZ Selecione ->
bootloader Gravar selecionar -> w / arduino como ISP
Quando voc us-lo em seu projeto, vai ser importante conectar um
capacitor uF 0,1 entre o VCC e GND, to perto do processador quanto
possvel e um resistor de 10 ohms K de RESET para VCC.
Ex. pino 13 no exemplo de piscar o pino fsico B4
Consulte a folha de cheet
# define PIN_D0 (0) # define PIN_D1 (1) # define PIN_A1 (2) #
define PIN_A0 (3) # define PIN_D2 (4) # define PIN_D3 (5) # define
PIN_D4 (6) # define PIN_D5 (7) # define PIN_D6 (8) # define PIN_B0
(9) # define PIN_B1 (10) # define PIN_B2 (11) # define PIN_B3 (12)
# define PIN_B4 (13) # define PIN_B5 (14) # define PIN_B6 (15) #
define PIN_B7 (16) # define PIN_A2 (17) / * Reset * /
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
25
Tutorial 5 Como Instalar drivers da USB do Arduino FTDI Arduino
drivers solution
Voc acabou de adquirir sua placa Arduino. Conectou o cabo USB e
Opa!!! Nada aconteceu?
Ou Pior! O Windows no reconhece sua placa!
Se voc est nessa situao fique tranquilo, pois est no lugar
certo!
comum o Windows no reconhecer automaticamente o FTDI que vem no
Arduino. E preciso fazer manualmente essa tarefa.
Este tutorial serve tambm para o modelo UNO, mesmo no tendo o
FTDI.
Basta seguir os passos que tudo se resolve. Vamos l?
Vou usar para esses passos o Arduino Mega, apenas para fins
ilustrativos, mas poderia ser qualquer outro modelo.
O comentado FTDI esse da foto acima, j nos modelos UNO, temos um
microcontrolador da Atmel 8U2 ou 16U2 para essas mesma funo.
Primeiro passo conectar o Cabo USB ao Arduino e ao PC.
Caso a instalao do Driver tenha caminhado automaticamente em seu
PC, timo, voc no tem mais nada a FAZER!!
Parabns!!
Caso contrrio, siga os prximos passos.
Agora preciso chegar ao Gerenciador de dispositivos do
Windows.
Isso pode ser feito rapidamente pelo Menu Iniciar e digitando o
nome: Gerenciador de Dispositivos.
Caso no tenha encontrado por esse caminho voc pode encontrar
pelo Painel de Controle:
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
26
L chegando siga as setas vermelhas das ilustraes.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
27
Aps chegar ao Gerenciador de Dispositivos
A COM(USB) do seu Arduino deve estar l. Observe que se voc
retirar o cabo USB essa porta desativada (desaparece).
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
28
Ento, clicar com o boto direito do mouse.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
29
Agora preciso encontrar a pasta que esto os drives. Quando voc
baixou a IDE de programao do Arduino baixou tambm esses drives.
Eles esto l numa pasta drivers.
Selecione a pasta onde est os drives e depois v em OK.
Observe que o cone da porta muda e uma confirmao deve aparecer
informando que tudo ocorreu corretamente.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
30
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
31
Bem isso Agora j pode mandar bala nos seus projetos com Arduino.
Divirtam-se!
Caso no tenha obtido sucesso tente outra vez.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
32
Tutorial 6 Usando o FTDI em um Projeto Prprio Este post serve
para mostrar aos navegantes como utilizar o FTDI (conversor USB
TTL) junto com o seu Atmega328p-pu standalone. O conversor serve
para mudar o tipo de sinal que o PC envia e o que o
microcontrolador deve receber para operar, no h muita dificuldade
na conexo, apenas deve-se tomar cuidado para conectar corretamente
os pinos.
Os pinos do conversor so mostrados a seguir:
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
33
So 6 pinos para conexo, mas para programar o Atmega em modo
Standalone voc precisa utilizar apenas 4, sendo eles:
+5V Este pino voc liga nos terminais do seu Atmega que so
alimentados pelo positivo. GND Este pino voc conecta aos terminais
do seu Atmega que so alimentados pelo negativo. RXD Este pino deve
ser conectado ao pino TX do Atmega (pino 3 veja imagem a baixo);
TXD Este pino voc conecta ao pino RX do Atmega (pino 2 veja imagem
a baixo);
Aps fazer a conexo dos pinos voc deve instalar o drive e
instale-o em seu computador, depois disso pode conectar o conversor
USB TTL em uma porta USB (eu fao isso atravs de um cabo USB para
ter mais liberdade para poder mover a protoboard com tudo junto
pela mesa fica a dica!). Depois que tudo estiver instalado voc
precisa enviar o cdigo para seu Atmega, para isso abra o ambiente
de programao do arduino e selecione o exemplo blink para testar.
Pressione o boto reset da sua placa standalone e segure, depois
clique no boto enviar da interface de programao do arduino e
aguarde at que aparea na parte inferior uma tela como a mostrada a
baixo:
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
34
Assim que aparecer na parte preta o texto em branco que diz o
tamanho do arquivo significa que seu cdigo ja foi compilado e o
programa comear o upload propriamente dito, nesse momento voc deve
soltar o boto reset e aguardar a mensagem de upload concludo.
Pronto! seu Atmega rodando em modo standalone pode ser agora
programado atravs da porta USB como se voc estivesse utilizando uma
placa arduino diretamente na USB.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
35
Tutorial 7 Bluetooth Shield TTL RS232 Serial
Este pequeno mdulo transmissor permite que o dispositivo possa
enviar ou receber os dados atravs de tecnologia Bluetooth sem a
necessidade do cabo serial para computador.
fcil de usar e totalmente encapsulado.
Funciona com todos os adaptadores Bluetooth USB.
Descrio:
BTM-5 um mdulo bluetooth CLASS 2 baseado no chipset
BlueCore4-External.Este mdulo suporta operar como MASTER ou como
SLAVE, bastando apenas configura-lo por comandos AT (conforme
manual).
possvel fazer uma comunicao entre dois mdulos bluetooth (sendo
um MASTER e o outro SLAVE) e tambm se comunicar entre um mdulo e um
notebook, PDA, celular, etc.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
36
Para usa-lo, basta liga-lo ao microcontrolador nos PINOS de TX e
RX, e ento fazer uma comunicao serial normalmente.
Antena embutida.
Alimentao: 3.6V-6V DC
Taxa de transmisso padro: 9600,8,1, n. Senha: 1234.
Cobertura de at 10m.
O mdulo vem com configuraes pr-estabelicidas de fbrica, como
velocidade de comunicao, nome do dispositivo, senha de pareamento,
e etc. que podem ser alteradas via comandos AT por meio de
comunicao serial com o computador. Obs. Importante: Essa configurao
NO possivel via comunicao Bluetooth. Deve ser feita necessariamente
por meio de cabos de conexo (fisicamente). Nesse projeto, para
fazer a conexo serial entre o computador e o mdulo bluetooth , ser
utilizado o prprio Arduino como conversor USB-TTL.
Os comandos AT de configurao, ao serem enviados devem ser
seguidos obrigatoriamente por um (Carrige Return) e um (Line Feed).
Todos esses comandos ao serem recebidos com sucesso pelo mdulo, so
respondidos com uma mensagem de confirmao OK.
A comunicao bluetooth com esse mdulo bem simples pois nada mais
do que uma comunicao serial. Primeiramente ser apresentada a
montagem do harware para leitura de um sensor de temperatura LM35
via bluetooth.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
37
Como no Fritzing (programa para fazer o desenho acima) no existe
o mdulo bluetooth, ele foi representado como apenas um conector
onde suas ligaes foram feitas respectivamente da esquerda para
direita. Os pinos do conector da esquerda para a direita so: VCC,
GND, RX, TX.
OBS IMPORTANTE: O Vcc do mdulo e as entradas lgicas funcionam em
3.3 Volts, portanto ligue o Vcc do mdulo na saida 3.3V do Arduino e
o RX do mdulo dever ser ligado ao TX do Arduino por intemdio de um
divisor de tenso que ir diminuir a tenso lgica (todos esses
detalhes de ligao esto devidamente exemplificados no artigo )
O pino MODE no ser utilizado nesse projeto pois como padro ele
esta baixo (nivel lgico LOW) ento o mdulo funcionar normal e no em
modo de configurao AT.
A imagem abaixo mostra o circuito real montado em uma
protoboard.
O firmware a ser inserido no microcontrolador no poderia ser
mais simples, pois apenas um comando para escrever na porta serial
que nesse caso o mdulo bluetooth.
/*
Firmware para fazer a leitura de um sensor de temperatura
e a tranmisso desse dado via Bluetooth
utilizando o mdulo BTM-5.
Desenvolvido por: Allan Romanato
Data: 31/05/2012
*/
int sensor = 0;
int leitura = 0;
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
38
float temp = 0;
void setup(){
Serial.begin(38400); //Inicia Comunicao Serial
}
void loop(){
leitura = analogRead(sensor);
temp = (leitura * 0.00488);
temp = temp *100;
Serial.print(Temperatura lida: ); //Envia via Bluetooth
Serial.println(temp);
delay(5000);
}
O resultado da execuo mostrado a seguir em uma tela do terminal
serial Docklight (poderia ser tambm vistos em um hyperterminal do
Windows).
Aproveitando a deixa, agora ser explicado como acionar um LED
atravs de um comando enviado ao Arduino via bluetooth. Usaremos o
LED padro do Arduino que ligado ao pino 13. Nesse exemplo ser
colocado um led extra s para melhor visualizao.
O LED extra dever ser ligado a porta digital 13 do arduino por
intermdio de um resistor de 330 ou 470 Ohms.
O que mudar um pouco nessa parte que a porta serial dever ser
lida pelo Arduino e a informao recebida ter que ser interpretada
pelo microcontrolador para depois o sinal ser enviado. No cdigo a
seguir ser abordado leitura e escrita na serial (bluetooth).
/*
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
39
Firmaware responsavel por acender e apagar um led via
Bluetooth.
Data: 31/05/2012
*/
char receive;
int pin = 13;
void setup(){
pinMode(pin, OUTPUT);
Serial.begin(38400); //Inicia Comunicao Serial
}
void loop(){
if (Serial.available() > 0){ //Checa de a porta serial tem
info.
receive = Serial.read(); //Faz a leitura da Serial.
if(receive == l){
digitalWrite(pin, HIGH);
Serial.println(Led Ligado);
}
else if(receive == d){
digitalWrite(pin, LOW);
Serial.println(Led Desligado);
}
}
delay(500); //Necessario para sincronizar.
}
Os resultados da execuo do cdigo acima so mostradas nas figuras
a seguir:
Comando para ligar o LED.
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
40
Aps o comando de ligar o LED
Comando para desligar o LED.
Aps o comando de desligar o LED
-
Tutorial Arduino
Copyright 2012, hecomecatronica todos os direitos reservados
www.hecomecatronica.com.br
41
Com a leitura do artigo pode-se concluir que quando utilizamos o
Mdulo Bluetooth BTM5 a comunicao sem fio se torna simples, pois s
enviar comandos para a porta serial que eles so interpretados
automaticamente.