You are on page 1of 16

Arduino

Mdulo Bluetooth JY-MCU


Bernardo Amaral
Tpicos:
- Introduo;
- Comunicao Bluetooth no Windows;
- Desenvolvendo nossa aplicao exemplo;
- Concluses;
Introduo
Bluetooth um protocolo padro de comunicao primariamente projetado para baixo consumo de
energia com baixo alcance, (dependendo da potncia: 1 metro, 10 metros, 100 metros) baseado em
microchips transmissores de baixo custo em cada dispositivo.
O Bluetooth possibilita a comunicao desses dispositivos uns com os outros quando esto dentro do
raio de alcance. Os dispositivos usam um sistema de comunicao via rdio, por isso no necessitam
estar na linha de viso um do outro, e podem estar at em outros ambientes, contanto que a
transmisso recebida seja suficientemente potente.
Classe Potncia mxima permitida
(mW/dBm)
Alcance (Aproximadamente)
Classe 1 100 mW (20 dBm) at 100 metros
Classe 2 2.5 mW (4 dBm) at 10 metros
Classe 3 1 mW (0 dBm) ~ 1 metro
Introduo
Deve-se ressaltar que, na maioria dos casos, o alcance efetivo dos dispositivos de classe 2
estendido se eles se conectam a dispositivos de classe 1, se comparados com redes puras de classe
2. Isso pode ser obtido pela alta sensibilidade e potncia de transmisso do dispositivo de classe 1. A
alta potncia de transmisso do dispositivo de classe 1 permite a recepo da alta potncia pelo
dispositivo de classe 2. Alm disso, a alta sensibilidade do dispositivo de classe 1 permite a recepo
da baixa potncia de transmisso de fora dos dispositivos de classe 2, permitindo assim a operao
de dispositivos de classe 2 a grandes distncias. Dispositivos que possuem um amplificador de
potncia na transmisso tm uma sensibilidade de recepo melhorada, e existem antenas altamente
otimizadas que normalmente alcanam distncias de 1 km usando o padro Bluetooth classe 1.
Verso Taxa de Transmisso
Verso 1.2 1 Mbit/s
Verso 2.0 + EDR 3 Mbit/s
Verso 3.0 24 Mbit/s a.m.m. Mudana da Faixa de
Transmisso para 802.11
Ligue o vcc no 5v do Arduino, o GND no GND mesmo, no caso do TXD e RXD temos que tomar o seguinte
cuidado, o TXD vai ligado na sada 0 (DX) do Arduino, e o RXD vai ligado sada 1 (TX), deve ser feito dessa
forma, se no ela no ir funcionar.
Aps ligado corretamente, e o Arduino ligado uma fonte de alimentao ou USB, o mdulo Bluetoth dever
ficar piscando um led vermelho, indicando que est aguardando uma conexo.
Comunicao Bluetooth no Windows
O adaptador que estou utilizando, encontrado no seguinte link do site dealextreme: http://dx.
com/p/super-mini-bluetooth-2-0-adapter-dongle-vista-compatible-11866
Aps realizar a instalao do driver bluetooth, no meu caso o adaptador se instalou com o driver
genrico do Windows 8. Surgir um cone na bandeja do sistema (prximo ao relgio).
Clique com o boto direito nesse cone, e ento clique
em "Ingressar em uma rede pessoal".
Comunicao Bluetooth no Windows
A tela de Dispositivos e
impressoras ser exibida, ento
clique em "Adicionar um
dispositivo Bluetooth" como
mostra o "Passo 1".
A tela de Adicionar Dispositivo
ser exibida, busque pelo
dispositivo chamado "LINVOR",
ento clique em Avanar, como
mostra o Passo 3 na imagem.
Comunicao Bluetooth no Windows
Ento sabemos que o nome do dispositivo padro LINVOR a senha padro (PIN) do dispositivo
1234,clicamos em avanar e deixamos o sistema concluir a instalao.
Comunicao Bluetooth no Windows
Se tudo foi instalado corretamente, o dispositivo LINVOR ser listado na seo de "Dispositivos e
Impressoras do Windows, (PS: no meu caso renomeei ele para FG), ento clique com o boto direito
nele, e ento em "Propriedades".
Comunicao Bluetooth no Windows
Ento clique na aba "Hardware", e ali podemos ver a porta de comunicao que o dispositivo est
usando, no meu caso est conectado usando a COM11.
Comunicao Bluetooth no Windows
Agora precisamos do software PuTTY, que encontrado no endereo: http://www.putty.org (procure
na seo de downloads por putty.exe).
Ao executar o programa, a seguinte tela ser exibida:
Escolha o tipo de conexo Serial, informe o
nome da porta no campo "Serial line", deixe
a velocidade (speed) em 9600, e finalmente
clique em Open.
Ento uma tela preta ir aparecer.
O mdulo JY-MCU dever parar de piscar,
e o LED permanecer ativo, ento isto indica
que conseguimos uma conexo com o
mesmo.
PS: Os comandos digitados nesta tela no
sero exibidos como retorno.
Comunicao Bluetooth no Windows
Para nosso exemplo precisaremos:
- Arduino;
- Protoboard;
- Fios de conexo;
- LED;
- Resistor de 220 ohm;
Funo: Fazer o LED acender e apagar com
comandos enviados via bluetooth.
Desenvolvendo nossa aplicao exemplo
Ligamos o catodo (lado mais curto do LED) no resistor, que este ser ligado ao GND do Arduino.
O anodo (lado mais comprido, lado positivo do LED), ligado diretamente uma porta digital do
Arduino, no exemplo utilizaremos a porta 13.
Desenvolvendo nossa aplicao exemplo
int led = 13; //definimos a varivel com o nmero da porta utilizado
void setup() {
pinMode(led, OUTPUT); //inicializamos a comunicao com o pino
Serial.begin(9600); //definimos a velocidade de comunicao com o mdulo bluetooth
}
void loop() {
char c = Serial.read(); //capturamos o caractere inserido pela comunicao bluetooth
if (c == 'a') {
digitalWrite(led, HIGH); //liga o LED
}
if (c == 'b') {
digitalWrite(led, LOW); //desliga o LED
}
delay(1000); //timer pro LED permanecer aceso
}
Desenvolvendo nossa aplicao exemplo
Testando nossa aplicao:
Uma vez compilado e enviado para a placa o nosso cdigo
(clicando no cone com uma seta na barra de ferramentas
do IDE), abriremos o monitor serial.
Digite os comandos 'a' seguido de ENTER e 'b' seguido de
ENTER para ligar e desligar o LED (sem aspas).
Uma dica: caso o compilador d um erro ao compilar,
alegando falha de comunicao, com a fora DESLIGADA,
remova o cabo VCC (5V) do bluetooth. Ligue o Arduino na
USB e tente compilar novamente.
Para utilizar esta aplicao via Bluetooth, o nosso Arduino
no poder estar ligado entrada USB, ele deve ser
alimentado por uma bateria de 9V, ou at mesmo uma de
12V, e o mdulo Bluetooth devidamente conectado
(lembre-se de relig-lo ao pino 5V do Arduino).
Ento realizamos a conexo via PuTTY, como foi ensinado
anteriormente, e o comandamos remotamente pelo
terminal.
Desenvolvendo nossa aplicao exemplo
Concluses
Shields wi-fi pra arduino so bem caros, e o Bluetooth pode ser uma boa alternativa, tambm mais
fcil de se realizar a conexo, como visto no exemplo desse artigo.
O exemplo que demonstrei extremamente simples, mas com a idia passada pelo exemplo,
podemos abrir um leque para diversas idias, como controle de automao residencial, ou at
mesmo um sistema que controla outro sistema.
A minha idia nesse tutorial foi demonstrar como realizar uma conexo efetiva via Bluetooth com
Arduino, que no meu caso foi custoso encontrar uma soluo correta com base no que havia
encontrado de tutoriais na internet. Tambm percebemos que o mdulo JY-MCU utiliza uma simples
comunicao via Serial, sem precisar incluir pacotes como eu j havia visto em diversos tutoriais.
! (xixie!)