Cheap and cheerful fiber optic link

Discussion in 'General Electronics Chat' started by Sensacell, Jun 13, 2015.

  1. Sensacell

    Thread Starter Well-Known Member

    Jun 19, 2012
    1,131
    267
    Trying to find a simple, low-cost fiber optic solution.

    I need to move some TTL signals from one box to another, one box contains a high-voltage pulse circuit that generates tons of horrible electrical noise, the other contains a computer which crashes due to the aforementioned noise.

    Proposed solution: modular fiber optic link - total isolation.

    Distance: about 1 - 3 meters
    Signal type: TTL pulses - DC - 5 Mhz BW
    Supply voltage: 5V
    Power consumption: - not important.

    Form factor: some small modules that mount on the edge of a PCB.
    Ideally, discrete TX and RX units.

    Cable: some kind of off-the-shelf cables that just plug in, pre-made lengths with connectors installed.

    Ultimately, I will need 16 channels, cost becomes important!

    There has got to be a nice generic solution?


    EDIT-

    Found some $2.00 modules, but it seems that they do not work down to DC? They seem to have some AGC or other such thing that needs to see NRZ data only?

    The units that seem TTL compatible are around $12.00 each- expensive!
     
    Last edited: Jun 13, 2015
  2. nsaspook

    AAC Fanatic!

    Aug 27, 2009
    2,910
    2,172
    Yes, they are expensive.
    Maybe you could rethink the simple TTL signal solution so you only need one high speed TX and RX unit with a shift register type system for the data.
     
  3. crutschow

    Expert

    Mar 14, 2008
    13,022
    3,236
    What about sending the signal using differential line drivers and receivers over twisted pair wires?
    Those circuits are good at rejecting common-mode noise between the transmitter and receiver.
    Those are available in 4 or more channels per package.
    A ground connection is needed between transmitter and receiver to establish the same DC ground levels but the line can be heavily filtered to remove any significant noise.
     
    Last edited: Jun 13, 2015
  4. crutschow

    Expert

    Mar 14, 2008
    13,022
    3,236
    An alternate solution would be a high speed serializer such as this which can convert your parallel data to serial and directly transmit it over one twisted-pair wire (which could be a CAT 5 ethernet cable), where it is converted back to 16 parallel bits.
    It self generates the synchronizing signals needed from a single clock input.
    It has a minimum operating frequency of 25MHz but that should not be a problem as you just would be sending each 5MHz data word 5 times which would be transparent at the receiving end.

    You do need a 25 MHz clock at each end (the frequencies must be within 5% of each other).
    That can be two different clocks, or you could send the clock signal between the two on a separate twisted-pair in the CAT 5 cable using a driver-receiver, such as an RS-485.

    One problem might be mounting the fine-pitch 80-pin quad flatpack package unless you have an assembler that has experience with those types of packages.
     
    Last edited: Jun 13, 2015
  5. ian field

    Distinguished Member

    Oct 27, 2012
    4,415
    784
    You can get TX/RX modules that do it all very simply - at a price!

    Somewhere from dim and distant memory, I recall seeing a catalogue item of an opto-coupler in 2 parts joined by a glass rod for pretty massive voltage isolation - but its still an opto-coupler and probably too slow for your application.
     
  6. Roderick Young

    Member

    Feb 22, 2015
    408
    168
    Could you get away with using an optoisolator on the equipment side, then running regular shielded copper cable? Fiber seems like overkill for such a short distance.
     
  7. Sensacell

    Thread Starter Well-Known Member

    Jun 19, 2012
    1,131
    267
    Thank you all for the input.

    I have a mock-up system working that I am using for firmware development, for the life of me, I cannot get the debugger (PICKIT3) to run correctly once the HV goes on, all hell breaks loose. Even connecting a scope probe to the board makes it behave differently, there seems to be tons of common mode noise on all the I/O and power connections.

    The fiber solution seems like the brute-force way to get it working, especially with scopes and debuggers hanging off all over the place.
    Once the code is done, I still need to make it work as a package, but it will be much easier without the development tools to contend with.
     
  8. strantor

    AAC Fanatic!

    Oct 3, 2010
    4,302
    1,988
    How about just an IR LED and photodiode?
    16 channels of such would probably interfere with each other. To work around that, maybe they could be placed inside 16 small PVC tubes
     
  9. AnalogKid

    Distinguished Member

    Aug 1, 2013
    4,542
    1,251
    nsaspook likes this.
  10. Sensacell

    Thread Starter Well-Known Member

    Jun 19, 2012
    1,131
    267
    These are neat, based on simple photo-transistors, but glacially slow! 25 Kbps !
    I guess there is nothing in-between, once you need a photodiode, things get expensive.
     
  11. crutschow

    Expert

    Mar 14, 2008
    13,022
    3,236
    I don't think you need optical isolation.
    Differential pairs should provide the ground isolation and noise suppression you need.
     
  12. ian field

    Distinguished Member

    Oct 27, 2012
    4,415
    784
    There are appnotes on the Hammamatsu website that might help, sharp also do some good opto appnotes.
     
  13. Sensacell

    Thread Starter Well-Known Member

    Jun 19, 2012
    1,131
    267
    Interesting- but without a ground, how can I ensure that the common-mode voltage range of the receiver is not violated?
    As with RS-485 for example, it really is a 3 wire system, without a solid reference ground, the common mode voltage can be anywhere.

    What sort of configuration do you recommend? Line driver / receiver types?
     
  14. AnalogKid

    Distinguished Member

    Aug 1, 2013
    4,542
    1,251
    RS-422/485 systems can tolerate up to 7 Vdc potential difference between the transmit and receive grounds (working from memory). Newer parts can handle 5 MHz.

    ak
     
  15. crutschow

    Expert

    Mar 14, 2008
    13,022
    3,236
    As I noted in Post #3 you can add a ground wire with added filtering to the line, such as an inductive choke in series, so the noise is not transferred from one ground to the other. Remember, the ground wire has to carry no significant current, it's just to establish a low common-mode voltage between the two grounds.

    There are many RS-485 line driver and receivers that should work for you. A Google search will turn up most.
    Here's a quad RS-485 transmitter and here's a quad RS-485 receiver, for example, so you would need 4 chips on each end with 4 corresponding CAT 5 (premade) cables.
     
    Last edited: Jun 16, 2015
  16. Sensacell

    Thread Starter Well-Known Member

    Jun 19, 2012
    1,131
    267
    Last night I tried wiring up an RS-485 receiver to get my sensor data back.
    Still, the MCU is glitching and crashing constantly. I think the noise is getting in via a path that I do not fully understand.
    It seems hopeless to try to get the debugger to work with all the noise that the HV generator makes, even my computer mouse crashes!

    It's interesting to try to track this noise down, but it's beaten me dead this time.

    So... I bought some 5 mb fiber transceivers from digikey, I will then be able to separate the gear by meters!

    Once the code is written, I will put the MCU inside a metal box with a totally separate mains supply and just the optical fibers coming out.
     
  17. nsaspook

    AAC Fanatic!

    Aug 27, 2009
    2,910
    2,172
    Those will work great. I've used them in many projects that needed isolation.
    https://flic.kr/p/bmmGau

    While your metal box will be effective at shielding E fields, if the HV generator also generates strong magnetic fields below 100khz non-ferrous shield materials won't stop them.
     
Loading...