Diferència entre revisions de la pàgina «Curs pràctic de programació d'electrònica encastada de baix cost per a la Internet de les Coses. Edició 27 i 28 d'abril de 2022»
m (→MQTT) |
|||
(Hi ha 4 revisions intermèdies del mateix usuari que no es mostren) | |||
Línia 7: | Línia 7: | ||
[https://raw.githubusercontent.com/AchimPieters/esp32-homekit-camera/master/Images/ESP32-30PIN-DEVBOARD.png Distribució de pins a l'ESP32-VROOM] | [https://raw.githubusercontent.com/AchimPieters/esp32-homekit-camera/master/Images/ESP32-30PIN-DEVBOARD.png Distribució de pins a l'ESP32-VROOM] | ||
− | [https://www.binefa.cat/training/iot02/pdf/iot02_00_ca.pdf Introducció a la placa IoT-02] | + | [https://www.binefa.cat/training/iot02/pdf/iot02_00_ca.pdf Introducció a la placa IoT-02] (Formes de programar la [[Placa IoT-02 | placa IoT-02]]) |
= Exemples bàsics d'actuadors = | = Exemples bàsics d'actuadors = | ||
Línia 120: | Línia 120: | ||
<!-- [https://upcommons.upc.edu/handle/2099.3/36355 Automatismos eléctricos programables] --> | <!-- [https://upcommons.upc.edu/handle/2099.3/36355 Automatismos eléctricos programables] --> | ||
= Més documentació = | = Més documentació = | ||
+ | [[Uso del NodeRED (2022) | Uso del NodeRED]] | ||
+ | |||
[[Afegir l'ESP32 a l'IDE d'Arduino]] | [[Afegir l'ESP32 a l'IDE d'Arduino]] | ||
Línia 130: | Línia 132: | ||
[https://www.binefa.cat/doc/Dropbox/Public/oshw20161129/20161129_00.pdf Arduino i Raspberry Pi (3/4)] i | [https://www.binefa.cat/doc/Dropbox/Public/oshw20161129/20161129_00.pdf Arduino i Raspberry Pi (3/4)] i | ||
[https://www.binefa.cat/doc/Dropbox/Public/oshw20161201/20161201_00.pdf Arduino i Raspberry Pi (4/4)] | [https://www.binefa.cat/doc/Dropbox/Public/oshw20161201/20161201_00.pdf Arduino i Raspberry Pi (4/4)] | ||
+ | |||
+ | [https://www.binefa.cat/training/ceic/20220427/ Repositori amb els materials del curset del 27 d'abril de 2022] |
Revisió de 08:49, 22 feb 2023
Curs pràctic de programació d'electrònica "embedded low-cost" per a la IoT. Online en Directe a la pàgina del Centre de Formació i Ocupació del Col·legi d'Enginyers Industrials de Catalunya. Edició 27 i 28 d'abril de 2022
Contingut
Microcontroladors d'escala petita[modifica]
Microcontroladors d'escala mitjana[modifica]
Distribució de pins a l'ESP32-VROOM
Introducció a la placa IoT-02 (Formes de programar la placa IoT-02)
Exemples bàsics d'actuadors[modifica]
Control de 4 leds amb ESP32[modifica]
Control de quatre leds al Wokwi IoT-02_01_leds.ino al GitHub
Control d'un relé[modifica]
Set / Reset amb un parell de relés sense microcontrolador simulat a Wokwi
Circuit d'enclavament al TinkerCad
Arduino Uno[modifica]
Control d'un relé a Wokwi emprant Arduino Uno
ESP32[modifica]
Control d'un relé a Wokwi emprant ESP32
Servomotors[modifica]
Arduino Uno[modifica]
Potenciòmetre controlant la posició d'un servo emprant Arduino Uno
Escombrat de posicions d'un servo emprant Arduino Uno
Arduino Mega[modifica]
Exemple de control de 31 servos
ESP32[modifica]
Biblioteca de control de servomotors per a ESP32 a l'IDE d'Arduino
Simulació a Wokwi d'un servo amb ESP32 tenint permisos per a pujar biblioteques
Simulació a Wokwi d'un servo amb ESP32 sense tenir permisos per a pujar biblioteques
Exemples bàsics de sensòrica[modifica]
Entrades digitals: Pàgines 7 a 9
Detecció de final de carrera[modifica]
Control de leds amb botons al Wokwi IoT-02_03_inputs.ino al GitHub
Nivell de lluminositat[modifica]
Lectura de l'LDR al Wokwi IoT-02_05_ldr.ino al GitHub
Mesura de distància per ultrasons[modifica]
Mesura de distància per ultrasons amb ESP32 al Wokwi
Mesura d'inclinacions i acceleracions[modifica]
Mesura d'inclinacions i acceleracions. Arduino Uno + MPU6050 amb Arduino Uno al Wokwi
Visualització gràfica d'inclinacions i acceleracions. Arduino Uno + MPU6050 amb Arduino Uno al Wokwi
Plotter bàsic[modifica]
Plotter bàsic amb ESP32 al Wokwi
Recordant d'afegir una coma al principi per a mantenir el format json, hem afegit al final de l'arxiu diagram.json:
"serialMonitor": { "display": "plotter" }
- Exemple amb dispositiu físic: s4a_joystick_grafica.zip
Mesura d'humitat i temperatura[modifica]
Mesura d'humitat i temperatura amb ESP32 al Wokwi
Mesura de temperatura emprant un termistor de tipus NTC amb ESP32 al Wokwi
Conversió digital/analògica (DAC)[modifica]
Seguint l'exemple ESP32 Arduino IDE code for DAC s'ha fet aquest exemple de DAC per a ESP32 a Wokwi. A la versió actual de Wokwi no es pot veure la il·luminació variant del led.
Exercicis[modifica]
Graficació dels valors de temperatura i humitat[modifica]
Basant-vos amb l'exemple Mesura d'humitat i temperatura amb ESP32 al Wokwi, visualitzeu gràficament els valors de temperatura i humitat. Recordeu de modificar l'arxiu diagram.json.
Serial.print(data.temperature); Serial.print(","); Serial.print(data.humidity); Serial.println("");
Sistema de tres leds que ens indica la temperatura de comfort[modifica]
Seguint els consells de Determining Thermal Comfort Using a Humidity and Temperature Sensor volem fer un sistema amb tres leds de colors. Basant-vos en l'exemple Mesura de temperatura emprant un termistor de tipus NTC amb ESP32 al Wokwi i l'article anterior seguint la norma ISO7730 (i ignorant l'efecte de la humitat relativa), afegiu tres leds de colors (blau, verd i vermell). El led blau s'encendrà quan la temperatura estigui per sota de 20ºC (els altres dos leds hauran d'estar apagats). El led verd s'encendrà quan la temperatura estigui entre 20ºC i 26ºC (els altres dos leds hauran d'estar apagats). El led vermell s'encendrà quan la temperatura sigui superior a 26ºC (els altres dos leds hauran d'estar apagats).
Comunicació amb components. Protocols I2C, SPI i UART[modifica]
I2C[modifica]
Escaneig d'adreces I2C Codis IoT-02_06_i2cScanner al GitHub
Lectura de l'LDR a la pantalla OLED al Wokwi Codis IoT-02_07_SSD1306 al GitHub
MQTT[modifica]
Introducció al protocol MQTT, el protocol més emprat a Internet de les Coses.
esp32_DT.xml funcionant amb un exemple Qt amb WebAssembly
peticioMqttSincrona.xml per a funcionar amb el simulador ESP32 amb MQTT rebent peticions síncrones del valor llegit a l'LDR
Simuladors en línia[modifica]
onlinegdb. Simulador de codi en diferents llenguatges de programació
Simulador SPICE d'Infineon (cal registrar-se)
Més documentació[modifica]
Afegir l'ESP32 a l'IDE d'Arduino
Vídeo introductorio a la placa IoT-02 basada en ESP32
Vídeo de instalación del IDE de Arduino para la placa IoT-02 basada en ESP32
Arduino i Raspberry Pi (1/4), Arduino i Raspberry Pi (2/4), Arduino i Raspberry Pi (3/4) i Arduino i Raspberry Pi (4/4)
Repositori amb els materials del curset del 27 d'abril de 2022