Make: it Robotics Starter Kit - Conectividad inalámbrica: 4 pasos

Make: it Robotics Starter Kit - Conectividad inalámbrica: 4 pasos

Tabla de contenido:

Anonim

En esta publicación del blog vamos a tomar la información que aprendimos en la anterior publicación del blog titulada "Make: it Robotics Starter Kit - Software Part 2", y capturaremos datos de sensores en tiempo real y enviaremos estos datos de manera inalámbrica a nuestra computadora.

Para completar esta sección necesitamos comprar algunos artículos:

Transmisor y receptor de radio RF, (5 voltios, no 3,3 voltios)

Cables de puente hembra hembra

Además, necesitaremos nuestro cable USB FTDI o una mochila USB FTDI.

Hice un poco de búsqueda en la web y encontré un kit Tx / Rx del módulo de datos de RF. Este kit tiene un transmisor y receptor de 315 MHz. Pagué $ 9.00 más el envío de este kit.

(Pincha en las imágenes para agrandarlas).

Este adaptador USB FTDI macho sería más compacto y tendría un factor de forma más agradable para su computadora. Pero como ya tenía el cable USB FTDI, lo usaré para el tutorial. Más adelante, si desea realizar una configuración permanente, siempre puede solicitar la versión masculina del adaptador FTDI.

Puede comprar cualquier kit de transmisor / receptor de frecuencia siempre que las frecuencias sean las mismas entre transmisor / receptor. Esta publicación del blog explicará en detalle cómo conectar las radios de RF al robot y a tu computadora. Haremos algunas pequeñas modificaciones a nuestro programa original lineFollow.ino. Pero los cambios para lograr que el robot se comunique usando las radios de RF son bastante fáciles.

Echa un vistazo a mi blog para más información:

joepitz.wordpress.com/

Suministros:

Paso 1: Transmisor / Receptor

Primero debemos identificar los componentes de las radios. Su kit puede ser diferente al mío. Mi kit no vino con ninguna documentación. Así que tuve que hacer un poco de búsqueda en la web para averiguar la configuración de los pines, la identificación del transmisor / receptor, etc.

Lo bueno es que hay mucha información en la web sobre la configuración de radios de RF. Primero, determinemos qué tarjeta es nuestro transmisor y qué tarjeta es nuestro receptor. Mire muy de cerca las etiquetas de los pines en las dos tablas que tiene:

Esta es una imagen de las tablas que recibí. Sus tableros pueden verse diferentes. El tamaño y la cantidad de pines no determinarán qué tablero es un transmisor o receptor.

En la imagen de arriba, mire las etiquetas de los pines en el tablero más pequeño. Los pines están etiquetados VCC, GND, DATA y ANT. VCC es el voltaje aplicado a la placa. GND es el conector a tierra.

DATOS es el pin que transmite los datos al mundo exterior y la Antena. Lo más probable es que la placa que tiene el pin de la antena sea su transmisor. Veamos la otra tabla más grande. GND, OUT, OUT, VCC

Esta placa es el receptor. Es importante que sus tablas se configuren de manera diferente. En su receptor solo puede tener un OUT, o un pin de datos. Verifique las instrucciones que vienen con su kit de RF o realice el mismo proceso de identificación que acabamos de hacer en esta publicación.

Paso 2: Conecte el tablero del conductor - Transmisor

En cuanto a nuestra placa de conductor, tenemos que encontrar los siguientes pines.

Ahora conectaremos nuestro transmisor al robot. Consiga tres saltadores hembra a macho, rojo, negro y verde, si los tiene, si no, elija tres saltadores de colores diferentes y anote los colores.

Tome el extremo del zócalo hembra (cable rojo) del puente, conéctelo en el pin etiquetado VCC en el transmisor, el extremo macho del mismo puente y conéctelo en el zócalo de 5 V de la placa del controlador.

Tome el extremo del zócalo hembra (cable negro) del puente y conéctelo en el pin etiquetado GND en el transmisor, tome el extremo macho del mismo puente y conéctelo en cualquiera de los zócalos GND de la placa del conductor.

Tome el extremo del zócalo hembra (cable verde) del puente y conéctelo en el pin etiquetado DATOS en el transmisor, tome el extremo macho del mismo puente y conéctelo en el pin 5 (banco de cabecera inferior derecha) de la placa del conductor.

Su transmisor ha sido conectado al robot.

Paso 3: Conecte el receptor a la placa FTDI

Por el momento, acabo de colocar el transmisor en la parte superior de la placa del conductor para realizar pruebas. Una vez que queramos ejecutar el robot, colocaremos el transmisor lejos de las ruedas.

Tome el extremo del zócalo hembra (cable rojo) del puente y conéctelo al pin VCC del receptor, el extremo macho del mismo puente y enchúfelo en el zócalo del conector FTDI que tiene el cable rojo.

Tome el extremo del zócalo hembra (cable negro) del puente y conéctelo al pin GND en el receptor, tome el extremo macho del mismo puente y conéctelo al zócalo del conector FTDI que tiene el cable negro.

Tome el extremo del zócalo hembra (cable amarillo) del puente y conéctelo al pin de SALIDA del receptor, tome el extremo macho del mismo puente y conéctelo al zócalo del conector FTDI que tiene el cable amarillo.

Su receptor ha sido conectado a su USB FTDI.

Paso 4: Modificar el programa LineFollowing.ino

Ahora necesitamos modificar nuestro programa lineFollow.ino, ya que el kit de radio de RF tiene requisitos ligeramente diferentes a los de nuestro puerto serial codificado.

Aquí están los cambios que necesitamos hacer:

#include "SoftwareSerial.h"

#include "MakeItRobotics.h"

#define rxPin 4

#define txPin 5

MakeItRobotics line_following;

SoftwareSerial mySerial = SoftwareSerial (rxPin, txPin);

contador de int

En nuestra sección de definiciones necesitamos agregar una variable de contador que se usará para probar el puerto serie inalámbrico. Este contador tendrá un tipo de datos de int.

configuración del vacío ()

{

Serial.begin (10420);

// Dile al Arduino que se comunique con Make: it

PCBdelay (500); // retraso 500 ms

line_following.line_following_setup ();

// inicializar el estado de la línea siguiendo el robot

line_following.all_stop (); // todos los motores se detienen

pinMode (rxPin, INPUT);

pinMode (txPin, SALIDA);

// establecer la velocidad de datos para el puerto de SoftwareSerial

// mySerial.begin (9600);

mySerial.begin (1200);

contador = 0;

}

En nuestra función setup () necesitamos hacer los siguientes cambios: Necesitamos comentar el mySerial.begin (9600); comando y agregar el siguiente comando:

mySerial.begin (1200);

1200 es la velocidad en baudios (velocidad de transferencia de datos) que las radios RF pueden comunicarse entre sí. Este valor puede ser diferente para sus radios.

Revise su documentación. En mi situación, la radio venía sin documentación, así que primero probé 2400 baudios, que no funcionaron, por lo que luego bajé la velocidad de baudios a 1200 baudios, lo que sí funcionó.

También inicializamos la variable de contador a un valor de 0. En la función Loop () necesitamos agregar lo siguiente:

// mySerial.println (sensor_in, HEX);

mySerial.println (contador, DEC);

contador ++;

Primero comentamos mySerial.printLn (sensor_in, HEX); Línea y agregue la siguiente línea:

mySerial.printLn (contador DEC);

Para probar que configuramos nuestras radios de RF correctamente, solo queremos enviar algunos números a nuestra estación de trabajo. Más tarde, cuando nos aseguremos de que nuestras conexiones de RF estén funcionando, cambiaremos mySerial.printLn () de nuevo a lo que era antes.

Estos son todos los cambios que necesitamos hacer.

Simplemente conecte el cable USB al conector Arduino USB de su robot. Primero compilaremos y subiremos el programa a nuestro Arduino.

Recuerde que debemos verificar para asegurarnos de que estamos utilizando el número de puerto serie correcto. Consulte la entrada anterior del blog "Make: it Robotics Starter Kit - Software Part 2" para obtener detalles sobre cómo llevar a cabo esta tarea.

Recuerde que no necesita encender los interruptores de la caja de la batería para que el robot se comunique a través del puerto serie.

Una vez que su programa lineFollow.ino se haya cargado en el Arduino, conecte su cable USB FTDI a su computadora. Cargue el IDE de Arduino, seleccione el puerto serie correcto y abra el programa Serial Monitor. Seleccione la velocidad de transmisión correcta, en mi caso seleccioné 1200 baudios.

Si realizó todas las tareas correctamente, debería ver lo siguiente en su programa de monitor en serie. Su programa debería verse un poco diferente, ya que esta captura de pantalla se tomó del IDE de ATMEL Studio:

Si su monitor de serie está recibiendo, lo que parece ser una gran cantidad de caracteres no deseados o un montón de signos de interrogación.

Entonces, o bien su velocidad en baudios en el monitor serie no coincide con la velocidad en baudios que estableció en su programa lineFollow.ino o necesita cambiar la velocidad en baudios que el programa está utilizando, ya que las radios de RF pueden no admitir esta velocidad en baudios:

También es fácil corromper el puerto serie, por lo que en muchas situaciones es mejor desconectar todos los puertos USB e intentarlo de nuevo, tal vez incluso reiniciando su computadora si no puede hacer que funcione.

En el siguiente blog, tutorial, configuraremos el programa lineFollow.ino para enviar datos de sensores a nuestra computadora mientras el robot está corriendo alrededor del círculo negro enviando datos en tiempo real a nuestra computadora de forma inalámbrica.