Faire des tempo de durée différentes python

Ardue

Bonjour,
Je programme un petit script python qui doit s’exécuter par rapport à un programme C++, en gros ce programme doit contrôlé un microcontrôleur (RLY88) qui doit activer deux relais mais dans une tempo différente en pouvant réactiver le relais 1 et même temps que le relais 2 soit activé, exemple le relais doit être activé 2s et le relais 2 5 minutes et que le relais 1 doit pouvoir s'activer même si le relais 2 n'a pas fini sont tempo...
Bonjour visiteur, merci de vous inscrire ou de vous connecter pour voir l'intégralité de ce sujet ! Identifiez-vous ou inscrivez-vous dès maintenant.
 

Praxis

Salut,

Pas bien compris ta demande à vrai dire, tu veux pouvoir lancer 2 fonctions simultanément en gros non ?
 

Ardue

Praxis' a dit:
Salut,

Pas bien compris ta demande à vrai dire, tu veux pouvoir lancer 2 fonctions simultanément en gros non ?
Cliquez pour agrandir...
je vais reformuler ça autrement, le but de mon programme python et d'ouvrir deux relais, le premier aura besoin juste d'une tempo de 2 secondes pour que le relais soit ouvert 2 secondes, le deuxième relais aura besoin d'une tempo de 5 minutes pour le relais soit ouvert 5 minutes, le but de ma demande et que si je lance le programme je peut ouvrir le relais 1 sans attendre 5 minutes que le relais 2 se termine, et que à chaque lancement du programme le relais 2 évite de s'accumuler (ex: 5 min +5 + 5+....+ 5=....) le but c'est qui soit bloqué à 5 minutes max .
On m'a parlé d'une solution et de faire deux programme python et d'utilisé des threads mais je trouve la démarche compliqué pour ce que je demande.
 

Spixz

Ardue a dit:
je vais reformuler ça autrement, le but de mon programme python et d'ouvrir deux relais, le premier aura besoin juste d'une tempo de 2 secondes pour que le relais soit ouvert 2 secondes, le deuxième relais aura besoin d'une tempo de 5 minutes pour le relais soit ouvert 5 minutes, le but de ma demande et que si je lance le programme je peut ouvrir le relais 1 sans attendre 5 minutes que le relais 2 se termine, et que à chaque lancement du programme le relais 2 évite de s'accumuler (ex: 5 min +5 + 5+....+ 5=....) le but c'est qui soit bloqué à 5 minutes max .
On m'a parlé d'une solution et de faire deux programme python et d'utilisé des threads mais je trouve la démarche compliqué pour ce que je demande.
Cliquez pour agrandir...
Même avec cette explication j'ai pas tout compris. Est-ce que tu pourrais faire un schéma qui explique l'état de tes relais au cours du temps ?
J'ai compris que tu souhaitais ouvir et fermé le relai 1 toutes les 2 secondes et faire pareil pour le relai 2 mais toutes les 5 minutes. Ce que je ne comprends pas, c'est la relation entre les deux.
 

Praxis

Ardue a dit:
je vais reformuler ça autrement, le but de mon programme python et d'ouvrir deux relais, le premier aura besoin juste d'une tempo de 2 secondes pour que le relais soit ouvert 2 secondes, le deuxième relais aura besoin d'une tempo de 5 minutes pour le relais soit ouvert 5 minutes, le but de ma demande et que si je lance le programme je peut ouvrir le relais 1 sans attendre 5 minutes que le relais 2 se termine, et que à chaque lancement du programme le relais 2 évite de s'accumuler (ex: 5 min +5 + 5+....+ 5=....) le but c'est qui soit bloqué à 5 minutes max .
On m'a parlé d'une solution et de faire deux programme python et d'utilisé des threads mais je trouve la démarche compliqué pour ce que je demande.
Cliquez pour agrandir...
2 process simultané = pas le choix faut des thread.
Spixz a dit:
Même avec cette explication j'ai pas tout compris. Est-ce que tu pourrais faire un schéma qui explique l'état de tes relais au cours du temps ?
J'ai compris que tu souhaitais ouvir et fermé le relai 1 toutes les 2 secondes et faire pareil pour le relai 2 mais toutes les 5 minutes. Ce que je ne comprends pas, c'est la relation entre les deux.
Cliquez pour agrandir...
Aucune à priori.
 

Ardue

Spixz a dit:
Même avec cette explication j'ai pas tout compris. Est-ce que tu pourrais faire un schéma qui explique l'état de tes relais au cours du temps ?
J'ai compris que tu souhaitais ouvir et fermé le relai 1 toutes les 2 secondes et faire pareil pour le relai 2 mais toutes les 5 minutes. Ce que je ne comprends pas, c'est la relation entre les deux.
Cliquez pour agrandir...
En gros j'ai un programme qui lance un script python, ce scripte python doit ouvrir le relais 1 2 seconde qui contrôle une porte, puis le relais 2 5 minutes qui contrôle des lumieres, le problème c'est que le programme qui fait appelle au sript peut se réactivé plusieurs fois, s'il le fait il doit attendre 5 minutes que le script python ce ferme pour pouvoir se lancer et ça ce n'est pas possible, car je doit ouvrir impérativement le relais 1 qui ouvre la porte et si possible évité une addition des temps d'allumage du relais 2 pour les lumières.
Praxis' a dit:
2 process simultané = pas le choix faut des thread.

Aucune à priori.
Cliquez pour agrandir...
Oui je me doute bien que je n'aurais pas le choix d’utiliser du thread mes je sais que le thread ne s'apprend pas du jour au lendemain, aurais tu quelques tutos ou des conseilles.
 
Haut Bas