The Opto Isolator board allows you to pass signals between two circuits without having to connect them electrically. They are great for eliminating noise problems, or to connect circuits that have different voltages. In the RepRap system, they allow us to isolate the noisy motor driving circuits from the rest of the electronics. This makes it easy to do advanced things like use interrupt driven rotary encoders, etc.
PDF files of the schematic, copper layers, and silkscreen
Eagle source files for modification
3D rendered image as well as POVRay scene file
exerciser code to test your board.
Schematic
Interface
The opto isolator isolates 2 circuits electronically by sending data as light. It has 2 separate VCC and 2 separate Ground connections.
With IDC cables, the red pin generally denotes pin 1. The pins are counted up from that pin until reaching the other side of the cable.
No bugs yet, please report any you find to the forums.
Printed Circuit Board
You can either buy this PCB from the RepRap Research Foundation, or you can make your own. The image above shows the professionally manufactured PCB ready for soldering.
Components
Soldering Instructions
Socket
The socket will hold both chips. Make sure the semi-circle lines up with the mark on the silkscreen.
220 Ohm Resistors
Fold the wire over close to the body and insert it into the PCB. Make sure the wire faces the chip socket.
3.3K Ohm Resistors
Fold the wire over close to the body and insert it into the PCB. Make sure the wire faces the chip socket.
C1-C4
Ceramic capacitors can be inserted in any direction.
IDC Headers
Insert the headers and solder them. Make sure you put the notches facing inwards so that they line up with the silkscreen.
Insert Chips
There are 2 chips to insert. Insert one at the very top, and one at the very bottom. They both have a semicircle mark that needs to line up with the top of the board and the semicircle in the socket as well as the silkscreen.
Insert IDC Cables
First, you must make some IDC cables. Next, insert them into the headers. They're keyed, so they can only be inserted in one orientation. Yay!
Use It
The opto isolator is very easy to use. Since it just passes signals through it, you just hook it up between the two different devices you want to communicate. Additionally, you will need to properly hook it up to each devices power supply. The device is intended to isolate the circuits electrically, so each side needs to be powered independently.
The basic technique is this (with device A (sender) and device B receiver)
Attach +5v on device A to IN +5v
Attach GND on device A to IN GND
Attach up to 4 output signals on device A to the 4 IN inputs
Attach +5v on device B to OUT +5v
Attach GND on device B to OUT GND
Attach the corresponding outputs to device B
Opto Isolate the DC Motor Driver v1.1
The DC motor driver can generate a bit of line noise. In normal operation, this is not a problem. However, if you want to do more advanced things (like combining it with a quadrature encoder and doing edge-triggered interrupts) then you will want to use an opto isolator to keep things nice and clean.
Here are some instructions on how to use it with our DC Motor Driver.
Here are the basic steps:
Unhook DC Motor Driver from Arduino / Power / Motor(s)
Desolder connector wires from DC Motor driver
Solder in new wires from OUT IDC connector
Tape and secure newly soldered wires to prevent breakage
Wire up IN wires to Arduino as they were previously
Hookup Schematic
Hookup Pictures
Here is how it should look from the top:
Here is where to solder the red (OUT_VCC) pin to. It is the 5V pin of the voltage regulator: (check the flickr gallery for more pics)
Opto Isolate the Stepper Motor Driver v1.1
The stepper motor driver is a bit better when it comes to generated noise. However, opto isolation also protects against dangerous line spikes and such that could destroy your Arduino. There's probably even a minuscule chance that a non-isolated board could send dangerous current through the Arduino to your computer and fry something important. It's highly unlikely, but if you really want to be sure, its best to opto isolate.
Here are the basic steps:
Unhook Stepper Motor Driver from Arduino / Power / Motor / Endstops
Desolder connector wires from Stepper Motor driver
Solder in new wires from OUT IDC connector
Tape and secure newly soldered wires to prevent breakage
Wire up IN wires to Arduino as they were previously
Wire Opto Endstops directly to Arduino using the local Arduino GND/5V and the signal to the appropriate Arduino pin.
Hookup Schematic
Hookup Pictures
Here's a shot from the top:
Wire the OUT_VCC pin (red) to the 5V pin on the molex connector: (v1.1 / v1.0 of the Stepper Motor Driver has no voltage regulator)
to top