Jump to content
43oh

3-axis stepper driver


Recommended Posts

I'll be getting this board made some time this week, here is a current feature list:

 

  • 3 x DRV8825 micro stepping stepper drivers
    Every pin but the HOME is controllable - micro-stepping, decay mode, enable, sleep, reset.
    Fault detection multiplexed through the PCF8574 I2C port expander.
    Each stepper driver can have a different current limit set as each has it's own pair of current setting resistors.
    2 x 20A n-channel fets for whatever you want.
    LEDs can be wired up to be controlled by the PCF8574 or to be always on as long as power is applied.
    Up to 8 limit switch inputs multiplexed via PCF8574
    On board LM317 regulator(chosen due to high input voltage & it's cheap)

 

 

 

Schematic:

3-axis%20stepper%20driver.png

 

Board:

3-axis%20stepped.brd.png

3 Stepper driver.zip

Link to post
Share on other sites

I've added a pair of 20n06hdl FETs. They are low on gate voltage so the MSP430 will be able to run em just fine.

 

I've got a couple questions though.

 

1) Would tying the enable pins of the stepper drivers together be very bad?

2) Would a single limit switch per axis be enough or should I put in two?

3) Should I keep the optos or are they excessive/useless?

4) Should I move the MSP onto the board and do away with the launchpad altogether?

5) Should I squeeze the design and fit in a 3rd stepper driver?

Link to post
Share on other sites
1) Would tying the enable pins of the stepper drivers together be very bad?

Individual control will be nice.

 

2) Would a single limit switch per axis be enough or should I put in two?

Not sure.. but I think CNCs need two.

 

3) Should I keep the optos or are they excessive/useless?

No need. Should be ok without them.

 

4) Should I move the MSP onto the board and do away with the launchpad altogether?

More people will be able to stack them if you use the LP. Also opens up C2000 Lauunchpad options. Make sure you have dual rows on each side on your PCB

 

5) Should I squeeze the design and fit in a 3rd stepper driver?

If you are going for a cnc controller, 3 is good.

Link to post
Share on other sites

Here is the updated design

 

3 stepper drivers (drv8825/24)

3 i/o port expanders(PFC8574) to control every thing that the steppers do. STEP and DIR is still done directly my the MCU. All INT pins ORed together to detect FAULT. The MCU will have to check all the IO expanders to see which stepper driver has a fault.

1 i/o port expander to read the limit switches. The INT output will cause an interrupt in the MCU.

 

There are still 2 unused pins on the MCU, I'm thinking temperature sensors? More fets? Supply voltage off clamp?

There should also be two unused pins on the io expander which does the limit switches.

 

2hyxg1t.png

 

 

10nbxxv.png

Link to post
Share on other sites

LEDsssssss

ipz5te.png

 

Added places for them to go, but only two should be used, unless blue or white leds are used. The two footprints are in series from 3.3V to ground, and there is a single current limiting resistor between the center of the two leds an the I/O expander.

 

I've also started some routing of the stepper drivers, looks like it's going to be tight fit.

Link to post
Share on other sites
How are you going about the G-code translator?

 

A friend of mine is planning on writing a g-code interpreter, and he's fine with me poaching the code. Porting it should be easy as it'll just be adding HW specific commands.

 

I think being able to control more Fets with the extra I/O would be awesome.

 

I'm deciding between FETs and sensors. Although I could put both down and the user can choose which footprint to populate.

Link to post
Share on other sites

Got a question.

The stepper drivers 3.3V output can only provide 1mA from each stepper driver, which totals up to 3mA with the current design. Considering that there are a few LEDs, port expander, limit switches and a micro there, I don't think the 3mA would be enough.

 

So do I set up so that the Launchpad provides the power to the micro/port expanders/limit switches/leds and the external power for the stepper drivers or have a step down regulator running from the motor voltage?

Link to post
Share on other sites

Step-down allows for it to run without computer connection but it's meant for CNC controlling I would just use computer power.

 

If you were going to have stand-alone features like DRO, limit warnings, or powerfeed(like a project I'm working on) you will need an on-board regulator.

Link to post
Share on other sites
Step-down allows for it to run without computer connection but it's meant for CNC controlling I would just use computer power.

 

I considered this, but if it was stand alone it'd need to have inputs from the user. And currently, there are only two unused pins.

 

If you were going to have stand-alone features like DRO, limit warnings, or powerfeed(like a project I'm working on) you will need an on-board regulator.

 

I'm thinking of using an add on board with an I2C driven LED numerical output, or something along those lines for DRO, but again, I have no extra input pins, so the commands would need to come in over the UART in g-code form. So you'd have to build your own g-code encoder.

 

I'm planning a larger stepper driver board, 100mm by 50mm sized, with 4/5 stepper drivers and an on-board msp430(Fsomething) or one of them fancy ARMs, but I think I won't get to do any work on that this year due to an increased uni work load.

Link to post
Share on other sites

I routed them motor connections, they didn't come out too pretty, so I think I might route everything else and then reroute them to take up all the space available.

 

Also moved the fets/limit switche header around, added a fat cap for the fets and changed the reference voltage resistors so that every driver chip has it's own pair(reduced traces, can drive different sized steppers without changing current sense resistors)

 

 

 

Suggestions are very welcome.

 

 

333vqdv.png

 

md18ck.png

Link to post
Share on other sites
  • 3 weeks later...
  • 5 months later...

Hi to everyone, 

 

                  I am new to this blog. I recently started working on stepper motor, I have to design a 5 axis stepper motor ( control 5 stepper motors). 

      

                  I am thinking to use Texas instruments microcontroller and motor driver and I have to drive a single phase bipolar stepper motor with current rating of 3 amps. can anyone suggest me with  microcontroller and motor driver that suits my requirement and if any one have reference design please send to e-mail - satya1312@gmail.com or post in this blog 

 

Thank you

 

Regards

 

Satya

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...