Guia breve sobre Arduino

Sitio: Facultad de Ingeniería U.Na.M.
Curso: REDES I - IC412
Libro: Guia breve sobre Arduino
Imprimido por: Invitado
Día: miércoles, 4 de diciembre de 2024, 23:20

1. Introduccion

¿Qué es un microcontrolador?

Un microcontrolador (abreviado µC, UC o MCU) es un circuito integrado programable, capaz de ejecutar las órdenes grabadas en su memoria. El cual esta constituido por una CPU (microprocesador para cálculos) y otros elementos que lo convierten en una mini-computadora. Estos elementos extra son memorias (RAM, ROM, EPROM), dispositivos de salida-entrada, puertos de comunicación y módulos especiales

Diversos dispositivos que utilizamos día a día funcionan con microcontroladores. Desde una pava eléctrica programable en el hogar, pasando por cosas de uso cotidiano como controles remotos, medidores de luz, aparatos celulares, lavarropas, automóviles hasta algo tan pequeño como un audífono o auricular.

Microcontrolador NO es un microprocesador.


2. ¿Que es Arduino?

Arduino es una plataforma de desarrollo basada en una placa electrónica de hardware y software libre que incorpora un microcontrolador re-programable ( AVR ATMEL) y una serie de pines hembra. Estos permiten establecer conexiones entre el microcontrolador y los diferentes sensores y actuadores de una manera muy sencilla. En el mercado se encuentran diversas placas de periféricos/sensores ya listos para conectar a las placas principales.

La principal característica de las placas arduino es facilitar el uso de la electrónica en todo tipo de proyectos, cuenta con una gran comunidad de desarrollo y librerías para utilizar que simplifican las tareas de programación.

Posee un entorno de desarrollo multiplataforma propio (IDE ARDUINO) para que el usuario pueda cargar su proyecto conectando la placa mediante por ejemplo USB.

Site: https://arduino.cl/

  • Plataforma.
  • Hardware Libre
  • Microcontrolador.
  • Sensores y Actuadores.

¿Qué es Hardware Libre?

 El hardware libre son aquellos dispositivos cuyas especificaciones y diagramas son de acceso público, de manera que cualquiera puede replicarlos.

¿Qué es Software Libre?

El software libre son los programas informáticos cuyo código es accesible por cualquiera para que quien quiera pueda utilizarlo y modificarlo

3. Productos

Arduino:

Arduino Compatible:


  • Cables
  • Displays/Pantallas
  • Sensores y actuadores
  • Comunicación Inalámbrica
  • Conectores
  • Protoboards
  • Alimentación
  • Baterías


4. ¿Arduino o Raspberry PI ?

Comparativa entre Arduino UNO  y Raspberry Pi 4
 

Arduino UNORaspberry Pi 4
 El Arduino UNO es una placa de desarrollo, basado en un microcontrolador, específicamente el ATMega328p, esta característica lo hace perfecto para la creación de proyectos donde tendrás control directo sobre sensores y actuadores, ya sean, motores, relés, sensores de humedad, temperatura, distancia, etc. Ya que al trabajar con un microcontrolador directamente puede tener acceso a sus pines digitales y analógicos de una manera mas sencilla y robusta. Esta placa de desarrollo se programa directamente en su IDE en lenguaje C, y se compila directamente a lenguaje maquina, esta característica a motivado a la comunidad a desarrollar una amplia gama de librerías para poder controlar de manera rápida y directa los distintos actuadores y sensores, además de que al no contar con ningún tipo de sistema operativo o interprete, la lectura de dichos sensores se hace de una manera mas inmediata, idea para proyectos de control y automatismo. La Raspberry Pi 4 es un mini computador, compuesto por un procesador ARM Cortex-A72, la gran potencia que este procesador a la placa la hace ideal para proyectos donde necesitemos gran poder de calculo,  como servidores web, procesamiento de imagen, video, audio, conectividad a internet, procesar datos para luego ser subido algún servicio en la nube. Al ser este un mini computador permite realizar distintas tares al mismo tiempo. Si deseas realizar algún proyecto en el que controles actuadores y sensores desde el GPIO de la Raspberry Pi, puedes hacer un programa en python por ejemplo, en el que realicé la lectura y el control de los dispositivos, dicho programa es compilado y ejecutado en el sistema operativo de la Raspberry, estas capas adicionales de software que permite que la Raspberry Pi sea un dispositivo multitarea también añade cierto retraso en el control de su puerto GPIO, lo cual hay que tener en cuenta al momento de trabajar con equipos que ameriten supervisión y acción inmediata. 
. ..



5. Programacion

.

5.1. entorno de programacion IDE

Descarga: https://www.arduino.cc/en/software

Regiones de la ventana de un programa básico

Como punto a tener en cuenta, debemos elegir que placa estamos usando en la IDE para que el compilador sepa con que puertos debe comunicarse para poder programar.

5.2. Funciones basicas

Función pinMode(pin, mode)

Se utiliza en Setup() para configurar un pin como Entrada o salida.

Por defecto todos los pines que no configuremos se tomaran como entradas.


pinMode(pin, OUTPUT); configura el pin número ‘pin’ como de salida.

Función digitalRead(pin)


Lee el valor desde un pin digital especifico. Devuelve un valor HIGH o LOW.

v = digitalRead(Pin);


Funcion digitalWrite(pin, value)


Introduce un nivel alto (HIGH) o bajo (LOW) en el pin digital especificado.

digitalWrite(pin, HIGH);



delay(ms)


Realiza una pausa en el programa la cantidad de tiempo en milisegundos especificada en el parámetro (máximo 1000, mínimo 1).


millis()


Devuelve la cantidad de milisegundos que lleva la placa Arduino ejecutando el programa actual como un valor long unsigned.

                                                                                                                                                                      

Ejemplo:

5.3. Variables y operadores

5.4. transmisión serie

Como se comento previamente Arduino posee un set de librerías. Entre ellas se entra en detalle sobre la librería de transmisión serie.

https://www.arduino.cc/en/reference/serial

Para más información sobre las librerías

https://www.arduino.cc/reference/en/libraries/

a continuación se describen algunas de las funciones a emplear en el laboratorio:

Serial.begin(speed, config)

Se utiliza para iniciar la librería y configurar pines y opciones de la transmisión( baudrate y cantidad de bits)

El parametro config es opcional, por defecto se utiliza: SERIAL_8N1 que significa 8 bits de datos. None (Sin paridad) y 1 bit de parada

Serial.read();

Esta función lee un bit recibido.

Serial.write()

Envía un byte, carácter o una serie de ellos al puerto de transmisión

Serial.available()

Retorna el numero de bits disponible para lectura en el buffer del microcontrolador