Workshops del SASE 2016

En esta página se publica la propuesta de trabajo para cada uno de los workshops realizados en el SASE2016. El material correspondiente a cada workshop puede descargarse acá:
Link de acceso al material de los workshops del SASE2016.

Los horarios y aranceles de todos los workshops del evento, que van de $200 a $600 (pesos argentinos), están disponibles en Programa del SASE2016.

 

Introducción a los Sistemas Embebidos

Programando la CIAA con MicroPython. Ing. Alejandro Permingeat (VSAT Motion / FIUBA)
Durante este workshop haremos una breve introducción a MicroPython, explicaremos cómo grabar el firmware de MicroPython en una EDU-CIAA, daremos una breve introducción al lenguaje Pytnon y programaremos la CIAA mediante ejemplos variados que cubren temas simples de programación básica, y temas más complejos que implican el uso avanzado del hardware que posee la placa.

Programación de aplicaciones sobre la EDU-CIAA en C sin Sistema Operativo. Mg. Bing. Eduardo Filomena (UNER), Bing. Juan Manuel Reta (UNER)
Este workshop ofrece una formación en la implementación de aplicaciones sencillas sobre la plataforma EDU-CIAA empleando lenguaje C. Además, proporciona las herramientas necesarias para desarrollar aplicaciones en distintos escenarios profesionales. Se remarca la importancia del uso de capas de abstracción de hardware tales como la biblioteca de funciones LPCOpen y el desarrollo y manejo de drivers.

Programación gráfica de la Edu CIAA mediante bloques con Snap. Ian Olivieri (UNQ)
El objetivo de este workshop es introducir a personas sin experiencia en programación en general al mundo de los sistemas embebidos. Mediante el uso del software de programación gráfica Snap la interacción con placas potentes como la EDU-CIAA-NXP (la versión educativa de la CIAA-NXP) se hace torna sencilla, didáctica y entretenida. Ya que esta manera de programar es muy parecida a pseudo-código los programas son intuitivos y permiten controlar la placa fácilmente.

Introducción a la programación de la CIAA en lenguaje C mediante una biblioteca bare-metal simple. Ing. Eric Pernía (EXO/UNQ)
En este workshop se explicará cómo programar la EDU-CIAA en lenguaje C mediante el uso de la biblioteca sAPI. Esta biblioteca basa su diseño en definir periféricos abstractos y lo más genéricos posibles, logrando independencia de la arquitectura. Esta independencia es deseada para que actúe como HAL (Hardware Abstraction Layer). Utiliza nombres sencillos al estilo de la biblioteca Wiring, pero en lugar del concepto de pin utiliza el concepto periférico, para lograr una API unificada, sin importar el número de pines que tenga un cierto periférico. De esta forma, se evita toda la complejidad del microcontrolador y las bibliotecas del fabricante enfocándose en los conceptos básicos y el uso. Requisito: Traer notebook con el CIAA FIrmware instalado (preferentemente), o que la misma cuente con 10GB de espacio Libre y 4GB de RAM para correr una máquina virtual.

Diseño de circuitos impresos con el software libre KiCAD. Ing. Diego Brengi (INTI, UNLaM), Ing. Gonzalo Cuenca (UNER)
Presentación del software KiCad, sus partes principales y descripción de las herramientas de diseño de circuitos esquemáticos, diseño de circuitos impresos (ruteo de PCBs) y modelización 3D de la placa.  Con la ayuda de un ejercicio basado en un Poncho para la EDU-CIAA se desarrolla el método de trabajo para diseñar un PCB.

IDE4PLC – Programando la CIAA en LADDER y agregado de bloques de programa personalizados en lenguaje C. Ing. Eric Pernía (EXO/UNQ), Dr. Lic. Carlos Lombardi (UNQ)
Se explicará cómo programar las placas CIAA-NXP y EDU-CIAA-NXP en lenguaje LADDER DIAGRAM utilizando el software IDE4PLC del Proyecto CIAA , conexiones series y paralelo con contactos y bobinas, circuitos con Flip-Flop SR y RS,  circuitos con Bloques Temporizadores, circuitos con Bloques Contadores,  y crear bloques ladder F y FB programados directamente en C para extender IDE4PLC.

 

Programación de Sistemas Embebidos

Desarrollo multimarca en ARM (CMSIS). Ing. Sergio Caprile (CIKA)
Análisis de CMSIS y utilización en los entornos Keil, IAR y CooCox (gratuito) para realizar proyectos sobre microcontroladores ARM Cortex-M3 de diversos  fabricantes. Se requieren conocimientos de programación en C con microcontroladores.

picoCIAA: hands-on.Esp. Ing. Pablo Ridolfi (UTN-FRBA)
En este workshop realizaremos prácticas de programación usando la picoCIAA con ejemplos bare-metal y basados en RTOS. Los ejercicios serán llevados a cabo con la picoCIAA como placa stand-alone (como una EDU-CIAA) y a su vez como real-time plug-in de un sistema embebido de propósito general.

Intel Galileo: web + comunicaciones + dispositivos. Dr. Lic. Fernando G. Tinetti (UNLP, CIC)
Breve introducción que abarcaría la instalación de las placas. Diferentes aspectos hands-on de mini-proyectos. Detalles de comunicaciones web, Ethernet-html-http implementados en Intel Galileo y dispositivos como sensores, módulos de comunicaciones (Bluetooth) y motores DC (3-6v) para robots de pequeñas dimensiones y bajo consumo. Todo en IDE Arduino-Windows (+detalles menores de/en Galileo Linux).

Programando al CIAA en lenguaje Java. Ing. Eric Pernía (EXO/UNQ), Ing. Leonardo Gassman (UNQ)
Se explicará cómo instalar un Eclipse con sus plugins correspondientes para programar la CIAA y EDU-CIAA NXP en lenguaje Java utilizando la máquina virtual HVM y se darán múltiples ejemplos de aplicación.

UML statecharts con el Framework RKH y la plataforma CIAA. Ing. Dario Baliña (Vortex)
Se aplicarán los conceptos de la programación dirigida por eventos, basada en máquinas de estados jerárquicas Statecharts UML y el modelo de ejecución de objeto activo, sobre una serie de ejercicios prácticos, implementados sobre la placa EDU-CIAA. Asimismo, se detallarán los servicios que proporciona el framework, su configuración y funcionamiento en conjunto con FreeOSEK.

Modelado y simulación de sistemas embebidos utilizando uModel Factory.
Ing. N. Gonzalez, L. Sugezky (UTN-FRBA)
El uso de modelos para describir el software en sistemas embebidos es cada vez más frecuente. uModel Factory es un software nacido en el seno de la UTN-FRBA de distribución libre que permite la creación y simulación de modelos, como así también su representación en lenguaje C posibilitando su uso en el ámbito académico y profesional.

 

Internet of Things

IOT La próxima frontera. Ing. Darío Oliver (Intel), Ing. Néstor Navarro Regis (Intel)
IOT (Internet de las cosas) es un tópico de gran difusión y discusión dentro del mundo de la tecnología gracias a la proliferación de distintos dispositivos electrónicos. En el workshop se presentará la visión de Intel sobre IOT y cómo con ello va a cambiar el futuro. Mediante ejemplos prácticos se demostrará, cómo las soluciones planteadas con IOT tienen mayor relevancia e impacto en la sociedad. Con el propósito de modelar el mundo que nos rodea para poder crear sistemas de sistemas inteligentes. Resaltando aspectos técnicos a tener en cuenta y flujo de desarrollo de un aplicación embebida en una placa Intel Galileo usado Intel XDK.

 

RTOS, Sistemas operativos de Tiempo Real

Sistemas Embebido y de Tiempo Real Heterogéneo. Dr. Ing. José Urriza (UNPSJB)
Introducción a los Sistemas de Tiempo Real (STR). Disciplinas de prioridades. Inversión de prioridad (herencia de prioridad, protocolo techo). Evaluación de planificabilidad mediante métodos RTA. Planificación con prioridades limitadas. Plataformas Arduino Due y mbed LPC 1768, EDU-CIAA. FreeRTOS. Ambiente de desarrollo (LPCXpresso, Atmel Studio y Cygwin). Implementación de un STR con FreeRTOS. Introducción a los STR Heterogéneos (mixed critical). Métodos de administración de tiempo ocioso en un STR. Servidores (Background, Polling y Deferrable). Planificación mediante Dual Priority. Métodos de Slack Stealing. Planificación de tareas mediante una Tarea Planificadora Heterogénea (TPH). Planificación de Tareas Heterogéneas utilizando la TPH y métodos de Slack Stealing.

Programación de EDU-CIAA mediante SO cooperativo. Ing. Facundo Larosa (UTN-FRH), Iván Castelucci Vidal (UTN-FRH)
Se explicará mediante ejemplos y ejercicios de dificultad creciente cómo programar la EDU-CIAA-NXP utilizando sistemas operativos cooperativos. Adicionalmente, se introducirá el uso de patrones de programación específicos para proveer escalabilidad y abstracción en el manejo de hardware.

Programando la CIAA con OSEK. Ing. Esteban Volentini (UNT)
El objetivo del workshop es hacer un breve repaso sobre las características de un OSEK como Sistema Operativo de Tiempo Real y una instrucción a la estructura del Firmware de la CIAA, desarrollando ejemplos sencillos para familiarizarse con el desarrollo de aplicaciones que utilicen el conjunto de OSEK y POSIX del CIAA Firmware.

 

FPGAs, ASICs y HDLs

Punto de Partida para Diseños FPGA-VHDL. MSc. Ing. Cristian Sisterna (UNSJ)
Aprender a describir un sistema digital en VHDL, e implementarlo en un FPGA. Se usarán kits de desarrollo para realizar distintos laboratorios luego de aprender la sintaxis básica de síntesis en VHDL. Contenido: FPGA: Descripción. Clasificación. Arquitectura. Bases del VHDL. Formato. Librerías estandarizadas. Tipos de datos. Declaraciones concurrentes. Declaraciones secuenciales. Funciones de conversión. Librerías opensource, librerías pagas, librerías definidas por el usuario. Uso de librerías mediante componentes. Sistemas de desarrollo. Para la parte práctica del curso se usarán las plataformas de Altera FPGA Board EP2C8Q208 y EP4CE6E22C8.

Diseño avanzado FPGA-VHDL.  Inga. María de los Ángeles Gómez López (UNT), Ing. Carlos Sueldo (UNT)
Revisión general del lenguaje VHDL. Sistemas de desarrollo. Atributos. Testbench. Procesos secuenciales y combinacionales. Procesos sincrónicos y asincrónicos. Máquinas de estado finito. Diferentes estilos de implementación de MEFe VHDL. Paquetes. Procedimientos. Funciones. Restricciones de tiempo. Para la parte práctica del curso se usarán las plataformas de Altera FPGA Board EP2C8Q208 y EP4CE6E22C8.