Tanque Robot PDF
Tanque Robot PDF
Contenido
Lista de Embalaje......................................................................................................................................................................................................... 1
Introducción al Kit de Tanque Robot Inteligente ........................................................................................................................................................ 2
Lección 1: Comenzando con el IDE de Arduino......................................................................................................................................................... 7
Como instalar el IDE de Arduino ......................................................................................................................................................................... 7
Como instalar el Driver de Arduino .................................................................................................................................................................. 15
Tutorial
Este tutorial incluye códigos, bibliotecas y lecciones. Está diseñado para principiantes. Enseñará a todos los
usuarios cómo montar el kit robótico y utilizar la placa controladora Arduino UNO, sensores, servo y bluetooth.
arduino, que es conveniente para los principiantes para aprender. El chasis del tanque DIY fácil de instalar se
adopta para una fácil instalación. La fuente de alimentación utiliza dos baterías de litio 18650 con una larga
duración de la batería.
El software de control APP recién creado, las cinco funciones principales del kit de tanques son controladas
Lista de Embalaje
1/193
Machine Translated by Google
1) La placa de expansión de accionamiento del motor TB6612 integra el chip Driver, eliminando el cableado complejo
tradicional L298N y el espacio de instalación, la placa de expansión utiliza cableado de interfaz estándar, cableado de
instalación simple, fácil de entender y rápido.
2/193
Machine Translated by Google
2) El software de control APP recién creado, las cinco funciones principales del kit de tanque son controladas
exhaustivamente por la APP, y el modo de función se puede cambiar libremente.
3/193
Machine Translated by Google
3) El Nuevo diseño módulo Bluetooth está conectado al circuito, y el programa de carga no requiere la desconexión
manual del módulo Bluetooth. Esto ayuda a los estudiantes principiantes a evitar con éxito el problema de una falla
al momento de cargar el programa.
4/193
Machine Translated by Google
4) Simultáneamente es compatible con la programación gráfica Mixly, y la programación de código IDE arduino, que es
conveniente para los principiantes
5/193
Machine Translated by Google
5) El chasis del tanque DIY está diseñado para una fácil instalación. La fuente de alimentación utiliza dos baterías de litio
18650 con una duración de la batería de larga vida.
6/193
Machine Translated by Google
La versión disponible en este sitio web suele ser la última versión, y la versión real puede ser más reciente que la versión de la
imagen.
7/193
Machine Translated by Google
PASO 2: Descargue el software de desarrollo que sea compatible con el sistema operativo de su computadora.
8/193
Machine Translated by Google
También la versión 1.8.0 está disponible en el material que proporcionamos, y las versiones de nuestros materiales son
las últimas versiones cuando se hizo este curso.
9/193
Machine Translated by Google
10/193
Machine Translated by Google
Click Siguiente
11/193
Machine Translated by Google
Puede pulsar Browse... para elegir una ruta de instalación o escribir directamente en el directorio que desee. Haga clic en
Instalar para iniciar la instalación
12/193
Machine Translated by Google
Espere el proceso de instalación, si aparece la interfaz de Seguridad de Windows, simplemente continúe haciendo clic en
Instalar para finalizar la instalación.
13/193
Machine Translated by Google
14/193
Machine Translated by Google
A continuación, presentaremos la instalación del controlador de la placa de desarrollo UNO R3. La instalación del
controlador puede tener ligeras diferencias en diferentes sistemas informáticos. Así que en el siguiente vamos a pasar a la
instalación del controlador en el sistema de ventanas.
La carpeta Arduino contiene tanto el propio programa Arduino como los controladores que permiten que el Arduino se conecte a su
computadora mediante un cable USB. Antes de lanzar el software Arduino, va a instalar los controladores
USB.
Cuando conecte la placa UNO a su computadora por primera vez, haga clic con el botón derecho en el icono de su
"Computadora" —>para "Propiedades"— > haga clic en el botón "Administrador de dispositivos", en "Otros dispositivos" o
"USBSerial", debería ver un icono para "Dispositivo desconocido" con un pequeño triángulo de advertencia amarillo junto
a él. Este es su Arduino.O puede buscar "devi" en su computadora, o puede abrir el administrador de dispositivos de su
computadora.
15/193
Machine Translated by Google
16/193
Machine Translated by Google
A continuación, haga clic con el botón derecho en el dispositivo y seleccione la opción de menú superior (Actualizar software
del controlador...) que se muestra como la figura siguiente.
17/193
Machine Translated by Google
Como se muestra a continuación. En esta página, seleccione "Examinar mi computadora en busca de software
controlador".
Haga click con el botón derecho en el dispositivo y seleccione la opción de menú superior (Actualizar software
del controlador...). A continuación, se le pedirá: 'Buscar automáticamente el software de controlador actualizado'
o 'Examinar mi ordenador en busca del controlador del software'.
18/193
Machine Translated by Google
Seleccione la opción para examinar y navegar a: C\Program Files(x86)\Arduino\drivers. (Nota: Aquí está la ruta que
usted elige instalar el IDE de Arduino. La ruta elegida en el tutorial de instalación en la sección anterior es correcta,
por esa razón la ruta elegida es: C\Program Files(x86)\Arduino\drivers).
19/193
Machine Translated by Google
Haga clic en "Siguiente" y puede recibir una advertencia de seguridad, si es así, permitir que el software se instale. Una
vez instalado el software, recibirá un mensaje de confirmación. Instalación completada, haga clic en "Close".
20/193
Machine Translated by Google
Hasta ahora, el controlador está bien instalado. A continuación, puede hacer clic con el botón derecho
“Computer”—>“Properties”—>“Device manager”, usted debe ver el dispositivo como la figura que se muestra a
continuación.
21/193
Machine Translated by Google
Una vez que se sienta cómodo con el software Arduino y el uso de las funciones integradas, es posible que desee ampliar la
capacidad de su Arduino con bibliotecas adicionales.
22/193
Machine Translated by Google
En el IDE de Arduino, vaya a “Sketch > Include Library”. En la parte superior de la lista desplegable, seleccione la
opción "Agregar biblioteca .ZIP".
23/193
Machine Translated by Google
Se le pedirá que seleccione la Libreria que desea agregar. Vaya a la ubicación del archivo .zip y ábralo.
(Nota: Esto es sólo para demostrar cómo agregar un archivo de Libreria zip, si necesita agregar un archivo de Libreria depende
de sus necesidades reales del programa)
24/193
Machine Translated by Google
Regresar al menú “Sketch > Import Library”. Ahora deberías ver la Libreria en la parte inferior del menú desplegable.
Está listo para ser utilizado en su boceto. El archivo zip se habrá expandido en la carpeta de bibliotecas del directorio de
croquis Arduino.
NB: La Libreria estará disponible para su uso en sketches, pero los ejemplos de la libreria no se expondrán en los Archivos
> Ejemplos hasta después de reiniciar el IDE.
Esos dos son los enfoques más comunes. Los sistemas MAC y Linux se pueden manejar de la misma manera. La instalación
manual a introducir a continuación como alternativa puede ser utilizar y los usuarios sin necesidades pueden omitirla.
25/193
Machine Translated by Google
Prueba de Parpadeo
Aprenderá cómo programar su placa controladora UNO para parpadear el LED incorporado del Arduino, y cómo descargar
programas por pasos básicos.
La placa UNO tiene filas de conectores a lo largo de ambos lados que se utilizan para conectarse a varios dispositivos
electrónicos y 'escudos' plugin que amplía su capacidad.
También tiene un solo LED que puede controlar desde sus bocetos. Este LED está construido en la placa UNO y a menudo se
conoce como el LED 'L', ya que así es como se etiqueta en la placa.
26/193
Machine Translated by Google
Es posible que el LED 'L' de su placa UNO ya parpadee cuando lo conecta a un enchufe USB. Esto se debe a que las placas
generalmente se envían con el boceto 'Blink' preinstalado.
En este proyecto, reprogramaremos la placa UNO con nuestro propio boceto de parpadeo y luego cambiaremos la velocidad
a la que parpadea. En el capítulo anteriorCómo instalar Arduino IDE, configuró su Arduino IDE y se aseguró de que pudiera
encontrar el puerto serie correcto para que se conectara a su placa UNO. Ha llegado el momento de poner esa conexión a
prueba y programar su placa UNO.
El IDE de Arduino incluye una gran colección de bocetos de ejemplo que puede cargar y usar. Esto incluye un boceto de
ejemplo para hacer que el LED 'L' parpadee.
Cargue el boceto 'Blink' que encontrará en el sistema de menús del IDE en File > Examples > 01.Basics
27/193
Machine Translated by Google
Cuando se abra la ventana de boceto, agrándela para que pueda ver todo el boceto en la ventana.
28/193
Machine Translated by Google
Los bocetos de ejemplo incluidos con el IDE de Arduino son de 'solo lectura'. Es decir, puede cargarlos en una placa
UNO R3, pero si los cambia, no puede guardarlos como el mismo archivo. Ya que vamos a cambiar este boceto, lo
primero que debe hacer es guardar su propia copia. En el menú Archivo en el IDE de Arduino, seleccione 'Guardar
como..' y luego guarde el boceto con el nombre 'MyBlink'.
29/193
Machine Translated by Google
Has guardado tu copia de 'Blink' en tu cuaderno de bocetos. Esto significa que si alguna vez desea encontrarlo de nuevo,
puede abrirlo usando la opción de menú Archivo > Cuaderno de bocetos.
30/193
Machine Translated by Google
Conecte su placa Arduino a su ordenador con el cable USB y compruebe que el 'Tipo de
placa' y el 'Puerto Serie' estén configurados correctamente.
31/193
Machine Translated by Google
32/193
Machine Translated by Google
Nota: El tipo de tarjeta y el puerto serie aquí, puede que no sean necesariamente los mismo que se muestran en la imagen. Si
está utilizando 2560, entonces tendrá que elegir Mega 2560 como el Tipo de tarjeta, otras opciones se pueden tomar de la
misma manera. Y el puerto serie que se muestra para todos es diferente, a pesar que COM 6 elegido aquí, podría ser COM3 o
COM4 en su ordenador. Se supone que un puerto COM correcto es COMX (Arduino XXX), que es según los criterios de
Certificación.
33/193
Machine Translated by Google
El IDE arduino le mostrará la configuración actual para el tablero en la parte inferior de la ventana.
Si observa el área de estado del IDE, verá una barra de progreso y una serie de mensajes. Al principio, dirá 'Compilando
sketch...'. Esto convierte el croquis en un formato adecuado para cargarlo en el tablero.
34/193
Machine Translated by Google
A continuación, el estado cambiará a "Uploading". En este punto, los LED en el Arduino deben comenzar a parpadear a
medida que se transfiere el boceto.
El otro mensaje nos indica que el croquis utiliza 928 bytes de los 32.256 bytes disponibles. Después de la fase 'Compilación de
croquis..' podría obtener el siguiente mensaje de error:
35/193
Machine Translated by Google
Puede significar que la placa no está conectada en absoluto, o los controladores no se han instalado (si es necesario) o que se
selecciona el puerto serial incorrecto.
Si encuentra esto, vuelva al Proyecto 0 y compruebe la instalación. Una vez completada la carga, la placa debe reiniciarse y
comenzar a parpadear. Abra el código.
Tenga en cuenta que una gran parte de este sketch se compone de comentarios. Estas no son instrucciones reales
del programa; más bien, sólo explican cómo funciona el programa. Están allí para su beneficio.
Todo lo escrito entre /* and */ en la parte superior del sketch existe un bloque de comentarios; explica para qué sirve el sketch.
Los comentarios de una sola línea comienzan con // y todo hasta el final de esa línea se considera un comentario. La primera
línea de código es: int led = 13;
Como explica el comentario anterior, esto entrega un nombre al pin al que está conectado el LED. Esto es 13 en la mayoría de
los Arduinos, incluyendo el UNO y LEONARDO.
36/193
Machine Translated by Google
A continuación, tenemos la función 'setup'. Una vez más, como dice el comentario, esto se ejecuta cuando se pulsa el botón de reinicio. También
se ejecuta cada vez que la placa se restablece por cualquier motivo, como la potencia que se le aplica primero, o después de cargar un sketch.
configuración nula() {
Cada croquis Arduino debe tener una función de 'configuración', y el lugar donde es posible que desee agregar instrucciones propias es entre
el { y el }.
En este caso, hay un solo comando allí, que, como dice el comentario le dice a la placa Arduino que vamos a utilizar el pin LED como salida.
También es obligatorio que un croquis tenga una función de 'bucle' (“Loop”). A diferencia de la función 'setup' que solo se ejecuta una vez,
después de un restablecimiento, la función 'Loop', una vez que haya terminado de ejecutar sus comandos, comenzará inmediatamente de
nuevo.
bucle vacío()
{ escritura digital (led, ALTA); retraso(1000);
escritura digital (led, BAJO); retraso(1000);
37/193
Machine Translated by Google
Dentro de la función de bucle (Loop), los comandos primero que todo encienden el pin LED (HIGH), luego 'delay' para 1000
milisegundos (1 segundo), luego apagan el pin LED y hacen una pausa para otro segundo. Ahora vas a hacer que tu LED
parpadee más rápido. Como usted podría haber adivinado, la clave de esto radica en cambiar el parámetro en () para el
comando 'delay'.
Este período de retardo es de milisegundos, así que si desea que el LED parpadee el doble de rápido, cambie el valor de 1000 a
500. Esto se detendría durante medio segundo cada retraso en lugar de un segundo entero.
Vuelva a cargar el boceto y debería ver que el LED comienza a parpadear más rápidamente.
38/193
Machine Translated by Google
Mixly es un software de programación gráfica Arduino de código abierto gratuito, basado en el marco de
programación gráfica Blockly de Google, y desarrollado por Mixly Team@ BNU. Es una herramienta gratuita de
programación gráfica de código abierto para el desarrollo electrónico creativo; un ecosistema de apoyo completo
para la educación electrónica creativa; un escenario para que los educadores fabricantes hagan realidad sus
sueños. Aunque hay un software de programación gráfica Ardublock lanzado por arduino oficial, Ardublock no
es lo suficientemente perfecto, y muchas funciones comunes no se pueden realizar.
Diseño Conceptual:
(1) Usabilidad
Mixly está diseñado para ser completamente verde. actualmente. Se puede ejecutar en Windows XP y superior.
(2) Simplicidad
Mixly utiliza el motor de programación gráfica Blockly para reemplazar la manipulación de texto compleja con bloques de
construcción gráficos, proporcionando una buena base para que los principiantes empiecen rápidamente.
39/193
Machine Translated by Google
1. Utilice los diferentes iconos de color para representar diferentes tipos de bloques funcionales, muy conveniente para
que los usuarios clasifiquen.
2. Proporcione las opciones predeterminadas en el bloque de funciones compuestas para reducir eficazmente el número
de arrastres de usuario.
3. Integre todas las características del software en la misma interfaz.
4. Proporcione el tutorial de referencia y los ejemplos de código.
(3) Funcionalidad
Tiene funciones versátiles. Mixly casi puede implementar todas las funciones que Arduino IDE tiene. Soporta todas las
tarjetas oficiales de desarrollo Arduino.
(4) Continuidad
El objetivo del sistema de programación gráfica no es sustituir definitivamente el método de programación de texto
original, sino comprender mejor los principios de programación y el pensamiento de programas a través de la
programación gráfica, y sentar las bases para la programación futura de textos. También es la filosofía de diseño para
Mixly. Se ha añadido contenido más continuo al diseño del software para proteger los resultados de aprendizaje del
usuario. Para ser específico, incluye la introducción de tipos variables, la consistencia de la programación de texto tanto
como sea posible en el diseño del módulo, y el apoyo de programación gráfica y de texto.
40/193
Machine Translated by Google
(5) Ecológico
El concepto de diseño más importante de Mixly es su característica ecológica, que puede distinguirlo de otra programación
gráfica arduino. Con el fin de lograr un desarrollo sostenible, Mixly está diseñado para permitir a los fabricantes desarrollar sus
propios módulos únicos. Pero los usuarios requieren la base de programación de JavaScript para hacer esta parte del módulo).
También permite a los usuarios utilizar directamente la función de programación gráfica de Mixly para generar módulos comunes
(como pantalla digital LED, emisión de zumbador, etc. Los usuarios pueden hacer esta parte del módulo sólo usando Mixly).
Ambos tipos de módulos mencionados anteriormente se pueden importar al sistema Mixly a través de la función "Importar",
realizando así el propio valor del usuario en la popularidad del software Mixly.
Grupo de Usuarios:
Desde el concepto de diseño anterior, se puede ver que Mixly es adecuado para que los estudiantes de primaria y secundaria
cultiven el pensamiento de programación. También está disponible para una programación rápida al crear un proyecto.
También es bueno para aquellos amigos que no quieren aprender programación de texto, pero quieren hacer algunas pequeñas
41/193
Machine Translated by Google
Mira la interfaz principal de Mixly, incluye cinco partes, es decir, selección de bloques, edición de código, código
de texto (oculto), función del sistema y área de solicitud de mensaje. Se muestra a continuación.
42/193
Machine Translated by Google
arrastrarlo hacia afuera de la ventana de código o arrastrar a papelera de reciclaje, eliminar clave o hacer clic con el botón derecho para
eliminar el bloque Soporta cuatro idiomas: English, Español (Español), Chino Simplificado (Chino Simplificado), Chino Tradicional (Chino)
Tradicional).
43/193
Machine Translated by Google
(Nota: El nombre de la ruta sin comprimir no puede tener una barra espaciadora. Si el nombre con llamado necesita un
separador, puede usar un carácter de subrayado para reemplazar la barra espaciadora, por ejemplo, debe nombrar la carpeta
44/193
Machine Translated by Google
45/193
Machine Translated by Google
Haga doble clic en el archivo de aplicación mixly para abrir el software. Y seleccione la placa de control principal como
Arduino/Genuino Uno.
46/193
Machine Translated by Google
El archivo de biblioteca mixly es un código gráfico integrado personalizado para una determinada placa de control. Por
ejemplo, hemos escrito un archivo de biblioteca mezclada para tanques robot inteligentes. Puede cargarlo directamente
en el software Mixly y usarlo directamente, lo que aporta comodidad a su proceso de programación. El archivo de
biblioteca general contiene los siguientes archivos, el último archivo .xml es el archivo de biblioteca legible del software Mixly
47/193
Machine Translated by Google
Después de abrir el software Mixly, seleccione "importar" y luego seleccione la ruta donde se encuentra la carpeta
48/193
Machine Translated by Google
49/193
Machine Translated by Google
Arrastre el bloque para controlar el avance del tanque al área de programación y modifique la variable PWM a 200.
50/193
Machine Translated by Google
Conecte la placa de desarrollo Arduino UNO al ordenador con un cable de datos USB y encienda el interruptor de
alimentación. Seleccione el tipo de placa de desarrollo como "Arduino UNO" en el software y verá que aparece un nuevo
51/193
Machine Translated by Google
Haga clic en “Upload” y espere a que se complete la carga. Una vez completada la carga del programa, su tanque avanzará a
un PWM de 200. El rango variable de PWM es 0255, 0 significa parada, 255 representa la velocidad máxima.
52/193
Machine Translated by Google
53/193
Machine Translated by Google
54/193
Machine Translated by Google
Tal vez el software del programa que abrió se muestra en chino, se puede establecer el idioma en la esquina superior
derecha del software, se puede elegir English. Actualmente, la Libreria Smart_Robot_Tank no es compatible con el
español. Si eliges español, el sistema sigue mostrando English.
55/193
Machine Translated by Google
56/193
Machine Translated by Google
57/193
Machine Translated by Google
58/193
Machine Translated by Google
59/193
Machine Translated by Google
60/193
Machine Translated by Google
el rango ultrasónico).
61/193
Machine Translated by Google
62/193
Machine Translated by Google
NO
ICONOS BLOCK DEFINICIÓN
63/193
Machine Translated by Google
instrucción o declaración.
4
Tú puedes hacer click en el ícono de engranaje azul para
64/193
Machine Translated by Google
65/193
Machine Translated by Google
66/193
Machine Translated by Google
10
67/193
Machine Translated by Google
temporizador
68/193
Machine Translated by Google
Bloques Matemáticos:
69/193
Machine Translated by Google
1 Un número
Haga clic para seleccionar el & (extremo bit a bit); l (bit a bit o);
<< 3 (desplazamiento de bits a la izquierda); >>
(desplazamiento de bits a la derecha)
70/193
Machine Translated by Google
Click para seleccionar sin; cos; tan; asin; acos; atan; ln;
71/193
Machine Translated by Google
72/193
Machine Translated by Google
Bloques de Texto:
73/193
Machine Translated by Google
2 Un personaje
74/193
Machine Translated by Google
75/193
Machine Translated by Google
76/193
Machine Translated by Google
Listado de Bloques:
77/193
Machine Translated by Google
1
Crear una lista con cualquier número de
elementos
2
Crea una lista a partir de un texto. (int
mylist [ ]={0,0,0};)
3
Devuelve la longitud de una lista.
78/193
Machine Translated by Google
Bloques Lógicos:
79/193
Machine Translated by Google
NO
ICONOS DE BLOQUE DEFINICIÓN
.
logic comparision =: Devuelve true si ambas entradas son
80/193
Machine Translated by Google
and: Devuelve true si ambas entradas son true; or: Devolver true si
2
Al menos una de las entradas es verdadera
5 Devuelve Nulo
81/193
Machine Translated by Google
82/193
Machine Translated by Google
83/193
Machine Translated by Google
84/193
Machine Translated by Google
85/193
Machine Translated by Google
Monitor de Bloques:
86/193
Machine Translated by Google
imprimir el carácter.
87/193
Machine Translated by Google
Variables de Bloque
88/193
Machine Translated by Google
2 Conversión de tipos
obligatoria de constantes o
variables
89/193
Machine Translated by Google
Funciones de Bloque:
90/193
Machine Translated by Google
Crea una función sin salida. Haga clic en el icono azul para establecer el
1
parámetro de procedimiento. (sin valor devuelto)
Crea una función con una salida. Haga clic en el icono azul para establecer el
91/193
Machine Translated by Google
92/193
Machine Translated by Google
93/193
Machine Translated by Google
detener.
94/193
Machine Translated by Google
95/193
Machine Translated by Google
de 0 ~ 180 grados.
96/193
Machine Translated by Google
variableir_rec.
97/193
Machine Translated by Google
sensor_de_evitación_infrarrojo_derecho
98/193
Machine Translated by Google
Descripción General
En esta lección aprenderemos a controlar la rotación del motor y realizaremos la dirección y el control de velocidad del tanque
controlando la rotación de los dos motores.
El tanque robot utiliza el TB6612FNG como chip de conducción del motor. La placa de expansión ha integrado el chip
TB6612FNG. TB6612FNG es un producto robusto producido por Toshiba Semiconductor Corporation. El dispositivo de
accionamiento del motor actual, que tiene una gran estructura de unión de puente MOSFETH de corriente, salida de circuito de
doble canal, puede conducir 2 motores al mismo tiempo. TB6612FNG emite potencia de accionamiento continuo de hasta 1 A por
canal Corriente, corriente máxima de arranque de hasta 2A/3A (pulso continuo/pulso único (Energía); 4 modos de control del
motor: adelante/ inverso/ freno / parade Fin; PWM soporta frecuencias de hasta 100 kHz; estado de espera; Circuito interno de
detección de baja tensión y circuito de protección de apagado térmico; temperatura de trabajo: 20~85°C; Paquete de parches
pequeño SSOP24.
99/193
Machine Translated by Google
Specificaciones:
• Corriente continua de salida: 1A por canal (puede ser paralelismo para entregar 2A continuo)
100/193
Machine Translated by Google
101/193
Machine Translated by Google
A1, A2, B1 y B2 de la placa de motor Arduino es la interfaz del motor. A1 y A2 son iguales. B1 y B2 también son los mismos. El
motor de la interfaz A es controlado por el PIN D2, y el PIN D5 emite la señal PWG para controlar la velocidad. El motor de la
interfaz B está controlado por el PIN D4, y la velocidad de salida de PIN D6 PWG señal controla la velocidad. El valor PWM está en
el rango de 0255. Cuanto mayor sea el valor, más rápido giran los motores.
102/193
Machine Translated by Google
103/193
Machine Translated by Google
Vamos al programa
En la prueba experimental N° 1, escribiremos el código para controlar el tanque para avanzar, retroceder,
girar a la izquierda, girar a la derecho y detenerse.
Código Mixly
Realice una Buena conexión como el diagrama anterior. Entonces, pasemos a escribir el código de prueba.
Abra el software Mixly. Haga click en "New" para agregar un nuevo proyecto y, a continuación, inicie la
programación.
Si desea consultar el programa que proporcionamos, abra el código de referencia para esta lección
"Test_1_Motor_Speed_and_Direction_Control.mix" en los materiales de referencia que proporcionamos.
Pensando en la programación
Este bloque controla la dirección del tanque hacia adelante, 255 representa la velocidad máxima, y el rango que se puede
modificar es 0255. Cuando la velocidad se establece en 0, significa detenerse.
104/193
Machine Translated by Google
El carácter es "left", el valor de la velocidad es 200, lo que significa que el control del tanque se gira hacia la
izquierda, y la velocidad de rotación es de 200.
El caracter es "turn_left", lo que significa que el control del tanque gira hacia la izquierda y hacia adelante
105/193
Machine Translated by Google
Código Arduino
Si desea consultar el programa que proporcionamos. Abra el código de referencia para esta lección
"Test_1_Motor_Speed_and_Direction_Control.ino" en los materiales de referencia que proporcionamos.
Pensando en la programación
En el IDE arduino, significa definir una subfunción. Aquí definimos una subfunción para controlar el
anular adelante()
{digitalWrite(2,BAJO);
escritura analógica(5,255);
escritura analógica(6,255);
106/193
Machine Translated by Google
¿Qué verá….?
Subir el código de prueba a la placa de control UNO R3, encender el interruptor POWER. Verás que el tanque tarda 1
segundo en avanzar, luego 1 segundo para retroceder, 1 segundo a la izquierda, 1 segundo a la derecha y 1 segundo para
107/193
Machine Translated by Google
separado cómo utilizar sensores de prevención de obstáculos infrarrojos para detectar obstáculos y observar los resultados
devueltos por los sensores para determinar si se detectan obstáculos. En la prueba experimental N° 2, aprendimos a
combinar el sensor de evitación de obstáculos infrarrojos con el motor para controlar el tanque para completar la función de
evitación de obstáculos.
108/193
Machine Translated by Google
El sensor de detector de obstáculos infrarrojos tiene un par de tubos de transmisión y recepción infrarrojos. El transmisor
emite un rayo infrarrojo de cierta frecuencia. Cuando la dirección de detección encuentra un obstáculo (superficie reflectante),
los rayos infrarrojos se reflejan hacia atrás y el tubo receptor lo recibirá. En este momento, el indicador (LED verde) se
ilumina. Después de ser procesado por el circuito, el terminal de salida de señal emitirá señal digital. Puede girar el
potenciómetro del escudo para ajustar la distancia de detección. Es mejor ajustar el potenciómetro para hacer el LED verde
en un estado entre encendido y apagado. La distancia de detección es la mejor, casi 10 cm.
Leemos el nivel de señal del sensor detector de obstáculos para juzgar si detectamos obstáculos o no. Cuando detecta un
obstáculo, el pin de señal del sensor emite LOW (pantalla 0); de lo contrario, salida HIGH (pantalla 1). Muestre el
109/193
Machine Translated by Google
110/193
Machine Translated by Google
111/193
Machine Translated by Google
Vamos al programa
El propósito principal del experimento de prueba es leer la señal de retorno del sensor de evitación de
obstáculos infrarrojos e imprimirla en el monitor de puerto serial. Cuando detecta un obstáculo, el pin de
señal del sensor emite LOW (pantalla 0); de lo contrario, salida HIGH (pantalla 1).
Código Mixly
Realice una correcta conexión como el diagrama anterior. Luego, pasemos a escribir el código de prueba.
Abra el software Mixly. Haga clic en "New" para agregar un nuevo proyecto y, a continuación, inicie la
programación. Si desea consultar el programa que proporcionamos, abra el código de referencia para esta
proporcionamos.
112/193
Machine Translated by Google
Tal vez el idioma que se muestra al abrir el software Mixly no es Español, puede cambiar el idioma del software aquí.
113/193
Machine Translated by Google
Después de cargar el programa, abra el monitor serial para ver la señal devuelta por el sensor de evitación de obstáculos
infrarrojos.
114/193
Machine Translated by Google
Nota importante: Antes de cargar el programa, es necesario cerrar el monitor serial, de lo contrario el monitor serial
ocupará la interfaz de comunicación del programa cargado.
115/193
Machine Translated by Google
Código Arduino
Si desea consultar el programa que proporcionamos, abra el código de referencia para esta lección
"Test_1_Infrared_Obstacle_Avoidance_Sensor.ino" en los materiales de referencia que proporcionamos. Después de
cargar el código, haga clic en el botón de la esquina superior derecha para abrir el monitor serie para ver la distancia
medida.
116/193
Machine Translated by Google
Nota importante: Antes de cargar el programa, es necesario cerrar el monitor serial, de lo contrario el monitor serial
ocupará la interfaz de comunicación del programa cargado.
117/193
Machine Translated by Google
Código Mixly
Piensa en la lógica del código. Abra el software Mixly. Haga clic en "New" para agregar un nuevo proyecto y, a continuación, inicie la
programación. Si desea consultar el programa que proporcionamos, abra código referencia lección
el de
"Test_2_Infrared_Obstacle_Avoidance_Robot_Tank.mix" para
en los materiales de referencia que esta
proporcionamos.
Pensando en la programación
118/193
Machine Translated by Google
(2) Si el sensor de evitación de obstáculos infrarrojos a la derecha detecta un obstáculo, el sensor de evitación de
119/193
Machine Translated by Google
(3) Si los sensores izquierdo y derecho detectan obstáculos al mismo tiempo, el tanque va hacia atrás, entonces el tanque
120/193
Machine Translated by Google
121/193
Machine Translated by Google
122/193
Machine Translated by Google
Pensando en la programación
(1) Si el sensor de evitación de obstáculos infrarrojos de la izquierda detecta un obstáculo, el sensor de evitación de
hacia atrás();
retraso(500);
Gira a la derecha();
retraso(500);
123/193
Machine Translated by Google
(2) Si el sensor de evitación de obstáculos infrarrojos a la derecha detecta un obstáculo, el sensor de evitación de obstáculos
hacia atrás();
retraso(500);
girar a la izquierda();
retraso(500);
124/193
Machine Translated by Google
(3) Si los sensores izquierdo y derecho detectan obstáculos al mismo tiempo, el tanque va hacia atrás, entonces el tanque
si (luz_izquierda==0&& luz_derecha==0)
Detener();
retraso(500);
hacia atrás();
retraso(500);
girar a la izquierda();
125/193
Machine Translated by Google
demás
Gira a la derecha();
retraso(500);
demás
adelante();
126/193
Machine Translated by Google
Nota: De acuerdo con las leyes físicas: Los objetos negros tienen una fuerte capacidad para absorber la luz. La función de
evitación de obstáculos infrarrojos se basa en transmitir y recibir rayos infrarrojos para detectar obstáculos en frente.
Cuando todos los obstáculos delante del tanque son objetos negros, la sensibilidad de la detección del sensor disminuirá.
127/193
Machine Translated by Google
En esta lección aprenderemos sobre sensores y servos ultrasónicos y los combinaremos. El servomotor impulsa la onda
ultrasónica para ayudar al tanque a detectar los obstáculos frontales izquierdo y frontal derecho, así como los obstáculos
delanteros, evitando así obstáculos. Utilice ultrasonido para medir la distancia de los objetos delante del tanque para
ayudar al tanque a seguir el objeto delante de él.
128/193
Machine Translated by Google
Revise el sensor ultrasónico de la lección anterior. Funciona como el ojo de un murciélago. Determina la distancia de los
Como se muestra en la siguiente imagen, es nuestro módulo ultrasónico. Tiene dos cosas como los ojos.
129/193
Machine Translated by Google
Los servomotores son grandes dispositivos que pueden girar a una posición especificada. Por lo general, tienen un servo
brazo que puede girar 180 grados. Usando el Arduino, podemos decirle a un servo que vaya a una posición específica e irá
allí. ¡Tan simple como eso! Los motores Servo se utilizaron por primera vez en el mundo del control remoto (RC), por lo
general para controlar la dirección de los coches RC o las aletas en un avión RC. Con el tiempo, encontraron sus usos en
Hay dos maneras de controlar un servomotor con Arduino. Uno es utilizar un puerto de sensor digital común de Arduino
para producir onda cuadrada con diferente ciclo de trabajo para simular la señal PWM y utilizar esa señal para controlar el
posicionamiento del motor. Otra forma es utilizar directamente la función Servo del Arduino para controlar el motor. De esta
manera, el programa será más fácil. A continuación, aprendemos a controlar el servo. El servomotor tiene tres cables. El
color de los cables varía entre los servomotores, pero el plomo rojo es siempre 5V y el GND será marrón.
El rojo es el cable de alimentación y debe estar conectado al puerto de 5v y este es generalmente naranja.
130/193
Machine Translated by Google
131/193
Machine Translated by Google
132/193
Machine Translated by Google
Vamos al programa
Prueba 1—Servo
al ángulo especificado.
Código Mixly
Realizar la conexión correctamente como el diagrama anterior. Entonces, pasemos a escribir el código de
prueba. Abra el software Mixly. Haga clic en "New" para agregar un nuevo proyecto y, a continuación,
inicie la programación. Si desea consultar el programa que proporcionamos, abra el código de referencia
133/193
Machine Translated by Google
Pensando en la programación
Este bloque de código se utiliza para el conteo de bucles (Loops), contando desde 0 a 180, aumentando en 1 cada vez.
Este bloque de código se utiliza para controlar el ángulo de rotación del motor, el ángulo de entrada del código POS, el
rango es 0180.
134/193
Machine Translated by Google
Código Arduino
si desea consultar el programa que proporcionamos.abrir el software Arduino IDE y abrir el código de referencia para esta
Antes de poder ejecutar esto, asegúrese de que ha instalado la Libreria > Servo < o vuelva a instalarla, si es
necesario. De lo contrario, el código no funcionará. Para obtener más información sobre cómo cargar el archivo
de Libreria consulte Lección sobre cómo agregar librerias.
Pensando en la programación
// Este bloque de código se utiliza para el recuento de bucles (Loops), contando de 0 a 180, aumentando en 1 cada vez
// Este bloque de código se utiliza para controlar el ángulo de rotación del motor, el ángulo de entrada de código POS, el rango
es 0180
myservo.write(POS);
Después de cargar el código, el servomotor gira de 0 grados a 180 grados, 1 grado a la vez. A continuación, gire de 180 grados a 0
135/193
Machine Translated by Google
En la prueba experimental 2, aprenderemos cómo controlar el sensor ultrasónico y mostrar la distancia medida
Código Mixly
Con alambre para arriba bien como el diagrama antedicho. Bien, pasemos a escribir el código de prueba.
Software abierto y mezclado. Haga clic en "Nuevo" para agregar un nuevo proyecto, luego inicie su
programación. si desea hacer referencia al programa que proporcionamos.abra el código de referencia para esta
136/193
Machine Translated by Google
Después de cargar el programa, abra el monitor serie para ver la distancia medida por el sensor ultrasónico.
137/193
Machine Translated by Google
Código Arduino
Si desea consultar el programa que proporcionamos, abra el software Arduino IDE y abra el código de
referencia para esta lección "Test_2_Ultrasonic Sensor Module.ino" en los materiales de referencia que
proporcionamos. Después de cargar el código, haga clic en el botón en la esquina superior derecha para
abrir el monitor serie para ver la distancia medida
138/193
Machine Translated by Google
139/193
Machine Translated by Google
En la prueba experimental 3, el servomotor, el sensor ultrasónico y el motor se controlan simultáneamente para ayudar al
Código Mixly
Piense en la lógica del código. Software abierto y mezclado. Haga clic en "Nuevo" para agregar un nuevo proyecto, luego
inicie su programación. Si desea hacer referencia al programa que proporcionamos.Abra el código de referencia de esta
Pensando en la Programación
Primero, definimos la distancia entre el tanque y el obstáculo en el frente izquierdo como DL, la distancia entre el tanque y el
obstáculo en frente es DM, y la distancia entre el tanque y el obstáculo en frente es DR.
140/193
Machine Translated by Google
Al mismo tiempo, cuando la distancia de los obstáculos en el frente izquierdo o frente a la derecha es inferior a 50
cm, y el obstáculo en el frente a la derecha está más cerca del tanque que el obstáculo en el frente a la izquierda,
gire a la izquierda.
141/193
Machine Translated by Google
El obstáculo en la parte delantera izquierda está más cerca del tanque que el obstáculo de la derecha, gire a la derecha.
142/193
Machine Translated by Google
143/193
Machine Translated by Google
Código Arduino
Si desea consultar el programa que proporcionamos.abra el código de referencia para esta lección
proporcionamos.
Pensando en la programación.
En primer lugar, definimos la distancia entre el tanque y el obstáculo en el frente izquierdo como DL, la distancia
entre el tanque y el obstáculo en el frente es DM, y la distancia entre el tanque y el obstáculo en frente es DR.
Si la distancia delante del tanque es inferior a 20 cm, el tanque se detiene.
Detener();
retraso(1000);
144/193
Machine Translated by Google
Al mismo tiempo, cuando la distancia de los obstáculos en el frente izquierdo o frente a la derecha es inferior a 50
cm, y el obstáculo en el frente a la derecha está más cerca del tanque que el obstáculo en el frente a la izquierda,
gire a la izquierda.
procedimiento(90);
girar a la izquierda();
retraso(500);
adelante();
145/193
Machine Translated by Google
2El obstáculo en la parte delantera izquierda está más cerca del tanque que el obstáculo de la derecha, gire a
la derecha.
procedimiento(90);
girar a la izquierda();
retraso(500);
adelante();
} demás {
procedimiento(90);
Gira a la derecha();
retraso(500);
adelante();}
146/193
Machine Translated by Google
Cuando no hay ningún obstáculo delante del tanque, el tanque sigue caminando recto. Cuando la distancia del obstáculo
delante del tanque es inferior a 20 cm, el tanque se detiene, luego detecta si hay un obstáculo en el frente izquierdo y el
147/193
Machine Translated by Google
Código Mixly
Piense en la lógica del código. Software abierto y mezclado. Haga clic en "Nuevo" para agregar un nuevo proyecto, luego
inicie su programación. si desea hacer referencia al programa que proporcionamos.abra el código de referencia para esta
148/193
Machine Translated by Google
Pensamiento de programación
Al detectar que la distancia del objeto delante es inferior a 10cm, el tanque se mueve hacia atrás.
Cuando la distancia del objeto en frente se detecta entre 10 ~ 20 cm, el tanque se detiene.
149/193
Machine Translated by Google
Cuando se detecta la distancia del objeto en frente entre 20 ~ 60 cm, el tanque se mueve hacia adelante.
Al detectar que la distancia del objeto delante es superior a 60 cm, el tanque se detiene.
150/193
Machine Translated by Google
Código Arduino
Si desea hacer referencia al programa que proporcionamos.abra el código de referencia para esta lección
Pensando en la programación
// Al detectar que la distancia del objeto en frente es inferior a 10 cm, el tanque se mueve hacia atrás.
si (distancia <= 10)
{ hacia atrás(); }
// Cuando la distancia del objeto en frente se detecta entre 10 ~ 20 cm, el tanque se detiene.
else if (distancia > 10 && distancia < 20) {
Detener();
}
151/193
Machine Translated by Google
// Cuando se detecta la distancia del objeto en frente entre 20 ~ 60 cm, el tanque se mueve hacia adelante.
de lo contrario si (distancia >= 20 && distancia <= 60)
{ adelante(); }
// Al detectar que la distancia del objeto delante es superior a 60 cm, el tanque se detiene.
demás
{
Detener();
}
152/193
Machine Translated by Google
El tanque detecta la distancia del objeto delante a través del sensor ultrasónico. Cuando el objeto frontal se mueve, el
tanque seguirá el movimiento, manteniendo la distancia entre el tanque y el objeto en frente entre 10cm ~ 20cm.
153/193
Machine Translated by Google
tanque, ir hacia adelante, hacia atrás, girar a la izquierda, girar a la derecha, girar a la izquierda girar a la derecha.
154/193
Machine Translated by Google
mundo sin él. Un control remoto por infrarrojos se puede utilizar para controlar una amplia gama de electrodomésticos como
televisión, audio, grabadoras de vídeo y receptores de señal de satélite. Bueno, en la siguiente vamos a obtener una mejor
comprensión del control remoto por infrarrojos. El control remoto por infrarrojos se compone de sistemas de transmisión por
infrarrojos y de recepción de infrarrojos. Es decir, consta de un mando a distancia por infrarrojos, un módulo receptor de
155/193
Machine Translated by Google
La señal portadora infrarroja de 38K transmitida por un mando a distancia infrarroja está codificada por un chip de
codificación dentro del mando a distancia. Se compone de un código piloto, código de usuario, código de datos y código de
inversión de datos. El intervalo de tiempo entre pulsos se utiliza para distinguir si se trata de una señal 0 o 1. (cuando la
relación de nivel alto a nivel bajo es de aproximadamente 1:1, considerado como señal 0.) Y la codificación está bien
compuesta de la señal 0 y 1.El código de usuario del mismo botón en el mando a distancia no ha cambiado.
El uso de datos de diferencia distingue la tecla presionada en el mando a distancia. Al presionar un botón en el control
remoto, enviará una señal portadora infrarroja. Y cuando el receptor infrarrojo recibe esa señal, su programa decodificará la
señal portadora, y a través de diferentes códigos de datos, por lo tanto puede juzgar qué tecla se presiona. El
microcontrolador es decodificado por una señal recibida 0 o 1 para determinar qué tecla es presionada por el control remoto.
156/193
Machine Translated by Google
infrarrojo. Este dispositivo se integra con recepción, amplificación y demodulación. Su inter IC ha sido demodulado,
generando señal digital. Adecuado para el control remoto IR y la transmisión de datos por infrarrojos.
157/193
Machine Translated by Google
Vamos al programa.
En la prueba experimental 1, aprender a recibir señales de control remoto por infrarrojos, y distinguir el
valor de clave de control remoto correspondiente, y finalmente realizar el tanque de control remoto
infrarrojo.
Código Mixly
Piense en la lógica del código. Bueno, averiguar la lógica, usted puede tener un intento de escribir la
lógica de código de la evitación de obstáculos infrarrojos. Software abierto y mezclado. Haga clic en
"Nuevo" para agregar un nuevo proyecto, luego inicie su programación. Si desea hacer referencia al
proporcionamos.
158/193
Machine Translated by Google
Pensando en la programación
Este bloque de programa almacena los valores de clave recibidos del control remoto infrarrojo en variables ir_rec.
Si el valor de la tecla presionada es igual a 0FXX629D, significa que la tecla arriba. se presiona. Controlar el
tanque para avanzar a una velocidad de 240.
159/193
Machine Translated by Google
Después de completar la carga de código, utilice el control remoto por infrarrojos para controlar la dirección
de avance del tanque.
Teclas en IR
del control
remoto
Estado del Ir hacia Ir hacia atrás Girar a la Girar a la Rotar a la Rotar a la Para detener
160/193
Machine Translated by Google
Código Arduino
Si desea hacer referencia al programa que proporcionamos.Abra el código de referencia para esta lección
Antes de poder ejecutar esto, asegúrese de que ha instalado el < IRremote > biblioteca o vuelva a instalarlo, si es necesario.
De lo contrario, el código no funcionará. Para obtener información detallada sobre cómo cargar el archivo de biblioteca, consulte Lección sobre
cómo agregar bibliotecas.
Pensando en la programación
// Este bloque de programa almacena los valores de clave recibidos del control remoto infrarrojo en variables ir_rec.
si (irrecv.decode(&resultados))
ir_rec=resultados.valor;
irrecv.resume();
161/193
Machine Translated by Google
Después de completar la carga de código, utilice el control remoto por infrarrojos para controlar la
dirección de avance del tanque.
Teclas en IR
del control
remoto
Estado del Ir hacia Ir hacia atrás Girar a la Girar a la Rotar a la Rotar a la Para detener
162/193
Machine Translated by Google
En esta lección, estudiamos principalmente dos pruebas experimentales. En la prueba 1, aprendemos la comunicación entre
el módulo Bluetooth y el teléfono móvil. En la prueba 2, podemos cambiar libremente los diversos modos funcionales a
través de la aplicación del teléfono móvil, como la evitación de obstáculos ultrasónicos, la evitación de obstáculos
infrarrojos, el control remoto por infrarrojos, el control remoto del sensor de gravedad.
163/193
Machine Translated by Google
Principio y aplicación de Bluetooth Control remoto Bluetooth, como su nombre lo indica, dientes azules, y no se utiliza para
morder a las personas, pero un método de transmisión de datos inalámbrico. La tecnología Bluetooth es una tecnología
estándar que permite el intercambio de datos de corto alcance entre dispositivos fijos, dispositivos móviles y redes de área
personal de edificios (ondas de radio UHF en la banda ISM de 2,4 a 2,485 GHz). Hay dos tipos de módulos Bluetooth de
uso común en el mercado, los modelos HC05 y HC06. La diferencia entre ellos es que el HC05 es amoesclavo. No sólo
puede hacer pequeños informes a su propio "maestro", sino que también puede recibir el comando que se le da. El HC06
sólo puede trabajar en modo esclavo, que sólo puede aceptar el comando superior. Por ejemplo, en muchos casos es posible
que desee ser un hombre prepotente, dejando que los subordinados obedezcan la orden sin ninguna tontería. Así que en tal
164/193
Machine Translated by Google
165/193
Machine Translated by Google
En primer lugar, descargue el archivo "APP for LAFVIN iBot.apk" de la carpeta de su teléfono móvil e instálelo en un
software de aplicación.
A continuación, asegúrese de que el módulo Bluetooth está conectado. Empareja tu teléfono con HC06. para hacer esto,
vaya a Configuración>Bluetooth>Scan > de dispositivos, seleccione HC06 y parearlo. El código de acceso al par es
'1234'. Abra el software de terminal Bluetooth, vaya a opciones y seleccione la opción 'conectar un dispositivo seguro'. Se
166/193
Machine Translated by Google
Módulo Bluetooth, verá un dispositivo utilizable llamado HC06 en los DISPOSITIVOS EMPAREJADOS (como se muestra
a continuación). Si el HC06 no aparece en los DISPOSITIVOS EMPAREJADOS, vuelva a operar los pasos anteriores.
167/193
Machine Translated by Google
168/193
Machine Translated by Google
Haga clic en el botón de icono Conectar Bluetooth en la esquina superior derecha para entrar en la interfaz de conexión
Bluetooth.
169/193
Machine Translated by Google
A continuación, haga clic en la , y el HC06 aparecerá en los resultados de nuestro análisis. Seleccione HC06.
170/193
Machine Translated by Google
Después de seleccionar el dispositivo hc06, Haga clic para conectarse aparecerá en el cuadro Gris de la aplicación.
171/193
Machine Translated by Google
Haga clic en el botón Haga clic para conectar . La caja gris se convierte en caja naranja. espere 5 segundos.
172/193
Machine Translated by Google
El botón muestra el conectado , lo que significa que la aplicación está conectada al módulo Bluetooth correctamente. El icono
(Nota: Cuando el módulo Bluetooth no está conectado correctamente, la luz LED roja seguirá parpadeando. Cuando la conexión se
realiza correctamente, la luz LED roja permanecerá encendida.)
173/193
Machine Translated by Google
Si hay una advertencia en la interfaz, significa que Bluetooth no está encendido normalmente o que el
dispositivo seleccionado está mal. Siga los pasos anteriores para volver a conectarse.
174/193
Machine Translated by Google
Vamos al programa
En la Prueba Experimental 1, aprendimos a recibir la información enviada por la aplicación del teléfono móvil al
Código Mixly
Piense en la lógica del código. Haga clic en "Nuevo" para agregar un nuevo proyecto, luego inicie su
proporcionamos.
175/193
Machine Translated by Google
Pensando en la programación
entre el puerto serie de la placa de control principal arduino uno y el puerto serie de Bluetooth debe ser la
misma. La velocidad en baudios de comunicación del módulo Bluetooth HC06 es 9600 de forma
predeterminada.
serie.
176/193
Machine Translated by Google
Tal vez el idioma que se muestra cuando se abre el software mixly no es inglés, puede cambiar el idioma del software aquí.
Después de completar la carga del programa, abra el monitor serie para ver la información recibida por el módulo Bluetooth.
177/193
Machine Translated by Google
178/193
Machine Translated by Google
Nota importante: Antes de cargar el programa, debe cerrar el monitor serie, de lo contrario, el monitor serie
ocupará la interfaz de comunicación del programa cargado.
179/193
Machine Translated by Google
Código Arduino
Si desea hacer referencia al programa que proporcionamos.Abra el código de referencia para esta lección
180/193
Machine Translated by Google
Pensando en la programación
// Establezca la velocidad en baudios para la comunicación en serie en 9600. La velocidad de comunicación entre el puerto
serie de la placa de control principal arduino uno y el puerto serie de Bluetooth debe ser la misma. La velocidad en baudios
configuración nula(){
Serie.begin(9600);}
// Almacenar la información recibida por Bluetooth en la variable bluetooth_val y mostrarla en el monitor serie.
si (Serie.disponible())
bluetooth_val = Serial.read();
Serial.println(bluetooth_val);
Después de completar la carga del programa, abra el monitor serie para ver la información recibida por el módulo Bluetooth.
181/193
Machine Translated by Google
182/193
Machine Translated by Google
Nota importante: Antes de cargar el programa, debe cerrar el monitor serie, de lo contrario, el monitor serie
ocupará la interfaz de comunicación del programa cargado.
183/193
Machine Translated by Google
En esta prueba experimental, todas nuestras funciones se recopilan en el mismo programa, incluida la
evitación de obstáculos infrarrojos, la función de control del sensor de gravedad y cualquier función se puede
Código Mixly
Piense en la lógica del código. Haga clic en "Nuevo" para agregar un nuevo proyecto, luego inicie su
programación. Si desea hacer referencia al programa que proporcionamos.Abra el código de referencia de
esta lección "Test_2_APP_Control_Robot_Tank .mix" en los materiales de referencia que proporcionamos.
184/193
Machine Translated by Google
Pensando en la programación
El método de definición de subfunciones, aquí define una subfunción llamada Infrared Remote Control, do se llena de
El bloque de código hacer control remoto por infrarrojos es llamar directamente a la subfunción.
185/193
Machine Translated by Google
Código Arduino
Si desea hacer referencia al programa que proporcionamos.Abra el código de referencia para esta lección
Antes de poder ejecutar esto, asegúrese de que ha instalado la < irremote=""> <Servo> biblioteca o vuelva a instalarla, si es
necesario. De lo contrario, el código no funcionará. Para obtener información detallada sobre cómo cargar el archivo de
Pensamiento de programación
//Después de que Bluetooth recibe la información, "switch" juzga cuál es el carácter de información recibido, "F" significa
tanque hacia adelante, "G" significa tanque hacia atrás, "H" significa tanque gire a la izquierda, y "I" significa tanque a la
derecha Gire, 'J' significa que el tanque gira a la izquierda, 'K' significa que el tanque gira a la derecha, 'C' significa que el
tanque entra en el modo de función de evitación de obstáculos infrarrojos, 'D' significa que el tanque entra en el modo de
función de control remoto infrarrojo, 'E' significa que el tanque entra en la función de evitación de obstáculos ultrasónicos
Modo funcional. Haga clic en el botón de retorno y "STOP" LA APLICACIÓN enviará el carácter 'S' para controlar el
tanque para salir del modo de función que se está ejecutando y el motor dejará de girar.
186/193
Machine Translated by Google
si (Serie.disponible())
bluetooth_data = Serial.read();
Serial.println(bluetooth_data);
cambiar (bluetooth_data) {
caso 'F':
adelante(250,250);
romper;
caso 'G':
187/193
Machine Translated by Google
romper;
caso 'H':
girar_izquierda(100,255);
romper;
caso 'yo':
girar_derecha(255,100);
romper;
caso 'J':
rotar_izquierda(240,240);
romper;
caso 'K':
rotar_derecha(240,240);
romper;
188/193
Machine Translated by Google
casos':
Detener();
romper;
caso 'E':
Evitación_de_obstáculos_infrarrojos();
romper;
caso 'C':
Evitar_obstáculos_ulónicos();
romper;
caso 'D':
Control_remoto_infrarrojo();
romper;
189/193
Machine Translated by Google
Después de completar la carga del programa, y luego abrir el software de la aplicación para completar la
conexión del dispositivo Bluetooth (Aplicación y HC06 módulo Bluetooth referencia de conexión Prueba 1
Módulo Bluetooth Recibe información). La interfaz después de que el software de la aplicación y el módulo
Bluetooth se conecten correctamente es la siguiente.
190/193
Machine Translated by Google
Si desea seleccionar el modo de evitación de obstáculos ultrasónicos, deslice la pantalla hacia la derecha en
la página de inicio, haga clic en el icono de función correspondiente, la aplicación enviará el carácter'D' al
módulo Bluetooth del tanque HC06, el tanque juzgará la distancia del obstáculo a través de la onda
191/193
Machine Translated by Google
Si desea salir del modo de función ultrasónica de evitación de obstáculos, haga clic en el botón Atrás en la
192/193
Machine Translated by Google
Puede cambiar libremente los diversos modos funcionales a través de la aplicación del teléfono móvil, como
193/193