Depto. Arquitectura

(Informática Industrial)
Diseño con Microcontroladores

Curso Cuatrimestre Carácter Créditos
Tercero Primero Optativa 6

Curso 2020/2021

Temario Prácticas Arduino Visual Micro VMLAB Material de Apoyo

Normas

Tutorías Calificaciones


Coordinador: Manuel Nieto

Profesorado: Antonio Pérez, Manuel Nieto

Temario

  1. Introducción al diseño de sistemas basados
    en microcontroladores.
    Microcontrolador AVR Atmega32U4.
    • Arquitectura.
    • Juego de instrucciones.
    • Módulos de E/S.

  2. Arduino Leonardo.
    • IDE de Arduino.
    • Programación en C.
    • Prácticas propuestas.

  3. Entrada/Salida digital.
    • Activación de LED's.
    • Lectura de pulsadores.
    • Teclado (lectura digital y analógica).
    • Control de dispositivos.
    • Encoder en cuadratura.
    • Ejemplos.

  4. Control de módulos LCD.
  1. Gestión de interrupciones en AVR ATmega.

  2. Entrada/Salida serie.
    • USART (RS-232).
    • I2C.
    • SPI.

  3. Temporizadores programables.
    • Pulse Width Modulation (PWM).
    • Filtros PID.
    • Control de motores y servomotores.
    • Detección de paso por cero (ZCD).
      Gestión de potencia.

  4. Cadena de E/S Analógico/Digital.
    • Convertidores.
    • Ejemplos.

  5. Ejemplos prácticos.
En el curso 2020/21 las clases se impatirán telemáticamente en el equipo Informática Industrial de la plataforma Teams.

Prácticas

La prácticas consistitrán en la implementación de un pequeño sistema de control basado en una placa Arduino Leonardo. Se realizarán en grupos de dos alumnos. Cada grupo deberá elegir una de las prácticas que se presentarán durante las primeras clases.

Las prácticas propuestas para este curso basadas en el sistema Arduino son las siguientes: Todas ellas incluyen el control de un pequeño teclado y un módulo LCD para los que se dispone de varias alternativas en función de los deseos y espectativas de cada grupo, desde el uso de un módulo arduino ya construido con toda la funcionalidad requerida, hasta el completo diseño y construcción de un módulo similar.

Los alumnos que así lo deseen podrán plantear prácticas alternativas de similar o mayor complejidad.


Gracias a la "amabilidad" de vuestro compañero Eric Mozo Ruiz, "podéis encontrar a vuestra disposición" la práctica que realizó durante el curso 2017/18 Control de servo motores, práctica que obtuvo la sobrevalorada calificación de 5 puntos.
Confiamos en la sensatez y buen criterio de todos los alumnos de la asignatura, esperando que no hagan uso de este material ni de cualquier otro inapropiado que conduzca a la aplicación de lo previsto para los casos de prácticas o examenes copiados.

Sistema Arduino

http://arduino.cc/es: "Arduino es una plataforma de electrónica abierta para la creación de prototipos basada en software y hardware flexibles y fáciles de usar. Se creó para artistas, diseñadores, aficionados y cualquiera interesado en crear entornos u objetos interactivos."

Esta es una versión en español de la página oficial de arduino que se puede usar para dar los primeros pasos. Sin embargo, no está actualizada, por lo que se recomienda usar la versión en ingles: http://arduino.cc/en. En ella se puede encontrar información de la placa Leonardo usada en clase, instrucciones para la descarga, instalación y uso del software de desarrollo (IDE), la referencia del lenguaje de arduino y ejemplos de uso.

El software de arduino está implementado sobre la librería AVR Libc, que es un subconjunto de la librería estándar libc adaptada a la familia de microcontroladores AVR de 8 bits. Todos sus módulos pueden ser usados junto con las librerías de arduino.

Plugin Visual Micro. Depurador

Dos de los inconvenientes del sistema arduino son que su IDE es muy sencillo y, fundamentalmente, que no dispone de ninguna ayuda para la depuración del software. Atmel, la empresa que diseña y fabrica los microcontroladores en que se basan los distintos modelos de arduino, ha desarrollado varias herramientas de libre disposición que incluyen un IDE, Atmel Studio, que tiene integrados simuladores para varios microcontroladores (entre los que no se encuentra el Atmega32U4 usado por arduino Leonardo).

La empresa Visual Micro ha desarrollado un plugin que integra toda la funcionalidad del IDE de arduino en Atmel Studio combinando la simplicidad del primero con todas las ayudas que proporciona el segundo. Este plugin es de libre disposición y se puede descargar e instalar directamente desde Atmel Studio (Tools->Extension Manager "Arduino Ide for Atmel Studio").

Visual Micro incluye un depurador que facilita el desarrollo de software para el sistema arduino. Utiliza de forma totalmente transparente la misma vía de comunicación con el microcontrolador que el IDE de arduino mostrando los mensajes de depuración en ventanas independientes. Amplía el concepto de punto de ruptura (breakpoint) insertando código C oculto que determina en qué momentos se dispara el breakpoint, qué información muestra, qué acciones se toman y qué variables se puede modificar durante la ejecución del programa.

La funcionalidad de depuración de Visual Micro no está incluida en la versión libre, salvo para su evaluación durante 15 dias. Tiene un coste no demasiado alto para particulares y un poco mas elevado para empresas.

Visual Micro ha tenido a bien proporcionar sin coste varias licencias para ser usadas por los alumnos de Informática Industrial. Aquellos alumnos que deseen instalar una liciencia en su ordenador particular, deberán solicitarlo personalmente y firmar un compromiso de no redistribución de la licencia, con objeto de no comprometer su disponibilidad para los futuros alumnos de la asignatura.

El orden de instalación de estos tres componentes es:

  1. arduino
  2. Atmel Studio
  3. Visual Micro

Simulador VMLAB

VMLAB es un IDE para la familia AVR que integra un depurador simbólico de alto nivel y un simulador interactivo de los microcontroladores AVR, de sus módulos de E/S, de los periféricos más usuales y que dispone de herramientas para modelar y simular el comportamiento de otros periféricos.

Para el desarrollo del software está integrado con WinAVR, que incluye el compilador GCC de GNU, el mismo que usa el sistema arduino.

El orden de instalación de estos dos componentes es:

  1. WinAVR
  2. VMLAB

Material de Apoyo

IMPORTANTE: Casi toda la información de esta sección está sacada de internet. Es bien sabido por todo el mundo que cualquiera puede poner información en la red sin necesidad de pasar controles de fiabilidad. Los manuales de los fabricantes y la documentación de los paquetes de software pueden contener erratas, pero son a todas luces fiables. El resto de la información, en general, también lo es, pero contiene inexactitudes, alguna tontería y está bastante sesgada hacia el mundo de los pcs, así que usadla con cautela.

Pinnacle 52. Simulador de microcontroladores de la familia 8052. Sólo para windows.

Documentación sobre el 8052. Contiene manuales de las familias AT89C51 y AT89C52 de Atmel (versiones del 8051 y 8052). También contiene manuales de varios microcontroladores.

Documentación de Dallas Semiconductors.

Documentación del bus i2c.

Documentación sobre Displays de cristal líquido (Módulos LCD).

Eagle Layout Software. Software de diseño de circuitos lógicos y placas. Versión Freeware.

Información sobre el estandard RS-232 y otros interfaces.

Información sobre el 8052.

The PC technology guide. Información sobre el pc, periféricos y todo lo que le rodea.

Normas

DESARROLLO DEL CURSO

La asistencia a clase es obligatoria. A lo largo de esta parte del curso se irán presentando distintos aspectos relacionados con el diseño de sistemas basados en microcontroladores y se irán realizando ejemplos usando el sistema arduino y el simulador vmlab. Su instalación, configuración y uso se ilustrará, de forma somera, durante las exposiciones en el aula. Una buena parte de las explicaciones y ejemplos estarán relacionados directamente con la práctica que deberán completar los alumnos en grupos de dos. Aquellos alumnos que realicen prácticas especiales deberán hacer una presentación de las mismas al final de esta parte del curso.

EXÁMENES

Para aprobar la asignatura se deberá realizar una práctica, entregar una memoria de la misma y realizar un examen, debiéndose aprobar en la misma convocatoria. En caso de suspender alguna de las partes, se considerará la asignatura suspensa y se deberá realizar una nueva práctica, entregar la memoria y realizar un nuevo examen.

No se devolverán las memorias de las prácticas, por lo que se aconseja a los alumnos que conserven una copia.

Para la admisión de los alumnos al examen de la asignatura será necesario que hayan realizado la práctica en su totalidad.

REVISIÓN DE EXÁMENES Y PRÁCTICAS

Una vez publicadas las notas de la asignatura, se abrirá un plazo de solicitud de revisión (2 días hábiles) para aquellos alumnos que consideren que existe algún error en la calificación. Esta solicitud de revisión se realizará conectándose al URL (WEB) http://www.datsi.fi.upm.es/docencia/Informatica_Industrial/DMC/rev_dmc.html. El alumno deberá rellenar los datos que se requieran. Una vez hecha la revisión por los profesores, se publicará la lista de notas revisadas. Si el alumno desea revisión presencial, deberá acudir al lugar y hora que se establecerá en su momento.

Se recuerda a los alumnos que la revisión de exámenes tiene por objeto detectar y subsanar los posibles errores que puedan surgir en el proceso de calificación. No se trata de explicar individualmente cómo se resuelve el examen ni de variar ni discutir los criterios de corrección para una persona determinada.

PRÁCTICAS o EXÁMENES COPIADOS

Los exámenes se realizarán a nivel personal y la práctica en los grupos establecidos. Si se detecta que algún alumno ha copiado en algún examen o algún grupo ha copiado en la realización de la práctica, se le calificará como suspenso en esa convocatoria y en la siguiente. En particular, en el caso de la práctica, se tendrá en cuenta que la responsabilidad de la práctica está compartida por todos los miembros del grupo, por lo que en caso de detectar alguna copia la norma se aplicará a todos los miembros de todos los grupos involucrados en la copia (tanto los que copian como los que se dejan copiar). Para evitar problemas y reclamaciones que no se podrán atender se recomienda a los alumnos que sean especialmente cuidadosos con los ficheros que se utilicen para la realización de la práctica, puesto que de ello depende que la práctica pueda o no ser copiada. En concreto, utilice siempre disquetes cuando trabaje en un PC del Centro de Cálculo (no deje los ficheros en el disco duro ni siquiera de forma transitoria) y haga uso de los mecanismos que proporciona el sistema operativo cuando estos estén disponibles (máquinas Unix).


Página modificada el 26/11/2020