Instrumental II – Interfaz 2021

Días presenciales – 2º semestre 2021
. 28 de septiembre 2021 – 11:00h a 14:00h – Sala 1A (Impresoras 3D)
. 19 de octubre 2021 – 11:00h a 14:00h – Sala 1A (Impresoras 3D)
. 16 de noviembre 2021 – 11:00h a 14:00h – Sala 1A (Impresoras 3D)

Calendario
https://docs.google.com/spreadsheets/d/1ajnfIxZZTkKWnazLR938Gt_B34dK1N_L9cHAVOzpIjk/edit?usp=sharing

Propósito general del curso
El segundo nivel del Taller Instrumental Interfaz se enfoca en la experimentación con las posibilidades técnicas y expresivas de la vinculación entre entorno, cuerpo y máquina. Desde una mirada artística, se problematiza y amplía el campo funcional, simbólico y constructivo de las herramientas electrónicas y digitales.

A través de aprendizajes teórico-referenciales y  práctica exploratoria, y la experimentación con microcontroladores, sensores de presencia, ambientales e instrucciones programadas los estudiantes comprenden el concepto de interfaz.


Metodología:
Las sesiones son mayormente de carácter práctico a partir de la exploración, a través de ejercicios guiados, de herramientas y componentes electrónicos, así como también del uso de microcontroladores compatibles con Arduino.
Al finalizar el curso, cada estudiante deberá haber realizado una serie de ejercicios a partir de los conocimientos adquiridos durante las clases. Este proceso, registrado en una bitácora en línea, dará lugar a un mínimo de tres evaluaciones.

Bitácora
Cada estudiante deberá llevar una bitácora en donde anotará de forma sostenida los procesos que emerjan a partir de los contenidos del curso. La idea es incluir, anotaciones reflexivas acerca del proceso o de posibles proyectos, anotaciones técnicas acerca del circuito o sistema que se esté desarrollando, referencias artísticas o de otro tipo que puedan aportar o tengan relación con el desarrollo de proyectos y ejercicios que se desarrollen en la clase.
Se sugiere usar Google drive en vinculación con youtube/vimeo, soundcloud, flickr u otras plataformas de publicación de contenido.

Materiales:
Cada estudiante deberá contar con los materiales y herramientas necesarios para cada sesión.

Dónde comprar los componentes y herramientas
Lo marcado con asteriscos** son tiendas que están haciendo reparto a domicilio durante la contingencia COVID.
http://www.victronics.cl/**
http://www.olimex.cl/**
http://www.casaroyal.cl/**
— Digitel Electrónica: San Antonio 32 (subterráneo), Stgo. Centro. F: 226324511
– Ibarra: Calle San Diego 928 Santiago – Santiago, Chile, F: 2 672 39 63 / 2 672 94 05
– Electrónica Orfali: San Diego 955, Santiago, F: 2 698 83 76-
– https://cl.rsdelivers.com/**
– AFEL: https://afel.cl**
– http://cm2.cl/**
– https://electronicahobby.cl/**
– https://maxelectronica.cl/**
– https://tectronix.cl/**

Bibliografía y web de referencia
www.arduino.cc
Libro Arduino Starter Kit
Libro Getting started with Arduino
Libro Smil Vaclav-Energy

Carpeta de registros clase: https://drive.google.com/drive/folders/1zgR8h_a_gB_Q-W8Fac_0NBGJVT_n7Onh?usp=sharing

Documentos de apoyo
Electricidad Intro: Pdf
Herramientas: Pdf

Tabla de ejercicios prácticos a desarrollar en cada clase
https://docs.google.com/spreadsheets/d/1TYin6G1jFwluIOKyYqQgcEKi7vCttCqpfoQLiZxXq2c/edit?usp=sharing

Links bitácoras
https://docs.google.com/document/d/13zyjMjEFUrzhIE7mginjRZMjLB4Fd-1r47duAYsdkeM/edit?usp=sharing

Sitio web proyectos personales prof.
www.etab.cl

.

Sesión 1

Physical Computing y microcontroladores
Esta es la imagen que inicia el primer libro dedicado a la computación física o Physical Computing. Su primera edición fue publicada en 2004 y fue una respuesta a la inquietud de profesores y estudiantes de distintas áreas interesados en el trabajo creativo que implicaba una respuesta física ante rutinas digitales o vice/versa.

En el libro se hace referencia a esta imagen para explicar el cómo nos relacionamos con los computadores, específicamente en cómo somos percibidos por estos. Hasta ese entonces la forma casi única para una persona  de comunicarse con un computador era a partir del mouse y el teclado y por otro lado a través de la vista y los oídos.

Se comenzó a usar microcontroladores de fácil programación para expandir las posibles formas de interacción con la máquina: Basic Stamp, Pic y otros, eran los microcontroladores más utilizados, sin embargo en 2003 en el instituto Ivrea en Italia quisieron hacer aún más fácil el uso de estos dispositivos, así como también más económicos para los estudiantes.

Fue así entonces como comenzó a desarrollarse la placa Arduino y su software en el contexto de una tesis de Magister en el mismo instituto Ivrea por el colombiano Hernando Barragán, quien en ese momento inició su proyecto Wiring en el que luego se basó el proyecto Arduino conducido por un grupo constituido por  Massimo BanziDavid CuartiellesTom IgoeGianluca Martino, and David Mellis. También hubo directa influencia del proyecto Processing iniciado por Casey Reas y Ben Fry

Luego de Arduino (que es un proyecto Open Source) comenzaron a aparecer distintas placas basadas en ella como RBBB o Makey Makey entre otras.

Otra característica que vale la pena mencionar es que gracias a las características de Arduino, es bastante fácil aumentar sus capacidades de fábrica gracias a los shields que son placas adosables a Arduino para por ejemplo, usar de manera más fácil motores, aplicaciones con sonido, acceder a internet, etc.

También cabe mencionar que hace algunos años se han desarrollado otras placas como Raspberry Pi,  Beagle Bone y más recientemente  Arduino Galileo (entre otras) que entran dentro de la categoría de pequeños computadores por lo que tienen más capacidad de procesamiento de datos, se les puede instalar un sistema operativo, programas y aceptan periféricos como monitor, teclado, mouse, etc, así como también conexión a Internet sin necesidad de enchufarlos a un shield.

Esta reseña es para contextualizar brevemente en qué situación se generan las herramientas que presentaré las próximas clases. Lo que da para pensar es el rol de estas en las posibilidades de uno generar herramientas propias, que pueden ser personalizadas según las propias necesidades y concepto de un proyecto. Al igual que aprender programación, se generan libertades que no se dan al ocupar máquinas y softwares que no pueden ser modificados.

Links de instalación y proyecto Arduino
Sitio oficial Arduino: http://arduino.cc
IDE Arduino online: https://create.arduino.cc/editor

Conceptos ejercicio #1
. Electrónica: led, resistencia, jumper wire, protoboard, placa arduino.
. Lenguaje Arduino: comentario, función, parámetros, digitalWrite, HIGH, LOW, delay, pinMode, LED_BUILTIN (corresponde a pin Digital 13)

Ejercicio desarrollado en clases:
Hello World / Hola mundo
1) File –> Examples –> Basics —> Blink
Referencia en línea: https://www.arduino.cc/en/Tutorial/Blink
*Se pide realizar modificaciones a este código, y avanzar de manera autónoma para luego revisar en la próxima clase los avances.

.

Sesión 2

Revisión de ejercicios hechos en casa.
Referentes vistos durante la sesión:
https://22bits.org/category/tecnologia/
https://polwor.cl/category/artefactos-sonoros/
https://valentinavillarroel.tumblr.com/bowerbankii
Se sugiere revisar el libro: Motors for Makers a Leandro. Se mencionan los solenoides.

Luego revisamos el ejemplo Blink nuevamente a modo de repaso de conceptos y estructuras.

int entradaA = 13;
int entradaB = 6;
//declarar una tercera variable

void setup() {
pinMode(entradaA, OUTPUT);
pinMode(entradaB, OUTPUT);
}

void loop() {
digitalWrite(entradaB, HIGH);
digitalWrite(entradaA, LOW);
delay(1000);
digitalWrite(entradaB, LOW);
digitalWrite(entradaA, HIGH);
delay(1000);
}


A partir de este, hablamos de la declaración de las variables (global y local), así como de los tipos de datos: https://es.wikipedia.org/wiki/Tipo_de_dato

Ejercicio desarrollado en clases:
cambio de brillo de un led por medio de fade/fading
Material de apoyo ciclo for: http://etab.cl/clases/uchile/obj-tec/pdfs/clase_ciclo-for_processing.pdf

int ledPin = 9;

void setup() {
//void
}

void loop() {
//ciclo for
for (int fadeValue = 0; fadeValue <= 255; fadeValue += 10) {
analogWrite(ledPin, fadeValue);
delay(1000);
}
//for (instrucción para ir de más a menos // encendido a apagado)
}

*Ejercicios para la próxima semana:
1.- Llevar todo lo avanzado hasta ahora a la bitácora, para revisar desde ahí los ejercicios.
2.- Resolver el ejercicio de ciclo for, de manera de hacer que el led disminuya su brillo de 100% a 0%

*Solución:
for (int fadeValue = 255; fadeValue >= 0; fadeValue -= 10) {
analogWrite(ledPin, fadeValue);
delay(1000);
}

.

Sesión 3

Condicional if

If
La instrucción if () es la más básica de todas las estructuras de control de programación. Permite hacer que algo suceda o no, dependiendo de si una condición dada es verdadera o no. Se parece a esto:

if (unaCondición) {
   // ejecuta algo, si la condición es verdadera
}

Existe también una variación común llamada if-else que se ve así:

if (unaCondición) {
   // ejecuta algo, si la condición es verdadera
} else {
   // ejecuta algo, si la condición es falsa
}

También existe una tercera instrucción: else-if, con la que se puede verificar una segunda condición si la primera es falsa:

if (unaCondición) { 
// ejecuta algo, si la condición es verdadera 
} else if (otraCondición) { 
// ejecuta algo, sólo si la pimera condición es falsa
// y la segunda condición es verdadera
}

----
created 17 Jan 2009
modified 9 Apr 2012
by Tom Igoe
This example code is in the public domain.
https://www.arduino.cc/en/Tutorial/BuiltInExamples/ifStatementConditional
*/
int analogPin = A0; // pin that the sensor is attached to
int ledPin = 13; // pin that the LED is attached to
int threshold = 400; // an arbitrary threshold level that's in the range of the analog input
void setup() {
// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);
// initialize serial communications:
Serial.begin(9600);
}
void loop() {
// read the value of the potentiometer:
int analogValue = analogRead(analogPin);
// if the analog value is high enough, turn on the LED:
if (analogValue > threshold) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
// print the analog value:
Serial.println(analogValue);
delay(1); // delay in between reads for stability
}

-----

Operadores
https://www.arduino.cc/reference/en/#structure
En la programación Arduino, los operadores se utilizan para realizar operaciones como asignación, lógica, incremental, etc. El conocimiento de estos operadores es importante para realizar el cálculo matemático y lógico en Arduino. Básicamente, un operador es responsable de operar con datos. Por ejemplo, si tenemos que realizar la suma de dos números, usaremos el operador de suma, ya que es responsable de realizar la operación de suma en los datos. En la programación de Arduino, todos estos operadores se agrupan en cinco categorías diferentes según sus operaciones

. Arithmetic Operators / Operadores aritméticos
. Comparison Operators / Operadores de comparación o Comparadores
. Boolean Operators / Operadores booleanos

. Compound Operators / Operadores compuestos
. Bitwise Operators / Operadores bitwise (bit a bit)

Comunicación Serial

/*
Ejemplo: AnalogReadSerial

https://www.arduino.cc/en/Tutorial/BuiltInExamples/AnalogReadSerial

// the setup routine runs once when you press reset:
void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(9600);
}

// the loop routine runs over and over again forever:
void loop() {
// read the input on analog pin 0:
int sensorValue = analogRead(A0);
// print out the value you read:
Serial.println(sensorValue);
delay(1); // delay in between reads for stability
}

.
Encargo Nº1


…….. Desripción del encargo y Pauta de evaluación …….
https://docs.google.com/document/d/10MQ6FqJAphYzdwRRe8lyqvNyddc9P324fXuFAnunZh8/edit?usp=sharing
…….. Referencias guía ………
. Búsqueda inicial en Google: Objeto Editorial
. Popup Book
. Encuentro entre alta y baja tecnología en el trabajo de Jie Qi
. Proyectos desarrollados con Arduino
. Revisar presentación de María Ignacia Valdevenito


Sesión 6

Referentes

De la sesión 4
Visita: María Ignacia Valdebenito (Nacha)

De la sesión 3
https://vimeo.com/248526680 (Manuela Garretón – Default)

De la sesión 2

https://22bits.org/category/tecnologia/

https://polwor.cl/category/artefactos-sonoros/

https://valentinavillarroel.tumblr.com/bowerbankii

Solenoides

De la sesión 1


Daniel Roisin, Wooden Mirror

Aaron Sherwood’s blog