mirror of
https://forge.apps.education.fr/blender-edutech/blender-edutech-ressources-pedagogiques.git
synced 2024-01-27 08:26:31 +01:00
Documents pédagogiques du portail coulissant
This commit is contained in:
parent
22ec487474
commit
bbe04cd8b1
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,112 +0,0 @@
|
||||
from porcou_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# porcou_cmd.py
|
||||
# @title: Commandes du portail coulissant
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le portail coulissant
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Gyrophare : gyr(True | False)
|
||||
# - Ouvrir le portail (moteur sens trigo) : mot_o(True | False)
|
||||
# - Fermer le portail (moteur sens horaire) : mot_f(True | False)
|
||||
# - Emetteur pour le capteur barrage IR : ir_emet(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur fin de course portail ouvert : fdc_o()
|
||||
# - Capteur fin de course portail fermé : fdc_f()
|
||||
# - Capteur barrage IR (absence d'obstacle) : ir_recep()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir coté rue : bp_ext()
|
||||
# - Bouton poussoir coté cour : bp_int()
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du portail coulissant
|
||||
brochage={
|
||||
'bp_ext' : [2,'d','i'],
|
||||
'ebp_int' : [3,'d','i'],
|
||||
'fdc_o' : [4,'d','i'],
|
||||
'fdc_f' : [5,'d','i'],
|
||||
'mot_o' : [6,'d','o'],
|
||||
'mot_f' : [7,'d','o'],
|
||||
'gyr' : [8,'d','o'],
|
||||
'ir_emett' : [9,'d','o'],
|
||||
'ir_recept' : [10,'d','i']}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
# Fermer le portail
|
||||
def fermer():
|
||||
print ("Fermeture")
|
||||
ir_emet(True)
|
||||
while fdc_f() ==False:
|
||||
gyr(True)
|
||||
mot_o(False)
|
||||
mot_f(True)
|
||||
if ir_recep()==False or bp_int() or bp_ext() : # Ouverture en cas présence d'obstacle ou boutons
|
||||
ouvrir()
|
||||
print ("Temporisation")
|
||||
tempo(2) # Temporisation 2s
|
||||
gyr(False)
|
||||
mot_f(False)
|
||||
ir_emet(False)
|
||||
|
||||
# Ouvrir le portail
|
||||
def ouvrir():
|
||||
print ("Ouverture")
|
||||
while fdc_o() ==False:
|
||||
gyr(True)
|
||||
mot_f(False)
|
||||
mot_o(True)
|
||||
gyr(False)
|
||||
mot_o(False)
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# jumeau(brochage)
|
||||
|
||||
# Mise en place : Fermeture
|
||||
print ("Version avec sécurité : avec réouverture si bouton ou capteur barrage")
|
||||
print ("Mise en place : Fermeture")
|
||||
fermer()
|
||||
|
||||
# Fonctionnement normal
|
||||
print ("Attente")
|
||||
while True :
|
||||
|
||||
# Ouverture
|
||||
if bp_int() or bp_ext() :
|
||||
ouvrir()
|
||||
|
||||
print ("Temporisation")
|
||||
tempo(2) # Temporisation 2s
|
||||
|
||||
# Fermeture
|
||||
fermer()
|
||||
print ("Attente")
|
||||
|
||||
fin() # A garder
|
||||
|
||||
|
||||
###############################################################################
|
||||
# En: External call << DONT CHANGE THIS SECTION >>
|
||||
# Fr: Appel externe << NE PAS MODIFIER CETTE SECTION >>
|
||||
###############################################################################
|
||||
|
||||
if __name__=='start':
|
||||
thread_cmd_start(commandes)
|
||||
if __name__=='stop':
|
||||
thread_cmd_stop()
|
@ -1,103 +0,0 @@
|
||||
from porcou_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# porcou_cmd.py
|
||||
# @title: Commandes du portail coulissant
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le portail coulissant
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Gyrophare : gyr(True | False)
|
||||
# - Ouvrir le portail (moteur sens trigo) : mot_o(True | False)
|
||||
# - Fermer le portail (moteur sens horaire) : mot_f(True | False)
|
||||
# - Emetteur pour le capteur barrage IR : ir_emet(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur fin de course portail ouvert : fdc_o()
|
||||
# - Capteur fin de course portail fermé : fdc_f()
|
||||
# - Capteur barrage IR (absence d'obstacle) : ir_recep()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir coté rue : bp_ext()
|
||||
# - Bouton poussoir coté cour : bp_int()
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du portail coulissant
|
||||
brochage={
|
||||
'bp_ext' : [2,'d','i'],
|
||||
'ebp_int' : [3,'d','i'],
|
||||
'fdc_o' : [4,'d','i'],
|
||||
'fdc_f' : [5,'d','i'],
|
||||
'mot_o' : [6,'d','o'],
|
||||
'mot_f' : [7,'d','o'],
|
||||
'gyr' : [8,'d','o'],
|
||||
'ir_emett' : [9,'d','o'],
|
||||
'ir_recept' : [10,'d','i']}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# jumeau(brochage)
|
||||
|
||||
# Mise en place : Fermeture
|
||||
print ("Version sans sécurité : sans réouverture")
|
||||
print ("Mise en place : Fermeture")
|
||||
while fdc_f() ==False :
|
||||
gyr(True)
|
||||
mot_o(False)
|
||||
mot_f(True)
|
||||
mot_f(False)
|
||||
gyr(False)
|
||||
|
||||
# Fonctionnement normal
|
||||
print ("Attente")
|
||||
while True :
|
||||
|
||||
# Ouverture
|
||||
if bp_int() or bp_ext() :
|
||||
print ("Ouverture")
|
||||
while fdc_o() ==False:
|
||||
gyr(True)
|
||||
mot_f(False)
|
||||
mot_o(True)
|
||||
gyr(False)
|
||||
mot_o(False)
|
||||
|
||||
print ("Temporisation")
|
||||
tempo(2) # Temporisation
|
||||
|
||||
# Fermeture
|
||||
print ("Fermeture")
|
||||
while fdc_f() ==False:
|
||||
gyr(True)
|
||||
mot_o(False)
|
||||
mot_f(True)
|
||||
gyr(False)
|
||||
mot_f(False)
|
||||
print ("Attente")
|
||||
|
||||
fin() # A garder
|
||||
|
||||
|
||||
###############################################################################
|
||||
# En: External call << DONT CHANGE THIS SECTION >>
|
||||
# Fr: Appel externe << NE PAS MODIFIER CETTE SECTION >>
|
||||
###############################################################################
|
||||
|
||||
if __name__=='start':
|
||||
thread_cmd_start(commandes)
|
||||
if __name__=='stop':
|
||||
thread_cmd_stop()
|
@ -1,60 +0,0 @@
|
||||
from porcou_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# porcou_cmd.py
|
||||
# @title: Commandes du portail coulissant
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le portail coulissant
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Gyrophare : gyr(True | False)
|
||||
# - Ouvrir le portail (moteur sens trigo) : mot_o(True | False)
|
||||
# - Fermer le portail (moteur sens horaire) : mot_f(True | False)
|
||||
# - Emetteur pour le capteur barrage IR : ir_emet(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur fin de course portail ouvert : fdc_o()
|
||||
# - Capteur fin de course portail fermé : fdc_f()
|
||||
# - Capteur barrage IR (absence d'obstacle) : ir_recep()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir coté rue : bp_ext()
|
||||
# - Bouton poussoir coté cour : bp_int()
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du portail coulissant
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# Ecrire votre code ici ...
|
||||
gyr(True) # Activer le gyrophare
|
||||
while True:
|
||||
pass
|
||||
|
||||
fin() # A garder
|
||||
|
||||
|
||||
###############################################################################
|
||||
# En: External call << DONT CHANGE THIS SECTION >>
|
||||
# Fr: Appel externe << NE PAS MODIFIER CETTE SECTION >>
|
||||
###############################################################################
|
||||
|
||||
if __name__=='start':
|
||||
thread_cmd_start(commandes)
|
||||
if __name__=='stop':
|
||||
thread_cmd_stop()
|
@ -1,79 +0,0 @@
|
||||
import bge # Bibliothèque Blender Game Engine (UPBGE)
|
||||
from porcou_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# porcou_cmd.py
|
||||
# @title: Commandes du portail coulissant
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Gestion des tâches (threads) << NE PAS MODIFIER CETTE SECTION >>
|
||||
###############################################################################
|
||||
|
||||
threads=[]
|
||||
scene = bge.logic.getCurrentScene()
|
||||
|
||||
def start():
|
||||
thread_start(threads, commandes)
|
||||
|
||||
def stop():
|
||||
thread_stop(threads)
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le portail coulissant
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Gyrophare : gyr (True|False)
|
||||
# - Ouvrir le portail (moteur sens trigo) : mot_o (True|False)
|
||||
# - Fermer le portail (moteur sens horaire) : mot_f (True|False)
|
||||
# - Emetteur pour le capteur barrage IR : ir_emet(True|False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur fin de course portail ouvert : fc_o()
|
||||
# - Capteur fin de course portail fermé : fc_f()
|
||||
# - Capteur barrage IR (absence d'obstacle) : ir_recep()
|
||||
#
|
||||
# Pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir coté rue : bp_ext()
|
||||
# - Bouton poussoir coté cour : bp_int()
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
###############################################################################
|
||||
# Allée-retour simple (sans la sécurité anti-écrasement lors de la fermeture)
|
||||
###############################################################################
|
||||
|
||||
# Mise en place : Fermeture
|
||||
while (fc_f() ==False) :
|
||||
gyr(True)
|
||||
mot_f(True)
|
||||
mot_f(False)
|
||||
gyr(False)
|
||||
|
||||
# Fonctionnement normal
|
||||
while True :
|
||||
|
||||
# Ouverture
|
||||
if bp_int() or bp_ext() :
|
||||
while fc_o() ==False:
|
||||
gyr(True)
|
||||
mot_o(True)
|
||||
gyr(False)
|
||||
mot_o(False)
|
||||
|
||||
tempo(2) # Temporisation
|
||||
|
||||
# Fermeture
|
||||
while fc_f() ==False:
|
||||
gyr(True)
|
||||
mot_f(True)
|
||||
gyr(False)
|
||||
mot_f(False)
|
||||
|
||||
print ("Thread #", len(threads)-1, "arrivé au bout -> fermeture.") # Tâche close (thread) << NE PAS MODIFIER CETTE LIGNE >>
|
||||
scene.objects['Systeme']['thread_run']=False # Fin du cycle << NE PAS MODIFIER CETTE LIGNE >>
|
@ -1,91 +0,0 @@
|
||||
import bge # Bibliothèque Blender Game Engine (UPBGE)
|
||||
from porcou_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# porcou_cmd.py
|
||||
# @title: Commandes du portail coulissant
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Gestion des tâches (threads) << NE PAS MODIFIER CETTE SECTION >>
|
||||
###############################################################################
|
||||
|
||||
threads=[]
|
||||
scene = bge.logic.getCurrentScene()
|
||||
|
||||
def start():
|
||||
thread_start(threads, commandes)
|
||||
|
||||
def stop():
|
||||
thread_stop(threads)
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le portail coulissant
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Gyrophare : gyr (True|False)
|
||||
# - Ouvrir le portail (moteur sens trigo) : mot_o (True|False)
|
||||
# - Fermer le portail (moteur sens horaire) : mot_f (True|False)
|
||||
# - Emetteur pour le capteur barrage IR : ir_emet(True|False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur fin de course portail ouvert : fc_o()
|
||||
# - Capteur fin de course portail fermé : fc_f()
|
||||
# - Capteur barrage IR (absence d'obstacle) : ir_recep()
|
||||
#
|
||||
# Pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir coté rue : bp_ext()
|
||||
# - Bouton poussoir coté cour : bp_int()
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Fermer le portail
|
||||
def fermer():
|
||||
ir_emet(True)
|
||||
while fc_f() ==False:
|
||||
gyr(True)
|
||||
mot_o(False)
|
||||
mot_f(True)
|
||||
if ir_recep()==False or bp_int() or bp_ext() : # Ouverture en cas présence d'obstacle ou boutons
|
||||
ouvrir()
|
||||
tempo(2) # Temporisation 2s
|
||||
gyr(False)
|
||||
mot_f(False)
|
||||
ir_emet(False)
|
||||
|
||||
# Ouvrir le portail
|
||||
def ouvrir():
|
||||
while fc_o() ==False:
|
||||
gyr(True)
|
||||
mot_f(False)
|
||||
mot_o(True)
|
||||
gyr(False)
|
||||
mot_o(False)
|
||||
|
||||
|
||||
def commandes():
|
||||
|
||||
###############################################################################
|
||||
# Allée-retour avec la sécurité anti-écrasement lors de la fermeture
|
||||
###############################################################################
|
||||
|
||||
# Mise en place : Fermeture
|
||||
fermer()
|
||||
|
||||
# Fonctionnement normal
|
||||
while True :
|
||||
|
||||
# Ouverture
|
||||
if bp_int() or bp_ext() :
|
||||
ouvrir()
|
||||
|
||||
tempo(2) # Temporisation 2s
|
||||
|
||||
# Fermeture
|
||||
fermer()
|
||||
|
||||
print ("Thread #", len(threads)-1, "arrivé au bout -> fermeture.") # Tâche close (thread) << NE PAS MODIFIER CETTE LIGNE >>
|
||||
scene.objects['Systeme']['thread_run']=False # Fin du cycle << NE PAS MODIFIER CETTE LIGNE >>
|
Loading…
Reference in New Issue
Block a user