Diferència entre revisions de la pàgina «DAM 2024-2025»
m (→20250304) |
m (→20250425) |
||
(Hi ha 41 revisions intermèdies del mateix usuari que no es mostren) | |||
Línia 14: | Línia 14: | ||
= Algunes classes = | = Algunes classes = | ||
+ | == 20250429 == | ||
+ | * Desenvolupament del projecte final. | ||
+ | == 20250428 == | ||
+ | * Classe anul·lada per apagada elèctrica | ||
+ | * Desenvolupament del projecte final. | ||
+ | == 20250425 == | ||
+ | * Desenvolupament del projecte final. | ||
+ | |||
+ | == 20250422 - Projecte final == | ||
+ | * Comença el desenvolupament del projecte final. | ||
+ | |||
+ | == 20250411 == | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250408 - Examen 3r T == | ||
+ | * [https://recull.binefa.cat/files/20250408exSm7Pj9_3rT/ Prova epistemològica del tercer trimestre del SM7 i PJ9]. | ||
+ | |||
+ | == 20250407 == | ||
+ | * Comentem la prova epistemològica de l'any passat | ||
+ | * Repassem els tests unitaris que vam fer al projecte de QML ''test02'' | ||
+ | * Dubtes | ||
+ | == 20250404 == | ||
+ | * Seguim amb la [[Introducció al testing]] emprant Qt/QML | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250401 == | ||
+ | * [[Introducció al testing]] | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250331 == | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250328 == | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250325 == | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250324 == | ||
+ | * Pràctiques noves: '''M04''' (programa en Qt de control de la placa mitjançant ModBus) i '''M05''' (programa en QML de control de la placa mitjançant ModBus) | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250321 == | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250318 == | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250317 == | ||
+ | * Com treure senyals pel port sèrie de la placa IoT-02 | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250314 == | ||
+ | * [https://ca.wikipedia.org/wiki/SCADA Sistemes SCADA] | ||
+ | * [[Modbus RTU]] | ||
+ | * Fent servir l'eina de manteniment de les Qt feu la instal·lació de les biblioteques addicionals [https://doc.qt.io/qt-6/qserialport.html QSerialPort] i [https://doc.qt.io/qt-6/qtserialbus-index.html QtSerialBus] (M00.2) | ||
+ | * [https://doc.qt.io/qt-6/qtserialport-terminal-example.html Serial Terminal] Exemple estàndard de les Qt per a fer ús de [https://doc.qt.io/qt-6/qserialport.html QSerialPort] (M00.3) | ||
+ | * [https://recull.binefa.cat/files/material/modbus/m01_3_00.zip Ús de QSerialPort] Codi minimitzat d'ús de QSerialPort (M00.4) | ||
+ | * Pràctiques noves per a fer: | ||
+ | - '''M00.1''' (prova del terminal sèrie), '''M00.2''' (instal·lació de QSerialPort), '''M00.3''' (prova de [https://doc.qt.io/qt-6/qtserialport-terminal-example.html Serial Terminal]) i '''M00.4''' (exemple minimalista d'ús de QSerialPort) | ||
+ | |||
+ | - '''M02''' (ús de [https://github.com/jordibinefa/IoT-02/tree/master/codes/python/modbus mb_IoT_00.py] per a ModBus) | ||
+ | |||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250310 == | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | |||
+ | == 20250307 == | ||
+ | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
+ | * Per a treballar amb la versió 2 de la biblioteca ''paho-mqtt'' ([https://recull.binefa.cat/files/doc/paho_v2/ Versió descarregable]) | ||
+ | |||
+ | Obriu a un terminal: | ||
+ | python3 -m venv mqtt_env | ||
+ | source mqtt_env/bin/activate | ||
+ | pip install paho-mqtt | ||
+ | python subscript2.py | ||
+ | |||
+ | Obriu a un altre terminal: | ||
+ | source mqtt_env/bin/activate | ||
+ | python publicador2.py | ||
+ | |||
+ | * subscript2.py: | ||
+ | import paho.mqtt.client as mqtt | ||
+ | |||
+ | # Configuració del broker MQTT | ||
+ | BROKER_ADDRESS = "broker.emqx.io" | ||
+ | PORT = 1883 | ||
+ | TOPIC = "prova/mqtt" # Substitueix amb el teu tema | ||
+ | |||
+ | def on_connect(client, userdata, flags, rc, properties=None): | ||
+ | """Callback quan el client es connecta al broker.""" | ||
+ | if rc == 0: | ||
+ | print("Connectat al broker MQTT!") | ||
+ | client.subscribe(TOPIC, qos=0) # Subscriu-te al tema | ||
+ | else: | ||
+ | print(f"Connexió fallida amb codi {rc}") | ||
+ | |||
+ | def on_message(client, userdata, msg): | ||
+ | """Callback quan es rep un missatge.""" | ||
+ | print(f"Missatge rebut al tema '{msg.topic}': {msg.payload.decode()}") | ||
+ | |||
+ | def main(): | ||
+ | client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2) # Utilitza la versió 2 de l'API de callbacks | ||
+ | client.on_connect = on_connect | ||
+ | client.on_message = on_message | ||
+ | |||
+ | client.connect(BROKER_ADDRESS, PORT, 60) # Connecta't al broker | ||
+ | |||
+ | client.loop_forever() # Manté el client en bucle per rebre missatges | ||
+ | |||
+ | if __name__ == "__main__": | ||
+ | main() | ||
+ | * publicador2.py: | ||
+ | import paho.mqtt.client as mqtt | ||
+ | import time | ||
+ | |||
+ | # Configuració del broker MQTT | ||
+ | BROKER_ADDRESS = "broker.emqx.io" | ||
+ | PORT = 1883 | ||
+ | TOPIC = "prova/mqtt" # El mateix tema que el subscriptor | ||
+ | |||
+ | def on_connect(client, userdata, flags, rc, properties=None): | ||
+ | """Callback quan el client es connecta al broker.""" | ||
+ | if rc == 0: | ||
+ | print("Connectat al broker MQTT!") | ||
+ | else: | ||
+ | print(f"Connexió fallida amb codi {rc}") | ||
+ | |||
+ | def main(): | ||
+ | client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2) | ||
+ | client.on_connect = on_connect | ||
+ | |||
+ | client.connect(BROKER_ADDRESS, PORT, 60) | ||
+ | client.loop_start() # Inicia el bucle en un fil separat | ||
+ | |||
+ | try: | ||
+ | while True: | ||
+ | message = f"Missatge publicat a les {time.strftime('%H:%M:%S')}" | ||
+ | client.publish(TOPIC, message, qos=0) | ||
+ | print(f"Publicat: {message}") | ||
+ | time.sleep(5) # Publica un missatge cada 5 segons | ||
+ | except KeyboardInterrupt: | ||
+ | print("Publicació interrompuda.") | ||
+ | finally: | ||
+ | client.loop_stop() | ||
+ | client.disconnect() | ||
+ | |||
+ | if __name__ == "__main__": | ||
+ | main() | ||
+ | |||
== 20250304 == | == 20250304 == | ||
* Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | * Seguim fent els exercicis pendents del [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
* Afegits '''A10.3''', '''A17.07''' i '''A17.08''' al [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | * Afegits '''A10.3''', '''A17.07''' i '''A17.08''' al [[Recull de pràctiques de 2n de DAM. Curs 2024-2025 | recull de pràctiques]] | ||
=== Desenvolupament d'una API en NodeRed. Pasarel·la '''HTTP a MQTT''' === | === Desenvolupament d'una API en NodeRed. Pasarel·la '''HTTP a MQTT''' === | ||
+ | <!-- [http://formacio.things.cat:2345/mqtt?"payload=alumneDam2&topic=programador" HTTP a MQTT] --> | ||
+ | |||
[[Image:Nodered20220402e00.png|center|Flux HTTP a MQTT]] | [[Image:Nodered20220402e00.png|center|Flux HTTP a MQTT]] | ||
Línia 36: | Línia 189: | ||
msg.payload = "Tema: "+msg.req.query['topic']+", missatge: "+msg.req.query['payload']; | msg.payload = "Tema: "+msg.req.query['topic']+", missatge: "+msg.req.query['payload']; | ||
return msg; | return msg; | ||
+ | |||
=== Captura de la resposta web === | === Captura de la resposta web === | ||
'''curl "http://iot.electronics.cat:2222/mqtt2?topic=/7C9EBDEA5BA0/ledW&&payload=0"''' | '''curl "http://iot.electronics.cat:2222/mqtt2?topic=/7C9EBDEA5BA0/ledW&&payload=0"''' | ||
Línia 44: | Línia 198: | ||
=== '''paho-mqtt''' i Python === | === '''paho-mqtt''' i Python === | ||
# pip install paho-mqtt | # pip install paho-mqtt | ||
+ | |||
+ | [https://www.emqx.com/en/blog/how-to-use-mqtt-in-python MQTT in Python with Paho Client: Beginner's Guide 2024] | ||
A una cel·la del jupyter-lab (si no el teniu, el podeu instal·lar seguint [https://jupyter.org/install aquestes instruccions]): | A una cel·la del jupyter-lab (si no el teniu, el podeu instal·lar seguint [https://jupyter.org/install aquestes instruccions]): | ||
Línia 968: | Línia 1.124: | ||
[http://silanus.fr/sin/?p=1194 MQTT avec Qt] | [http://silanus.fr/sin/?p=1194 MQTT avec Qt] | ||
+ | [[Introducció al testing]] | ||
=== Placa IoT-02 === | === Placa IoT-02 === | ||
[[Placa IoT-02]] | [[Placa IoT-02]] |
Revisió de 13:15, 29 abr 2025
Quan tingueu les credencials d'accés a la NET heu de compartir una carpeta amb aquest nom: 2425-DAM-1rCognom2nCognomNom (Per exemple, si el vostre nom és Xavier López Pujol --> 2425-DAM-LopezPujolXavier). Heu de compartir-la amb el professor transversal dels projectes globals i amb mi. A aquest enllaç podreu veure si ja hi sou a la llista:
Carpetes compartides de 2n de DAM. Curs 2024-2025
Contingut
- 1 Enllaços ràpids
- 2 Algunes classes
- 2.1 20250429
- 2.2 20250428
- 2.3 20250425
- 2.4 20250422 - Projecte final
- 2.5 20250411
- 2.6 20250408 - Examen 3r T
- 2.7 20250407
- 2.8 20250404
- 2.9 20250401
- 2.10 20250331
- 2.11 20250328
- 2.12 20250325
- 2.13 20250324
- 2.14 20250321
- 2.15 20250318
- 2.16 20250317
- 2.17 20250314
- 2.18 20250310
- 2.19 20250307
- 2.20 20250304
- 2.21 20250228
- 2.22 20250225
- 2.23 20250224
- 2.24 20250221
- 2.25 20250218
- 2.26 20250217
- 2.27 20250214
- 2.28 20250211
- 2.29 20250210
- 2.30 20250204
- 2.31 20250203
- 2.32 20250131
- 2.33 20250128
- 2.34 20250127
- 2.35 20250124
- 2.36 20250121
- 2.37 20250120
- 2.38 20250118
- 2.39 20250114
- 2.40 20250113
- 2.41 20250110
- 2.42 20241220
- 2.43 20241217
- 2.44 20241216
- 2.45 20241213
- 2.46 20241210
- 2.47 20241209
- 2.48 20241202
- 2.49 20241129
- 2.50 20241126
- 2.51 20241125 - QML
- 2.52 20241125 - NodeRed
- 2.53 20241119 Examen 1r T
- 2.54 20241118
- 2.55 20241115
- 2.56 20241112
- 2.57 20241111
- 2.58 20241108
- 2.59 20241105
- 2.60 20241104
- 2.61 20241029
- 2.62 20241028
- 2.63 20241025
- 2.64 20241022
- 2.65 20241021
- 2.66 20241018
- 2.67 20241015
- 2.68 20241014
- 2.69 20241011
- 2.70 20241008
- 2.71 20241007
- 2.72 20241004
- 2.73 20241001
- 2.74 20240930
- 2.75 20240927
- 2.76 20240923
- 2.77 20240920
- 2.78 20240917
- 2.79 20240916 (2h + 1h)
- 2.80 20241119 Examen 1r T
- 2.81 20241118
- 2.82 20241115
- 2.83 20241112
- 2.84 20241111
- 2.85 20241108
- 2.86 20241105
- 2.87 20241104
- 2.88 20241029
- 2.89 20241028
- 2.90 20241025
- 2.91 20241022
- 2.92 20241021
- 2.93 20241018
- 2.94 20241015
- 2.95 20241014
- 2.96 20241011
- 2.97 20241008
- 2.98 20241007
- 2.99 20241004
- 2.100 20241001
- 2.101 20240930
- 2.102 20240927
- 2.103 20240923
- 2.104 20240920
- 2.105 20240917
- 2.106 20240916 (2h + 1h)
- 3 Repositori de codis fet a classe durant el curs
- 4 Documentació
Enllaços ràpids
Recull de pràctiques de 2n de DAM. Curs 2024-2025
Recull de codis fets a classe. Curs 2024-2025
Algunes classes
20250429
- Desenvolupament del projecte final.
20250428
- Classe anul·lada per apagada elèctrica
- Desenvolupament del projecte final.
20250425
- Desenvolupament del projecte final.
20250422 - Projecte final
- Comença el desenvolupament del projecte final.
20250411
- Seguim fent els exercicis pendents del recull de pràctiques
20250408 - Examen 3r T
20250407
- Comentem la prova epistemològica de l'any passat
- Repassem els tests unitaris que vam fer al projecte de QML test02
- Dubtes
20250404
- Seguim amb la Introducció al testing emprant Qt/QML
- Seguim fent els exercicis pendents del recull de pràctiques
20250401
- Introducció al testing
- Seguim fent els exercicis pendents del recull de pràctiques
20250331
- Seguim fent els exercicis pendents del recull de pràctiques
20250328
- Seguim fent els exercicis pendents del recull de pràctiques
20250325
- Seguim fent els exercicis pendents del recull de pràctiques
20250324
- Pràctiques noves: M04 (programa en Qt de control de la placa mitjançant ModBus) i M05 (programa en QML de control de la placa mitjançant ModBus)
- Seguim fent els exercicis pendents del recull de pràctiques
20250321
- Seguim fent els exercicis pendents del recull de pràctiques
20250318
- Seguim fent els exercicis pendents del recull de pràctiques
20250317
- Com treure senyals pel port sèrie de la placa IoT-02
- Seguim fent els exercicis pendents del recull de pràctiques
20250314
- Sistemes SCADA
- Modbus RTU
- Fent servir l'eina de manteniment de les Qt feu la instal·lació de les biblioteques addicionals QSerialPort i QtSerialBus (M00.2)
- Serial Terminal Exemple estàndard de les Qt per a fer ús de QSerialPort (M00.3)
- Ús de QSerialPort Codi minimitzat d'ús de QSerialPort (M00.4)
- Pràctiques noves per a fer:
- M00.1 (prova del terminal sèrie), M00.2 (instal·lació de QSerialPort), M00.3 (prova de Serial Terminal) i M00.4 (exemple minimalista d'ús de QSerialPort)
- M02 (ús de mb_IoT_00.py per a ModBus)
- Seguim fent els exercicis pendents del recull de pràctiques
20250310
- Seguim fent els exercicis pendents del recull de pràctiques
20250307
- Seguim fent els exercicis pendents del recull de pràctiques
- Per a treballar amb la versió 2 de la biblioteca paho-mqtt (Versió descarregable)
Obriu a un terminal:
python3 -m venv mqtt_env source mqtt_env/bin/activate pip install paho-mqtt python subscript2.py
Obriu a un altre terminal:
source mqtt_env/bin/activate python publicador2.py
- subscript2.py:
import paho.mqtt.client as mqtt # Configuració del broker MQTT BROKER_ADDRESS = "broker.emqx.io" PORT = 1883 TOPIC = "prova/mqtt" # Substitueix amb el teu tema def on_connect(client, userdata, flags, rc, properties=None): """Callback quan el client es connecta al broker.""" if rc == 0: print("Connectat al broker MQTT!") client.subscribe(TOPIC, qos=0) # Subscriu-te al tema else: print(f"Connexió fallida amb codi {rc}") def on_message(client, userdata, msg): """Callback quan es rep un missatge.""" print(f"Missatge rebut al tema '{msg.topic}': {msg.payload.decode()}") def main(): client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2) # Utilitza la versió 2 de l'API de callbacks client.on_connect = on_connect client.on_message = on_message client.connect(BROKER_ADDRESS, PORT, 60) # Connecta't al broker client.loop_forever() # Manté el client en bucle per rebre missatges if __name__ == "__main__": main()
- publicador2.py:
import paho.mqtt.client as mqtt import time # Configuració del broker MQTT BROKER_ADDRESS = "broker.emqx.io" PORT = 1883 TOPIC = "prova/mqtt" # El mateix tema que el subscriptor def on_connect(client, userdata, flags, rc, properties=None): """Callback quan el client es connecta al broker.""" if rc == 0: print("Connectat al broker MQTT!") else: print(f"Connexió fallida amb codi {rc}") def main(): client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2) client.on_connect = on_connect client.connect(BROKER_ADDRESS, PORT, 60) client.loop_start() # Inicia el bucle en un fil separat try: while True: message = f"Missatge publicat a les {time.strftime('%H:%M:%S')}" client.publish(TOPIC, message, qos=0) print(f"Publicat: {message}") time.sleep(5) # Publica un missatge cada 5 segons except KeyboardInterrupt: print("Publicació interrompuda.") finally: client.loop_stop() client.disconnect() if __name__ == "__main__": main()
20250304
- Seguim fent els exercicis pendents del recull de pràctiques
- Afegits A10.3, A17.07 i A17.08 al recull de pràctiques
Desenvolupament d'una API en NodeRed. Pasarel·la HTTP a MQTT
Apagant led blanc:
Encenent led blanc:
- Funció bridge:
msg.topic = msg.req.query['topic']; msg.payload = msg.req.query['payload']; return msg;
- Funció response:
msg.payload = "Tema: "+msg.req.query['topic']+", missatge: "+msg.req.query['payload']; return msg;
Captura de la resposta web
curl "http://iot.electronics.cat:2222/mqtt2?topic=/7C9EBDEA5BA0/ledW&&payload=0" Tema: /7C9EBDEA5BA0/ledW, missatge: 0
Es pot redireccionar la resposta a un arxiu:
curl "http://iot.electronics.cat:2222/mqtt2?topic=/7C9EBDEA5BA0/ledW&&payload=0" > resposta.txt
paho-mqtt i Python
# pip install paho-mqtt
MQTT in Python with Paho Client: Beginner's Guide 2024
A una cel·la del jupyter-lab (si no el teniu, el podeu instal·lar seguint aquestes instruccions):
import random import paho.mqtt.subscribe as subscribe import paho.mqtt.client as mqtt import paho.mqtt.properties as properties mqttc = mqtt.Client('idClient-'+str(random.randrange(100000,999999))) # mqttc.username_pw_set("usuari","contrasenya"); mqttc.connect("broker.emqx.io", 1883) def on_message(clientId, userdata, message): msg = str(message.payload.decode("utf-8")) print('topic = ', message.topic) print('payload = ', msg) mqttc.on_message = on_message mqttc.subscribe('topicName')
A una altra cel·la del jupyter-lab:
mqttc.loop_start()
Usuari i contrasenya a MQTT emprant Paho
- Publicació MQTT des de Paho:
mqttc.publish('topicName','Escola del clot')
20250228
- Seguim fent els exercicis pendents del recull de pràctiques
20250225
20250224
- Seguim fent els exercicis pendents del recull de pràctiques
20250221
- Seguim fent els exercicis pendents del recull de pràctiques
20250218
Metacognició de síntesi (A11) de la part d'IoT del 2n trimestre
20250217
- Afegit l'exercici A13.03 que és l'examen de la part de Qt i QML dels curs passat.
- Afegit l'exercici A13.04 que és el joc de pedra, paper i tisora.
- Snap! de proves MQTT
20250214
- Intel·ligència Artificial:
- Connexió amb Gemini Cal una clau d'API (API key) (Guia ràpida d'ús a l'API de Gemini)
- Reconeixement de veu amb Snap! (Accés directe al projecte amb Snap!)
- Yolo v5 al mòbil
- Afegit l'exercici A14.9 que tracta de desenvolupar un xat de Telegram que dialoga amb l'API de Gemini. Seguim fent els exercicis pendents del recull de pràctiques
20250211
- Seguim fent els exercicis pendents del recull de pràctiques
20250210
- Seguim fent els exercicis pendents del recull de pràctiques
20250204
- Seguim fent els exercicis pendents del recull de pràctiques
20250203
- rps20af: Ús de SwipeView. Pàgines lliscables arrosegant-les
- rps21af: Ús del repetidor a PaginaJoc.qml . Model numèric
- rps22af: Ús del repetidor a PaginaJoc.qml . Model emprant cadenes
- rps23af: Ús del repetidor a PaginaJoc.qml . Model emprant tipus múltiples
- rps24af: Canvi de les lletres a imatges al control
- rps25af: Nou component ControlButtons. Ús de senyals des de subcomponents
- rps26af: Incorporació de l'aleatorietat i visualització del joc de l'usuari i de l'aplicació
- rps27af: Nou component VistaJugada
- rps28af: Transicions d'opacitat
- rps29af: Transicions seqüencials
- rps30af: Rotació de les imatges (rps30af.apk)
20250131
- Codi amb SwipeView i transicions
- Seguim fent els exercicis pendents del recull de pràctiques
20250128
- Si teniu problemes de visualització d'imatges emprant l'arxiu de recursos .qrc afegiu a CMakeLists.txt:
set(CMAKE_AUTORCC ON)
- Seguim fent els exercicis pendents del recull de pràctiques
20250127
- Seguim fent els exercicis pendents del recull de pràctiques
20250124
- LoRaWAN. Curs 2024-2025
- Exercicis A17.01 i A17.02 del recull de pràctiques
- Seguim fent els exercicis pendents del recull de pràctiques
20250121
Doneu-vos d'alta a The Things Network
Doneu-vos d'alta a una instància de Mastodon que permet fer bots
- Seguim fent els exercicis pendents del recull de pràctiques
20250120
Instal·lació de Grafana a Debian o Ubuntu
Instal·lació de Grafana a Windows
- Feu l'exercici A14.5 del recull de pràctiques.
- Si no l'heu finalitzat, acabeu l'exercici A14.8 del recull de pràctiques
- Seguiu fent l'exercici A08.04 del joc de Pedra, Paper i Tisora del recull de pràctiques.
- Feu els exercicis A17.05 i A17.06 del recull de pràctiques que us fan visualitzar a Grafana les dades emmagatzemades a MariaDB.
20250118
- Dubtes
- Part Qt/QML:
- Aquests dos trossos de codi els podeu trobar dins a rps06.zip.
property int angleLletra: 0 transform: Rotation { axis { x: 0 y: 1 z: 0 } origin.x: rect00.width/2 origin.y: rect00.height/2 angle: rect00.angleLletra }
Transition { from: "*" to: "usuariGuanya" //reversible: true ParallelAnimation{ ColorAnimation{ to: "lime" duration: 500 } NumberAnimation { target: rect00 property: "angleLletra" duration: 500 // loops: Animation.Infinite easing.type: Easing.InOutQuad // easing.type: Easing.InOutBounce } }
- Part IoT:
Ús de MariaDB per emmagatzemar dades de la Internet de les Coses
Ús de la base de dades MariaDB des de NodeRED
- Feu l'exercici A14.8 del recull de pràctiques
20250114
- Dubtes
- Seguim amb la Connexió del frontal en QML amb el rerefons en C++ (Q_PROPERTY i Q_INVOKABLE)
- Seguim amb la implementació del joc pedra, paper o tisora (RPS) en QML.
20250113
- Dubtes
- Seguim amb la Connexió del frontal en QML amb el rerefons en C++ (Q_PROPERTY i Q_INVOKABLE)
- Implementació del joc pedra, paper o tisora (RPS) en QML.
20250110
- Dubtes
- Connexió del frontal en QML amb el rerefons en C++ (Q_PROPERTY i Q_INVOKABLE)
Codis explicats el dia d'avui (Exemple de rerefons emprant Q_INVOKABLE)
20241220
- Dubtes
- Seguim fent una ullada als codis QML amb estats i animacions de color
- Documentació QML: Qt6 QML Book (Codis del Qt6 QML Book al GitHub)
- Feu els exercicis pendents del recull de pràctiques
20241217
- Dubtes
- Fem una ullada als codis QML amb estats i animacions de color
- Documentació QML: Qt6 QML Book (Codis del Qt6 QML Book al GitHub)
- Feu els exercicis pendents del recull de pràctiques
20241216
- Dubtes
- Fem córrer QML sobre Android una aplicació emprant MQTT pràctica A13.02 del recull de pràctiques
- Feu els exercicis pendents del recull de pràctiques
20241213
- Dubtes
- Fem córrer QML sobre Android seguint els suggeriments de la pràctica A13.01 del recull de pràctiques
- Feu els exercicis pendents del recull de pràctiques
20241210
- Dubtes
- Feu els exercicis pendents del recull de pràctiques
20241209
- Dubtes
- Feu els exercicis pendents del recull de pràctiques
- Resposta a la pregunta de n'Aroca: Màquina virtual Android per a fer-la servir per a executar codis QML des de QtCreator
- Part IoT: Pràctica A14.7 - UserLand
20241202
- Dubtes
- Feu els exercicis pendents del recull de pràctiques
20241129
- Dubtes
- Feu els exercicis A08.01, A08.02 i A08.03 del recull de pràctiques
Telegram
- Creació de bots amb BotFather
- Instal·lació de nodes de Telegram a NodeRED (afegiu els nodes node-red-contrib-telegrambot)
- Interacció amb un usuari de Telegram
- Interacció amb un grup de Telegram
Material per a fer el bot i flux de prova per al bot de Telegram
- Feu els exercicis A14.2 i A14.3 del recull de pràctiques
20241126
- Dubtes
- Seguim la instal·lació per a fer servir PureQML
20241125 - QML
Introducció al QML. Curs 2023-2024
Activitats A08.01, A08.02 i A08.03 del recull de pràctiques de 2n de DAM. Curs 2024-2025
PureQML
Posada en marxa del PureQML
- Instal·lació de l'eina python-future:
pip3 install future
A Windows:
pip install future
- Primera aplicació
mkdir prjFolder cd prjFolder git clone https://github.com/pureqml/qmlcore.git ./qmlcore/build --boilerplate ./qmlcore/build
A Windows, les dues darreres passes:
python qmlcore/build --boilerplate python qmlcore/build
Obriu amb un navegador l'arxiu prjFolder/build.web/index.html
- Modificació de prjFolder/src/app.qml:
Text { anchors.fill: context; text: 'Primer exemple de pureQML'; color: 'red'; font.pixelSize: 32; verticalAlignment: Text.AlignVCenter; horizontalAlignment: Text.AlignHCenter; }
Reconstruïu-ho:
./qmlcore/build
A Windows:
python qmlcore/build
Torneu a obrir amb un navegador l'arxiu prjFolder/build.web/index.html per a observar els canvis
Activitats A08.00 del recull de pràctiques de 2n de DAM. Curs_2024-2025
20241125 - NodeRed
dynamicMqttTopic.json Temes dinàmics a MQTT
20241119 Examen 1r T
20241118
- Dubtes del darrer dia abans de l'examen.
20241115
- Dubtes
- Seguim fent pràctiques pendents
20241112
- Dubtes
- Seguim explicant els codis del dia anterior:
- Multitasca
MicroWorkers Tasques en MicroPython
FreeRTOS Tasques en C a sistemes encastats. (Pàgina oficial de FreeRTOS)
- Exemples de multitasca
- Exercicis de multitasca
La setmana passada ja es van afegir A09.01 i A09.02 (FreeRTOS i MicroWorkers) al Recull de pràctiques de 2n de DAM. Curs 2024-2025
- Seguim fent l'enunciat A12.04 al Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241111
- Dubtes
- Amb l'objectiu de practicar per a l'examen de la setmana vinent, s'ha afegit l'enunciat A12.04 al Recull de pràctiques de 2n de DAM. Curs 2024-2025
- Part IoT
- Configuració de l'MQTT-Dash (MQTT-Dash a Google Play, apk baixada d'APKPure i apkcombo)
20241108
- Dubtes
- Seguim amb el Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241105
- Dubtes
- Seguim amb el Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241104
S'ha afegit l'enunciat A12.03 al Recull de pràctiques de 2n de DAM. Curs 2024-2025
Exercici A12.03. (Heu de desar a la carpeta compartida un document 2425-DAM-A12.03-1rCognom2nCognomNom.pdf amb les solucions explicades i un arxiu 2425-DAM-A12.03-1rCognom2nCognomNom.zip amb els codis comprimits, sense el .pro.user si ho feu amb qmake o el .txt.user si ho feu amb CMake).
- Part IoT
- Multitasca
MicroWorkers Tasques en MicroPython
FreeRTOS Tasques en C a sistemes encastats. (Pàgina oficial de FreeRTOS)
- Exemples de multitasca
-Exercicis de multitasca
S'ha afegit A09.01 i A09.02 (FreeRTOS i MicroWorkers) al Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241029
- Seguim fent els exercicis pendents de Recull de pràctiques de 2n de DAM. Curs 2024-2025
- Instal·lació local de mosquitto (A07.05 - Instal·lació del servei mosquitto de Recull de pràctiques de 2n de DAM. Curs 2024-2025)
- Introducció al MicroPython (Programació en MicroPython, Micropython and the Internet of Things, Micropython a la placa IoT-02 i
Referència ràpida sobre MicroPython a l'ESP32)
- A07.07 - Introducció al micropython al Recull de pràctiques de 2n de DAM. Curs 2024-2025
- Exemple MicroWorkers a Wokwi
20241028
- Seguim fent els exercicis pendents de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241025
- Afegit exercici A12.02. Seguim fent els exercicis pendents de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241022
- Seguim fent els exercicis pendents de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241021
- Dubtes
- Acabem A06.04
- Comencem a resoldre l'enunciat A06.02
- Hora IoT: Feu A12.01.2 - ginyMqtt amb CMake
20241018
- Seguim fent els exercicis pendents (A06.01, A06.04, A07.01, A07.02, A07.03, A07.04, A07.08, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241015
- Seguim fent els exercicis pendents (A06.01, A06.04, A07.01, A07.02, A07.03, A07.04, A07.08, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241014
- Nou exercici: A07.08 - Prova de QtMQtt a la placa IoT-02
- Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241011
Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241008
Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241007
Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
void Ex00::on_btAleat_clicked() { ui->lbText->setText(tr("%1").arg(1+rand()%6)); }
20241004
Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241001
Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20240930
Autenticació d'accés a NodeRED
Ús de la base de dades MariaDB des de NodeRED
Transmissió d'un número real de tipus IEEE-754 (4 bytes) i llur recuperació a NodeRED
20240927
Recull del dia 20240927 usuari: dam | contrasenya: dam2425
- Exercici A07.01 - Introducció al control de la placa Iot-02 mitjançant NodeRed del recull de pràctiques
- Exercici a0601a de 06.01 - Ginys encastats del recull de pràctiques
- Per a fer servir el CMake cal editar l'arxiu CMakeLists.txt. En aquest exemple, prenent com a base el projecte pr20240927_00 fet amb qmake, s'ha fet un nou projecte anomenat pr20240927_00_cmake amb una classe base anomenada Matrioixca. Un cop fet es tanca el QtCreator i es copien els sis arxius .cpp, .h i .ui a la carpeta del nou projecte (els matrioixca.* seran sobreescrits) i editeu l'arxiu CMakeLists.txt afegint les línies en negreta:
set(PROJECT_SOURCES main.cpp matrioixca.cpp matrioixca.h matrioixca.ui giny01.cpp giny01.h giny01.ui ginylcd.cpp ginylcd.h ginylcd.ui )
20240923
Connectem la placa IoT-02 mitjançant Snap! i NodeRed.
Microprogramari per a treballar dins l'Escola del Clot
Canvieu el broker1 pel broker2 a l'accés directe a 07_IoT-02_with_json_Broker1.xmlCodi en Snap! incorporant l'ús de JSON i microprogramari per a gestionar, també, l'ús de JSON a la placa IoT-02. Firmware IoT-02_mqtt_json_upcSchool_broker1 en GitHub
20240920
//#include "esp_wpa2.h" //wpa2 library for connections to Enterprise networks #include "esp_eap_client.h" // v3
20240917
Heu de dur un cable microusb per a connectar a l'ordinador o una font d'alimentació microusb!
20240916 (2h + 1h)
Recull del dia 20240916 usuari: dam | contrasenya: dam2425
Distribució de M07UF1 i M13 al curs 2024-2025
Distribució de M07UF1 i M13 al curs 2024-2025 de 2n de DAM
Qt
El Qt Creator serà l'IDE que farem servir per a desenvolupar el disseny d'aplicacions gràfiques d'usuari:
Aneu a la pàgina Qt for Open Source Development i cerqueu Download the Qt Online Installer. Baixeu-vos-ho i instal·leu-ho (us demana registrar-vos per a poder-ho instal·lar).
Paquets que manquen per a fer funcionar les Qt a l'Ubuntu:
sudo apt install libx11-xcb-dev libglu1-mesa-dev libxcb-xinerama0
IoT
- NodeRED
Instal·lació de Node.js Guia d'instal·lació de node i npm
Supported Node versions on NodeRed
Verificació:
node --version npm --version
Instal·lació i funcionament del NodeRed autònom
ecat@iot-ecat:~$ mkdir bin ecat@iot-ecat:~$ cd bin ecat@iot-ecat:~/bin$ sudo apt install unzip ecat@iot-ecat:~/bin$ mkdir nodered-ui ecat@iot-ecat:~/bin$ cd nodered-ui ecat@iot-ecat:~/bin/nodered-ui$ wget https://www.binefa.cat/IoT/nodeRed/node_red_ui.zip ecat@iot-ecat:~/bin/nodered-ui$ unzip node_red_ui.zip ecat@iot-ecat:~/bin/nodered-ui$ node node_modules/node-red/red.js --userDir node_modules/node-red/data --settings node_modules/node-red/settings.js -v --port 2222 --title elmeuTitol --safe flows_meuTitol.json
Si hi ha problemes de confiança amb el certificat al descarrega l'arxiu .zip, hi podeu afegir l'opció --no-check-certificate:
wget --no-check-certificate https://www.binefa.cat/IoT/nodeRed/node_red_ui.zip
Credencials IoT
#define EAP_ANONYMOUS_IDENTITY "CL-Internet_de_les_coses" #define EAP_IDENTITY "CL-Internet_de_les_coses" #define EAP_PASSWORD "CLioT2022_" #define EAP_USERNAME "CL-Internet_de_les_coses" const char* ssid = "IOTJE";
20241119 Examen 1r T
20241118
- Dubtes del darrer dia abans de l'examen.
20241115
- Dubtes
- Seguim fent pràctiques pendents
20241112
- Dubtes
- Seguim explicant els codis del dia anterior:
- Multitasca
MicroWorkers Tasques en MicroPython
FreeRTOS Tasques en C a sistemes encastats. (Pàgina oficial de FreeRTOS)
- Exemples de multitasca
- Exercicis de multitasca
La setmana passada ja es van afegir A09.01 i A09.02 (FreeRTOS i MicroWorkers) al Recull de pràctiques de 2n de DAM. Curs 2024-2025
- Seguim fent l'enunciat A12.04 al Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241111
- Dubtes
- Amb l'objectiu de practicar per a l'examen de la setmana vinent, s'ha afegit l'enunciat A12.04 al Recull de pràctiques de 2n de DAM. Curs 2024-2025
- Part IoT
- Configuració de l'MQTT-Dash (MQTT-Dash a Google Play, apk baixada d'APKPure i apkcombo)
20241108
- Dubtes
- Seguim amb el Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241105
- Dubtes
- Seguim amb el Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241104
S'ha afegit l'enunciat A12.03 al Recull de pràctiques de 2n de DAM. Curs 2024-2025
Exercici A12.03. (Heu de desar a la carpeta compartida un document 2425-DAM-A12.03-1rCognom2nCognomNom.pdf amb les solucions explicades i un arxiu 2425-DAM-A12.03-1rCognom2nCognomNom.zip amb els codis comprimits, sense el .pro.user si ho feu amb qmake o el .txt.user si ho feu amb CMake).
- Part IoT
- Multitasca
MicroWorkers Tasques en MicroPython
FreeRTOS Tasques en C a sistemes encastats. (Pàgina oficial de FreeRTOS)
- Exemples de multitasca
-Exercicis de multitasca
S'ha afegit A09.01 i A09.02 (FreeRTOS i MicroWorkers) al Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241029
- Seguim fent els exercicis pendents de Recull de pràctiques de 2n de DAM. Curs 2024-2025
- Instal·lació local de mosquitto (A07.05 - Instal·lació del servei mosquitto de Recull de pràctiques de 2n de DAM. Curs 2024-2025)
- Introducció al MicroPython (Programació en MicroPython, Micropython and the Internet of Things, Micropython a la placa IoT-02 i
Referència ràpida sobre MicroPython a l'ESP32)
- A07.07 - Introducció al micropython al Recull de pràctiques de 2n de DAM. Curs 2024-2025
- Exemple MicroWorkers a Wokwi
20241028
- Seguim fent els exercicis pendents de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241025
- Afegit exercici A12.02. Seguim fent els exercicis pendents de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241022
- Seguim fent els exercicis pendents de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241021
- Dubtes
- Acabem A06.04
- Comencem a resoldre l'enunciat A06.02
- Hora IoT: Feu A12.01.2 - ginyMqtt amb CMake
20241018
- Seguim fent els exercicis pendents (A06.01, A06.04, A07.01, A07.02, A07.03, A07.04, A07.08, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241015
- Seguim fent els exercicis pendents (A06.01, A06.04, A07.01, A07.02, A07.03, A07.04, A07.08, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241014
- Nou exercici: A07.08 - Prova de QtMQtt a la placa IoT-02
- Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241011
Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241008
Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241007
Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
void Ex00::on_btAleat_clicked() { ui->lbText->setText(tr("%1").arg(1+rand()%6)); }
20241004
Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20241001
Seguim fent els exercicis pendents (A06.01, A07.01, A07.02, A14.1) de Recull de pràctiques de 2n de DAM. Curs 2024-2025
20240930
Autenticació d'accés a NodeRED
Ús de la base de dades MariaDB des de NodeRED
Transmissió d'un número real de tipus IEEE-754 (4 bytes) i llur recuperació a NodeRED
20240927
Recull del dia 20240927 usuari: dam | contrasenya: dam2425
- Exercici A07.01 - Introducció al control de la placa Iot-02 mitjançant NodeRed del recull de pràctiques
- Exercici a0601a de 06.01 - Ginys encastats del recull de pràctiques
- Per a fer servir el CMake cal editar l'arxiu CMakeLists.txt. En aquest exemple, prenent com a base el projecte pr20240927_00 fet amb qmake, s'ha fet un nou projecte anomenat pr20240927_00_cmake amb una classe base anomenada Matrioixca. Un cop fet es tanca el QtCreator i es copien els sis arxius .cpp, .h i .ui a la carpeta del nou projecte (els matrioixca.* seran sobreescrits) i editeu l'arxiu CMakeLists.txt afegint les línies en negreta:
set(PROJECT_SOURCES main.cpp matrioixca.cpp matrioixca.h matrioixca.ui giny01.cpp giny01.h giny01.ui ginylcd.cpp ginylcd.h ginylcd.ui )
20240923
Connectem la placa IoT-02 mitjançant Snap! i NodeRed.
Microprogramari per a treballar dins l'Escola del Clot
Canvieu el broker1 pel broker2 a l'accés directe a 07_IoT-02_with_json_Broker1.xmlCodi en Snap! incorporant l'ús de JSON i microprogramari per a gestionar, també, l'ús de JSON a la placa IoT-02. Firmware IoT-02_mqtt_json_upcSchool_broker1 en GitHub
20240920
//#include "esp_wpa2.h" //wpa2 library for connections to Enterprise networks #include "esp_eap_client.h" // v3
20240917
Heu de dur un cable microusb per a connectar a l'ordinador o una font d'alimentació microusb!
20240916 (2h + 1h)
Recull del dia 20240916 usuari: dam | contrasenya: dam2425
Distribució de M07UF1 i M13 al curs 2024-2025
Distribució de M07UF1 i M13 al curs 2024-2025 de 2n de DAM
Qt
El Qt Creator serà l'IDE que farem servir per a desenvolupar el disseny d'aplicacions gràfiques d'usuari:
Aneu a la pàgina Qt for Open Source Development i cerqueu Download the Qt Online Installer. Baixeu-vos-ho i instal·leu-ho (us demana registrar-vos per a poder-ho instal·lar).
Paquets que manquen per a fer funcionar les Qt a l'Ubuntu:
sudo apt install libx11-xcb-dev libglu1-mesa-dev libxcb-xinerama0
IoT
- NodeRED
Instal·lació de Node.js Guia d'instal·lació de node i npm
Supported Node versions on NodeRed
Verificació:
node --version npm --version
Instal·lació i funcionament del NodeRed autònom
ecat@iot-ecat:~$ mkdir bin ecat@iot-ecat:~$ cd bin ecat@iot-ecat:~/bin$ sudo apt install unzip ecat@iot-ecat:~/bin$ mkdir nodered-ui ecat@iot-ecat:~/bin$ cd nodered-ui ecat@iot-ecat:~/bin/nodered-ui$ wget https://www.binefa.cat/IoT/nodeRed/node_red_ui.zip ecat@iot-ecat:~/bin/nodered-ui$ unzip node_red_ui.zip ecat@iot-ecat:~/bin/nodered-ui$ node node_modules/node-red/red.js --userDir node_modules/node-red/data --settings node_modules/node-red/settings.js -v --port 2222 --title elmeuTitol --safe flows_meuTitol.json
Si hi ha problemes de confiança amb el certificat al descarrega l'arxiu .zip, hi podeu afegir l'opció --no-check-certificate:
wget --no-check-certificate https://www.binefa.cat/IoT/nodeRed/node_red_ui.zip
Credencials IoT
#define EAP_ANONYMOUS_IDENTITY "CL-Internet_de_les_coses" #define EAP_IDENTITY "CL-Internet_de_les_coses" #define EAP_PASSWORD "CLioT2022_" #define EAP_USERNAME "CL-Internet_de_les_coses" const char* ssid = "IOTJE";
Repositori de codis fet a classe durant el curs
Codis fets a les classes de 2n de DAM usuari: dam | contrasenya: dam2425
Documentació
Curs2024-2025 Eina d'avaluació GP1 Curs 2024-2025 - Departament
Drive curs 2023-2024 (Alèxia, SAC). Eina d'avaluació GP1
Distribució de M07UF1 i M13 al curs 2022-2023 de 2n de DAM
Recull de pràctiques de 2n de DAM. Curs 2022-2023
Qt/QML
Paquets que manquen per a fer funcionar les Qt a l'Ubuntu:
sudo apt install libx11-xcb-dev libglu1-mesa-dev libxcb-xinerama0
Activació de l'editor QML al QtCreator 6
Qt5 de Jan Bodnar
Qt5 Cadaques! A Book about Qt5
Qt Quick tutorial de Jan Bodnar
PyQt5 de Jan Bodnar
Instal·lació de QtMQtt a les Qt
Qt for Android
Getting Started with Qt for Android
Getting Started with Qt6.5 for Android
Qt for WebAssembly
json
How To Manipulate JSON With C++ and Qt
QProcess
Qt5 tutorial FFmpeg converter using QProcess - 2020
CMake
Cal fer la instal·lació d'aquests paquets a Debian 11:
sudo apt-get install libqt5svg5-dev qtscript5-dev sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev sudo apt purge ibus
Vídeos externs per aprendre QML
(Gentilesa d'en Raül Gil García)
- (10) Tutorial QML - YouTube
- qmlscene
- Tesla Model 3 Dashboard with Advanced Map Integration and Seamless Music Control Using QT QML
IoT
TCP/UDP Capa de transport d'Ethernet
Afegint la targeta ESP8266 a l'IDE d'Arduino (NodeMCU1.0)
Micropython and the Internet of Things
SCADA fent servir Python QML i Arduino
Placa IoT-02
Per a la programació amb l'IDE d'Arduino: https://dl.espressif.com/dl/package_esp32_index.json
LoRaWAN
Consola de The Things Stack (Community Edition) de The Things Network
Presentació LoRaWAN (esborrany v0.4)
Recull introductori per a treballar amb LoRa ( usuari: dam / contrasenya: dam2122)
Recull de pràctiques de 2n de DAM. Curs 2021-2022
Transmissió d'un número real de tipus IEEE-754 (4 bytes) i llur recuperació a NodeRED