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

Embarqué Discussion :

Contrôle d'un servomoteur avec une carte PSoC [PSoC]


Sujet :

Embarqué

  1. #1
    Membre à l'essai
    Homme Profil pro
    Etudiant en BTS SIO
    Inscrit en
    Janvier 2018
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Etudiant en BTS SIO
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 18
    Points : 17
    Points
    17
    Par défaut Contrôle d'un servomoteur avec une carte PSoC
    Bonjour,
    Actuellement élève de Terminale STI2D, j'ai un projet de fin d'année à faire et dans celui-ci je dois, entre autres, contrôler un servomoteur à l'aide d'une carte PSoC. Malgré de nombreuses recherches sur internet je n'ai trouvé quasiment aucune information.
    Pourriez-vous m'aider ou du moins me transmettre des liens qui pourraient m'aider.

    Cordialement

    Gabin B.

  2. #2
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 619
    Points : 56 854
    Points
    56 854
    Billets dans le blog
    40
    Par défaut
    Salut,

    Super, on est maintenant deux sur Developpez à utiliser les PSoC, faut que je prévienne les copains, ils vont pas me croire

    Pour un servo de modélisme, tu peux utiliser un générateur de signaux PWM pour piloter l'angle de rotation du servo.

    La période est fixée (environ 20ms, mais c'est selon le servo, voir sa doc) et tu fais varier le rapport cyclique dans le code avec la fonction WriteCompare():
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PWM_Servo_WriteCompare(uint32 compare);
    Quelle carte PSoC tu as ?
    Images attachées Images attachées  

  3. #3
    Membre à l'essai
    Homme Profil pro
    Etudiant en BTS SIO
    Inscrit en
    Janvier 2018
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Etudiant en BTS SIO
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    Bonjour,
    merci pour ta réponse.
    Pourrais tu m'envoyer un screen de te configuration du PWM, stp.

    Cordialement

    Gabin B.

  4. #4
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 619
    Points : 56 854
    Points
    56 854
    Billets dans le blog
    40
    Par défaut
    Je n'ai pas le détail sous la main, mais la plupart des options par défaut devraient convenir.

    Si on prend un servo classique : période=20ms, durée état haut entre 1ms (angle=0°) et 2ms (angle=180°).

    Si tu prends une horloge à 1MHz à l'entrée du PWM (16 bits), le paramètre period doit être mis à 20000 (car 20000 x 10-6 = 0,02 s).

    Pour un angle de 0° : rapport cyclique = 1/20 = 5%, soit le paramètre compare = 0,05 x 20000 = 1000
    Pour un angle de 180° : rapport cyclique = 2/20 = 10%, soit le paramètre compare = 0,10 x 20000 = 2000
    Soit une résolution = 180/1000 = 0,18° ce qui devrait largement convenir.

    Si tu règles le paramètre compare dans la fenêtre de propriétés, le chronogramme qui s'affiche se met à jour et tu verras si le signal a une bonne tête.
    Images attachées Images attachées  

  5. #5
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 619
    Points : 56 854
    Points
    56 854
    Billets dans le blog
    40
    Par défaut
    ça pourrait ressembler à ceci (bloc PWM , TCPWM Mode) :

    Nom : pwm-servo.PNG
Affichages : 514
Taille : 233,8 Ko

    Mais bon... Tu testeras tout ça quand les écoles seront réouvertes, et c'est pas pour tout de suite

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 02/05/2008, 15h54
  2. Réponses: 3
    Dernier message: 27/02/2008, 10h33
  3. [pilotes] Problème avec une carte réseau
    Par Aitone dans le forum Windows 2000/Me/98/95
    Réponses: 4
    Dernier message: 13/12/2006, 18h23
  4. probleme avec une carte pci port serie(netmos 9835)
    Par chiroke dans le forum Composants
    Réponses: 1
    Dernier message: 03/05/2006, 13h01
  5. Problème avec une carte Sound Blaster Live
    Par zogstrip dans le forum Matériel
    Réponses: 4
    Dernier message: 25/09/2004, 20h43

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