Envíos gratis en compras superiores a $60.000
Inicio/Profesional/Ciencia y tecnología/Mecatrónica y robótica/El mundo Genuino-Arduino. Curso práctico de formación

El mundo Genuino-Arduino. Curso práctico de formación

$20.851

  • Envío gratis en compras superiores a $60.000
  • Autor: TORRENTE, Oscar

    Páginas: 568

    Coedición: Alfaomega, RC Libros

    ISBN: 9786076226414 Categoría:

    Descripción

    Cualquier técnico electrónico o aficionado a la electrónica necesita en alguna ocasión trabajar con microcontroladores. Esta tarea, durante años compleja, actualmente es mucho más simple gracias a Genuino-Arduino. Genuino-Arduino permite que cualquier persona (incluso profana en la electrónica y la programación) pueda realizar circuitos electrónicos que sean capaces de interaccionar con el mundo físico real. Gracias a su sencillez, campos como la robótica o la domótica (por nombrar solo dos) se han visto radicalmente impulsados con la llegada de Genuino-Arduino, aunque es utilizado en muchos otros campos multidisciplinares, tales como el control y monitoraje de sensores, la activación remota de circuitos electromecánicos (vía Internet incluso), el montaje de instalaciones audiovisuales, etc. Genuino-Arduino es tanto una placa de circuito impreso que incluye un microcontrolador, como un entorno de desarrollo diseñado para facilitar su programación mediante un lenguaje tremendamente intuitivo. Genuino-Arduino es hardware y software libre; es decir, que puede descargarse gratuitamente de su web y utilizarse para el desarrollo de cualquier tipo de proyecto sin adquirir ninguna licencia porque su código fuente es público para todo el mundo. Esta obra incluye gran cantidad de ejemplos que facilitan al lector toda la información necesaria para realizar sus propios proyectos, sin requerir ninguna consulta externa. Solo con la ayuda de una placa Genuino-Arduino y un conjunto básico de componentes electrónicos (resistencias, condensadores, LEDs, etc.), ya podrá hacer realidad todos los circuitos descritos.

    VENTAJAS

    • Ejemplos
    • Realización de proyectos propios
    • Software libre

    CONOZCA

    Cómo realizar circuitos electrónicos que sean capaces de interaccionar con el mundo físico real. .

    APRENDA

    La activación remota de circuitos electromecánicos (vía Internet incluso), el montaje de instalaciones audiovisuales, etc.

    A QUIEN VA DIRIGIDO

    A estudiantes de las carreras de ingeniería mecatrónica y a cualquier técnico electrónico.

    Cursos (ejemplos)

    Ingeniería y Mecatrónica

    ÍNDICE:

    Breve nota sobre los “softpots” o potenciómetros de “membrana” …………………………. 41
    Otras resistencias de valor variable ………………………………………………………………………….. 42
    Diodos (y LEDs) ……………………………………………………………………………………………………… 42
    Breve nota sobre los “datasheets” ……………………………………………………………………….. 43
    Un tipo de diodo muy particular: el LED ……………………………………………………………….. 45
    Breve nota sobre los LEDs RGB ……………………………………………………………………………. 47
    Condensadores ……………………………………………………………………………………………………… 48
    Usos comunes de los condensadores: desacople y filtro …………………………………………. 51
    Transistores …………………………………………………………………………………………………………… 52
    Pulsadores ……………………………………………………………………………………………………………. 56
    Otros tipos de interruptores (o conmutadores) …………………………………………………………. 57
    Reguladores de tensión ………………………………………………………………………………………….. 59
    Breve nota sobre los elevadores DC/DC ……………………………………………………………….. 62
    Placas de prototipado …………………………………………………………………………………………….. 64
    Cables ………………………………………………………………………………………………………………….. 68
    USO DE UNA PLACA DE PROTOTIPADO ……………………………………………………………… 70
    Breve nota sobre cómo alimentar circuitos en placas de prototipado ………………………. 70
    USO DE UN MULTÍMETRO DIGITAL …………………………………………………………………… 77
    CAPÍTULO 2. HARDWARE GENUINO ……………………………………………………………. 83
    ¿QUÉ ES UN SISTEMA ELECTRÓNICO? ………………………………………………………………. 83
    ¿QUÉ ES UN MICROCONTROLADOR? ……………………………………………………………….. 84
    ¿QUÉ ES GENUINO/ARDUINO? ……………………………………………………………………….. 86
    ¿CUÁL ES EL ORIGEN DE ARDUINO? …………………………………………………………………. 88
    ¿QUÉ QUIERE DECIR QUE ARDUINO SEA “SOFTWARE LIBRE”? …………………………….. 89
    ¿QUÉ QUIERE DECIR QUE ARDUINO SEA “HARDWARE LIBRE”? ……………………………. 90
    ¿POR QUÉ ELEGIR ARDUINO? …………………………………………………………………………. 92
    EL MICRO DE LAS PLACAS ARDUINO (y del modelo UNO en particular) ………………… 93
    El encapsulado del microcontrolador ……………………………………………………………………….. 93
    DIP …………………………………………………………………………………………………………………… 94
    SMD ………………………………………………………………………………………………………………… 95
    El modelo del microcontrolador ………………………………………………………………………………. 97
    Arquitectura AVR ………………………………………………………………………………………………. 98
    Arquitectura ARM ……………………………………………………………………………………………… 98
    Breve nota sobre AVR vs. ARM (y x86) ………………………………………………………………….. 99
    El chip ATmega328P …………………………………………………………………………………………. 100
    Las memorias del microcontrolador ……………………………………………………………………….. 101
    Breve nota sobre las unidades de medida de la información …………………………………. 102
    Breve nota sobre las diferencias entre memorias Flash y EEPROM …………………………. 105
    Los registros del microcontrolador …………………………………………………………………………. 106
    La comunicación serie con el exterior …………………………………………………………………….. 106
    Comunicación asíncrona …………………………………………………………………………………… 108
    Comunicación síncrona …………………………………………………………………………………….. 108
    El gestor de arranque (“bootloader”) del microcontrolador ……………………………………….. 113
    Los gestores de arranque de las placas Due y Zero (ARM) ……………………………………… 115
    Otros gestores de arranque más exóticos ……………………………………………………………. 116
    CARACTERÍSTICAS DE LA PLACA ARDUINO UNO ………………………………………………. 117
    La alimentación eléctrica ………………………………………………………………………………………. 117
    El chip ATmega16U2 ……………………………………………………………………………………………… 121
    Breve nota sobre la tecnología TTL y sus niveles HIGH/LOW aceptados ………………….. 121
    Reprogramación del chip ATmega16U2……………………………………………………………….. 123
    Breve nota sobre los “pogo pins” ……………………………………………………………………….. 124
    Breve nota sobre los VID y PID …………………………………………………………………………… 126
    Las entradas y salidas digitales ………………………………………………………………………………. 126
    Las entradas analógicas ………………………………………………………………………………………… 127
    Las salidas analógicas (PWM) ………………………………………………………………………………… 129
    Otros usos de los pines-hembra de la placa …………………………………………………………….. 133
    El conector ICSP …………………………………………………………………………………………………… 136
    SPI ………………………………………………………………………………………………………………….. 136
    ISP ………………………………………………………………………………………………………………….. 137
    Breve nota sobre cómo realizar una programación ISP con el entorno Arduino ……….. 140
    El reloj ………………………………………………………………………………………………………………… 141
    Los temporizadores (“timers”) del microcontrolador ……………………………………………. 143
    El botón de “reset” ……………………………………………………………………………………………….. 144
    Obtener el diseño esquemático y de referencia ……………………………………………………….. 145
    ¿QUÉ OTRAS PLACAS ARDUINO OFICIALES EXISTEN? ……………………………………….. 146
    Arduino Pro …………………………………………………………………………………………………………. 146
    Los pines-hembra (y otros) ………………………………………………………………………………… 147
    Los adaptadores USB-Serie ……………………………………………………………………………….. 148
    Arduino Pro Mini ………………………………………………………………………………………………….. 149
    Arduino Nano ………………………………………………………………………………………………………. 150
    Arduino Mega 2560 ……………………………………………………………………………………………… 151
    Arduino Micro ……………………………………………………………………………………………………… 151
    El “auto-reset” del micro ATmega32U4 ……………………………………………………………….. 153
    Arduino Yún …………………………………………………………………………………………………………. 153
    Breve nota sobre cómo conseguir cargar programas en la placa Yún vía WiFi ………….. 157
    Arduino Lilypad, Lilypad Simple, Lilypad SimpleSnap y LilypadUSB ……………………………… 161
    Arduino Gemma …………………………………………………………………………………………………… 163
    Arduino Due ………………………………………………………………………………………………………… 163
    Arduino Zero ……………………………………………………………………………………………………….. 165
    Arduino 101 ………………………………………………………………………………………………………… 167
    Tablas comparativas de los diferentes modelos de placas ………………………………………….. 168
    Breve nota sobre las regulaciones del espectro electromagnético ………………………….. 170
    ¿QUÉ “SHIELDS” ARDUINO OFICIALES EXISTEN? ………………………………………………. 170
    Arduino Ethernet Shield ……………………………………………………………………………………….. 171
    Breve nota sobre Ethernet ………………………………………………………………………………… 172
    PoE (“Power Over Ethernet”) …………………………………………………………………………….. 174
    Arduino WiFi Shield 101 ……………………………………………………………………………………….. 177
    Arduino GSM Shield ……………………………………………………………………………………………… 178
    Arduino Motor Shield …………………………………………………………………………………………… 179
    Arduino Proto Shield …………………………………………………………………………………………….. 181
    ¿QUÉ SHIELDS NO OFICIALES EXISTEN? ………………………………………………………….. 182
    Proto Shields ……………………………………………………………………………………………………….. 182
    Power Shields ……………………………………………………………………………………………………… 183
    ¿QUÉ PLACAS ARDUINO NO OFICIALES EXISTEN? …………………………………………….. 184
    CAPÍTULO 3. SOFTWARE ARDUINO ……………………………………………………………. 191
    ¿QUÉ ES UN IDE? …………………………………………………………………………………………. 191
    INSTALACIÓN DEL IDE ARDUINO ……………………………………………………………………. 192
    Cualquier sistema Linux ………………………………………………………………………………………… 192
    Posible problema: la configuración del gestor de ficheros Nautilus ………………………… 193
    Posible problema: los permisos de usuario …………………………………………………………. 193
    Breve nota sobre el reconocimiento y uso de dispositivos USB-ACM en Linux …………. 194
    Cualquier sistema Linux (a partir del código fuente) …………………………………………………. 195
    Windows …………………………………………………………………………………………………………….. 195
    Posible problema: instalación del “driver” ………………………………………………………….. 196
    Breve nota sobre el reconocimiento y uso de dispositivos COM en Windows ………….. 196
    OS X …………………………………………………………………………………………………………………… 196
    PRIMER CONTACTO CON EL IDE …………………………………………………………………….. 197
    HERRAMIENTAS EXTRA INTEGRADAS EN EL IDE ……………………………………………….. 203
    Las librerías y el “Library Manager” ………………………………………………………………………… 203
    Concepto de librería ………………………………………………………………………………………… 203
    Cómo instalar librerías (de terceros) manualmente ……………………………………………… 204
    Cómo instalar librerías (de terceros) usando el “Library Manager” …………………………. 205
    Cómo importar librerías ……………………………………………………………………………………. 206
    El “Boards Manager” ……………………………………………………………………………………………. 207
    El “Serial Monitor” y otros terminales serie …………………………………………………………….. 210
    Ejecución del “auto-reset” al abrir el “Serial Monitor” ………………………………………….. 211
    COMPROBACIÓN DEL CORRECTO FUNCIONAMIENTO DEL IDE …………………………… 213
    USO DEL IDE EN EL INTÉRPRETE DE COMANDOS ……………………………………………… 215
    USO DEL IDE “ARDUINO CREATE” …………………………………………………………………… 217
    OTROS IDEs ALTERNATIVOS …………………………………………………………………………… 218
    Entornos “online” ………………………………………………………………………………………………… 220
    Entornos de programación gráfica ………………………………………………………………………….. 221
    MÁS ALLÁ DEL LENGUAJE ARDUINO: EL LENGUAJE C/C++ …………………………………. 223
    Herramientas de compilación C/C++ y carga incluidas en el IDE …………………………………. 225
    Herramientas invocadas mediante el botón “Verify” …………………………………………….. 225
    Herramientas invocadas mediante el botón “Upload” …………………………………………… 227
    CAPÍTULO 4. LENGUAJE ARDUINO …………………………………………………………….. 229
    MI PRIMER SKETCH ARDUINO ……………………………………………………………………….. 229
    ESTRUCTURA GENERAL DE UN SKETCH …………………………………………………………… 230
    Sobre las mayúsculas, tabulaciones y los punto y coma ………………………………………… 231
    COMENTARIOS ……………………………………………………………………………………………. 232
    VARIABLES ………………………………………………………………………………………………….. 233
    Declaración e inicialización de una variable ……………………………………………………………… 233
    Asignación de valores a una variable ………………………………………………………………………. 234
    Ámbito de una variable …………………………………………………………………………………………. 235
    Tipos posibles de una variable ……………………………………………………………………………….. 236
    Tipos simples …………………………………………………………………………………………………… 236
    Breve nota sobre ASCII, ISO-8859-1 y UTF-8 ………………………………………………………… 238
    Breve nota sobre el uso de los sistemas binario y hexadecimal ………………………………. 240
    Breve nota sobre la importancia de los rangos de valores válidos …………………………… 241
    Tipos complejos ……………………………………………………………………………………………….. 244
    Breve nota sobre los arrays de caracteres y el tipo de datos String …………………………. 246
    Breve nota sobre los punteros …………………………………………………………………………… 247
    La instrucción sizeof() ……………………………………………………………………………………………. 250
    Cambio de tipo de datos (numéricos) ……………………………………………………………………… 251
    CONSTANTES ………………………………………………………………………………………………. 254
    PARÁMETROS DE UNA INSTRUCCIÓN …………………………………………………………….. 255
    VALOR DE RETORNO DE UNA INSTRUCCIÓN ……………………………………………………. 256
    LA COMUNICACIÓN SERIE CON LA PLACA ARDUINO ………………………………………… 257
    Instrucciones para enviar datos desde la placa al exterior …………………………………………. 258
    Uso del “Serial Plotter” ……………………………………………………………………………………… 262
    Instrucciones para recibir datos desde el exterior …………………………………………………….. 263
    Los objetos serie de otras placas Arduino diferentes de la UNO …………………………………. 271
    INSTRUCCIONES DE GESTIÓN DEL TIEMPO ……………………………………………………… 273
    INSTRUCCIONES MATEMÁTICAS, TRIGONOMÉTRICAS Y DE
    PSEUDOALEATORIEDAD …………………………………………………………………………… 275
    INSTRUCCIONES DE GESTIÓN DE CADENAS …………………………………………………….. 282
    CREACIÓN DE INSTRUCCIONES (FUNCIONES) PROPIAS ……………………………………… 287
    Funciones con parámetros opcionales (“sobrecarga”) ………………………………………………. 291
    Funciones con estructuras como parámetros o valor de retorno ………………………………… 292
    Funciones con más de un valor de retorno (“paso por referencia”) …………………………….. 294
    Las variables static ……………………………………………………………………………………………….. 296
    BLOQUES CONDICIONALES ……………………………………………………………………………. 297
    Los bloques if e if/else ………………………………………………………………………………………….. 297
    El bloque switch …………………………………………………………………………………………………… 303
    BLOQUES REPETITIVOS (BUCLES) …………………………………………………………………… 305
    El bloque while ……………………………………………………………………………………………………. 305
    El bloque do ………………………………………………………………………………………………………… 308
    El bloque for ……………………………………………………………………………………………………….. 308
    Las instrucciones break y continue …………………………………………………………………………. 312
    CAPÍTULO 5. LIBRERÍAS ARDUINO …………………………………………………………….. 315
    LAS LIBRERÍAS OFICIALES ……………………………………………………………………………… 315
    Librería LiquidCrystal ……………………………………………………………………………………………. 316
    Librería SD …………………………………………………………………………………………………………… 316
    Librería Ethernet ………………………………………………………………………………………………….. 316
    Librería WiFi101 …………………………………………………………………………………………………… 317
    Librería Temboo …………………………………………………………………………………………………… 317
    Librería GSM ……………………………………………………………………………………………………….. 317
    Librería SPI ………………………………………………………………………………………………………….. 317
    Librería Wire ……………………………………………………………………………………………………….. 318
    Librería SoftwareSerial …………………………………………………………………………………………. 318
    Librería Firmata …………………………………………………………………………………………………… 319
    Librerías Servo y Stepper ………………………………………………………………………………………. 320
    Librerías Keyboard y Mouse (solo para placas basadas en el chip ATmega32U4 y
    para los modelos Due y Zero) ……………………………………………………………………………… 320
    Librería EEPROM (para todas las placas excepto los modelos Due y Zero) …………………… 321
    Librerías USBHost y Scheduler (solo para los modelos Due y Zero) …………………………….. 321
    Librería Audio (solo para el modelo Due) ………………………………………………………………… 322
    Librerías AudioZero y RTCZero (solo para el modelo Zero) …………………………………………. 322
    Librerías Bridge y SpacebrewYún (solo para el modelo Yún) ………………………………………. 323
    USO DE PANTALLAS LCD ……………………………………………………………………………….. 324
    Las pantallas de cristal líquido (LCDs) ……………………………………………………………………… 324
    La librería LiquidCrystal ………………………………………………………………………………………… 327
    Librerías de terceros interesantes para usar con LCDs ………………………………………………. 334
    Módulos LCD de tipo I2 C o TTL-Serie ………………………………………………………………………. 335
    Backpacks I2 C ………………………………………………………………………………………………….. 336
    Backpacks serie ……………………………………………………………………………………………….. 337
    Shields que incorporan LCDs …………………………………………………………………………………. 339
    Shields y módulos que incorporan GLCDs ……………………………………………………………….. 341
    Breve nota sobre los convertidores de nivel bidireccionales ………………………………….. 343
    Breve nota sobre la visualización de imágenes “al vuelo” ……………………………………… 345
    USO DE PANTALLAS TFT ………………………………………………………………………………. ..347
    Shields y módulos que incorporan pantallas TFT ……………………………………………………… 347
    Breve nota sobre la librería “Adafruit GFX” …………………………………………………………. 348
    Shields y módulos que incorporan pantallas TFT táctiles …………………………………………… 351
    Pantallas TFT táctiles resistivas vs. pantallas TFT táctiles capacitivas ………………………. 351
    De tecnología resistiva ……………………………………………………………………………………… 352
    De tecnología capacitiva …………………………………………………………………………………… 357
    USO DE PANTALLAS OLED ……………………………………………………………………………… 359
    Las pantallas OLED ……………………………………………………………………………………………….. 359
    Módulos OLED de 4DSystems ………………………………………………………………………………… 359
    Módulos OLED de Adafruit ……………………………………………………………………………………. 360
    USO DE OTRAS PANTALLAS ……………………………………………………………………………. 362
    7-segmentos………………………………………………………………………………………………………… 363
    Necesidad de aumentar el número de pines de salida ………………………………………….. 364
    Shields y módulos que incorporan displays 7-segmentos ………………………………………. 365
    Matrices de LEDs ………………………………………………………………………………………………….. 369
    USO DE LA MEMORIA EEPROM ……………………………………………………………………… 371
    USO DE TARJETAS SD ……………………………………………………………………………………. 375
    Características de las tarjetas SD ……………………………………………………………………………. 375
    Shields y módulos que incorporan zócalos microSD ………………………………………………….. 377
    La librería SD ……………………………………………………………………………………………………….. 379
    USO DE PUERTOS SERIE SOFTWARE ……………………………………………………………….. 388
    USO DE MOTORES ……………………………………………………………………………………….. 392
    Conceptos básicos sobre motores ………………………………………………………………………….. 392
    Tipos de motores …………………………………………………………………………………………………. 394
    Los motores DC ……………………………………………………………………………………………….. 394
    Los servomotores …………………………………………………………………………………………….. 396
    Los motores paso a paso …………………………………………………………………………………… 399
    La librería Servo …………………………………………………………………………………………………… 402
    La librería Stepper ………………………………………………………………………………………………… 407
    CAPÍTULO 6. ENTRADAS Y SALIDAS ……………………………………………………………. 411
    USO DE LAS ENTRADAS Y SALIDAS DIGITALES ………………………………………………….. 411
    Ejemplos con salidas digitales ………………………………………………………………………………… 414
    Evitando el uso de la función delay() ?y de delayMicroseconds()? ………………………….. 418
    Múltiples salidas en paralelo ……………………………………………………………………………… 424
    Ejemplos con entradas digitales (pulsadores) …………………………………………………………… 437
    Implementación de pulsadores momentáneos …………………………………………………….. 440
    Implementación de pulsadores mantenidos ………………………………………………………… 444
    Evitando el rebote (“bounce”) en los pulsadores ………………………………………………….. 450
    Juegos …………………………………………………………………………………………………………….. 452
    Keypads digitales ………………………………………………………………………………………………….. 458
    USO DE LAS ENTRADAS Y SALIDAS ANALÓGICAS ……………………………………………… 461
    Ejemplos con salidas analógicas …………………………………………………………………………….. 464
    Control interactivo (mediante pulsadores) ………………………………………………………….. 466

    Ir a Arriba