mirror of
https://forge.apps.education.fr/blender-edutech/blender-edutech-ressources-pedagogiques.git
synced 2024-01-27 08:26:31 +01:00
Ajout des corrections
This commit is contained in:
parent
f86bce65e7
commit
13de36e4e9
@ -0,0 +1,110 @@
|
||||
from montchg_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# montchg_cmd.py
|
||||
# @title: Commandes du monte-charge
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le monte-charge
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Monter le monte-charge (moteur sens trigo) : mot_m(True | False)
|
||||
# - Descendre le monte-charge (moteur sens horaire) : mot_d(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur présence cabine niveau 0 : pc_0()
|
||||
# - Capteur présence cabine niveau 1 : pc_1()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir appel niveau 0 : ba_0()
|
||||
# - Bouton poussoir appel niveau 1 : ba_1()
|
||||
#
|
||||
# Retours d'information du pupitre (allumer = True ou False) :
|
||||
# - Voyant témoin d'appel étage niveau 0 : voy_0(True | False)
|
||||
# - Voyant témoin d'appel étage niveau 1 : voy_1(True | False)
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du monte-charge
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# Mise en place : Aller au niveau 0
|
||||
print ("Monte-charge version avec la mémorisation des appels (simultanéité des actions)")
|
||||
print ("Mise en place : Aller au niveau 0 ...")
|
||||
while pc_0() ==False:
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
mot_d(False)
|
||||
print ("Mise en place : Aller au niveau 0 : Ok")
|
||||
|
||||
# Fonctionnement normal
|
||||
appel_0 =False # Mémorisation de l'appel
|
||||
appel_1 =False # Mémorisation de l'appel
|
||||
mov_0 =False # Mouvement en cours (ne pas interrompre)
|
||||
mov_1 =False # Mouvement en cours (ne pas interrompre)
|
||||
print ("Attente")
|
||||
while True:
|
||||
|
||||
# Mémorisation des appels
|
||||
if ba_0()==True:
|
||||
print ("Appel pour le niveau 0")
|
||||
voy_0(True)
|
||||
appel_0 = True
|
||||
if ba_1()==True:
|
||||
print ("Appel pour le niveau 1")
|
||||
voy_1(True)
|
||||
appel_1 = True
|
||||
|
||||
# Aller au niveau 0
|
||||
if appel_0 and mov_1==False and pc_0() ==False:
|
||||
mov_0 = True
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
|
||||
# Aller au niveau 1
|
||||
if appel_1 and mov_0==False and pc_1() ==False:
|
||||
mov_1 = True
|
||||
mot_d(False)
|
||||
mot_m(True)
|
||||
|
||||
# Arrêt des mouvements
|
||||
if pc_0() and mov_0:
|
||||
mot_m(False)
|
||||
mot_d(False)
|
||||
voy_0(False)
|
||||
mov_0 = False
|
||||
appel_0 = False
|
||||
|
||||
if pc_1() and mov_1:
|
||||
mot_m(False)
|
||||
mot_d(False)
|
||||
voy_1(False)
|
||||
mov_1 = False
|
||||
appel_1 = False
|
||||
|
||||
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()
|
@ -0,0 +1,100 @@
|
||||
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_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_o(True)
|
||||
gyr(False)
|
||||
mot_o(False)
|
||||
|
||||
print ("Temporisation")
|
||||
tempo(2) # Temporisation
|
||||
|
||||
# Fermeture
|
||||
print ("Fermeture")
|
||||
while fdc_f() ==False:
|
||||
gyr(True)
|
||||
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()
|
@ -0,0 +1,96 @@
|
||||
from montchg_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# montchg_cmd.py
|
||||
# @title: Commandes du monte-charge
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le monte-charge
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Monter le monte-charge (moteur sens trigo) : mot_m(True | False)
|
||||
# - Descendre le monte-charge (moteur sens horaire) : mot_d(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur présence cabine niveau 0 : pc_0()
|
||||
# - Capteur présence cabine niveau 1 : pc_1()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir appel niveau 0 : ba_0()
|
||||
# - Bouton poussoir appel niveau 1 : ba_1()
|
||||
#
|
||||
# Retours d'information du pupitre (allumer = True ou False) :
|
||||
# - Voyant témoin d'appel étage niveau 0 : voy_0(True | False)
|
||||
# - Voyant témoin d'appel étage niveau 1 : voy_1(True | False)
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du monte-charge
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# Mise en place : Aller au niveau 0
|
||||
print ("Monte-charge sans la mémorisation des appels")
|
||||
print ("Mise en place : Aller au niveau 0 ...")
|
||||
while pc_0() ==False:
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
mot_d(False)
|
||||
print ("Mise en place : Aller au niveau 0 : Ok")
|
||||
|
||||
# Fonctionnement normal
|
||||
print ("Attente")
|
||||
while True:
|
||||
|
||||
# Aller au niveau 0
|
||||
if ba_0() :
|
||||
print ("Déplacement pour le niveau 0 ...")
|
||||
voy_0(True)
|
||||
while pc_0() ==False:
|
||||
mot_m(False)
|
||||
mot_d(True)g
|
||||
mot_d(False)
|
||||
tempo(2) # Temporisation 2s
|
||||
voy_0(False)
|
||||
print ("Déplacement pour le niveau 0 : Ok")
|
||||
print ("Attente")
|
||||
|
||||
# Aller au niveau 1
|
||||
if ba_1() :
|
||||
print ("Déplacement pour le niveau 1 ...")
|
||||
voy_1(True)
|
||||
while pc_1() ==False:
|
||||
mot_d(False)
|
||||
mot_m(True)
|
||||
mot_m(False)
|
||||
tempo(2) # Temporisation 2s
|
||||
voy_1(False)
|
||||
mov_1 = False
|
||||
print ("Déplacement pour le niveau 1 : Ok")
|
||||
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()
|
@ -0,0 +1,133 @@
|
||||
from montchg_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# montchg_cmd.py
|
||||
# @title: Commandes du monte-charge
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le monte-charge
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Monter le monte-charge (moteur sens trigo) : mot_m(True | False)
|
||||
# - Descendre le monte-charge (moteur sens horaire) : mot_d(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur présence cabine niveau 0 : pc_0()
|
||||
# - Capteur présence cabine niveau 1 : pc_1()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir appel niveau 0 : ba_0()
|
||||
# - Bouton poussoir appel niveau 1 : ba_1()
|
||||
#
|
||||
# Retours d'information du pupitre (allumer = True ou False) :
|
||||
# - Voyant témoin d'appel étage niveau 0 : voy_0(True | False)
|
||||
# - Voyant témoin d'appel étage niveau 1 : voy_1(True | False)
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du monte-charge
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# Mise en place : Aller au niveau 0
|
||||
print ("Monte-charge version avec la mémorisation des appels et la temporisation")
|
||||
print ("Mise en place : Aller au niveau 0 ...")
|
||||
while pc_0() ==False:
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
mot_d(False)
|
||||
print ("Mise en place : Aller au niveau 0 : Ok")
|
||||
|
||||
# Fonctionnement normal
|
||||
appel_0 =False # Mémorisation de l'appel
|
||||
appel_1 =False # Mémorisation de l'appel
|
||||
mov_0 =False # Mouvement en cours (ne pas interrompre)
|
||||
mov_1 =False # Mouvement en cours (ne pas interrompre)
|
||||
temp = False # Temporisation active
|
||||
duree=0 # Durée écoulée (en 0,1 s) de la temporisation
|
||||
print ("Attente")
|
||||
while True:
|
||||
|
||||
# Mémorisation des appels
|
||||
if ba_0()==True:
|
||||
print ("Appel pour le niveau 0")
|
||||
voy_0(True)
|
||||
appel_0 = True
|
||||
if ba_1()==True:
|
||||
print ("Appel pour le niveau 1")
|
||||
voy_1(True)
|
||||
appel_1 = True
|
||||
|
||||
# Aller au niveau 0
|
||||
if appel_0 and mov_0 == False and mov_1==False and pc_0() ==False and temp == False:
|
||||
print ("Déplacement pour le niveau 0 ...")
|
||||
mov_0 = True
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
|
||||
# Aller au niveau 1
|
||||
if appel_1 and mov_0 == False and mov_1==False and pc_1() ==False and temp == False:
|
||||
print ("Déplacement pour le niveau 1 ...")
|
||||
mov_1 = True
|
||||
mot_d(False)
|
||||
mot_m(True)
|
||||
|
||||
# Arrêt des mouvements et déclanchement de la temporisation
|
||||
if pc_0() and temp == False and mov_0:
|
||||
print ("Déplacement pour le niveau 0 : Ok")
|
||||
print ("Temporisation ...")
|
||||
mot_m(False)
|
||||
mot_d(False)
|
||||
temp = True
|
||||
if pc_1() and temp == False and mov_1:
|
||||
print ("Déplacement pour le niveau 1 : Ok")
|
||||
print ("Temporisation ...")
|
||||
mot_m(False)
|
||||
mot_d(False)
|
||||
temp = True
|
||||
|
||||
# Temporisation
|
||||
if temp:
|
||||
tempo(0.1) # Temporisation 0.1s
|
||||
duree +=1
|
||||
|
||||
# Arrêt du cycle quand la temporisation est cloturée
|
||||
if duree==20: # Temporisation 2s
|
||||
print ("Temporisation : Ok")
|
||||
temp = False
|
||||
if mov_0:
|
||||
mov_0 = False
|
||||
voy_0(False)
|
||||
appel_0 = False
|
||||
if mov_1:
|
||||
mov_1 = False
|
||||
voy_1(False)
|
||||
appel_1 = False
|
||||
duree=0
|
||||
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()
|
@ -0,0 +1,121 @@
|
||||
from montchg_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# montchg_cmd.py
|
||||
# @title: Commandes du monte-charge
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le monte-charge
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Monter le monte-charge (moteur sens trigo) : mot_m(True | False)
|
||||
# - Descendre le monte-charge (moteur sens horaire) : mot_d(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur présence cabine niveau 0 : pc_0()
|
||||
# - Capteur présence cabine niveau 1 : pc_1()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir appel niveau 0 : ba_0()
|
||||
# - Bouton poussoir appel niveau 1 : ba_1()
|
||||
#
|
||||
# Retours d'information du pupitre (allumer = True ou False) :
|
||||
# - Voyant témoin d'appel étage niveau 0 : voy_0(True | False)
|
||||
# - Voyant témoin d'appel étage niveau 1 : voy_1(True | False)
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du monte-charge
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# Mise en place : Aller au niveau 0
|
||||
print ("Monte-charge version avec la mémorisation des appels (simultanéité des actions)")
|
||||
print ("Mise en place : Aller au niveau 0 ...")
|
||||
while pc_0() ==False:
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
mot_d(False)
|
||||
print ("Mise en place : Aller au niveau 0 : Ok")
|
||||
|
||||
# Fonctionnement normal
|
||||
appel_0 =False # Mémorisation de l'appel
|
||||
appel_1 =False # Mémorisation de l'appel
|
||||
mov_0 =False # Mouvement en cours (ne pas interrompre)
|
||||
mov_1 =False # Mouvement en cours (ne pas interrompre)
|
||||
print ("Attente")
|
||||
while True:
|
||||
|
||||
# Mémorisation des appels
|
||||
if ba_0()==True:
|
||||
print ("Appel pour le niveau 0")
|
||||
voy_0(True)
|
||||
appel_0 = True
|
||||
if ba_1()==True:
|
||||
print ("Appel pour le niveau 1")
|
||||
voy_1(True)
|
||||
appel_1 = True
|
||||
|
||||
# Aller au niveau 0
|
||||
if appel_0 and mov_1==False and pc_0() ==False and temp == False:
|
||||
mov_0 = True
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
|
||||
# Aller au niveau 1
|
||||
if appel_1 and mov_0==False and pc_1() ==False and temp == False:
|
||||
mov_1 = True
|
||||
mot_d(False)
|
||||
mot_m(True)
|
||||
|
||||
# Arrêt des mouvements et déclanchement des temporisations
|
||||
if pc_0() and temp == False and mov_0:
|
||||
mot_m(False)
|
||||
mot_d(False)
|
||||
if pc_1() and temp == False and mov_1:
|
||||
mot_m(False)
|
||||
mot_d(False)
|
||||
|
||||
# Temporisation
|
||||
if temp:
|
||||
tempo(0.1) # Temporisation 0.1s
|
||||
duree +=1
|
||||
|
||||
# Arrêt du cycle quand la temporisation est cloturée
|
||||
if duree=20: # Temporisation 2s
|
||||
temp = False
|
||||
if pc_0() and mov_0:
|
||||
mov_0 = False
|
||||
voy_0(False)
|
||||
appel_0 = False
|
||||
if pc_1() and mov_1:
|
||||
mov_1 = False
|
||||
voy_1(False)
|
||||
appel_1 = False
|
||||
|
||||
|
||||
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()
|
@ -0,0 +1,123 @@
|
||||
from montchg_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# montchg_cmd.py
|
||||
# @title: Commandes du monte-charge
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le monte-charge
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Monter le monte-charge (moteur sens trigo) : mot_m(True | False)
|
||||
# - Descendre le monte-charge (moteur sens horaire) : mot_d(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur présence cabine niveau 0 : pc_0()
|
||||
# - Capteur présence cabine niveau 1 : pc_1()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir appel niveau 0 : ba_0()
|
||||
# - Bouton poussoir appel niveau 1 : ba_1()
|
||||
#
|
||||
# Retours d'information du pupitre (allumer = True ou False) :
|
||||
# - Voyant témoin d'appel étage niveau 0 : voy_0(True | False)
|
||||
# - Voyant témoin d'appel étage niveau 1 : voy_1(True | False)
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du monte-charge
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# Mise en place : Aller au niveau 0
|
||||
print ("Monte-charge version avec la mémorisation des appels et la temporisation")
|
||||
print ("Mise en place : Aller au niveau 0 ...")
|
||||
while pc_0() ==False:
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
mot_d(False)
|
||||
print ("Mise en place : Aller au niveau 0 : Ok")
|
||||
|
||||
# Fonctionnement normal
|
||||
appel_0 =False # Mémorisation de l'appel
|
||||
appel_1 =False # Mémorisation de l'appel
|
||||
mov_0 =False # Mouvement en cours (ne pas interrompre)
|
||||
mov_1 =False # Mouvement en cours (ne pas interrompre)
|
||||
print ("Attente")
|
||||
while True:
|
||||
|
||||
# Mémorisation des appels
|
||||
if ba_0()==True:
|
||||
print ("Appel pour le niveau 0")
|
||||
voy_0(True)
|
||||
appel_0 = True
|
||||
if ba_1()==True:
|
||||
print ("Appel pour le niveau 1")
|
||||
voy_1(True)
|
||||
appel_1 = True
|
||||
|
||||
# Aller au niveau 0
|
||||
if appel_0 and mov_1==False and pc_0() ==False and temp == False:
|
||||
mov_0 = True
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
|
||||
# Aller au niveau 1
|
||||
if appel_1 and mov_0==False and pc_1() ==False and temp == False:
|
||||
mov_1 = True
|
||||
mot_d(False)
|
||||
mot_m(True)
|
||||
|
||||
# Arrêt des mouvements et déclanchement des temporisations
|
||||
if pc_0() and temp == False and mov_0:
|
||||
mot_m(False)
|
||||
mot_d(False)
|
||||
temp = True
|
||||
if pc_1() and temp == False and mov_1:
|
||||
mot_m(False)
|
||||
mot_d(False)
|
||||
temp = True
|
||||
|
||||
# Temporisation
|
||||
if temp:
|
||||
tempo(0.1) # Temporisation 0.1s
|
||||
duree +=1
|
||||
|
||||
# Arrêt du cycle quand la temporisation est cloturée
|
||||
if duree=20: # Temporisation 2s
|
||||
temp = False
|
||||
if pc_0() and mov_0:
|
||||
mov_0 = False
|
||||
voy_0(False)
|
||||
appel_0 = False
|
||||
if pc_1() and mov_1:
|
||||
mov_1 = False
|
||||
voy_1(False)
|
||||
appel_1 = False
|
||||
|
||||
|
||||
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()
|
@ -0,0 +1,96 @@
|
||||
from montchg_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# montchg_cmd.py
|
||||
# @title: Commandes du monte-charge
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le monte-charge
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Monter le monte-charge (moteur sens trigo) : mot_m(True | False)
|
||||
# - Descendre le monte-charge (moteur sens horaire) : mot_d(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur présence cabine niveau 0 : pc_0()
|
||||
# - Capteur présence cabine niveau 1 : pc_1()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir appel niveau 0 : ba_0()
|
||||
# - Bouton poussoir appel niveau 1 : ba_1()
|
||||
#
|
||||
# Retours d'information du pupitre (allumer = True ou False) :
|
||||
# - Voyant témoin d'appel étage niveau 0 : voy_0(True | False)
|
||||
# - Voyant témoin d'appel étage niveau 1 : voy_1(True | False)
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du monte-charge
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# Mise en place : Aller au niveau 0
|
||||
print ("Monte-charge sans la mémorisation des appels")
|
||||
print ("Mise en place : Aller au niveau 0 ...")
|
||||
while pc_0() ==False:
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
mot_d(False)
|
||||
print ("Mise en place : Aller au niveau 0 : Ok")
|
||||
|
||||
# Fonctionnement normal
|
||||
print ("Attente")
|
||||
while True:
|
||||
|
||||
# Aller au niveau 0
|
||||
if ba_0() :
|
||||
print ("Déplacement pour le niveau 0 ...")
|
||||
voy_0(True)
|
||||
while pc_0() ==False:
|
||||
mot_m(False)
|
||||
mot_d(True)g
|
||||
mot_d(False)
|
||||
tempo(2) # Temporisation 2s
|
||||
voy_0(False)
|
||||
print ("Déplacement pour le niveau 0 : Ok")
|
||||
print ("Attente")
|
||||
|
||||
# Aller au niveau 1
|
||||
if ba_1() :
|
||||
print ("Déplacement pour le niveau 1 ...")
|
||||
voy_1(True)
|
||||
while pc_1() ==False:
|
||||
mot_d(False)
|
||||
mot_m(True)
|
||||
mot_m(False)
|
||||
tempo(2) # Temporisation 2s
|
||||
voy_1(False)
|
||||
mov_1 = False
|
||||
print ("Déplacement pour le niveau 1 : Ok")
|
||||
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()
|
@ -0,0 +1,100 @@
|
||||
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_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_o(True)
|
||||
gyr(False)
|
||||
mot_o(False)
|
||||
|
||||
print ("Temporisation")
|
||||
tempo(2) # Temporisation
|
||||
|
||||
# Fermeture
|
||||
print ("Fermeture")
|
||||
while fdc_f() ==False:
|
||||
gyr(True)
|
||||
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()
|
@ -0,0 +1,94 @@
|
||||
from montchg_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# montchg_cmd.py
|
||||
# @title: Commandes du monte-charge
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le monte-charge
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Monter le monte-charge (moteur sens trigo) : mot_m(True | False)
|
||||
# - Descendre le monte-charge (moteur sens horaire) : mot_d(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur présence cabine niveau 0 : pc_0()
|
||||
# - Capteur présence cabine niveau 1 : pc_1()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir appel niveau 0 : ba_0()
|
||||
# - Bouton poussoir appel niveau 1 : ba_1()
|
||||
#
|
||||
# Retours d'information du pupitre (allumer = True ou False) :
|
||||
# - Voyant témoin d'appel étage niveau 0 : voy_0(True | False)
|
||||
# - Voyant témoin d'appel étage niveau 1 : voy_1(True | False)
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du monte-charge
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# Mise en place : Aller au niveau 0
|
||||
print ("Monte-charge version avec la mémorisation des appels")
|
||||
print ("Mise en place : Aller au niveau 0 ...")
|
||||
while pc_0() ==False:
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
mot_d(False)
|
||||
print ("Mise en place : Aller au niveau 0 : Ok")
|
||||
|
||||
# Fonctionnement normal
|
||||
print ("Attente")
|
||||
while True:
|
||||
|
||||
# Aller au niveau 0
|
||||
if ba_0() :
|
||||
print ("Déplacement pour le niveau 0 ...")
|
||||
voy_0(True)
|
||||
while pc_0() ==False:
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
mot_d(False)
|
||||
tempo(2) # Temporisation 2s
|
||||
voy_0(False)
|
||||
print ("Déplacement pour le niveau 0 : Ok")
|
||||
|
||||
# Aller au niveau 1
|
||||
if ba_1() :
|
||||
print ("Déplacement pour le niveau 1 ...")
|
||||
voy_1(True)
|
||||
while pc_1() ==False:
|
||||
mot_d(False)
|
||||
mot_m(True)
|
||||
mot_m(False)
|
||||
tempo(2) # Temporisation 2s
|
||||
voy_1(False)
|
||||
mov_1 = False
|
||||
print ("Déplacement pour le niveau 1 : Ok")
|
||||
|
||||
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()
|
65
Lycee/programmation_python/si/monte_charge/montchg_cmd.py
Normal file
65
Lycee/programmation_python/si/monte_charge/montchg_cmd.py
Normal file
@ -0,0 +1,65 @@
|
||||
from montchg_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# montchg_cmd.py
|
||||
# @title: Commandes du monte-charge
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le monte-charge
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Monter le monte-charge (moteur sens trigo) : mot_m(True | False)
|
||||
# - Descendre le monte-charge (moteur sens horaire) : mot_d(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur présence cabine niveau 0 : pc_0()
|
||||
# - Capteur présence cabine niveau 1 : pc_1()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir appel niveau 0 : ba_0()
|
||||
# - Bouton poussoir appel niveau 1 : ba_1()
|
||||
#
|
||||
# Retours d'information du pupitre (allumer = True ou False) :
|
||||
# - Voyant témoin d'étage niveau 0 : voy_0(True | False)
|
||||
# - Voyant témoin d'étage niveau 1 : voy_1(True | False)
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du monte-charge
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
|
||||
# Ecrire votre code ici ...
|
||||
while True:
|
||||
voy_0(True)
|
||||
voy_1(False)
|
||||
tempo(0.5)
|
||||
voy_0(False)
|
||||
voy_1(True)
|
||||
tempo(0.5)
|
||||
|
||||
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()
|
@ -0,0 +1,74 @@
|
||||
from montchg_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# montchg_cmd.py
|
||||
# @title: Commandes du monte-charge
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le monte-charge
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Monter le monte-charge (moteur sens trigo) : mot_m(True | False)
|
||||
# - Descendre le monte-charge (moteur sens horaire) : mot_d(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur présence cabine niveau 0 : pc_0()
|
||||
# - Capteur présence cabine niveau 1 : pc_1()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir appel niveau 0 : ba_0()
|
||||
# - Bouton poussoir appel niveau 1 : ba_1()
|
||||
#
|
||||
# Retours d'information du pupitre (allumer = True ou False) :
|
||||
# - Voyant témoin d'étage niveau 0 : voy_0(True | False)
|
||||
# - Voyant témoin d'étage niveau 1 : voy_1(True | False)
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du monte-charge
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
print ("Ok go !!")
|
||||
|
||||
# Ecrire votre code ici ...
|
||||
while True:
|
||||
|
||||
if ba_0()==True:
|
||||
voy_1(False)
|
||||
voy_0(True)
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
|
||||
if ba_1()==True:
|
||||
voy_0(False)
|
||||
voy_1(True)
|
||||
mot_d(False)
|
||||
mot_m(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()
|
@ -0,0 +1,72 @@
|
||||
from montchg_lib import * # Bibliothèque portail coulissant
|
||||
|
||||
###############################################################################
|
||||
# montchg_cmd.py
|
||||
# @title: Commandes du monte-charge
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Instructions élémentaires pour le monte-charge
|
||||
#
|
||||
# Actions (ordre = True ou False) :
|
||||
# - Monter le monte-charge (moteur sens trigo) : mot_m(True | False)
|
||||
# - Descendre le monte-charge (moteur sens horaire) : mot_d(True | False)
|
||||
#
|
||||
# Capteurs (valeur retournée = True ou False) :
|
||||
# - Capteur présence cabine niveau 0 : pc_0()
|
||||
# - Capteur présence cabine niveau 1 : pc_1()
|
||||
#
|
||||
# Consignes du pupitre (valeur retournée = True ou False) :
|
||||
# - Bouton poussoir appel niveau 0 : ba_0()
|
||||
# - Bouton poussoir appel niveau 1 : ba_1()
|
||||
#
|
||||
# Retours d'information du pupitre (allumer = True ou False) :
|
||||
# - Voyant témoin d'étage niveau 0 : voy_0(True | False)
|
||||
# - Voyant témoin d'étage niveau 1 : voy_1(True | False)
|
||||
#
|
||||
# Gestion du temps :
|
||||
# - Temporisation en seconde : tempo(duree)
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
# Brochage du monte-charge
|
||||
brochage={}
|
||||
|
||||
###############################################################################
|
||||
# Fonctions
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Commandes
|
||||
###############################################################################
|
||||
|
||||
def commandes():
|
||||
print ("Ok go !!")
|
||||
|
||||
# Ecrire votre code ici ...
|
||||
while True:
|
||||
|
||||
if ba_0()==True:
|
||||
voy_1(False)
|
||||
voy_0(True)
|
||||
mot_m(False)
|
||||
mot_d(True)
|
||||
|
||||
if ba_1()==True:
|
||||
voy_0(False)
|
||||
voy_1(True)
|
||||
mot_d(False)
|
||||
mot_m(True)
|
||||
|
||||
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()
|
@ -0,0 +1,60 @@
|
||||
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()
|
Loading…
Reference in New Issue
Block a user