Entrega de informes en PDF

hola! por favor, aquellos que entregaron el informe de DAQ o DAQ+PID en formato papel, podran hacerlo via mail?

les pido si al archivo lo pueden nombrar segun el formato con que les hicimos las devoluciones: “Gxx – informeTP2.pdf”, donde xx es el numero de grupo. gracias y saludos!

Clase de mañana

La idea es que arranquen midiendo hasta las 1630.

Expandiendo lo que les dije personalmente y en un post anterior.

  • los que armaron un ON/OFF,  hagan un PID
  • los que aun no tienen el PID andando, haganlo andar
  • los que armaron un PID:
    • toquen los parametros
    • cambien la “memoria del integrador”
    • comparen los valores de k, i, d con los propuesto por algun método heuristicos
    • pongan mas inteligencia (ej. que la respuesta del LED tiene un offset en corriente
  • Que hagan algo distinto a un PID
No esperamos que todos lleguen a hacer todo. Es una hoja de ruta, cada uno a su ritmo.
A las 1630 tendremos 3 charlas y luego una breve conversación sobre Arduino.
La clase continua usando la arduino, implementando un lazo ahi. En principio tenemos arduinos para todos los grupos. Pero si alguien puede/quiere traer su propio Arduino por si acaso se agradece.

 

Proximas clases

14 de Noviembre

  • Clase: Código mantenible en Arduino
  • Seguimos con Lazo de control. Aquellos que ya terminaron con la propuesta de caracterizar el lazo de control, pueden:
    • Crear un lazo de control que opere bajo otro principio (ej. si usaron un PID, piensen un lazo con feed forward, si usaron un ON/OFF hagan un PID)
    • Implementar el lazo en la Arduino
  • Informe: Entrega de informe de DAQ y (opcionalmente) Lazo de control

21 de Noviembre

  • Clase: Código mantenible en Python
  • Uso de arduino y discusión del proyecto final
  • Informe: Entrega de  Lazo de control (si aun no lo entregaron)

28 de Noviembre

  • Clase: Código mantenible en Python y aplicaciones interactivas
  • Mini proyecto final. Utilizando cualquiera de la herramientas que aprendieron deberán generar un software. Pueden traer sus propios proyectos, o usar alguno de los ejemplos:
    • Proyectos de control / búsqueda
      • Noise cancelling.
      • Péndulo invertido
      • Ascensor (y descensor) definiendo una función de optimización
      • Búsqueda de resonancias en cuerda
      • Seguidor de sol
      • En un RLC forzado, variar R para que este en resonancia.
    • Proyectos de Aplicación (deben tener una interface grafica o similar):
      • Caracterización de respuesta en frecuencia de un circuito usando un lock in. Diagrama de Bode
      • Caracterización automática del sistema de ultrasonido en frecuencia y ángulo

Exposiciones finales: en diciembre, en fecha a coordinar.

Implementaciones de PID

Siguiendo con la discusión de como implementar el lazo de control separado de la parte de adquisición les doy un ejemplo para un lazo de control tipo PID.

Aca hay 4 borradores de distintas implementaciones  de lo mismo. ¿Cómo funciona cada una? ¿Como se comparan con los casos 1 y 2? ¿Cuáles son las ventajas y desventajas?

Ver aca: https://gist.github.com/hgrecco/16edd24989c63b6fc2eeb829c6d6b7ea

 

 

X EEOF y XV TOPFOT (2019)

Reenvio info de la JOFA

Muy recomendado este encuentro!

—–
Les escribimos porque la organización de la X EEOF y el XV TOPFOT está en marcha. El evento será alrededor del 20 de mayo del 2019 y la sede es Bariloche.

La temática será: “Óptica no lineal y fibras ópticas”. Desde la jofa estamos organizando la escuela, con la premisa nuevamente de que los cursos/clases incluyan herramientas y técnicas que nos sirvan a todes, independientemente del área de la óptica a la que nos dedicamos.

Los cursos/temáticas serán:
* Mamografía óptica (con aplicaciones generales de la técnica de IR en tomografía).
* Mesa debate: Startups y Empresas de base tecnológica.
* Fotodetectción rápido y SDR
*  Python
* Aplicaciones de pulsos ultracortos, herramientas para usar las facilities del SINALA.
* Sesión de pósters (con birra incluida).

Se encuentra abierta una preinscripción al evento que es MUY IMPORTANTE/NECESARIO completen quienes necesitan ayuda económica. El objetivo es lograr conseguir financiamiento tanto para traslado como para alojamiento, pero para hacer esto necesitamos información con tiempo. Estará abierta hasta el 31/10/2018.

El formulario de preinscripción es el siguiente: LINK

¡Les pedimos por favor difundan este mensaje!
Saludos y nos vemos en Bariloche,

JOFA.

PID

La próxima clase (7/11) comenzará puntual con una breve clase para fijar ideas acerca de lazos de control seguida por las charlas de sus compañeros. El resto de la clase estará dedicado casi íntegramente a medir con los lazos que armaron, excepto la últimos 30 minutos que comenzaremos a una introducción a como organizar aplicaciones mas complejas de intrumentación.

El 14/11 deberán entregar el informe de PID.

Algunas ideas para hacer con el lazo de control:

  • Modificar los parámetros del lazo para ver “que tan bien” funciona (Diseñar e implementar una definición cuantitativa de “que tan bien”)
  • Aplicar una perturbación conocida y estudiar la capacidad del lazo + actuador para mantener el sensor en el valor de referencia en función de la frecuencia y amplitud de dicha perturbación
  • Modificar la lógica del lazo para incorporar las relaciones que conocen del sistema actuador+ sistema físico + sensor.
Finalmente, dado que para muchos de ustedes el actuador y el pertubador es un elemento del mismo tipo, estaría bueno si pueden “empeorar” el actuador, por ejemplo pasando la señal por un filtro pasa bajo.

Respecto del software, muchos se dieron cuenta que no es posible crear una simple funcion donde el output  dependa sólo del input. Un lazo de control tiene que lidear con la inercia y la histeresis de un sistema fisico y esto significa que tiene que tener memoria.

Hay varias formas de lidiar con esto:

  1. Poner el codigo del lazo y la memoria en el while.
  2. Definir variables globales que operen de memoria del lazo
  3. Que la función lazo tome alguna estructura de datos (u otros parámetros) para contener la memoria, la modifique y la devuelva.
  4. Crear una clase e instanciar un objeto
  5. Crear un generador

Muchos de ustedes implementaron la forma #1,  mezclando la lógica de adquisición con la lógica del lazo. Esto no es en general una buena idea ya que dificulta el debugging, la simulación del efecto de cada parte y la capacidad para compartir codigo.

Seria ideal que el software sea algo como lo siguiente:
while True:
   signal = <aca va el codigo que lee de la daq/placa de audio/lo que sea>
   actuador = <aca va el codigo que calcula el siguiente valor del actuador>
   aca va el codigo que escribe de la daq/placa de audio/lo que sea>(actuador)
por ejemplo:
while True:
    task.wite(lazo_calcular(task.read(), <otros_parámetros>))

(Los nombres son a gusto del usuario)

Les pido que piensen pros/contras de estas opciones y busquen implementar alguna de ellas. El lunes temprano voy a postear algunas ideas mas.