I'm working on a project and need to make I/O pins that are configurable to offer around 4 Amps or more of each voltage: 5vDC, 12vDC, 24vDC, and 120vAC. The pins need to be able to source and sink each voltage, as well as control dc stepper motors with pwm (expected on 24v only).

My initial thought was simple, load switches for each positive/hot, and negative/neutral pin. But I need about 30 of these little i/o pins and the cheapest prices I could find were about $90 just for all the switches! There has to be a more intelligent design that doesn't cost as much. I've been looking at variable regulators, high power opamps (analog voltage would be nice!), triode mosfets, analog frontend devices, tons of stuff I'm getting a little overwhelmed by. I feel like I need help from someone who has a formal education. My month long headache might be a 5 minute no-brainer for someone.

As for the inputs (other than power return) I feel like I have that handled. I plan on using an fpga to configure each pin. This is intended to control tons of different motors, solenoids, keypads, sensors, and light bulbs all configured their own way. A universal board beats making hundreds of adapter boards.

  • \$\begingroup\$ Why the source/sink requirement, and how fast do these need to switch? If you're just switching, triacs for AC and some mid-size MOSFETs for the DC switching would be cheap and relatively compact. If you really want bidirectional load control (an H-bridge for every IO), it's going to be much more expensive. \$\endgroup\$ – uint128_t Jan 3 '16 at 4:24
  • \$\begingroup\$ It'll hook up to pre-existing wiring harnesses. I know some have about 50 motors and switches on 20 pin plugs. To power one motor, it'd need +24v on pin 3, and the 0v on pin 4 (for example). Then to power a different motor it's the opposite. I feel like the 0v for each voltage should be separated, but maybe not. I'm not 100% sure about the speed, whatever allows use of stepper motors. \$\endgroup\$ – mr danker Jan 3 '16 at 4:32
  • 1
    \$\begingroup\$ A device optimized for 120VAC is going to have lousy performance at 5VDC, and will cost more than necessary. There are tradeoffs with switching semiconductors that exchange breakdown voltage for low on-resistance and low gate charge.. It's hard to get a sense of what you're really trying to do. Could you draw a schematic? \$\endgroup\$ – Daniel Jan 3 '16 at 4:45
  • \$\begingroup\$ Well, there aren't many integrated H-bridges rated for more than 4A (although the ST powerSTEP01 is an exception); so your best bet is probably looking at MOSFET driver ICs, and using external MOSFETs. \$\endgroup\$ – uint128_t Jan 3 '16 at 4:47
  • \$\begingroup\$ Do you really need to configure these dynamically? Would some sort of jumpers work? \$\endgroup\$ – tcrosley Jan 3 '16 at 5:59

In the semiconductor industry, IC manufacturers use ATE (Automated Test Equipment) designed for maximum versatility -- and these ATE machines are expensive, costing many hundreds of thousands of US dollars each. (Not including the payroll costs of the large teams of people who program and maintain these test machines.)

A universal tester makes a lot of sense when you're production-testing a wide range of products in high volume -- trimming a few seconds per IC product saves a significant amount of cost in this case. And even so, there are still customized handler boards specialized to various products. There just isn't a universal automated tester that is so universal that it can interface to just any arbitrary product without some help.

A universal board beats making hundreds of adapter boards

No it doesn't, especially when starting out at low production test volume. I can speak to that point, having designed literally "hundreds of adapter boards" (test fixtures) in my career supporting production testing of evaluation kits for Maxim Integrated. Each of our evaluation kits has its own unique test fixture, basically a modified version of the PCB with pogo pin contacts for each board. Our production volume for these boards is fairly low, batches of just 20-50 boards at a time (as these are marketing collateral). This technique is simple, robust, and reliable; and works well with our test operators in the Philippines.

One of the most time-consuming parts of using a general-purpose bench test setup for production testing a batch of boards, is all the time spent connecting and disconnecting the test leads. So we design a custom test fixture for each evaluation kit board that will be tested; for example we use the CAD files for MAX1234EVKIT, remove all the parts except the connectors, and substitute pogo pins and add some basic mechanical supports and clips. Power supplies connect through banana jacks (Pomona plugs) to wherever that particular board's power connector is. Then a test operator can just pop in a board under test, run through our test procedure, and pop out the board very quickly. The operator only needs to connect the test lead wires when setting up at the start of a test run.

Over a decade ago, I also designed a more universal production tester meant to be used by our customers to support some of our sensor compensation products. (It was built around a Motorola MC68HC16 microcontroller, using National Instruments NAT9914 IEEE-488 interface chip and custom firmware. That's a year of my life I won't get back.) The cost of developing a universal system is much more than the cost of developing a few hundred purpose-built contactor boards. And there's a lot more that can go wrong with a universal system. I'm not sure how many of those systems we actually shipped, but my sense is it wasn't very widely adopted. If we had to do something like that today, I'd use the Agilent 34970a data acquisition mainframe instead of a DIY solution, to avoid wasting my time on another "universal" tester that wasn't sufficiently future-proof.

For the power supplies, you can buy or rent units such as HP/Agilent E3630A or similar; these support NIST traceable calibration which helps protect you against test system errors. Or since you already know the fixed supply voltage and load current you need, you could buy some headless fixed-output power supply units.

There's obviously some saftey issues with switching 120VAC; there must be enough clearence to avoid arcing, there should be no exposed traces, and there should be "danger high voltage" cautions to avoid damaging your test operators... I'm going to assume you know all your legal/liability issues.

There are also some technical problems trying to put both 120VAC and 5V on the same contact pins -- for one thing, you need to ensure "break-before-make" action: there must never, ever be even a fraction of a second when both the 120VAC and the 5V switch could be contacting the same pin. Otherwise the 5V supply will lose in a shower of sparks. (Murphy's Law says this will happen, and at the worst possible time.) Given the high voltage, I'd be very leery of even allowing a dumb machine to attempt that kind of switching action. If it were me, I'd rather require a test operator to physically unplug the test fixture board that uses the 120VAC, and then plug into its place the other lower-voltage test fixture board. Break-before-make would be ensured because it would be impossible to connect both test fixture boards at the same time. Having both high voltage and low voltage on the same connector can be OK if it's properly designed, but switching them onto the same test point is really asking for trouble in a big way.

You mention the devices you are testing have some pre-existing 20-pin wiring harnesses, with about 50 different variations. That's actually not so bad, if you have a clear naming scheme that your test operators will be able to follow. For example testing a batch of "MOTOR-41235" they would grab the prominently labeled "MOTOR-41235" test fixture, connect the +5VDC and +24VDC power supplies to the fixture, and then plug in each "MOTOR-41235" unit under test. If your test procedure is simple enough you could actually write the test procedure or test limits on the test fixture board itself, although for initial testing it's simpler to maintain a separate written procedure.

I'd also want to make the 120VAC test fixture boards look distinctly different from the others; maybe larger (like an extra 6 inches on each side with no copper, to keep fingers away from the high voltage).

You can start out with fairly small production volume, maybe one test operator, one set of power supplies, and a set of test fixtures. You can later scale up to more test operators, and they can operate in parallel.

Using a printed circuit board for the test fixture makes it easy to duplicate or replace the test fixtures, in case you want to move the test operation overseas (ship the board design files and have the fixtures built locally, and purchase local power supply units) or if you want to expand or move to a lower-cost contract manufacturing operation. Everything about the test fixture can be reconstituted with very little effort.

For the stepper motor driver, you might want to consider using an Arduino board to send the stepping commands. Despite the hobbyist scent, these are actually capable of a fair amount of flexibility, they're meant to be accessible to people who don't have computer degrees, and there are existing examples for driving stepper motors. Maybe not at the 4A level, but certainly a good place to start.


A universal board beats making hundreds of adapter boards

Or perhaps not. A 'universal' board with on-board drivers that can all be configured to drive DC, AC and stepper motors at voltages from 5V DC to 120VAC? Sound like a nightmare. Apart from the unnecessary duplication of circuitry and isolation issues, you will end up with a huge board that needs to be repaired/replaced if a single output blows.

I would use separate driver boards for each type of motor, connecting to the control board through a standardized interface. That way you can 'plug in' whatever adapter boards are required for the particular combination of motors you have, and if one blows it can easily be replaced. And it will be even more 'universal' because if you ever need to drive a different type of motor you just have to make a new adapter board for it, not redesign the whole thing.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.