Have you ever been around high current? Anyone who has used electrical appliances has probably seen, heard, felt (and maybe even smelled or tasted) the effects of a short circuit on an ordinary 120 VAC line. Wires jump, sparks fly, and insulation burns. If you have operated a welder, (or accidentally did some welding with a car battery and misplaced jumper cables), you have experienced what several hundred to a couple thousand amperes is like. But what about 100,000 amperes?
In the field (no pun intended) of high current circuit breaker testing, 100,000 amperes is not unusual. Large low-voltage (600 VAC is technically still low voltage) circuit breakers used in major installations may be rated to carry 5000 amperes or more continuously, and are designed to protect against short circuits of nearly 100,000 amperes. Circuit breakers of this size should be tested on a regular basis with high currents.
How can such large currents be generated? This trick is performed with specially designed transformers, which convert an input of about 500 VAC to an output of about 5 VAC. This is a ratio of 100 to 1, for voltage; the current ratio is just the opposite, so an industrially moderate current of 100 amps can generate 10,000 amps. You can generally get ten times the rated current from a power source for a tenth of a second or so, and this is long enough to trip even the most humungous breaker.
What is such high current like? It acts like a poltergeist (noisy ghost)! The strong magnetic fields will interact with any steel objects nearby, causing them to vibrate and buzz loudly; a small tool like a screwdriver may even fly across the room. The wires or bus bars carrying the current attract or repel each other, and may jump and twist violently if not strongly held down. If you have a CRT nearby, in a computer or oscilloscope, the image will wiggle and distort. Nasty things may happen to the hard disk and floppies, too!
As frightening as they may seem, these high currents are fairly safe. The low voltages are not enough to give you a dangerous shock, except for inductive "kick", but the noise and suddenly moving wires may scare you into jumping somewhere uncomfortable. If connections are not tight, or open during the test, sparks may fly. Since these sparks are often actually white hot drops of molten copper, being hit by them may hurt. Inside the breaker, these sparks are safely contained. At full rated voltage, however, a major overload will produce an impressive display of fireworks!
Now that we have seen how to pump high current into a breaker, we must measure the current and how long it flowed before the breaker interrupted it. Various methods have been tried, but the best way is generally an air core current transformer (CT), which basically measures the magnetic field around the conductor. This signal must be processed by electronic circuitry, and the amperage and time must be displayed.
If the current stayed on for a long time, you could use an ordinary ammeter, and measure the time with a stopwatch. For long time delays (which are several minutes at about three to four times the breaker rating), this method would work, but at higher currents, there is not enough time to take a reading. There is also a lot of waveform distortion, so a simple peak reading meter will not give the correct reading. We need a way to look at the whole current waveform, pick the exact time where it starts and stops, and do a true-RMS calculation.
I started my career about twenty years ago with a design to make these readings more accurately. At that time, I used true-RMS converter IC's and sample/hold technology to make a current meter that was much better than the simple peak reading instrument then being used, but its simple analog circuitry could still be fooled. About ten years ago, I designed a system based on the Z80 microprocessor and an A/D converter, but it still relied on an analog RMS converter, which took out the waveform information the software would need to make an intelligent measurement. A few years later, the IBM PC became a viable hardware platform, and "C" became the language of choice. With this technology, I designed a system that actually sampled the waveform, and finally was able to make sense out of really nasty waveforms.
Since that time, I improved the software, and used emerging improvements in PC hardware to design better ways to measure current and also control test sets. However, industrial PC's were too bulky and expensive, and as portable computers evolved into laptops and notebooks, the expansion slots necessary for data acquisition disappeared. So, I designed an external gadget that uses the parallel port which is available on all computers, and I could still use much of the software already written.
Now I had the technology to measure the current and time as accurately as necessary, and all the resources of increasingly powerful processors, operating systems, and display hardware. However, it became apparent that many users of breaker test sets were uncomfortable with computers, feared that someone would remove the computer from the test set, or that it would be damaged by the hostile environments found in breaker testing. I wanted to be able to offer a way to upgrade the current meters in older test sets with a simple plug-in replacement, and it seemed that portable MSDOS computers and embedded PC's were not really viable options.
Some time ago, I bought a microcontroller with a 64180 processor and BASIC programming capability, and used it in a prototype breaker test set monitor. I soon found that I needed to use assembly language, and almost bought a 64180 emulator. I was able to program it without an emulator, but it was a tedious process. Then, I became the proud owner of the old Z80 emulator I had used in my previous design efforts ten years ago. After weighing the various costs and other factors, I decided to take a step backward, and designed a Z80 based microprocessor core, with a simple expansion bus. I rewired my prototype, hand wired the Z80 core, fired up the old emulator, and got back to work.
Working with the old emulator was certainly a pleasure compared to the tedious process I had used for the 64180 system (Assemble, Link, Burn, Plug & Play/Crash). However, it was still an old non-symbolic type, and required a lot of squinting at assembly listings, hex dumps, and other arcane anachronisms. I also had the prospect of designing the Z80 PC board, along with the expansion boards to give me the I/O functions I needed.
I was familiar with Z-World Engineering, and had considered some of their microcontroller products. However, the overall cost to put together the system I needed seemed a little too much, and I thought I would be forced back into the need for a Z180 emulator, with its high cost and limitations. Then, I saw their ad for the SmartCore, and it looked as if it would perform nearly the same function as my Z80 core, with even more capability.
At first, I was going to modify my core design with an expansion bus that would be compatible with the SmartCore, so I could still use my old comfortable emulator. However, after I worked with the evaluation package, I saw the advantages of symbolic debugging and writing code in "C". I was delighted to find that I could convert nearly all of my old Z80 library code into a form that was compatible with Dynamic C in-line assembly. It would have been a little smoother to have had more compatibility with the M80 assembler directives and macro capability, but after all, this is Dynamic "C"! I was amazed when I was finally able to run my entire assembly language program on the SmartCore with only one "C" statement.
At this point, I can continue my development of hardware and software with very little additional cost, and actual savings in time and money over what I would have spent with my previous design. Moreover, I can foresee many uses of this product for future applications. Its small size, reasonable cost, ease of use, and flexibility truly qualify it as an elegant design.