Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Detecting if two outputs are connected to each other

Status
Not open for further replies.

DerStrom8

Super Moderator
Hi all, I've got a pretty simple question but have yet to find a solution.

I am currently working on a project with a fixture, and a universal connector on the output. The connector consists of a digital output and a digital input (among other things). Mating to the connector are two different daughter boards. Only one can be plugged in at a time but they need to connect to the same header. The difference between the two separate boards is that the positions of the input pin and the output pin are swapped. In order to connect them properly I have a relay that switches the position of the data lines on the main board before it gets to the output connector. The relay is switched based on which board is supposed to be plugged in. I realize this may be a bit difficult to understand, but please bear with me.

The problem is that the relay may not always be right. Worst case scenario would be that it's switched the wrong direction, connecting two inputs together (not a huge deal) and two outputs together (potentially damaging the main board or to the daughter boards).

I am looking for a way to sense if two outputs are connected to each other. The output on the daughter board is driven by the input, so if the input and output lines are swapped then the output of the daughter board will be "dead". Based on the datasheet, this is the internal schematic of the output for the daughter board:

data out.png

If the wrong daughter board is connected, then the main board will be directly driving the "DATA OUTPUT" pin of the above circuit. Since I don't have any information about the FETs, I don't know how much current they can handle. From what I'm seeing in the datasheet for the component (It's the Microchip HV5623: **broken link removed** ) the output is active-high, meaning if the input isn't being driven, then the output would be pulled to ground. If a voltage is present at the DATA OUTPUT pin, then it would be shorted through the FET potentially causing damage.

Here's a very simple diagram showing the problem. Note the polarity dots:

in-out.png

Here, the main board is shown on the left and the daughter boards are shown on the right. The top image shows if the correct daughter board is connected. The bottom one shows if the wrong one is connected (This is a simplified drawing that doesn't show the relay or any of the other circuitry. It's just to get a point across).

Does anyone have any thoughts of how this could be sensed? I cannot change the main board or the daughter boards--It would have to be yet another board that plugs into the main board, that the daughter boards can plug into (this third board is the one that has the relay on it). The solution must be able to detect the reversed input/output lines very quickly to prevent damage to the chips. Once again, if the wrong board is plugged in then its output line would be dead (not driven) so it must be able to sense over-current, without a lot of current sense circuitry. I had considered using an op-amp to sense the current through a shunt resistor, then feed it to a comparator that sends a signal back to the main board. This signal would say whether there is too much current, but that would have too many delays and probably wouldn't be able to cut power quickly enough to prevent damage to the chip.

Any ideas?

Thanks,
matt
 
Do the outputs have to drive an "high" current in normal operation, or ar they just driving a high impedance input?

If the outputs just drive a high Z input, why not put a current limiting resistor on your "third board".
That way no damage is done due to high currents, and the changeover circuit can take its time to sort out the problem.

JimB
 
Do the outputs have to drive an "high" current in normal operation, or ar they just driving a high impedance input?

If the outputs just drive a high Z input, why not put a current limiting resistor on your "third board".
That way no damage is done due to high currents, and the changeover circuit can take its time to sort out the problem.

JimB

Putting a series resistor is the current plan, but I don't want to drop too much voltage and I need to avoid delays.

The driver on the main board is the UCC27424P: https://www.ti.com/lit/ds/symlink/ucc27424.pdf
The driver on the daughter board is the HV5623K7-G: **broken link removed** (as mentioned before)

The HV5623 is probably the weakest link, as it can only handle +/- 10mA. Putting in a 510R series resistor would limit the current to about 9.8mA, but I'm not sure I'm comfortable with adding more resistance.
 
Putting a series resistor is the current plan, but I don't want to drop too much voltage and I need to avoid delays.
..........................
The HV5623 is probably the weakest link, as it can only handle +/- 10mA. Putting in a 510R series resistor would limit the current to about 9.8mA, but I'm not sure I'm comfortable with adding more resistance.
A 510R resistor should have a minor effect on the circuit response or delay and will protect the output.
If delay is a problem you could connect a small capacitor (say 100pF) in parallel with the resistor.
 
Hi.

Currently I can think of two methods:

1. Make a measuring unit that can check if any pin serves as output or input is to have another output stage connected to the pin, sending out a signal - it needs to have a high impedance output to avoid damage. Also you will need a circuit that will be able to read the signal.
This givesat least one issue that I can think of: Your circuit must be (re)designed so that the pins you're checking is not active. That is nor sending or reading anything. If else the signal may interfer with the working of your circuit.

2. Measure the current into Vcc pin of both IC - cutting off power supply to the IC whenever the input current reaches a given value.
 
I agree with the above. Unless it's a very high speed signal (or a significantly capacative load - ie, you're driving a lot of things on the recieving board) I can't see 510R making much of a difference.
Are you able to elaborate on the nature of the signal? We're not talking about any kind of controled-impedance differential signal are we?
 
...suppose the other option is to connect the pins between the boards using normally-open relays, with your "supervising" circuit only closing the relays once it's satisfied that they're correctly connected.
This aproach would only be valid if you're going to get a power-cycle before boards are connected - ie, that boards won't be hot-swapped.
 
I can't go into too much detail as this is for the company where I'm employed, but it is a simple digital signal used to clock serial data into the HV5623s.

In regards to your second post, the trick is how will it sense if the wrong board is connected? That is the purpose of this thread. I think protection would be better than prevention in this case, as prevention would require extra circuitry that could introduce delays.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top