2023-02-08 17:55:30 +01:00
# Jumeaux numériques
2023-02-08 17:41:43 +01:00
<!-- # Digital Twin -->
2022-12-10 19:24:30 +01:00
2022-12-11 16:18:32 +01:00
Un jumeau numérique d'un système technique permet de visualiser son comportement à travers une maquette numérique. Le principal intérêt est de valider un
modèle comportemental d'abords par la simulation (avant mise en oeuvre du jumeau réel) puis expérimentalement (mesure des écarts entre les deux jumeaux).
2022-12-11 16:27:18 +01:00
Ici le jumeau numérique d'un système pluritechnologique va nous servir à programmer le système en simulant (hors ligne) son évolution. Nous pourrons alors
2022-12-11 16:31:14 +01:00
mettre en lien les deux jumeaux et appliquer les règles programmées sur le jumeau réel.
2022-12-11 16:32:59 +01:00
Lors de l'exécution du cycle, tous écarts entre les deux jumeaux seront mesurés afin de corriger le modèle comportemental. Par aileurs, les évènements
numériques impacteront le jumeau réel et les évènements réels impacteront aussi le jumeau numérique.
2022-12-10 19:24:30 +01:00
2022-12-11 16:33:58 +01:00
**Systèmes** :
2022-12-11 16:38:08 +01:00
2023-09-20 11:11:46 +02:00
* [Monte-charge ](https://forge.aeif.fr/blender-edutech/jumeau-numerique/-/tree/main/monte_charge )
* [Portail coulissant ](https://forge.aeif.fr/blender-edutech/jumeau-numerique/-/tree/main/portail_coulissant )
* [Volet roulant ](https://forge.aeif.fr/blender-edutech/jumeau-numerique/-/tree/main/volet_roulant )
2022-12-10 19:24:30 +01:00
2023-02-03 06:25:31 +01:00
Systèmes dont le jumeau numérique est cours de développement :
2023-09-20 12:34:16 +02:00
* Labyrinthe à bille : [tutoriel à destination des enseignants souhaitant découvrir la plateforme UPBGE ](https://forge.aeif.fr/blender-edutech/blender-edutech-tuto/-/tree/main/labyrinthe )
2023-02-03 06:11:31 +01:00
* Bras robotisé Poppy Ergo Jr ([Poppy](https://www.poppy-project.org/en/robots/poppy-ergo-jr/))
* Robot haptique ([SET](https://setdidact.com/voie-generale-et-technologique/sciences-de-lingenieur/))
2023-03-18 18:33:58 +01:00
* Cobot souple ([Dossier personnel](https://nuage03.apps.education.fr/index.php/s/PMFdMPWprEZoWiR?path=%2F2022))
2023-01-01 18:24:50 +01:00
2023-03-12 13:51:44 +01:00
[![Jumeaux numériques présentation ](img/lien_video.png )](https://tube-sciences-technologies.apps.education.fr/w/7B1BtC92PTW5dmRfJPsKhk)
2022-12-10 19:38:49 +01:00
## Jumelage numérique
Le jumelage numérique est basé sur la liaison série entre l'ordinateur (port USB) et un microcontrôleur Arduino (Uno ou Mega). Suivant les jumeaux numériques,
le protocole de communication peut être le protocole générique Firmata ou un protocole spécifique.
2023-03-19 11:08:43 +01:00
[![Vidéo du test de jumelage du portail coulissant ](img/lien_video-2.png )](https://tube-sciences-technologies.apps.education.fr/w/sVSgBfGssESLBhHGMg98AR)
2023-03-18 18:33:58 +01:00
2023-01-01 18:24:50 +01:00
## Téléchargement
2023-11-06 08:00:33 +01:00
Les binaires (Game Engine Runtime) sont hébergés sur [phroy.org ](https://www.phroy.org/twin.html ).
2023-01-01 18:24:50 +01:00
2023-02-08 18:14:40 +01:00
## Ressources pédagogiques
2022-12-10 19:38:49 +01:00
2023-02-08 18:14:40 +01:00
Les applications pédagogique se trouvent dans le [dépôt des ressouces pédagogiques du projet Blender-EduTech ](https://forge.aeif.fr/blender-edutech/blender-edutech-peda ) :
- [Enseignements de la spécialité Sciences de l'Ingénieur ](https://forge.aeif.fr/blender-edutech/blender-edutech-peda/-/tree/main/Lycee/programmation_python/si/jumeau_numerique ).
2022-12-10 19:38:49 +01:00
## Développement
2023-11-28 14:09:44 +01:00
< table style = "width:100%" >
< tr >
2023-11-28 14:18:27 +01:00
< td > ![Brigit et Komit ](img/la_forge-brigit_et_komit.svg ) </ td >
2023-11-28 14:17:28 +01:00
< td > Les fichiers sources sont dans le groupe Blender-Edutech de La Forge des Communs Numériques Éducatifs : https://forge.aeif.fr/blender-edutech/jumeau-numerique .
2023-11-28 14:15:02 +01:00
L'environnement de développement est basé sur : la plateforme de modélisation et d'animation 3D [Blender ](https://blender.org ), le langage [Python ](https://python.org )
2023-11-28 14:17:28 +01:00
et le moteur de jeu 3D [UPBGE ](https://upbge.org ). La version de Blender/UPBGE utilisée pour le développement est la version 0.36.1 (20 août 2023). </ td >
2023-11-28 14:15:02 +01:00
< / tr >
< / table >
2022-12-10 19:38:49 +01:00
Les bibliothèques suivantes ne sont pas incluses par défaut dans l'environnement UPBGE :
2023-02-14 00:06:50 +01:00
- [**Pylint** ](https://pylint.pycqa.org ) : vérificateur de code Python
2022-12-19 17:40:02 +01:00
- [**pySerial** ](https://pyserial.readthedocs.io ) : communication sur le port série
2022-12-19 17:41:30 +01:00
- [**pyFirmata** ](https://pyfirmata.readthedocs.io ) : protocole Firmata (protocole générique de communication entre un logiciel et un microcontrôleur)
2023-01-14 07:49:53 +01:00
- [**Matplotlib** ](https://matplotlib.org ) : grapheur (visualisation de données)
2023-01-30 07:40:49 +01:00
- [**wxPython** ](https://www.wxpython.org/ ) : interface graphique utilisateur (GUI, utilisé ici pour Windows)
2023-01-31 06:04:25 +01:00
- [**pyQt5** ](https://www.riverbankcomputing.com/software/pyqt/ ) : interface graphique utilisateur (GUI, utilisé ici pour GNU/Linux)
2023-01-14 07:49:53 +01:00
<!-- - [**whell** ](https://pyfirmata.readthedocs.io ) : format de paquet Python -->
2022-12-10 19:38:49 +01:00
Il faut donc les installer localement (dans UPBGE), les étapes sont :
- **GNU/Linux** : La configuration ici présente est UPBGE installé sur ~ avec Python 3.9 :
- Aller dans le répertoire local de Python de UPBGE: $ cd ~/UPBGE-0.30-linux-x86_64/3.0/python/bin
2023-01-31 06:08:34 +01:00
- Télécharger le script ['get-pip.py' ](https://bootstrap.pypa.io/get-pip.py ) pour installer le gestionnaire de paquet [**Pip** ](https://pip.pypa.io )
2023-01-31 06:04:25 +01:00
- Installer le gestionnaire de paquet Pip : $ ./python3.9 get-pip.py
- Installer Pylint : $ ./pip install pylint
- Installer pySerial : $ ./pip install pyserial
- Installer pyFirmata : $ ./pip install pyfirmata
- Installer Matplotlib : $ ./pip install matplotlib
- Installer PyQt5 : $ ./pip install PyQt5
<!-- - Installer Pylint : $ ./pip install pylint - t ~/UPBGE - 0.30 - linux - x86_64/3.0/python/lib/python3.9/site - packages -->
<!-- - Installer pySerial : $ ./pip install pyserial - t ~/UPBGE - 0.30 - linux - x86_64/3.0/python/lib/python3.9/site - packages -->
<!-- - Installer pyFirmata : $ ./pip install pyfirmata - t ~/UPBGE - 0.30 - linux - x86_64/3.0/python/lib/python3.9/site - packages -->
<!-- - Installer Matplotlib : $ ./pip install matplotlib - t ~/UPBGE - 0.30 - linux - x86_64/3.0/python/lib/python3.9/site - packages -->
<!-- - Installer PyQt5 : $ ./pip install PyQt5 - t ~/UPBGE - 0.30 - linux - x86_64/3.0/python/lib/python3.9/site - packages -->
- **Windows** : La configuration ici présente est UPBGE installé sur le bureau utilisateur (prenom.nom) :
- Ouvrir un terminal Powershell (éventuellement en passant par Anaconda Navigator)
2023-01-31 06:32:12 +01:00
- Aller dans le répertoire local de Python de UPBGE: cd C:\Users\prenom.nom\Desktop\UPBGE-0.30-windows-x86_64\3.0\python\bin
2023-01-31 06:08:34 +01:00
- Télécharger le script ['get-pip.py' ](https://bootstrap.pypa.io/get-pip.py ) pour installer le gestionnaire de paquet [**Pip** ](https://pip.pypa.io )
2023-01-31 06:04:25 +01:00
- Installer le gestionnaire de paquet Pip : python.exe get-pip.py
- Aller dans le répertoire 'Scripts' : cd C:\Users\prenom.nom\Desktop\UPBGE-0.30-windows-x86_64\3.0\python\Scripts
2023-01-31 06:13:07 +01:00
- Installer Pylint : pip.exe install pylint
- Installer pySerial : pip.exe install pyserial
- Installer pyFirmata : pip.exe install pyfirmata
- Installer Matplotlib : pip.exe install matplotlib
- Installer wxPython : pip.exe install wxpython
2023-01-31 06:04:25 +01:00
<!-- - **Windows** : La configuration ici présente est UPBGE installé sur le bureau utilisateur (prenom.nom) avec la distribution Anaconda installée : -->
<!-- - Avec Anaconda Navigator ouvrir un terminal Powershell -->
<!-- - Installer Pylint : pip install pylint -t C: \Users \prenom.nom \Desktop \UPBGE-0.30-windows-x86_64 \3.0 \python \lib \site-packages -->
<!-- - Installer pySerial : pip install pyserial -t C: \Users \prenom.nom \Desktop \UPBGE-0.30-windows-x86_64 \3.0 \python \lib \site-packages -->
<!-- - Installer pyFirmata : pip install pyfirmata -t C: \Users \prenom.nom \Desktop \UPBGE-0.30-windows-x86_64 \3.0 \python \lib \site-packages -->
<!-- - Installer Matplotlib : pip install matplotlib -t C: \Users \prenom.nom \Desktop \UPBGE-0.30-windows-x86_64 \3.0 \python \lib \site-packages -->
<!-- - Installer wxPython : pip install wxpython -t C: \Users \prenom.nom \Desktop \UPBGE-0.30-windows-x86_64 \3.0 \python \lib \site-packages -->
2022-12-10 19:24:30 +01:00