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 :

erreur sur branchement/débranchement de l'USB Device


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Paramétreur de progiciels
    Inscrit en
    Décembre 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Paramétreur de progiciels
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4
    Points : 4
    Points
    4
    Par défaut erreur sur branchement/débranchement de l'USB Device
    j'utilise un programme en Python version 2.7.6
    qui utilise la librairie visa520runtime ( import visa ) pour
    commander 1 rigol DG1022 générateur de fréquences
    le rigol est relié par sa sortie USB Device vers l'ordinateur
    ( cable idem à celui d'une imprimante en usb 2)
    tout fonctionne bien et je peux envoyer mes commandes du pc
    et paramétrer mon RIGOL DG1022.

    pour une application particulière je dois débrancher le câble entre 2 actions.

    j'ai fais 2 pauses ( 1 pour débrancher et l'autre pour rebrancher ) dans le programme
    et quand je rebranche le programme python plante sur ma 1ere ligne qui fais réfence à une variable de visa :

    1) avant de débrancher l'USB Device qui pilote le rigol :
    -------------------------------------------------------
    <type 'list'>
    instruments = ['USB0::0x0400::0x09C4:G1D171601270']
    <type 'list'> usb = ['USB0::0x0400::0x09C4:G1D171601270']
    <class 'pyvisa.visa.Instrument'> rigolDG1022un = Instrument("USB0::0x0400::0x09C4:G1D171601270::INSTR")
    <class 'pyvisa.visa.Instrument'> rigolDG1022unsave = Instrument("USB0::0x0400::0x09C4:G1D171601270::INSTR") <========= sauvegarde de la variable
    *** début de la boucle temps *** débranchez prise USB Device ******
    Appuyer sur ENTREE pour continuer


    2) juste après avoir rebranché la prise USB Host :
    ------------------------------------------------------
    *** fin de la boucle temps *** re BRANCHEZ la prise USB Device ***
    Appuyer sur ENTREE apres avoir rebranche pour continuer
    *************************************************************
    <type 'list'>
    <type 'list'> instruments = ['USB0::0x0400::0x09C4:G1D171601270']
    <type 'list'>
    <type 'list'> usb = ['USB0::0x0400::0x09C4:G1D171601270']
    <class 'pyvisa.visa.Instrument'> rigolDG1022unsave =
    Traceback (most recent call last):
    File "C:\Python27\frequences 2016 09 25 17h avec arret", line 10042, in <module>
    print type(rigolDG1022unsave), "rigolDG1022unsave =", rigolDG1022unsave <======= ligne 10042
    File "C:\Python27\lib\site-packages\pyvisa\visa.py", line 373, in __repr__
    return "Instrument(\"%s\")" % self.resource_name
    File "C:\Python27\lib\site-packages\pyvisa\visa.py", line 194, in __get_resource_name
    return vpp43.get_attribute(self.vi, VI_ATTR_RSRC_NAME)
    File "C:\Python27\lib\site-packages\pyvisa\vpp43.py", line 594, in get_attribute
    visa_library().viGetAttribute(vi, attribute, attribute_state)
    File "C:\Python27\lib\site-packages\pyvisa\vpp43.py", line 398, in check_status
    raise visa_exceptions.VisaIOError, status
    VisaIOError: VI_ERROR_INV_PARAMETER: The value of some parameter (which parameter is not known) is invalid.



    en fait comme j'ai débranché la prise USB Device dés l'affichage de la variable rigolDG1022unsave
    de nature class 'pyvisa.visa.Instrument' le programme plante
    le sprint sont fais pour aider au debug car avant j'avais le même problème
    avec la même variable utilisée pour un envoyer une commande au rigol ( rigolDG1022un )


    Cela fais plusieurs jours que je n'avance pas et en faite j'ai l'impression
    qu'il me faudrait fermer la communication visa par un close puis éventuellement
    réouvrir puisque l'open est explicite

    en début de programme j'ai un import visa

    mais après impossible d'écrire le close sans erreur de syntax

    rigolDG1022un = visa.instrument(usb[0], timeout=20, chunk_size=1024000) # bigger timeout

    j'ai écris visa.close()

    mais je n'ai pas trouvé la bonne écriture
    si quelqu'un a une piste soit pour le problème d'usb débranché puis rebranché
    ou peut m'aider sur la syntax cela serait sympa
    merci

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    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 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Citation Envoyé par dcau93 Voir le message
    j'ai l'impression
    qu'il me faudrait fermer la communication visa par un close puis éventuellement
    réouvrir puisque l'open est explicite

    en début de programme j'ai un import visa

    mais après impossible d'écrire le close sans erreur de syntax

    rigolDG1022un = visa.instrument(usb[0], timeout=20, chunk_size=1024000) # bigger timeout

    j'ai écris visa.close()

    mais je n'ai pas trouvé la bonne écriture
    visa est un module.
    A priori, vous devriez effectuer rigolDG1022un.close() puisque rigolDG1022un est associé à l'objet crée par visa.instrument(...)

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

  3. #3
    Candidat au Club
    Homme Profil pro
    Paramétreur de progiciels
    Inscrit en
    Décembre 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Paramétreur de progiciels
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4
    Points : 4
    Points
    4
    Par défaut c'est exact
    rigolDG1022un.close()

    merci cela fonctionne bien, il me reste encore sur des plantages sur d'autres variables utilisées en mémoire d'éléments de la routine VISA

    Je poursuis et je reviens ici, après avoir nettoyé cela, pour indiquer les conséquences du débranchement du câble USD device

    merci , à bientôt

Discussions similaires

  1. [VBS] Erreur sur "AddWindowsPrinterConnection"
    Par Admin dans le forum VBScript
    Réponses: 5
    Dernier message: 27/03/2004, 16h15
  2. Erreur sur serveur lié
    Par k-lendos dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 18/03/2004, 15h21
  3. []Erreur sur second emploi collection binding
    Par jacma dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 08/03/2004, 18h02
  4. Erreur sur le TNSListener après installation de 9iAS
    Par Patmane dans le forum Installation
    Réponses: 4
    Dernier message: 04/02/2004, 11h16
  5. Réponses: 2
    Dernier message: 27/02/2003, 01h33

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