I’m trying to use an IS480P in connection with a MOSFET to safeguard an Arduino from high voltages on the other side of the MOSFET, should the MOSFET’s insulation wear down with time. The problem is that I can’t quite seem to figure out how I’m supposed to use the isolator, being someone without very much experience with circuitry this advanced.
I got it to work once with a circuit diagram similar to this one from just fiddling around with it after seeing the test circuits in the datasheet (please excuse the quality):
At some point in my fiddling, though, I tried something else, and now I’m not sure whether the above circuit is actually correct or I just broke the isolator with a different setup.
The possibility of it being broken is very real (I’m quite stupid that way). One thing I tried before the setup above caused a different isolator to get so hot it melted the solder holding the wires to the pins (this was because I misunderstood what Vcc and Vo signify and had them reversed). I put it aside out of concern for it being broken as well.
I’m able to get some faint glowing in some LED’s, but not quite anything controlled/deliberate that I’m trying to achieve with the Arduino’s PWM signal.
My question is how this should be wired. It would be nice to know what, if anything, may have killed the isolator if it is, in fact, dead, but the main concern, of course, is how do I use this device for its intended purpose?
Not sure how to edit, so I’ll leave this here. Here’s the specs for the part: IS480P_DC93200.pdf (isocom.com)
You need a resistor in series with the opto-isolator’s LED.
Applying the 5V directly from the Arduino’s pin, the LED will have worked for a very short time and then burned out. This is because the LED is rated for typically 1.3V (forward voltage on page 3 of the data sheet).
Page 2 of the data sheet says the recommended operating current for the LED is 1.6mA to 5 mA (0.0016A to 0.005A)
So you want a resistor value that drops 3.7v (5v - 1.3V) at some value between 1.6mA and 5mA.
Using Ohms law, the formula is Resistance = Volts / Amps.
So the lowest recommended resistor value = 3.7V / 0.005A = 740 ohms and the highest value is 3.7V / 0.0016A = 2312 ohms.
Given this range of values, a good common value choice is a 1000 ohm (1k ohm) resistor.
In addition to Paul’s correct comments about the input, the output side has problems as well.
- The capacitor should be connected between pins 6 and 4, not 6 and 5.
- You need a current limiting resistor between pin 5 and the output LED, the value of which is dependent on the forward voltage and current rating of the LED (see Paul’s comments above for calculating proper value for resistor).
- You should not connect the ground between the output side of the optoisolator and the Arduino. That takes away the who whole point of isolating the two devices.
The IS480P isn’t really designed for driving LEDs, though it should be functional. It does not specify longer duration maximum output current ratings (it only specifies < 160mA for less than 500μs), so I would not drive more than about 100mA if you plan to have fairly high duty cycles.
Regarding death of the device, Paul points out a likely cause of failure on the input side by not limiting the input current. On the output side, you show a short between pin 5 and pin 4, which will almost certainly burn out the upper MOSFET as it passes unimpeded current directly between the 6V supply and output ground when the upper FET is turned on.