Update 8 files

- /Lycee/programmation_python/si/monte_charge/montchg_cmd-correction-appels.py.~1~
- /Lycee/programmation_python/si/monte_charge/montchg_cmd-correction-appels.py.~2~
- /Lycee/programmation_python/si/monte_charge/montchg_cmd-correction-tempo.py.~1~
- /Lycee/programmation_python/si/monte_charge/montchg_cmd-correction-tempo.py.~2~
- /Lycee/programmation_python/si/monte_charge/montchg_cmd-correction.py.~1~
- /Lycee/programmation_python/si/monte_charge/montchg_cmd-correction.py.~2~
- /Lycee/programmation_python/si/monte_charge/montchg_cmd.py.~1~
- /Lycee/programmation_python/si/monte_charge/montchg_cmd.py.~2~
This commit is contained in:
Philippe Roy 2023-01-01 13:52:54 +00:00
parent 13de36e4e9
commit 61ad8de84e
8 changed files with 0 additions and 780 deletions

View File

@ -1,100 +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_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()

View File

@ -1,96 +0,0 @@
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()

View File

@ -1,121 +0,0 @@
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()

View File

@ -1,123 +0,0 @@
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()

View File

@ -1,100 +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_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()

View File

@ -1,94 +0,0 @@
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()

View File

@ -1,74 +0,0 @@
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()

View File

@ -1,72 +0,0 @@
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()