Está en la página 1de 5

TECNOLÓGICO NACIONAL DE MÉXICO

1. Datos Generales de la asignatura


Nombre de la asignatura: Sistemas en Tiempo Real

Clave de la asignatura: CSF-1302

3–2–5
SATCA1:

Carrera: Ingeniería Mecatrónica

2. Presentación
Caracterización de la asignatura
En el área de ingeniería mecatrónica, particularmente en la especialidad de control de
sistemas automotrices, la asignatura sistemas en tiempo real es de suma relevancia. Se
encuentra vinculada al área de conocimiento de Ingeniería de Sistemas y
Automatización, siendo sus principales objetivos las metodologías de desarrollo de
sistemas en tiempo real, análisis, especificación, diseño, implantación y verificación de
sistemas en tiempo real así como los lenguajes y herramientas de programación de
sistemas en tiempo real.

Esta asignatura introduce a los alumnos de la especialidad de control de sistemas


automotrices en las tecnologías de diseño de sistemas con especificaciones temporales
y de fiabilidad estrictas.

Los sistemas informáticos de tiempo real se utilizan en numerosos campos de aplicación,


como el control de aviones, automóviles y trenes, tráfico, comunicaciones, satélites,
control de procesos, electrónica, etc. La característica más importante de estos sistemas
es que sus acciones se deben ejecutar en intervalos de tiempo determinados por la
dinámica de los sistemas físicos que supervisan o controlan. Además, suelen tener
requisitos estrictos de fiabilidad y seguridad. Muchos de estos sistemas están
incorporados en otros sistemas, lo que conlleva una limitación de recursos (potencia de
procesador, memoria, etc.). Estas características, en conjunto, hacen que la construcción
de sistemas de tiempo real presente características enfocadas al control de sistemas
automotrices y a varias ramas de la ingeniería en mecatrónica en general.

Esta materia es la sucesora de sistemas en tiempo real, en la que se aterrizarán en


proyectos prácticos lo que verán en las áreas de programación en tiempo real,
electrónica, Interfaces y control.
Intención didáctica
El contenido está dividido en tres unidades:
La primera de ellas es completamente introductoria, en donde se ven antecedentes,
lenguajes de programación de alto nivel, y se proporciona una introducción a los
lenguajes de programación en tiempo real.

1 Sistema de Asignación y Transferencia de Créditos Académicos

Página | 1
TECNOLÓGICO NACIONAL DE MÉXICO

La unidad 2 se describen aspectos importantes de los sistemas en tiempo real como la


programación concurrente, la sincronización y comunicación sensor-sistema, la gestión
de procesos en tiempo real y la planificación de tareas en tiempo real.
En la unidad 3 se diseñan propiamente los sistemas en tiempo real, se estudian los
diferentes tipos de hardware para el procesamiento de señales en tiempo real, se
describen los mecanismos de entrada y salida de datos y se proponen aplicaciones a
dichos sistema con la finalidad de implementar un proyecto que genere como objetivo
principal el diseño e implementación de un sistema en tiempo real.

3. Participantes en el diseño y seguimiento curricular del programa

Lugar y fecha de Participantes Observaciones


elaboración o revisión

4. Competencia(s) a desarrollar
Competencia(s) específica(s) de la asignatura
Comprende los problemas específicos de los sistemas de tiempo real, y las características
que los diferencian de otros sistemas informáticos.

Conoce los métodos más importantes que se utilizan para desarrollar sistemas de tiempo
real con un grado de fiabilidad elevado, especialmente los que se refieren a la medida del
tiempo, la planificación del uso de recursos, la prevención y tolerancia de fallos y la
organización del software, comprendiendo sus principios y formas de aplicación.
Conoce algunas herramientas (lenguajes de programación fundamentalmente)
adecuados para la realización de sistemas de tiempo real.

5. Competencias previas
 Conoce conceptos básicos de programación.
 Conoce conceptos básicos de sistemas de control.

6. Temario
No. Temas Subtemas
1 Lenguajes de programación 1.1 Introducción a los sistemas en tiempo
real
1.2 Introducción al lenguaje de
programación en tiempo real
1.3 Descripción del lenguaje de
programación en tiempo real
2 Programación en tiempo real 2.1 Programación concurrente
2.2 Sincronización y comunicación

Página | 2
TECNOLÓGICO NACIONAL DE MÉXICO

2.3 Gestión del tiempo real


2.5 Esquemas de programas en tiempo
real.
2.6 Planificación de tareas
3 Sistemas en tiempo real 3.1 Diseño de sistemas en tiempo real.
3.2 Mecanismos de entrada y salida del
hardware.
3.3 Aplicaciones.

7. Actividades de aprendizaje de los temas


Lenguajes de Programación
Competencias Actividades de aprendizaje
Específica(s):
Identifica los conceptos básicos de la • Investiga los antecedentes de la
computación actual, su impacto en la computación actual, sus orígenes hasta
sociedad y los diferentes tipos y lenguajes llegar a las computadoras y software
de programación. actuales. Expondrá sus resultados en
Genéricas: forma grupal.
 Capacidad de análisis y síntesis
 Conocimientos básicos de la carrera • Analiza el impacto de las computadoras
 Comunicación oral y escrita en su propia en la sociedad mediante lecturas
lengua propuestas por el maestro.
 Habilidades de gestión de
información(habilidad para buscar y • Investiga los conceptos básicos de
analizar información proveniente de programación como lo son: Lenguaje de
fuentes diversas alto y bajo nivel, programación en tiempo
 Capacidad de aprender real y sistemas operativos.
 Habilidad para trabajar en forma
autónoma • Diseña algoritmos para sistemas
autómatas de control
Programación en tiempo real
Competencias Actividades de aprendizaje
Específica(s): • Identifica los conceptos básicos de
Desarrollar algoritmos de sistemas en diseño de la programación en tiempo real
tiempo real tales como procesos concurrentes,
Genéricas: programa concurrente, paralelismo
 Capacidad de análisis y síntesis virtual y paralelismo real.
 Capacidad de organizar y planificar
 Comunicación oral y escrita en su propia • Identifica tareas concurrentes, tipos y
lengua tareas dinámicas
 Habilidades básicas de manejo de la
computadora • Logra establecer comunicación y
 Habilidades de gestión de sincronización entre tareas
información(habilidad para buscar y
analizar información proveniente de • Investiga a cerca de la robótica y a los
fuentes diversas sistemas de tiempo real.
 Solución de problemas
 Trabajo en equipo

Página | 3
TECNOLÓGICO NACIONAL DE MÉXICO

 Habilidades de investigación • Proporciona ejemplos de sistemas de


 Capacidad de aprender tiempo real en los campos de aplicación

• Sintetiza una Interfaz hombre-máquina


en sistemas en tiempo real.
Sistemas en tiempo real
Competencias Actividades de aprendizaje
Específica(s): • Diseña sistemas en tiempo real
Diseñar e implementar sistemas en tiempo
real con aplicaciones prácticas en control e • Implementa sistemas en tiempo real.
instrumentación.
Genéricas:
 Capacidad de análisis y síntesis
 Comunicación oral y escrita en su propia
lengua
 Habilidades de gestión de
información(habilidad para buscar y
analizar información proveniente de
fuentes diversas
 Trabajo en equipo
 Compromiso ético
 Habilidades de investigación
 Capacidad de aprender

8. Práctica(s)
1. Compila y ejecutar un código de ejemplo en un lenguaje de programación en tiempo
real como ADA, Real-Time Java o C/Real-Time
2. Diseña un programa basado en Planificación Cíclica
3. Resuelve problemas usando Planificación basada en Prioridades Fijas.
4. Diseña programas de Planificación Multitarea
5. Diseña programas usando comunicación y sincronización de datos compartidos.

9. Proyecto de asignatura
El objetivo del proyecto que planteé el docente que imparta esta asignatura, es demostrar
el desarrollo y alcance de la(s) competencia(s) de la asignatura, considerando las
siguientes fases:
 Fundamentación: marco referencial (teórico, conceptual, contextual, legal) en el cual
se fundamenta el proyecto de acuerdo con un diagnóstico realizado, mismo que
permite a los estudiantes lograr la comprensión de la realidad o situación objeto de
estudio para definir un proceso de intervención o hacer el diseño de un modelo.

 Planeación: con base en el diagnóstico en esta fase se realiza el diseño del proyecto
por parte de los estudiantes con asesoría del docente; implica planificar un proceso:
de intervención empresarial, social o comunitario, el diseño de un modelo, entre otros,
según el tipo de proyecto, las actividades a realizar los recursos requeridos y el
cronograma de trabajo.

Página | 4
TECNOLÓGICO NACIONAL DE MÉXICO

 Ejecución: consiste en el desarrollo de la planeación del proyecto realizada por parte


de los estudiantes con asesoría del docente, es decir en la intervención (social,
empresarial), o construcción del modelo propuesto según el tipo de proyecto, es la
fase de mayor duración que implica el desempeño de las competencias genéricas y
especificas a desarrollar.

 Evaluación: es la fase final que aplica un juicio de valor en el contexto laboral-


profesión, social e investigativo, ésta se debe realizar a través del reconocimiento de
logros y aspectos a mejorar se estará promoviendo el concepto de “evaluación para
la mejora continua”, la metacognición, el desarrollo del pensamiento crítico y reflexivo
en los estudiantes.

10. Evaluación por competencias


 Tareas y Ejercicios
 Participación/Exposiciones en clase
 Prácticas en clase
 Prácticas extra-clase y de laboratorio
 Exámenes escritos y frente a la computadora
 Proyecto Final.

11. Fuentes de información


1. Alan Burns, Real-Time Systems and Programming Languages, Ed. Addison
Wesley, 4th edition May 7, 2009.
2. John W. McCormick, Frank Singhoff, Jérome Hugues, Building Parallel,
Embedded, and Real-Time Applications with Ada, Ed. Cambridge University
Press, May 16, 2011
3. Alan Burns, Andy Wellings, Concurrent and Real-Time Programming in Ada,
Cambridge University Press, 3rd edition, July 16, 2007.
4. Qing Li, Caroline Yao, Real-Time Concepts for Embedded Systems, Ed. CMP,
July 2003.
5. Norman Cohen, Ada as A Second Language, Ed. McGraw-Hill, Second edition
December 1, 1995.
6. Eric J. Bruno, Greg Bollella, Real-Time Java Programming: With Java RTS, Ed.
Prentice Hall, June 11, 2009.

Página | 5