Itinerario Formación Raspberry Pi

En un acercamiento a esta disciplina, se busca aprender a manejar Raspberry Pi, una placa de desarrollo basada en linux, pero a efectos de todos se trata de un ordenador con linux completo. Así, se presenta el siguiente itinerario con un curso de Iniciación, uno Intermedio y uno avanzado:

Raspberry Pi Iniciación (Nivel 1)20 h
Raspberry Pi Intermedio (Nivel 2)20 h
Raspberry Pi Avanzado (Nivel 3) – EN DESARROLLO20 h

Ver Anexo I con el material necesario para impartir los cursos de este itinerario. 

Raspberry Pi Iniciación (Nivel 1)

Objetivo

El objetivo de este curso es que el alumno obtenga un conocimiento inicial de la placa de desarrollo basada en linux y sea capaz de instalar, configurar y realizar proyectos sencillos.

Toda la documentación del curso y el código usado es libre y accesible desde https://www.aprendiendoarduino.com/.

Al finalizar el curso el alumno será capaz de:

  • Conocer el HW Raspberry Pi
  • Instalar Raspbian
  • Realizar configuraciones básicas
  • Conocer comandos básicos de Linux
  • Saber cuándo Raspberry Pi es una buena solución a un proyecto o idea.
  • Conocer de forma básica es lenguaje de programación Python
  • Aprender a usar el GPIO de Raspberry Pi
  • Manejar sensores y periféricos con Raspberry Pi

Requisitos Alumnos

No son necesarios requisitos previos de los alumnos para asistir a este curso

Contenido del Curso

  • Qué es Raspberry Pi
  • HW Raspberry Pi
  • Tipos de Placas y Hats Raspberry Pi
  • GPIO
  • Instalación Raspbian
  • Conexión a Internet
  • Conceptos básicos de Linux
  • Programación Básica en Python
  • Entradas y Salidas Digitales
  • Manejo de Sensores y periféricos

Raspberry Pi Intermedio (Nivel 2)

Objetivo

El objetivo de este curso es que el alumno con experiencia básica es Raspberry Pi, amplíe y afiance sus conocimientos y sea capaz de configurar servicios y realizar proyectos más complejos.

Toda la documentación del curso y el código usado es libre y accesible desde https://www.aprendiendoarduino.com/.

Al finalizar el curso el alumno será capaz de:

  • Conocer el HW de Raspberry Pi a fondo
  • Configurar servicios en Raspberry Pi
  • Manejar Linux desde consola
  • Realizar programas en Python de cierta dificultad
  • Usar de forma básica otros lenguajes de programación en Raspberry Pi
  • Usar el GPIO de Raspberry Pi con soltura

Requisitos Alumnos

Es necesario tener una experiencia básica en el manejo de Raspberry Pi para asistir a este curso

Contenido del Curso

  • Repaso básico de Raspberry Pi
  • Modelos de Raspberry Pi
  • Instalación y Configuración Raspbian
  • Instalación de Servidores/Servicios en Raspbian
  • Comunicaciones Raspberry Pi
  • Programación Python
  • Uso de puertos serie e I2C en Raspberry Pi
  • Uso de cámara en Raspberry Pi

Itinerario Formación Arduino

Con este escenario, en un acercamiento a esta disciplina, se busca el desarrollo de hardware abierto como Arduino permiten construir dispositivos digitales y dispositivos interactivos para controlar objetos del mundo real. Así, se presenta el siguiente itinerario desde un nivel básico para ir paso a paso profundizando en sus contenidos para luego pasar a otros cursos más específicos como programación o gestión de proyectos:

Arduino Iniciación (Nivel 1)20 h
Arduino Intermedio (Nivel 2)20 h
Programación Arduino (Nivel 3)20 h
Proyectos con Arduino (Nivel 4)20 h
Arduino Avanzado (Nivel 5)20 h

Ver Anexo I con el material necesario para impartir los cursos de este itinerario.

Arduino Iniciación (Nivel 1)

Objetivo

El objetivo de este curso es que el alumno obtenga un conocimiento inicial de la plataforma Arduino y sea capaz de realizar proyectos de dificultad media con cualquiera de las diferentes placas Arduino o compatibles.

Toda la documentación del curso y el código usado es libre y accesible desde https://www.aprendiendoarduino.com/

Al finalizar el curso el alumno será capaz de:

  • Conocer el HW Arduino
  • Manejar la plataforma Arduino
  • Saber cuándo Arduino es una buena solución a un proyecto o idea.
  • Conocer el lenguaje de programación
  • Conocer el potencial de Arduino para usar aplicación sencillas
  • Aprender a usar las entradas analógicas y digitales
  • Aprender a usar las salidas analógicas y digitales
  • Manejar sensores y periféricos con Arduino

Requisitos Alumnos

No son necesarios requisitos previos de los alumnos para asistir a este curso

Contenido del Curso

  • Primeros Pasos con Arduino
  • IDE Arduino
  • Simuladores Arduino
  • Tipos de Placas y Shields Arduino
  • Herramientas de Programación Visual
  • Programación Básica Arduino
  • Componentes Electrónicos
  • Entradas y Salidas Digitales
  • Entradas Analógicas
  • PWM
  • Manejo de Sensores

Arduino Intermedio (Nivel 2)

Objetivo

El objetivo de este curso es que el alumno obtenga un conocimiento intermedio de la plataforma Arduino y sea capaz de realizar proyectos de cierta dificultad con cualquiera de las diferentes placas Arduino o compatibles. Este curso es complemento al curso de Iniciación.

Toda la documentación del curso y el código usado es libre y accesible desde https://www.aprendiendoarduino.com/

Al finalizar el curso el alumno será capaz de:

  • Uso de Memoria en Arduino
  • Manejar librerías Arduino
  • Programar y ejecutar programas en la plataforma Arduino y compatibles
  • Usar eficazmente el entorno de programación
  • Manejar motores y actuadores con Arduino para interactuar
  • Manejar sensores y periféricos complejos
  • Usar comunicaciones serie.

Requisitos Alumnos

Será necesario haber realizado el curso de Iniciación a Arduino o tener unos conocimientos básicos de Arduino..

Contenido del Curso

  • Repaso Arduino Básico
  • Simuladores Arduino
  • Uso de Librerías Arduino
  • Programación Arduino
  • Uso de Memoria en Arduino
  • Manejo de Sensores y periféricos
  • Manejo de Motores 
  • Comunicación Serie
  • Bus I2C
  • Protocolo TCP/IP en Arduino
  • Conexión Arduino a Internet

Curso Programación Arduino (Nivel 3)

Objetivos

El objetivo de este curso es que el alumno aprenda los principales conceptos de la programación de Arduino en particular y por extensión los principios y técnicas de programación general que podrían aplicarse a casi cualquier lenguaje de programación.

Este curso está diseñado para personas que ya conocen Arduino y el mundo de los microcontroladores y la electrónica pero no tienen conocimientos o solo básicos de programación.

Toda la documentación del curso y el código usado es libre y accesible desde https://www.aprendiendoarduino.com/

Al finalizar el curso el alumno será capaz de:

  • Programar Arduino con soltura
  • Uso básico de un sistema de control de versiones
  • Conocer estructuras complejas de programación
  • Manejar y crear librerias Arduino
  • Programas placas y microntroladores compatibles con Arduino
  • Hacer debug de programas
  • Programar comunicaciones serie.

Requisitos Alumnos

Para realizar este curso, el alumno debe haber asistido a alguno de los cursos de iniciación o intermedio de Arduino o tener experiencia en la plataforma de hardware libre Arduino y tener conocimientos básicos de electrónica. 

Contenido del Curso

  • Repaso Conceptos Arduino 
  • Programación Avanzada Arduino
  • Clases y Objetos en Arduino
  • Manejar y Crear Librerias Arduino
  • Comunicaciones Arduino
  • Manejo Avanzado de Strings
  • Multitarea en Arduino

Curso Proyectos Arduino (Nivel 4)

Objetivos

El objetivo de este curso es que el alumno aprenda a realizar proyectos con Arduino y a documentar adecuadamente los proyectos. Aprenderá a usar el entorno de programación utilizado por Arduino, el lenguaje de programación usado, realizar proyectos, ejecutarlos sobre la plataforma y documentarlos.

Toda la documentación del curso y el código usado es libre y accesible desde https://www.aprendiendoarduino.com/

Al finalizar el curso el alumno será capaz de:

  • Diseñar, planificar y ejecutar un proyecto con Arduino
  • Usar eficazmente herramientas de documentación
  • Manejar un sistema de control de versiones
  • Hacer testeo y depuración de errores
  • Programas placas y microcontroladores compatibles con Arduino

Requisitos Alumnos

Para realizar este curso, el alumno debe haber asistido a alguno de los cursos de iniciación o intermedio de Arduino o tener experiencia en la plataforma de hardware libre Arduino y tener conocimientos básicos de electrónica. 

Contenido del Curso

  • Repaso Conceptos Arduino 
  • Primer Proyecto con Arduino
  • Programación Arduino
  • Manejo de Sensores Actuadores y periféricos
  • Planificación y Diseño de Proyectos
  • Documentación de Hardware
  • Documentación del Código y Control de Versiones
  • Testeo y Depuración de Errores
  • Plataformas de Publicación de Proyectos
  • Proyectos Final de Curso.

Curso Arduino Avanzado (Nivel 5)

Objetivo

El objetivo de este curso es ampliar conocimientos sobre la plataforma Arduino para poder abordar proyectos complejos y usar usar otra placas compatibles con Arduino.

Toda la documentación del curso y el código usado es libre y accesible desde https://www.aprendiendoarduino.com/

Al finalizar el curso el alumno será capaz de:

  • Realizar proyectos complejos
  • Conocer la programación de Arduino más allá del core de Arduino
  • Interactuar con el mundo exterior a través de órdenes enviadas desde un ordenador o desde un dispositivo móvil y comunicarse a través de Internet.
  • Crear librerías propias o modificar las existentes para mejorar las funcionalidades.

Requisitos Alumnos

Para la realización de este curso es necesario haber realizado el curso de iniciación de Arduino y el curso de programación o tener conocimientos y experiencia en la creación de proyectos con Arduino. También es necesario conocimientos de programación (especialmente C++), redes TCP/IP y protocolos de comunicación, microcontroladores, electrónica, uso de sensores, actuadores, motores, etc…

Contenido del Curso

  • Repaso Conceptos Básicos Arduino
  • Hardware Avanzado Arduino (Alimentacion, Memoria, I/O Ports, etc…)
  • Programación Avanzada Arduino (Librerías, Clases y Objetos, Punteros, Debug, etc…) 
  • Manejo Avanzado Arduino (Buses, Interrupciones, Watchdog, etc…)
  • Comunicaciones Arduino (Bluetooth, Serie, Ethernet y WiFi.
  • Programación de Placas Compatibles Arduino.

Día 5. Memoria Arduino

Día 5. Memoria Arduino

2.4 – Memoria Arduino
2.5 – EEPROM
2.6 – Ampliación Memoria Arduino
2.7 – Alimentación Arduino
2.8 – ICSP
2.9 – Bootloader
2.10 – UART y USB en Arduino

Opcional

2.3 – Entradas y Salidas Arduino (I/O Analógicas a fondo)

Adquisicición de datos (DAQ) con Arduino:

Más Cosas

Shield para bucle de corriente 4mA – 20mA:

Placa compatible Arduino con 4 entradas bucle de corriente 4mA – 20mA: http://arduino.cl/caicai/

Placa bucle de corriente 4mA – 20mA: http://www.analog.com/en/design-center/reference-designs/hardware-reference-design/circuits-from-the-lab/cn0336.html#rd-overview

Productos de bucle de corriente 4mA – 20mA: https://www.maximintegrated.com/en/products/interface/current-loop-products-4-20ma.html

Leer sonda PT100:

Día 3. HW Arduino

Día 3. Hardware Arduino a Fondo

1.8 – Electrónica, Sensores, Actuadores y Periféricos (Actuadores y periféricos)
1.9 – Comunicación Serie Arduino
1.10 – Comunicaciones IP

Más cosas

Traer tarjeta micro SD para hacer prácticas mañana!!!

Terminal Serie para trabajar con Arduino: https://sites.google.com/site/terminalbpp/

Límite de llamadas a funciones: http://arduino.stackexchange.com/questions/355/how-much-can-i-recurse-how-much-can-i-recurse-how-much-caqfsdrfw

Usar timer con resolución de microsegundos:

  • Usar flexitimer2: http://playground.arduino.cc/Main/FlexiTimer2 
  • Podríamos modificar MStimer2 para que en lugar de que la base del overflow que dispara la interrupción sea 1 microsegundo en lugar de 1 milisegundo. Para ello usar un preescaler de valor 1 para un reloj de 16MHz y el valor de overflow cuando llegue 16

Capacidades de conexiones simultaneas Wifi de MKR1000:

Conversores Analógico digital de alta resolución: