AngryRobot (Customer) asked a question.

Leadshine stepper controller, P1AM-100, and P1-04PWM?

Has anyone used the P1AM-100 and the PWM output module to drive a Leadshine or SureStep microstepping drive? How easy was it to move through repeated positions?

 

I am evaluating options for an upcoming project that will essentially be an embedded add-on to a customers existing equipment. I will need to use a stepper to move a load through various repeatable positions (i.e. starting from 0° move to 270°, then 180°, then back to 0°).

 

I'm pretty sure I could make it work with a traditional LD program, because I've done something similar with a servo before; but we don't have the space for a Productivity PLC and the Click doesn't appear to have a PWM module. I'm decent with the Arduino flavor of C, at least with basic home experiments, so I'm curious how others have handled creating a position table and commanding the drives. My initial, first thing in the morning, thought is to job the load around to find the number of pulses needed for each position; then use a FOR loop with the number of pulses required for each position as the upper bound.

 

 


  • FACTS_AdamC (AutomationDirect)

    Hey AngryRobot,

     

    I don't recommend using the P1-04PWM if you need to control a stepper motor with high precision. The P1-04PWM outputs a fixed frequency and duty cycle, but due to the nature of the P1AM and P1000 IO module interfaces, there will be some lag and minor jitter that would cause problems with tight positioning.

     

    You could try using a normal discrete output module where you have direct control on the edges, though you would be much more limited on the speed (~1kHz maybe) so this may not be suitable for your application.

     

    The last approach would be using a level shifter IC and communicating with the drive via the GPIO pins. This would give you the most speed and control, but you lose the benefit of the industrial protections.

     

    Thanks

    Adam

     

     

    Expand Post
    • AngryRobot (Customer)

      Hmm... I was really hoping to stick with something that had the industrial protection. I guess I could always try to roll my own with filters and optoisolators on the proto module, but I'd prefer something I'd feel more safe with.

  • ADC_MotionControl_PM (AutomationDirect)

    Instead of pulse outputs, you could use the advanced stepper drives that can accept serial comms input (STP-DRV-4850 and STP-DRV-80100). You can send SCL commands over RS-232 to have the motor move specific distances. The advanced drives are more expensive, but you don't have to buy a high speed PLC output card.

    • AngryRobot (Customer)

      That is definitely an option. Does AD have any programming examples for the Click interfacing to one of those drives? I've never controlled a stepper via serial coms before.

      • ADC_MotionControl_PM (AutomationDirect)

        There are a lot of handshaking and housekeeping rungs in that EP-COM-010 program. Look closely at Subroutine 4 (the Feed to Length command, "FL").

         

        Don't let the program size/complexity deter you. Basically, once everything is set up, all you have to send from the PLC to the drive is the serial string "FL 2000" or some other number. That string would cause the motor to feed 2000 pulses. The SureMotion Pro software has a serial terminal window (like the old Hyperterminal) that lets you test serial commands to the drive without a PLC. Makes testing and setting up the comms string pretty easy.

        Expand Post
  • Arnie Dojan (Customer)

    IMG_20210615_102926191IMG_20210615_101430209I've just completed a position module to do exactly what you're talking about. "Bit-banging" a dial through its positions in the machine is elementary but it works. CXA170, the module left of GPIO, is the position module. CXA174 is my "logic module," it's just opto-isolators for 24V input and 5V output. I wanted the industrial protections but needed something cheap to do what i needed it to do. The position module has some built in flexibility, on-board 5V and 12V power supplies if i need them, selectable input/output, whatever i want, with the Nano Every on the module.

    Expand Post
    • AngryRobot (Customer)

      That's pretty cool. So are you using a second Nano there, or are you not using a P1AM controller at all?

      Unfortunately we didn't win this bid, so I'm not going to get to go any further with it. I was really intrigued by this one though.​

10 of 11