---
# System prepended metadata

title: '**Apuntes PMM2** Segundo Semestre :beers:'
tags: [notas Personales]

---

---
tags: notas Personales
---

# **Apuntes PMM2** Segundo Semestre :beers: 

*Notes by Gabriel Vallarta Angulo*

---

**Bienvenidos** a una edición más de las notas de clase de Gabriel. En esta ocasión comentaremos un poco las cosas aprendidas durante el **segundo semestre** de la asignatura de Producción Multimedia Avanzada, PMM2 para los amigos. Impartida por los profesores [Víctor Barberá](#Víctor-Barberán-Soler) y [Carlos Anselmo](#Carlos-Anselmo-del-Pino). 


## Índice de contenidos
- [Propiedad Intelectual](#Propiedad-Intelectual)
- [Networks](#Networks)
- [Introducción a Arduino](#Introducción-a-Arduino)
- [Impresión 3D](#Impresión-3D)
- [Proyecto Semestral](#Proyecto-Semestral)

---
# Propiedad Intelectual

Sobre la Propiedad Intelectual tuvimos una clase muy interesante sobre lo que significa "ser dueño" de algo, de una idea o de un objeto, debatimos sobre todo de los límites en ser propietarios de ciertas cosas, por ejemplo los metros cuadrádos de tu casa, es fácil de entnder que cierto perímetro es tuyo porque lo pone un contrato que adquiriste aprobado por el gobierno, pero que hay de la altura? Qué tanto de lo que está por encima de estos metros cuadrados es tuyo? Porque no hacer contartos de metros cúbicos?

Sinceramente fue una de las clases más interantes en cuanto al debate que generamos a partir de los contenidos. 

## Patente vs Copyright

![](https://hackmd.io/_uploads/ByCvQnQvh.png)


Aprendí sobre la diferencia entre una **Patente** y un **Copyright**. Después de lo visto en clase, la explicaría de la siguiente manera:

Imagina que tienes una super idea para inventar algo genial, como una máquina de hacer pizza instantánea. Si quieres **proteger** tu invención y asegurarte de que **nadie más la copie**, entonces necesitas una **patente**.

La **patente** es como un escudo de protección para tus inventos. Es como si dijeras: "¡Eh, mundo! ¡Esta invención es mía y nadie puede usarla sin mi permiso!". Consigues una patente para asegurarte de que nadie robe tu idea y la utilice para hacerse rico sin darte ni las gracias.

Pero espera, también existe algo llamado **copyright**, el cual se utiliza para proteger cosas como **música**, **películas**, **libros** y otras **obras creativas**. Si, por ejemplo, eres un genio de la música y has compuesto una canción pegajosa sobre las pizzas instantáneas, entonces puedes obtener un copyright para asegurarte de que nadie más pueda robar tu obra maestra y venderla como suya.

Entonces, en resumen, la patente es para proteger tus invenciones, mientras que el copyright es para proteger tus creaciones artísticas. Ambos te dan derechos legales y te permiten controlar quién puede utilizar tu trabajo.

La **Patente** es valida tipicamente dyurate 20 años, mientras que el **Copyright** en general dura la vida del autor o creador. 



---
# Networks

En clase vimos como una red es como una "maquina de copiado con esteroides", mandar un whatsapp al final del día es solo copiar info de mi movil a otro movil, esto para redes electronicas claramente. Como ya habíamos visto este tema en las clases de Xarxes de la uni, hablamos más de las ventajas de las redes y protocolos de comunicación.

### Ventajas de tener una red:

- **ubicación**: Con las redes podemos acortar o eliminar la barrera geográfica de dos sitios que trabajen en lo mismo.
- **paralelismo**: podemos hacer cosas en paraelo y agilizar tiempos deoperaciones. 
- **modularidad**: hacer cosas en modulos controlados y especificos que sean más sencillos de reparar y que usen información en común.

### Protocolo Vs Red
Una **red** es un conjunto de ordenadores conectados entre si a través de lineas de comunicación.
Y un **protocolo** es un conjunto de normas para poder comunicarse.

> ***Ej**: Hablar en clase*
> **Red** - Aire (capa física)
> **Protocolo** - Español y respeto al escuchar


### Comunicaciones 

Ethernet tiene la ventaja de que utiliza una **señal diferencial**, esto significa que sus altos y bajos de la señal no se rigen por GND y Top Voltaje sino que toma la mínima y máxima de voltajes y esa es la "diferencial" que hace que sea aprueba de cambios de voltaje e interferencias en la intensidad señal.

Comunicación **serial** en Arduino:
```
void setup(){
serial.begin(9600) //speed
}
```

**I2C** es para comunicar entre microcontroladores, sobre todo sensores. 

**SPI** comunicación también entre microcontroladores, normalmente SD cards o una interfaz más pesada en términos de datos como pantallas.



---
# Introducción a Arduino

**Arduino** es una plataforma de hardware y software de código abierto diseñada para facilitar la creación de proyectos electrónicos interactivos. Es especialmente popular en el campo del diseño industrial y el arte digital debido a su versatilidad y facilidad de uso.

En su forma más básica, Arduino consiste en una placa de circuito impreso que incorpora un microcontrolador y una serie de pines de entrada/salida que permiten la conexión con diversos componentes electrónicos. Estos pines pueden utilizarse para leer sensores, controlar actuadores, comunicarse con otros dispositivos y ejecutar programas específicos.

Una de las características distintivas de Arduino es su enfoque en la interacción con el entorno físico. Esto significa que, a través de Arduino, es posible crear proyectos que respondan a entradas del mundo real, como sensores de luz, temperatura, movimiento, entre otros. Además, se pueden controlar dispositivos y actuadores, como motores, luces y pantallas, para crear efectos visuales, sonoros o cualquier otro tipo de interacción.

### ¿Y yo cómo programo esto?
La programación de Arduino se realiza utilizando un entorno de desarrollo integrado (IDE) que proporciona una interfaz gráfica y un lenguaje de programación simplificado basado en C/C++. Esto facilita la escritura de código y el control de los componentes conectados a la placa Arduino.

Es verdad que es mucho más recomendable, al menos en mi experiencia personal, utilizar **Visual Studio Code** que es más versátil y sobretodo ofrece una infinidad de Plugins que pueden facilitarte enormemente la vida. Por ejemplo, el que nosotros utilizamos fue el plugin dentro del Visual Studio Code llamado **Platform IO**, les dejo el link de la organización, solo hagan [**clic aquí**](https://platformio.org/). 

Lo pueden añadir directamente desde el Visual Studio Code en la sección de Plugins.

> Este es el **ID de la extensión** dentro del Visual Studio Code: `platformio.platformio-ide`

![](https://hackmd.io/_uploads/SJcsnoXD2.png)

:::info
Les dejaré un [**link**](https://hackmd.io/-Okxfw3QRrqKFxCWSLrGVw?view) de una documentacíon muy útil para seleccionar correctamente la placa de Arduino con la que queremos trabajar.
:::

---
# Impresión 3D

--- 
## Digital fabrication

Durante esta clase, Víctor nos dio la más completa clase informativa de impresión 3D del universo. Vimos desde la idea tan interesante de lograr pasar de bits a átomos y materializar la información de maneras que nunca habíamos podido hacer anteriormente, hasta el detalle más preciosa de una impresora 3D y de cómo estamos reduciendo esfuerzos humanos y precios drásticamente en las lineas de producción.

No quisiera solo parafrasear la clase de Víctor por lo que les contaré un poco la información que me pareció más relevante.

### No hay solo un tipo de impresoras

De lo que más me impactó fue saber que no hay solo uno o dos tipos de impresoras 3D en el mundo, como yo pensaba, la típica de filameto que tiene una cabeza que se calienta y funde filamento de arriba hacia abajo en una caja, o la de resina que es tan popular en Youtube por su excelente precisión y detalle con miniaturas, sino que existen al menos 7 tipos de impresión 3D basadas en distintos principios químicos y físicos, aquí les dejo algunos ejemplos.

1. **Fused Deposition Modeling (FDM**) o **Filament-based**: Es uno de los métodos más populares y ampliamente utilizado en impresión 3D. Funciona extruyendo un filamento de plástico fundido, como ABS o PLA, capa por capa para construir el objeto.

2. **Stereolithography (SLA)**: Utiliza un proceso de fotopolimerización para crear objetos. Un láser o una fuente de luz UV cura una resina fotosensible líquida capa por capa, solidificándola y formando el objeto deseado.

3. **Digital Light Processing (DLP)**: Similar a la SLA, pero en lugar de un láser, utiliza un proyector digital para curar la resina fotosensible líquida. La luz proyectada solidifica la resina capa por capa, creando el objeto.

4. **Selective Laser Sintering (SLS)**: Emplea un láser para fusionar polvo de material, como nylon, capa por capa, creando un objeto sólido. El polvo no utilizado en el proceso puede servir de soporte para las piezas impresas.

5. **Selective Laser Melting (SLM)**: Similar al SLS, pero se utiliza en metales en polvo. El láser funde el polvo metálico capa por capa para formar objetos metálicos sólidos.

6. **Electron Beam Melting (EBM)**: Utiliza un haz de electrones en lugar de un láser para fundir polvo metálico. Es similar al SLM pero se emplea en industrias específicas y utiliza temperaturas más altas.

7. **Binder Jetting**: Esta técnica imprime objetos mediante la deposición de capas de polvo y aplicando un aglutinante líquido para unir las partículas en cada capa. Se repite el proceso capa por capa hasta que el objeto se complete.

### Si quieres armar tu porpia impresora te tomará tiempo y sudor

Víctor también nos comentó cómo el contruyó su propia impresora 3D y los mil detalles a tener en cuenta a la hora de hacer una por tu propia cuenta. Claramente no hablaré de todos los pasos que se requieren para realizar una, pero si les diré que escuchar a alguien que ha recorrido el camino de desarrollar un objeto tan complejo como este de ayuda mucho a apreciar la **evolución** de las tecnologías que estamos trayendo al mundo, a apreciar la cantidad de horas que han pasado muchos ingenieros pensando y creando estas ideas tan revolucionarias para que hoy en día podamos tener este fantástico puente entre la información en **bits** y su traspaso a **átomos tangibles** en el mundo real.

Si les interesa, les dejaré aquí un [**link al canal de Youtube**](https://youtu.be/qub5chyIQ0s) que estuve mirando para ver la cantidad de pasos que conlleva ensamblar una impresora 3D, en este caso estamos en el conmtexto del tipo nº1 mencionado anteriormente, la **Fused Deposition Modeling** (FDM). 

:::info
Para aquellos que quieran saber más a profundidad sobre el mundo de las impresoras 3D y sus variantes [**este link**](https://hackmd.io/LzGXgvCgQrCinLDQjII-gA?view#Digital-fabrication) a la excelente documentación de Víctor Barberán.
:::


--- 
## Manos a la obra!

Claramente no iba a dejar que esto se quedara en una clase puramente teórica!

Sabiamos que necesitaríamos un mando para nuestro proyecto, ya que haría la interacción con el juego mucho más user-friendly e intuitivo. De esta manera también podiamos aprovechar la oportunidad de aprender a preparar y diseñar un producto pensando en llevarlo a producción mediante el uso de las impresoras 3D que tiene la uni.


### Prototipo cartón

A continuación está el prototipo que he realizado con **cartón** reciclado del mando. Originalmente habíamos pensado hacerlo de cierta forma que favoreciera a los diestros, pero después de hacer uso de la pista con este mando nuevo, pensamos que sería mejor hacerlo simétrico para no tener que favorecer a nadie.

No puedo insistir en lo **importante** que fue este paso para el desarrollo del producto, se que parece lo más aburrido dentro del proceso de imprimir en 3D pero es sin duda la parte más fundamental ya que el usuario puede darnos **feedback** de lo que más le gusta.

La **medición** de cada esquina y parte del mando es clave para cuando pasemos a nuestro Software de modelado 3D, en mi caso **3DsMax**, aunque **Blender** es una excelente opción si no tienen  licencia para 3DsMax.

<img style="max-height: 400px" src= "https://hackmd.io/_uploads/B1Q4zEtV2.jpg"></img> 

<img style="max-height: 400px" src= "https://hackmd.io/_uploads/rkR1ZEtN3.jpg"></img> 

Lo hecos hecho bastante ergonómico, basandonos bastante en las "mitades" de mandos de Play Station y de Xbox.

<img style="max-height: 400px" src= "https://hackmd.io/_uploads/SkUHGEK4h.jpg"></img> 

<img style="max-height: 400px" src= "https://hackmd.io/_uploads/rynOfNF4h.jpg"></img> 

## Modelo 3D - 3DsMax

![](https://hackmd.io/_uploads/SJ50MNYVn.png)

Incluso ya teniendo las medidas tomadas de cada parte específica del prototipo realizado con cartón, fueron necesarias varias iteraciones del modelo 3D. Tuvimos también que tomar en cuenta el espacio que ocuparían los cables del joystick, al igual que el motor que hará que vibre el mando, el cual tiene su sitio debajo del mando.

![](https://hackmd.io/_uploads/SkFE74t43.jpg)

Es importante mencionar que todas las medidas actuales del modelo fueron posibles de replicar en 3D gracias a que utilicé referencias instanciadas como cajas "Boxes" en el software, con medidas en milimetros para que fuera de escala 1:1 con la realidad y encajara con nuestros componentes que hemos estado utilizando.

![](https://hackmd.io/_uploads/r16LrVFEh.png)

Esto ya es un detalle más técnico, pero es altamente recomendable que, cual sea el Software que esten usando para modelar, activen el modo de transparencia para poder observar más claramente los espacios interiores del modelo. En 3DsMax es Alt + X para entrar en modo transparente.

![](https://hackmd.io/_uploads/SyiPI4Y4h.png)

Compartimiento para el motor que hará vibrar el mando nuevo.

![](https://hackmd.io/_uploads/rJLfvEF4n.png)


## De bits a átomos :atom_symbol: 

Ya que teniamos el modelo terminado y estabamos satisfechos con los resultados, quedaba ya solo la recta final, hacer el famoso salto del que hemos estado hablando, el salto de bits a átomos! Para esto debemos de guardar nuestro objeto 3D en formato **.stl** 

![](https://hackmd.io/_uploads/Bkkq5omwn.png)


Una vez que tenemos el archivo en este formato que es el más común para imprimir, lo abriremos en el software de impresión que más nos agrade, en nuestro caso usamos un software llamado **Cura** que es el que tenía la uni, pero en verdad solo importa que podamos pasar de este objeto stl. a un fichero **AMF** (Additive Manufacturing File) que es un formato de archivo más avanzado que el STL, diseñado específicamente para la impresión 3D. Con este tipo de formato podemos incluir información más completa sobre la geometría, el color, los materiales y las propiedades del objeto, lo que permite una mayor flexibilidad en la impresión. En nuestro caso los **soportes** eran lo más importante que añadimos en el Software.

![](https://hackmd.io/_uploads/S16m5iXv3.png)


**Calibramos** la altura de la base de la imrpesora, para evitar que se lastime la cabeza de la impresora y la pieza salga torcida. Se acostumbra a poner una **hoja de papel** entre la cabeza y la base para asegurarnos de que está a la altura correcta, la hoja debe de moverse libremente pero no demasiado.

![](https://hackmd.io/_uploads/B1m6_j7Pn.png)

Aplicamos **laca** a la base de la impresora para evitar que se pegue el filamento a la base, es como el musical de **Hairspray**! 

El resultado estuvo **genial**! No tuvimos que rehacer nada ya que era justo lo que teniamos en mente. Debo advertir que quitar los **soportes** es un trabajo largo y no taaaan divertido. En nuestro caso lo hicimos con un desarmador, es verdad que si lo hacen bien con una lija y pinzas no la pasarán tan mal hehe.

![](https://hackmd.io/_uploads/B1dmjomv3.png)





---
# Proyecto Semestral

Para nuestro proyecto semestral desarrollamos un juego de carreras al estilo scalextric llamado **Led Race**, pero utilizando tiras de leds como carriles, la luz de los leds como coches y joysticks como mandos para moverlos.

Pero la cosa no acaba ahí, además tuvimos la peculiaridad de implementar nuevas mecánicas que lo hicieron aún más único como **cambiar de carril, obstáculos y speed points**.

Por último, también se implementaron sonidos mediante buzzers, una cuenta atrás a través de una pantalla de leds y módulos de cartón para montar nuestro propio circuito.

![](https://hackmd.io/_uploads/BJ3VGqmv2.png)

:::success
Para **más información** en este proyecto, les dejaré un **link** a una documentación y videos que lo explicará mejor: 

[**Documentación del Proyecto final** :floppy_disk:](https://hackmd.io/@eZ3_rh8dRKKw8r_MWYwiXg/HJCl3IJZ3)
[**Videos y fotos del Proyecto final** :camera:](https://www.canva.com/design/DAFlim4eVTc/yDuPx4qQPxESel_yRaV5vQ/edit?utm_content=DAFlim4eVTc&utm_campaign=designshare&utm_medium=link2&utm_source=sharebutton)

Este trabajo fue posible por la **cooperación** de: Marta Vilaseca, Raúl Hortelano e Irina Aynés.
:::


---

# Profesores

## Víctor Barberán Soler
> Diseñador Industrial

<img style="max-height: 300px" src= "https://hackmd.io/_uploads/ByE2mmmPh.jpg"></img> 


Víctor Barberán es Diseñador Industrial con más de 20 años de experiencia desarrollando tecnología a la medida para proyectos multidisciplinarios de arte y ciencia. A lo largo de su carrera, Victor Barberán ha trabajado en diseño electrónico, desarrollo de software, análisis de datos, modelado y animación, y postproducción digital. Actualmente, Victor trabaja como parte del Fab Lab Barcelona como desarrollador de software y hardware en múltiples proyectos de investigación, como el proyecto Smart Citizen. También es el líder en electrónica de Fabricademy, Fab Academy y el programa Masters of Design for Emergent Futures.

## Carlos Anselmo del Pino
> Diseñador 

<img style="max-height: 300px" src= "https://hackmd.io/_uploads/ry-TQmQPn.jpg"></img> 

Carlos Anselmo es artista e investigador. Ha desarrollado su tesis en la Unidad de Doctorado de BAU, con una tesis práctica que investiga los efectos del medio digital en la composición musical. Es graduado en Diseño por la Universitat Ramon Llull y tiene un Máster en Investigación en Arte y Diseño por la Universitat Autònoma de Barcelona. Actualmente forma parte del equipo docente investigador de La Salle Barcelona donde imparte clases en las áreas de Artes Digitales e Ingeniería Multimedia.

:::success
[**Clic para volver arriba**](#Indice-de-contenidos) :arrow_double_up: 
:::

:::info
**Gracias** :raised_hands: por este año tan guay, más alla de esta documentación quería agradecer a ambos por la invitación a refleccionar sobre todo lo que nos rodea, a no dejar pasar las oportunidades para forjar un juicio sobre las cosas que influyen en nuestro día a día y con las que nos relacionamos. Por perder el miedo de pensar fuera de la caja y questionarme las cosas por más sencillas que puedan parecer, sin miedo a darme cuanta de que la idea que había formado alrededor de dicha cosa pueda estar mal o incompleta. Gracias por poner el empeño para ramificar fuera de lo estándar que se espera de una clase de universidad e ir un paso más allá. 
:::


