Want to make creations as awesome as this one?

More creations to inspire you

Transcript

Actividad #2 Identifica los componentes de la placa Arduino y los componentes de la interfaz del IDE Arduino 2.0

IDE arduino Área de trabajo

Placa Arduino UNO FTDI

Placa Arduino UNO CH340

Nombre del profesor: Manuel Alexis García García 523 Microcontroladores y microprocesadoresLugo Lucero Luis Omar

IDE arduino Área de trabajo

Puedes darle el nombre que quieras siempre y cuando cumplas las reglas de tu sistema operativo. Te recomiendo que sea un nombre descriptivo y que no utilices caracteres especiales. Cuando haces esto suceden varias cosas. Por un lado, cambia el nombre en el IDE de Arduino. Así sabes en todo momento con que programa estás trabajando. Y luego, en la ruta que hayas elegido habrá creado una carpeta con el mismo nombre y dentro el fichero. La ruta por defecto donde se guarda es la que hemos configurado en preferencias.

Arduino UNO En este curso de Arduino he hablado de las dos áreas que hay conocer para aprender Arduino: la programación y la electrónica. Hemos visto una introducción al IDE de Arduino que no es más que una herramienta para programar. Si haces una pequeña búsqueda en Internet, encontrarás que hay multitud de placas de Arduino. Hay originales, copias y un amplio abanico de modelos dependiendo de cuál es su funcionalidad. Así que lo primero que debes preguntarte es ¿qué quiero conseguir?

Placa Arduino UNO FTDI

Shields

Puerto USB Se llama puerto USB pero realmente estamos trabajando a través del puerto serie. Dentro de la propia placa hay un conversor de USB a serie, también conocido como TTL o FTDI. Imagino que ya te habrás dado cuenta lo que nos facilita la tarea de cargar los programas a través del puerto USB desde cualquier ordenador. Pero no solo sirve para cargar los programas, también nos sirve para alimentar la placa con 5V. Se alimenta así sobre todo cuando lo estás programando.

Comparacion Arduino Uno Original

  1. Controlador USB-Serial: Utiliza el chip ATmega16U2 para la comunicación USB-serial.
  2. Compatibilidad: No requiere la instalación de controladores adicionales en la mayoría de los sistemas operativos, ya que los controladores vienen incluidos en el IDE de Arduino.
  3. Calidad: Fabricado con componentes de alta calidad y sometido a rigurosos controles de calidad.
  4. Soporte: Al comprar un Arduino original, apoyas el desarrollo continuo del proyecto Arduino y tienes acceso a soporte oficial.

Pines de alimentación El zócalo de pines de alimentación nos sirve para alimentar los componentes, sensores y actuadores. Hay que destacar 4 de todos los que hay:

  • 3,3V: suministra ese voltaje por ese pin.
  • 5V: suministra ese voltaje por ese pin.
  • GND: hay dos pines con esta función además del que está en el zócalo de los pines digitales. Es la toma de tierra y por donde debemos cerrar el circuito.

Placa Arduino UNO CH340

Nota

Pines de alimentación Hay que destacar todos los que hay:

  • 3,3V: suministra ese voltaje por ese pin.
  • 5V: suministra ese voltaje por ese pin.
  • GND: hay dos pines con esta función además del que está en el zócalo de los pines digitales. Es la toma de tierra y por donde debemos cerrar el circuito.

Puerto USB Se llama puerto USB pero realmente estamos trabajando a través del puerto serie. Dentro de la propia placa hay un conversor de USB a serie, también conocido como TTL o FTDI. Imagino que ya te habrás dado cuenta lo que nos facilita la tarea de cargar los programas a través del puerto USB desde cualquier ordenador. Pero no solo sirve para cargar los programas, también nos sirve para alimentar la placa con 5V. Se alimenta así sobre todo cuando lo estás programando.

Comparacion Arduino Uno con CH340

  1. Controlador USB-Serial: Utiliza el chip CH340, un convertidor USB-serial fabricado por una empresa china.
  2. Compatibilidad: Requiere la instalación de un controlador específico para funcionar correctamente en algunos sistemas operativos12.
  3. Calidad: La calidad puede variar dependiendo del fabricante, ya que estos Arduinos suelen ser clones más económicos.
  4. Costo: Generalmente, estos clones son más baratos que los originales debido al uso de componentes más económicos3.

Las tarjetas genericas compatibles con Arduino, reemplazan el tradicional FT232RL o el ATMEGA16u2 por un circuito integrado de origen chino conocido como CH340. El driver CH340 es el software requerido para poder usar dicho circuito integrado, nos ayudará para poder usar cualquier modelo de Arduinos genéricos. INSTALACIÓN DEL DRIVER CH340 EN WINDOWS:Lo primero que debemos hacer es descargar el software CH340 que se encuentra en el siguiente enlace: DRIVER CH340

Es el chip CH340. Este chip actúa como un convertidor de USB a serial. Aquí tienes una descripción más detallada de su función:

  • Interfaz de Comunicación: El CH340 permite que el Arduino se comunique con tu computadora a través del puerto USB. Convierte las señales USB en señales seriales que el microcontrolador del Arduino puede entender.
  • Transferencia de Datos: Facilita la transferencia de código y datos entre el IDE de Arduino en tu computadora y el microcontrolador en la placa del Arduino.
  • Compatibilidad: Es especialmente útil en placas de Arduino más económicas que no utilizan el chip FTDI para la comunicación USB-serial.
En resumen, sin este chip, tu Arduino no podría conectarse ni comunicarse con tu computadora a través del puerto USB.

Seleccionar la placa es relativamente sencillo. En este curso de Arduino vamos a trabajar con el modelo Arduino UNO (luego lo veremos más en profundidad). Con el IDE podemos trabajar con todos los modelos de Arduino e incluso con modelos que no son de la misma marca. Cada vez que sale una nueva placa, el IDE se actualiza para poder programarla. Con los años verás cómo va creciendo esta lista. Puedes seleccionar la placa a través del menú en Herramientas>Placa>Arduino/Genuino UNO. No hace falta que conectes la placa al ordenador para seleccionar un modelo.

Seleccionar la placa correcta y el puerto serie

El puerto serie es por donde se comunican Arduino y el ordenador. Es necesario que tengas conectado tu Arduino al ordenador. Es muy sencillo, no tiene pierde. Para seleccionar el puerto lo hacemos a través del menú Herramientas>Puerto. Puede que aparezca más de uno y además el nombre varía según el sistema operativo.

El área de mensajes

En esta área de mensajes se muestra la última acción que has realizado. También muestra mensajes cuando se está realizando alguna tarea como subir un programa a la placa.

Por último vamos a ver una serie de características secundarias que es importante destacar.La huella que forman los pines se ha convertido en un estándar para conectar los shields.El botón reset resetea la placa y hace que empiece a ejecutar el código desde el principio.

Shields

El LED de encendido nos informa si la placa está alimentada.

El pin Vin nos da otra alternativa a la hora de alimentar Arduino con un voltaje de entre 6V y 12V. De momento te recomiendo que lo alimentes a través del puerto USB.

Conector jack de alimentación. Es igual que el pin Vin pero a través de un conector jack. El voltaje de alimentación que soporta es de 6V a 12V.

  • Modo entrada (INPUT): puede leer voltajes. Por ejemplo, ¿está pulsado un botón? si (HIGH) o no (LOW).
  • Modo salida (OUTPUT): puede suministrar un voltaje. Por ejemplo, encender/apagar un led on (HIGH) o off (LOW).
  • Excepción (PWM): algunos pines del microcontrolador pueden funcionar en modo salida suministrando un valor entre el rango 0V y 5V. Esto ya no sería un pin digital. Estos pines van marcados con el símbolo ~ y hay 6 dentro de la placa de Arduino (3, 5, 6, 9, 10, 11).

¿Qué quiere decir digital? Digital es algo abstracto así que mejor verlo con una analogía. Imagínate que eres pintor. Cuando vas a pintar un cuadro solo te permiten utilizar dos colores: blanco y negro. Si quieres pintar con un gris claro por ejemplo, no puedes, no existe ese color. Solo puedes elegir entre blanco o negro. Si esto lo llevamos al mundo de la electrónica a través de un voltaje, solo podríamos tener dos voltajes. Esto es lo que ocurre en los pines digitales de Arduino donde solo podemos tener dos estados HIGH o LOW que equivalen a 5V y 0V. En realidad, esto no es cierto totalmente. Podríamos tener un voltaje de 3V por ejemplo. Para estos casos hay una regla interna que determina si un voltaje es HIGH o LOW. Estos son los niveles lógicos del microcontrolador ATMega328. Todo lo que esté entre 3V y 5V se considera nivel alto (HIGH) y todo lo que esté entre 0V y 1,5V es nivel bajo (LOW). El resto, entre 1,5V y 3V es una indeterminación. Esto quiere decir que cualquier voltaje dentro de este rango, el microcontrolador no sabrá si es estado HIGH o LOW.

Pines digitales

Es el zócalo más grande. Tiene 14 pines numerados del 0 al 13

Por último señalar que los pines 0 y 1 son Rx (recibir) y Tx (transmitir). Se utilizan para la comunicación serie entre el ordenador y Arduino y están conectados a los LEDs de la placa donde pone RX y TX. Se recomienda no utilizar estos pines.

El pin 13 está conectado a un LED integrado dentro de la placa.

  • Modo entrada (INPUT): puede leer voltajes. Por ejemplo, ¿está pulsado un botón? si (HIGH) o no (LOW).
  • Modo salida (OUTPUT): puede suministrar un voltaje. Por ejemplo, encender/apagar un led on (HIGH) o off (LOW).
  • Excepción (PWM): algunos pines del microcontrolador pueden funcionar en modo salida suministrando un valor entre el rango 0V y 5V. Esto ya no sería un pin digital. Estos pines van marcados con el símbolo ~ y hay 6 dentro de la placa de Arduino (3, 5, 6, 9, 10, 11).

¿Qué quiere decir digital? Digital es algo abstracto así que mejor verlo con una analogía. Imagínate que eres pintor. Cuando vas a pintar un cuadro solo te permiten utilizar dos colores: blanco y negro. Si quieres pintar con un gris claro por ejemplo, no puedes, no existe ese color. Solo puedes elegir entre blanco o negro. Si esto lo llevamos al mundo de la electrónica a través de un voltaje, solo podríamos tener dos voltajes. Esto es lo que ocurre en los pines digitales de Arduino donde solo podemos tener dos estados HIGH o LOW que equivalen a 5V y 0V. En realidad, esto no es cierto totalmente. Podríamos tener un voltaje de 3V por ejemplo. Para estos casos hay una regla interna que determina si un voltaje es HIGH o LOW. Estos son los niveles lógicos del microcontrolador ATMega328. Todo lo que esté entre 3V y 5V se considera nivel alto (HIGH) y todo lo que esté entre 0V y 1,5V es nivel bajo (LOW). El resto, entre 1,5V y 3V es una indeterminación. Esto quiere decir que cualquier voltaje dentro de este rango, el microcontrolador no sabrá si es estado HIGH o LOW.

Pines digitales

¿Recuerdas el microcontrolador ATMEGA328P? Este circuito integrado tiene unas patillas o patas. A esto le denominamos pines. En el lado de la placa de Arduino, estos pines tienen un acceso muy fácil para poder conectar diferentes componentes. Pero no son más que plástico, contactos y cables que se conectan con las patillas correspondientes del microcontrolador. Su función es facilitarnos su uso. Pero ¿qué podemos conectar a estos pines? Bueno, pues podemos conectar otros circuitos compatibles con cada uno de los pines. Vamos a ver los 3 zócalos que nos vamos a encontrar en Arduino UNO.

Es el zócalo más grande. Tiene 14 pines numerados del 0 al 13

Por último señalar que los pines 0 y 1 son Rx (recibir) y Tx (transmitir). Se utilizan para la comunicación serie entre el ordenador y Arduino y están conectados a los LEDs de la placa donde pone RX y TX. Se recomienda no utilizar estos pines.

El pin 13 está conectado a un LED integrado dentro de la placa.

Una de las mejoras que han ido introduciendo dentro del IDE de Arduino es la gestión de archivos. Lo primero que debes conocer es la extensión con que se guardan los ficheros de Arduino, ino. Si has creado un programa o sketch (sketch significa esquema o bosquejo) verás que tiene una extensión. ino. Cuando guardas un archivo en tu ordenador, el propio IDE de Arduino ya lo organiza por ti. Crea una carpeta con el mismo nombre que el archivo y dentro guarda el fichero. Por ejemplo, si creas un nuevo programa y vas al menú Archivo>Salvar, te permitirá guardarlo con un nombre.

Preferencias del sistema Como en casi todos los programas que utilizamos, en el IDE de Arduino tenemos una opción para configurar las preferencias del sistema. Nos permite modificar el idioma, el tamaño de letra y algunas cosas más que veremos. Para acceder a esta opción solo tenemos que ir al menú Abrir>Preferencias.

Ficheros y preferencias del sistema

Vamos a ver las opciones más importantes que nos permiten modificar el aspecto y funcionamiento del IDE de Arduino.

  1. Localización del proyecto: podemos seleccionar una carpeta donde iremos guardando los proyectos. Por defecto será la que ha creado el instalador en documentos/Arduino. Esta ruta varía según el sistema operativo.
  2. Editor de idioma: con esta opción podemos cambiar el idioma del IDE.
  3. Editor de Tamaño de Fuente: indica el tamaño de fuente del editor del IDE.
  4. Mostrar número de línea: para que muestre los números de líneas en el editor.
  5. Habilitar plegado el código: siempre que el código tenga una sentencia con {} nos permitirá contraer y expandir ese código. Muy útil cuando trabajamos con archivos muy grandes.
  6. Guardar cuando se verifique o cargue: es importante que cuando verifiquemos el código o lo carguemos al microcontrolador haga un guardado automático. Déjalo marcado.

Pines analógicos

El ADC que viene integrado dentro de la MCU que lleva Arduino UNO tiene una resolución de 10-bit. Esto equivale a que solo vamos a poder medir 1024 valores posibles que van del 0 al 1023. Básicamente lo que estamos haciendo es dividir el rango de 0V a 5V en 1024 partes.

con estos pines podemos medir diferentes voltajes entre 0V y 5V. Es decir, podemos tener un voltaje de 3,5V en uno de estos pines y Arduino sería capaz de leerlo. Sin embargo, existe un problema. El microcontrolador no entiende de números decimales, sólo entiende datos digitales 1’s y 0’s. Par resolver esto, la MCU incorpora un ADC (son las siglas de Analog Digital Converter o en español Conversor Analógico Digital). Por otro lado, Arduino no es capaz de medir cualquier voltaje, me explico. ¿Cuántos números hay entre 0 y 5?….. realmente hay infinitos números. Puedes empezar con el 0 e ir aumentando de 0,000001 o en 0,00000000000001. La consecuencia de todo esto es que Arduino solo entiende datos digitales y además estos deben estar acotados. El ADC se encargará de convertir esos valores en datos digitales y además solo podrán ser un número concreto de valores. A esto último se le llama resolución.

Es el zócalo donde pone ANALOG IN y van numerados del A0 al A5, 6 pines.

La consola nos va a dar información muy valiosa. Nos puede dar información sobre una acción concreta, por ejemplo, los datos tras subir un programa a la placa. Pero lo más importante, nos informa si hay algún error.

La consola

Otras partes importantes del IDE de ArduinoUna de las áreas donde podemos encontrar información muy valiosa es justo abajo del todo. Se pueden ver dos áreas de texto.

En la parte izquierda nos informa del número de línea donde está situado el cursor. En la parte de la derecha tenemos un resumen de la placa que tenemos seleccionada y el puerto serie que estamos utilizando.

Aquí es donde más vamos a trabajar ya que es donde escribimos nuestro código. Pero no solo eso, también tenemos acceso a las funciones más utilizadas. En la parte central encontramos el propio editor. Incluye el número de línea útil, por ejemplo, para detectar errores. Justo arriba del editor tenemos los accesos directos a las funciones más utilizadas.

El EDITOR

  1. Verificar/Compilar: este botón verifica el código en busca de errores y lo compila. Cuando hablo de compilar me refiero a traducir el lenguaje de programación que entendemos los humanos en código máquina que entienden las máquinas.
  2. Subir: el botón subir nos permite cargar o subir el código al microcontrolador a través del puerto serie USB.
  3. Nuevo: sirve para crear un programa nuevo. Esto genera una nueva ventana donde escribir el código de ese nuevo programa.
  4. Abrir: abre un programa que hayas guardado previamente en el disco duro.
  5. Salvar: guarda el archivo en el disco duro. Es como la opción que hemos visto anteriormente.
  6. Monitor serie: es una de las partes más importantes del IDE de Arduino. Sirve para mostrar información de la comunicación entre el ordenador y Arduino en las dos direcciones.

Si miramos de cerca la placa nos da la sensación de que se trata de un circuito sacado de un electrodoméstico. La realidad es que Arduino está creado con un único objetivo: facilitarnos la programación de un microcontrolador. Pero qué es un microcontrolador. Lo primero es identificarlo dentro de la placa. Si miras un Arduino de cerca, verás una circuito integrado negro donde dice ATMEL. Eso es el microcontrolador.Los microcontroladores también se llaman MCU por sus siglas en inglés Microcontroller Unit. Diariamente utilizamos decenas de ellos en dispositivos electrónicos, electrodomésticos, coches, ordenadores, móviles, etc.… Pero ¿qué es una MCU o microcontrolador? Es un circuito integrado programable, capaz de ejecutar las órdenes que están almacenadas en su memoria. Ojo a esto, circuito integrado programable. Esto quiere decir que lo podemos programar. Pero también existen los microprocesadores. Son los típicos procesadores que encontramos en los ordenadores, por ejemplo. Existe una diferencia principal entre una MCU o microcontrolador y un microprocesador, su utilidad.

¿Qué es un microcontrolador?

Una MCU tiene como objetivo una tarea concreta. Por ejemplo, cerrar las puertas de un ascensor, captar la temperatura de un sensor, etc. Sin embargo, un microprocesador es de propósito general. Puede hacer varias cosas a la vez. Recopilar información de los datos, enviar por email, mostrar en una pantalla, etc.… Un claro exponente de un dispositivo que lleva un microprocesador es una Raspberry Pi. Utilizar uno u otro dependerá del objetivo de nuestro proyecto. Concepto de placa de prototipado Una vez que ya sabemos qué es un microcontrolador ¿qué hace Arduino para facilitarnos el conexionado y la programación en un microcontrolador? Para ello vamos a sacarlo de la placa.

Su nombre completo es ATMEGA328P-PU y es un microcontrolador de 8-bit. Esto quiere decir que solo puede hacer operaciones con números de 8-bit (números entre 0 y 255). Ahora imagínate que tuvieras que programar este circuito integrado o chip, ¿cómo lo conectas al ordenador? ¿cuáles son los pines digitales y analógicos? ¿dónde está el pin de 5V y el de GND? La huella o forma en la que están dispuestos los pines, la conexión serie USB para programar y alimentar, el alimentador de baterías o pilas, cada componente está puesto en su sitio para que todo sea más fácil para nosotros.

Sin embargo, hubo una persona que pensó que había que democratizar el uso de microcontroladores y creo Arduino. Él es David Cuartielles uno de los cofundadores de Arduino y el padre de la criatura. Todo lo que rodea a la placa de Arduino está pensado para facilitarnos la programación y conexión con el microcontrolador.

Pines analógicos

¿Recuerdas al pintor que solo podía pintar con dos colores, blanco o negro? Pues en el mundo analógico tenemos una amplia gama de colores, ahora podemos pintar con diferentes tonos de gris.Si nos llevamos esto al mundo de la electrónica con Arduino, con estos pines podemos medir diferentes voltajes entre 0V y 5V. Es decir, podemos tener un voltaje de 3,5V en uno de estos pines y Arduino sería capaz de leerlo. Sin embargo, existe un problema. El microcontrolador no entiende de números decimales, sólo entiende datos digitales 1’s y 0’s. Par resolver esto, la MCU incorpora un ADC (son las siglas de Analog Digital Converter o en español Conversor Analógico Digital). Por otro lado, Arduino no es capaz de medir cualquier voltaje, me explico. ¿Cuántos números hay entre 0 y 5?….. realmente hay infinitos números. Puedes empezar con el 0 e ir aumentando de 0,000001 o en 0,00000000000001. La consecuencia de todo esto es que Arduino solo entiende datos digitales y además estos deben estar acotados. El ADC se encargará de convertir esos valores en datos digitales y además solo podrán ser un número concreto de valores. A esto último se le llama resolución.

El ADC que viene integrado dentro de la MCU que lleva Arduino UNO tiene una resolución de 10-bit. Esto equivale a que solo vamos a poder medir 1024 valores posibles que van del 0 al 1023. Básicamente lo que estamos haciendo es dividir el rango de 0V a 5V en 1024 partes.

Es el zócalo donde pone ANALOG IN y van numerados del A0 al A5, 6 pines.