PWM Pulse Generator (555)

Discussion in 'The Projects Forum' started by Spanrz, May 9, 2010.

  1. Spanrz

    Thread Starter New Member

    May 1, 2010
    I have made up a 555 timer circuit (pre made electronics kit) that is designed for pulse generation.
    It gives a frequency of about 100hz to 22khz (Square and Triangle waves)

    The pulse generator is being used to control a stepper driver for a stepper motor system. (Pulse generator -> Stepper Driver -> Stepper Motor)
    (For Telescope control)

    The system works perfectly, but it's missing one thing. The Stepper Driver also needs a "reverse".
    In order for the driver to recognise "Ahh you want reverse, OK", it has to send the Stepper Driver a "double pulse"
    Apparently it requires a double pulse to do this.

    __[]_[]___[]_[]___[]_[]__ not just __[]_[]_[]_[]_[]_[]_[]_[]_

    How would go about adding a double pulse to the mix. Another 555 timer, redesign to a 556 timer??
    I want the reverse to be able to turned on and off by a switch.

    Here is the current design of it.

    Thanks for any input.



    bytraper likes this.
  2. beenthere

    Retired Moderator

    Apr 20, 2004
    That will not work - see the link on stepper motors -

    You use the pulses from the 555 to control the stepping rate. The driver is where the stepping pulses have to be controlled so the motor runs CW or CCW. Got any data on it?
  3. Spanrz

    Thread Starter New Member

    May 1, 2010
    I am using a Leadshine DM556 driver to control the steppers.

    I have used the PC to control a breakout board to tell the drivers what to do, in the past, but wanted an avenue of being independent of the PC (maybe a redundancy / backup plan) to control the steppers.
    Hence the use of the the pulse generator.

    These drivers have 2 types of input, have tested both sides of the inputs with success.
    Tried one method of PC control using MACH3 CNC software and breakout board, and another of this pulse generator.

    The PC control way is a little harder to get instant "on the go" finite settings, where as the generator can give me instant movement.

    The only problem I have, with using the pulse generator, is that the driver needs a double pulse in order to go in the other direction.
    It is travelling in a CCW direction at the moment and the way I read the PDF, is that it needs a double pulse for CW.

    As per the PDF :

    So I am a little confused, if I can make up a simple 555/556 timer circuit to do this double pulse, or if it includes re-engineering to a different IC at all.​
  4. SgtWookie


    Jul 17, 2007
    Actually, it's much more simple than that.

    Look at figure 10 at the bottom of the 8th page - here's the image I'm talking about:


    Here's how you can fix the situation:


    If S1 is in the up position, it will step CW.
    If S1 is in the down position, it will step CC1.

    Now, R1 and R2 are 330 Ohm because of the limitations of the 555 timer IC (output low goes nearly to GND, but for high doesn't go above about Vcc-1.3v). If you are powering the 555 with 6.3v, then you can change R1/R2 to 1k-10k. They need to be there so that the inputs are held high when not being pulsed.
    Last edited: May 10, 2010
    Spanrz likes this.
  5. Spanrz

    Thread Starter New Member

    May 1, 2010
    You sir, are an absolute GEM :D.....So very happy..
    I was a little confused about the instructions for CW/CCW and wasn't sure if it was asking for another signal or not.

    I got it to work, both CW and CCW. Your diagram put me on the right track.

    Though these are my findings.

    Pulser output (+) was connected to PUL + on the driver
    Pulser output (-) was connected to PUL - on the driver

    PUL (-) was also tied into DIR (-) ( I think I was not doing this with the pulser setup, maybe part of my problem as with the Breakout Board setup, I tied the negatives together and it worked. Stupid me.)

    Your diagram above only worked when I used a 5.6VDC (800ma) power supply with a 2.6K resistor connected to the DIR (+) of the driver.
    Negative wire of the power supply was connected to the tied (-) on the driver.

    I tried the wiring a few ways as per your diagram, but the only circuit that would work 100% (or any effect at all) was the 5VDC on the DIR (+).

    So in short, (please correct me), I used a pulsed signal on the PUL (+) side, giving me a CCW stepper direction, whilst when giving the DIR (+) a 5V positive (2.6K resistor) constant signal, it gave me a CW stepper direction.
    I tried a 3.4K and a 4.6K resistor, but the signal wasn't enough for the direction change. As you said, "use 1K-10K".
    (As I said above, I also tried the pulse on the DIR circuit and the 5VDC on the PUL, stepper wasn't turning at all with or without the 5VDC).

    But again, thank you.

    (EDIT: for what it's worth, the driver is in "software mode" and by memory it is in PULSE/DIR not CW/CCW mode. I don't have a serial port on the PC, to configure the driver, but it has switches to control the steps. Going to try that out of software mode, until I gain access to the driver via the software to configure it))