Descripción
En este tutorial utilizaremos la librería denominada «RF24 by TMRh20» v.1.1.6 para ARDUINO IDE para comunicar dos dispositivos NRF24, uno como transmisor y otro como receptor, conectados a placas ARDUINO UNO y INTEL EDISON respectivamente.
Vamos a monitorear el resultado mediante los puertos seriales respectivos.
NIVEL INTERMEDIO
Referencias Externas
Un agradecimiento especial a terry@yourduino.com por su tutorial sobre los diferentes tipos de conexion para las multiples librerias disponibles para el NRF24.
Materiales
- 2 x Radios nRF24L01 (crcibernetica / amazon)
- 1 x ARDUINO UNO (crcibernetica)
- 1 x Intel Edison Módulo + Breakout Board ( mouser.com ) *
- 1 x Juego de cables «jumper» macho-hembra (crcibernetica)
(*) Opcionalmente el Edison se puede reemplazar con otra tarjeta ARDUINO UNO
(!) Antes de seguir estas instrucciones asegúrese de entender las Condiciones de Uso de nuestro sitio.
Pre-requisitos
- Realice la configuración previa del Intel Edison (controladores, firmware, software en general) para su PC. Existen varios tutoriales para esto. Por ejemplo este.
- Instale el IDE de ARDUINO de https://www.arduino.cc/en/Main/Software
- Instale la librería «RF24 by TMRh20» en el ARDUINO IDE (Menu: Sketch > Include Library > Manage Libraries > [Install] )
Figura 1 – Librería RF24 by TMRh20
Pasos Resumidos
- Conecte los módulos nRF24 a las placas EDISON y ARDUINO tal y como se describe en la figura 2 abajo.
- Abra el ejemplo «RF24 > Getting Started» y programe con él su tarjeta ARDUINO (transmisor)
- Modifique el programa de ejemplo para que la variable «radioNumber» tenga un valor de 1 (ver figura 5) y programe su tarjeta EDISON (receptor) con este programa modificado.
- Monitoree el transmisor usando una conexion serial (Serial Monitor del ARDUINO IDE o PuTTY a 115200 baudios) y presione la tecla «T»
Procedimiento Detallado
PASO 1 – CONEXIONES
La siguiente imagen ilustra las conexiones desde los pines del NRF24 a las placas ARDUINO o EDISON.
Figura 2 – Conexiones
PASO 2 – PROGRAMANDO EL TRANSMISOR
Abra el ejemplo de la librería «RF24 by TMRh20» denominado «Getting Started» (Menu: File > Examples > RF24 > Getting Started)
La variable «radio Number» definida en la línea 14 determina el modo de operación, en este caso debe ser 0 (tal y como viene predeterminada) para el transmisor.
Figura 3 – Variable Radio Number para Transmisor
Cargue el programa en su tarjeta ARDUINO.
El monitor serial del IDE de arduino debe estar configurado para operar a 115200 baudios (ver figura 4).
(!) En este punto la tarjeta ARDUINO estará lista para transmitir; esperando que se conecte un receptor a la red. Puede apagar el ARDUINO por el momento.
Figura 4 – Configuración de la pantalla de monitor serial
PASO 3 – PROGRAMANDO EL RECEPTOR
Utilizando el mismo programa, modifique el valor de la variable «radioNumber» para que sea igual a 1 (ver figura 5) y programe su tarjeta EDISON con esta nueva versión del programa.
Figura 5 – radioNumber = 1
(!) En este punto la tarjeta EDISON estará lista para recibir datos, esperando mensajes del transmisor. Al abrir el monitor serial (SHIFT + CTRL + M) no se observará ninguna reacción. Recuerde asegurarse de que la velocidad del monitor sea 115200 baudios.
PASO 4 – PRUEBAS FINALES
Encienda el ARDUINO UNO (transmisor) conectándolo a su computador y abra el monitor serial. Verá una imagen similar a la figura 4.
Encienda el EDISON (receptor) conectándolo a la fuente de poder y al computador. Abra una terminal «PuTTY» para ver el monitoreo serial del EDISON. Recuerde la usar el puerto «Intel Virtual COM Port (COM??)» a una velocidad de 115200 como se ilusrta en la figura 6.
Figura 6 – Configurando PuTTY para monitorear el EDISON
Vaya al Monitor Serial del ARDUINO IDE y presione la tecla T
En este momento veremos como se comunican los dos equipos de manera inalámbrica como se ilustra en la figura 7.
Figura 7 – Monitoreando Transmisor y Receptor
(!) Nótese que aquí utilizamos los términos TRANSMISOR para el ARDUINO UNO y RECEPTOR para el EDISON con cierta ligereza. Ambos dispositivos transmiten y reciben en distintos momentos. El ARDUINO UNO envia datos al EDISON, el cual los envia de vuelta al ARDUINO UNO.
7,119 total views, 1 views today
Comentarios