Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ALUMNOS:
BONIFACIO PAUCAR ROLANDO 113550
HUILLCA CHINO HELDER 091360
YUNGURI-CHAIÑA-OSCAR ARMANDO 113570
CUSCO - PERÚ
Semestre 2017-II
Contenido
PRESENTACIÓN...................................................................................................................... 1
INTROCUCCIÓN ..................................................................................................................... 2
1. MARCO TEÓRICO ........................................................................................................... 3
1.1. Arduino ...................................................................................................................... 3
1.1.1. Modelo Arduino Uno ............................................................................................. 3
1.2. 4WD Robot Chasis Kit ................................................................................................ 5
1.3. 4 motores DC Gear Motor 1:48 ................................................................................. 6
1.4. Neumático Rueda 65x26mm ..................................................................................... 7
1.5. Driver Puente H L298N .............................................................................................. 7
1.6. Bluetooth HC - 06 ...................................................................................................... 8
1.7. Sensor de Distancia de Ultrasonido HC – SR04 ....................................................... 10
1.8. Batería 18650 .......................................................................................................... 12
1.9. Micro Servo SG90 .................................................................................................... 12
1.10. Caja de Almacenamiento..................................................................................... 13
1.11. MIniProtoboard de 170 puntos ........................................................................... 14
1.12. Cables Hembra y Macho...................................................................................... 15
2. CODIGO FUENTE .......................................................................................................... 15
2.1. Control Remoto con Bluetooth ............................................................................... 15
2.2. Evasión de Obstáculos ............................................................................................. 18
3. VIDEO TUTORIAL ......................................................................................................... 19
ANEXOS ............................................................................................................................... 24
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
PRESENTACIÓN
1
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
INTROCUCCIÓN
El proyecto que se realizó nos ayudara a los estudios tecnológicos con orientación a la
robótica, brindando alternativas que interactúen con el hombre y poder ofrecer unas
mejores expectativas. La proyección de esta investigación está enfocada en los campos
de la robótica y la inteligencia artificial por medio de máquinas, procesos y desarrollo del
software. Hoy en día el ser humano está siendo cambios tecnológicos, que a futuro es
crear robot con inteligencia artificial con capacidad de tomar decisiones para resolver
problema de cualquier índole. Para entender como es el funcionamiento del carro Control
Movil 4WD con camara de Celular y sensor de proximidad.
2
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
1. MARCO TEÓRICO
Para el desarrollo del laboratorio utilizamos la siguiente lista de componentes, que más
adelante realizaremos su descripción:
Materiales
o 1 4WD Robot Chasis Kit
o 1 Arduino Uno
1.1. Arduino
Arduino es una plataforma de prototipos electrónica de código abierto (open-
source) basada en hardware y software flexibles y fáciles de usar. Está pensado
para artistas, diseñadores, como hobby y para cualquiera interesado en crear
objetos o entornos interactivos.
Arduino puede sentir el entorno mediante la recepción de entradas desde una
variedad de sensores y puede afectar a su alrededor mediante el control de
luces, motores y otros artefactos. El microcontrolador de la placa se programa
usando el Arduino Programming Language (basado en Wiring) y el Arduino
Development Environment (basado en Processing). Los proyectos de Arduino
pueden ser autónomos o se pueden comunicar con software en ejecución en un
ordenador (por ejemplo, con Flash, Processing, MaxMSP, etc.).
Las placas se pueden ensamblar a mano o encargarlas pre ensambladas; el
software se puede descargar gratuitamente. Los diseños de referencia del
hardware (archivos CAD) están disponibles bajo licencia open-source, por lo que
eres libre de adaptarlas a tus necesidades.
3
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
1.1.1. Modelo Arduino Uno
Este es el nuevo Arduino Uno R3 utiliza el microcontrolador ATmega328. En adición
a todas las características de las tarjetas anteriores, el Arduino Uno utiliza el
ATmega16U2 para el manejo de USB en lugar del 8U2 (o del FTDI encontrado en
generaciones previas). Esto permite ratios de transferencia más rápidos y más
memoria. No se necesitan drivers para Linux o Mac (el archivo inf para Windows es
necesario y está incluido en el IDE de Arduino).
La tarjeta Arduino Uno R3 incluso añade pins SDA y SCL cercanos al AREF. Es más,
hay dos nuevos pines cerca del pin RESET. Uno es el IOREF, que permite a los shields
adaptarse al voltaje brindado por la tarjeta. El otro pin no se encuentra conectado
y está reservado para propósitos futuros. La tarjeta trabaja con todos los shields
existentes y podrá adaptarse con los nuevos shields utilizando esos pines
adicionales.
El Arduino es una plataforma computacional física open-source basada en una
simple tarjeta de I/O y un entorno de desarrollo que implementa el lenguaje
Processing/Wiring. El Arduino Uno R3 puede ser utilizado para desarrollar objetos
interactivos o puede ser conectado a software de tu computadora (por ejemplo,
Flash, Processing, MaxMSP). El IDE open-source puede ser descargado
gratuitamente (actualmente para Mac OS X, Windows y Linux).
Características:
o Microcontrolador ATmega328.
o Voltaje de entrada 7-12V.
o 14 pines digitales de I/O (6 salidas PWM).
o 6 entradas análogas.
4
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
o 32k de memoria Flash.
o Reloj de 16MHz de velocidad.
5
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
Características:
o Motor reductor y llanta para aplicaciones de robótica, maquetas
y prototipos
o Excelente tracción sobre una gran variedad de superficies
o Llanta con diámetro exterior de 60 mm
o Motor reductor con eje dual (si no hay existencia se envía con
eje sencillo)
o Diámetro del eje de salida: 5.3mm aplanado a 3.6
o Voltaje de alimentación 3 a 9 volts
o Corriente de operación nominal (sin carga): 250 mA
o Razón de reducción 1:50
6
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
1.4. Neumático Rueda 65x26mm
Especificaciones técnicas:
o Chip: L298N
o Canales: 2 (soporta 2 motores DC o 1 motor PAP)
o Voltaje lógico: 5V
o Voltaje de Operación: 5V-35V
o Consumo de corriente (Digital): 0 a 36mA
7
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
o Capacidad de corriente: 2A (picos de hasta 3A)
o Potencia máxima: 25W
o Peso: 30g
o Dimensiones: 43 * 43 * 27 mm
Notas
o Voltaje de alimentación, mínimo de 5 V. Posee dos entradas, una de 5V para
controlar la parte lógica y otra para alimentar las salidas al motor, que
pueden ser de 5V o más.
o Posee un regulador de voltaje de 5V 78M05, para alimentar la etapa lógica
del L298N, sin embargo, cuando la alimentación supera los 12V, se
recomienda, utilizar una fuente de 5V externa como fuente de alimentación.
o Admite entradas de señal PWM para el control de velocidad.
o Posee 8 diodos de protección contra corriente inversas.
Conexión de alimentación
Este módulo se puede alimentar de 2 maneras gracias al regulador integrado
LM7805. Cuando el jumper de selección de 5V se encuentra activo, el módulo
permite una alimentación de entre 6V a 12V DC. Como el regulador se encuentra
activo, el pin marcado como +5V tendrá un voltaje de 5V DC. Este voltaje se
puede usar para alimentar la parte de control del módulo ya sea un
microcontrolador o un Arduino, pero recomendamos que el consumo no sea
mayor a 500mA.
1.6. Bluetooth HC - 06
Para empezar el módulo de bluetooth HC-06 solo opera de modo esclavo, a
diferencia de su hermano HC-05. Primeramente el HC-05 ofrece una mejora con
respecto a precio y características, ya que es un módulo Maestro-Esclavo, esto
quiere decir, que además de recibir conexiones desde una PC o tablet, (objetivo
de este primer Tutorial), también es capaz de generar conexiones hacia otros
dispositivos bluetooth. Para empezar, esto nos permite por ejemplo, conectar
8
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
dos módulos bluetooth y formar una conexión punto a punto, para transmitir
datos entre dos microcontroladores o dispositivos.
El módulo bluetooth HC-06 viene configurado de fábrica para trabajar como
esclavo, es decir, preparado para escuchar peticiones de conexión. Agregando
este módulo a tu proyecto podrás controlar a distancia desde un celular o una
laptop todas las funcionalidades que desees.
Características:
9
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
o Consumo de corriente: 30 mA a 40 mA
o Voltaje de operación: 3.6 V a 6 V
o Dimensiones totales: 1.7 cm x 4 cm aprox.
o Temperatura de operación: -25 ºC a +75 ºC
10
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
El sensor US-016 es similar al HC-SR04 pero con salida de tipo analógico, otro
sensor ultrasonido es el sensor US-100 con salida de tipo uart/serial.
Especificaciones técnicas
o Voltaje de Operación: 5V DC
o Corriente de reposo: < 2mA
o Corriente de trabajo: 15mA
o Rango de medición: 2cm a 450cm
o Precisión: +- 3mm
o Ángulo de apertura: 15°
o Frecuencia de ultrasonido: 40KHz
o Duración mínima del pulso de disparo TRIG (nivel TTL): 10 μS
o Duración del pulso ECO de salida (nivel TTL): 100-25000 μS
o Dimensiones: 45mm x 20mm x 15mm
o Tiempo mínimo de espera entre una medida y el inicio de otra 20ms
(recomendable 50ms)
Pines de conexión
o VCC (+5V DC)
o TRIG (Disparo del ultrasonido)
o ECHO (Recepción del ultrasonido)
o GND (0V)
11
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
1.8. Batería 18650
Especificaciones:
o Tipo de batería: 18650 Li-ion
o Capacidad: 10800mAh
o Voltaje: 3,7v
o Intensidad de carga: 2A máximo (1A recomendado)
o Circuito de protección: Si, integrado
o Certificaciones: RoHS, CE, UL
o Dimensiones: 70mm x 18.6mm
o Peso: 45,5 gr.
El servo SG90 tiene un conector universal tipo “S” que encaja perfectamente en
la mayoría de los receptores de radio control incluyendo los Futaba, JR, GWS,
Cirrus, Hitec y otros. Los cables en el conector están distribuidos de la siguiente
forma: Rojo =Alimentación (+), Cafe = Alimentación (–) o tierra, Naranja= Señal
PWM.
Este tipo de servo es ideal para las primeras experiencias de aprendizaje y
prácticas con servos, ya que sus requerimientos de energía son bastante bajos y
12
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
se permite alimentarlo con la misma fuente de alimentación que el circuito de
control. Por ejemplo, si se conecta a una tarjeta Arduino, se puede alimentar
durante las pruebas desde el puerto USB del PC sin mayor problema.
Características
o Micro Servo Tower-pro
o Velocidad: 0.10 sec/60° @ 4.8V
o Torque: 1.8 Kg-cm @ 4.8V
o Voltaje de funcionamiento: 3.0-7.2V
o Temperatura de funcionamiento: -30 ℃ ~ 60 ℃
o Ángulo de rotación: 180°
o Ancho de pulso: 500-2400 µs
o Longitud de cable de conector: 24.5cm
13
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
1.10. MIniProtoboard de 170 puntos
Mini protoboard para pequeños circuitos / prototipos. Cuenta con 170 puntos
de conexión en un área aproximada de 1.7×1.8 pulgadas. Dispone de un
adhesivo de doble cara en la parte inferior, de forma que puede sujetarse a
varias superficies. Este mini protoboard resulta ideal para los primeros
experimentos con arduino y microcontroladores en general, que no demandan
gran área de trabajo. También puede servirnos como auxiliar para realizar las
conexiones a algunos módulos diseñados para colocarse en protoboard
(breakout boards).
Esta herramienta te permitirá realizar prototipos electrónicos con la posibilidad
de reutilizar tus componentes, ya que no se requiere soldadura para realizar las
conexiones, bastará con colocar las patitas del componente dentro de las
perforaciones para tener una conexión eléctrica relativamente sólida.
Para usar nuestros mini protoboard recomendamos ampliamente los cables
(jumpers) para protoboard o nuestro kit de alambres preparados, de forma que
ahorraremos mucho tiempo en la preparación del cable necesario para el
armado de circuitos.
Características
o 170 puntos de conexión eléctrica
o Espacio entre puntos estándar 0.1″
o Disponible en colores surtidos (se envía de acuerdo a disponibilidad)
o Según el lote algunos llegan con pestañas y muescas para ensamblar varias
unidades juntas.
o No dispone de buses de alimentación
14
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
1.11. Camara del celular
La cámara trasera del Galaxy J3 tiene una resolución de 8.0 MP. Cuenta con LED. Además, puede
grabar vídeo Full HD 1080p. El Galaxy J3 también cuenta con cámara frontal, de 5.0 MP.
15
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
2. CODIGO FUENTE
Control Movil 4WD con camara de Celular y sensor de proximidad
3. //inicialización de pines del driver
4. //Adelante,retro,derecha,izquierda
5. int ENA = 3; //velocidad motor A
6. int IN1 = 2; //dirección motor a borna 1
7. int IN2 = 4; //dirección motor a borna 2
8. int ENB = 6; //velocidad motor B
9. int IN3 = 5; //dirección motor b borna 1
10. int IN4 = 7; //dirección motor b borna 2
11. int velocidadGiro= 130; // PWM = 0 a 255
12. int velocidad = 120; // PWM = 0 A 2557 velocidad de Giro
13. //int velocidadIntermedioGiro = 110;
14.
15. char caracter;
16. String comando;
17.
18. void setup() {
19. //habilitamos los puertos de salida del driver
20. pinMode(ENA, OUTPUT);
21. pinMode(ENB, OUTPUT);
22. pinMode(IN1, OUTPUT);
23. pinMode(IN2, OUTPUT);
24. pinMode(IN3, OUTPUT);
25. pinMode(IN4, OUTPUT);
16
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
26. // Configurar el puerto serial
27. Serial.begin(9600);
28.
29. }
30.
31. void loop()
32. {
33.
34. movimiento();
35. }
36.
37. //modulos de direccion
38. void izquierda() { // L
39.
40. digitalWrite(IN1, LOW); // gira motor A izquierda
41. digitalWrite(IN2, HIGH);
42. analogWrite(ENA, 80);
43. digitalWrite(IN3, LOW); // gira motor B izquierda
44. digitalWrite(IN4, HIGH);
45. analogWrite(ENB, 100);
46. }
47. void aceatras() { // L
48.
49. digitalWrite(IN1, LOW); // gira motor A izquierda
50. digitalWrite(IN2, HIGH);
51. analogWrite(ENA, 220);
52. digitalWrite(IN3, LOW); // gira motor B izquierda
53. digitalWrite(IN4, HIGH);
54. analogWrite(ENB, 220);
55. }
56. void derecha() { //R
57. digitalWrite(IN1, HIGH); // gira motor A derecha
58. digitalWrite(IN2, LOW);
59. analogWrite(ENA, velocidad);
60. digitalWrite(IN3, HIGH); // gira motor B derecha
61. digitalWrite(IN4, LOW);
62. analogWrite(ENB, velocidad);
63. }
64. void abajo() { //F
65. digitalWrite(IN1, LOW); // gira motor A izquierda
66. digitalWrite(IN2, HIGH);
67. analogWrite(ENA, 50);
68. digitalWrite(IN3, HIGH); // gira motor B derecha
17
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
69. digitalWrite(IN4, LOW);
70. analogWrite(ENB, 50);
71. }
72. void arriba() { //B
73. digitalWrite(IN1, HIGH); // gira motor A derecha
74. digitalWrite(IN2, LOW);
75. analogWrite(ENA, velocidadGiro);
76. digitalWrite(IN3, LOW); // gira motor B izquierda
77. digitalWrite(IN4, HIGH);
78. analogWrite(ENB, 50);
79. }
80. void adeAcelera() { //B
81. digitalWrite(IN1, HIGH); // gira motor A derecha
82. digitalWrite(IN2, LOW);
83. analogWrite(ENA, 220);
84. digitalWrite(IN3, HIGH); // gira motor B derecha
85. digitalWrite(IN4, LOW);
86. analogWrite(ENB, 220);
87. }
88. void paro() {
89. digitalWrite(IN1, HIGH); // para motor A
90. digitalWrite(IN2, HIGH);
91. analogWrite(ENA, 0);
92. digitalWrite(IN3, HIGH); // para motor B
93. digitalWrite(IN4, HIGH);
94. analogWrite(ENB, 0);
95. }
96.
97. void movimiento(){
98. while (Serial.available() > 0)
99. {
100. caracter= Serial.read();
101. comando.concat(caracter);
102. delay(2);
103. }
104. /* Una vez ya tengo la cadena "acabada", compruebo su valor y hago
105. * que la placa Arduino reaccione según sea este. Aquí podríamos
106. * hacer lo que quiesiéramos: si el comando es "tal", enciende
107. * un Led, si es cual, mueve un motor... y así.
108. */
109. if (comando.equals('w') == true)
110. {
111. arriba();
18
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
112.
113. }
114. if (comando.equals('a') == true)
115. {
116. izquierda(); //adelante
117. }
118. if (comando.equals('x') == true)
119. {
120. abajo();//atras
121. }
122. if (comando.equals('d') == true)
123. {
124. derecha();//adelante
125. }
126. if (comando.equals('s') == true)
127. {
128. paro();
129. }
130. if (comando.equals('z') == true)//adeAcelera
131. {
132. aceatras();
133. }
134. if (comando.equals('q') == true)
135. {
136. adeAcelera();
137. }
138. // Limpiamos la cadena para volver a recibir el siguiente comando.
139. comando="";
VIDEO TUTORIAL
19
CONTROL MÓVIL 4WD CON CÁMARA DE CELULAR Y SENSOR
DE PROXIMIDAD
https://www.youtube.com/watch?v=KG9IiEiUC94&feature=youtu.be
20