ARDUINO
Arduino
El proyecto Arduino:
¿Qué es y por qué usarlo?
Arduino: Es un sistema electrico de prototipado abierto (opensource) basada en
hardware y software y software flexibles y faciles de usar. Con conceptos básicos
de electricidad y electrónica, curiosos artistas, diseñadores…, pueden crear
objetos o entornos interactivos digitales.
Objetivos: aprendizaje y capacidad para resolución de problemas.
Fisicamente y para fines practicos arduino es:
! Una placa que contiene un microprocesador
! Pines de entrada y salida para la transmisión y recepción de datos digitales
o analogos.
! Una conexión USB que permite cargarle programas y comunicarse con el
PC.
Dispone de un IDE (Entorno de desarrollo) cómodo y flexible.
¿Qué podemos hacer con Arduino?
Arduino se puede utilizar para desarrollar objetos interactivos autonomos o pueden
ser conectados a software de un PC, por ejemplo Processing, y establecer
ordenes y respuestas con el exterior.
Cosas que podemos hacer:
! Controlar sistemas a partir de entradas y salidas.
! Controlar luces, motores, timbres y otros actuadores a partir de sensores
como pulsadores, LDR, sensores de distancia, de presión…
! Construir robots que funcionen de forma automatica.
! Conectar programas con la realidad mediante sonsores.
Comenzamos…
http://www.arduino.cc o en su versión en español http://www.arduino.cc/es/
Placa Arduino
Descripción de la placa
Señales: Analógicas y Digitales
Transmisión de información y señal eléctrica
En el formato analógico la transformación de datos está formada por impulsos
eléctricos con amplitud de valores continuos.
En el caso de señales digitales los valores se ordenan en torno a un código por
valor de o y 1, donde cada bit es una representación de dos amplitudes distintas.
Posteriormente es reconstruido a través del software oportuno.
Características común a los ordenadores que utilizan “1” y “0”.
Arduino representa el “1” con una señal de 5 voltios y el “0” con una señal de 0
voltios.
En programación llamamos una señal de 5 voltios, HIGH (significa Alta) 0 voltios
LOW (Baja).
Cuando Arduino escribe en un PIN de salida HIGH, pondrá 5 voltios en ese PIN,
se pondrá en ON (se encen
derá).
Cuando escribimos LOW en el PIN, Arduino pondrá el PIN a 0 voltios y estará en
OFF (lo apagará).
Señales analógicas:
En lugar de 2 estados opuestos, tienen niveles continuos.
En Arduino, puedes obtener los valores analógicos de los Pines analógicos. Sobre
la placa puedes ver un grupo de Pines marcados como analog in. Cuando se les
aplica tensión, ellos reportan valores de 0 a 1023.
Cuando trabajamos con arduino, creamos un circuito. Plasmamos una idea en un
programa, esta se graba en la palca a través de él lo verificamos y ejecutamos.
-Barra de manús
-Botones de acceso
-Barra de mensajes
-Editor
-Consola
Estrutura del programa
Declaración de variables: en esta parte declaramos todas las variables que
vamos a usar en el programa. Nos permite asociar nombres a números lo que nos
será de mucha utilidad a la hora d modificar los programas.
Void setup ﹛﹜: es la función de configuración de los pines de Arduino y solo se
ejecuta una a la vez, mientras que loop () se ejecuta una y otra vez hasta que
apaguemos el sistema, o se gasten las baterías.
Bucle infinito: Void loop﹛﹜: es la parte del programa que se ejecuta de forma
ciclica.
Elementos del programa
" Temporizadores:
Delay (ms tiempo), sirve para parar los proceso de la placa durante un cierto
tiempo en milisegundos.
" Pines digitales
pinMode (pin, modo) sirve para declarar un pin como entrada (INPUT) o como
salida (OUTPUT).
Configuraciones de los pines dentro del bloque setup (solo uan vez).
" digitalWrite (pin, valor)
Sirve para escribir un valor al pin, el valor pordrá ser 1 lógico (HIGH) o 0 lógico
(LOW).
Los dos estados irán asociados a un nivel de 5 voltios (alto), o 0 voltios (bajo).
ANALOGWRITE Y ANALOGREAD
A diferencia de los digitales, los pines analogicos pueden tomar cualquier valor
entre 0 y 5 voltios. Para escribir un valor analógico se una PWM (siglas en inglés
modulación por ancho de Pulso).
Funciones serial
Las placas de Arduino poseen, en principio, un puerto serie para la comunicación
con la computadora u otros dispositivos. Tal comunicación se produce en los pines
TX y RX.
La instrucción Serial , Begin () inicializa el puerto serie y establece la velocidad de
comunicación (expecificada en baudios).
Inicializa la comunicación interna del microcontrolador, indicando qué velocidad
vamos a trasmitir.Cuanto más grande sea el número, más bits por segundo
pasarán por el cable.
Constantes
El lenguaje Arduino tiene unos cuantos valores predefinidos que se llaman
constantes. Se usan para hacer los programas más legibles. Las constantes se
clasifican en grupos.
True / False
Estas son constantes booleanas que definen niveles lógicos. FALSE se define
como 0 (cero) mientras TRUE es 1 o un valor distinto de 0.
If(b=TRUE)
﹛
doSomething;
}
High / low
Estas constantes definen los niveles de pin como HIGH o LOW y se usan cuando
se leen o se escriben los pines digitales. HIGH esta definido como el nivel 1 lógico,
ON ó 5 V, mientras que LOW es el nivel lógico 0, OFF ó 0 V.
digitalWrite (13, HIGH);
input / output
Constantes usadas con la función pinMode() para definir el modo de un pin digital
como INPUT u OUTPUT.
pinMode (13, OUTPUT);
¿Qué queremos decir con todo esto?
SIMILITUDES
Bloques
Funciones…
Arduino.list(): devulve una lista con los dispositivos serie (puertos serie),
disponibles. Si su tarjeta Arduino está conectada a la computadora cuando usted
llama a esta función, su dispositivo estará en la lista.
Arduino (parent, name, rate): crea un “objeto” Arduino (objeto nivel de elemento
de programación). Parent debe aparecer sin comillas; name es el nombre del
dispositivo serie (es decir, uno de los nombres devueltos por Arduino.list()); rate es
la velocidad de la conexión (57600 para la versión actual del firmware).
pinMode(pin,mode): pin configura un pin digital como entrada (imput) o como
salida (output) mode (Arduino.INPUT o Arduino.OUTPUT).
digitalRead(pin): devuelve el valor leido de una de las entradas digitales,
Arduino.LOW o bien Arduino.HIGH (el pin debe estar configurado como entrada).
digitalWrite(pin, value): escribe Arduino.LOW o Arduino.HIGH en un pin digital.
analogRead(pin): devuelve el valor de una entrada analógica leida (de 0 a 1023).
analogWrite(pin, value): escribe un valor analógico (señal tipo PWM) en un pin
digital que soporta salida analógica (pines 3,5,6,9, 10 y 11 para ATMEGA 168);
valores debes estar comprendidos entre 0 (equivalente a off) y 255 (equivalente a
on).
Laves {} = void loop ()
{
statements;
}
punto y coma; = int x=13;
bloques de comentarios /*…*/
comentarios de liena //
variables
bucles
condicionales
DE COMPARACIÓN
Operador Descripción
== X==y, ¿es x igual a y?
!= X! = y, ¿es x distinto de y?
< X<y, ¿es x menor que y?
> X>y, ¿es x mayor que y?
<= X<=y, ¿es x menor o igual que y?
>= X>y, ¿es x mayor o gual que y?
OPERADORES ARITMÉTICOS
Operador Descripción
= a=b, asignación
+ a + b, adición o suma
– a – b, sustración o resta
* a * b, multiplicación
/ a / b, división
% a % b, módulo (resto de la división)
OPERADORES COMPUESTOS
Operador Descripción
++ a++, incremento (suma 1)
–– a – –, decremento (resta 1)
+= a + – b, adición compuesta
–= a – = b, sustracción compuesta
OPERADORES BOOLEANOS
Operador Descripción
! !a, negación
&& a && b, “y” lógico
ll a l l b, “o “ lógico
MATERIALES
Placa arduino
Placa de prototipos
Para el armado y prototipado de circuitos electrónicos:
https://www.youtube.com/watch?v=ulsv7uxDZoc
Resistencias:
La resistencia eléctrica es la oposición o dificultad al paso de la corriente
eléctrica. Se mide en Ohmios (Ω) y se representa con la letra R.
Normalmente para un led se utiliza resistencia de 220 ohmios.
http://www.digikey.es/en/resources/conversion-calculators/conversion-calculator-
resitor-color-code-4-band
Leds:
Es un emisor de luz.
Los LEDs son construidos para mostrar esto (LEDs are constructed to show this).
El Pin largo, se denomina ánodo, y es el positivo, cuando lo (wiring / cableamos)
conectamos al circuito éste debe estar próximo al extremo positivo del
alimentador.
El pin corto, o cátodo, debe estar lo más cerca posible a la tierra (0 voltios).
Transistores:
Un transistor es un dispositivo que regula el flujo de corriente o de tensión
actuando como un interruptor o amplificador para señales electrónicas.
También se llama Transistor Bipolar o Transistor Electrónico.
Fotorresistencia o resistencia LDR:
Es un componente electrónico cuya resistencia disminuye o aumenta con el la
intensidad de luz incidente.
El valor varía en función de la luz a la que se exponga.
Potenciómetros:
Resistencias variables que actúan como medidor de tensión o voltaje.
Pulsador:
Dispositivos para circuitos electrónicos. Permiten el flujo de corriente cuando son
activados. Unen los extremos de sus patas al ser presionados para permitir el
paso de corriente eléctrica.
Relés:
Son interruptores que podemos activar meidante señal electrica. Nos van a
permitir trabajar con mayores voltajes y por medio de una bobina y un electroimán,
se acciona un juego de uno o varios contactos que permiten abrir o cerrar otros
circuitos eléctricos independintes.
https://www.arduineando.com/tutoriales_arduino/
Descarga el entorno arduino:
http://www.arduino.cc
Instalación
Conecta Arduino al PC con USB
Ejecuta y abre la IDE de Arduino
Verificar el puerto de comunicación y la placa:
Ejemplo de LED integrado en la placa: el pin 13 (L).
Compruebe si la placa tiene actividad o no.
Verificar / compilar el sketch
Cargar el programa a la placa.
Materiales:
Diodo led.
Cables USB tipo A - B
Resistencia 220 ohms
Placa Arduino
Cables
Software
¿Practicamos con tres (3) LEDS?.
Créditos:
Este documento ha sido desarrollado con textos e imágenes extraídas del
documento:
Arduino.cap 1.arte electrónico.pdf
Autor: Isabel Lozano Rodríguez
Universidad de Málaga
Recuperado del sitio:
https://riuma.uma.es/xmlui/bitstream/handle/10630/14210/ARDUINO.CAP%201.%
20ARTE%20ELECTR%C3%93NICO.pdf?sequence=3&isAllowed=y
Editado por: Santiago Acosta