Lantz + Arduino

Hola,

Les dejo las instrucciones para lo que les mostré

1.- Crear una archivo de python con una clase que derive de InoDriver. Adentro puede tener attributos. Ver ejemplos en:

https://github.com/lantzproject/examples

2.- Generar el sketch de arduino, desde la consola con el environment que contiene lantz

lantz ino new modulo:clase

donde modulo es el nombre del archivo (sin el .py) y clase es el nombre de la clase. Importante: deben respetar mayúsculas y minúsculas, y deben ejecutar la instruccion en la carpeta que contiene el archivo .py

3.- Usando el arduino IDE abrir el archivo .ino recien creado.

4.- Probar de subirlo a la arduino

5.- Escribir un archivo de python que importe el modulo y use la clase

Ver ejemplos en:

https://github.com/lantzproject/examples

6.- Agregar la funcionalidad que necesiten al archivo inodriver_user.cpp e inodriver_user.h. Noten que ya tienen los getters y setters creados.

Los getters deben devolver el valor de interes, los setters deben devolver 0 si no hubo error o un numero distinto de 0 si hubo error.

7.- Probar de subirlo a la arduino

8.- Opcionalmente hacer una GUI. Ver ejemplos en:

https://github.com/lantzproject/examples

Envío de informes

Hola!

breve recordatorio para aquellos que todavía no enviaron el informe (la versión preliminar) por mail (german@df.uba.ar)

les pido si pueden hacerlo con la siguiente convención:

  • IC_GXX_TPY.pdf, donde XX es el número de grupo e Y el número de trabajo práctico

gracias!

Mas videos de Python

Mas videos de Python

 

Para leer y ver

Para aprender mas de Python

Y además, antes de que empiece GoT, les dejo unos videos que no solo dan codigo sino opiniones.
  • Python’s Class Development Toolkit by Raymond Hettinger
    This is a short, but thorough tutorial on the Python’s built-in toolset for creating classes. We look at commonly encountered challenges and how to solve them using Python.
    https://www.youtube.com/watch?v=HTLu2DFOdTg
  • Beyond PEP 8 — Best practices for beautiful intelligible code by Raymond Hettinger
    Distillation of knowledge gained from a decade of Python consulting, Python training, code reviews, and serving as a core developer. Learn to avoid some of the hazards of the PEP 8 style guide and learn what really matters for creating beautiful intelligible code.
    https://www.youtube.com/watch?v=wf-BqAjZb8M
  • Super considered super! by Raymond Hettinger
    Python’s super() is well-designed and powerful, but it can be tricky to use if you don’t know all the moves.
    https://www.youtube.com/watch?v=EiOglTERPEo

(es posible que encuentren algunos ejemplos en Python 2 que no es exactamente igual a Python 3, pero los conceptos se mantienent)

Novedades 27/3

Está subida a la página la charla introductoria del Martes (en Material Adicional) asi como una descripción de las unidades 1 y 2 con sus objetivos (en Cronograma)

Los que todavía no hayan completado el formulario del post anterior con el repo de github, por favor haganlo a la brevedad.

Finalmente, los alumnos de doctorado deberán traer para la próxima clase (9/4) una idea de tema para presentar. Cada presentación deberá ser de 12 minutos y vincularse a los temas de la materia. En la pagina de la materia del cuatrimestre anterior podrán ver algunos ejemplos.

Martes 26/3

El próximo martes 26/3 tendremos la segunda clase de la materia y comenzaremos a las 14 en punto una charla acerca de paquetes para instrumentación de Python.

Les pido a cada uno de ustedes que venga con un repositorio de GitHub creado y el completo el siguiente breve formulario https://goo.gl/forms/5BqZ9OfFlk0w2LLu2

Si además usan su propia computadora, deberán tener instalado:

  • Python 3.6 o superior (preferentement la distribución de anaconda)
  • Git
  • Alguna IDE (GitHub desktop, etc) para Git si la necesitan
  • Alguna IDE (Spyder, PyCharm, etc) para Python si la necesitan
  • NI-VISA instalado (se baja de https://www.ni.com/visa/)