Optical isolator in a serial communications ckt

Status
Not open for further replies.

Luther

New Member
Hi everyone,

I'm working on a project that requires an optical isolator (Avago tech's ACSL-6210) that protects my circuit from a potential voltage swing ranging from 2.5 to 5 volts. I've been able to send signals out along the optoisolator from my PIC microcontroller (the Tx line) and have them recognized as valid signals, but am unable to receive signals (Rx) back through the isolator.

Since I needed a steady current value(between 7 and 15 mA) back through the isolator to turn it on, I placed an N-channel FET between the Rx line and the isolator, allowing the the signal to trigger the gate of the FET and pass a known voltage through a resistor to the opto. That worked for a little while, but then failed. I replaced the FET, but couldn't achieve the original results again.

I've also tried a P-Channel FET, but am not confident that it is being biased properly. Does anyone have any suggestions about how to get the FET's to work - or possibly an alternative configuration that will work too? I'll attach my schematic.
 

Attachments

  • N and P channel Opto protection.pdf
    15.8 KB · Views: 466
I'm rather confused as to what the schematic is trying to describe.

1) you don't need the inverters - optoisolators are usually setup so that the diodes should be connected to VCC through a current limiting resistor with the driving logic sinking current, not sourcing

2) I've never ever used a mesfet. Is that supposed to be a mosfet?

3) I can't tell which direction is which - where is the PIC, which end is local?
 
I'm using the inverter because the circuit is providing TTL logic and I wanted to keep the transmission process clear. (i.e. not generating problems with edge triggering issues, etc) Is it completely unecessary to do this?

I think I've cleared up the direction issue. And MSEFET I just grabbed from the library to illustrate - I was using a standard mosfet, but after more head scratching, found that I didn't really need it.

Here's my latest schematic - let me know if anything can be improved.
 

Attachments

  • Opto protection.pdf
    13.5 KB · Views: 171
If the output of the opto (the RX section) is going to be connected directly to the PIC (without any other loads), you can get rid of the inverter and just use a pullup resistor. As for driving, the PIC probably has stronger drive capability than the dual inverter chip. 330 LED resistor => ~10mA, so that looks good, 1K pullup resistor is good. I'd get rid of the 330 in series with the output though - it sets up a voltage divider and causes the minimum output voltage to be .25*VCC which is very close to the minimum acceptable for a CMOS '0' (typically it's .3*VCC). If you want an isolation resistor though, put it on the other side of the pullup resistor.

So clip out about half the components and you'll be good...

James
 
Just to clarify, here's the latest schematic based on what you've said.

I do have a concern though - this optoisolator inverts it's outputs, will that have any effect on the TTL signal logic?

Thanks for the input!
 

Attachments

  • Opto protection.pdf
    12.8 KB · Views: 166
R19 isn't required either. In order to invert the signal, rewire the LEDs so that the anode is connected directly to +5V, and the signal, with current limiting resistor, is connected to the cathode. LED turns on when the signal is low, and this will "invert" the input signal.

Read what I wrote in the last post about the 330 ohm resistor on the outputs. As it is, the circuit won't function too well!

James
 
Ok, I've pulled the 330 output resistors and rewired it accordingly.

Am I missing anything?

Again thanks for all the help!
 

Attachments

  • Opto protection.pdf
    12.5 KB · Views: 192
Umm, double check where you put the 330 resistors. How much current is the PIC or DUT going to pull through the LED when goes low?
 
with the 1.5 volt drop across the diode, I should be getting 3.5/330 = 10.6 mA

unfortunately, I've tried both of the configurations attached and get a high current draw (i.e. the chip gets hot!) and may have fried the chip. The only thing I can think to do is reposition R16 on the lower drawing closer to the chip on the other side of ground. but that is not making a whole lot of sense to me. the Rx line would be coming into a ground and sinking all of it's current!

from your earlier suggestions I got the idea you may be saying to have the signal come in strictly through a current limiting resistor and then pass in to the cathode. I gave that a try, but with no luck either. the datasheet suggests the cathode needs to be grounded which is why I keep trying to ground it.
 

Attachments

  • Opto protection.pdf
    14.6 KB · Views: 183
I was also looking at the schematic for the chip and realized that the cathode is tied to ground on chip along with the op-amp. Wouldn't trying to drive the cathode narrow the operating range of the op-amp to virtually nill, thus not driving the base of the transistor?

I've attached a drawing of the chip schematic.
 

Attachments

  • optoiso schematic.pdf
    28.6 KB · Views: 236
Arr, the cathode does not need to be tied to ground, and the TX signal of the PIC *definitely* doesn't need to be tied to ground. Current should flow from 5V through the LED, through the current limiting resistor, through the PIC, to ground. LED then turns on when it has current flowing through it. There should be no oddball connections to ground *except* through the PIC itself...
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…