Home
Vendors
Products
News
Members
The organization
search
 
vpr
events
forum
articles
e-letter
 

 
 

Using FireWire to Simplify Real-Time Industrial Control


 
 
By Michel Lefebvre,
Vice-President - Sales and Marketing,
Mindready Solutions Inc.
Montreal, Canada

You're a system developer working on an automated assembly system for an automotive manufacturer. You're designing a real-time application without worrying about synchronization between devices, latency and jitter, topology restrictions, ID switches and terminators, expensive cables, connectors and bridges, or bandwidth limitations. Now imagine all that, plus data transfer rates beyond expectations.

If you're having a hard time imagining such a trouble-free connectivity solution, then you haven't heard about the FireWire (IEEE1394) High Performance serial bus.

FireWire, a high-speed, low-cost serial bus originally conceived by Apple Computer Inc., is becoming the de facto serial bus for the consumer electronics market, PC peripherals, home automation systems, and multimedia and entertainment systems. Although originally conceived for use within these markets only, FireWire is now on a new evolutionary path. More and more developers and systems integrators are adopting the standard for real-time applications such as simulation systems, manufacturing automation and industrial control. Why? Because its high-speed deterministic communication, low cost, and guaranteed bandwidth are, in application, resulting in a marked simplification in systems design, a flatter design curve, and a significant reduction in overall project costs.

In order to appreciate the full potential of FireWire, we need to examine the implications and requirements of designing a real-time industrial application.

Industrial control applications generally present two requirements: Real-time calculations based on analog or digital I/O within one, or more often, several industrial computers and a control console that coordinates the complete system.

For example, a car manufacturer needs to implement multiple robotic arms, all working in tandem, on an assembly line to produce automobiles. Each arm needs to be controlled by an industrial computer -- the arm's nerve center. This computer - generally a VMEbus system - the de facto bus in manufacturing, houses the CPU, multiple IP modules and/or I/O boards. This box acquires I/O such as position, speed, pressure or even video images from the arm, then calculates, corrects and sends new values at each cycle back to the arm, thus ensuring proper execution of the command. Needless to say, all these components need to be perfectly synchronized, in real-time, for the robotic arms to do their job. Additionally, there is a central control console that sends commands, and receives status data from the VMEbus systems.

And herein lay the complexities. Real-time applications require calculations and samplings to be performed within a very specific time window in order to guarantee valid results. Developers and system integrators have the arduous task of manually developing a real-time synchronized communication process, between all devices, for an application with zero tolerance for error, latency or jitter. The slightest "hiccup" in communication will impact the stability of the system.

Another hurdle to overcome is heterogeneous computers with different operating systems. An Ethernet connection may be used to establish communication between the VMEbus systems and the console, which usually consists of a computer such as a Sun workstation running Solaris or a PC running Windows NT. But this solution presents several disadvantages. For starters, Ethernet is not deterministic and requires much development in order to be properly implemented in a real-time system.

Next, if two or more chassis are required to house the application's multiple I/O boards, or, if data is originating from IP or PMC modules on a VME or CompactPCIâ board, a personal computer or a SPARC workstation, then bridges are required to connect them. The downsides of using bridges are high cost, typically in the $5000 range per bridge; and the requirement for supplemental software development. In addition to the rising costs, communication between each component must be synchronized with its counterparts in the other machine. This makes the development of real-time applications a daunting task even for the most seasoned of developers.

An attractive solution to these issues is FireWire also known as IEEE 1394. FireWire is a high performance serial bus that effectively shields developers and integrators from all the communication complexities of interconnecting different computers and developing applications for real-time systems. FireWire is in fact revolutionizing the transport of digital data for real-time computer systems with its scalable architecture, flexible peer-to-peer topology, low cost implementation and high-speed deterministic communication. Among the many advantages is its built-in synchronization of communications and processes between devices. FireWire supports two types of data transfer, asynchronous and isochronous. The key feature here is the deterministic nature of its isochronous transmission support. Developers can now design the same automated assembly system using FireWire's isochronous transmission that will automatically synchronize communications with not only guaranteed delivery of data, but delivery on time, at a pre-determined rate - without any extra programming. This mode of data transfer also eliminates latency and jitter, and data exchange intervals are controlled natively, right on the bus - again, no extra programming.

The developer can also connect up to 64 devices on each FireWire bus in a peer-to-peer fashion, communicating digitally at up to 400 Mbps. This peer-to-peer communication allows each computer to be mapped to the other on the same bus. The result is a much simpler implementation of an environment including multiple heterogeneous computer platforms.

Here's another "perk" in using FireWire. No expensive bridges. All devices can exchange data with each other natively on the bus. An IP module on a VME carrier card is automatically mapped to all other devices such as a SUN workstation or another VME rack, without any additional design efforts for drivers or protocols, or requirements for extra hardware. This effectively negates the need for any dedicated bridges. FireWire's flexible cabling topology allows for easier installation of real-time systems, compared to standards requiring rigid cabling topologies such as point-to-point and hubbed architectures. Plus, using serial communication allows for thin, easy-to-handle 6 conductor cables to be used between computers and I/O devices. Cable length is limited to 4.5 meters, but high quality cabling and/or repeaters can be used to extend that distance as required.

FireWire interfaces are also designed for hot plug and play. For example, if one of the robotic arms requires servicing, including removal and replacement, -- the manufacturing process goes on uninterrupted. There is no need to bring down the system to add or remove nodes.

Finally, FireWire is inexpensive. Its roots are in professional multimedia solutions, developed using components that are now widely available at a low cost. These same low cost components are used in the manufacturing of FireWire-based real-time communication products.

Without a doubt, FireWire is revolutionizing the way developers and systems integrators design, build and interconnect real-time systems. The integration and synchronization of the different components in a real-time automated assembly system can be greatly simplified by using FireWire technology. Not only are design time and project costs significantly reduced, but the versatility of the resulting real-time system is also increased. Plus, the system can be upgraded and expanded very easily without concern about additional equipment that may be added in the future.

Montreal-based Sederta, Inc., is the first company to offer a complete family of real-time communication hardware and software products based on FireWire technology. The SedNet FireWire family includes VME, PCI, CompactPCI, PMC and SBus communication adapters that are designed to facilitate the design and integration of heterogeneous, real-time computer systems.

SedNet's VME FireWire card -- as well as the entire family of cards -- is a deterministic, high-speed, low-cost communication adapter. The card bridges a VME-based system including IP modules to PCI, PMC, SBus, CompactPCI as well as other VME systems. Integrating the VME card into a real-time system design will enable developers to map the complete 32-bit VMEbus space on the FireWire bus and create multi-computer systems without operating system, bus or cabling topology restrictions, and without having to write a single line of communication code. In addition, the card can be extended with up to three IP module carrier boards, each allowing up to four IP modules, for a total of twelve IP sites for faster and more efficient data throughput. Point-to-point, daisy chain or tree topologies are supported, and naturally all IP modules and attached nodes and devices are fully synchronized for real-time applications. All SedNet adapters provide 200 Mbps isochronous and asynchronous data transfers through three on board ports.

But perhaps, the most important feature of the SedNet VME card is its powerful real-time communication API. SedNet communication adapters enable developers to interface with the system using simple API commands without having to write device drivers or communication code. And again, all of the I/O synchronization aspects of interfacing with other real-time systems are completely transparent.

In addition to the FireWire adapters, the SedNet family also includes Software Development Kits for Wind River Systems VxWorks, QNX, Microsoft Windows NT, Sun Solaris, and IBM AIX, as well as a Driver Development Kit for custom or other embedded operating systems.