Connect 100+ steppers to Teensy

Status
Not open for further replies.

potasto

Member
Hello.

I need to connect 100+ Steppers to Teensy, but I need only working as a time.

By the way i'm thinking in the following connection.

1) Teensy 3.2 (model that i own several units)
2) DRV8825 or EasyDriver or (need to test) as Driver
3) MCP23017 16 bit i2c IO Expander
4) Steppers Bipolar Nema size ...

I'm planning to wire all to the driver and with the MCP23017 activate 4 transistors for each channel for drive the steppers input to the driver output.

Any can think in better design?.

Design need individual steppers is not possible to use less.

Thanks.
 
I suspect that the transistors will not be large enough or resilient enough to achieve what you want and may need to use mosfets. Also because steppers are in use, special care needs to be considered with back emf.
Also you probably can get away with just disconnecting one side of the coils, so half the number of mosfets.
 
Have you thought about the power supplies needed for 100 motors? How will their grounds work? Careful planning will be needed to avoid large ground currents flowing through whatever data lines interconnect all this stuff.
 
Have you thought about the power supplies needed for 100 motors? How will their grounds work? Careful planning will be needed to avoid large ground currents flowing through whatever data lines interconnect all this stuff.

I'm planning to have only 1 working at a time. Do you think i will have problem with the ground?.
 
3 axis DRV8825 for teensy 3.2 board.

I do have a I2c Slave board that does 3x DRV8825 chips...It can drive others offboard for bigger drives but onboard is layed out for 3 axis and ...Teensy 3.2 layout.

The board Also has an Raspberry RPI zero header for an HMI on tx/rx. RS485 chip option, 2 axis slidewire inputs (Mono jacks 3.5mm), and one HX711 PGA header set..a layout for this kind of board should be on the Arduino forum under my name but it is for the NANO and Allegro chips...

. The 2- 10 digital pins are used for step/dir/enable....has also Adafruit ADS1115 headers....quite compact. FLoppy disk drive 4 pin power plug. also supports on LM298 instead of 485 chip (space conflict)..It is a bit tricky to assemble with more than a few of those options at once but for just steppers and slidewires on I2c i use them all the time....

52.8mmx77mm without RPI header. 61x77mm with RPI header. never used more than 4 of them at a swat but.... you could slave them t a teensy 3.6 on a couple I2c channels...With a piggy back 820 you could put it on Modbus TCP.

MAybe I will order some more......
 
Last edited:
I am currently testing another configuration to control several step motors.

The step motors I use are 28BYJ-48's controlled through ULN2003A's, 4 pins per motor are needed. My project requires several step motors and some pins must be left available for other things.

I was already using TLC5940's which are basically PWM LED controllers, only a few Teensy pins are required to control a chain of TLC5940's, each of them having 16 outputs.
So, I modified a little the AccelStepper library so as to control the outputs of a TLC5940, rather than Teensy pins. The outputs are controlled at either 0 % or 100 %. A pull-up resistor (1 or 2 k work) on each output produces either 5 V (0 %) or nearly 0 V (100 %) and they do control the ULN2003A efficiently and in turn the step motor. Note that at 100 %, the level is not constantly 0 V, there are short spikes (about 600 nSec on Teensy 3.2, 1 µSec on Teensy++ 2.0) at about 1 kHz that do not seem disturbing. The max speed is about 880 steps / sec. Each TLC5940 should be able to drive 4 motors, I tested with 2, and many TLC5940's can be chained (I don't know the maximum number, I only know that one can envisage more then 16).

Similarly, I save input pins I use to acquire the opto-interuptors needed to initialize the step motors positions. I use 3 TLC outputs (a 220 nF capacitor eliminates the spikes) to polarize one among 3 opto-interuptors at a time, all 3 of them connected to the same Teensy input pin. This means that the 3 relevant stepper motors must be initialized sequentially.
 
Thre axis stepper slave with feedback.

Here this one can be driven over i2c:

It has Modbus RTU or you could put Ethernet on it but you lose a stepper....this is an old one hotwired from my NANO layout, but I do have one for the Teensy 3.2 as a slave...this one is outfitted with slide wires and a HX711 PGA for feedback of stuff ...top view

teesny32top.JPG

bottom view.

View attachment 8815

this is the board I describe above....I have a little protocol for it i call GArble it lets me do macros more appropriate for Automated control of chemical processes not 3D printing...hence the additional A...HAR.
 
Last edited:
Hello.

I need to connect 100+ Steppers to Teensy, but I need only working as a time.

By the way i'm thinking in the following connection.

1) Teensy 3.2 (model that i own several units)
2) DRV8825 or EasyDriver or (need to test) as Driver
3) MCP23017 16 bit i2c IO Expander
4) Steppers Bipolar Nema size ...

I'm planning to wire all to the driver and with the MCP23017 activate 4 transistors for each channel for drive the steppers input to the driver output.

Any can think in better design?.

Design need individual steppers is not possible to use less.

Thanks.

I am very interesed in your topics. But i have no idea.
 
How fast do they need to go?
How coordinated are the axes?
How many are there moving at the same time?
How far apart are they?
what size are the stepper motors?
Heat loads and electrical noise may .....


I think the T3.6 supports 3 I2c segments. you could try that as a master to a bunch of slaves of T3.2......I was going to make a T3.6 do ethernet and 6 steppers.... that would make a nice networked solution....expandable
 
Status
Not open for further replies.
Back
Top