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 :

Led éteinte sur un signal PWM carré


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    bm
    bm est déconnecté
    Membre extrêmement actif

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Billets dans le blog
    6
    Par défaut Led éteinte sur un signal PWM carré
    bonjour,


    Je n'ai pas énoncé le dispositif à la première publication de ce post.

    On cherche à réaliser un dispositif avec une entrée et deux sorties.
    L'entrée (Pous1) reçoit un signal rectangulaire, dont la fréquence peut
    varier de 1 à 100 Hz. La première sortie (Led1) doit s'activer si le rapport
    cyclique est inférieur à 40%, la seconde (Led2)s'il est supérieur à 60%.
    S'il n'y a pas de signal, ou si le signal est carré, aucune sortie ne doit
    s'activer.

  2. #2
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 252
    Par défaut
    Salut,
    Il y a plusieurs choses que je ne comprends pas dans ton programme ou alors il n'y a pas tout.

    L'algorithme est bon car luminosité va de 0 à 255 puis il décroît jusque 0 (c'est une forme de triangle). Si tu as branché une Led sur une sortie PWM du micro et avec une résistance adéquate pour faire passer 20mA dans la Led alors ça devrait fonctionner. La luminosité devrait varier.

    Par contre si l'objectif est de faire varier le PWM pourquoi vouloir éteindre et allumer d'autres Led ? Elles sont reliées ou ? Et c'est quoi Led1on ?

  3. #3
    bm
    bm est déconnecté
    Membre extrêmement actif

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Billets dans le blog
    6
    Par défaut
    C'est une étape .. mais il faut passer par un timer que je n'ai jamais encore programmé.

    On cherche à réaliser un dispositif avec une entrée et deux sorties.
    L'entrée (Pous1) reçoit un signal rectangulaire, dont la fréquence peut
    varier de 1 à 100 Hz. La première sortie (Led1) doit s'activer si le rapport
    cyclique est inférieur à 40%, la seconde (Led2)s'il est supérieur à 60%.
    S'il n'y a pas de signal, ou si le signal est carré, aucune sortie ne doit
    s'activer.
    Pin 2 (Pous1) est une entrée digitale et c'est une association avec un timer plus rapide
    qui va compter les signaux low et hight entrant sur pin 2.
    Le cycle après calcul du %, activera les Led1On/Off et Led2On/Off dans les bons intervalles

    Ma carte est arduino uno.

    nb : je n'ai pas de générateur de fréquence pour une simulation, et je ne vois pas comment
    vérifier quoique ce soit

    @+

  4. #4
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 252
    Par défaut
    Je comprends un peu mieux mais il me manque des infos.

    Je vois que tu fais "analogWrite(Pous2, luminosite); "
    Pourquoi ? Tu génère un pwm qui va où ? Tu veux générer un signal rectangulaire que tu viendras lire sur une entrée de capture Pous1 ?
    C'est pour toi remplacer un générateur de signaux ?

    Tu veux faire un espèce de fréquencemètre ?

  5. #5
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 252
    Par défaut
    Ton programme fonctionne bien.
    3 choses a regarder :
    1 - Le câblage des LED 1 et 2 a moins qu'elles ne soient déjà intégrées sur le Arduino (je ne sais pas, je ne l'utilise pas)
    2 - Les #define de Led1on, Led1off etc... afin de s'assurer qu'ils fonctionnent tous
    3 - Passer le delay(300) à 500ms car si ça va trop vite, il se peut que tu ne le vois pas (c'est la persistance rétinienne)

    Tiens nous au courant.
    A+

  6. #6
    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
    bonjour,

    ce qui m'ennuie dans ce code c'est l'absence de la fonction setup() J'aimerai bien voir ce qu'elle contient.
    Led1Off, Led2On, Led1On, Led2Off c'est quoi ? Car en l'état, dans le code, ça n'a aucun sens.

    @Vincent PETIT : une seule LED est intégrée sur la carte, sur le pin13.

  7. #7
    Membre chevronné
    Avatar de deletme
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2011
    Messages : 257
    Par défaut
    Bonjour,

    Pourrais-tu poster la totalité de ton code, surtout la fonction setup ?

    Pour ton problème de générateur de PWM, tu pourrais simplement relier une sortie PWM sur une entrée Analogique ? Je vais voir si électroniquement il n'y pas de problèmes.
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."
    - Martin Golding
    Traduction obligatoire : "Toujours écrire du code en gardant en tête que le mec qui en assurera la maintenance est un psychopathe violent qui connait votre adresse"

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Led allumé, led éteint
    Par matchieu dans le forum LabVIEW
    Réponses: 45
    Dernier message: 18/06/2007, 16h39
  2. Détection d'un palier sur un signal
    Par MottetCCSF dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 12/06/2007, 11h41
  3. Simuler un signal PWM
    Par jeannot27 dans le forum C++Builder
    Réponses: 12
    Dernier message: 27/01/2006, 04h56
  4. Faire a un script executer une action sur un signal
    Par vodevil dans le forum Langage
    Réponses: 1
    Dernier message: 13/12/2005, 11h14
  5. [TMS320C6416] FFT et IFFT sur un signal audio...
    Par 0x4e84 dans le forum Autres architectures
    Réponses: 1
    Dernier message: 18/04/2005, 20h21

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