Systèmes de controle

  • Ce sujet contient 69 réponses, 9 participants et a été mis à jour pour la dernière fois par dede62, le 11 Nov. 2012, 18:27.
10 sujets de 61 à 70 (sur un total de 70)
  • Auteur
    Messages
  • #16380
    kethry
    Bloqué

      et pour l’anti jittering du coup je t’ai donné des sueurs et tremblements ?

      ;)

      #16381
      unitéR4
      Bloqué

        …je prends des anti-parkinsoniens, ça va beaucoup mieux… :mrgreen:

        (Cela dit je ne comprends pas très bien ce qui se passe, j’ai comparé le code, je ne vois pas de différence de version-à suivre)

        #16382
        kethry
        Bloqué

          j’ai un peu beaucoup fait la fête hier soir, mais de ce que je comprends dans le code suivant :

          Code:


          delta = pulseW-oldPulse;
          if ((delta>0) && (delta-PULSESTEP))
          {
          return(oldPulse-1);
          }
          else
          return(pulseW);

          1) if ((delta>0) && (delta-PULSESTEP)) : on a un delta négatif et on teste (delta>-PULSESTEP), donc ici encore pour moi on est dans le seuil toléré (entre -PULSESTEP et 0), et ce coup-ci on retourne (oldPulse-1) au lieu de pulseW

          Donc si je ne me trompe pas, le code devrait plutôt ressembler à :

          Code:


          delta = pulseW-oldPulse;
          if (delta>PULSESTEP) — delta positif et supérieur au seuil toléré (supérieur à PULSESTEP)
          {
          return(oldPulse+1); — petit déplacement dans le sens du delta
          }
          else
          {
          if(delta<-pulseStep) -- delta négatif et supérieur au seuil toléré (inférieur à -PULSESTEP) { return(oldPulse-1); -- petit déplacement dans le sens du delta } else return(pulseW); }

          Cela peut sûrement être affiné, mais en tout cas pour moi cela fonctionne avec ces modifications, comme je n’ai pas de module gridstick et que j’interprète les pulses directement avec l’arduino, le résultat est assez flagrant. Peut-être que ton gridstick effectue un préfiltrage des pulses indésirables ?

          Dans mon cas j’ai tout de même remplacé le +1 et -1 par +PULSESTEP et -PULSESTEP, je ne sais pas trop encore si cela est bénéfique ou non …

          #16383
          unitéR4
          Bloqué

            En fait l’idée de départ était un peu différente: c’était que si l’écart de valeur est inférieur au seuil toléré, le déplacement pris en compte n’est que d’une unité (dans un sens ou dans l’autre), ce qui fait que si la valeur est stable, la position du servo se rapproche tout doucement de ce qu’elle serait sans filtrage. Par contre, si on a des variations anarchiques, les déplacements sont limités en vitesse et en amplitude (effet d’amortissement). Pourquoi est-ce que ça marche chez moi et pas chez toi, mystère : le gridstick n’intervient pas, puisque la mesure du signal se fait en amont (avec pulsewidth). A moins qu’il intervienne indirectement, en déchargeant l’unité centrale d’une partie du travail, ce qui peut modifier la régularité des mesures des pulses par l’arduino…est-ce que tu as essayé de modifier la valeur PULSESTEP ? tiens-moi au courant de tes essais avec la fonction modifiée ! ;)

            #16399
            unitéR4
            Bloqué

              Ci-jointe une première mouture d’un tutoriel sur les strokes (encore incomplet)

              J’aimerais avoir votre avis et vos critiques éventuelles avant publication sur mon blog

              Merci d’avance ;)

              https://rapidshare.com/files/4084152427/tutoriel%20strokes.pdf

              #16400
              kethry
              Bloqué

                ça m’a l’air bien sympa, j’essaierai de lire ça demain.

                2 points :

                – concernant mes essais, en lecture direct de pulses (fonction pulsein), tout semble pas trop mal fonctionner maintenant.

                avec lecture par des interruptions, ce qui est censé mieux fonctionner, c’est une catastrophe.

                ça saccade à n’en plus finir, il semble que les interruptions soient très instables…

                – j’ai implémenté la gestion de fichiers de configuration pour les strokes, ce qui évite d’avoir un bloc de code spécifique, tout se faisant par interprétation du fichier de config.

                pour l’instant j’ai implémenté 3 commandes de test : tourner dome, jouer son, pause. Cela fonctionne parfaitement.

                comme j’ai une carte son rogue rMp3 qui permet de stocker des fichiers sur carte SD, l’arduino lit le fichier de config directement sur la carte.

                le code de cette partie t’intéresse t-il pour l’inclure dans ton programme, je ne sais pas si c’est compatible avec ta gestion, je n’ai pas regardé en détail ?

                #16401
                dede62
                Bloqué

                  THX-1138 wrote:

                  Ci-jointe une première mouture d’un tutoriel sur les strokes (encore incomplet)

                  J’aimerais avoir votre avis et vos critiques éventuelles avant publication sur mon blog

                  Merci d’avance ;)

                  https://rapidshare.com/files/4084152427/tutoriel%20strokes.pdf


                  Je lis ça cette semaine

                  #16402
                  unitéR4
                  Bloqué

                    Xoff wrote:

                    ça m’a l’air bien sympa, j’essaierai de lire ça demain.

                    – j’ai implémenté la gestion de fichiers de configuration pour les strokes, ce qui évite d’avoir un bloc de code spécifique, tout se faisant par interprétation du fichier de config.

                    pour l’instant j’ai implémenté 3 commandes de test : tourner dome, jouer son, pause. Cela fonctionne parfaitement.

                    comme j’ai une carte son rogue rMp3 qui permet de stocker des fichiers sur carte SD, l’arduino lit le fichier de config directement sur la carte.

                    le code de cette partie t’intéresse t-il pour l’inclure dans ton programme, je ne sais pas si c’est compatible avec ta gestion, je n’ai pas regardé en détail ?

                    Tout à fait, c’est quelque chose que j’avais l’intention de faire mais pas encore eu le temps…ce serait beaucoup mieux en effet ne serait-ce que pour la sauvegarde, je suis preneur !

                    #16403
                    dede62
                    Bloqué

                      je vais vulgariser vos propos pour les novices sur votre doc, on espérant que je comprenne déjà.

                      #16398
                      kethry
                      Bloqué

                        Je t’ai envoyé mon code et explications par mail

                        pour le contrat de commissionnement on en discutera ensemble 😆

                      10 sujets de 61 à 70 (sur un total de 70)
                      • Vous devez être connecté pour répondre à ce sujet.