tutorialcomunicacinbluetoothconmdulosrn42yrn41-editronikx-111207104043-phpapp01

6
Comunicaci Comunicaci Comunicaci Comunicación n n n Bluetooth con luetooth con luetooth con luetooth con Módulos RN42 y RN dulos RN42 y RN dulos RN42 y RN dulos RN42 y RN41 41 41 41 Desde la invención del bluetooth se han desarrollado infinidad de aplicativos electrónicos, pero en la actualidad estos dispositivos se han tornado más asequible para cualquier persona, la microelectrónica, los PCB de diferentes capas han hecho que hoy por hoy tengamos el mismo bluetooth de hace más de 15 años pero en tamaño tan reducido, y tan fácil de conectar que hace que cada vez se puedan crear aplicativos enlazados con microcontroladores, computadores, celulares o cualquier dispositivo que cumpla con los protocolos de comunicación blueooth. En este tutorial hablaremos de módulos bluetooth como el RN42 y RN41 de la casa Roving Networks , que gracias a sus características y facilidad de configuración podemos crear aplicativos de control o censado de datos. Bluetooth RN42 y RN41 Las Características más importantes son: - Voltaje de operación de 3V a 3.6 V. - Consumo: 26 uA en modo inactivo, 3mA en conexión establecida y 30mA hasta 50ma transmitiendo. - Máxima distancia de transmisión: 20m el RN42 y 100m el RN41 - Puerto UART local y USB. En la hoja de datos podremos encontrar muchos datos de conexión, tecnología, frecuencias y comandos, aquí resumiremos y solo comentaremos las que se requieren para conectar nuestro bluetooth con un microcontrolador y con el fin de hacer un aplicativo donde se pueda mirar su funcionamiento.

Transcript of tutorialcomunicacinbluetoothconmdulosrn42yrn41-editronikx-111207104043-phpapp01

Page 1: tutorialcomunicacinbluetoothconmdulosrn42yrn41-editronikx-111207104043-phpapp01

ComunicaciComunicaciComunicaciComunicacióóóón n n n BBBBluetooth con luetooth con luetooth con luetooth con

MMMMóóóódulos RN42 y RNdulos RN42 y RNdulos RN42 y RNdulos RN42 y RN41414141

Desde la invención del bluetooth se han desarrollado infinidad de aplicativos electrónicos, pero

en la actualidad estos dispositivos se han tornado más asequible para cualquier persona, la

microelectrónica, los PCB de diferentes capas han hecho que hoy por hoy tengamos el mismo

bluetooth de hace más de 15 años pero en tamaño tan reducido, y tan fácil de conectar que hace

que cada vez se puedan crear aplicativos enlazados con microcontroladores, computadores,

celulares o cualquier dispositivo que cumpla con los protocolos de comunicación blueooth.

En este tutorial hablaremos de módulos bluetooth como el RN42 y RN41 de la casa Roving

Networks , que gracias a sus características y facilidad de configuración podemos crear

aplicativos de control o censado de datos.

Bluetooth RN42 y RN41

Las Características más importantes son: - Voltaje de operación de 3V a 3.6 V. - Consumo: 26 uA en modo inactivo, 3mA en conexión establecida y 30mA hasta 50ma transmitiendo. - Máxima distancia de transmisión: 20m el RN42 y 100m el RN41 - Puerto UART local y USB. En la hoja de datos podremos encontrar muchos datos de conexión, tecnología, frecuencias y comandos, aquí resumiremos y solo comentaremos las que se requieren para conectar nuestro bluetooth con un microcontrolador y con el fin de hacer un aplicativo donde se pueda mirar su funcionamiento.

Page 2: tutorialcomunicacinbluetoothconmdulosrn42yrn41-editronikx-111207104043-phpapp01

El bluetooth RN41 es de similares características, su diferencia principal es que es de clase1 de mayor alcance, con un poco más de consumo de corriente, pero su conexión es igual. Pines de configuración del Bluetooth RN42 y RN41

Los pines que utilizaremos para conectar el bluetooth son el de TX (pin 14), RX (pin 13), GND (pin 12), VDD (pin 11), PI08 (pin 31 donde se conecta un led de estado que indica sin conexión o baja conexión), PIO2 (pin de estado conectado, aquí se conecta un led) Como primera instancia miraremos como alimentar y conectar nuestro modulo bluetooth, esta práctica me permitirá saber sus características de funcionamiento y asi poder ingresar a modo de configuración y cambiar todos sus parámetros de fábrica, como la velocidad, nombre, identificador, código de seguridad, encriptamiento etc.

Page 3: tutorialcomunicacinbluetoothconmdulosrn42yrn41-editronikx-111207104043-phpapp01

Circuito recomendado para conectarlo por primera vez Recordemos que nuestro bluetooth solo trabaja a 3.3v, para su alimentación debemos usar un regulador para este propósito, podemos conectar un LD33, un LD1117V33 o un sencillo Lm317 calibrado a 3.3v Para este propósito usaremos el LM317. Para hacerlo funcionar a 3.3v debemos encontrar la R1 que ira en ajuste. Hemos usado la ecuación característica del lm317 que proporciona el fabricante.

���� � 1.251 � 2 1� � ����. � 2� De la cual despejamos R2y obtenemos: 393,6 ohm. Colocamos una resistencia aproximada con todo el circuito de proteccion y hacemos un puente entre TX y RX.

Circuito para montar el RN42 y RN41

En el circuito podemos ver una R3 y R4 que son necesarias solo cuando se conecta circuitos TTL (5v) porque si conectan directamente al módulo lo pueden quemar, para esto se debe colocar un divisor de voltaje que garantiza una entrada de 5v y en su salida sale 3.3v, voltaje requerido para su funcionamiento, cabe aclarar que un microcontrolador por lo común se lo puede trabajar a 3.3v entonces no es necesario las dos resistencias de protección, pero si conecta una LCD 2x16 esta no funcionara y aquí es cuando debemos tener dos fuentes, una de 5v y otra de 3.3v como sugiere la grafica Estos modulos vienen de fábrica con un nombre preestablecido y a una velocidad de 115200bps, 8bits, Sin Paridad, 1bit de Stop.

Pasos para configurar el módulo RN42 y RN41 Estos módulo tiene dos modos de funcionamiento, el “Data mode”( es el modo de transmisión en el que todos los comandos son ignorados) y “Command mode”., (es el modo de

Page 4: tutorialcomunicacinbluetoothconmdulosrn42yrn41-editronikx-111207104043-phpapp01

configuración, en el que mediante determinados comandos se puede configurar ciertos parámetros de funcionamiento del módulo, solo son 60seg en este modo). Los comandos pueden ser enviados mediante Hyperterminal por medio de un com con cualquier software bluetooth como el bluesoleil o con un celular que tenga bluetooth.

1. Alimente a los modulos, active el bluetooth del celular o computador, luego realice el enlace o emparejamiento de estos digitando el PIN que de fábrica es 1234.

2. Desconeste y vuelva a conetar el blueooth y tendrá 60 seundos para ingresar a su configuración.

3. El modulo se lo puede conectar por RS232 con los acoples respectivos como MAX232 y el divisor de voltaje a un puerto serie por medio de un DB9, se debe abrir el hiperterminal o cualquier programa que permita leer y enviar comandos AT. La segunda opción es prender el bluetooth de un computador o laptop y por medio de algún programa que controle bluetooth crear un COM virtual que le permita al hiperterminal enviar y recibir datos de forma inalámbrica (de esta manera se conecta TX y RX)

4. Para entrar en el modo de configuración del módulo se debe enviar 3 signos pesos $$$ dentro de los primeros 60 segundos tras haber alimentado a 3.3v el dispositivo, ya que si no, entra en modo datos (Data mode) y los comandos son ignorados, si los datos fueron leidos, el modulo responderá con CMD y después del envío de instrucciones nos regresa un AOK. La forma de ver si el modulo está bien, es mirar el led de status, siempre debe estar parpadeando, después de entrar en Command mode la oscilación del led es mas rápida y cuando esta enlazado con algún dispositivo el led deja de parpadear y también se enciende el led de estado conectado

5. Para mirar la ayuda y mirar que comandos necesito digite en modo Command mode la letra “h“de ayuda, para mirar la configuración de fábrica digite “d”.

6. Comandos básicos Para cambiar el nombre de nuestro dispositivo bluetooth digitamos en hiperterminal o en el celular los siguientes comandos: SN SN,Micro ; Ahora nuestro dispositivo se llama Micro Para cambiar el Baud Rate: SU SU,96 ; Solo se necesitan los primeros dos números. Se lo puede configurar en cualquiera de las siguientes velocidades 1200, 2400, 4800, 9600, 19.2, 28.8, 38.4, 57.6, 115K, 230K, 460K, 921K Para cambiar el código de seguridad: de fábrica viene el código PIN 1234 SP SP,0000 ;ahora el código de enlace es 0000 Un aspecto bastante curioso y útil de estos modulos es la facilidad para cambiarle el identificador al bluetooth SC (Service Class) Y SD (Device Class) sirven para decirle al bluetooth si es una computadora, un modem, una laptop, un teléfono etc, para ello debemos buscar en

Page 5: tutorialcomunicacinbluetoothconmdulosrn42yrn41-editronikx-111207104043-phpapp01

internet páginas que nos generen el código CoD y mediante los comandos le cambiamos la forma de como lo reconocen los demás dispositivos.

Ejemplo Para cambiar el Identificador del Dispositivo: Cod CoD: 0x980104 // Este código indica que es una Computadora de escritorio o podremos ingresar el codigo del ejemplo de la imagen de mas abajo SC,00 SC,0098 // Solo los primero dos números SD, SD,0104 // Los últimos cuatro números. De esa forma hemos configurado nuestro bluetooth con un identificador de computadora. Todos los cambios que hemos hecho aplican una vez que se a reiniciado el dispositivo, para reiniciarlo se ocupa el siguiente comando: R,1 R,1 // Reboot!

Ejemplo de código Cod

Page 6: tutorialcomunicacinbluetoothconmdulosrn42yrn41-editronikx-111207104043-phpapp01

Ejemplo del modulo RN42 y RN41 a los cuales se les diseño una PCB para evitar daños en sus pines, y asi facilitar el uso de una protoboard. Los archivos de EAGLE los puede encontrar en la pagina de Roving Networks Para que en casa se haga un PCB como la de la foto

Imágenes del aplicativo hecho con RN42 en prototoard y un enlace de control mediante java con un móvil android, El aplicativo controla encendido y apagado y un la intensidad de luz mediante un dimer electrónico.

Modulo RN41 en protoboard Modulo RN42