Announcement

Collapse
No announcement yet.

pin_PulseoutCount issue

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • pin_PulseoutCount issue

    Hello,
    I'm driving stepper motors with a 43DT and I use the pin_PulseoutCount function to generate the acceleration, constant speed and deceleration.
    I have a micro stop of the pulses during the deceleration (to be precise, it is around 600Hz). This micro stop doen't occur during acceleration (the programmes are the sames ...).
    I managed to minimise this stop by sending 1 pulse @ 100Hz just before the pulses @ 600Hz but I still have a very small stop which is quite annoying for my project ...
    Any help would be welcome !
    Thanks !

  • #2
    Hi Lorenz,

    Do you have any working code which we can test here? Just to check and see the issues you are having.

    Thank you and Have a good day!

    Best Regards,
    Kevin

    Comment


    • #3
      Hello Kevin,

      Here is the code of the acceleration :

      vitesse_inc starts @ 200
      increment_vitesse = 20
      inc_puls = 10
      nb_boucl_acc_dec = 40


      for (i:=0;i<=nb_boucl_acc_dec;i++) // Boucle de d├ęplacement
      mvt_suivant:=0;
      pin_PulseoutCount(PA4,vitesse_inc, puls, MV_suivant); // Envoi TOP au Moteur Pap
      vitesse_inc:= vitesse_inc+ increment_vitesse; // Augmentation vitesse
      puls:=puls+ inc_puls; // Augmentation nb puls pour laisser environ le meme temps de stabilisation lors de l'ACC
      while (mvt_suivant!=1) // attente Flag de fin de mouvement
      wend
      next

      the code for deceleration :

      vitesse_inc starts @ 1000
      increment_vitesse = 20
      inc_puls = 10
      nb_boucl_acc_dec = 40


      for (i:=0;i<=nb_boucl_acc_dec;i++) // Boucle de d├ęplacement
      mvt_suivant:=0;
      if (vitesse_inc>=500 && vitesse_inc<800 )
      txt_MoveCursor(4,30);
      txt_Set(0,BLACK); // Couleur texte
      print(vitesse_inc,"-"); // by printing the vitesse_inc, I reduce the steppers small stop @ 700-600Hz. I tried with a small delay of 3ms but it didn't work as well
      endif
      pin_PulseoutCount(PA4,vitesse_inc, puls, MV_suivant); // Gestion des pas
      vitesse_inc:= vitesse_inc-increment_vitesse; // Augmentation vitesse
      puls:=puls-inc_puls;
      while (mvt_suivant!=1)
      wend
      next

      func MV_suivant()
      mvt_suivant:=1;
      endfunc



      I hope it can help you to get the issue (again, the small stop happens when pin_PulseoutCount speed decrease and reach 700Hz - 600Hz : I cannot says the exact frequence as as soon as I add a line code for debug, It affects the way the stepper is moving)
      Last info, I use the 43DT alone with Visie genie.

      Thanks for your help !

      Comment


      • John Kevin
        John Kevin commented
        Editing a comment
        Hi Lorenz,

        I have sent you a message on your e-mail. Thank you.

        Best Regards,
        Kevin
    Working...
    X