Greetings,
I'm toying with the idea of creating a 14CH I/O shield intended for controlling larger components up to a few amps and at a variety of voltages. I'm trying to mimic something like an industrial PLC in robustness, configurability and connection philosophy. The goal is to have something that can be used to control larger scale equipment whether it's automotive, small scale process (home breweries and such), light shows whatever have you. Clearly this many channels would probably not fit on a single shield - so most likely it would be set up to connect to a break out board which could be mounted inside of an enclosure and onto a variety of loads, relays, etc. There are many similar boards already in existence, but they all seem limited from what I've found - most commonly a low number of output channels and no I/O reconfiguration option; they seem to just not really be suitable for other than benchtop, small robotic work or simple control systems (few channels)
In order to be flexible in application I'd like to set up each channel to be jumper selectable as either an input or an output. This I/O could operate at a variety of voltages, allowing a load of up to 60V on each output at a few amps, and provides a 12V common for connecting switches and logic to the input side of the board - because there's no telling what could be connected to the other side I want the load & input side of the system to be fully isolated from the control layer of the board, effectively there will be two power connectors given (one for the Arduino & controls and another for the loads and input sensing), with the option to bridge the two together if full isolation is not a concern.
I've tinkered with electronics a good bit ever since I was little - but this is my first time ever really designing something from scratch; I'm posting up an image of one of these channels I'm proposing hoping to get some good design feedback. I intend to post everything I learn about the project online as I develop it. I intend to make a couple boards of this for my own use - is this something that anyone foresees there to be enough of a demand for for me to have a few extra boards punched out and try and sell just the PCB for a small profit? Does something like it already exist in a nicely packaged format?
Here's a run-down of the circuit
JP1 would be connected to one of the Arduino D pins, and can be jumpered to 1 (input) or 3 (output). Removing the jumper will disable the pin and free it up for use with other shields.
First off; +5V and GND are isolated power inputs for the Arduino and other delicate components - I'll call this "clean power", V+ (12V) and GND1 are connected to a power connector for controlled loads and off-board inputs, I'll call this "dirty power". Again if the user does not see the need for full power supply isolation, GND and GND1 may be jumpered, and V+ (12V) may be jumpered to the Arduino's VIN pin.
If pin 1 is jumped to 2 (input mode):
X1-2 becomes an input sunk to ground, an incoming control would share a common ground with the input side of the optocoupler and be powered the 12V V+ leg on the dirty power connector (some on-board terminals for a common connection will be provided). R4 is intended to draw current at an acceptable level for the LTV816 input side. If X1-2 is high, current flows from the +5V leg "clean power" source, through pull up-resistor R3 and into JP1 onwards to the Arduino. If X1-2 is low, this flow stops and R6 serves as a pull-down to prevent a floating logic condition. R2 and LED1 serve as a visual indicator of the process.
If pin 3 is jumped to 2 (output mode):
Power flows from the Arduino D pin through R7 which is set an allowable current and voltage drop to control OK2's input side and power visual indicator LED2. If the output on OK2 is activated, power is tapped from the board's 12V V+ "dirty power" leg, flows through pull-up resistor R1, through OK2's transistor and into MOSFET Q2 (an IRFZ44??). This will activate the MOSFET and current is allowed to flow from X1-1 to GND1; the other side of X1-1 may be connected to 12V V+ dirty power, or any power source up to 60V with a ground tied to dirty GND1.
I fear this post has gotten a bit longer than I had hoped, but that's all I have for now - please let me know of any comments or suggestions you may have.
Thanks!





