jumeaux-numeriques/volet_roulant
2024-01-21 17:43:50 +01:00
..
asset Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
AUTHORS.md Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
CC-BY-NC-SA-4.0.txt Ajout des liens vers le site A4 technologie 2022-12-10 19:04:32 +01:00
README.md Readme update 2024-01-06 10:24:24 +01:00
twin_about.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_config.xml Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_daq.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_doc.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_file_qt.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_file_wx.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_plot_qt.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_plot_wx.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_plot.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_pylint.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_serial.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin_threading.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
twin.py Migration de Forge AEIF -> Forge Apps.education 2024-01-21 17:43:50 +01:00
volet_roulant-17.blend Ajout de la page Crédits 2023-02-04 13:28:28 +01:00
volet_roulant-18.blend Pilotage moteur par le shield moteur 2024-01-18 04:53:16 +01:00
volet_roulant.bat Ajout des bat pour Windows 2022-12-11 09:57:43 +01:00
volet_roulant.sh Ajout des scripts shell 2023-01-29 03:35:23 +01:00
volrou_cmd-bak.py Mise en place du pilotage moteur par le shield moteur suite 2024-01-18 04:35:49 +01:00
volrou_cmd.py Pilotage moteur par le shield moteur 2024-01-18 04:53:16 +01:00
volrou_doc.py Bugfix : variante, configuration de broche et documentation 2023-02-14 00:06:50 +01:00
volrou_lib.py Pilotage moteur par le shield moteur 2024-01-18 04:53:16 +01:00
volrou.py Mise en place du pilotage moteur par le shield moteur 2024-01-18 04:08:18 +01:00

Jumeau numérique d'un volet roulant

Ce jumeau numérique permet la programmation en Python d'une maquette réelle d'un volet roulant

Maquette réelle

La maquette réelle est basée sur des modules AutoProg. Elle est disponible sur le site de l'entreprise A4 technologie : https://www.a4.fr/robotique-programmation/maquettes-automatisees/volet-roulant-automatise.html

Une version auto-construite avec des modules Grove et réalisable à partir de plaque de 3 mm (découpe laser) et d'impression 3D est en cours de conception.

Maquette numérique

Le modèle 3D est basé sur la maquette développée par l'entreprise A4 technologie. Les documents techniques et pédagogiques signés A4 Technologie sont diffusés librement sous licence Creative Commons BY-NC-SA.

Site internet de la maquette A4 Technologie : https://www.a4.fr/wiki/index.php?title=Volet_roulant

Il y a deux variantes du modèle 3D :

  • variante 1 : le mode automatique s'active avec le bouton poussoir bp_auto et se désactive avec l'appui sur bp_m, bp_a ou bp_d,
  • variante 2 : le mode automatique s'active et se désactive avec le bouton à glissière bg_auto.

La variante 1 correspond à la maquette réelle de 4A technologie. La variante 2 est une version simplifiée mais uniquement numérique.

Téléchargement

Les binaires (Game Engine Runtime) sont hébergés sur phroy.org.

Instructions

Le script Python qui permet la commande du volet est le fichier 'volrou_cmd.py. Il est éditable avec tout éditeur (Spyder, Emacs, Pulsar, ...).

Actions

Les actions (ordre = True ou False) sont :

  • Monter le volet (moteur sens trigo) : mot_m(True | False)
  • Descendre le volet (moteur sens horaire) : mot_d(True | False)

Capteurs

Les compte-rendus des capteurs sont :

  • Capteur fin de course volet en haut : fdc_h() : valeur retournée = True ou False
  • Capteur fin de course volet en bas : fdc_b() : valeur retournée = True ou False
  • Capteur de luminosité (LDR) : lum() : valeur retournée = entre 0.0 et 1.0

Pupitre

Les consignes (valeur retournée = True ou False) du pupitre sont :

  • Bouton poussoir monter volet : bp_m()
  • Bouton poussoir arrêt volet : bp_a()
  • Bouton poussoir descendre volet : bp_d()
  • Bouton poussoir mode automatique : bp_auto()

Le retour d'information (allumer = True ou False) du pupitre est :

  • Voyant témoin mode automatique : voy_auto(True | False)

Gestion du temps

Les temporisations : tempo(duree) avec la durée en seconde

Accès aux données

  • Retourne la valeur de la variable à l'instant : get(variable).
  • Enregistre les données et génére un fichier de données CSV à l'arrêt du cycle : daq([variables]).
  • Affiche, à l'arrêt du cycle, le chronogramme des données enregristrées : plot([variables]).

Variables publiques :

  • Entrées/sorties : 'bp_m', 'bp_a', 'bp_d', 'mot_m', 'mot_d', 'fdc_h', 'fdc_b', 'bp_auto', 'bg_auto', 'voy_auto' et 'lum'.
  • Variables réels (si il y a jumelage) : 'bp_m_r', 'bp_a_r', 'bp_d_r', 'fdc_h_r', 'fdc_b_r', 'bp_auto_r', 'bg_auto_r' et 'lum_r'.
  • Autres : 't' (temps), 'mot_angle' et 'mot_vitesse'.

Jumelage

  • Démarrer le jumelage : jumeau(brochage).
  • Arrêter le jumelage : jumeau_stop().
  • Définit les modes d'activation des entrées/sorties (True ou False) : jumeau_mode(entrées réelles, entrées numériques, sorties réelles, sorties numériques).

Brochage

Le brochage est un dictionnaire qui permet d'associer les objets 3D du jumeau numérique aux broches du jumeau réel.

Son format est le suivant : brochage = { nom:[type, broche, mode] } :

  • nom : nom de l'objet 3D du jumeau numérique,
  • type : a (analogique) ou d (binaire),
  • broche : numéro de la broche de carte (Arduino, ...),
  • mode : i (entrée), o (sortie) ou p (pwm).

Objets 3D du jumeau numérique :

  • Entrées/sorties : 'bp_m', 'bp_a', 'bp_d', 'mot_m', 'mot_d', 'fdc_h', 'fdc_b', 'bp_auto', 'bg_auto', 'voy_auto' et 'lum'.