jumeaux-numeriques/portail_coulissant/porcou_doc.py

99 lines
5.3 KiB
Python

###############################################################################
# porcou_doc.py
# @title: Documentation du portail coulissant
# @project: Blender-EduTech
# @lang: fr
# @authors: Philippe Roy <philippe.roy@ac-grenoble.fr>
# @copyright: Copyright (C) 2020-2022 Philippe Roy
# @license: GNU GPL
###############################################################################
################################################################################
# Documentation du système
################################################################################
# system_card=["twins-card", "serial-card", "movement-card", "sensor-card", "gyro-card", "board-card", "model-card", "arduino-card"]
system_card=["twins-card", "firmata-card", "movement-card", "sensor-card", "gyro-card", "board-card", "model-card", "arduino-card"]
system_card_description ={}
# Jumeau numérique
card_twins_title="Jumeau numérique"
card_twins_text=""" jumeau(brochage) \n -> Active le jumeau réel.\n
jumeau_stop() \n -> Désactive le jumeau réel.\n
Le brochage est un dictionnaire, par \n exemple : brochage={ "bouton": ['d',2,'i'], \n "led": ['d',3,'o'] }.\n
Avec "carte=jumeau(brochage)", on peut \n utiliser l'objet "carte" pour communiquer \n directement avec le protocole Firmata."""
# 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=[]
system_card_description.update({"twins-card" : [card_twins_title, card_twins_text, card_twins_url]})
# Firmata
card_firmata_title="Protocole Firmata"
card_firmata_text=""" La communication entre les jumeaux \n est basée sur le protocole Firmata.\n
broche = carte.get_pin('type:broche:mode') \n -> Créer une entrée/sortie (broche) \n - type : a (analogique) ou d (numérique) \n - mode : i (entrée) , o (sortie) ou p (pwm). \n
broche.read() \n -> Retourne la valeur de la broche.\n
broche.write(valeur) \n -> Écrire la valeur sur la broche."""
card_firmata_url=[["Protocole Firmata : pyFirmata","https://github.com/tino/pyFirmata"]]
system_card_description.update({"firmata-card" : [card_firmata_title, card_firmata_text, card_firmata_url]})
# Ouvrir et fermer
card_movement_title="Ouvrir et fermer"
card_movement_text=""" mot_o(True | False) \n -> Ouvrir le portail (moteur sens trigo).\n
mot_f(True | False) \n -> Fermer le portail (moteur sens horaire).\n
fdc_o() \n -> Capteur fin de course portail ouvert.\n Retourne True si le portail est ouvert. \n
fdc_f() \n -> Capteur fin de course portail fermé.\n Retourne True si le portail est fermé."""
card_movement_url=[]
system_card_description.update({"movement-card" : [card_movement_title, card_movement_text, card_movement_url]})
# Capteurs
card_sensor_title="Capteur"
card_sensor_text=""" ir_emet(True | False) \n -> Activer l'émetteur infrarouge (IR).\n
ir_recep() \n -> Récepteur barrage infrarouge (IR).\n Retourne True s'il n'y a pas d'obstacle."""
card_sensor_url=[]
system_card_description.update({"sensor-card" : [card_sensor_title, card_sensor_text, card_sensor_url]})
# Gyrophare
card_gyro_title="Gyrophare"
card_gyro_text=""" gyr(True | False) \n -> Activer le gyrophare."""
card_gyro_url=[]
system_card_description.update({"gyro-card" : [card_gyro_title, card_gyro_text, card_gyro_url]})
# Pupitre
card_board_title="Pupitre"
card_board_text= """ bp_ext() \n -> Bouton poussoir coté rue.\n Retourne True si le bouton est pressé.\n
bp_int() \n -> Bouton poussoir coté cour.\n Retourne True si le bouton est pressé."""
card_board_url=[]
system_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=Portail_coulissant_(BE-APORT-COUL)"]]
system_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/"]]
system_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_system_card_description():
return system_card_description