IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Gestion de ressource partagée


Sujet :

Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2020
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2020
    Messages : 7
    Points : 8
    Points
    8
    Par défaut Gestion de ressource partagée
    bonjour,

    programmant en python (niveau intermédiaire et non professionnel) sur une raspberry, je suis confronté à un souci:

    J'ai une alimentation de pc que j'allume avec la raspberry pour me fournir du 12v, allumage uniquement en cas de besoin pour l'allumage d'un moteur ou bien pour une électrovanne. Je ne souhaite pas un allumage constant car les besoins sont ponctuels.

    Au niveau de la conception informatique voire du langage python, y a-t-il des outils/méthodes adaptés à cette situation ?

    Car par exemple:
    • si il y a un allumage du moteur qui prend 4 mn
    • si lors de la dernière minute l'électrovanne doit fonctionner 30mn
    • Alors , si rien n'est prévu, le moteur s'éteindra puis on va couper l'alim 12v, qui ne permettra donc plus à l'électrovanne de finir ses 30mn.


    Comment gérer proprement cette info des processus demandeur de l'alim 12v , ainsi que leurs temps de fonctionnement ?

    Auriez-vous des pistes ?
    merci
    jpc

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par drosera31 Voir le message
    Comment gérer proprement cette info des processus demandeur de l'alim 12v , ainsi que leurs temps de fonctionnement ?
    La fonction time du module time retourne l'heure qu'il est (en secondes).
    Après pour attendre une durée avant de... soit vous faites un pooling du temps qui passe avec des time.sleep, soit vous utilisez un ordonnanceur qui va lancer des opérations après une durée d'attente définie.

    Citation Envoyé par drosera31 Voir le message
    si il y a un allumage du moteur qui prend 4 mn
    si lors de la dernière minute l'électrovanne doit fonctionner 30mn
    Alors , si rien n'est prévu, le moteur s'éteindra puis on va couper l'alim 12v, qui ne permettra donc plus à l'électrovanne de finir ses 30mn.

    Comment gérer proprement cette info des processus demandeur de l'alim 12v , ainsi que leurs temps de fonctionnement ?
    moteur, électrovanne, alimentation,... ne sont pas des objets Python "standards" mais des entités physiques. Entre le programmeur Python et ces entités là, il va y avoir des pilotes au dessus d'interfaces matérielles et des fils pour trimbaler des signaux électriques...

    Et un travail de conception à faire pour que le programmeur puisse effectivement interagir avec.
    Qui dit conception dit analyse du problème, évaluation de différentes solutions, choix... permettant de répondre à des questions du type pourquoi, quoi, comment.
    note: vous avez une rubrique raspberry pi

    Le langage de programmation c'est une fois qu'on sait ce qu'on veut une réalisation "avec".

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2020
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2020
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Merci pour les pistes.

    Les briques de mon application sont déjà opérationnelles et pensées en amont. Il n'y a que ce partage de ressource physique (en terme de temps uniquement) qui me pose problème actuellement et je pensais que des solutions auraient pu répondre avec un peu de travail d'adaptation bien entendu.

    Je vais creuser vos propositions qui pourraient répondre à ma demande, merci
    JPC

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2020
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2020
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    bonsoir,
    j'ai avancé sur une piste qui me semble (?) pertinente:

    ->je crée un socket unix limité au localhost qui gère l'allumage de l'alimentation et reçoit des appels de scripts clients demandeurs
    ->les clients envoient leur nom et une commande 1 ou 0 pour une demande d'allumage ou d'extinction de l'alimentation

    ->le script gérant le socket possède une liste des scripts appelant. Lorsqu'au moins un élément est présent dans cette liste alors l'alim doit être allumée, sinon quant elle est vide alors l'alim doit être éteinte.


    Peut-être y a-t-il moyen de faire mieux/plus propre ?

    jpc

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par drosera31 Voir le message
    Peut-être y a-t-il moyen de faire mieux/plus propre ?
    sockets, fichiers, bases de données, verrous, ... sont des objets systèmes.
    Sérialiser l'accès à une ressource partagée via un "serveur" est une solution dans les architectures distribuées.

    Oui il y a probablement mieux, mais on ne peut pas faire le travail de conception à votre place.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2020
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2020
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    bonjour,

    je trouve votre réponse déplacée, en particulier provenant d'une personne avec étiquette "modérateur".

    Pourriez-vous me préciser selon vous (pas selon les règles du forum que j'ai lues) l'utilité de cet espace d'entraide ?

    Si cela correspond à l’exposition d'une problématique et à une demande d'aide, il me semble que ma présence est légitime... Je n'ai en effet sollicité personne pour faire "le travail de conception à [ma] place" et ai cherché des pistes à différents endroits pour tenter de résoudre mon souci.

    Sur ce, peut-être m'inviterez-vous à passer mon chemin; je vous répondrai que je n'ai pas attendu votre invitation.

    belle journée

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par drosera31 Voir le message
    je trouve votre réponse déplacée, en particulier provenant d'une personne avec étiquette "modérateur".

    Pourriez-vous me préciser selon vous (pas selon les règles du forum que j'ai lues) l'utilité de cet espace d'entraide ?
    Ce que j'essaie de vous dire est que ce que vous racontez n'a rien de spécifique à Python.
    On peut utiliser les sockets et construire une architecture client serveur avec n'importe quel langage.

    Pour savoir ce qui sera le plus adapté, il faut pouvoir évaluer différentes solutions avec une vue un peu plus large du problème à traiter que ce que vous voulez bien nous présenter.
    C'est comme çà.

    Si vous demandez de l'aide dans un forum de programmation Python, c'est parce que vous avez déjà choisi une solution et rencontrez peut être des difficultés à la réaliser avec Python.
    (ce qui idéalement signifie que vous avez un code à poster).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Problème de gestion de ressource
    Par Isabella dans le forum Oracle
    Réponses: 5
    Dernier message: 18/01/2006, 09h20
  2. Gestion des ressources
    Par BainE dans le forum MFC
    Réponses: 2
    Dernier message: 11/01/2006, 11h55
  3. [DLL] Gestions des ressources textes (StringTable)
    Par Clorish dans le forum Langage
    Réponses: 1
    Dernier message: 26/05/2005, 16h50
  4. [Swing] Gestion des ressources
    Par speedster dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 13/11/2004, 15h09
  5. [Réseau][ressource partagée]Autentification
    Par heid dans le forum API, COM et SDKs
    Réponses: 7
    Dernier message: 12/11/2003, 16h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo