Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

bus driver or buffer for motor driver step/direction inputs 3

Status
Not open for further replies.

windell747

Mechanical
Jun 16, 2005
64
Aloha,

I'm using a microprocessor to send TTL step and direction signals to a motor driver. The max current that the microprocessor can drive is about 6mA. The motor driver's step and direction inputs draw 16mA of current through its step and direction pins.

It is obvious that I cannot send TTL step and direction signals directly from my microprocessor to the motor driver since the driver will draw a damaging amount of current from my microprocessor.

To solve this problem, I would like to use a non-inverting bus driver or buffer that accepts TTL voltages (<=6mA) from my microprocessor and emits TTL voltages with a current capacity of 16mA or greater.

The logic high for my microprocessor is 2.3V. And the motor driver accepts TTL voltages. So a bus driver/buffer that accepts and emits TTL voltages is required.

I've looked on the web for bus drivers/buffers and I have found some, but none that meet my specs.

Can any of you suggest a bus driver/buffer that would meet my needs?

Mahalo Nui Loa
 
Replies continue below

Recommended for you

MC74ACT125 should do the trick.

Regards.

 
Or the trusty 74HC14 schmitt inverter just run thru two of the six in the package for non-inversion.
 
The HC14 will not work if the microprocessor high signal is at 2.3 volts.

However a high of 2.3 volts is within the TTL thresholds. The ACT 125 will work. But I'm a bit skeptical about your driver requirement of 16mA for its inputs. This isn't by any standard that a TTL input need a drive of 16mA. The standard is 1.6mA, and this can be driven by your microcontroller directly.

Could it be that your microcontroller high output voltage is stated as a guaranteed 2.3 at 6mA? If the part is CMOS and powered at 3.3 volts, its output will be very close to 3.3 volts with a standard load.

16mA is defined as the maximum load for a TTL device. What is your motor driver chip? Can it just be that you do not interpret correctly its data sheet?

Felix

 
Thank you very much for your reply Felix!

1) Could it be that your microcontroller high output voltage is stated as a guaranteed 2.3 at 6mA?

Ans: The microprocessor to send step and direction signals to the motor drivers is a rabbit 3000 microprocessor by Rabbit semiconductor. I e-mailed their tech support with the following questions.
"What would be the logic high voltage emmited by the rabbit 3000? What is the allowed current draw from the output ports of the rabbit 3000?"

A support engineer replied with the following:
You should see a logic high at about
VDD x 0.7 = 3.3 x 0.7 = 2.31 volts
Maximum current should be about 6.8mA

2) What is your motor driver chip? Can it just be that you do not interpret correctly its data sheet?

Ans:
The motor driver im using is the Gecko G210 by Geckodrive.
Here is their website: (seems to be down right now)

In the installation notes for the G210 the last paragraph states the following:
"The DIR & STEP inputs are meant to be driven by standard TTL logic or other driver capable of sinking 16mA of current."

Once again, thank you for your reply.
 
felixc; Right you are... I missed the *low* voltage processor.
 
windell747,

Looking at the Gecko datasheet, it looks like the command signals are driving optoisolators directly. In this case you do need drivers at a full 5 volts swing. An output in the 3.3V range may leave some residual current going through the optocouplers and impair the noise margins, if used in sink mode.

The 74ACT125 can do the job, the 74ACT245 as well. You can parallel gates to improve the drive current if you wish.

The Rabbit3000 is CMOS technology. A pretty high-speed device. Its outputs are probably going to a full VCC swing, and losing amplitude with a load, hence the 2.7 volts at some 6mA. So using a buffer will do the job to safely interface to the Gecko module.

You are using a module that uses the Rabbit3000, or you're making your own PC board?

 
Aloha Felix,

Thank you very much! You're information is very clear and direct.

Question 1:
I'm aware that the 74ACT245 is a tri-state transciever whereas the 74ACT125 is plain tri-state buffer. Other than that are there any particular advantages as to using one versus the other?

I'll be using a module that use the Rabbit3000. They call this module a development board. This board contains a small prototyping area with GRD, 3V, and 5V bus traces surrounding the area. I hope to place this circuitry within this area.

The disable pin of the gecko isn't optoisolated so they advised me to pull this pin to ground by using an optocoupler. By doing a simple search on google I have come to realize that there are many different optocouplers out there ranging from simple to complex.

Question 2:
I was thinking of using a 4N25 or 4N28 optocoupler. Do you think that these be wise choices?

Question 3:
Although I know that 16mA of current is drawn from the step and direction inputs, I do not know the current that needs to be pulled from the disable pin to ground. So I don't know how much current the optocoupler shound be able to handle on the output side. Do you think I should assume 16mA of currents pulled from the disable pin as well?

Question 4:
Is this statement correct?
LED current x CTR = collector to emitter current

If 16mA needs to be drawn from the disable pin, a optocoupler LED current of 10mA wouldn't work. Is this correct? I guess this question links with question 2. What would be an optocoupler that would work for me?

I understand that these are many questions for you to answer. As you can see I'm a mechanial engineer and not electrical. It would be greatly appreciated if you're able to answer any of them.

Mahalo Nui Loa
 
Windell747,

You're doing quite nicely in electrical. You should be exceptional at mechanical.

- the 74ACT245 has a better drive capability. But it is a bigger part than the 125. Real-estate may dictate your choice.
- since the disable pin isn't optocoupled, I think that the drive needed for it is probably the one of a regular gate with a resistive pullup, in the 2mA range (my guess), so you don't need to drive it to 16mA.
- just any optocoupler that you have access to will do the job.
- the CTR is the current transfer ratio, between the current that you drive to the LED, vs the current that the transistor will sink at the other end. Say if you drive the LED with 5mA, and the CTR is 0.5, the transistor will sink 2.5mA. If the input requires 1.6mA, then the logic level will safely saturate at a low level around 0.3 volts. This is something that you will want to check at the voltmeter.
If it does not saturate, you can increase the LED current. the optocoupler data sheet will tell what is the highest safe current to drive the LED at. I really don't think that you will need a high-drive at that pin.

Felixc
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor