 Hola, ¿qué tal a todos? Bienvenidos. Mi nombre es Víctor Villarreal, yo soy técnico en electrónica y telecomunicaciones. Soy también colaborador en este proyecto que les vengo a mostrar, que nosotros llamamos Pinguino Project. Antes de continuar, me gustaría darle a agradecerles, agradecer a la Organización de Open Source Ambiental de América por darme este espacio. Así que bueno, comenzamos. En esta charla va a durar aproximadamente 30 minutos, en los cuales les voy a mostrar de qué se trata este proyecto, les voy a comentar cómo nació, su historia. Después vamos a repasar cuáles son los componentes básicos que conforman este proyecto, sus aplicaciones prácticas que se puede hacer con Pinguino. Y por último les voy a mostrar algunas formas que tienen de participar y de sumarse a este proyecto los que quieran, los que les interese. Pinguino Project tiene las puertas abiertas para sumar gente. Siempre van a ser bienvenidos. Bueno, de qué se trata Pinguino Project? Pinguino Project es una plataforma de desarrollo y rápido prototipado electrónico, completamente open source, multiplataforma y con un fuerte énfasis en lo educativo. Lo que nosotros llamamos Pinguino Project en realidad es un conjunto de subproyectos. Es decir, un hardware, en este caso es una placa electrónica que tiene entradas, salidas y un microcontralador que sigue instrucciones, que se puede programar. Necesita también un firmware, que es un programa especial que va grabado en el microcontralador de esta placa. Y también se necesita un entorno de desarrollo que nosotros llamamos IDE, Pinguino IDE, que es una aplicación que te permite programar, escribir el código y subirlo a la placa. Y también se necesita un conjunto de herramientas, un conjunto de librerías para facilitar la etapa de la programación. Entonces estos cuatro elementos son los que conforman, los que vienen a conformar finalmente lo que nosotros llamamos como Pinguino Project. Este proyecto comenzó en 2008 con un ingeniero informático francés, de nombre Jean Pierre. Bueno, él fue el que ideó todo esto, desarrolló los primeros prototipos de las placas, desarrolló el código necesario, una versión, las primeras versiones del IDE. Para los que quieran profundizar más en este tema, pueden utilizar este enlace que está en la placa de MediaLab, que todavía está online. Es un vídeo del 2009 en el cual el fundador de este proyecto presenta, como lo estoy haciendo yo, a Pinguino y bueno, él explica cuáles son sus objetivos y sus ideas. Así que bueno, después de un tiempo se suma el proyecto Regis Blanchot, también es una persona muy importante en este proyecto. Básicamente todo lo que estamos utilizando actualmente en gran parte fue gracias a él. Después se sumó mucha gente más, la verdad que se hace muy difícil ponerlos a todos y no dejar a nadie afuera, pero bueno, sepa no disculpar. Jason Cardona, por ejemplo, prácticamente reescribió el entorno de desarrollo y hizo una versión nueva y bueno, es básicamente la versión que estamos usando ahora de Pinguino y IDE, la desarrolló él. Y bueno, Pinguino Project es una comunidad global, es decir, somos todos gente que nos gusta la idea y participamos, colaboramos con ideas nuevas, compartimos proyectos y bueno, hay gente de todos los lugares del mundo. En Venezuela, por ejemplo, tuvo una movida muy grande, Pinguino B, también fue fabuloso el empuje que le hizo el proyecto. En Colombia también, bueno, Argentina, en Perú, Brasil, en España, en Israel, bueno, y otros lugares más que la verdad que desconozco, simplemente porque por ahí no comparten lo que hicieron o no me llevo a enterar, así que bueno, pero bueno, hay gente de todo el mundo colaborando con este proyecto. Entonces habíamos dicho que Pinguino Project se conformaba por cuatro elementos, el hardware, que en este caso es la placa, es lo que nosotros llamamos Pinguino Boards. Esto que ven en pantalla es el diagrama mínimo de lo que sería una placa a Pinguino, en el centro un micro controlador, un PIG 18F2550, que bueno, ese es el que uno programa para que haga lo que uno quiere. Y como verán, no hace falta saber mucho de electrónica, pero tiene muy pocos componentes externos, se ven una, dos, tres resistencias, un par de capacitores, el cristal que es el reloj de 20MHz y un conector USB para conectarlo a la computadora. Y nada más, esto es uno de los diferenciadores que tenemos con otros proyectos similares, por ejemplo, Arduino, que es el más conocido, porque la placa nuestra, me parece más sencilla, tiene menos componentes por lo cual el costo también es muy bajo. Son componentes sumamente estándar, que son fáciles de conseguir, especialmente en lugares como Latinoamérica, especialmente como Argentina por ejemplo, con temas de importación y todo eso. Y además, al ser sencilla la placa se puede armar, no se falta mandarla a fabricar, es una placa que se puede armar tranquilamente en nuestras casas, como la gente que es hobby, que le gusta electrónica, la puede armar tranquilamente. De hecho se arma en las escuelas técnicas de electrónica, se puede utilizar para enseñar a los chicos distintas habilidades, como diseñar la placa, fabricarla ellos mismos, soldar los componentes. Así que bueno, este es el diseño básico. A partir de este proyecto, a partir de este diseño, tenemos diferentes placas, algunas son comerciales, es decir, que se venden ya fabricadas, hay empresas que las fabrican. Por ejemplo, Olimex, que es de Oriunda de Bulgaria, pero entrega sus productos en todo el mundo, via internet. Anciope Electronics también es de la India y vende una placa a Pinguino, que las fabricaron ellos. MicroSide también está en México y hace poco me enteré que tienen una placa entrenadora, que es esa blanquita que se ve a la derecha. Bueno, siempre siento compatible con Pinguino, digamos. Así que bueno, esto es porque, como decía en la placa anterior, Pinguino Project es completamente open source y open hardware. Es decir, que el diagrama y todo lo relacionado con el armado de la placa son completamente libres, están en internet. Cualquiera lo puede fabricar o vender, comercializar y no tiene ningún impedimento de licencia ni nada por el estilo. Además de las placas que se venden comercialmente, tenemos placas, por ejemplo, hechas por la comunidad, es decir, por personas particulares. Se pueden ver ahí en pantalla placas con mayor grado de complejidad que otras. Por ejemplo, la de abajo a la izquierda no es una placa, directamente es un protoguard, es decir, una placa de prototipado electrónico, donde es cual les se le puso ahí el microcontralador, se tira un par de cables con componentes y también es un Pinguino. Y bueno, y funciona. Es decir, Pinguino Project se arma como uno quiere, con diferentes tipos de complejidad, dependiendo de la habilidad de la persona y los conocimientos de electrónica. Pero bueno, la idea de todo esto es poder armar un ecosistema en el cual la gente que quiera, que necesite por ahí hacer un proyecto de electrónica y no tenga tiempo o no sepa cómo armar o no quiera ponerse a armar la placa, tenga la posibilidad de comprar una placa armada, como las placas comerciales que vimos anteriormente. Y si no, también el usuario tiene la libertad de armárselo el mismo, como las placas de comunidad que estamos viendo. Por ejemplo, la placa de color amarillo que se ve abajo de la derecha, que se llama Pinguino 1, es de una persona que publicó el diseño de la placa en PCBWay, que es una empresa que se puede pedir para fabricar placas electrónicas por internet, las manda por correo. Y bueno, como verán el diseño es muy similar a lo que es arduino, eso es porque esta persona decidió usar ese diseño para ser compatible con las demás SHIELD o con las demás placas que se compran, que se activen en el mercado que son para arduino, también encastran en este diseño de Pinguino 1. Porque bueno, está además de decir que al ser un microcontrolador, todos los componentes electrónicos, los sensores, los actuadores que se ven que se consiguen para arduino son también compatibles con Pinguino. Así que bueno, esto es una comparación de las características de un microcontrolador AMEGA328P, que es el microcontrolador que tiene el arduino, y un PIG18F2550 que es el microcontrolador más pequeño que podemos encontrar en la familia de las placas de Pinguino. Ambos microcontroladores son de 8 bits, también existen placas pingüinos de 32 bits, se pueden programar con los dos tipos de arquitectura de 8 y de 32. Bueno, en este caso los dos microcontroladores tienen 28 pines, 28 patas. La frecuencia máxima de clock en lo que sería arduino es de 20 MHz, y en Pinguino el máximo es de 48. La cantidad de instrucciones por segundo para el AMEGA segundo de la documentación oficial es de un millón de instrucciones por segundo, y en el 2550 de Pinguino es de 12 millones de instrucciones por segundo. Con respecto a las memorias, bueno, ven ahí en la tabla, son bastante similares, excepto por la EPROM. En total, Pinguino tiene 14 puertos digitales de entrada-salida, y adicionalmente 5 que son analógicos de entrada. También cuenta con periféricos similares a los de arduino, es decir, tiene una Warp, un puerto serie, digamos. Tiene dos puertos PWM para manejar motores o dispositivos que soportan ese protocolo. Tiene 10 canales, conversores analógicos digitales de 10 bits, y soporta el protocolo I12 y SPI. También se le puede poner a la placa un puerto ISSP, que es propio de microchip, Incircuit Programming, que es una serie de pines que puedes conectar a un grabador de PIX, que puedes cargar programas sin tener que desarmar la placa y sin tener que sacar el microcontrador de la placa. Una de las diferencias que tiene, principalmente con lo que sería Arduino, es que este modelo de microchip, el 2550, que es el de Pinguino, viene también con un puerto USB, versión 2.0, que soporta nominalmente 12 megabits por segundo de transferencia, pero que es independiente. Es decir, que en tu programa puedes utilizar indistintamente, o al mismo tiempo, el USB para comunicación como un dispositivo, y también puedes utilizar el puerto serie, en forma independiente. ¿Por qué digo que es diferente? Porque en Arduino, los microcontradores de Arduino, los que vienen en las placas de Arduino no vienen con soporte directamente con USB, lo que tiene la placa es el microcontroller soporta protocolo serie, y adicionalmente te vienen con un segundo chip que hace de conversión de USB a serie. Entonces, es de esa manera tener soporte USB, pero no puedes usar las dos cosas al mismo tiempo, o usar su USB o usar puerto serie. En cambio, Pinguino están diferenciados, independientes. Y bueno, el voltaje también está bueno, el clásico 5V, pero el voltaje mínimo es de 2, así que también eso me parece interesante para aplicaciones que requieran bajo voltaje. El segundo componente de Pinguino, ya vimos las placas, el segundo componente es el Pinguino IDE, que es el que llamamos nosotros, que es nuestro entorno de desarrollo. Este es un programita desarrollado en Python, es de escritorio, es decir, no es una web app, no es una página web, sino que es una aplicación de escritorio, multiplataforma, por eso decíamos al principio que es multiplataforma, corre en Windows, se ejecuta en Linux, en Mac también, y bueno, este entorno, la función principal que tiene es que te permite escribir el código y subirlo a la placa, es decir, la placa Pinguino se conecta a la computadora por USB, y a través de este entorno de desarrollo le cargarás tu programa a la placa y usas la placa con el programa para hacer distintas cosas. Este es un ejemplo de un programa típico de Pinguino, para los que ya saben programar en Arduino por lo que verán es la sintaxis es prácticamente idéntica, es decir, tenemos dos funciones, la de setup y la de loop, y tenemos funciones como de pin mode, delay, son todas funciones que te permiten, por ejemplo, prender y apagar las salidas digitales de la placa o leer datos de un sensor, controlar relés para prender y apagar aparatos más grandes como luces, televisores o máquinas, conectarles display, LCDs, hasta le puedes conectar una pantalla touch, puedes hacer infinidad de cosas. Prácticamente todo lo que se puede hacer con Arduino se puede hacer con Pinguino Project. Así que bueno, esta sintaxis está hecha a 100% para facilitar la curva de aprendizaje, es decir, aquellas personas que ya sepan programar en Arduino van a saber programar en Pinguino, no van a tener problema, y también sirve como placa introductoria, es decir, para la gente que todavía no aprendió a programar en Arduino, se puede comenzar a enseñar a programar en Pinguino, se aprende este lenguaje de programación y que se llama Weeding, que está basado en Processing, y después esta gente que aprende programar en Pinguino, después cuando tiene que pasar Arduino, no le cuesta esfuerzo porque ya el lenguaje es prácticamente el mismo. Les voy a mostrar algunas aplicaciones prácticas para que vean de qué es capaz de hacer las placas, elegí dos videos al azar que están en YouTube, pero ustedes pueden, los invito a que puedan buscar más, conocer más de estas placas. El primer video es una placa que se ve que no está fabricada, digamos, está armada en una persona alarmó, en el cual le conectó una pantalla LCD y muestra caracteres. Bueno, esa placa está comandada por un microcontrolador de Pinguino, se le pueden conectar a distintos tipos de sensores, prácticamente todos los sensores que son compatibles con Arduino, también son compatibles con Pinguino. En el segundo video vemos un robot, un perfecto, un perfecto, que es una carrera, porque el cuerpo del robot está con un tarro de CD, con un cubito de CD. Las ruedas también son CD, son lujos compactos, y la placa controladora, la placa de manesa, es el robot que también es en Pinguino. Creo que lo manejan con un factor remoto de TV, y lo manejan con un control remoto. También en esta placa, este robot que vamos a ver, es de la Escuela Técnica Nº748 de Trelleu, Argentina. Este proyecto Pinguino se usa en varias escuelas técnicas del país, aquí en Argentina. Hay una Escuela Técnica en Venado Tuerto, que están haciendo pruebas con Pinguino. Hay algunas escuelas técnicas del Conurbano a Buenarense también, y también se usó en universidades para hacer proyectos, trabajos prácticos en carreras de ingeniería, tanto en Venezuela como en Colombia. Así que bueno, este robot que vamos a ver acá, eso es una aula, los chicos están sentados ahí, y están probando, están haciendo una demo, y se fabricaron haciendo la forma Pinguino. Así que bueno. Ahora les quiero comentar de buenas formas que hay de participar en este proyecto. Por ejemplo, con respecto a las placas de Pinguino, se pueden diseñar y compartir. Es decir, nuestra idea es formar un ecosistema en el cual las personas que quieran, o que necesiten hacer un prototipo en electrónica, o que necesitan aprender quizás otra cosa que no tienen que ver específicamente con electrónica. Por ejemplo, un proyecto de arte, que tenga luces o algo de cosa. Que bueno, que puedan usar la placa de Pinguino, y no necesariamente tienen que aprender toda una serie de conocimientos de electrónica, o que tienen que poner a armar una placa. La idea es como utilizar esas placas comerciales y hay otras más dando vueltas por internet. Estos son solo algunos ejemplos. Entonces la idea es que la gente pueda comprar la placa armada y utilizarla en su proyecto sin tener que ponerse a armar la placa. Así que bueno, de eso se trata el segundo punto que hace referencia a fabricar y vender. Diseñar y compartir también, porque vos puedes diseñar tu propia placa con el diagrama base y la puedes compartir en internet para que otra persona se la baje y lo fabrique y se haga una placa para su casa o lo que sea. Y bueno, también los invito a que puedan enseñar y construir juntos con los chicos. Este proyecto está pensado principalmente para aspectos educativos. Así que invito a todos los docentes que quizás vean este vídeo. Profes de electrónica o de tecnologías que se animen cuando tengan que enseñar microcontrolladores en las secuelas técnicas. Normalmente se enseña con microchip. Así que bueno, por ahí Pinguino es una forma de entrar de forma fácil a este tema, abordar este tema fácil, de una forma fácil. Así que bueno. Otra forma de participar en este proyecto es con Pinguino IDE, participar en el proyecto del entorno de desarrollo de Pinguino. Por ejemplo, no hace falta tener conocimiento de programación. Se puede simplemente participar agregando traducciones. La idea es que el software que se utiliza esté en la mayor cantidad de lenguajes posibles, que la gente que lo utiliza pueda usarlo en su lenguaje nativo. Es decir, si este proyecto se utiliza mucho en Latinoamérica que se pueda usar en español en vez de en inglés. Bueno, bueno, Brasil también necesita traducción. Lo usa gente de la India. Se necesita traducirlo a diferentes idiomas. También se puede corregir problemas o agregar nuevas características. El código de IDE está 100% en GitHub, en una plataforma que es colaborativa. Se puede subir mejoras. Está desarrollado en Python. Y también otra forma de colaborar simplemente quizás enseñándole a otros cómo usar el entorno de desarrollo, hacer un vídeo como este, en el que se pueda mostrar cómo se usa o hacer algún tutorial mostrando cómo se usa tal o cual característica del entorno de desarrollo y subirlo a YouTube, a cualquier otra plataforma de vídeo, a las redes sociales. También se puede colaborar en la página web. También se necesita traducir. Lo ideal sería que esta página web de Pinguino esté en diferentes idiomas. En esta página la idea es centralizar todo lo que es la documentación tanto del hardware como del software. Así que también se pueden colaborar ahí. Hubo mucha gente que colaboró agregando la referencia al lenguaje. Se puede poner ahí cómo se usa tal o cual función. Bueno, en fin, hay muchas formas de colaborar. También se puede simplemente ayudar a otros para los que más o menos sepan usar GitHub o estén familiarizados en proyectos colaborativos de código fuente abierto. En GitHub la gente puede subir Isus, puede subir tickets, como tienen alguna sugerencia o tuvieron algún problema instalándola en su máquina y entonces cualquier persona en la comunidad le puede responder y le puede ayudar. Así que bueno, esta fue la charla. Espero que les haya gustado, que les haya interesado. Los invito nuevamente a que se suben a este proyecto y espero que hayan conocido, si no lo conocían, a Pinguino. Bueno, que tuvieron la oportunidad de conocerlo. Y quizás en 30 minutos es muy difícil mostrar todo el potencial del proyecto pero la idea es que les haya servido de introducción así que los invito nuevamente a que visiten nuestra página web para que sigan investigando y bueno, yo me voy a quedar disponible en el chat de la plataforma de esta conferencia para que aquellas personas que tengan alguna duda o alguna consulta me puedan escribir, siéntas en libertad de escribirme y voy a estar respondiendo todas sus consultas y después que termine la conferencia también vamos a estar disponibles en la página de GitHub del proyecto. Ahí también pueden subir sus consultas y las vamos a estar resolviendo. Así que bueno, espero que tengan una buena jornada y que puedan seguir participando de las más charlas. Les mando un abrazo a todos y bueno, estamos en contacto. Gracias.