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

Arduino Discussion :

Commande d'électrovannes


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 10
    Par défaut Commande d'électrovannes
    Bonjour, nouveau sur ce forum, j’espère exposer mon problème au bon endroit.

    Avec une carte UNO , je commande trois ecletrovannes et un appareil photo pour faire des photos de collision de gouttes d'eau.
    Mon programme consiste a ouvrir et fermer les electrovannes, soit simultanement ou avec un delais plus ou moins important entre chaque ouverture.
    Le temps d'ouverture d'une vanne est de l'ordre de 15 millisecondes.
    le scenarion classique:
    a T0 ouverture V1 150ms
    a T0 + 500ms ( T1) V2 150ms
    a T0 + 1000ms (T2) V3 150ms
    a T0 + 2000ms (T3) APN 180ms

    J'ai besoin de faire varier T1, T2 et T3
    Le probleme
    Quand T1 < 200 ms les vannes V1 et V2 se déclenchent simultanément
    De plus le systeme n'est pas stable, il est répétable un fois sur deux, quelque soit le nombre de vannes sollicitées.

    Au niveau programmation, j'envoi a l' ARDUINO une sequence de commande Vanne,Delais
    ex: V1,0:V2,T1:V3,T3:APN,T4
    V1 est sur la pine 8 , V2 pine 9 , V3 pine 10 , APN pine 11 ( pine 0,1,2,3 du port B)

    J'ai besoin d'une précision au dixième de milliseconde.
    Je n'utilise pas la fonction delay(), a partir d'un T0 je compte les microsecondes
    Je boucle sur toutes commandes V,T
    et je déclenche les vannes quand leur T est supérieur ou égal au compteur.

    Comme l'ouverture et fermeture des vannes peuvent être simultanées, j'initialise directement le port B avec les états des vannes.

    Apparemment le PORTB ne commute pas assez vite quant l'ouverture de deux vannes se fait dans un delais "rapide"

    En esperant que mes explications soient assez claires
    je n'arrive pas a savoir si les problemes proviennent du programme, de la carte UNO ou de l'interface de commande des vannes
    problemes de repetabilite et de commutation du portB
    robert.

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 282
    Par défaut
    L'Arduino Uno est monté avec un quartz de 16MHz, donc la précision maximale théorique c'est 1/16ème de µs. Mais cela c'est à condition de le programmer en C ou en ASM.
    Après avec la surcouche Arduino on doit quand même rester dans l'ordre de grandeur de la microseconde, bien suffisant pour toi.

    As-tu un oscillo branché sur les sorties de l'Arduino pour être certain que ce n'est pas la partie commande des électrovannes qui pose problème? Ou bien c'est le code, merci de le poster.
    Est-ce que tu lis bien toute la trame d'ordre avant d'envoyer les ordres? Car la lecture du port série peut bien distorde le temps.

    Delias

  3. #3
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    bonsoir,

    comme l'a indiqué Delias, en plus du code, peux-tu poster un schéma de ton électronique ? Tu n'as pas oublié la diode de roue libre aux bornes des électrovannes, par exemple ?

    Peux-tu aussi nous donner les références des électrovannes ? Car ces composants ont aussi une partie mécanique : quand tu envoies ton impulsion l'ouverture n'est pas immédiate, il y a toujours un petit délai (temps de latence).
    Pour plus de précision dans tes timing tu peux te tourner vers la bibliothèque elapsedMillis.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 10
    Par défaut
    Merci pour vos reponses
    Comment faire pour poster le code?

    Fichier zippé ?

    je prepare un schema de mon montage
    robert

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 10
    Par défaut
    Le schema
    Nom : arduino_droplet_schema.JPG
Affichages : 4790
Taille : 51,4 Ko

  6. #6
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 282
    Par défaut
    Bonjour

    Le schéma semble correct, manque éventuellement un condensateur entre le 12V et la masse au niveau des transistors TIP102. Mais son absence ne produirait pas tes problèmes.
    Pour poster le code, il faut le copier-coller dans l'éditeur du forum (comme du simple texte) et l'encadrer avec la balise code (bouton "#") de la barre d'outils. Voir ICI.
    Et n’hésite pas à prévisualisé ton message au moyen du bouton prévu!

    Delias

Discussions similaires

  1. Interception des commandes in et out
    Par KDD dans le forum x86 16-bits
    Réponses: 13
    Dernier message: 18/12/2002, 16h55
  2. [TP]besoin d'aide pour commandes inconnues
    Par Upal dans le forum Turbo Pascal
    Réponses: 15
    Dernier message: 03/10/2002, 10h48
  3. [Kylix] Commandes linux ss kylix
    Par csnickos dans le forum EDI
    Réponses: 3
    Dernier message: 15/09/2002, 20h24
  4. Réponses: 3
    Dernier message: 02/09/2002, 18h49
  5. Réponses: 2
    Dernier message: 11/08/2002, 21h27

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