You've probably faced this problem before, maybe more than once. You need to incorporate computer control into a product you're designing, but embedded systems are frighteningly unfamiliar to you. How can you ever learn enough—in time, starting from zero—to accomplish what you need to do?
Consider this approach: Start with the one computer you already know—the PC on your desk. Shrink it to your space requirements. Throw away the keyboard, the display, and the CD drive. Ditch the disk drive if you can do without it. Ruggedize your shrunken PC; beef up its ability to handle shock, vibration, and extreme temperatures. Reduce its power consumption. And incorporate it into your product.
What you get with this approach might not look like a PC, but it is. It can run DOS or various versions of Windows, so you can use familiar DOS or Windows system commands and procedures. For programming, you can choose from an array of inexpensive, user-friendly, widely available development tools. If you need technical assistance, it's available from the large pool of hardware and software developers already familiar with the PC architecture.
And there's more good news: You don't have to shrink, repackage, and ruggedize a PC yourself. Innovative companies have done that for you, producing embeddable PCs in all sizes and shapes and with a wide range of capabilities. Their prices—because of the huge volumes for components in the desktop PC market—can be lower than you might expect.
The embedded PC does have disadvantages, of course. It might not have all the interrupt channels you need, for example, or its real-time response might not be fast enough. Also, many PC components used in the rapidly changing consumer market might not remain available over the much longer product lifetime of an embedded system.
Manufacturers have addressed the embedded PC's disadvantages, though, and have eliminated or reduced many of them. PC chip maker Intel, for example, has an embedded systems division (http://developer.intel.com/design/intarch/) that promises the availability of many PC components over periods of five years or more. Software companies, such as QNX (http://www.qnx.com/) and Wind River Systems (http://www.windriver.com/), have created operating system replacements and enhancements that improve real-time response. The Linux operating system, under the guidance of the Embedded Linux Consortium (http://www.embedded-linux.org/), has also become important for embedded PCs, and several companies have made improvements to its real-time performance.
If you decide to use an embedded PC, you can either design your own from chips or buy an off-the-shelf PC on a board. Designing your own offers control over size, shape, features, and power consumption, but it's usually cost effective only in very high volumes. If you have severe size or shape constraints, though, even the smallest off-the-shelf board can be too big, in which case a design from scratch might be your best bet.
Designing a PC at the chip level need not be onerous, fortunately, because a single chip can now contain almost a complete PC.
Even a single-chip PC has to connect to the rest of your system, though, and connectors can take up more space than the PC's electronics. For that reason alone, designing with chips isn't always as attractive as it initially seems. You still end up with a board-based design, albeit a very small one, and building circuit boards is not nearly as easy as it used to be. With today's extremely small chip packages, producing a board often requires expensive, state-of-the-art manufacturing facilities.
Buying a ready-made embedded PC, on the other hand, relieves you of PC design and manufacture and lets you spend more time on your application. "The question you need to ask yourself," says Robert Burckle, vice president of embedded PC manufacturer WinSystems (http://www.winsystems), is: "What is my core competency?" Your expertise, Burckle continues, should be in your application area, not in PC design. Plus, he notes, off-the-shelf embedded PCs exist in enough types, sizes, and prices to suit just about any situation.
But with so many different embedded PCs available, how do you choose one? A good starting point, says Burckle, is to decide how you intend to maintain your system. If you plan on repair and maintenance in the field, you should select a board that can easily slide into and out of a slot in a chassis. On the other hand, if you plan on depot repair and maintenance, you might choose one that's harder to install and replace, but very modular and compact.
Another checkpoint for embedded PCs is the data bus. Older desktop PCs used the ISA (Industry Standard Architecture) bus, which is slow by today's standards, but still adequate for many uses. If faster data transfers are important, you can go with a board that implements the PCI (Peripheral Component Interconnect) bus, today's desktop standard. A version of the PCI bus, called CompactPCI (http://www.picmg.org/), was developed specifically for embedded applications.
Regardless of which embedded-PC configuration you choose, you'll find a range of available processor types and speeds. The 386 architecture is still popular and adequate for many embedded applications, even though it has been out of use in desktop PCs for years. At the top end of embedded PCs, you can get all but the very latest and very fastest Pentium processors. Embedded PCs also come with a vast range of additional on-board features, such as graphics processors and flat-panel display drivers. Among the choices available, it's almost a certainty that you can find one that suits your needs.