No announcement yet.

Stepper VS Servo options

  • Filter
  • Time
  • Show
Clear All
new posts

  • Stepper VS Servo options

    Hello experts!

    I've got a couple of stepper projects under my belt, and my boss is starting to ask about servos. I'm wondering if a servo system is right for my application.

    Basically, it's a mechanical contraption that will need to be taught positions of a lead screw (conversationally via HMI, likely a c-more screen) that can be recalled upon touching one of several soft buttons. I've done just this before with a stepper motor (without encoder feed back), but I don't know how to configure a servo system to accept HSIO from a controller (i.e. to move an absolute pulse count position that isn't predefined, and read/ store the current position later use).

    What advantage does a servo system have compared to a stepper with encoder feed back? Which one is easier / more cost effective? What is the recommend setup for a servo system (logic controller, modules, zip-link cables, etc).


  • #2
    a servo system is a closed system due to the presence of encoder, therefore easy to adjust speed in order to reach a certain encoder count.
    there are three ways to control a motion:
    position follower
    speed follower
    torque follower
    I guess you need position follower. you should be able to teach position, however any programming goes through plc only. servo motion is autonomous, the plc only configures the motion and starts it. what ends it is usually reaching the endpoint or a slip error.


    • #3
      Usually the servo drive ( the are two components, the controller and the power driver similar to a vfd, most of the times together in the same unit) has two power inputs: one for controller and one for motor
      means to stop the motor while executing a motion are:
      by cutting power to the motor. This can happen anyway and is important that the resistance to motion induced by the motor gear ( like a worm gear) can insure a sudden stop, even at the cost of ruining the gear. If this condition is not met, then a motor brake is essential. The motion need reset upon power up.
      by motion disable via servo digital input. This condition corresponds to usual emergency stop and the motor will execute a stop followed by a maintain of position.
      by reaching the end of motion. This condition works when the motion follows a position reference

      what the controller has, in terms of I/O:
      several inputs for position, few for speed and torque. Upon triggering from an input, the program in the servo might switch to a different value for whatever the input meant.
      An enable input, allowing the emergency stop
      could have a couple of outputs referring to the state of the controller.
      analog: not sure if all, but in general a servo controller could have a couple of analog for analog speed, torque reference. They are usually on output side, to provide fast feedback to a plc.

      how does it program: pretty much like a vfd:
      you set up:
      Communication. You may want to change the parameters straight from plc
      I/O. Tell the servo what happens when an input is on.
      Ramps and speeds
      motor type
      PID ( use the documentation or leave to default)
      you send from plc:
      either trigger motion start/stomvia one servo input or start only via comms. The servo will execute a motion according to the configuration of inputs and the preprogrammed trajectory.

      1. Servos are very versatile. Upon reaching a stop, the motor could hold position with different torque levels in different directions. Meaning you might be able to turn the shaft by hand in one direction only, both or neither
      2. Servos are unpredictable. Sometimes a mechanical overload could prevent motion and the motor appears stalled. Attempting to manually turn the shaft could result in motor overspeed. Extra care in programming the servo and plc monitoring of the motion is required.
      3. Motion will slip, sooner or later. In time this error accumulates to a point where the motion will stop. To prevent this fault, especially in position mode, a procedure called homing ( returning the motor to a position that zeroes the encoder reading) is required.
      4. Donít forget that power could be lost due to outage. In that case, a good program would advertise the homing procedure instead of leaving the operator scratching his head. I have seen a servo valve locked midway open due to outage, while the emergency valve closed. On power up, the machine wonít move with no apparent reason. Reason being that the servo valve needed closed by manual operation, to insure the homing. A simple alarm message would have solved the problem in no time.


      • #4
        Thank you, Alexandru, for the thorough explanation. In your opinion, does the additional cost of a servo make sense for my application compared to a stepper with encoder feedback?


        • #5
          You can feed pulses to a server in the exact same way you do for a stepper. Steppers are usually step+direction or CW/CCW, servos can be configured to do either of those or also accept quadrature pulse inputs. But the way you wire the HSIO to the servo would be basically the same as the way you wire your HSIO to a stepper. When using external pulse inputs, you would use what AD calls "pt mode", which is pulse train follower.

          The advantage of a servo would be that if something overloads the motor it will error out on your if it is too large an overload, or draw extra current and fix the position error itself if it can, and afterwards it will stop at the exact pulse count you gave it. A typical stepper in an open-loop configuration in this same situation would just miss steps and not move and the stepper wouldnt know it missed things and the HSIO module wouldnt know the stepper missed either. When you add encoder feedback to a stepper and make it into a closed-loop system it is very similar to a server already and you have the primary advantage a servo would provide. In this case, a servo usually just has more power, more speed, and a bit more capability when compared to a stepper.


          • #6
            If you need assistance setting up the servo, I would like to help. I work 6 days a week, that could be a hindrance, but to look on documentation and give you my opinion would be fine. Iím not involved in sales, so choose your gear carefully in order to have all options open ( comms, features, support). Once you have it, will work out the best of it.
            you will have to do the plc and hmi programming. I can help along, to make it firstly safe then efficient. Now the long story:

            A stepper axis is an option if it worked well before, and experience tells is cheap and reliable. And you have monitoring and maintenance onsite.
            The only reason I would avoid it is for unsafe reasons, due to unprofessional wiring and hardware setup (servos come with wiring and everything, of course at a cost).
            The other reason I would avoid it is because the stepper controller needed to advance the motion incrementally, hence the plc controlled the motion.
            if those two reasons can be worked out, then stepper axis it is.

            a servo axis is an expensive investment. I could go with a chinese clone, but only for testing. In production I would have a solid brand. All brands are equally reliable.
            the reasos I would pick a servo axis are:
            Autonomous motion.
            Little one-time setup at servo panel.
            If I need to teach waypoints, Iíd design my own hmi screens. Then the plc only starts the motion. The servo takes over until it reaches the next waypoint.

            on reliability side, both options must be strong.
            on programming side, servo offers more at a one-time cost of programming, while stepper needs to follow the motion incrementally, hence it demands more plc overhead.
            on motion side, theyíre both beautiful.
            on load side, I guess stepper wonít keep up to servo