How to divide the PUL or DIR (stepper driver) signal into multiple equal signals

Thread Starter

Rogerant79

Joined Sep 12, 2023
1
Hi everyone!

My problem concerns the synchronization of two stepper motors that control the movement of the Y axis. I built a 3-axis CNC machine that uses two stepper motors for the Y axis. The controller sends the signal to the driver (DM556T) which in turn sends 4 digital signals to the single motor (PUL+, PUL-, DIR+, DIR-). The two motors must be synchronized, and therefore move in the same way. Synchronization is currently done by the controller (DDCS v4.1).

Foto_n1.png


Using this approach, to synchronize two motors via the controller, I am going to use 8 pins on the controller (2x PUL+, 2x PUL-, 2x DIR+, 2x DIR-).

So I thought I'd do something different:

Foto_n2.png



I therefore need an active electronic device that has one of the 4 signals as input (PUL+, PUL-, DIR+, DIR-) and as output 2 signals completely equal to the input signal. So I need a signal splitter (I think that's what it's called).

I was advised to use an OPERATIONAL BUFFER (unit gain). Here's a diagram that might work:


Foto_n3.png


Do you think this is the right scheme?
Are there other solutions?


Tks
 

MisterBill2

Joined Jan 23, 2018
16,534
Is the controller capable of driving two inputs directly in parallel? If the motors are identical and the loads, inertia, and friction are similar, and the motors are operating within their specifications then that should work. You will need to have a switch so that at least one motor can be stepped by itself in case they aver get out of step. The only possible issue I see is during the power-on/power up sequence. That may require control of the driver enable/disable line.
 

Neil_R_H

Joined Jun 4, 2011
2
I think that you could probably achieve the result that you want with two logic-level MOSFETs and some resistors! As the inputs to the DM556t are optically-coupled and floating, two PUL inputs can be wired in series, as can two DIR inputs. I assume you have 24V available, if you've powered the DDCS V4.1 as per the manual:

DDCS_V4-1_Power.png

To run two series-connected inputs from 24V, I would add a 1.5k series resistor to set the current at approximately 10mA (assuming 1.6V drop across each opto-coupler LED and a built-in 330R resistor for operation at 5V).

The DDCS stepper drive outputs are derived from a 26LS31 differential driver thus:

DDCS_V4-1_Stepper_Drive.png

I suggest using the XP+(XD+) output to drive the gate of something like a BS170 MOSFET. I'm assuming here that COM- will be the ground reference for the 26LS31 outputs, so the source of the BS170 should be connected here.

AAC_Suggestion.png

If the 26LS31 outputs are referenced to the DDCS System Power, then use 24V terminal instead of COM+ and GND terminal instead of COM-. If we're very unlucky and the 26LS31 outputs are fed from some unspecified, internal isolated power supply, then this whole approach is doomed!
 
I assume(!) that the stepper controllers shown are supposed to be DMK556t units as shown. If so, You might be able to use either a TTL or CMOS logic package to "split" the control signals. According to the "DM556T Digital Stepper Drive User Manua" I downloaded from https://www.omc-stepperonline.com/download/DM556T_V4.0.pdf, the input signal must be within the range of 7 - 16 mA.
You might be able to use a quad-package TTL or CMOS logic gate. With 4 gates per package, you get 2 pairs of signals, so tie two inputs together to get independent but synchronized ouput to the driver. The other two inputs can be tied together to give the other pair of signals, again independent but synchronized. The driver module already requires +5VDC, and both TTl and CMOS can run on a 5-volt supply.
According to https://www.petervis.com/electronic...urrent/CMOS_And_TTL_Output_Drive_Current.html, CMOS AC / ACT / ACQ/ ACTQ series packages can deliver up to 24 mA. Standard TTL can source 16 mA, and Schottky and high speed series packages can provide up to 20 mA. LPS and ALPS TTL can only output 8 mA, and should probably not be considered.
 

MisterBill2

Joined Jan 23, 2018
16,534
OK, and interesting. I had been assuming that the stepper driver inputs were 5 volt TTL logic compatible. So here we have an instance of the TS thinking that all of the readers are quite familiar with things by part numbers. THAT IS NOT THE CASE!
If, and only if, those optically isolated inputs are really floating, then series has the possibility of working.
 

MisterBill2

Joined Jan 23, 2018
16,534
When seeking help toanswer a question it is usually a benefit to provide the background information. That includes providing details. Why should I go chasing links to get the information when the TS could instead have provided it? Besides that, in many cases chasing a link often results in a steady stream of emails trying to sell some product.
 

MrChips

Joined Oct 2, 2009
29,832
There two ways to do this and both are very simple and straight forward.
Many controllers have four outputs, X, Y, Z, and A.
A stands for Auxiliary. In the controller application software, you can make the AUX output match any of the other three axes.

An even more simple solution is to just wire the pulse and direction signals of the two stepping motor controllers together.

What I have done is to put masking tape on the axle of the two motors to check that the two are always synchronized.
Before I do that, I align the machine such that the X-axis and Y-axis are perfectly at 90°. I turn the power off and turn the drive shafts manually to get them aligned. I go back and forth until I am happy with the alignment.

Then I put masking tape like a raised flag on the two synchronized axes such that the flags are in exactly the same orientation. From there on, I visually check that the flags are aligned every time the power is turned on. So far I have had to realign the two motors only one time.
 

MisterBill2

Joined Jan 23, 2018
16,534
There two ways to do this and both are very simple and straight forward.
Many controllers have four outputs, X, Y, Z, and A.
A stands for Auxiliary. In the controller application software, you can make the AUX output match any of the other three axes.

An even more simple solution is to just wire the pulse and direction signals of the two stepping motor controllers together.

What I have done is to put masking tape on the axle of the two motors to check that the two are always synchronized.
Before I do that, I align the machine such that the X-axis and Y-axis are perfectly at 90°. I turn the power off and turn the drive shafts manually to get them aligned. I go back and forth until I am happy with the alignment.

Then I put masking tape like a raised flag on the two synchronized axes such that the flags are in exactly the same orientation. From there on, I visually check that the flags are aligned every time the power is turned on. So far I have had to realign the two motors only one time.
This is a better and more detailed description of what I suggested many posts earlier. Thanks to MrC for the post.
 

Neil_R_H

Joined Jun 4, 2011
2
Oh dear, in my enthusiasm to suggest an alternative solution to the one given by the TS I committed a cardinal sin and forgot the KISS principle! As the 26LS31 is capable of driving two DM556T inputs then as others have stated, just drive both in parallel - end of story. I'm just off to write out 1000 times - "Keep it simple, stupid"!
 

geekoftheweek

Joined Oct 6, 2013
1,096
Why should I go chasing links to get the information when the TS could instead have provided it? Besides that, in many cases chasing a link often results in a steady stream of emails trying to sell some product.
Either Neil_R_H looked up the information or already had it on hand... hard to say. If you are getting emails trying to sell you something you either have some serious issues with your computer or are entering your email address in too many places. I look up stuff all the time I am curious about to try to help and learn and I never get any emails.
 
Top