Diferencia entre revisiones de «PUBLICO:Sistemas embebidos e Internet de las Cosas»

De SOA - Wiki - Unlam
Ir a la navegación Ir a la búsqueda
 
(No se muestran 202 ediciones intermedias de 4 usuarios)
Línea 1: Línea 1:
 
{{Plantilla:Menú | PUBLICO:Portada|PUBLICO:Material de clases}}
 
{{Plantilla:Menú | PUBLICO:Portada|PUBLICO:Material de clases}}
  
===Diapositivas de clase===
+
=Material Teórico=
 +
===Diapositivas Teóricas dadas en clase del 1° Cuatrimestre del 2025===
 +
*[https://www.dropbox.com/scl/fi/9phlruql4njnjao6hrkmi/Clase_01_Introduccion_SE.pptx?rlkey=cahftfwf5nljdqvb1je72pjpw&dl=0 1° Clase - Introduccion a S.E sensores y actuadores (ppt dada en la comisión de los Lunes)]
 +
*[https://www.dropbox.com/scl/fi/zjt5wvgrj5khdmo5mvxa4/Clase_01_Introduccion_SE.pptx?rlkey=apj98yhrxcq2bogb4fvzs1t06&dl=0 1° Clase - Introduccion a S.E sensores y actuadores (ppt dada en la comision de los Martes)]
 +
*[https://www.dropbox.com/scl/fi/lp2y5vkp2yd09hn5bbpod/Clase_02_Electronica.pptx?rlkey=rbbvg7pa2ta28ad8dn1z9ex85&dl=0 2° Clase - Conceptos básicos de Electrónica]
 +
*[https://www.dropbox.com/scl/fi/nlk6svmysxtkjy8fwctqa/Clase_02_Ej_Wokwi.pptx?rlkey=mgmjcrxydb9zodycocii3d0b2&dl=0 2° Clase - Ejemplos con Wokwi]
 +
*[https://soa-unlam.com.ar/material-clase/Sistemas%20Embebidos/1C_2023/Clase_03_03_Maquinas_Estados.pptx 3° Clase - Máquinas de Estado]
 +
*[https://soa-unlam.com.ar/material-clase/Sistemas%20Embebidos/1C_2023/Tips_Maquina_Estado.pptx 3° Clase - Tips Máquina de estados]
 +
*[https://www.dropbox.com/scl/fi/a8ih2dphbkojg3o8ztuv0/Clase_04_Wokwi_Temporizador.pptx?rlkey=0nuyw3xtqsh3i2ecpuwn0nvu6&dl=0 4° Clase - Temporizadores] 
 +
*[https://www.dropbox.com/scl/fi/qp2yerar8y8id41sq76wn/7_IoT_2025.pptx?rlkey=1nix572jjbrdednd2pa23cskr&dl=0 5° Clase - Internet de la Cosas (IoT)]
 +
*[https://www.dropbox.com/scl/fi/xqm2ndhuj8zx46skl62w6/8_LPWAN_Red-LoRa-y-LoRaWAN_2025.pptx?rlkey=8y6tajxch5io9njk5soo0g5cc&dl=0 5° Clase - LPWAN-LORA]
 +
*[https://www.dropbox.com/scl/fi/55hbk1ajo3j2nwg89u0tt/Clase-Raspberry-pi.pptx?rlkey=fj4ln166fg6rvxy9g7hv6xuqu&dl=0 6° Clase - Raspberry PI]
 +
*[https://www.soa-unlam.com.ar/wiki/index.php/PUBLICO:Software_en_la_Industria_4.0_y_Grafana 7° Clase - Software en la Industria 4.0 y Grafana]
  
*[http://so-unlam.com.ar/material-clase/Sistemas%20Embebidos/01-Clase%20SE%20Galileo-Arduino.pdf 01-Clase Galileo-Arduino.pdf]
+
===Biblioteca de Sensores, Actuadores y Comunicación===
*[http://so-unlam.com.ar/material-clase/Sistemas%20Embebidos/02-Clase%20Embebidos.pdf 02-Clase Sistemas Embebidos.pdf]
 
*[http://so-unlam.com.ar/material-clase/Sistemas%20Embebidos/03-Clase%20IoT(Internet%20of%20Things).pdf 03-Clase Internet de Las Cosas(IoT).pdf]
 
*[http://so-unlam.com.ar/material-clase/Sistemas%20Embebidos/Diagramas.pdf 04-Diagramas vistos en clases.pdf]
 
*[http://so-unlam.com.ar/material-clase/Sistemas%20Embebidos/04-%20Conceptos%20de%20programaci%C3%B3n%20en%20Arduino.pdf 05-Conceptos de Programacion Arduino.pdf]
 
  
===Material Teórico ===
+
- [[PUBLICO:Biblioteca_de_sensores_y_actuadores | Información sobre dispositivos Sensores, Actuadores y comunicación. ]]
 +
- [[PUBLICO:Biblioteca_de_sensores_y_actuadores#Listado_de_Sensores | Listado de Sensores. ]]
 +
- [[PUBLICO:Biblioteca_de_sensores_y_actuadores#Listado_de_Actuadores | Listado de Actuadores. ]]
 +
- [[PUBLICO:Biblioteca_de_sensores_y_actuadores#Listado_dispositivos_de_Comunicaci.C3.B3n | Listado de Comunicación. ]]
  
==== Bibliografia de referencia ====
+
===Material Complementario generado por la Cátedra===
 +
1. En el siguiente documento se encuentra un apunte que contiene conceptos básicos de electrónica y tutoriales para aprender a utilizar Arduino empleando el simulador de Thinkercad<br />
 +
    [http://soa-unlam.com.ar/material-clase/Sistemas%20Embebidos/Apuntes%20Catedra/Apunte_Electronica_y_Arduino_en_Tinkercad.pdf Apunte Electronica y Arduino en Thinkercad ]<br />
 +
2. En el siguiente documento se encuentra un apunte que contiene conceptos acerca del funcionamiento electrónico y físico de varios sensores y actuadores que se pueden usar en Sistemas Embebidos<br />
 +
    [http://soa-unlam.com.ar/material-clase/Sistemas%20Embebidos/Apuntes%20Catedra/Apunte_Sensores_Actuadores.pdf Apunte sobre  Sensores y Actuadores para Sistemas Embebidos]<br />
 +
3. En el siguiente documento se encuentran una serie de distintos tutoriales sobre Arduino dependiendo del sensor y actuador utilizado<br />
 +
    [https://drive.google.com/file/d/15-AcHF-jvJ0ZMGJVJ76uJBnqw1OECZ77/view?usp=sharing  Apunte sobre tutoriales de Arduino]<br />
 +
4. En el siguiente documento se encuentran una serie de Notas  sobre ESP32 dependiendo del sensor y actuador utilizado<br />
 +
    [https://drive.google.com/file/d/1oGXWErMRWKgpf-fvuzQ9hzUO7zYFdC-s/view?usp=sharing Apunte sobre Tutoriales de ESP32]<br />
 +
5. En el siguiente documento se encuentran la base teórica de máquinas de estados.<br />
 +
    [http://soa-unlam.com.ar/material-clase/Sistemas%20Embebidos/2doCuatrimestre_2020/MaquinasDeEstadosFinitas.pdf  Apunte sobre máquinas de estado]
  
Elecia White - Making Embedded Systems_ Design Patterns for Great Software-O'Reilly Media (2011)
+
=Material Práctico=
 +
===Ejemplos Wokwi con ESP32 ===
  
Bruce Powel Douglass - Design Patterns for Embedded Systems in C_ An Embedded Software Engineering Toolkit-Newnes (2010)
+
'''Clase 2 : Ejemplos iniciales'''<br>
 +
*[https://wokwi.com/projects/426332895048735745 Ejemplo encender y apagar led con pulsado]
 +
*[https://wokwi.com/projects/426324153621788673 Ejemplo potenciometro]
 +
*[https://wokwi.com/projects/342135417529696851 Ejemplo PWM led con ledcwrite]
 +
*[https://wokwi.com/projects/342135417529696851 Ejemplo controlar intensidad de un led con potenciometro]
 +
*[https://wokwi.com/projects/426322663231198209 Ejemplo Sensor Ultrasonido]
 +
*[https://wokwi.com/projects/427518576140058625 Ejemplo Relé y Motor DC]
 +
*[https://wokwi.com/projects/427518558358304769 Ejemplo Servo]
 +
*[https://wokwi.com/projects/426323956437045249 Ejemplo PIR]
 +
*[https://wokwi.com/projects/426434762671988737 Ejemplo Puente H]
 +
*[https://wokwi.com/projects/427528843445537793 Ejemplo combinando Potenciometro, Servomotor y Sensor-Ultrasonido en ESP32]
  
===== Repaso de conceptos informaticos aplicables a embebidos =====
+
'''Clase 4 : Temporizadores e interrupciones externas con ESP32'''<br>
 +
*[https://wokwi.com/projects/429129071834481665 Ejemplo con Delay]
 +
*[https://wokwi.com/projects/373716060622877697 Ejemplo Temporizador por Software (Millis) en ESP32- Sin FREERTOS]
 +
*[https://wokwi.com/projects/428855226320185345 Ejemplo Temporizador por Software (vTaskDelay) en ESP32 - Con FREERTOS]
 +
*[https://wokwi.com/projects/428858283832008705 Ejemplo Temporizador por Software (xTimeCreate) en ESP32 - Con FREERTOS]
 +
*[https://wokwi.com/projects/428803753048274945 Ejemplo Temporizador por Hardware en ESP32]
 +
*[https://wokwi.com/projects/373717139651663873 Ejemplo Interrupciones externas en ESP32]
  
Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides - Design Patterns_ Elements of Reusable Object-Oriented Software-addison-wesley (1994)
+
'''Clase 4 : Maquina de estados con ESP32 y FREERTOS'''<br>
 +
Pseudocodigo que se puede usar como plantilla para hacer la maquina de estados con freertos
 +
*[https://www.dropbox.com/scl/fi/0cqvtzq8hs805zgbel3aa/Taskleersensor.c?rlkey=03jtj49eoswizdur5znta3vix&dl=0 Pseudocodigo para Maquina de estados con FreeRTOs, usando una tarea para leer un solo sensor]
 +
*[https://www.dropbox.com/scl/fi/zs1zovh9wcyw8hjs1inik/TasGetevent.c?rlkey=1629allboqus8k51yxc95loxq&dl=0 Pseudocodigo para Maquina de estados con FreeRTOs, usando una tarea para leer todos los sensores]
  
====Conceptos Indispensables====
+
  Ejemplos de maquinas de estados con FreeRTOS
  Son necesarios para aprender los conceptos fundamentales, no se puede alegar su desconocimiento. <br />
+
  *[https://wokwi.com/projects/428868405865465857 Ejemplo Maquina de estados con tablas sin FREERTOS]
* [http://so-unlam.com.ar/material-clase/Sistemas%20Embebidos/Introduccion%20a%20SE.pptx Sistemas Embebidos (SE)(Español)]
+
  *[https://wokwi.com/projects/429123178104301569 Ejemplo Maquina de estados con FREERTOS, usando temporizador xTimerCreate y tarea para leer sensores]
* [https://learn.sparkfun.com/tutorials/what-is-a-circuit ¿Qué es un Circuito? (Inglés)]
+
   
* [https://learn.sparkfun.com/tutorials/voltage-current-resistance-and-ohms-law Voltaje, Corriente y Ley de Ohm (Inglés)]
 
* [https://learn.sparkfun.com/tutorials/polarity Polaridad (Inglés)]
 
* [https://learn.sparkfun.com/tutorials/series-and-parallel-circuits Circuitos Serie y Paralelo, Resistencias y Capacitores (Inglés)]
 
* [https://learn.sparkfun.com/tutorials/light-emitting-diodes-leds Emitir luz con Diodos Led (Inglés)]
 
* [https://learn.sparkfun.com/tutorials/analog-vs-digital Señales Analógicas y Digitales(Inglés)]
 
* [https://aprendiendoarduino.wordpress.com/2017/10/22/entradas-y-salidas-digitales-arduino/ Entradas y Salidas Digitales (Español)]
 
* [https://aprendiendoarduino.wordpress.com/2017/10/22/entradas-y-salidas-analogicas-arduino-pwm/ Entradas y Salidas Analogicas y PWM (Español)]
 
  * [https://learn.sparkfun.com/tutorials/analog-to-digital-conversion Conversión de Análogico a Digital-Explicación Básica (Inglés)]
 
  * [https://aprendiendoarduino.wordpress.com/tag/conversor-analogico-digital/ Conversión de Análogico a Digital-Explicación Detallada (Español)]
 
* [https://aprendiendoarduino.wordpress.com/2016/12/18/sensores-y-actuadores/ Sensores y Actuadores (Español)]
 
* [https://learn.sparkfun.com/tutorials/pulse-width-modulation ¿Que es Modulación por Ancho de Pulso- PWM? (Inglés)]
 
* [https://learn.sparkfun.com/tutorials/i2c ¿Como funciona el bus I2C? Tutorial 1(Ingles)]
 
* [https://www.luisllamas.es/arduino-i2c/  ¿Como funciona el bus I2C? Tutorial 2(Español)]
 
* [https://www.luisllamas.es/arduino-spi/ ¿Como funciona el Bus SPI? (Español)]
 
* [https://www.luisllamas.es/arduino-puerto-serie/ ¿Como es la comunicación serie en Arduino? (Español)]
 
* [http://linuxemb.wikidot.com/tesis-c2 ¿Qué es la Compilación Cruzada/Cross Compiler?Tutorial 1 Parte1 (Español)]
 
* [http://linuxemb.wikidot.com/tesis-c3 ¿Qué es la Compilación Cruzada/Cross Compiler?Tutorial 1 Parte2 (Español)]
 
* [http://www.embeddedlinux.org.cn/rtconforembsys/5107final/LiB0010.html ¿Qué es la Compilación Cruzada/Cross Compiler?Tutorial 2 (Inglés)]
 
  * [https://aprendiendoarduino.wordpress.com/2017/03/29/que-es-iot/ ¿Que es Internet de las Cosas? (Español)]
 
  
===Conceptos Fundamentales===
+
===Ejemplos Thinkercad con Arduino ===
Evaluables<br />
 
* Sistemas Embebidos(SE)
 
* Sistemas Operativos para Sistemas embebidos
 
* Firmware
 
* Desarrollo para SE
 
* GDB
 
* Arquitectura IoT
 
  
====Conceptos recomendados====
+
'''Clase 2 : Ejemplos iniciales'''
  No son evaluables<br />
+
   
  * [https://learn.sparkfun.com/tutorials/terminal-basics Terminales Básicas(Inglés)]
+
*[https://www.tinkercad.com/things/lkBBoyrJHFD-Ejemplo-led Ejemplo simple Led]
  * [http://panamahitek.com/acelerometros-de-3-ejes-lo-que-necesitas-saber/ ¿Qué es un Acelerometro? Tutorial 1 (Español)]
+
  *[https://www.tinkercad.com/things/bHLg5sNxO5V Ejemplo Encender y Apagar Led con pulsador]  
  * [https://www.5hertz.com/index.php?route=tutoriales/tutorial&tutorial_id=2 ¿Qué es un Acelerometro? Tutorial 2 (Español)]   
+
  *[https://www.tinkercad.com/things/9pzyVkQYeEf Ejemplo Controlar la intensidad de Led con potenciometro]
  * [https://www.5hertz.com/index.php?route=tutoriales/tutorial&tutorial_id=13 ¿Qué es un Giroscopio? (Español)]
+
*[https://www.tinkercad.com/things/iXBXcJisg7y Ejemplo Sensor-Ultrasonido]
 +
*[https://www.tinkercad.com/things/9uYYm9gv5cL Ejemplo ServoMotor]
 +
*[https://www.tinkercad.com/things/ffwyZhEru7u Ejemplo Transistor y motor DC (Encendido y Apagado)]
 +
  *[https://www.tinkercad.com/things/hOQF4BXgZk3 Ejemplo Transistor y motor DC (Control de Velocidad-PWM)]
 +
  *[https://www.tinkercad.com/things/9tq6av37XQt Ejemplo Puente H y Motor DC]
 +
*[https://www.tinkercad.com/things/5hCWmIQY8Ul Ejemplo combinando Potenciometro, Servomotor y Sensor-Ultrasonido]
 +
  *[https://www.tinkercad.com/things/2RA2wv5d6X9-potenciometro Ejemplo combinando Potenciómetro, tira de Leds, Display LCD y Buzzer]
 +
*[https://www.tinkercad.com/things/agMeIkDUYPv-estacionamiento Ejemplo varios componentes: Estacionamiento (combinando sensor ultrasonio y Display  de 7 segmentos)]
  
====Libros online recomendados====
+
'''Clase 3 : Máquina de estados'''
  Libros gratuitos sobre Arduino. Contienen una gran cantidad de ejemplos sobre como conectar y hacer funcionar distintos sensores y actuadores
+
  en esta placa de desarrollo.<br />
+
  *[https://www.tinkercad.com/things/ismZLYCtVmR-estacionamiento-maquina-de-estados Ejemplo estacionamiento con Maquina de Estados]
  * [https://openlibra.com/es/book/guia-basica-de-arduino Libro Gratis "Guía Basica de Arduino" (Español)]
+
  *[https://www.tinkercad.com/things/0n7S4aIf7xJ-estacionamiento-maquina-de-estados-version-otra Ejemplo estacionamiento Maquina de estados-Otra Versión]
  * [https://openlibra.com/es/book/download/guia-del-inventor-de-arduino Libro Gratis "Guía del Inventor de Arduino" (Español)]
+
  *[https://www.tinkercad.com/things/0V42IYweGGr-maquina-de-estado-potenciometro-climatizdor- Ejemplo de Climatizador con potenciometro- uso de maquina de estado con Temporizador por Software]
 +
  *[https://www.tinkercad.com/things/8F30f7L0oA3-copy-of-maquina-de-estado-potenciometro-climatizdor- Ejemplo de Climatizador con potenciometro- uso de maquina de estado con Temporizador por Software - otro enfoque - basado en tablas - con Macro DEBUG]
 +
*[https://gitlab.com/so-unlam/Material-SOA/-/tree/master/Ejemplos%20SE Ejemplo de código de SmartWatering]
  
====Guías Practicas====
+
  '''Clase 4 : Temporizadores e interrupciones externas con Arduino'''
  No son obligatorias, pero sirven para orientar el aprendizaje.<br />
+
  <big>'''ARDUINO'''</big>
+
  *[https://www.tinkercad.com/things/lkBBoyrJHFD-ejemplo-led Ejemplo función delay (NOOO USAAAR!!!)]
  * [https://www.xataka.com/basics/arduino-raspberry-pi-que-cuales-sus-diferencias ¿Que son Arduino y Raspberry Pi?¿Cuales son sus diferencias? (Español)]  
+
  *[https://www.tinkercad.com/things/452mAp5YUS0-temporizador-por-software Ejemplo temporizador por Software en Arduino]
  * [https://aprendiendoarduino.wordpress.com/2017/06/19/arduino-vs-raspberry-pi-3/ Diferencias entre Arduino y Raspberry PI 3 (Español)]
+
  *[https://www.tinkercad.com/things/ehMPBf5WcVP-temporizador-por-hardware Ejemplo temporizador por Hardware en Arduino]
  * [https://www.5hertz.com/index.php?route=tutoriales/tutorial&category_id=3&tutorial_id=12 ¿Cuál Arduino conviene Comprar? (Español)]
+
  *[https://www.tinkercad.com/things/lCEejeTMNWl-temporizador-hibrido Ejemplo temporizador Hibrido en Arduino]
  * [https://aprendiendoarduino.wordpress.com/2017/06/18/simuladores-arduino-2/ Simuladores Arduino] <br />
+
  *[https://www.tinkercad.com/things/fzlcpEsNnCC-interrupciones-externas Ejemplo interrupciones externas en Arduino]
  <big>'''INTEL GALILEO'''</big>
+
 
  * [https://docs.google.com/document/d/1EgpWUlupV1qS-MmnVTNa1JaeHO8meF0sgJcqjwpozHA/pub Guía de para la utilización de las Placas Intel Galileo en el laboratorio 266 (Español)]
+
= Bibliografía de referencia =
* [https://software.intel.com/en-us/get-started-galileo-linux  Guía para comenzar con Galileo en Linux (Inglés)]
+
 
* [https://software.intel.com/en-us/get-started-galileo-windows Guía para comenzar con Galileo en Windows (Inglés)]
+
===Libros===
  * [https://learn.sparkfun.com/tutorials/galileo-getting-started-guide Guía para comenzar con Galileo (Inglés)]
+
En esta sección se encuentran bibliografías opcionales que se pueden usar como material complementario al brindado durante la cursada
  * [http://so-unlam.com.ar/material-clase/Sistemas%20Embebidos/Intel%20Galileo%20Board%20User%20Guide.pdf Manual de usuario de la placa Intel Galileo(Inglés)]
+
* Elecia White - Making Embedded Systems_ Design Patterns for Great Software-O'Reilly Media (2011)
  * [https://learn.sparkfun.com/tutorials/galileo-experiment-guide Código de programas de ejemplos en Galileo Parte 1(Inglés)]
+
* Bruce Powel Douglass - Design Patterns for Embedded Systems in C_ An Embedded Software Engineering Toolkit-Newnes (2010)
  * [https://www.intel.com/content/www/us/en/support/articles/000006408/boards-and-kits/intel-galileo-boards.html Código de programas de ejemplos en Galileo Parte 2(Inglés)]
+
* Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides - Design Patterns_ Elements of Reusable Object-Oriented Software-addison-wesley (1994)
  * [http://so-unlam.com.ar/moodle/mod/url/view.php?id=11 ¿Como hacer una conexión Bridge en LInux(Inglés)]
+
* C Programming Language, 2nd Edition by Brian W. Kernighan, Dennis M. Ritchie
  * [https://github.com/intel-iot-devkit/mraa/tree/master/examples Ejemplos de utilización de la librería MRAA] <br />
+
 
  <big>'''IDEAS PARA POSIBLES PROYECTOS CON ARDUINO Y RASPBERRY PI'''</big>
+
===Material Complementario externo===
  * [https://www.xataka.com/makers/46-proyectos-makers-para-hacer-verano-arduino-raspberry-pi 46 proyectos makers para hacer con Arduino Raspberry pi]
+
En el siguiente enlace se encuentran conceptos teóricos y prácticos opcionales que son complementarios a la cursada. Este contenido no fue generado por la cátedra, pero sirven para ampliar los saberes de los conceptos brindados en las clases
 +
 
 +
*[[PUBLICO: Material Complementario Externo | Material Complementario Externo]]
 +
  * [https://refactoring.guru/es/design-patterns/state Design Patterns State]
 +
  * [https://refactoring.guru/es/design-patterns/state/cpp/example Design Patterns State C++]
 +
  * [https://refactoring.guru/es/design-patterns/state/go/example Design Patterns State GO]
 +
  * [https://medium.datadriveninvestor.com/state-machine-design-pattern-part-2-state-pattern-vs-state-machine-3010dd0fcf28 State Machine Design pattern — Part 2: State Pattern vs. State Machine]
 +
 
 +
=== Material Teórico de Cursadas Anteriores===
 +
 
 +
En esta sección se encuentran las Diapositivas Teóricas  sobre Sistemas Embebidos e Internet de las Cosas que fueron dictadas en cursadas anteriores<br>
 +
*[[PUBLICO:Diapositivas SE - Cursada 2° Cuatrimestre Año 2024 | Diapositivas SE - Cursada 2° Cuatrimestre Año 2024]]
 +
  *[[PUBLICO:Diapositivas SE - Cursada 2° Cuatrimestre Año 2023 | Diapositivas SE - Cursada 2° Cuatrimestre Año 2023]]
 +
  *[[PUBLICO:Diapositivas SE - Cursada 1° Cuatrimestre Año 2023 | Diapositivas SE - Cursada 1° Cuatrimestre Año 2023]]
 +
*[[PUBLICO:Diapositivas SE - Cursada 1° Cuatrimestre Año 2022 | Diapositivas SE - Cursada 1° Cuatrimestre Año 2022]]
 +
  *[[PUBLICO:Diapositivas SE - Cursada 2° Cuatrimestre Año 2021 | Diapositivas SE - Cursada 2° Cuatrimestre Año 2021]]
 +
*[[PUBLICO:Diapositivas SE - Cursada 1° Cuatrimestre Año 2021 | Diapositivas SE - Cursada 1° Cuatrimestre Año 2021]]
 +
*[[PUBLICO:Diapositivas SE - Cursada 2° Cuatrimestre Año 2020 | Diapositivas SE - Cursada 2° Cuatrimestre Año 2020]]
 +
*[[PUBLICO:Diapositivas SE - Cursada 1° Cuatrimestre Año 2020 | Diapositivas SE - Cursada 1° Cuatrimestre Año 2020]]
 +
  *[[PUBLICO:Diapositivas SE - Cursada Año 2019 | Diapositivas SE - Cursada Año 2019]]

Revisión actual del 22:02 9 nov 2025


Menú >> PUBLICO:Portada >> PUBLICO:Material de clases >> Sistemas embebidos e Internet de las Cosas


Material Teórico

Diapositivas Teóricas dadas en clase del 1° Cuatrimestre del 2025

*1° Clase - Introduccion a S.E sensores y actuadores (ppt dada en la comisión de los Lunes)
*1° Clase - Introduccion a S.E sensores y actuadores (ppt dada en la comision de los Martes)
*2° Clase - Conceptos básicos de Electrónica
*2° Clase - Ejemplos con Wokwi
*3° Clase - Máquinas de Estado
*3° Clase - Tips Máquina de estados
*4° Clase - Temporizadores  
*5° Clase - Internet de la Cosas (IoT)
*5° Clase - LPWAN-LORA
*6° Clase - Raspberry PI
*7° Clase - Software en la Industria 4.0 y Grafana

Biblioteca de Sensores, Actuadores y Comunicación

-  Información sobre dispositivos Sensores, Actuadores y comunicación. 
-  Listado de Sensores. 
-  Listado de Actuadores. 
-  Listado de Comunicación. 

Material Complementario generado por la Cátedra

1. En el siguiente documento se encuentra un apunte que contiene conceptos básicos de electrónica y tutoriales para aprender a utilizar Arduino empleando el simulador de Thinkercad
Apunte Electronica y Arduino en Thinkercad
2. En el siguiente documento se encuentra un apunte que contiene conceptos acerca del funcionamiento electrónico y físico de varios sensores y actuadores que se pueden usar en Sistemas Embebidos
Apunte sobre Sensores y Actuadores para Sistemas Embebidos
3. En el siguiente documento se encuentran una serie de distintos tutoriales sobre Arduino dependiendo del sensor y actuador utilizado
Apunte sobre tutoriales de Arduino
4. En el siguiente documento se encuentran una serie de Notas sobre ESP32 dependiendo del sensor y actuador utilizado
Apunte sobre Tutoriales de ESP32
5. En el siguiente documento se encuentran la base teórica de máquinas de estados.
Apunte sobre máquinas de estado

Material Práctico

Ejemplos Wokwi con ESP32

Clase 2 : Ejemplos iniciales
*Ejemplo encender y apagar led con pulsado *Ejemplo potenciometro *Ejemplo PWM led con ledcwrite *Ejemplo controlar intensidad de un led con potenciometro *Ejemplo Sensor Ultrasonido *Ejemplo Relé y Motor DC *Ejemplo Servo *Ejemplo PIR *Ejemplo Puente H *Ejemplo combinando Potenciometro, Servomotor y Sensor-Ultrasonido en ESP32
Clase 4 : Temporizadores e interrupciones externas con ESP32
*Ejemplo con Delay *Ejemplo Temporizador por Software (Millis) en ESP32- Sin FREERTOS *Ejemplo Temporizador por Software (vTaskDelay) en ESP32 - Con FREERTOS *Ejemplo Temporizador por Software (xTimeCreate) en ESP32 - Con FREERTOS *Ejemplo Temporizador por Hardware en ESP32 *Ejemplo Interrupciones externas en ESP32
Clase 4 : Maquina de estados con ESP32 y FREERTOS
Pseudocodigo que se puede usar como plantilla para hacer la maquina de estados con freertos *Pseudocodigo para Maquina de estados con FreeRTOs, usando una tarea para leer un solo sensor *Pseudocodigo para Maquina de estados con FreeRTOs, usando una tarea para leer todos los sensores
Ejemplos de maquinas de estados con FreeRTOS
*Ejemplo Maquina de estados con tablas sin FREERTOS
*Ejemplo Maquina de estados con FREERTOS, usando temporizador xTimerCreate y tarea para leer sensores

Ejemplos Thinkercad con Arduino

Clase 2 : Ejemplos iniciales

*Ejemplo simple Led
*Ejemplo Encender y Apagar Led con pulsador 
*Ejemplo Controlar la intensidad de Led con potenciometro
*Ejemplo Sensor-Ultrasonido
*Ejemplo ServoMotor
*Ejemplo Transistor y motor DC (Encendido y Apagado)
*Ejemplo Transistor y motor DC (Control de Velocidad-PWM)
*Ejemplo Puente H y Motor DC
*Ejemplo combinando Potenciometro, Servomotor y Sensor-Ultrasonido
*Ejemplo combinando Potenciómetro, tira de Leds, Display LCD y Buzzer
*Ejemplo varios componentes: Estacionamiento (combinando sensor ultrasonio y Display  de 7 segmentos)
Clase 3 : Máquina de estados

*Ejemplo estacionamiento con Maquina de Estados
*Ejemplo estacionamiento Maquina de estados-Otra Versión
*Ejemplo de Climatizador con potenciometro- uso de maquina de estado con Temporizador por Software
*Ejemplo de Climatizador con potenciometro- uso de maquina de estado con Temporizador por Software - otro enfoque - basado en tablas - con Macro DEBUG
*Ejemplo de código de SmartWatering
Clase 4 : Temporizadores e interrupciones externas con Arduino

*Ejemplo función delay (NOOO USAAAR!!!)
*Ejemplo temporizador por Software en Arduino
*Ejemplo temporizador por Hardware en Arduino
*Ejemplo temporizador Hibrido en Arduino
*Ejemplo interrupciones externas en Arduino

Bibliografía de referencia

Libros

En esta sección se encuentran bibliografías opcionales que se pueden usar como material complementario al brindado durante la cursada

  • Elecia White - Making Embedded Systems_ Design Patterns for Great Software-O'Reilly Media (2011)
  • Bruce Powel Douglass - Design Patterns for Embedded Systems in C_ An Embedded Software Engineering Toolkit-Newnes (2010)
  • Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides - Design Patterns_ Elements of Reusable Object-Oriented Software-addison-wesley (1994)
  • C Programming Language, 2nd Edition by Brian W. Kernighan, Dennis M. Ritchie

Material Complementario externo

En el siguiente enlace se encuentran conceptos teóricos y prácticos opcionales que son complementarios a la cursada. Este contenido no fue generado por la cátedra, pero sirven para ampliar los saberes de los conceptos brindados en las clases

* Material Complementario Externo
* Design Patterns State
* Design Patterns State C++
* Design Patterns State GO
* State Machine Design pattern — Part 2: State Pattern vs. State Machine

Material Teórico de Cursadas Anteriores

En esta sección se encuentran las Diapositivas Teóricas  sobre Sistemas Embebidos e Internet de las Cosas que fueron dictadas en cursadas anteriores
* Diapositivas SE - Cursada 2° Cuatrimestre Año 2024 * Diapositivas SE - Cursada 2° Cuatrimestre Año 2023 * Diapositivas SE - Cursada 1° Cuatrimestre Año 2023 * Diapositivas SE - Cursada 1° Cuatrimestre Año 2022 * Diapositivas SE - Cursada 2° Cuatrimestre Año 2021 * Diapositivas SE - Cursada 1° Cuatrimestre Año 2021 * Diapositivas SE - Cursada 2° Cuatrimestre Año 2020 * Diapositivas SE - Cursada 1° Cuatrimestre Año 2020 * Diapositivas SE - Cursada Año 2019