jumeaux-numeriques/volet_roulant/volrou_doc.py

92 lines
4.6 KiB
Python

###############################################################################
# volrou_doc.py
# @title: Documentation du volet roulant
# @project: Blender-EduTech
# @lang: fr
# @authors: Philippe Roy <philippe.roy@ac-grenoble.fr>
# @copyright: Copyright (C) 2022-2023 Philippe Roy
# @license: GNU GPL
###############################################################################
################################################################################
# Documentation du système
################################################################################
# system_card=["twins-card", "serial-card", "movement-card", "sensor-card", "board-card", "model-card", "arduino-card"]
system_card=["twins-card", "movement-card", "sensor-card", "board-card", "model-card", "arduino-card"]
card_description ={}
# Jumeau numérique
# Message envoyé (asynchrone) : \n avancer : a, reculer : r, droite : d, \n gauche g, marquer : m et forer : f \n\n\n """
card_twins_title="Jumeau numérique"
card_twins_text=""" jumeau() \n -> Active le jumeau réel.\n
jumeau_config(port, vitesse) \n -> Définit la configuration de la liaison \n série.\n
Si le port n'est pas spécifié, il sera \n recherché automatiquement (carte \n Arduino Uno ou Mega). \n
La vitesse par défaut est 115200 baud."""
card_twins_url=[]
card_description.update({"twins-card" : [card_twins_title, card_twins_text, card_twins_url]})
# Liaison série
# card_serial_title="Liaison série"
# card_serial_text=""" serie_msg(texte) \n -> Envoi un message \n
# texte=serie_rcpt() \n -> Reçoit un message"""
# card_serial_url=[["Liaison série : pySerial","https://pythonhosted.org/pyserial/"],
# ["Protocole Firmata : pyFirmata","https://github.com/tino/pyFirmata"]]
# card_description.update({"serial-card" : [card_serial_title, card_serial_text, card_serial_url]})
# Ouvrir et fermer
card_movement_title="Monter et descendre"
card_movement_text=""" mot_m(True | False) \n -> Monter le volet (moteur sens trigo). \n
mot_d(True | False) \n -> Descendre le volet (sens horaire). \n
fdc_h() \n -> Capteur fin de course volet en haut.\n Retourne True si volet est en haut. \n
fdc_b() \n -> Capteur fin de course volet en bas.\n Retourne True si le volet est en bas."""
card_movement_url=[]
card_description.update({"movement-card" : [card_movement_title, card_movement_text, card_movement_url]})
# Capteurs
card_sensor_title="Capteur"
card_sensor_text=""" lum(True | False) \n -> Capteur de luminosité (LDR).\n Retourne True s'il y a de la lumière \n importante."""
card_sensor_url=[]
card_description.update({"sensor-card" : [card_sensor_title, card_sensor_text, card_sensor_url]})
# Pupitre
card_board_title="Pupitre"
card_board_text= """ bp_m() \n -> Bouton poussoir monter le volet.\n Retourne True si le bouton est pressé.\n
bp_a() -> Bouton arrêt du volet.\n
bp_d() -> Bouton descendre le volet.\n
bp_auto() -> Bouton mode automatique.\n
voy_auto(True | False) \n -> Activer le voyant témoin du mode\n automatique."""
card_board_url=[]
card_description.update({"board-card" : [card_board_title, card_board_text, card_board_url]})
# Maquette
card_model_title="Maquette"
card_model_text=""" Le modèle 3D est basé sur la maquette \n développée par l'entreprise A4 \n Technologie. \n
Les documents techniques et \n pédagogiques signés A4 Technologie \n sont diffusés librement sous licence \n Creative Commons BY-NC-SA. \n
Le pilotage de la maquette se fait par une \n carte Arduino (Uno ou Mega) reliée à \n l'ordinateur via la liaison série (USB) et le \n protocole Firmata."""
card_model_url=[["A4 Technologie","https://www.a4.fr"],
["Maquette A4 Technologie","https://www.a4.fr/wiki/index.php?title=Volet_roulant"]]
card_description.update({"model-card" : [card_model_title, card_model_text, card_model_url]})
# Arduino
card_arduino_title="Arduino"
card_arduino_text=""" Arduino une plateforme open-source de \n développement électronique basée sur le \n microcontrôleur de la famille ATmega.
Elle est utilisée pour la création d'objets \n électroniques interactifs et connectés : \n IoT, domotique, robotique, ...
Le langage de programmation est le C. Par \n la bibliothèque Arduino l'accès aux entrées \n et sorties de la carte est particulièrement
aisé. Les platines permettent l'ajout \n d'extensions : relais, Grove, RFID, GPS, ... """
card_arduino_url=[["Plateforme Arduino","https://www.arduino.cc/"]]
card_description.update({"arduino-card" : [card_arduino_title, card_arduino_text, card_arduino_url]})
##
# Envoi des données
##
def get_system_card():
return system_card
def get_card_description():
return card_description