Passionnement
Bonjour et bienvenu,

Bonjour et bienvenu sur le forum. Ici tu verra, la bonne humeur et l'entraide sont de mise.
Pas de reproche ni de prise de tête. Respect et Amitié sont de rigueur.
Pour la convivialité, nous te demandons de prendre 5mn pour te présenter a tout le monde et de renseigner ton profil le plus précisément possible.

Pour cela, ==> clique ici <== et tu créer un nouveaux sujet (une petite explication est en haut de la page).

Si tu ne fait pas de présentation, ton compte sera supprimé automatiquement après 48H.

Sans présentation, tu n'aura pas accès a la totalité du forum (qui comporte plus de 30.000 messages). Quand tu aura fait ta présentation, un modérateur ou administrateur te donnera les droits pour le forum dans sa totalité dans les 24 h.

Le Staff
Le calendrier du mois.
Testeur de servo et gestion de ma gare cachée . Deafi_10
Derniers sujets
» Tulle et carton pour portail d'usine
Testeur de servo et gestion de ma gare cachée . EmptyHier à 23:46 par letraindemanu

» Le craquage du mois.
Testeur de servo et gestion de ma gare cachée . EmptyHier à 23:00 par Pirlouit95

» Mes trésors au 1/43 ème .
Testeur de servo et gestion de ma gare cachée . EmptyHier à 22:40 par Fred Glmt

» LENZ Spur 0
Testeur de servo et gestion de ma gare cachée . EmptyHier à 22:22 par Pirlouit95

» Les Locomotives à Vapeur de Freddy
Testeur de servo et gestion de ma gare cachée . EmptyHier à 22:22 par Fred Glmt

» Le Forum.
Testeur de servo et gestion de ma gare cachée . EmptyHier à 22:20 par Pirlouit95

» Le coude sur la portière
Testeur de servo et gestion de ma gare cachée . EmptyHier à 22:04 par Pirlouit95

» LPAT67 - Le dépôt Mècéou - de A à Z
Testeur de servo et gestion de ma gare cachée . EmptyHier à 22:02 par Pirlouit95

» Ma collection 00: les locos
Testeur de servo et gestion de ma gare cachée . EmptyHier à 21:17 par Pirlouit95

» Les « fumeuses »
Testeur de servo et gestion de ma gare cachée . EmptyHier à 17:12 par Herwat

» Ma collection 00: les wagons
Testeur de servo et gestion de ma gare cachée . EmptyHier à 16:58 par Herwat

» mon parc matériel
Testeur de servo et gestion de ma gare cachée . EmptyHier à 7:44 par Pirlouit95

» Les circuits imprimés
Testeur de servo et gestion de ma gare cachée . EmptyJeu 13 Juin 2019 - 20:51 par Georges de Villette

» Clôture en bois pour ma nouvelle usine
Testeur de servo et gestion de ma gare cachée . EmptyMer 12 Juin 2019 - 16:23 par Georges de Villette

» Mon projet mixte H0-H0e
Testeur de servo et gestion de ma gare cachée . EmptyMer 12 Juin 2019 - 3:07 par Vince Belgium

» Le réseau d'un ami Lyonnais .
Testeur de servo et gestion de ma gare cachée . EmptyLun 10 Juin 2019 - 16:17 par dany-om

» Le train des alpes de Altaya par lpat67
Testeur de servo et gestion de ma gare cachée . EmptyLun 10 Juin 2019 - 11:14 par likiki

» Salon du Modélisme - Cité du Train à Mulhouse - 21 & 22 Sept 2019
Testeur de servo et gestion de ma gare cachée . EmptyLun 10 Juin 2019 - 10:33 par lpat67

» La collection Tintin au 1/24 .
Testeur de servo et gestion de ma gare cachée . EmptyLun 10 Juin 2019 - 9:16 par dany-om

» Mes véhicules routiers en H0
Testeur de servo et gestion de ma gare cachée . EmptyDim 9 Juin 2019 - 16:48 par Vince Belgium

FORUM AMIS

Testeur de servo et gestion de ma gare cachée . Les_lo12

Testeur de servo et gestion de ma gare cachée .

Page 1 sur 2 1, 2  Suivant

Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Mer 15 Mai 2019 - 21:56

A la demande de Hervé, j'ouvre ce sujet pour également faire par de mes débuts sur arduino .

Ll'origine de tout ce qui va suivre est de commander mes aiguillages par servo .
Sur mon ancien réseau, j'utilisais surtout des  moteurs Conrad . Je n'ai pas eu à m'en plaindre; ils étaient efficaces et fiables, mais je les trouvais bruyants et pas très réalistes .
J'ai fait quelques essais avec des servo et des commandes du commerce : pas très convainquant . . .

Bon, je vous passe tous mes essais et cogitations et j'ai abouti à ceci pour positionner mes servo :

Testeur de servo et gestion de ma gare cachée . Img_2344

Trois pièces :
un support de servo (bleu )
un support de contacteur auxiliaire (bleu)
Un support du support de servo (!!!) qui sert de guide pour la tige de commande de l'aiguillage . le guige tige est du tube de laiton de 2 mm et 0.45 mm d'épaisseur (classique).
La tige est de la corde à piano de 0.8 ou 1 mm suivant l'épaisseur du plateau  . . . Je pense que je vais généraliser à 1 mm , d'autant plus que maintenant je peux facilement régler mes servo !

Et voilà mon premier montage pour commander ces p'tites bêtes :

Testeur de servo et gestion de ma gare cachée . Img_2345

J'ai fait ce petit montage dans le but de commander jusqu'à 4 servo . . . ce que je n'ai pas encore fait !
Je m'en suis surtout servi pour m'exercer à commander deux servo avec 3 boutons pour commander un aiguillage triple .

pour le programme, je me suis fortement inspiré de ce site .
Mais aussi des élucubrations d'un certain LIKIKI qui m'ont aidée à me mettre le pieds à l'étrier .

Testeur de servo et gestion de ma gare cachée . 2296668512
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par lherve54 le Jeu 16 Mai 2019 - 7:10

Je vais suivre cela avec attention !

On lit le même site et sis les conseils du même personnage  !!
lherve54
lherve54
Petit posteur
Petit posteur

Localisation : Villers Les Nancy
Messages : 950
Age : 56
Emploi/loisirs : / Train miniature

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Jeu 16 Mai 2019 - 10:52

Allez, premiers essais, prières émotions Very Happy 

Ici, un servo et deux poussoirs ( remplacé par un inter à 2 positions momentanées ) ; un pour chaque position :




Youppiiii ! ça marche ! ! !

pour ceux que ça intéresse, voici le programme :

Code:
   /*
     * Programme OK
     * Un poussoir sur entrée analogique commande un aller    
     * Un poussoir sur entrée digitale commande un retour
     * Les pins analogique et digital ont le même numéro
     */  
    
    #include <Servo.h>
    
    const int angleMin1  = 600;
    const int angleMax1 = 900;

    const byte pinServo1 = 6;
    const byte pinBouton1 = 4;
    
    Servo monServo1;
    int vitesse1;
    int angle1;
        
    void setup()
    {
        pinMode(pinBouton1, INPUT);
        monServo1.attach(pinServo1);
        angle1 = angleMin1;
        vitesse1 = 0;
     }
    
  
    void loop()
     /*
     * J'ai fait en sorte que les boutons ne soit actifs que lorsque
     * le servo est à l'arrêt .    
     * J'en profite pour tester une entrée analogique et une digitale .
     */  
  
    {
        if (digitalRead(pinBouton1) == HIGH && vitesse1 == 0) {
            vitesse1 = 1;
            monServo1.attach(pinServo1);
        }
         if (analogRead(pinBouton1) > 511 && vitesse1 == 0) {
            vitesse1 = -1;
            monServo1.attach(pinServo1);
        }
        
        monServo1.writeMicroseconds(angle1);   // fait bouger le servo
        /* calcule le nouvel angle */
        angle1 = angle1 + vitesse1;
        
    
        if (angle1 > angleMax1) {
            /*
             * le nouvel angle dépasse le maximum
             * on le recale au maximum et on annule la vitesse
             * et on déconnecte le servo
             */
            angle1 = angleMax1;
            vitesse1 = 0;
            monServo1.detach();
        }
        else if (angle1 < angleMin1) {
            angle1 = angleMin1;
            vitesse1 = 0;
            monServo1.detach();
        }
        
        delay(6);     // régle la vitesse du mouvement .
    }



Je rappelle que je suis néophyte en programmation, alors si quelques érudits y voient des problèmes potentiels, modifications ou améliorations, je suis preneur .

Testeur de servo et gestion de ma gare cachée . 2296668512
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Jeu 16 Mai 2019 - 14:53

Deuxième étape :
Avec la même platine d’essai, 2 servo et trois boutons en vue de commander un aiguillage triple, avec leds témoins .




Et voila le code :
Code:
      /*
    * Programme Testé Ok
       
    * Trois poussoirs sur entrée analogique
    * Deux servo
    * Diagramme :
    * BP1 Servo1 : droite - servo2 : gauche
    * BP2 Servo1 : gauche - servo2 : gauche
    * BP3 Servo1 : gauche - servo2 : droite
    * Témoin LED
    */ 
   
    #include <Servo.h>
   
    const int angleMin1  = 600;
    const int angleMax1 = 950;
    const int angleMin2  = 550;
    const int angleMax2 = 850;
   
    const byte pinServo1 = 6;  /*  pin D6  */
    const byte pinServo2 = 7;  /*  pin D7  */
    const byte pinBouton1 = 2;  /*  pin A2  */
    const byte pinBouton2 = 3;  /*  pin A3  */
    const byte pinBouton3 = 4;  /*  pin A4  */

    const byte LED01 = 10;  /*  pin D10  */
    const byte LED02 = 11;  /*  pin D11  */
    const byte LED03 = 12;  /*  pin D12  */
   
    Servo monServo1;
    int vitesse1;
    int angle1;
    Servo monServo2;
    int vitesse2;
    int angle2;
    int LED;
   
    void setup()
    {
       
        monServo1.attach(pinServo1);
        angle1 = angleMax1;
        vitesse1 = -1;
       
        monServo2.attach(pinServo2);
        angle2 = angleMin2;
        vitesse2 = 1;

        LED = 0;

        pinMode(LED01, OUTPUT);
        pinMode(LED02, OUTPUT);
        pinMode(LED03, OUTPUT);
               
    }
   
 
    void loop()
    {
        if (analogRead(pinBouton1) > 512 && vitesse1 == 0) {
            vitesse1 = -1;
            vitesse2 = 1;
            monServo1.attach(pinServo1);
            monServo2.attach(pinServo2);
            LED = 10;
        }
       
        if (analogRead(pinBouton2) > 512 && vitesse1 == 0) {
            vitesse1 = 1;
            vitesse2 = 1;
            monServo1.attach(pinServo1);
            monServo2.attach(pinServo2);
            LED = 11;
        }
       
        if (analogRead(pinBouton3) > 512 && vitesse1 == 0) {
            vitesse1 = 1;
            vitesse2 = -1;
            monServo1.attach(pinServo1);
            monServo2.attach(pinServo2);
            LED = 12;
        }
        monServo1.writeMicroseconds(angle1);
        angle1 = angle1 + vitesse1;
        if (vitesse1 == 0) { monServo1.detach();}
       
        monServo2.writeMicroseconds(angle2);
        angle2 = angle2 + vitesse2;
        if (vitesse2 == 0) { monServo2.detach();}
   
        if (angle1 > angleMax1) {
            angle1 = angleMax1;
            vitesse1 = 0;
        }
        else if (angle1 < angleMin1) {
            angle1 = angleMin1;
            vitesse1 = 0;
        }
        if (angle2 > angleMax2) {
            angle2 = angleMax2;
            vitesse2 = 0;
        }
        else if (angle2 < angleMin2) {
            angle2 = angleMin2;
            vitesse2 = 0;
        }
        if (vitesse1 != 0 || vitesse2 != 0) {  // les Leds sont éteintes pendant le mouvement des servo
          digitalWrite(10, LOW);
          digitalWrite(11, LOW);
          digitalWrite(12, LOW);
        }
        else if (vitesse1 == 0 && vitesse2 == 0) {  // quand les servo ont fini leur course
          digitalWrite(LED, HIGH);                  // la Leds correspondant au bouton s'allume
        }
        delay(5);  //    réglage de la vitesse du mouvement des servo
    }

Testeur de servo et gestion de ma gare cachée . 2296668512
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par likiki le Jeu 16 Mai 2019 - 17:14

Superbe Hervé.

Rien a dire sur tes programmes, puisque pour ce type d'utilisation tu a largement assez de place en Eprom.

Donc tu peut te permettre de programmer en pure code Arduino (code C).

J'ai juste une petite question (histoire de te faire passer au blanc quelques cheveux).

Que se passe t'il, au niveau des servos, quand tu alimente ta carte Arduino Question

king
likiki
likiki
Administrateur
Administrateur

Localisation : Saintry Sur Seine
Humeur : De tout coeur avec les victimes des attentats en France.
Messages : 14663
Age : 52
Emploi/loisirs : Gérant de son BET Ascenseurs

http://Webacappelliens.fr

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Jeu 16 Mai 2019 - 18:10

@likiki a écrit:Superbe Hervé.

Que se passe t'il, au niveau des servos, quand tu alimente ta carte Arduino Question

king

Testeur de servo et gestion de ma gare cachée . 465159486   Christian,

Rien d'autre que ce que je leur demande ! ! ! Very Happy Very Happy Very Happy 
à savoir, s'initialiser sur le bouton 1  (sauf que la led 1 ne s'allume pas ! mais j'ai corrigé le problème dans le programme à venir . . . )

Aurais-tu eu des problèmes de servo qui partent un peu n'importe où à la mise sous tension ? ? ?

Pour l'histoire de place en Eprom . . . j'en suis pas là !   Very Happy Very Happy Very Happy   il faudra que tu m'explique , un jour . . .
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par likiki le Jeu 16 Mai 2019 - 19:11

A la mise sous tension, les servos ont tendance a brouter un peu et donc a ne plus être en position ...... impeccable (l'aiguille peu ne pas être bien en place.

Le jeu consiste donc, a la mise sous tension, de provoquer automatiquement une mise au centre de tous les servos et de les mettre (les aiguilles) dans la position tout droit.

Cela permet de mettre toutes les aiguilles dans la même position et de les avoirs de bien positionnées.

king
likiki
likiki
Administrateur
Administrateur

Localisation : Saintry Sur Seine
Humeur : De tout coeur avec les victimes des attentats en France.
Messages : 14663
Age : 52
Emploi/loisirs : Gérant de son BET Ascenseurs

http://Webacappelliens.fr

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Jeu 16 Mai 2019 - 19:38

Je ne m'en suis pas encore rendu compte .  Hmmm, va falloir que je sois vigilant !
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par likiki le Jeu 16 Mai 2019 - 20:09

Testeur de servo et gestion de ma gare cachée . 2950358182
likiki
likiki
Administrateur
Administrateur

Localisation : Saintry Sur Seine
Humeur : De tout coeur avec les victimes des attentats en France.
Messages : 14663
Age : 52
Emploi/loisirs : Gérant de son BET Ascenseurs

http://Webacappelliens.fr

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Jeu 16 Mai 2019 - 20:49

Very Happy Very Happy Very Happy

Bon, fort de ces expériences, J'allai commencer le montage des servo sous le plan de voie . Mais avant, pour pouvoir les régler, j'ai fait un testeur tout simple pour envoyer le servo d'un côté puis de l'autre : bref, une synthèse des deux premiers montage :

Testeur de servo et gestion de ma gare cachée . Img_2442
Testeur de servo et gestion de ma gare cachée . Img_2441

dont voici le programme :
Code:
  /*
     * Programme opérationnel
     * Un poussoir sur entrée analogique A1 pour commande droite    
     * Un poussoir sur entrée analogique A2 pour commande déviée
     * Sortie servo D2
     * Sortie LED droite D5
     * Sortie LED déviée D6
     */  
    
    #include <Servo.h>
    
    const int angleMin1  = 600;   // détermine les angles mini et maxi du bras du dervo
    const int angleMax1 = 900;

    const byte pinServo1 = 2;
    const byte pinBouton1 = 1;
    const byte pinBouton2 = 2;

    const byte LED01 = 5;   /*   pin D5   */
    const byte LED02 = 6;   /*   pin D6   */
    
    Servo monServo1;
    int vitesse1;
    int angle1;
    int LED;
        
    void setup()
    {
        monServo1.attach(pinServo1);
        angle1 = angleMin1;
        vitesse1 = 1;

        LED = 5;

        pinMode(LED01, OUTPUT);
        pinMode(LED02, OUTPUT);
     }
    
  
    void loop()
    {
        if (analogRead(pinBouton1) > 511 && vitesse1 == 0) {
            vitesse1 = -1;
            monServo1.attach(pinServo1);
            LED = 6;
        }
         if (analogRead(pinBouton2) > 511 && vitesse1 == 0) {
            vitesse1 = 1;
            monServo1.attach(pinServo1);
            LED = 5;
        }
        
        monServo1.writeMicroseconds(angle1);   // positionne le servo sur angle 1
        /* calcule le nouvel angle */
        angle1 = angle1 + vitesse1;
        
    
        if (angle1 > angleMax1) {
            /*
             * Si le nouvel angle dépasse la valeur limite
             * on le recale à cette valeur ,on annule la vitesse et déconnecte le servo
             * pour qu'il ne vibre pas et limite la comsommation
             */
            angle1 = angleMax1;
            vitesse1 = 0;
            monServo1.detach();
        }
        else if (angle1 < angleMin1) {
            angle1 = angleMin1;
            vitesse1 = 0;
            monServo1.detach();
        }
         if (vitesse1 != 0 ) {        // lors du mouvement du servo les Leds sont éteintes
          digitalWrite(5, LOW);
          digitalWrite(6, LOW);
         }
          else if (vitesse1 == 0 ) {  // Quand le servo atteind sa position, la Led correspondante s'allume
          digitalWrite(LED, HIGH);
         }
        
        delay(6);       // Règle la vitesse du mouvement du servo
    }

Cette fois-ci, pas de vidéo . . .

Croyez-moi, ça marche très bien . à ceci près que je me suis rendu compte que de positionner le servo pile poil  par rapport à l'aiguillage, c'est pas évident !
Ou le servo tire trop d'un côté ou tire trop de l'autre, mais jamais parfaitement équilibré . . . J'ai bien pensé faire des lumières sur le support de tringle, ça aurait permis de faire coulisser légèrement l'ensemble , mais le réglage aurait tout de même était long . . .

L'idée m'est donc venu de faire un testeur qui pourrait régler le mouvement du servo : Il faudrait rajouter au testeur précédent un inter à 2 contacts momentanés qui pourrait modifier les positions mini et maxi en plus ou en moins . . . oui, mais alors, comment repérer les nouvelles valeurs ? ? ?  y a pas, il faut un petit écran LCD . Very Happy

Le problème, c'est que, si je sais que ça existe, j'ignore totalement comment ça marche ! ! !
Testeur de servo et gestion de ma gare cachée . 2296668512
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par likiki le Jeu 16 Mai 2019 - 21:02

Le fonctionnement d'un afficheur LDC de deux Lignes 16 caractères est super simple.

Tu initialise au début de ton programme la bibliothèque LCD

Et tu affiche sur l'écran avec un truc vieux comme l'informatique.

lcd.print

au début tu met :

#include "LiquidCrystal.h" // Ajout de la librairie pour afficheur lcd

LiquidCrystal lcd(13,12,11,10,9,8,7,6,5,4); // déclaration des bornes du lcd sur la carte Arduino

Et quand tu veut afficher tu met :

lcd.print("** En attente **"); // Affichage sur le lcd de **En attente **

d'autre petit trucs

lcd.clear(); // on efface l'écran

lcd.print(toto); // affichage de la variable toto

lcd.setCursor(0, 1); // On déplace le curseur sur la 2 eme ligne

king
likiki
likiki
Administrateur
Administrateur

Localisation : Saintry Sur Seine
Humeur : De tout coeur avec les victimes des attentats en France.
Messages : 14663
Age : 52
Emploi/loisirs : Gérant de son BET Ascenseurs

http://Webacappelliens.fr

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Ven 17 Mai 2019 - 4:35

Smile Smile Smile 
Merci Christian,

En fait, je raconte le cheminement de mes réflexions de ces dernières semaines . N'étant pas un grand littéraire, je parle tantôt au présent, tantôt au passé ! ! ! Et depuis ma décision d'utiliser un écran, j'ai fait pas mal de recherche . . .

J'ai donc orienté mon choix vers un petit écran tout simple et classique à 2 lignes de 16 caractères , le LCD 1602 . Mais en version I2C : Comme cela, il n'y a que 4 fils à brancher sur l'arduino .

Et voilà, premiers essais :

Testeur de servo et gestion de ma gare cachée . Img_2443

Le pilotage est effectivement très simple :

Code:
   /*
     *
     * *********************************
     * Pilotagr d'un écran LCD 1602 I2C
     * *********************************
    */
    
    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>
  
    LiquidCrystal_I2C lcd(0x27,16,2);  // Description de l'écran
        
    void setup()
    {
      lcd.init();

      lcd.backlight();
      lcd.setCursor(0,0);
      lcd.print(".Initialisation.");
      lcd.setCursor(0,1);
      lcd.print("....Patience....");
         delay(2000);  

      lcd.clear();
      lcd.setCursor(2,0);
      lcd.print("Min.");
      lcd.setCursor(10,0);
      lcd.print("Max.");
      lcd.setCursor(2,1);
      lcd.print("000");
      lcd.setCursor(10,1);
      lcd.print("000");
      
    }
    
      void loop()
    {
        
    }

Reste à intégrer çà  dans le programme du testeur . . .

Testeur de servo et gestion de ma gare cachée . 2296668512
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Dim 19 Mai 2019 - 13:28

Et voilà le testeur finalisé :

Testeur de servo et gestion de ma gare cachée . Testeu10

avec son programme :

Code:
   /*
     * Programme Opérationnel
     * Un poussoir sur entrée analogique A1 pour commande droite    
     * Un poussoir sur entrée analogique A2 pour commande déviée
     * Boutonplus et boutonmoins pour régler la déviation en D3 et D4
     * Sortie servo D2
     * Sortie LED droite D5
     * Sortie LED déviée D6
     *
     * Un écran LCD 1602 indique angleMin et angleMax .
     */    
    
    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>
    #include <Servo.h>

    LiquidCrystal_I2C lcd(0x27,16,2);  // Description de l'écran
    
    int angleMin  = 600;
    int angleMax = 900;
  
    const byte pinServo1 = 2;
    const byte pinBouton1 = 1;   /* sur entrée analogique  */
    const byte pinBouton2 = 2;   /* sur entrée analogique  */
    const byte Boutonplus = 3;   /* sur entrée digitale    */
    const byte Boutonmoins = 4;  /* sur entrée digitale    */

    const byte LED01 = 5;   /*   pin D5   */
    const byte LED02 = 6;   /*   pin D6   */
    
    Servo monServo1;
    int vitesse;
    int angle;
    int LED;
    int Dev;
    int pt;
        
    void setup()
    {
      lcd.init();
      //lcd.cursor_on();
      //lcd.blink_on();
      lcd.backlight();
      lcd.setCursor(0,0);
      lcd.print(".Initialisation.");
      lcd.setCursor(0,1);
      lcd.print("....Patience....");
         delay(2000);  
      //lcd.cursor_off();
      //lcd.blink_off();
      lcd.clear();
      lcd.setCursor(2,0);
      lcd.print("Min.");
      lcd.setCursor(10,0);
      lcd.print("Max.");
      lcd.setCursor(2,1);
      lcd.print("000");
      lcd.setCursor(10,1);
      lcd.print("000");
      
        monServo1.attach(pinServo1);
        angle = angleMin;
        Dev = angleMax;
        pt = 10;
        LED = LED02;

        pinMode(LED01, OUTPUT);
        pinMode(LED02, OUTPUT);
        pinMode(Boutonplus, INPUT);
        pinMode(Boutonmoins, INPUT);
     }
    
  
    void loop()
    {
        if (analogRead(pinBouton1) > 511 && vitesse == 0) {
            Dev = angleMax;
            LED = LED02;
            pt = 10;
            monServo1.attach(pinServo1);
        }
         if (analogRead(pinBouton2) > 511 && vitesse == 0) {
            Dev = angleMin;
            LED = LED01;
            pt = 2;
            monServo1.attach(pinServo1);
        }
         if (digitalRead(Boutonplus) == HIGH && vitesse == 0 && pt == 10 )
            {
                angleMax = angleMax + 10;
                Dev = angleMax;
                monServo1.attach(pinServo1);
            }
         if (digitalRead(Boutonmoins) == HIGH && vitesse == 0 && pt == 10 )
            {
                angleMax = angleMax - 10;
                Dev = angleMax;
                monServo1.attach(pinServo1);
            }
         if (digitalRead(Boutonplus) == HIGH && vitesse == 0 && pt == 2 )
            {
                angleMin = angleMin + 10;
                Dev = angleMin;
                monServo1.attach(pinServo1);
            }
         if (digitalRead(Boutonmoins) == HIGH && vitesse == 0 && pt == 2 )
            {
                angleMin = angleMin - 10;
                Dev = angleMin;
                monServo1.attach(pinServo1);
            }
                        
         if (angle < Dev ){
           vitesse = 1;
        }
         if (angle > Dev ) {
           vitesse = -1;
        }

        angle = angle + vitesse;    /* calcule le nouvel angle */
        monServo1.writeMicroseconds(angle);
                            
        if (angle == Dev) {
                        
            vitesse = 0;
            monServo1.detach();
            lcd.setCursor(pt,1);
            lcd.print(angle);
            delay(200);
        }
      
         if (vitesse != 0 ) {
          digitalWrite(LED01, LOW);
          digitalWrite(LED02, LOW);
         }
          else if (vitesse == 0 ) {
          digitalWrite(LED, HIGH);
         }

        
        delay(6);
    }

et une petite vidéo, pas terrible à cause du rétro éclairage de l'écran :




ça marche nickel ! ! !
Le positionnement étant optimisé, il n'y a plus qu'à noter les valeurs et les reporter dans le programme de gestion des aiguillages . . .
I M P E C C A B L E ! ! ! !

Encore que . . . .  Une inscription automatique sur SD Card , ce serait top ! ! !  mais bon, soyons raisonnable !

Bon, passons au plat de résistance : la gestion de la gare cachée .

Testeur de servo et gestion de ma gare cachée . 2296668512
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par likiki le Dim 19 Mai 2019 - 14:05

Testeur de servo et gestion de ma gare cachée . 3891541798
likiki
likiki
Administrateur
Administrateur

Localisation : Saintry Sur Seine
Humeur : De tout coeur avec les victimes des attentats en France.
Messages : 14663
Age : 52
Emploi/loisirs : Gérant de son BET Ascenseurs

http://Webacappelliens.fr

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Dim 19 Mai 2019 - 15:30

Testeur de servo et gestion de ma gare cachée . 465159486  Christian ,

Je ne sais pas pourquoi, mais j'ai une certaine appréhension à mettre sous tension . . .

Testeur de servo et gestion de ma gare cachée . Img_2444


Testeur de servo et gestion de ma gare cachée . 2296668512
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par likiki le Dim 19 Mai 2019 - 15:41

Allez, vas y (mais appel les pompiers avant, on sais jamais).

Testeur de servo et gestion de ma gare cachée . 540710270
likiki
likiki
Administrateur
Administrateur

Localisation : Saintry Sur Seine
Humeur : De tout coeur avec les victimes des attentats en France.
Messages : 14663
Age : 52
Emploi/loisirs : Gérant de son BET Ascenseurs

http://Webacappelliens.fr

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Fred Glmt le Dim 19 Mai 2019 - 20:59

salut,

Oh un arduiniste j'ai déja la tête qui fume vite les pompiers .. Testeur de servo et gestion de ma gare cachée . 540710270
Fred Glmt
Fred Glmt
Expert en Architecture
Expert en Architecture

Localisation : FRANCE
Humeur : Tranquille
Messages : 5166
Age : 49
Emploi/loisirs : modélisme ferroviaire

http://fred-glmt.over-blog.com/

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Lun 20 Mai 2019 - 14:06

Bon . . . . Testeur de servo et gestion de ma gare cachée . 1903599084 

Le montage est bon, le programme est correct . . .
Mais c'est tout ! ! !

Trop de fils, trop de parasites, trop d'interférences, trop de "je ne sais pas quoi "
Bref, les servo sont hésitants, s'arrêtent en chemin . . .
Pas cool , tout ça .

Il va falloir que je change de stratégie :
Un méga pour gérer la sélection des voies et des nano au plus prés des servo pour les piloter "efficacement"

Testeur de servo et gestion de ma gare cachée . 2296668512
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par likiki le Lun 20 Mai 2019 - 15:24

Testeur de servo et gestion de ma gare cachée . 540710270

Monsieur parasite c'est invité !

Ton grand cordon qui vas a la boite à boutons et celui, plus petit qui vas ?????, enrobe les de papier aluminium alimentaire relier au 0v de la carte.

Monsieur parasite devrait repartir d'où il vient.

Testeur de servo et gestion de ma gare cachée . 2492152210
likiki
likiki
Administrateur
Administrateur

Localisation : Saintry Sur Seine
Humeur : De tout coeur avec les victimes des attentats en France.
Messages : 14663
Age : 52
Emploi/loisirs : Gérant de son BET Ascenseurs

http://Webacappelliens.fr

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Herwat le Mer 29 Mai 2019 - 17:26

Le Graaaaaale ! ! ! !





J'appellerais ça volontiers la valse des servo !  Very Happy Very Happy Very Happy 

Je n'ai plus qu'à configurer correctement le tableau des positions des servo en fonction des voies
et finaliser la séquence d'initialisation (à la mise sous tension) qui peut encore être optimisée

Et c'est tout bon !

Je vais ENFIN pouvoir installer tout ça sous mon plan de voies et ENFIN avancer mon réseau .

Le pieds !

Testeur de servo et gestion de ma gare cachée . 2296668512
Herwat
Herwat
Posteur habitué
Posteur habitué

Localisation : Creuse
Messages : 1394
Age : 72
Emploi/loisirs : Retaité -train- bricolage - balades

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par likiki le Jeu 30 Mai 2019 - 9:56

Testeur de servo et gestion de ma gare cachée . 2723837767

COOOOOOLLLLLLLLL
likiki
likiki
Administrateur
Administrateur

Localisation : Saintry Sur Seine
Humeur : De tout coeur avec les victimes des attentats en France.
Messages : 14663
Age : 52
Emploi/loisirs : Gérant de son BET Ascenseurs

http://Webacappelliens.fr

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Pirlouit95 le Lun 3 Juin 2019 - 8:08

Beau boulot, mais,

à la recherche du Graal, je suis plutôt Perceval.
Testeur de servo et gestion de ma gare cachée . Une_ci10
J'ai rien pigé.
Pirlouit95
Pirlouit95
Animateur Documentaliste
Animateur Documentaliste

Localisation : Courdimanche
Humeur : Amicalement vôtre
Messages : 4024
Age : 50
Emploi/loisirs : Employé service numérisation/Multiples

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Fred Glmt le Lun 3 Juin 2019 - 8:42

salut .Very Happy

Alors là bravo Mr.. Testeur de servo et gestion de ma gare cachée . 4102975518
J'ai rien compris non plus Johan du Schmilblick arduiniste ... Testeur de servo et gestion de ma gare cachée . 1257101382 Testeur de servo et gestion de ma gare cachée . 4025080285
Mais je reste admiratif .. Cool
Fred Glmt
Fred Glmt
Expert en Architecture
Expert en Architecture

Localisation : FRANCE
Humeur : Tranquille
Messages : 5166
Age : 49
Emploi/loisirs : modélisme ferroviaire

http://fred-glmt.over-blog.com/

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Georges de Villette le Lun 3 Juin 2019 - 9:08

En fin de compte Hervé , pour atteindre le Grall comme tu dis , c'était bien les parasites comme t'avait dit Christian ?
Papier d'alu et hop ?
Ou autre chose ? Tu nous dis pas !!!  Shocked
Georges de Villette
Georges de Villette
Petit posteur
Petit posteur

Localisation : Villette d'Anthon
Messages : 277
Age : 69
Emploi/loisirs : Micro mécanique , electronique et sièstes

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Paul-Petit le Lun 3 Juin 2019 - 10:10

scratch scratch scratch scratch scratch scratch  C'est beaux les petites lumières 

Testeur de servo et gestion de ma gare cachée . 471057912
Paul-Petit
Paul-Petit
Petit posteur
Petit posteur

Localisation : Brussels
Humeur : Souvent très bonne
Messages : 667
Age : 69
Emploi/loisirs : Petites voitures et camions

Revenir en haut Aller en bas

Testeur de servo et gestion de ma gare cachée . Empty Re: Testeur de servo et gestion de ma gare cachée .

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Page 1 sur 2 1, 2  Suivant

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum