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 :

Création programme arduino


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Restaurateur
    Inscrit en
    Août 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Restaurateur

    Informations forums :
    Inscription : Août 2023
    Messages : 9
    Par défaut Création programme arduino
    Je souhaite faire un programme qui commande 4 fin de course et trois moteurs ( j'ai pris deux moteurs pap et un à courant continu) , un pour les mouvements verticaux l'autre pour la rotation et le dernier à courant de continu pour le perçage, je voudrais que le programme fasse :

    Appui du bouton poussoir lancement de la séquence monter puis rotation et descente arrêt dans cette position basse et mise en marche du moteur CC pendant 3 minutes, retour en sens inverse monter puis rotation et descente en position initiale.

    Je souhaite rajouter un bouton d'arrêt d'urgence au cas où pendant la séquence il y a un souci que je puisse appuyer sur le bouton pour que la séquence s'arrête et retourne directement en position initiale.

    Le tout alimenté sur secteur avec convertisseur 12 volts pour les moteurs.

    Toute la séquence doit durer 6 minutes maximum en totalité.

    N'hésitez pas à me dire les composants que je dois acheter pour terminer le montage.

    J'espère avoir été assez clair si jamais posez-moi les questions car, j'ai essayé de faire le programme seul c'est une catastrophe étant donné que je suis novice...

    J'ai des photos de la maquette...
    Merci

  2. #2
    Membre Expert

    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2013
    Messages
    1 628
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2013
    Messages : 1 628
    Par défaut
    Bonjour,

    Oui une photo/schéma de la maquette serait utile.

    Cela ressemble à une CNC même s'il y a un moteur en moins (XY remplacé par une simple rotation ?) et que c'est du perçage.

    La descente est la partie la plus difficile car le perçage n'est pas instantané. Il faut, avant de progresser s'assurer, qu'il n'y a plus de résistance sur le forêt (cela peut se faire avec un capteur de pression mécanique ou simplement en regardant la consommation ou la vitesse du moteur de perçage). Le problème est que si le PàP tente de descendre alors que le perçage ne le permet pas, il va sauter des pas et on ne saura plus où il en est.

    Si le contrôle de la profondeur utilise un capteur de fin de course, on peut se passer de ses précautions mais il faut avoir une progression suffisamment lente pour être sûr que le perçage se fait correctement (un pas à pas n'est plus indispensable alors).

    Salutations

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Restaurateur
    Inscrit en
    Août 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Restaurateur

    Informations forums :
    Inscription : Août 2023
    Messages : 9
    Par défaut
    Bonjour Guesset,

    Merci pour le retour.

    Oui une simple rotation et que du perçage.

    Pour le perçage, c'est un moteur à courant continu simple et je n'ai pas besoin de précision car c'est moi qui tiendrait l'objet à percer j'ai seulement besoin que le moteur tourne pendant 3 min.

    Je ne sais pas comment faire pour intégrer des photos !

    Cdlt

  4. #4
    Membre Expert

    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2013
    Messages
    1 628
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2013
    Messages : 1 628
    Par défaut
    Bonjour Greg9001,

    Citation Envoyé par Greg9001 Voir le message
    ...Je ne sais pas comment faire pour intégrer des photos ! Cdlt
    En édition de message, 2e rangé d'icones le 4e en partant de la droite Nom : Icone mettre une image.png
Affichages : 186
Taille : 751 octets. Ensuite cliquer sur "Choisir un fichier" : celui de l'image. Puis valider "ajouter un fichier". That's all !

    Salut

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Restaurateur
    Inscrit en
    Août 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Restaurateur

    Informations forums :
    Inscription : Août 2023
    Messages : 9
    Par défaut
    Merci pour l'aiguillage sur mon téléphone, je ne voyais pas les rangés et l'édition d'image sur Pc nickel.Nom : IMG_20230815_172122_resized_20230815_070225299.jpg
Affichages : 176
Taille : 251,8 KoNom : IMG_20230815_171615_resized_20230815_070226141.jpg
Affichages : 175
Taille : 229,0 KoNom : IMG_20230815_171529_resized_20230815_070224876.jpg
Affichages : 182
Taille : 193,7 KoNom : IMG_20230814_205326_resized_20230815_070224436.jpg
Affichages : 168
Taille : 263,7 KoNom : IMG_20230814_202916_resized_20230815_070223940.jpg
Affichages : 182
Taille : 180,5 Ko



    Jaune moteurs A, B et C
    Violet bouton poussoir Bp1 et Bp2
    Vert fin de course Fdc1 (bas), Fdc2 (haut), Fdc3 (retour initial) et Fdc4 ( mouvement gauche)


    Je souhaite que le programme commande 3 moteurs ( 2 moteurs pap et un à courant continu) , un pour les mouvements verticaux (À) l'autre pour la rotation(B) et le dernier à courant de continu pour le perçage(C) , je voudrais que le programme fasse :

    Appui du bouton poussoir lancement de la séquence monter jusqu'au Fdc2 puis rotation jusqu'au Fdc4 et descente jusqu'au Fdc1 puis arrêt dans cette position basse et mise en marche du moteur C pendant 3 minutes, ensuite retour en sens inverse monter jusqu'au Fdc2 puis rotation jusqu'au Fdc3 et descente jusqu'au Fdc1 bas.

    Je souhaite que le bouton d'arrêt d'urgence stop la séquence à n'importe quel moment si on Appuie dessus et que l'appareil retourne directement en position initiale.

    Toute la séquence doit durer 6 minutes maximum en totalité ( temps du moteur C inclus).

    Moteur avec alimentation 12v extérieur.

    Étant donné que j'ai pris une carte pour contrôler les moteurs je suis obligé d'utiliser Pin suivant il faut donc faire le programme avec cela:

    Moteur A: Pin 3,4,5 et 6

    Moteur B: Pin 7,8,11 et 12

    Moteur C: Pin 2

    Bp1 sortie analogique A0
    Bp2 A1

    Fdc1, A2
    Fdc2, A3
    Fdc3, A4
    Fdc4, A5

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Restaurateur
    Inscrit en
    Août 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Restaurateur

    Informations forums :
    Inscription : Août 2023
    Messages : 9
    Par défaut code du novice !
    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    #include <Stepper.h>
     
    // Configuration des moteurs pas à pas
    const int pasParTour = 200; // Le nombre de pas par tour pour les moteurs pas à pas
    const int moteurAPins[] = {3, 4, 5, 6};
    const int moteurBPins[] = {7, 8, 11, 12};
    const int moteurCPin = 2;
     
    // Configuration des fins de course et des boutons poussoirs
    const int bp1Pin = A0;
    const int bp2Pin = A1;
    const int fdc1Pin = A2;
    const int fdc2Pin = A3;
    const int fdc3Pin = A4;
    const int fdc4Pin = A5;
     
    // Créer des objets Stepper pour les moteurs pas à pas
    Stepper moteurA(pasParTour, moteurAPins[0], moteurAPins[1], moteurAPins[2], moteurAPins[3]);
    Stepper moteurB(pasParTour, moteurBPins[0], moteurBPins[1], moteurBPins[2], moteurBPins[3]);
     
    // Temps pour le moteur C en millisecondes
    const unsigned long tempsMoteurC = 180000; // 3 minutes
     
    void setup() {
      pinMode(bp1Pin, INPUT);
      pinMode(bp2Pin, INPUT);
      pinMode(fdc1Pin, INPUT);
      pinMode(fdc2Pin, INPUT);
      pinMode(fdc3Pin, INPUT);
      pinMode(fdc4Pin, INPUT);
      // Initialiser les pins des moteurs pas à pas
      for (int i = 0; i < 4; i++) {
        pinMode(moteurAPins[i], OUTPUT);
        pinMode(moteurBPins[i], OUTPUT);
      }
      pinMode(moteurCPin, OUTPUT);
    }
     
    void loop() {
      // Attendre l'appui sur le bouton poussoir bp1
      while (digitalRead(bp1Pin) == HIGH) {
        // Attente
      }
     
      // Séquence montée du moteur A jusqu'au Fdc2
      while (digitalRead(fdc2Pin) == HIGH) {
        moteurA.setSpeed(100);
        moteurA.step(-1);
      }
      moteurA.setSpeed(0);
     
      // Rotation du moteur B jusqu'au Fdc4
      while (digitalRead(fdc4Pin) == HIGH) {
        moteurB.setSpeed(100);
        moteurB.step(1);
      }
      moteurB.setSpeed(0);
     
      // Descente du moteur A jusqu'au Fdc1
      while (digitalRead(fdc1Pin) == HIGH) {
        moteurA.setSpeed(100);
        moteurA.step(1);
      }
      moteurA.setSpeed(0);
     
      // Activation du moteur C pendant le temps défini
      unsigned long startTime = millis();
      digitalWrite(moteurCPin, HIGH);
      while (millis() - startTime < tempsMoteurC) {
        // Attente
      }
      digitalWrite(moteurCPin, LOW);
     
      // Montée du moteur A jusqu'au Fdc2
      while (digitalRead(fdc2Pin) == HIGH) {
        moteurA.setSpeed(100);
        moteurA.step(-1);
      }
      moteurA.setSpeed(0);
     
      // Rotation du moteur B jusqu'au Fdc3
      while (digitalRead(fdc3Pin) == HIGH) {
        moteurB.setSpeed(100);
        moteurB.step(1);
      }
      moteurB.setSpeed(0);
     
      // Descente du moteur A jusqu'au Fdc1
      while (digitalRead(fdc1Pin) == HIGH) {
        moteurA.setSpeed(100);
        moteurA.step(1);
      }
      moteurA.setSpeed(0);
    }

Discussions similaires

  1. [AC-2010] création programme de gestion de logiciel
    Par pascal.cevi dans le forum IHM
    Réponses: 6
    Dernier message: 23/02/2011, 17h50
  2. Problème création programme .vbs
    Par methylene dans le forum VBScript
    Réponses: 2
    Dernier message: 04/03/2010, 08h20
  3. besoin de conseil création programme (débutante)
    Par kwakly dans le forum WinDev
    Réponses: 1
    Dernier message: 16/05/2007, 13h19
  4. Création programme gestion
    Par Klaad dans le forum Windows
    Réponses: 4
    Dernier message: 19/10/2006, 19h54

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