![]() Ministerio de Cultura y Educación Universidad Nacional de San Luis Facultad de Ciencias Físico Matemáticas y Naturales Departamento: Informatica Área: Area II: Sistemas de Computacion |
I - Oferta Académica | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
II - Equipo Docente | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
III - Características del Curso | |||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
IV - Fundamentación |
---|
Los sistemas incrustados o incorporados en otros sistemas (embedded systems) están presentes en la mayoría de los dispositivos con los que interactuamos: electrodomésticos, automóviles, aviones, enrutadores, impresoras, etc.. En la mayoría de estos sistemas la ausencia de fallas y un tiempo de respuesta preciso son requerimientos indispensables para su funcionamiento. Por lo tanto es necesario utilizar, y en algunos casos desarrollar, herramientas adecuadas para la especifición, diseño e implementación del sistema incrustado en otro systema (embedded system). En este curso introduciremos algunas herramientas que ayudan al diseño y desarrollo de los sistemas incrustados (embedded systems).
|
V - Objetivos / Resultados de Aprendizaje |
---|
Introducir métodos para el diseño de sistemas incrustados (embedded systems). Introducir métodos formales para el desarrollo de sistemas incrustados (embedded systems).
Utilizar los métodos anteriores para desarrollar sistemas concretos sobre plataformas concretas y comprobar su funcionamiento. Conocer distintas plataformas utilizadas en el desarrollo de sistemas incrustados (embedded systems). |
VI - Contenidos |
---|
Programa Analitico
Unidad 1: Sensores y Actuadores Sensores: Rango,rango dinámico, cuantización, ruido, muestreo, acondicionamiento de señal, sensores comunes: medición de inclinación y aceleración, medición de posición y velocidad, otros sensores. Actuadores: diodos emisores de luz, control de servos, parlantes, relés. Unidad 2: Procesadores. Introduccion Cortex-M4 de ARM: elementos básicos, registros, mapa de memoria, instrucciones, interrupciones. Introducción a Cortex-M4. Procesadores multicores simétricos y asimétricos. Análisis de documentación de fabricantes. Plataforma de desarrollo. Introducción a un entorno de desarrollo para microcontroladores de 32 bits. Análisis del hardware empleado en el curso. Unidad 3 Interfaces del microcontrolador utilizadas para la adquisición y almacenamiento de datos, y, para control y comunicación con otros microcontroladores y periféricos. Unidad 4: Modelos reactivos y transformacionales. Diferencia entre sistemas transformacionales y reactivos. Introduccion a los StateCharts (Diagramas de estados): estados, eventos, jerarquía de máquinas, superestados, subestados, estados OR, estados AND. Modelado utilizando StateCharts. Introducción de herramientas que generan código C a partir de una especificación que utiliza StateCharts. Unidad 5: Sistemas operativos para sistemas incrustados (embedded systems) Predicción de los tiempos de ejecución. Planificación en sistemas de tiempo real. Clasificación de los algoritmos de planificación. Sistemas Operativos incrustados (embedded operating systems). Unidad 6: Programación de microcontroladores de 32 bits en C. Análisis en bajo nivel de la asignación de memoria. Estructura de programas reactivos sin sistemas operativos de tiempo real. Especificación de drivers. Generación de eventos. Estructura de sistemas incrustados (embedded systems) que usan Sistemas Operativos de Tiempo Real. |
VII - Plan de Trabajos Prácticos |
---|
Todos los prácticos utilizan las placas disponibles en el laborario de sistemas incrustados (embedded systems).
Práctico N°1: Titilar un led. Implementar el diseño en lenguaje C utilizando la plataforma EDU-CIAA. Práctico N°2: Titilar un led definiendo el período. Utilizando la metodologia de statecharts. Implementar el diseño en lenguaje C utilizando la plataforma EDU-CIAA. Práctico N°3: Interactuar con los periféricos a través de las distintas interfaces de la placa para EDU-CIAA. Práctico N°4: Asociar un GPIO a una interrupción del LPC 4337 utilizando la placa para EDU-CIAA. Práctico N°5: Utilizando el DAC (conversor analógico-digital) generar una bitono utilizando E/S programada, E/S utilizando interrupciones y E/S con DMA y buffers. Práctico N°6: Idem al práctico N°5 pero utilizando un TIMER para programar el tiempo de conversión del DAC. El TIMER debe estar conectado a las interrupciones. Práctico N°6: Led con atenuación utilizando PWM (pulse-width modulation) a partir de la intensidad definida por un potenciómetro. Programación de Timers. Práctico N°7: Antirrebotes de llaves (debouncing). Utilizando la plataforma de la EDU-CIAA. Práctico N°8: Implementar un proceso de pesado de precisión. Práctico N°9: implementar un sistema de control de ascensor. Práctico N°10: Comunicaciones en bus serie: SPI e I2C. Utilización de un magnetómetro y un sevo motor angular para implementar una brújula. |
VIII - Regimen de Aprobación |
---|
La asignatura es promocional.
a) El alumno debe asistir al 80% de las clases teóricas y prácticas, aprobar todos los laboratorios con al menos el 70%. b) El alumno promociona si cumple el punto a) y aprueba el parcial o alguna de sus dos recuperaciones con al menos el 70%. c) El alumno regulariza la asignatura si cumple el punto a) y aprueba el parcial o alguna de sus recuperaciones con una nota entre 4 (cuatro) y 6,99 (seis c/99 centésimas). d) En caso de no cumplir con los requisitos del punto b) o c) el alumno no regulariza la materia. |
IX - Bibliografía Básica |
---|
[1] P. Marwedel; Embedded System Design; Springer; 2006
[2] D.E. Simon; An Embedded Software Primer; Addison-Wesley; 1999 [3] Q. Li, C. Yao; Real-Time Concepts for Embedded Systems; CMP Books; 2003 [4] J. Labrosse et. al.; Embedded Software: Know It All; Newnes; 2008 [5] T. Noergaard; Embedded Systems Architecture: A Comprehensive Guide for Engineers and Programmers; Newnes; 2005 [6] J. Yiu. The Definitive Guide to the ARM® Cortex-M3 (Second Edition). Newnes. 2010. [7] E. Lee, S. Seshia. Introduction to Embedded Systems A Cyber-Physical Systems Approach Second Edition. LeeSeshia.org, 2015. [8] M. Samek. Practical UML Statecharts in C/C++ Second Edition. Newnes. 2009. [9] D. HAREL. STATECHARTS: A VISUAL FORMALISM FOR COMPLEX SYSTEMS. Science of Computer Programming 8 (1987) 231-274. North-Holland |
X - Bibliografia Complementaria |
---|
[1] S.C. McConnell; Code Complete: A Practical Handbook of Software Construction; Microsoft Press, 2nd ed., 2004
|
XI - Resumen de Objetivos |
---|
Introducir métodos para el diseño de sistemas incrustados (embedded systems).
Conocer distintas plataformas utilizadas en el desarrollo de sistemas incrustados (embedded systems). |
XII - Resumen del Programa |
---|
Sensores y actuadores. Procesadores. Modelos reactivos. Sistemas operativos para sistemas incrustados (embedded systems). Programación de microcontroladores de 32 bits.
|
XIII - Imprevistos |
---|
Comunicarse con la cátedra. (agrosso@email.unsl.edu.ar)
Sistemas Embebidos. Departamento de Informática. Of. 25. Bloque II. 1er. Piso. Facultad de Cs. Fisico, Matemáticas y Naturales. Universidad Nacional de San Luis. Ejercito de los Andes 950. CP 5700. |
XIV - Otros |
---|
|