Objetivo.
Conocer las diferentes características y funciones del arduino mediante la programación de una manera práctica y a manera de simulación además de explorar las diversas instrucciones que se le pueden dar así como sus posibles usos en general.
Introducción.
Arduino es una plataforma de prototipos electrónica de código abierto (open-source) basada en hardware y software flexibles y fáciles de usar. Está pensado para artistas, diseñadores, como hobby y para cualquiera interesado en crear objetos o entornos interactivos.
Arduino puede sentir el entorno mediante la recepción de entradas desde una variedad de sensores y puede afectar a su alrededor mediante el control de luces, motores y otros artefactos. El microcontrolador de la placa se programa usando el.
Arduino Programming Language (basado en Wiring) y el Arduino Development Environment (basado en Processing). Los proyectos de Arduino pueden ser autónomos o se pueden comunicar con software en ejecución en un ordenador (por ejemplo con Flash, Processing, MaxMSP, etc.).
Hablando de informática hay una corriente que de a poco está ganando cada vez más fuerza. Se trata de las filosofías libres. En los últimos años el software libre ha ganado muchísimo terreno, desde el código que da vida a infinidad de sitios en Internet, hasta el sistema operativo más común en dispositivos móviles a día de hoy, todo construido sobre usando como base software de código abierto.
Hacer libre el software no es demasiado difícil. Solo hace falta que quién invierte tiempo desarrollando código esté dispuesto a compartir su tiempo y esfuerzo con otras personas de manera íntegra. El software es replicable con impresionante facilidad, cosa que no es tan sencilla de hacer con el hardware, por lo que pensar el hardware libre requiere tener mucha visión.
De eso se trata Arduino, un sistema que desde hace ya casi una década sirve como núcleo del hardware libre, y será el tema central de este Hardware para novatos.
¿Qué es Arduino?
Definir Arduino es complicado, muy complicado. Cuando hablamos de Android, por ejemplo, todos sabemos que se trata de un sistema operativo. Sin embargo, Android no es un único sistema operativo estático, cada fabricante lo implementa a su modo, e incluso la comunidad de desarrollo independiente ha puesto en Internet multitud de versiones del sistema operativo. Y hasta empresas como Nokia y Amazon utilizan Android sin siquiera mencionarlo.
Algo similar a lo descrito en el párrafo anterior ocurre con Arduino. Se trata de un microcontrolador, una placa, un pequeño sistema de procesamiento. Sin embargo, su condición de sistema libre ha propiciado tantas variaciones de lo mismo, que Arduino no es una pieza de hardware única, y de hecho podemos encontrar tantas configuraciones como desarrolladores dispuestos a hacer cambios en los esquemas puedan existir.
Pero claro, debemos cuando menos darle una razón de ser a Arduino. Para ello tenemos que saber qué hace exactamente un microcontrolador. La respuesta, de nuevo, es que depende de la configuración. Así, encontraremos placas de Arduino capaces de dar vida a un teléfono móvil, un mando a distancia, consolas portátiles, y hasta cámaras fotográficas.
Para simplificar las cosas (y tomando alguna licencia), Arduino es el hardware libre y hardware libre es Arduino.
Conocer las diferentes características y funciones del arduino mediante la programación de una manera práctica y a manera de simulación además de explorar las diversas instrucciones que se le pueden dar así como sus posibles usos en general.
Introducción.
Arduino es una plataforma de prototipos electrónica de código abierto (open-source) basada en hardware y software flexibles y fáciles de usar. Está pensado para artistas, diseñadores, como hobby y para cualquiera interesado en crear objetos o entornos interactivos.
Arduino puede sentir el entorno mediante la recepción de entradas desde una variedad de sensores y puede afectar a su alrededor mediante el control de luces, motores y otros artefactos. El microcontrolador de la placa se programa usando el.
Arduino Programming Language (basado en Wiring) y el Arduino Development Environment (basado en Processing). Los proyectos de Arduino pueden ser autónomos o se pueden comunicar con software en ejecución en un ordenador (por ejemplo con Flash, Processing, MaxMSP, etc.).
Hablando de informática hay una corriente que de a poco está ganando cada vez más fuerza. Se trata de las filosofías libres. En los últimos años el software libre ha ganado muchísimo terreno, desde el código que da vida a infinidad de sitios en Internet, hasta el sistema operativo más común en dispositivos móviles a día de hoy, todo construido sobre usando como base software de código abierto.
Hacer libre el software no es demasiado difícil. Solo hace falta que quién invierte tiempo desarrollando código esté dispuesto a compartir su tiempo y esfuerzo con otras personas de manera íntegra. El software es replicable con impresionante facilidad, cosa que no es tan sencilla de hacer con el hardware, por lo que pensar el hardware libre requiere tener mucha visión.
De eso se trata Arduino, un sistema que desde hace ya casi una década sirve como núcleo del hardware libre, y será el tema central de este Hardware para novatos.
¿Qué es Arduino?
Definir Arduino es complicado, muy complicado. Cuando hablamos de Android, por ejemplo, todos sabemos que se trata de un sistema operativo. Sin embargo, Android no es un único sistema operativo estático, cada fabricante lo implementa a su modo, e incluso la comunidad de desarrollo independiente ha puesto en Internet multitud de versiones del sistema operativo. Y hasta empresas como Nokia y Amazon utilizan Android sin siquiera mencionarlo.
Algo similar a lo descrito en el párrafo anterior ocurre con Arduino. Se trata de un microcontrolador, una placa, un pequeño sistema de procesamiento. Sin embargo, su condición de sistema libre ha propiciado tantas variaciones de lo mismo, que Arduino no es una pieza de hardware única, y de hecho podemos encontrar tantas configuraciones como desarrolladores dispuestos a hacer cambios en los esquemas puedan existir.
Pero claro, debemos cuando menos darle una razón de ser a Arduino. Para ello tenemos que saber qué hace exactamente un microcontrolador. La respuesta, de nuevo, es que depende de la configuración. Así, encontraremos placas de Arduino capaces de dar vida a un teléfono móvil, un mando a distancia, consolas portátiles, y hasta cámaras fotográficas.
Para simplificar las cosas (y tomando alguna licencia), Arduino es el hardware libre y hardware libre es Arduino.
¿Cómo funciona Arduino?
Como pasa con la mayoría de las placas microcontroladores las funciones de Arduino pueden resumirse en tres. En primera instancia, tenemos una interfaz de entrada, que puede estar directamente unida a los periféricos, o conectarse a ellos por puertos. El objetivo de esa interfaz de entrada es llevar la información al microcontrolador, la pieza encargada de procesar esos datos. El mentado microcontrolador varía dependiendo de las necesidades del proyecto en el que se desea usar la placa, y hay una buena variedad de fabricantes y versiones disponibles.
Por último, tenemos una interfaz de salida, que lleva la información procesada a los periféricos encargadas de hacer el uso final de esos datos, que en algunos casos puede bien tratarse de otra placa en la que se centralizará y procesara nuevamente la información, o sencillamente, por ejemplo, una pantalla o un altavoz encargada de mostrar la versión final de los datos.
De nuevo, Arduino es un sistema, y no una placa única. Por esto, el funcionamiento concreto dependerá del proyecto. Así, en un móvil hecho con Arduino tendremos varios microcontroladores, encargados de las conexiones de red, los datos necesarios para la entrada de números y mostrar información en pantalla, entre otras cosas. Así mismo, un reloj hecho con Arduino solamente haría falta un chip que cuantifique la hora y la muestre en una pantalla.
Video
Como ya hemos dicho, Arduino es casi sinónimo de hardware libre, y con eso, estamos hablando de una de las plataformas más complejas y variables que podrían existir.
Ejercicios: La forma de conectar el Arduino es la siguiente:
El código es:
int led = 13;
void setup() {
pinMode(led, OUTPUT);
}
void loop() {
digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
Ejercicio: 1
Circuito Ascendente:
El código es:
int l1 = 13;
int l2 = 12;
int l3 = 11;
int l4 = 10;
int l5 = 9;
int l6 = 8;
// the setup routine runs once when you press reset:
void setup() {
// initialize the digital pin as an output.
pinMode(l1, OUTPUT);
pinMode(l2, OUTPUT);
pinMode(l3, OUTPUT);
pinMode(l4, OUTPUT);
pinMode(l5, OUTPUT);
pinMode(l6, OUTPUT);
}
// the loop routine runs over and over again forever:
void loop() {
int t=200;
digitalWrite(l1, HIGH); // turn the LED on (HIGH is the voltage level)
delay(t); // wait for a second
digitalWrite(l1, LOW); // turn the LED off by making the voltage LOW
delay(t);// wait for a second
digitalWrite(l2, HIGH); // turn the LED on (HIGH is the voltage level)
delay(t); // wait for a second
digitalWrite(l2, LOW); // turn the LED off by making the voltage LOW
delay(t);
digitalWrite(l3, HIGH); // turn the LED on (HIGH is the voltage level)
delay(t); // wait for a second
digitalWrite(l3, LOW); // turn the LED off by making the voltage LOW
delay(t);
digitalWrite(l4, HIGH); // turn the LED on (HIGH is the voltage level)
delay(t); // wait for a second
digitalWrite(l4, LOW); // turn the LED off by making the voltage LOW
delay(t);
digitalWrite(l5, HIGH); // turn the LED on (HIGH is the voltage level)
delay(t); // wait for a second
digitalWrite(l5, LOW); // turn the LED off by making the voltage LOW
delay(t);
digitalWrite(l6, HIGH); // turn the LED on (HIGH is the voltage level)
delay(t); // wait for a second
digitalWrite(l6, LOW); // turn the LED off by making the voltage LOW
delay(t);
}
Ejercicio: 2
Semáforo de 2 vías
El código es:
int led = 13;
int led1 = 12;
int led2 = 11;
int led3 = 10;
int led4 = 9;
int led5 = 8;
// the setup routine runs once when you press reset:
void setup() {
// initialize the digital pin as an output.
pinMode(led, OUTPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
}
// the loop routine runs over and over again forever:
void loop() {
digitalWrite(led, HIGH); // prende verde 1
digitalWrite(led5, HIGH); // prende rojo 2
delay(3000);
digitalWrite(led, LOW); // apaga verde 1
delay(1000);
digitalWrite(led, HIGH); // prende verde 1
delay(1000);
digitalWrite(led, LOW); // apaga verde 1
delay(1000);
digitalWrite(led1, HIGH); // prende naranja 1
delay (1000);
digitalWrite(led1, LOW); // apaga naranja 1
digitalWrite(led2, HIGH); // prende rojo 1
digitalWrite(led5, LOW ); // apaga rojo 2
digitalWrite(led3, HIGH); // prende verde 2
delay (3000);
digitalWrite(led3, LOW); // apaga verde 2
delay(1000);
digitalWrite(led3, HIGH); // prende verde 2
delay(1000);
digitalWrite(led3, LOW); // apaga verde 2
delay(1000);
digitalWrite(led5, LOW); // apaga rojo 2
digitalWrite(led4, HIGH); // prende naranja 2
delay (1000);
digitalWrite(led4, LOW); // apaga verde 2
digitalWrite(led2, LOW); // apaga rojo 1
}