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 :

Servo moteur commandé par HC SR04


Sujet :

Arduino

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Points : 26
    Points
    26
    Par défaut Servo moteur commandé par HC SR04
    Bonjour,

    Je viens de faire un montage avec une carte uno et un moteur sg90 commandé par un module ultra sons hc sr04, une idée de passage à niveau, la barrière se baisse reste 5 secondes en bas puis se reléve s'il n'y a pas de détection ( train )

    Mon code est bien compilé mais voila que la barriére se baisse bien mais reste en bas

    Si vous avez une idée
    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
    #include <Servo.h>
    #include <Ultrasonic.h>
     
    const int Trig = 5; // pin trigger HC-SR04
    const int Echo = 6; // pin echo HC-SR04
    Servo servoBarriere;
     
    long cm; // variable de stockage de distance de l'objet en cm
     
    Ultrasonic HCSR04 (Trig, Echo);
     
     
    void setup() 
    { 
      servoBarriere.attach(3); // servo leve barriere
     
    } 
     
    void loop() 
    { 
     
     
     
       if(cm >0 && cm < 20) // un train passe
       {
         servoBarriere.write (0); // La barrière est baissée (ajustez la valeur en fonction de la calibration de votre servo pour avoir la barrière à l'horizontale)
          delay(5000); // Temps de traitement du baisser de barrière en millisecondes (15000 millisecondes = 15 secondes). Changez cette valeur si vous voulez rallonger ou raccourcir la durée.
       }
       else if(cm >= 20)  // Il n'y a pas de présence du train. Ici la valeur du rayonnement des ultrasons est d'environ 20 cms.
       {
         servoBarriere.write(90); // Lève la barrière à 90² (ajustez la valeur en fonction de la calibration de votre servo pour avoir la barrière à la verticale)
       }  
    }

    Cordialement

    Stéphanie

  2. #2
    Membre émérite
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 012
    Points : 2 341
    Points
    2 341
    Par défaut
    Bonjour Stéphanie
    Citation Envoyé par Stéphanie13000 Voir le message
    Mon code est bien compilé mais voila que la barriére se baisse bien mais reste en bas
    Parce que "un train peut en cacher un autre"

    Tu est toujours en procès avec les balises de code, c'est très facile, tu copies et colles ton sketch dans l'article, tu sélectionnes ton code et clique sur l'icône #

    Tu te lances dans le train électrique?
    Pour ton problème, je n'ai pas vu où tu mesures la distance pour enseigner la variable CM.

    Cordialement
    jpbbricole
    L'expérience est la seule chose qu'il ne faut acheter que d'occasion!

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Points : 26
    Points
    26
    Par défaut
    Bonjour,

    Oui c'est pour un ami qui fabrique un réseau, j'ai récupéré ce code est l'ai modifié, mais il doit y avoir une erreur ou il manque un morceau

    Le train est censé passer à moins de 20 cms, le détecteur active le servo moteur rests 15 secondes et devrait se relevé en position 90 °si plus rien dans cette distance


    Cordialement

    Stéphanie

  4. #4
    Membre émérite
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 012
    Points : 2 341
    Points
    2 341
    Par défaut
    Bonjour Stéphanie
    Citation Envoyé par Stéphanie13000 Voir le message
    il manque un morceau
    Oui, tu ne vas jamais mesurer la distance pour mettre à jour ta variable cm.

    Cordialement
    jpbbricole
    L'expérience est la seule chose qu'il ne faut acheter que d'occasion!

  5. #5
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Points : 26
    Points
    26
    Par défaut
    Bonjour,

    tu pourrais m'en dire un peu plus

    Cordialement

    Stéphanie

  6. #6
    Membre émérite
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 012
    Points : 2 341
    Points
    2 341
    Par défaut
    Bonjour Stéphanie
    Citation Envoyé par Stéphanie13000 Voir le message
    tu pourrais m'en dire un peu plus
    Dans tonm programme, tu as:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if(cm >0 && cm < 20) // un train passe
    // et
    else if(cm >= 20)  // Il n'y a pas de présence du train. Ici la valeur du rayonnement des ultrasons est d'environ 20 cms.
    Où, dans ton programme, sont mesurés ces cm?

    Cordialement
    jpbbricole
    L'expérience est la seule chose qu'il ne faut acheter que d'occasion!

  7. #7
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Points : 26
    Points
    26
    Par défaut
    Bonjour jpbricole,

    D'accord, j ai trouvé ce code sur un tuto sur you tube il semblait fonctionner, je vais revoir ça, c est pas gagné

    En te remerciant

    Stéphanie

  8. #8
    Membre émérite
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 012
    Points : 2 341
    Points
    2 341
    Par défaut
    Tu peux me donner le lien?

    Cordialement
    jpbbricole
    L'expérience est la seule chose qu'il ne faut acheter que d'occasion!

  9. #9
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Points : 26
    Points
    26
    Par défaut
    Bonjour jpbricole

    Avec plaisir


    Cordialement

    Stéphanie

  10. #10
    Membre émérite
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 012
    Points : 2 341
    Points
    2 341
    Par défaut
    Salut Stéphanie

    Dans loop(), tu as oublié ça!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    void loop()
    {
    
    	cm = HCSR04.convert(HCSR04.timing(), 1);
    
    	if(cm >0 && cm < 20) // un train passe
    	{
    Bon week-end
    Cordialement
    jpbbricole
    L'expérience est la seule chose qu'il ne faut acheter que d'occasion!

  11. #11
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Points : 26
    Points
    26
    Par défaut
    Bonjour,

    J'ai modifié le code mais j'ai cette erreur

    'class Ultrasonic' has no member named 'convert'
    En te remerciant

    Stéphanie

  12. #12
    Membre émérite
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 012
    Points : 2 341
    Points
    2 341
    Par défaut
    Salut Stéphanie

    Chez moi ça se compile très bien.
    Peut-être un problème de version de bibliothèque.
    Charge celle du tuto ici.

    Bon dimanche
    Cordialement
    jpbbricole
    L'expérience est la seule chose qu'il ne faut acheter que d'occasion!

  13. #13
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Points : 26
    Points
    26
    Par défaut
    Bonjour jpbricole,

    Je viens de compiler sur mon portable et tout passe bien, par contre sur mon pc bureau en suivant la même procédure pas moyen de compiler , pourtant les 2 IDE sont à jour, il me reste juste à réaliser le montage dés que je reçois les servo

    En te remerciant

    Cordialement

    Stéphanie

Discussions similaires

  1. Commande d'un servo-moteur en Python
    Par sad006 dans le forum Raspberry Pi
    Réponses: 0
    Dernier message: 22/05/2018, 12h11
  2. OLE commander par un command button
    Par drogba-11 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 21/07/2007, 21h24
  3. Réponses: 2
    Dernier message: 24/06/2007, 16h59
  4. Réponses: 1
    Dernier message: 20/02/2007, 10h23
  5. [VB6]Problème de DoubleQuote envoyé en ligne de commande par l'OS
    Par marsup54 dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 28/09/2006, 21h58

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