Open hardware - Primeros pasos con Arduino

119
Software libre, hardware libre Alberto Labarga – Experimental Serendipity S.L. Laboratorio de Fabricación Digital , Pamplona, Octubre de 2013 OPEN ACCESS

description

Introducción al Open hardware y primeros pasos con Arduino. primera sesión del Laboratorio de fabricación digital de la Universidad Pública de Navarra http://apptivismo.org/laboratorio-fabricacion-digital

Transcript of Open hardware - Primeros pasos con Arduino

Page 1: Open hardware - Primeros pasos con Arduino

Software libre, hardware libreAlberto Labarga – Experimental Serendipity S.L.Laboratorio de Fabricación Digital, Pamplona, Octubre de 2013

OPEN ACCESS

Page 2: Open hardware - Primeros pasos con Arduino

1953: IBM presenta su primera computadora electrónica Comercial, la IBM 701 con una memoria total de una memoria total de 2048 palabras de 36 bits

Page 3: Open hardware - Primeros pasos con Arduino

1970s: Las máquinas de batalla de los comienzos de la culturaUNIX fueron los PDP-11 y su descendiente, el VAX. UNIX, funcionaba prácticamente inalterado en una mayor variedad de máquinas de las que uno pudiese encontrar en ARPANET.

Page 4: Open hardware - Primeros pasos con Arduino

http://es.wikipedia.org/wiki/Homebrew_Computer_Club

Page 5: Open hardware - Primeros pasos con Arduino

http://www.computerhistory.org/revolution/personal-computers/17/296

Page 6: Open hardware - Primeros pasos con Arduino

http://en.wikipedia.org/wiki/Popular_Electronics

Page 7: Open hardware - Primeros pasos con Arduino
Page 8: Open hardware - Primeros pasos con Arduino

Steve Wozniak debuted the prototype Apple-1 at the Homebrew Computer Club in 1976. For $666.66, buyers received a blank printed circuit board, parts kit, and 16-page assembly manual. One had to add a power supply, keyboard, storage system, and display.

Page 9: Open hardware - Primeros pasos con Arduino
Page 10: Open hardware - Primeros pasos con Arduino
Page 11: Open hardware - Primeros pasos con Arduino
Page 12: Open hardware - Primeros pasos con Arduino
Page 13: Open hardware - Primeros pasos con Arduino
Page 14: Open hardware - Primeros pasos con Arduino
Page 15: Open hardware - Primeros pasos con Arduino
Page 16: Open hardware - Primeros pasos con Arduino

http://www.businessinsider.com/9-of-apples-strangest-patents-2012-10

Page 17: Open hardware - Primeros pasos con Arduino
Page 18: Open hardware - Primeros pasos con Arduino

… a rectangular touch-screen devices with a minimalist interface with few physical buttons...

Page 19: Open hardware - Primeros pasos con Arduino
Page 20: Open hardware - Primeros pasos con Arduino
Page 21: Open hardware - Primeros pasos con Arduino

1981: IBM PC A Intel 8088 processor running at 4.77 MHz. Basic in ROM. 16K RAM. MS-DOS 1.0

Page 22: Open hardware - Primeros pasos con Arduino
Page 23: Open hardware - Primeros pasos con Arduino

Proyecto GNU

• Richard Stallman• Proyecto GNU creado en el año 1984.

– Software Libre– Licencias GPL– Free Software Fundation

Page 24: Open hardware - Primeros pasos con Arduino

Software libre!

l ibertad de uso l ibertad de copia

l ibertad de modificaciónlibertad de distribuir el

software modificado

Page 25: Open hardware - Primeros pasos con Arduino

Estructura de GNU

Page 26: Open hardware - Primeros pasos con Arduino

Linux

• Linus Torvalds.• Nucleo Linux (1991)

– Compatible con Unix– Licenciado bajo GPL– Publicado en Internet

Page 27: Open hardware - Primeros pasos con Arduino

GNU + Linux

Page 28: Open hardware - Primeros pasos con Arduino

GNU + Linux

Page 29: Open hardware - Primeros pasos con Arduino

GNU + Linux

Page 30: Open hardware - Primeros pasos con Arduino

Componentes de una distribución

Page 31: Open hardware - Primeros pasos con Arduino

Componentes de una Distribución

Page 32: Open hardware - Primeros pasos con Arduino
Page 33: Open hardware - Primeros pasos con Arduino
Page 34: Open hardware - Primeros pasos con Arduino
Page 35: Open hardware - Primeros pasos con Arduino

Recomendaciones

http://distrowatch.comhttp://www.jomuoru.net/wp-content/uploads/2010/03/gldt102-full.png

Page 36: Open hardware - Primeros pasos con Arduino

Recomendaciones

Page 37: Open hardware - Primeros pasos con Arduino
Page 38: Open hardware - Primeros pasos con Arduino
Page 39: Open hardware - Primeros pasos con Arduino
Page 40: Open hardware - Primeros pasos con Arduino
Page 41: Open hardware - Primeros pasos con Arduino

2560 JS21 blade computing nodes, each with 2 dual-core, 2.3 GHz, IBM 64-bit PowerPC 970MP processors 10240 CPUs | 20 TB of RAM | 280 TB of external disk

Page 42: Open hardware - Primeros pasos con Arduino

http://www.top500.org/statistics/treemaps/

Page 43: Open hardware - Primeros pasos con Arduino
Page 44: Open hardware - Primeros pasos con Arduino
Page 45: Open hardware - Primeros pasos con Arduino
Page 46: Open hardware - Primeros pasos con Arduino

Software libre

“El movimiento del software libre siempre ha sido político, pero su trabajo no es esencialmente político. Pero ya no podemos hacerlo, porque ahora tenemos enemigos explícitos. Nadie nos intentaba impedir antes que desarrollásemos software libre. Teníamos problemas de otro tipo, más vinculados al trabajo técnico. Sin embargo, empresas como Microsoft se declaran enemigas nuestras (...) tratan de imponer leyes que prohíben nuestro trabajo. Por eso debemos actuar de modo político contra esas leyes, al mismo tiempo que seguimos desarrollando software libre.” Richard Stallman

Page 47: Open hardware - Primeros pasos con Arduino

Cultura libre y Conocimiento abierto

El conocimiento es abierto cuando cualquiera puede usarlo, reusarlo, y distribuirlo.

Las obras culturales libres son aquellas que pueden ser libremente estudiadas, aplicadas, copiadas y/o modificadas por cualquiera, para cualquier propósito.

Page 48: Open hardware - Primeros pasos con Arduino
Page 49: Open hardware - Primeros pasos con Arduino

users :are allowed to use, to improve

and to redistribute existing projects freely.

designers :publish documents, software,.. essential to design the device.

Page 50: Open hardware - Primeros pasos con Arduino

http://www.openmoko.org

Page 51: Open hardware - Primeros pasos con Arduino

http://localmotors.com/rallyfighter/

Page 52: Open hardware - Primeros pasos con Arduino

http://opensourceecology.org/gvcs.php

Page 53: Open hardware - Primeros pasos con Arduino
Page 54: Open hardware - Primeros pasos con Arduino

http://arduino.cc/

Page 55: Open hardware - Primeros pasos con Arduino

http://en.wikipedia.org/wiki/ArduSat

Page 56: Open hardware - Primeros pasos con Arduino

http://reprap.org/

Page 57: Open hardware - Primeros pasos con Arduino

http://www.thingiverse.com/

Page 58: Open hardware - Primeros pasos con Arduino

http://hackaday.com/

Page 59: Open hardware - Primeros pasos con Arduino

http://www.adafruit.com/

Page 60: Open hardware - Primeros pasos con Arduino

http://makezine.com/

Page 61: Open hardware - Primeros pasos con Arduino

http://www.instructables.com/

Page 62: Open hardware - Primeros pasos con Arduino

http://dangerousprototypes.com/

Page 63: Open hardware - Primeros pasos con Arduino

http://www.cooking-hacks.com/

Page 64: Open hardware - Primeros pasos con Arduino
Page 65: Open hardware - Primeros pasos con Arduino
Page 66: Open hardware - Primeros pasos con Arduino

Hardware

Page 67: Open hardware - Primeros pasos con Arduino

Arduino UNO

Page 68: Open hardware - Primeros pasos con Arduino
Page 69: Open hardware - Primeros pasos con Arduino
Page 70: Open hardware - Primeros pasos con Arduino
Page 71: Open hardware - Primeros pasos con Arduino
Page 72: Open hardware - Primeros pasos con Arduino

Arduino IDEIDE = Integrated Development Environment

72

Page 73: Open hardware - Primeros pasos con Arduino
Page 74: Open hardware - Primeros pasos con Arduino

Circuito

• Es una combinación de componentes conectados de modo que proporcionen una o más trayectorias cerradas para la circulación de la corriente y permitan aprovechar la energía de los electrones en movimiento para producir un trabajo útil.

Page 75: Open hardware - Primeros pasos con Arduino

¿Qué es la corriente?

• Una corriente eléctrica es un flujo o movimiento de electrones. La corriente se representa mediante el símbolo “i” o “l”

• La unidad de medida es el ampere o amperio (A).

Page 76: Open hardware - Primeros pasos con Arduino

¿Qué es el voltaje?

• El voltaje es la fuerza electromotriz o diferencia de potencial y se representa mediante el símbolo “e” o “E”.

• Su unidad de medida es el voltio (V).• Voltaje Directo (DC): Cuando siempre

conserva la misma polaridad.• Voltaje Alterno (AC): Cuando cambia

alternativamente de polaridad.

Page 77: Open hardware - Primeros pasos con Arduino

La ley de Ohm

• La corriente a través de un conductor (l) es inversamente proporcional a su resistencia ® y directamente al voltaje aplicado (E).

• I = E/R

Page 78: Open hardware - Primeros pasos con Arduino

Componentes Pasivos

• Son aquellos no pueden amplificar la potencia.

• Son componentes pasivos: Resistencias, Condensadores, Bobinas y Transformadores.

• Definición y Aplicación de estos componentes y su simbología.

Page 79: Open hardware - Primeros pasos con Arduino

Las baterías

• Son dispositivos que produces energía eléctrica a partir de reacciones químicas controladas.

• La batería esta formada por dos electrodos llamados ánodo(-) y cátodo(+).

• Las baterías producen en sus terminales un voltaje DC.

Page 80: Open hardware - Primeros pasos con Arduino

Resistencia

• Es la cantidad de oposición que presenta un resistor al paso de la corriente.

• Los resistores son componentes que se oponen al paso de la corriente eléctrica.

• El símbolo de resistencia es R.• Su unidad de medida es el Ohm.• Las resistencias se utilizan principalmente

para controlar o limitar la cantidad de corriente que circula a través de un circuito.

• Sistema de Colores para su identificación.

Page 81: Open hardware - Primeros pasos con Arduino
Page 82: Open hardware - Primeros pasos con Arduino

Condensadores o Capacitores

• Son componentes que almacenan energía eléctrica en forma de voltaje.

• Esta habilidad se denomina capacitancia.• La capacitancia se mide un Faradios o

Faradays.• La capacitancia se representa por el

símbolo C.

Page 83: Open hardware - Primeros pasos con Arduino

Diodos

• Son dispositivos semiconductores de dos terminales, que permiten el paso de la corriente en un sentido, con una mínima resistencia y bloqueándola en el otro sentido.

• Están formados por una unión PN.• En los diodos al terminal positivo se le

denomina Ánodo (A) lado P.• Al terminal negativo se denomina Cátodo

(K) lado N.

Page 84: Open hardware - Primeros pasos con Arduino
Page 85: Open hardware - Primeros pasos con Arduino
Page 86: Open hardware - Primeros pasos con Arduino
Page 87: Open hardware - Primeros pasos con Arduino

Arduino IDEIDE = Integrated Development Environment

87

Page 88: Open hardware - Primeros pasos con Arduino

Programando el Arduino

Page 89: Open hardware - Primeros pasos con Arduino

Esqueleto básico

void setup()

{

//Se ejecuta al encender

}

void loop()

{

//Se ejecuta tras setup()

//Su ejecución se repite indefinidamente mientras la

//placa esté alimentada

}

Page 90: Open hardware - Primeros pasos con Arduino

Variables

Page 91: Open hardware - Primeros pasos con Arduino

Operadores matemáticos

Page 92: Open hardware - Primeros pasos con Arduino

Estructuras de control

Page 93: Open hardware - Primeros pasos con Arduino

Entradas y salidas

Page 94: Open hardware - Primeros pasos con Arduino

Podemos crear funciones

int* mi_funcion(char * param1, char * param2)

{

//Código de nuestra función

}

Page 95: Open hardware - Primeros pasos con Arduino

Comunicación Serie

● Inicialización– Serial.begin(speed)

– Habitualmente se hace en setup()

● Imprimir– Serial.print(val)

– Serial.println(val)

– Donde val puede ser un número, una cadena o una variable

Page 96: Open hardware - Primeros pasos con Arduino

Comunicación Serie

Page 97: Open hardware - Primeros pasos con Arduino

http://arduino.cc/es/Reference/HomePage

Page 98: Open hardware - Primeros pasos con Arduino

http://arduino.cc/en/Tutorial/Blink

Page 99: Open hardware - Primeros pasos con Arduino
Page 100: Open hardware - Primeros pasos con Arduino

cabecera

Page 101: Open hardware - Primeros pasos con Arduino

code structure: setup function

Page 102: Open hardware - Primeros pasos con Arduino

code structure: loop function

Page 103: Open hardware - Primeros pasos con Arduino

código

digital I/O functions:• pinMode• digitalWrite• digitalRead

pinMode(13, Output)

prepares pin 13 foroutputs of voltage

Page 104: Open hardware - Primeros pasos con Arduino

http://arduino.cc/en/Tutorial/Tone

Page 105: Open hardware - Primeros pasos con Arduino
Page 106: Open hardware - Primeros pasos con Arduino

http://arduino.cc/en/Tutorial/Buttonhttp://arduino.cc/en/Tutorial/ButtonStateChange

Page 107: Open hardware - Primeros pasos con Arduino
Page 108: Open hardware - Primeros pasos con Arduino

http://es.wikipedia.org/wiki/ModulaciC3%B3n_por_ancho_de_pulsos

PWM

Page 109: Open hardware - Primeros pasos con Arduino

http://arduino.cc/en/Tutorial/Fading

Page 110: Open hardware - Primeros pasos con Arduino
Page 111: Open hardware - Primeros pasos con Arduino

http://arduino.cc/en/Tutorial/AnalogInOutSerial

Page 112: Open hardware - Primeros pasos con Arduino
Page 113: Open hardware - Primeros pasos con Arduino
Page 114: Open hardware - Primeros pasos con Arduino
Page 115: Open hardware - Primeros pasos con Arduino
Page 116: Open hardware - Primeros pasos con Arduino
Page 117: Open hardware - Primeros pasos con Arduino
Page 118: Open hardware - Primeros pasos con Arduino
Page 119: Open hardware - Primeros pasos con Arduino

Referencias

● Arduino web site– http://arduino.cc/en/Guide/Environment

– http://arduino.cc/en/Tutorial/HomePage

● Adafruit tutorial #1 and 2– http://www.ladyada.net/learn/arduino/lesson2.html

● Leah Buechley’s Introduction to Arduino– http://web.media.mit.edu/~leah/LilyPad/03_arduino_i

ntro.html