Articles

Todo lo que necesita saber Sobre Arduino CodeBlog Postcircuito Teammar 11 de marzo de 2018

Desde el lanzamiento de la plataforma de código abierto Arduino, la marca se ha establecido en el centro de una amplia comunidad de código abierto. El ecosistema Arduino se compone de una combinación diversa de hardware y software. La versatilidad de Arduino y su sencilla interfaz lo convierten en una opción líder para una amplia gama de usuarios de todo el mundo, desde aficionados, diseñadores y artistas hasta prototipos de productos.

La placa Arduino está conectada a un ordenador a través de USB, donde se conecta con el entorno de desarrollo de Arduino (IDE). El usuario escribe el código Arduino en el IDE, luego lo carga al microcontrolador que ejecuta el código, interactuando con entradas y salidas como sensores, motores y luces.

Tanto los principiantes como los expertos tienen acceso a una gran cantidad de recursos y materiales gratuitos para apoyarlos. Los usuarios pueden buscar información sobre cómo configurar su placa o incluso cómo codificar en Arduino. El código abierto detrás de Arduino lo ha hecho particularmente amigable para usuarios nuevos y experimentados. Hay miles de ejemplos de código Arduino disponibles en línea. En este post, te llevaremos a través de algunos principios básicos de codificación para Arduino.

planifique Su Próximo Proyecto Arduino >>

Arduino Entorno de programación y herramientas básicas

¿Qué idioma es Arduino?

El código Arduino está escrito en C++ con una adición de métodos y funciones especiales, que mencionaremos más adelante. C++ es un lenguaje de programación legible por humanos. Cuando crea un ‘sketch’ (el nombre dado a los archivos de código Arduino), se procesa y compila en lenguaje máquina.

Arduino IDE

El Entorno de desarrollo integrado de Arduino (IDE) es el principal programa de edición de texto utilizado para la programación de Arduino. Es donde escribirás tu código antes de subirlo al tablero que deseas programar. El código Arduino se conoce como bocetos.

Nota: Es importante utilizar la última versión de Arduino IDE. De vez en cuando, busque actualizaciones aquí.

Ejemplo de código Arduino

Como puede ver, el IDE tiene un diseño minimalista. Solo hay 5 títulos en la barra de menús, así como una serie de botones debajo que le permiten verificar y cargar sus bocetos. Esencialmente, el IDE traduce y compila sus bocetos en código que Arduino puede entender. Una vez compilado el código de Arduino, se carga en la memoria de la placa.

Todo lo que el usuario tiene que hacer para comenzar a compilar su boceto es presionar un botón (una guía para esto se puede encontrar a continuación).

Si hay algún error en el código Arduino, aparecerá un mensaje de advertencia que le pedirá al usuario que realice cambios. La mayoría de los usuarios nuevos a menudo experimentan dificultades con la compilación debido a los estrictos requisitos de sintaxis de Arduino. Si cometes algún error en la puntuación al usar Arduino, el código no se compilará y te aparecerá un mensaje de error.

Monitor en serie y Trazador en serie

El monitor en serie Arduino se puede abrir haciendo clic en el icono de la lupa en la parte superior derecha del IDE o debajo de herramientas. El monitor serie se utiliza principalmente para interactuar con la placa Arduino utilizando la computadora, y es una gran herramienta para el monitoreo y la depuración en tiempo real. Para usar el monitor, necesitará usar la clase Serie.

El código del que descarga circuito.io tiene una sección de prueba que le ayuda a probar cada componente utilizando el monitor en serie, como puede ver en la captura de pantalla siguiente:

Arduino serial plotter es otro componente del IDE de Arduino, que le permite generar un gráfico en tiempo real de sus datos en serie. El trazador en serie le facilita mucho el análisis de sus datos a través de una pantalla visual. Puede crear gráficos, gráficos de valores negativos y realizar análisis de formas de onda.

Depuración de código y hardware de Arduino

A diferencia de otras plataformas de programación de software, Arduino no tiene un depurador integrado. Los usuarios pueden usar software de terceros o pueden utilizar el monitor en serie para imprimir los procesos activos de Arduino para monitoreo y depuración.

Mediante el uso de la clase Serial, puede imprimir en el monitor serial, depurar comentarios y valores de variables. En la mayoría de los modelos Arduino, se utilizarán pines serie 0 y 1 que están conectados al puerto USB.

Estructura de código

Bibliotecas

En Arduino, al igual que otras plataformas de programación líderes, hay bibliotecas integradas que proporcionan funcionalidad básica. Además, es posible importar otras bibliotecas y ampliar las capacidades y características de la placa Arduino. Estas bibliotecas se dividen aproximadamente en bibliotecas que interactúan con un componente específico o aquellas que implementan nuevas funciones.

Para importar una nueva biblioteca, debe ir a Sketch > Importar biblioteca

Además, en la parte superior de su .archivo ino, necesita usar ‘# include ‘ para incluir bibliotecas externas. También puede crear bibliotecas personalizadas para utilizarlas en bocetos aislados.

Definiciones de pines

Para usar los pines Arduino, debe definir qué pin se está utilizando y su funcionalidad. Una forma conveniente de definir los pines utilizados es usando:

‘# definir Pinname pinNumber’.

La funcionalidad es de entrada o de salida y se define mediante el método pinMode () en la sección setup.

Declaraciones

Variables

Siempre que utilice Arduino, debe declarar variables globales e instancias para utilizarlas más adelante. En pocas palabras, una variable le permite nombrar y almacenar un valor que se utilizará en el futuro. Por ejemplo, almacenaría los datos adquiridos de un sensor para usarlos más tarde. Para declarar una variable, simplemente defina su tipo, nombre y valor inicial.

Vale la pena mencionar que declarar variables globales no es una necesidad absoluta. Sin embargo, es recomendable que declare sus variables para que sea fácil utilizar sus valores más adelante.

Instancias

En programación de software, una clase es una colección de funciones y variables que se mantienen juntas en un solo lugar. Cada clase tiene una función especial conocida como constructor, que se utiliza para crear una instancia de la clase. Para usar las funciones de la clase, necesitamos declarar una instancia para ella.

Setup ()

Cada boceto de Arduino debe tener una función de configuración. Esta función define el estado inicial de Arduino al arrancar y se ejecuta solo una vez.

Aquí definiremos lo siguiente:

  1. Funcionalidad de Pin usando la función pinMode
  2. Estado inicial de los pines
  3. Inicializar clases
  4. Inicializar variables
  5. Lógica de código

Loop ()

La función de bucle también es una necesidad para cada boceto de Arduino y se ejecuta una vez que setup() se completa. Es la función principal y, como su nombre indica, se ejecuta en bucle una y otra vez. El bucle describe la lógica principal de su circuito.

Por ejemplo:

Nota: El uso del término «vacío» significa que la función no devuelve ningún valor.

Cómo programar Arduino

La lógica básica del código Arduino es una estructura «if-then» y se puede dividir en 4 bloques:

Setup – generalmente se escribirá en la sección setup del código Arduino, y realiza cosas que solo se deben hacer una vez, como la calibración del sensor.Entrada

: al principio del bucle, lea las entradas. Estos valores se utilizarán como condiciones («if»), como la lectura de luz ambiental de un LDR utilizando analogRead ().

Manipular datos: esta sección se utiliza para transformar los datos en una forma más conveniente o realizar cálculos. Por ejemplo, analogRead () da una lectura de 0-1023 que se puede asignar a un rango de 0-255 para ser utilizado para PWM.(ver Salida analogWrite ())

– esta sección define el resultado final de la lógica («entonces») de acuerdo con los datos calculados en el paso anterior. Mirando nuestro ejemplo de LDR y PWM, encienda un LED solo cuando el nivel de luz ambiental esté por debajo de un cierto umbral.

Bibliotecas de código Arduino

Estructura de bibliotecas

Una biblioteca es una carpeta compuesta por archivos con C++ (.cpp) archivos de código y C++ (.h) archivos de cabecera.

El .el archivo h describe la estructura de la biblioteca y declara todas sus variables y funciones.

El .el archivo cpp contiene la implementación de la función.

Importar bibliotecas

Lo primero que debe hacer es encontrar la biblioteca que desea usar de entre las muchas bibliotecas disponibles en línea. Después de descargarlo a su computadora, solo necesita abrir Arduino IDE y hacer clic en Sketch > Incluir biblioteca > Administrar bibliotecas. A continuación, puede seleccionar la biblioteca que desea importar en el IDE. Una vez completado el proceso, la biblioteca estará disponible en el menú de bocetos.

En el código proporcionado por circuito.io en lugar de agregar bibliotecas externas como se mencionó anteriormente, les proporcionamos la carpeta de firmware. En este caso, el IDE sabe cómo encontrarlos al usar # include.

De Software a hardware

Hay mucho que decir de las capacidades de software de Arduino, pero es importante recordar que la plataforma se compone de software y hardware. Los dos funcionan en conjunto para ejecutar un sistema operativo complejo.

Código → Compilar → Cargar → Ejecutar

En el núcleo de Arduino, está la capacidad de compilar y ejecutar el código.

Después de escribir el código en el IDE, debe cargarlo en Arduino. Al hacer clic en el botón Cargar (el icono de flecha hacia la derecha), compilará el código y lo cargará si pasó la compilación. Una vez que se complete la carga, el programa comenzará a ejecutarse automáticamente.

También puedes hacer esto paso a paso:

  1. Primero, compila el código. Para hacer esto, simplemente haga clic en el icono de verificación (o haga clic en sketch > Verificar / Compilar en la barra de menús.

Como puede ver, el icono de verificación se encuentra en la parte superior izquierda debajo de la etiqueta» Archivo » en la sección de menú.

Una vez hecho esto, Arduino comenzará a compilar. Una vez que haya terminado, recibirá un mensaje de finalización que se parece a este:

Como puedes ver, la línea verde en la parte inferior de la página te dice que has «terminado de compilar». Si su código no se ejecuta, se le notificará en la misma sección y el código problemático se resaltará para editarlo.

Una vez que haya compilado su boceto, es hora de cargarlo.

  1. Elija el puerto serie al que está conectado actualmente su Arduino. Para hacer esto, haga clic en Herramientas > Puerto serie en el menú para designar el puerto serie elegido(como se muestra anteriormente). A continuación, puede cargar el boceto compilado.
  2. Para cargar el boceto, haga clic en el icono de carga junto a la marca. Alternativamente, puede ir al menú y hacer clic en Archivo> cargar. Sus LED Arduino parpadearán una vez que se transfieran los datos.

Una vez completado, recibirá un mensaje de finalización que le indicará que Arduino ha terminado de cargar.

Configurar su IDE

Para conectar una placa Arduino a su computadora, necesita un cable USB. Al usar el Arduino UNO, el USB transfiere los datos del programa directamente a su placa. El cable USB se utiliza para alimentar su arduino. También puede ejecutar su Arduino a través de una fuente de alimentación externa.

Antes de que pueda cargar el código, hay algunas configuraciones que debe configurar.

Elija su placa: debe designar la placa Arduino que va a usar. Haga clic en Herramientas >Tablero> Su tablero.

Elija su procesador: hay ciertas placas (por ejemplo, Arduino pro-mini) para las que debe especificar el modelo de procesador que tiene. En herramientas > procesador > seleccione el modelo que tiene.

Elija su puerto: para seleccionar el puerto al que está conectada su placa, vaya a herramientas > Port > COMX Arduino (Este es el puerto serie de Arduino).

Cómo instalar placas no nativas (por ejemplo, NodeMCU)

Algunos modelos de placas no están preinstalados en el IDE de Arduino, por lo que deberá instalarlos antes de poder cargar el código.

Para instalar una placa no nativa como NodeMCU, debe:

  1. Haga clic en herramientas > Tableros > Administrador de tableros
  2. Busque el tablero que desea agregar en la barra de búsqueda y haga clic en «instalar».

Algunos tableros no se pueden encontrar a través del Administrador del Tablero. En este caso, tendrás que añadirlos manualmente. Para hacer esto:

  1. Haga clic en Archivos > Preferencias
  2. En el campo Administrador de tableros Adicionales, pegue la URL del paquete de instalación de su tablero. Por ejemplo, para NodeMCU, agregue la siguiente URL: http://arduino.esp8266.com/stable/package_esp8266com_index.json
  3. Haga clic en Aceptar
  4. Vaya a herramientas >Tableros > Administrador de tableros
  5. Busque el tablero que desea agregar en la barra de búsqueda y haga clic en»instalar».

Una vez que haya completado este paso, verá las placas instaladas en la lista de placas en herramientas.

Nota: el proceso puede diferir ligeramente para diferentes tableros.

Arduino: Una plataforma extremadamente versátil

Arduino es mucho más que un simple microcontrolador. Con un IDE expansivo y una amplia gama de configuraciones de hardware, Arduino es realmente una plataforma diversa. La variedad de sus bibliotecas y su diseño intuitivo lo convierten en el favorito de nuevos usuarios y fabricantes experimentados por igual. Hay miles de recursos de la comunidad para ayudarlo a comenzar con el hardware y el software.

A medida que avanza en sus habilidades, puede enfrentar problemas que requieren depuración, que es un punto débil del IDE de Arduino. Afortunadamente, hay varias herramientas y métodos para depurar el hardware y el software de Arduino. En el siguiente artículo, veremos cómo depurar Arduino (y cómo probar el código de Arduino), así como cómo usar simuladores y emuladores.