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 :

Comment exécuter une partie de script avec un autre script


Sujet :

Python

  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Peintre
    Inscrit en
    Octobre 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Peintre
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1
    Par défaut Comment exécuter une partie de script avec un autre script
    Bonsoir à tous,

    Je suis en train de réaliser un projet à base de raspberry pi 3 et d’une carte Stepper Motor HAT, qui permet d’ajouter jusqu’à 4 moteurs à courant continu et 4 servo. (descriptif en PJ)
    Pour faire fonctionner ce petit monde j’utilise Domoticz. Un logiciel de domotique qui gère l’activation des scripts python selon l’activation de capteur et ça marche très bien.
    MAIS, j’ai un problème pour faire fonctionner mon moteur CC et les servos en même temps.
    Je ne peux pas exécuter le script moteur et servo en même temps, car lors de l’exécution il réinitialise l’adresse I2C, ce qui a pour conséquence de couper le script en cours.

    Ce qu’il fraudrait c’est d’exécuter un script en arr!ère plan qui serait toujours actif avec les différentes commandes du servo et du moteur, et un autre script qui viendrait dire au script actif,
    lance la partie moteur et ou servo.

    Voici le script test qui intègre la bibliothèque du moteur et du servo qui permet de lancer les deux en même temps sans coupure.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    #!/usr/bin/python
    from Raspi_MotorHAT import Raspi_MotorHAT, Raspi_DCMotor
    from Raspi_PWM_Servo_Driver import PWM
     
    import time
     
    # create a default object, no changes to I2C address or frequency
    mh = Raspi_MotorHAT(addr=0x6f)
    pwm = PWM(0x6f)
     
     
     
     
     
    servoMin = 150  # Min pulse length out of 4096
    servoMax = 600  # Max pulse length out of 4096
     
    def setServoPulse(channel, pulse):
      pulseLength = 1000000                   # 1,000,000 us per second
      pulseLength /= 60                       # 60 Hz
      print "%d us per period" % pulseLength
      pulseLength /= 4096                     # 12 bits of resolution
      print "%d us per bit" % pulseLength
      pulse *= 1000
      pulse /= pulseLength
      pwm.setPWM(channel, 0, pulse)
     
    pwm.setPWMFreq(60)                        # Set frequency to 60 Hz
    while (True):
      # Change speed of continuous servo on channel O
      pwm.setPWM(0, 0, servoMin)
      time.sleep(1)
      pwm.setPWM(0, 0, servoMax)
      time.sleep(1)
     
     
     
    ################################# DC motor test!
    myMotor = mh.getMotor(3)
     
    #Initialise le moteur en marche avant
    myMotor.run(Raspi_MotorHAT.FORWARD);
     
    #Demarre le moteur a la vitesse 70 a 255
    if (True):
    	for i in range(70,255):
    		myMotor.setSpeed(i)
    		time.sleep(0.02)
    Est-il possible de faire ce genre de chose en faisant appelle aux variables ou à d’autre fonctions.

    Votre aide me serait d’un grand secours.
    Si vous avez besoin de plus de précision n’hésitez pas.

    En vous remerciant par avance et espérant trouver une solution à mon problème.

    Bonne soirée.
    Images attachées Images attachées

Discussions similaires

  1. Comment exécuter une base Access avec clic Bouton ?
    Par quanou dans le forum Windows Forms
    Réponses: 4
    Dernier message: 18/12/2008, 14h25
  2. Parser une Partie du Fichier avec un autre Schema
    Par cimdziri dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 23/04/2008, 17h59
  3. Comment exécuter une DLL écrite en Delphi avec RunDLL32 ?
    Par Pedro dans le forum API, COM et SDKs
    Réponses: 4
    Dernier message: 09/01/2008, 19h03
  4. Réponses: 2
    Dernier message: 16/07/2007, 16h04
  5. Comment extraire une partie d'URL avec REGEX?
    Par STB_Fk dans le forum Langage
    Réponses: 2
    Dernier message: 24/01/2007, 12h59

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