Automated test equipment for production testing - Page 1
Forum section: electronics / projects

author: microherb
author_rank: Contributor
timestamp: June 27, 2019, 01:37:29 am
content: We need to setup some automated test equipment for production testing of an offline power supply LED driver (240VAC traffic lantern).My idea at this stage is to purchase a programmable AC power supply (such as this:https://www.bkprecision.com/products/power-supplies/9801-programmable-ac-power-source.html)and a programmable multimeter for reading output current, output voltage and possibly a few other voltages around the board. I would use a bed of nails setup to probe the points of the circuit I would like to measure. (See block Diagram attached)So I guess I would also need some kind of SCPI relay board to switch the multimeter to read different points of the circuit? What could I use for that or do I just make my own for this simple requirement?Am I on the right track?If I used RS232 for the communications would I need multiple point to point RS232 link between the controlling device and the instruments as there is no way I know of to have RS232 multidrop.Test routine would be fairly simple.Set AC power supply voltage output|Delay|Read AC Current, power factor etc,Read Output voltage and key voltage points.|Change AC power supply voltageDelay|Read AC Current, power factor etc,Read Output voltage and key voltage points.If I used a PC is there software that is good to use? I've heard of Labview but haven't had a chance to familiarise myself with it and I understand it's expensive.Or would you typically just write that software test routine yourself in C or something.This Jig will be sent to the board loader for testing product prior to shipment as well.So It might be good to make up a small go/no go tester for them using a microcontroller or something.Thanks in advance for any feedback.

author: MosherIV
author_rank: Super Contributor
timestamp: June 27, 2019, 06:57:12 am
content: Hi. You already mentioned Labview by National Instrument.Unless you want to writ your own test infrastructure, most companies just pay for Labview.If you cannot write your own test, there are lots of contractors.NI should have relay boards/cards which can be accessed through Labview.Or you could look at something likt thishttps://www.keysight.com/en/pd-1756491-pn-34972A/lxi-data-acquisition-data-logger-switch-unit?nid=-33257.922596&cc=GB&lc=engIt takes relay cards in the back. They are design to log from lots of sources.If you do want to roll your own, try Python. Has lots of library support for many instruments. I think it has support for SCPI. It is easier to learn than C.

author: Smokey
author_rank: Super Contributor
timestamp: June 27, 2019, 08:23:44 am
content: Whatever you end up using for the test setup, the number one rule is to have as much of it as possible be commercial off shelf. Don't make custom test equipment unless it's absolutely necessary.Yes, automated test hardware is expensive. You may think you are saving some money my making your own stuff, but the advantages of having hardware with listed specs, actual warranty/replacements, and services contracts is so worth the extra money. When something dies during the night shift on the weekend, you DO NOT want to be the guy that's responsible for modding/debugging a custom board at 2am to get the thing back up and running.On the software side, use whatever your "test guy" is familiar with. If you don't have a test guy then stay away from labview if at all possible. Hire/contract a python guy (there are way more of them) before you hire/contract a labview guy.

author: jbb
author_rank: Super Contributor
timestamp: June 27, 2019, 08:30:53 am
content: I saw 230V RMS there. That could be quite a stretch for standard relay cards.For example, the Keysight 34972 DAQ is a great unit (we use them at work) but is only rated to 300V. It says in the manual that it’s not rated to measure the mains. So you probably need a 1000V rated relay setup. I don’t know of any standard products with that rating, sorry.Does the programmable AC source do all the AC measurement stuff? That would save some trouble.

author: TheUnnamedNewbie
author_rank: Super Contributor
timestamp: June 27, 2019, 08:42:21 am
content: Software for this tends to be a common debate at different places I know. Some use LABView, others use python, others still use MATLAB or even high level stuff.I have to agree with the 'stick to pre-built' stuff, provided this is a critical, long-term test setup. Consider this: Imagine you built something yourself, and it fails, and you can't replace the component. How bad is the fact that you might now have to wait for a few weeks before a new design can be set up to replace it? Not to mention, if you need some kind of certificaiton or whatever it could be required you have calibration information for everything used, and getting that for some custom setup can be more expensive than buying the off-the-shelf verison.If this is for a commercial setup with a decent budget, consider reaching out to your sales rep from NI, Keysight, etc. They usually know what their lineup looks like and can help you find good parts and avoid gotchas.

author: Gribo
author_rank: Frequent Contributor
timestamp: June 27, 2019, 04:49:38 pm
content: There are lots of Ethernet based relay boards out there. The good ones have a well documented API (Phidgets, ETH-8 etc).

author: microherb
author_rank: Contributor
timestamp: June 27, 2019, 09:53:27 pm
content: Quote from: jbb on June 27, 2019, 08:30:53 amYes, the programmable AC source will do all the AC measurement stuff. The other measurements are all low voltage (although it's a non isolated supply so I still need isolation).Thanks, Dean.

author: ArthurWozniak
author_rank: Newbie
timestamp: June 29, 2019, 12:24:57 am
content: I've been working on bed nails for a project at my work with some high-quality sensors. One board has 35 sensors and each sensor takes five tests (current, frequency, voltage), so I thought in a demux circutry with a bunch of relays.I had problems powering each sensor at time because I used a matrix logic for that, and didn't work - a lot of current leakage. I soldered schottky diodes and more relays and solver my problem.The machine that runs this bed nails has three equipments all connected by serial port: one amazing agilent AC/DC power supply, one high precision keithley ammeter and an agilent electornic load. The machine controls all those equipment, sending and receiving all information and finally analyzing them to check if the measurements are all good. Unfortunatley, this machine is kinda old, expensive and far from the place I work at. I built a simplified machine with arduino and Processing, relays and other circuits... I could test the bed nails and identify which board is good.For switching the power and test channles, I used 4514 decoder/demux and ULN2002.Be carefull with GND connection, overcurrent and overvoltage. Wire-up is nice to useI can help you, if you wish.Good luck and best regards.

author: max_torque
author_rank: Super Contributor
timestamp: June 29, 2019, 09:53:52 am
content: One thing that is often missed when specifying EOL test kit is the fact that this kit must be significantly more reliable than the thing you are testing! Otherwise, your product is actually testing your EOL gear..... Typically, you'd aim for 10x more reliability / life in your EOL kit than the product line. That is 1) expensive and 2) limits the choices of components and subsystems.It's real easy to hack together some cheap bodge around an arduino, a RasPi or some left over dev board yo found in a cupboard, but in reality, the system needs to be very robust, otherwise your product fails its EOL test but the test kit is actually un-reliable.......

author: IanS
author_rank: Newbie
timestamp: July 08, 2019, 02:23:08 pm
content: Quote from: microherb on June 27, 2019, 01:37:29 amLet me just answer the RS232 question - you're correct. RS232 is not MultiDrop. The TX pin of one device should be wired to the RX pin of one other device.If you just needed to send bytes from one sending device to, say, two receiving devices then you could probably do that (TX pin of the sender to the RX pins of the receivers) but any more than 2 is increasing the load on the TX transmitter/line driver and you might burn out the driver or suffer voltage drop and loss bits.But never wire two TX together. RS232 linedriver chips are permanently driving the line +/- v even when no data is in transit. You'll burn out the driver chips.If you wish to have reliable multi-drop look at RS485 but then you'd need a protocol where master sends a message received by all receivers but only one receiver replies.Probably better to use a MultiPort RS232 where each device connects to a separate port

author: spudboy488
author_rank: Regular Contributor
timestamp: July 09, 2019, 12:03:29 pm
content: Quote from: IanS on July 08, 2019, 02:23:08 pmThis is actually quite easy to implement (If I was able to figure it out, then yes, it is easy) and I've used it on a few different projects.In my case, I have 1 device that is the master. It communicates to a handful of slave boards. I use the UART of all the devices but use a duplex RS485 driver rather than RS232. The key is to get a driver where the transmitter has a disable pin. The master transmitter and receiver are always enabled. The receivers on the slaves are enabled but the transmitters are disabled. Each slave is given an "address". All the slaves are constantly listening for traffic coming in on their UARTS. I came up with a really simple packet structure consisting of STX, address, # of bytes to follow, payload. You can get more elaborate (checksums, etc.) but this worked for me. Each slave receives and process the packet but only does something with it if the address matches. If the address matches, the slave enables its transmitter, sends the response packet, and disables the transmitter. If the address doesn't match, it clears the receive buffer and waits for the next message.

author: SiliconWizard
author_rank: Super Contributor
timestamp: July 09, 2019, 12:54:58 pm
content: Quote from: spudboy488 on July 09, 2019, 12:03:29 pmAlso did something similar (with an added CRC), and it's relatively straightforward indeed. As long as you implement this strict Master-Slave topology, there is no risk of collision (if there is a collision, this is clearly a bug), so this is rather simple. What I did though is use a single differential pair, so that was half-duplex and the master transmitter had to be disabled when listening to slaves.

author: spudboy488
author_rank: Regular Contributor
timestamp: July 10, 2019, 11:37:14 am
content: Quote from: SiliconWizard on July 09, 2019, 12:54:58 pmI went duplex so the master can send a command to the slaves (basically a reset) if one of the slaves isn't responding. I kept it out of the earlier post for clarity.

author: jmelson
author_rank: Super Contributor
timestamp: July 10, 2019, 06:59:03 pm
content: You absolutely MUST have a guaranteed break-before-make operation of the relays. Possibly some kind of circuit with extra contacts so that only one relay at a time can be closed. Or, have some resistor network at the test points so that failed or mis-programmed relays won't cause destructive currents.Jon

author: SiliconWizard
author_rank: Super Contributor
timestamp: July 10, 2019, 08:03:43 pm
content: Quote from: spudboy488 on July 10, 2019, 11:37:14 amThe potential problem is not with a slave just "not responding". Implement a time-out on the master's side. Done. It's with a slave holding the bus by getting stuck and never disabling its transmitter... thus preventing the master to send further commands from then on.This is not a big problem though: I implemented "hard" time-outs on both sides, so that a slave could never "hold" the bus for longer than a given amount of time no matter what happens. Absolutely no issue.

author: OwO
author_rank: Super Contributor
timestamp: July 11, 2019, 05:25:22 am
content: I see a lot of people recommending to go with off the shelf equipment when possible, but let me offer the other side: you never want to have one or two test jigs or a very complex setup involving big iron boxes and a PC that is hard to replicate. A few spares/backups of the entire system is a must, so you might as well productionize it and design it to the same manufacturability standards as any other product. In my case my test jig is just an orange pi with a custom PCB shield and LCD added on top. The custom board has very few components on it and is easy and cheap to produce. If I wanted to add say current/voltage monitoring I would add it to this board rather than use an external multimeter for example. Existing test equipment all seem to have quirky control interfaces and these are less future proof than you might think.

author: microherb
author_rank: Contributor
timestamp: July 11, 2019, 05:52:00 am
content: Quote from: OwO on July 11, 2019, 05:25:22 amWell, the company is baulking at spending around $5000AUD for the AC power source and Multimeter so looks like off the shelf equipment is not going to be possible. They don't see that to test manually is going to cost them a lot more than that in time and labour. Oh well, working for these guys I have to keep reminding myself it's their money, I get paid whether they take my advice or not :-(