Curso

SISTEMAS EMBEBIDOS AVANZADOS. DUAL CORE TMS320F28379D_OL_18_19

  • Desde: 15/10/18
  • Hasta: 20/8/19
  • Campus de Valencia
  • Idioma: Castellano
  • Online

Preinscripción desde el 29/7/18

Matrícula disponible hasta el 21/7/19

Una vez aceptada tu matrícula dispones de 30 días para finalizar el curso

Promovido por:
Instituto Interuniversitario de Investigación de Reconocimiento Molecular y Desarrollo Tecnológico

Responsable de la actividad:
Francisco José Gimeno Sales



Modalidad

Presencial Online Emisión en directo

0 horas


45 horas


0 horas

Lugar de impartición
ONLINE
Certificación

Aprovechamiento

Modalidad

ONLINE

Curso

2018-2019

ECTS

4,5

Campus

Valencia

0 h

Presenciales

45 h

Online

Precio Colectivo
175 € Alumni UPV PLUS o AAA UPV 
175 € Alumno UPV 
175 € Personal UPV 
350 € Público en general 
175,00 € - Alumni PLUS UPV
175,00 € - Alumno UPV
175,00 € - Personal UPV
350,00 € - Público en general

Objetivos

El objetivo principal del curso "SISTEMAS EMBEBIDOS AVANZADOS. DUAL CORE TMS320F28379D", Aprender a Diseñar, implantar y gestionar soluciones del hardware y de software aplicados a los sistemas de control en los sistemas electrónicos (convertidores electrónicos) relacionados con las Energías Renovables, Eficiencia Energética y comunicaciones industriales. Todo esto lo implementaremos mediante los sistemas embebidos avanzados (altas prestaciones), de esta forma dotamos a nuestra aplicación industrial de un sistema de control de prestaciones muy elevadas. Para ello lo abordaremos desde los controladores digitales de señal (DSC) de Texas Instruments (familia C2000), en concreto los DSC de doble núcleo F28x7x (28379D). Para la implementación del software se realiza en el lenguaje "C" aplicado a los procesadores digitales de la Familia C2000 de Texas, desde un punto de vista práctico. .
Los sistemas de control en los sistemas electrónicos (convertidores electrónicos) relacionados con las Energías Renovables, Eficiencia Energética y comunicaciones industriales, es una de las áreas profesionales más demandadas (y mejor pagadas a largo plazo) en la actualidad. Teniendo en cuenta que la tecnología de los sistemas embebidos cambia rápidamente y en estos momentos hay un cambio brusco ya que los DSC empiezan a disponer más de un núcleo CPU. Aprender a diseñar, programar, gestionar proyectos relacionados con esta base de conocimiento sobre la tecnología de procesadores digitales avanzados de doble núcleo. Con estos conocimientos y metodología adquiridos por los técnicos en este curso podemos abordar Proyectos Técnicos que garanticen un desarrollo de sistemas de control y de comunicaciones basadas en la tecnología de los sistemas embebidos avanzados de doble núcleo en tiempo real, puede ser enormemente útil, incluso para otras ramas profesionales. La tecnología actual ya es completamente transversal donde se entrelazan varias disciplinas.

Acción formativa dirigida a

Ingenieros Telecomunicaciones y de la rama industrial (Grados, Superiores y Técnicos), alumnos de Ciclos Formativos y Formación Profesional, personal de Oficinas Técnicas, Instaladores eléctricos, profesionales que deseen una formación complementaria y aplicada en el ámbito de la optimización de la programación en el lenguaje "C" ANSI aplicado a los sistemas embebidos. Máster de Electrónica, eléctrica y de mecánica.


Profesores

  • Francisco José Gimeno Sales Profesor/a Titular de Universidad
  • David Lundbäck Mompo Técnico Medio

Temas a desarrollar

1. Introducción a los sistemas Embebidos.
- Introducción
- Familia C2000.
- LaunchPad F28379D
- Comparación F28x7x Piccolo / Delfino.
- Material requerido para el curso.

2. Arquitectura de la familia C2000.
- Diagrama de bloques del DSC F2837xD
- Simplificación del mapa de memoria del DSC F28x7x
- Manejo de las interrupciones en DSC F28x7x
- Acceso Directo a Memoria (DMA)
- Control de la unidad CLA / Control Law Accelerator)
- Unidad compleja Matemática Viterbi (VCU, Complex Math Unit)
- Unidad matemática trigonométrica (TMU, Trigonometric Math Unit)
- Interface de memoria externa (EMIF)
- Periféricos de comunicación
- Características de salvaguarda en el Chip

3. Lenguaje C ANSI para Sistemas embebidos. Base.
- ¿Qué es un lenguaje de programación?. Clasificación.
- Introducción a lenguaje C Ansi.
o Tipos de Datos: Enteros y Reales.
o Modificadores. Auto, extern, register, static y typedef.
o Casting.
o Operadores Aritméticos, Lógicos y manejo de bits.
o Declaración de funciones.
o Estructuras de control. If, while, for swtich,....
- Lenguaje C ANSI para Sistemas embebidos. Avanzado.
o Ámbito o alcance (scope) de las variables.
o Duración de las variables en la programación con lenguaje C Ansi. Estáticas y dinámicas.
o Modificadores de las variables en la programación del código C Ansi. Variables externas, register, volatile y const. Ejemplos.
o Variables Tipo Enumerados en código C Ansi. Ejemplos.
o Macros aplicadas al código C Ansi. Ejemplos.
o Preprocesado en el código C Ansi. Ejemplos.
o Optimizar el compilador. Ejemplos.
o Utilización óptima de estructuras y funciones. Ejemplos.
o Punteros a variables y a funciones en el código C Ansi. Ejemplos.
o Definición de nuevos datos mediante "typedef" en el código C Ansi. Ejemplos.
o Ahorro de memoria mediante la instrucción "unión" en el código C Ansi. Ejemplos.
o Estructura de datos más utilizados. Colas, Pilas y Listas. Ejemplos.

4. Entorno de desarrollo Software.
- Modelo de programación
- Code Composer Studio (CCS)
- desarrollo del y conceptos del fichero COFF
- Editor y Depurador del CCS
- Configuración de la tarjeta
- Gestión de los proyectos en el CCS
- Entorno de depuración del CCSv6
- Subsistema Dual de depuración
- Estructura de los directorios en los Laboratorios
- Laboratorio: Dual-Core depuración con el F2837xD.


5. Estructuras de los registros de los DSC familia C2000.
- Tradicional Aproximación a la Codificación en "C".
- Aproximación de las Estructuras en la Codificación en "C".
- Más eficiente utilizando las Estructuras.
- Comparar con las macros #define.
- Convenciones de los Nombre de las Estructuras.
- Paquete de los Ficheros de Cabecera del F2837xD.
- Fichero de Variables Globales.
- Ficheros de Comandos Linker para el uso de las estructuras.

6. Lenguaje C ANSI para Sistemas embebidos. Objetos.
- Objetivos de la Programación para sistemas embebidos.
- Objetivos de la Programación Orientada a Objetos (POO) para sistemas embebidos.
- Introducción de la Programación Orientada a Objetos para sistemas embebidos. Ejemplo de un la clase de un coche.
- Terminología de la Programación Orientada a Objetos: Abstracción, encapsulamiento, herencia, poliformismo, constructor.
- Resumen comparativo entre la POO y la Procedural.
- Abordar la POO mediante el lenguaje C Ansi. Ejemplos.
- Ejemplos de cómo implementar una Clase de un filtro paso-bajo en el lenguaje C Ansi.
- Diseño de una aplicación de control de unos leds con unos tiempos manejados por un Timer de la CPU mediante la Programación Orientada a Objetos (POO) para sistemas embebidos, en concreto para el TMS320F28027 de la familia C2000 de Texas Instruments.
- Diseño de una aplicación de un sistemas de medidas local mediante la Programación Orientada a Objetos (POO) para sistemas embebidos, en concreto para el TMS320F28027 de la familia C2000 de Texas Instruments.

7. Clocks y Entradas y Salidas digitales (GPIO)
- Módulo PLL y Oscilador del DSC-F28x7x
- Modulo del Timer del Watchdog
- Entradas/salidas digitales del DSC-F28x7x
- GPIO Input X-Bar
- GPIO Output X-Bar.
- Laboratorio: Manejo de las GPIOs.

8. Sistema del Reset, Interrupciones e Inicialización. Timer CPU
- Fuentes del Reset
- Proceso de arranque (Boot)
- Emulación Modo Boot
- Modo Autoarranque (Stand-Alone Boot)
- Resumen del flujograma del Reset
- Fuentes de las interrupciones
- Periférico de expansión de las interrupciones (PIE)
- Tabla de asignación d la PIE del F2837xD
- Inicialización del Bloque PIE
- Estructura de las interrupciones de Dual_core F2837xD
- Laboratorio: Timers CPU.


9. Módulo PWM.
- Módulo ePWM Señales y conexiones
- Módulo ePWM diagrama de bloques
- Módulo ePWM. Submodulo de la Base de Tiempos
- Módulo ePWM. Submodulo de Comparación
- Módulo ePWM. Submodulo de Cualificacion
- Módulo ePWM. Submodulo Dead-Band
- Módulo ePWM. Submodulo Chopper
- Módulo ePWM. Trip-Zone y el submodulo de comparación-Digital.
- Submodulo ePWM. Eventos de disparo
- Hi-Resolution PWM (HRPWM)
- Módulo de Capture Module (eCAP)
- Modulo Quadrature Encoder Pulse (eQEP)
- Laboratorio: Control PWM.

10. Subsistema Analogico del DSC-F28x7x.
- Subsistema ADC
- Diagrama de bloques del módulo ADC
- Disparar el ADC.
- Prioridad en la conversión del ADC
- Bloque de Post Procesado
- Subsistema Comparador
- Convertidor Digital-Analógico
- Modulo Filtro Sigma Delta.
- Laboratorio: Convertidor Analógico-Digital.

11. Módulo de Acceso Directo a Memoria (DMA).
- Introducción al Acceso directo a Memoria (DMA)
- Operaciones - Básicas
- DMA Ejemplos
- Modos de prioridad de los Canales
- Rendimiento de la DMA
- Registros DMA
- Laboratorio: Utilizar el ADC con la DMA.


12. Control Law Accelerator (CLA).
- Módulo CLA. Diagrama de Bloques
- Módulo CLA. Acceso a Memoria y a sus registros
- Módulo CLA. Tareas
- Módulo CLA. Control y Registros de Ejecución
- Módulo CLA. Registros
- Módulo CLA. Inicialización
- Módulo CLA. Programación de Tareas
- Módulo CLA. Implementación en Lenguaje C y sus restricciones
- Módulo CLA. Implementación en Lenguaje Ensamblador
- Módulo CLA. Depuración del Código
- Laboratorio: Modulo CLA implementación de un Filtro FIR en Coma Flotante.

13. Comunicación Inter-Processor (IPC).
- Global IPC compartir memoriaSARAM y mensajes SARAM
- Interrupciones y Flags del IPC
- Transferencia de datos IPC
- Laboratorio: Comunicaciones Inter-Processor.


14. Diseño del Sistema.
- Emulación y Bloque de Análisis
- Interface de Memoria Externa (EMIF)
- Configuración de la Flash y Características de la Memoria
- Programación de la Flash
- Modulo Dual Code Security (DCSM)
- Laboratorio-10: Programación de la Flash.




15. Comunicaciones con el DSC-28379-D.
- Técnicas de Comunicaciones.
- Serial Peripheral Interface (SPI). Resumen SPI.
- Serial Communications Interface (SCI).
- Sistemas Multiprocesador. Resumen de la SCI.
- Multichannel Buffered Serial Port (McBSP).
- Definición: Bit, Word, y Frame.
- Selección de Multi-Canal. Resumen McBSP.
- Inter-Integrated Circuit (I2C).
- Modos de Operación y Formatos de la I2C. Resumen I2C.
- Universal Serial Bus (USB).
- Comunicación USB.
- Enumeración.
- F28x USB Hardware. Resumen del controlador de la USB.
- Controller Area Network (CAN).
o CAN Bus y Nodos.
o Principios y Operación.
o Formato de los Mensajes y Diagrama de Bloques.
o Resumen del bus CAN.

16. Utilidades Avanzadas de Software.
- Crear una librería propia desde Code Composer Studio.
- Emular dos entornos de Code Composer Studio en un mismo PC.
- Usar librería de C++ desde código en C-Ansi. Wrapper.

Laboratorios prácticos:
1. Laboratorio-1. Code Composer. Crear/Abrir un Proyecto Nuevo:
2. Laboratorio-2. Inicializar el Sistema. Manejo de E/S Digitales:
3. Laboratorio-3. Manejo de Interrupciones. Timer-0 de la CPU:
4. Laboratorio-4. Generación de señales. Unidad ePWM:
5. Laboratorio-5. Subsistema analógico:
6. Laboratorio-6. Acceso Directo a Memoria (DMA):
7. Laboratorio-7. Unidad de cálculo paralelo CLA:
8. Laboratorio-8. Comunicación entre CPUs (IPC):
9. Laboratorio-9. Grabación del código en la Flash:
10. Laboratorio-10. Comunicación serie RS232. Unidad SCI:
11. Laboratorio-11. Utilidades Avanzadas del Software: