Now - Control Design

advertisement

A New Real-Time Control Architecture for Advanced Machines:

Distributed Automation and Digital Machine Vision using IEEE-1394

Edison Hudson, President

MetaControl Technologies Inc.

Introduction

Industrial automation is commonplace in most competitive manufacturing activities today.

Advanced automation control systems are central to increasing productivity not only in traditional manufacturing, but also in new fields such as drug discovery, clinical assay, and a diverse range of industries. The movement to higher throughput and extreme miniaturization,

(micro and nano scale), makes human control of many processes beyond the dexterity, visual acuity, and attention bandwidth of even the most skilled technician. High performance machine systems executing multi-parameter control are commonplace in automotive, semiconductor, electronics, and increasingly in pharmaceutical production and laboratory environments.

Modern automatic machine systems must be able to control with very high precision a wide range of actuators and sensors simultaneously. Closed loop control of precision motion, force, temperature, flow rate, etc. in complex recipes is already a norm in high performance capital machinery. Increasing competitive pressure insists that these complex control regimes be implemented with cost effective electronics and robust software. Though high end machines for advanced industries are built in relatively small volumes compared to consumer goods, and yet they are under the same competitive pressures for each successive generation to perform at higher levels and lower costs. The industrial adoption of components and methods originally designed high volume consumer applications is a certainty for next generation industrial controls.

IEEE-1394 or FireWire ® ( also “1394”), was developed as a consumer technology but shows tremendous potential to tackle both higher performance needs and lower systems costs demanded in advanced machinery. The combination of IEEE-1394 high speed serial bus with fast embedded processors enables a new cost effective, high performance architecture for advanced machine design and other demanding real-time automation tasks.

By enabling the physical distribution of computing power linked by synchronized, deterministic high bandwidth messaging, IEEE-1394 obviates the need for centralized backplane based machine controls. By utilizing the isochronous, peer-to-peer modes and serial data clock of IEEE-1394, the architecture described in this paper shows how distributed embedded processor nodes and intelligent digital cameras can become a preferred alternative to the centralized backplane approach in dominant use today.

Traditional Automation Control Architecture

Most current solutions in high performance machine automation and instrumentation can be characterized as centralized and backplane oriented. It has been a normal assumption in advanced motion, machine vision, and analog process automation that only backplane based controllers could provide the high communication speeds needed to synchronize motion, images, and data acquisition events. The standard implementation of most industrial and laboratory automation controllers is the rack mounted backplane, primarily using bus solutions such as VME, VXI, PXI, or proprietary buses. In recent years, PCI and Compact

PCI systems have gained a significant stake in these markets, driven by the advancing capabilities of Windows based PC’s.

In the conventional architecture, all sensors, motors, digital inputs and outputs, and analog signals are cabled from the point of use to converge at the backplane resident cards

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 1 / 21

designed to handle each specialized function. All signals are brought to the physical location of the system controller typically using multi-wire cable bundles. In a typical machine used in semiconductor back-end processing, thousands of individual wires converge from many locations in the machine to the central rack mounted controller. Diagram 1 is a schematic of a typical automation machine with 6 axes of motion control, machine vision, and process control. Examples of systems that use this style of control include semiconductor manufacturing equipment, electronics manufacturing equipment, packaging machines, mechanical assembly, molecular genetic laboratory systems, among others.

The traditional architecture, as depicted by Diagram 1 often contains several specialized backplanes to implement different control functions. Typically, motion control is handled by a specialized controller or board, machine vision by another board or controller, while digital and analog I/O functions add additional subsystems. Bus-to-bus communication between these various subsystems is often through traditional RS-232/422/485 serial communication channels, or in some cases with bus converters. Cabling of these systems is complex and represents a major constraint on complexity. The centralized approach also limits reliability and configurability as hundreds of conductors, many often traversing moving axes, are required to route signals to the central control chassis.

Overall, the traditional approach is cumbersome, physically large, and invariably results in a controls solution per machine that today might typically range from $10,000 to $30,000 depending on performance specifics. The era of the low cost PC begs for solutions that are on of a factor of 10 lower in cost. The software development for traditional architectures such as depicted in Diagram 1 is often expensive and time consuming, due to the fact the subsystems often come from several vendors and are developed with different software approaches and lack standard interfaces..

Distributed Control Systems

As opposed to the centralized, backplane oriented approach illustrated above, a distributed control system ( “DCS”) architecture uses some form of serial or parallel cable to link already digitized information from the point of use. In a DCS, analog signals are quickly digitized, and functions are localized that do not need to be centrally supervised. The conventional wisdom held by most automation designers has been that the distributed approach can only be used for low speed performance or when coordination of devices and events is not highly time critical. Whenever exact time synchronization or computational speed is critical, backplane bus based systems were assumed to always be superior in performance. Additionally in recent years, distributed systems have often been more expensive to implement than low end backplane systems.

However, many advantages of DCS are well accepted by industry including:

Greater signal integrity, (S/N ), can be achieved by reducing the distance that analog signals must travel before digitization occurs, important in applications where signal to noise maximization is demanded;

Cabling can be simplified and functional subsystems can be modularized allowing configuration at a higher level of integration. System configuration is greatly ease by subsystems that can plug into a network, particularly in complex machines such as electronics assembly machines, semiconductor processing, and multi-axes robots;

Large physical scale systems can be controlled more easily with distributed systems, especially large physical plants such as paper processing, chemical refineries, textile processing, and commercial printing systems.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 2 / 21

Remote monitoring of signals or control functions over a corporate or public network is generally more straightforward with DCS systems which are naturally data packet driven.

Diagram 1 – Traditional control architecture diagram

HMI Panel

Shielded Cables

( 8 to 24 wires )

Controller

Vision

System

Inputs /

Outputs

Power

Amplifiers

Y

Analog

Cameras

X

Typical 6-axis system using conventional control architecture

There have been many distributed control schemes developed and implemented for industrial applications over the past three decades. The oldest of these distributed schemes are based on Field-Bus and its derivatives, Device Net, CanBus, ProfiBus and others. Most of these

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 3 / 21

schemes are limited in their ability to deal with data rates more than a few megabits / second, far below the capabilities of backplane buses like VME or PCI. In the motion control arena there is a fast serial bus called Sercos, that gained some market share, but in recent years has languished due to high cost and a data rate limitation of 4 megabits / second. For a more comprehensive review of existing distributed control architectures, see the NIST report found at http://www.isd.mel.nist.gov/projects/openarch/motstds.doc

.

IEEE-1394 Distributed Control System

Unlike the aforementioned distributed control standards, IEEE1394, (“1394”), has most of the advantages and few of their disadvantages of earlier generation DCS buses. Particularly with regards speed of operation, functional signaling modes, and cost, 1394 has the ability to radically change the approach of automation control design. With 1394, the idea that all signals must converge on the bus backplane location is inverted, since 1394 can bring an adequately fast bus to the signals and the point of control.

Though 1394 was originally conceived as a consumer oriented bus, many of its technical features are particularly well suitable to advanced control systems. The following attributes of

1394 are specifically important to distributed control design:

High speed – with 1394-A, 400 megabit/sec is already faster than nearly every industrial DCS serial bus by 3 orders of magnitude. As compared to the widely used industrial distributed buses based on Fieldbus derived technologies, 1394 is nearly

1000 times faster. 1394 B begins to compete in absolute speed with parallel bus backplane solutions (see Chart 1. below). With a roadmap to 400 megabytes/ second

(3,200 mbs ), 1394-B on glass fiber offers speed that only a few high performance back planes contemplate, ( future buses like PCI-X, VME-64, and Star Fabric are faster, but multiple times as expensive). In many cases, backplanes systems like

VME are more than adequate in speed for most controls and instrument applications.

1394 provides a bandwidth option that meets the majority of machine control and instrumentation needs where messages are typical short in data length, but numerous and frequent

Chart 1 - Maximum Data Rate of Various Bus Types including IEEE-1394 A/B

300

250

200

150

100

50

0

Standard

High Performance

PCMCIA 1394A VME/ VXI 1394B PCI / PXI

Machine vision is one control technology that demands high bus speed and as a result has not until recently been amenable to distributed control architectures. The high speed of 1394 is needed to allow the digital acquisition of video from multiple cameras, and it is fast enough to replace backplane based framegrabbers.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 4 / 21

Isochronous mode – Most serial communication schemes do not have a mode of operation that guarantees the time based delivery of data packets. This time determinism of 1394 is very beneficial in application to closed loop servo control, data acquisition from analog sources, and machine vision using digital video. In addition to the need for guaranteed delivery time, guaranteed delivery order is important for these applications, as each message represents the state of a machine or instrument function at a given point in time and may be part of a closed loop in which the order of the data must be sequential. Networks that do not support ordered and timely data sequences, such as traditional Ethernet, pose impossible conundrums to control designers.

Asynchronous mode – A common requirement of most control systems is to have the ability to respond to instantaneous events. Within the time windows permitted by the clocking scheme of 1394, asynchronous event messages can be generated within every bus clock cycle by any node, thereby allowing a high priority message to propagate with a known latency. The 1394-A asynchronous window of 125 microseconds is adequate for most control applications, with the 1394-B interval dropping to 62.5 microseconds, and ultimately to less than 16 microseconds, accommodating most events on even the most demanding control applications in the future. Another important use of asynchronous mode is in control systems with intelligent nodes, in which asynchronous data packets provide a means to change control parameters on the fly in parallel loop operation. This is very significant for dynamic loop control devices where the initial parameters need to be modified with changing system conditions.

Peer-to-Peer mode - The facility to allow 1394 nodes to communicate directly without sending each message through a host decreases the latency that is associated with host centric networks, such as USB and Ethernet. In many cases, this can be a significant advantage of 1394 when a change in state at one node needs to be passed to another node as quickly as possible and with great determinism. Since host centric networks may suffer from varying delays in message propagation depending on the processing load at the host, the peer-to-peer mode enables control designers to implement schemes in which a message can be sent just to the affected nodes. In low-end applications, where a PC may not be present, peer-to-peer offers the possibility of embedded solutions that do not require a PC.

Broadcast mode – In distributed control, many nodes may need to start or stop a process in synchronization with an event or start signal generated by a coordinating processor. Also safety violation conditions that affect the whole system that all nodes need to be aware of can be implemented using 1394’s broadcast capability that sends a message to all nodes at once. This is a powerful feature for the synchronization and control of multi-axis motion control over a distributed network.With open host controller interface (OHCI) chip sets using direct memory access transfers that OHCI supports, data transfer speed is not dependent on operating system's interrupt latency.

Other distributed network schemes for industrial automation include some of the above control features of 1394. 1394 is unique in combining all of these desirable modes in a single architecture, with a promising roadmap of increasing performance that mimics that of backplane buses.

1394-1995 and 1394-A had some limitations and deficiencies that were of concern to control design. In particular, the following issues present design problems for machine control environments:

Galvanic isolation – the earlier versions of 1394 were subject to influence of system level ground fluctuat ions that could produce unintended “unplugs” and potential data corruption due to the limited electrical isolation. Though these

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 5 / 21

grounding issues could be resolved with system engineering, these earlier versions were less robust than some industrial norms.

Distance between nodes – For most intra-machine applications the 4.3 meter limitation of cabling between 1394 A nodes is not an issue, but limit the scope of application to larger systems or factory level process control where nodes may be tens of meters apart.

RFI interference – In factory and machine environments, the level of radiated electrical noise can be very high when compared to consumer environments where such noise is strictly regulated. In high power applications, such as large motors systems, radiated noise can be intense and potentially poses susceptibility challenges to the earlier 1394 standards.

Each of the above concerns can be mitigated by careful electrical design, and strict attention to system grounding rules. Distributed control systems based on the earlier 1394 A standard have proven to be robust and reliable by adherence to good electrical design, even though usually at a cost of added system components. The distance issues has been overcome in these earlier systems by employing long haul adapters that convert from 1394 twisted pair to plastic or optical signals over greater distances, converting back to 1394 at each end.

Fortunately, the 1394-B standard has eliminated all of the above concerns in its improvements, making the new standard ever more compatible with control system design needs. The simplified electrical isolation scheme adopted by 1394B is also very low cost by comparison to the magnetics approach taken by other buses. By incorporating these enhancements into the consumer standard, 1394-B based systems will be both robust and highly competitive with any specialized industrial DCS network for advanced control.

Comparison to the Predominant Network- Ethernet

Many expect the pervasiveness of Ethernet to be a decisive factor in its selection as the media on which most future distributed control networks will be implemented. This belief is largely based on the wide availability of Ethernet ports on PC and the pre-wired infrastructure support at the corporate enterprise level down to the factory floor. Diagram 2 illustrates the current factory network status and the normal use of Ethernet in the factory.

While some factors favor the incumbency of Ethernet, the installed Ethernet base is less of a factor inside automation m achines, or “intra-machine”. Because of the value placed on performance in machine design, technical factors are decidedly against Ethernet as the logical choice for high performance real-time control.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 6 / 21

Diagram 2 – Factory Communication Hierarchy

File oriented

Ethernet

Domain

Time critical automation bus domain

The main control related problem with traditional Ethernet is the Collision Sense, Multiple

Access, Collision Detection ( “CSMA/CD”) scheme that is used in the vast majority of installed Ethernets. This issue and the potential solutions are summarized by the following abstract from an industrial journal:

“Traditional Ethernet is not realtime friendly. The CSMA/CD scheme makes access inherently non-deterministic. An Ethernet controller connected to a thin Ethernet (coax - 10BASE-2) or a hub (10BASE or 100BASE) is not able to send a packet as long as the medium is busy sending another packet. The Ethernet controller is free to send its packet as soon as the

Ethernet is idle.

The probability for a collision depends on the collision domain, i.e. the range of the Ethernet, and the network load. A traditional CSMA/CD Ethernet with 20% utilization has less than

0.1% collision, while as much as 5% of the packets will experience collisions if the network utilization is above 40%. A CSMA/CD network with 40% utilization is in trouble, and the net data rate will in fact decrease due to collisions if the load is further increased. However, bear in mind, those collisions are not errors. A collision is a normal part of Ethernet networks.

Ethernet switches today may have support for priority containing two or more output queues per port, where the high priority queue(s) are reserved for real time critical data offering

Quality of Service (QoS). How the switch alternates between the priority queues varies from vendor to vendor. Relevant alternating schemes for a switch with two priority queues could be:

Round-robin weighting, i.e. N packets are sent from the high priority queue before one packet is sent from the low priority queue.

Strict priority, i.e. all packets will be transmitted from the high priority queue. Packets from the low priority queue will only be sent in case the high priority queue is empty.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 7 / 21

Note that a high priority packet will be delayed due to a low priority packet if the transmission of this packet is started before the high priority packet enters the output port. The high priority packet will then be delayed by the time it takes to flush the rest of the packet. Worst case will be that the transmission of an Ethernet packet with maximum packet length (1518 bytes) is just started. The extra delay will then be 122ms in case of 10 Mbps, and 1.22 ms in case of

100 Mbps.

Typical worst-case switch latency for a high priority packet in such a system will be a few hundred ms in case of 100 Mbps on each drop link. .”

The latency problem that is inherent in non-switch based Ethernet has drawn many solutions proposed by industrial organizations. Several proprietary designs have arisen to overcome these deficiencies. Most of these schemes are focused on reducing traffic and implementing known performance switch nodes. A recipe for deterministic Ethernet often cited is described in the same article, as follows:

“For example:

100 Mbps with full duplex connectivity is used on all drop links.

The switch is a store-and-forward switch, with a minimum switch latency of 10us.

The switch uses strict priority scheduling.

The real time packet has a length of 200 bytes including preamble, MAC, IP, UDP, payload, Frame Check Sequence (FCS) and minimum Inter Packet Gap (IPG).

The realtime packets are treated as high priority packets, all other packets have less priority.

Up to five other stations may generate similar real time packets of 200 bytes that may be in the same priority queue before the packet enter queue, and cause extra switch delay.

All realtime packets are generated in a cyclic manner.

The worst case switch latency of a realtime packet will then be:

16 us, store-and-forwards.

10 us, minimum switch latency.

122 us, worst case latency due to flushing of a packet with maximum packet length.

80 us, five real time packets already in the same priority queue.

228 us, total.”

Industrial Ethernet, Issue 5, “VoIP Drives Real-Time EtherNet”, Øyvind Holmeide, Tom Skeie

( http://ethernet.industrial-networking.com/articles/i05voipdrives.asp

)

Latency in control systems is inherently bad in that it reduces phase margin and the bandwidth of control. When latency is high or variable, many processes cannot not be controlled in a stable way, especially not when traditional PID, (Proportional Integral

Derivative) type control loops are used. Non-PID type control is very rare, and control schemes that allow variable latency are complex to implement. Therefore, minimized latency is of high value in controls, particularly in high performance, closed loop machine control . As the above example shows, by paying close attention to configuration rules and to using

Ethernet switches with the correct specifications, a decent level of determinism is achievable.

Table 1 below shows comparable latency factors for Ethernet and 1394.

The interesting note is that even after significantly upgrading existing “office grade” to make it

Table 1 - Network Latencies

Fundamental Closed Loop

-

1394A, 400 mbs

Switched Ethernet

10

-6

sec

125

228

6

sec

250

125

8 / 21

456

industrial Ethernet and investing significant care to configure it to provide a degree of determinism, its inherent performance in closed loop real time control is still inferior to the

1394 standard consumer technology. Most of the “deterministic” Ethernet schemes strongly reco mmend keeping network utilization below 30%, but this degrades 100 mhz “fast”

Ethernet to a mere 30 mbs, significantly slower than traditional solutions for real-time control.

At these speeds, the mixing data intensive activities like machine vision or closed loop servo synchronization on a single network is not feasible.

Furthermore, though the above example addresses issues of the physical transport layers in

Ethernet, there are still other performance issues to consider. It is still not inherently a DMA type bus with independence of host load, as is 1394 under OHCI operation. Most of these

“deterministic” schemes are also likely to exhibit a wide range of actual deterministic behavior in real world installations depending on the operating system configuration and loading. The efficiency of implementation of the TCP-IP stack is also a determinant of actual performance.

It is unlikely that embedded web servers will all perform with the same latency characteristics.

Another driver behind Ethernet’s perception as the popular choice for control networks is likely a miscalculation of, or out of date information about, the cost of Ethernet relative to

1394. With the broadening acceptance of 1394 for consumer appliances and PC’s, 1394 could likely have a numeric advantage in absolute volume, since Ethernet volume is primarily driven by corporate levels of demand. With the advent of Windows XP and Mac OS, nearly every home PC will have a 1394 port, ( required by all PC’s that are officially” Windows XP

Ready” ).

The new 1394 B PHY devices with galvanic isolation are already expected to cost less than just the passive isolation magnetics required by Ethernet ports. The 1394 Trade Association estimates that 1394 B node hardware costs will drop to around $5, a cost that is substantially below that of most Ethernet node designs. Regardless of the actual volumes and designs, the relative difference in component cost to implement 1394 relative to Ethernet will be negligible in the near future. Since 1394-B also uses the same mediums, CAT-5 and fiber, total systems costs should be at parity.

Table 2 below compares other technical differences between 1394 and Ethernet, and clearly indicate that 1394 is superior in features and performance for intra-machine controls.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 9 / 21

Table 2 – 1394 and Ethernet Properties Comparison

Data Rates

Bit error rate (1/ errors)

Topologies supported

Max length between hubs

Isochronous mode

1394 A/B

S200/400/800/

1600/3200

10 -12

Tree, Daisy, Star/ hub

100 m

Yes

S10/100/

1000

10

-9

Ethernet

Star / hub

75 m

No

Peer to Peer mode

Yes

No

Protocols

Many, 6 std., including TCPIP

TCPIP, UDP

Media supported

TP, Plastic,

Glass, CAT5

Glass, CAT5

Universal Plug-and-Play

YES

No

It should also be noted that many of the industrial Ethernet standards groups are proposing changes to standard Ethernet that are so gross that the industrial versions will have little compatibility with the incumbent infrastructure. For example:

Several industrial proposals advocate abandoning TCP based protocols at the host level as well in favor of a more controls oriented protocols such as UDP.

The German based Profibus group recently advocated an implementation of industrial Ethernet, which even abandons the standard’s synonymous RJ-45 connector in favor of a DIN type connector.

These significant deviations destroy the attraction and economics of Ethernet as a well defined communication commodity. Imposing non-standard protocols and hardware modifications to “band-aid” Ethernet into being a better vehicle for industrial controls, is likely to result in high cost, proprietary, or narrowly supported industrial niche products that are

Ethernet in name only.

Clearly there are cases in which Ethernet as a control network is a logical choice.

Specifically, the node cost and performance issues do not affect applications with the following characteristics:

Traditional Ethernet applied to monitoring and supervision of sensor network for informational and data logging uses, where update are likely to be sub-hertz collected occasionally or on demand.

Switched Ethernet configured for more deterministic behavior in control applications with requirements less than 1 kilohertz update rate, and bandwidth less than 25 megabits/second.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 10 / 21

Dedicated point to point connections between dedicated function nodes and host applications in which higher response can be carefully controlled.

The applications that meet these criteria are numerous and found in many process applications outside of dedicated machines. Ethernet is very appealing when the existing factory or plant wiring infrastructure supports it without the necessity for upgrades or nonstandard modifications to increase its performance.

However, for intra-machine controls, where these conditions are not true, the superior technical features of 1394, and the relative cost parity with Ethernet, it seems likely that 1394 competes well with Ethernet for high performance applications. By technical rights, 1394 B should also take a significant portion of the general DCS markets, but incumbency is always a tough competitor. However, machine designers have more compelling reasons to make the right technical choice than do consumers.

Augmenting 1394 with Distributed Intelligence

Though 1394 contains all of the desirable attributes of a distributed control network, alone it cannot provide the speed or reaction time that dedicated conventional control subsystems.

Complementing 1394’s resources with low cost microprocessors, especially Digital Signal

Processors ( "DSP" ), can produce the optimal blend of local and distributed capabilities. For example, high speed logic control is currently dominated by dedicate devices known as

Programmable logic controllers (“PLC’s”). Garden variety PLC’s can read the changed state of a switch or input line and produce an associated change in outputs at a rate of 10 kHz, ( or

100 microseconds). Though such rates of reaction are feasible with 1394-B, this may not be the most efficient use of the bus.

Given that DSP costing only a few dollars have been developed for high volume applications such as cell phones and automotive engine controllers, their use to augment those high speed functions in a DCS using 1394 is very attractive. Diagram 2 illustrates a small form factor, ( about credit card size), node processor combining existing 1394 PHY and LLC devices with a DSP, memory and logic. Such a common platform married to a second card containing application or function specific signal conditioning or control functions, such as motor controllers, provides the basis for an intelligent node controller with diverse application.

Diagram 3 – Small form factor control node processor

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 11 / 21

By providing at least two, and optimally three PHY ports on such a module, daisy-chained networks are possible. By linking module to module through the spare ports, a single 1394 cable path threaded through a machine or automation system is adequate to interconnect many nodes. Since the operation of the node can be determined by the code that is loaded or stored on the DSP, many different functions can be serviced by a common node architecture, resulting in high reuse and greater economic volume.

Diagram 4 – 1394 distributed intelligent control nodes

Standard PC

Y

Z

X

Z

FireWire

(IEEE 1394)

4 wire cable

Inputs /

Outputs

Digital

Cameras

Typical 6 axis system using M eta's FireWire architecture

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 12 / 21

Each node should also contain some means for unique identity, either in read-only storage, or with unique serial ID chip technology. Self configuration of networks using a common processor element is thereby facilitated.

Another important advantage of this intelligent node is its inherent scalability. As nodes are added to create increasingly complex systems, those nodes also bring additional processing power to directly control, compress, or augment the computing power of the standard PC.

Many existing distributed control system funnel most of the computing workload back to the

PC, with the consequence that each functional element added depletes available host resources.

This “smart node” approach is represented by the following system design which combines

1394 with DSP based motion control, I/O, and camera nodes. Diagram 4 shows the same system as Diagram 1 implemented using a 1394 network devised by MetaControls with

“smart” nodes for all functions.

The performance requirements of such a machine control system can be very demanding, particularly as regards the synchronization of multiple motion axes. Inherent in an architecture such as this with multiple processors is the lack of a common time base for closed loop control. This problem can be resolved by utilizing the data strobe from 1394 to phase lock real-time clocks of the DSP.

By adopting this strategy, a system as shown in Diagram 4 can perform at the same level as single board systems in which all loop control is performed by a single more powerful DSP.

This specialized utilization of the data strobe lines of 1394 becomes another power tool for control designers who must achieve microsecond levels of synchronization between axes of motion, or in data acquisition applications .

Machine Vision in 1394 Control Networks

The utilization of machine vision for pattern matching, motion guidance, quality control, and identification ( OCR, bar-code ), is commonplace in automation applications. It is an inherent function in most semiconductor and electronic assembly and process automation machines.

The decreasing dimensional scales of advanced consumer and medical products manufactured on such systems drive a need for increased spatial resolution, and toward mega-pixel resolution imagers. In biotechnology automation, the use of color is also an important control parameter monitored and analyzed by machine vision systems.

Chart 2- Video Bit rate at 30 Frame/ sec

Update

3000

2500

2000

1500

1000

500

0

Mono YUV(4:1:1) YUV(4:2:2) RGB true color

640 x 480 1280 x 1024 2000 x 2000

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 13 / 21

The combination of increased spatial resolution and the addition of color data push the limits of networks when applied to distributed machine vision. Chart 2 shows the raw data rate in megabits/second of a single camera with live video update at a 30 frame per second standard in several common modes of color coding ranging from 8 bit grayscale to true color

24 bit RGB. 30 fps is used since this is both the convention for “real-time” video and a performance parameter achieved by many machine vision systems.

Table 3 shows the bandwidth utilization of 1394 A / B at 400 mbs and 800 mbs for VGA and

XVGA resolution cameras. Since video data is carried as an isochronous stream in 1394, it is limited by the bus standard to a maximum use of 80% of total bandwidth available bandwidth.

It is clear that only VGA resolution imagers have enough available bandwidth to support multiple cameras on a single 1394 network link. Even at 1.6 mbs rates, multiple megabit resolution cameras will consume disproportionate bandwidth, particularly in color modes.

Table 3 - % Utilization of 1394 bandwidth

400 mbs 800 mbs

30 frame per second video

SXGA ( 1280 x 1024 pixels)

Mono

YUV(4:1:1)

YUV(4:2:2)

RGB true color

VGA ( 640 x 480 pixels)

bandwidth used*

79%

118%

157%

236%

bandwidth used*

39%

59%

79%

118%

Mono

YUV(4:1:1)

YUV(4:2:2)

RGB true color

18%

28%

37%

55%

9%

14%

18%

28%

*Maximum isochronous channel utilization allowed in 1394 standard is 80%

Some industrial camera and framegrabber manufacturers have pointed to speed as a strong negative case against 1394 for use in machine vision applications. As an alternative, some of these companies have created “Camera Link”. Camera Link is an industrial standard which offers digital video transfer speeds up to 2,300 megabits/sec. Camera Link is based on

National Semiconduct ors’ version of RS-622 ( aka LVDS or Channel Link™). . This specialized parallel bus uses 22 conductors in a point to point topology with a maximum distance of 10 meters. It is presently supported by about a dozen specialized video hardware manufacturers, ( see http://www.pulnix.com/CameraLink5.pdf

for full technical specifications).

Like most other industrial standards, Camera Link’s usage today is measured in thousands of units per year, as compared to the hundreds of millions of nodes 1394 generates. It requires specialized cameras and bus based interface cards, and so the system cost for using it will continue to be expensive relative to 1394. Major operating system integration of Camera Link is unlikely since the interface at the operating system level is proprietary and manufacturer dependent, i.e. it does not conform to any OHCI type of DMA standards. This standard will no doubt fill a niche in the market for certain scientific and extreme applications, but is unlikely to become a broadly accepted standard.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 14 / 21

The case against 1394 in industrial vision based on bandwidth limitations is largely mitigated by a number of practical factors, including:

The vast majority of machine vision applications use 8 bit grayscale data, and so present the smallest data format.

A significant portion of machine vision applications do not need 30 fps performance, even though the camera provides this rate. Rather they operate on “grabbed” single frames that are event triggered. In other words, only a single frame is digitized and transmitted whenever an object comes in view, the movement stage or robot reaches a destination, or a signal is generated requesting an image. In many biotechnology applications involving low light levels, particularly fluorescence detection in genomics and proteomics, images are captured only at few hertz to several seconds per image in order to integrate sufficient light.

Only very specialized megapixel resolution image sensors can achieve 30 frame per second update rates due to silicon limits inherent in standard sensor technologies.

Most 1 k x 1 k or larger resolution sensors have maximum update rates of no more than 15 fps, and the low cost versions megapixel cameras used in consumer digital still cameras operate at full resolution only at maximum update rates of 3 to 5 hertz.

Most machine vision analysis systems are optimized to operate on small portion of the image containing the important data, or “regions of interest” ( “ROI’s” ). These

ROI’s are typically a fraction of the total image, typically less than 10% of the total pixels are processed at a time to achieve high speeds. Global pattern matching and searching is often performed at sub-sampled resolutions to improve speed, and to locate ROI’s to be processed at full resolution.

In machine vision software, the operator interface is the only subsystem that demands “real-time” video at 30 fps. Since human operators cannot typically distinguish display differences much above VGA resolution or chrominance differences between YUV and RGB, there is rarely a need to see the entire image, at full resolution, at full frame rate. Most of the solutions to live, high resolution video on conventional displays implement either sub-sampling, pan and zoom functions, or other ROI schemes in order to limit screen real estate or video update demand. All of these schemes can similarly be implemented at the camera level to reduce the data transmission requirement over 1394.

It is a rare industrial application that requires live video at 30 fps from multiple camera’s to be displayed simultaneously. More typically, a single camera in the network is selected and viewed. In some security applications, multiple cameras are viewed on a single monitor, but mostly these are at resolutions smaller than VGA or at low frame rates.

These factors mitigate the problems of high data rates in machine vision and favor the practicality of 1394 in automated vision applications. This is especially true when the vision system design uses “smart cameras”. As in the control module case, incorporating DSP’s or similar processors embedded in the camera node brings a high level of flexibility and the potential to achieve high performance machine vision at very favorable economics. Smart cameras are very appropriate to data reduction in machine vision applications, since in most cases the machine vision application is only interested in a final result. In most cases, the result of machine vision analysis is no more than a few hundred bytes of data, such as:

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 15 / 21

 the location in X, Y, and RZ in the image of a model or template pattern;

 a measurement of a feature, for example, the diameter of a hole;

Presence or absence of a feature;

OCR or bar-code identification;

 Histogram of intensities in several ROI’s or overall.

Many of these types of data can be extracted directly by a “smart camera” and sent to the supervisory PC as an asynchronous message. This approach to machine vision over 1394 not only extends the number of cameras that can be configured in a single 1394 network, it also opens the possibility of new categories of application that are today only possible with very specialized machine vision systems. In particular, the notion of “visual servo”, or “active alignment” potentially could achieve high performance by utilizing 1394’s peer-to-peer mode, since the latency of a peer-to-peer transaction across 1394 could be very low. By allowing a

“smart camera” to send data directly to motion controllers on the same network, updates of motion trajectories from the camera are possible at high rates. Such capabilities are already required in photonics assembly automation to align fibers and devices. This technique has the ability to substantially improve the motion accuracy of machine mechanisms by employing the machine vision system to be a “visual encoder” of the actual end effector or target objects. Nearly all existing semiconductor and electronics assembly and test machines today use “dead reckoning” based on highly accurate mechanics that are extremely costly to manufacture. High speed visual servoing with a 1394 network could radically alter design rules for high precision machinery, making such machines much lower cost to build.

Diagram 5 shows a design for a 1394 “smart camera” that would allow many high resolution cameras to be supported on a single 1394 network. With both DSP and general purpose computing engines embedded, such a smart camera can be part of a distributed control network in which only minimal amounts of full resolution video needs to be transferred.

Economics also favor this type of architecture as such DSP / RISC devices are already used in high volume consumer applications such as digital still cameras, DVD’s, and advanced 3-G cell phones.

A logical software implementation in a “smart camera” would be to include a flexible library of image processing and image analysis tools. Such a library that embedded in or downloaded to a smart camera over 1394 would logically include the following functions:

Programmable ROI selection, i.e. sending small windows of the full image,

Selectable sub-sampling, for example XVGA to VGA / CIF,

Selectable color encoding such as YUV 4:1:1 or 4:2:2,

 General purpose image processing tools such as the Intel®

IPLib libraries supporting MMX functionality on PC’s,

OCR and barcode algorithms, and

General pattern matching algorithms.

A few of these functions are supported by the 1394 DCAM standard for industrial cameras.

By definition, all DCAM compliant cameras are inherently “smart” and capable of responding to a number of application specific functions that allow efficient use of 1394 bandwidth. A superset of DCAM or the use of its extensibility features for new functions would allow the concept of “open smart cameras” to be a standard of the 1394 architecture. Such a open

DCAM concept would no doubt have significant application to consumer and commercial imaging applications as well as to machine vision.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 16 / 21

CCD / CMOS timing and

Front-End Analog

Processor /MUX

Video Data

Controller

SDRAM

Controller

External

Memory

Controller

External Co-

Processor

Interface

Image

Processor

DSP with IPLIB

Functions

System Controlller

RISC

Processor

Windows CE 3.0

1394

ISOCH.

Controller

Diagram 5

Real-time nodes on 1394

In addition to the functions of motion control, machine vision, and I/O, most complex machines need significant realtime coordination and supervision. In general, DSP OS’s and kernels provide hard real-time deterministic performance with few microsecond responsive.

General purpose PC OS’s are not suitable for most hard real time requirements, but they do provide the necessary infrastructure to support distributed computing.

All of the pieces are rapidly coming together to support true distributed real-time computing on 1394 networks. Here are some of the major developments that enable this direction:

The availability of TCP/IP over 1394 makes the implementation of distributed computing schemes such as DCOM, .NET, and Corba as fully symmetric over 1394 as over any other IP network. In Windows XP, Microsoft support TCP/IP over 1394 as a default.

Low cost real-time operating systems that can be installed in small footprint embedded processors are now available from many suppliers including Microsoft’s

Windows CE, Venturcom’s RTX for embedded 2000 and XP, and others. None of the existing real-time embedded OS’s have full 1394 capabilities yet, but it is on the roadmap of the main suppliers, and available through 3 rd parties today.

Portable computing engines for PDA and laptops offer compact solutions at low power enough to be driven by 1394. Thes e CPU’s, such as StrongArm ®

and

Pentium ® 3-M ca be both real time and general purpose.

 Modular embedded OS’s are now more easily configured to be headless and diskless, so be more environmentally and economically useful in industrial applications.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 17 / 21

In most industrial control systems, there will usually be a PC to act as the user supervisory and maintenance interface. This PC will be the logical bridge to the enterprise, and this bridge will most certainly be Ethernet. At this level, the transactions are files defining recipes, execution sequences, materials management and scheduling. On the supervisory PC, full blown graphical interfaces will continue to gain ground over the conventional push button or dedicated HMI device now prevalent in factories. It is also clear that behind these user and enterprise PC’s will be display-less, disk-less real-time engines devoted to the high speed and hard real-time transactions inherent in controls. The bridge between the full blown PC and the embedded real-time version may be Ethernet or 1394 since real-time determinism is not usual critical at this level of most automation system designs. Diagram 6 illustrates a system with such embedded real-time engines to create a scalable real-time environment .

Convergence of Controls on 1394

Like the convergence of sound, images, video, text , data, and graphics in the multi-media sphere, 1394 offers the promise of the convergence of control functions into a single media.

Multimedia functionality and performance needs closely parallels the industrial requirements for the control and monitoring of analog real world values associated with force, temperature, flow, intensity, capacitance, etc. Data acquisition, the mainstay of a former IEEE standard,

IEEE-488 or GPIB, is clearly well suited to handling millions of high resolution samples per second from multiple channels. The 1394 standard for GPIB over 1394 is already adopted and gaining popularity among instrument makers ( see http://www.1394ta.org/Download/Technology/Specifications/ ) . The integration of data acquisition with real time control systems is logical and required step for complex process systems in such applications as semiconductor processing and biotechnology. Coupled with closed loop control of motion and machine vision, the industrial environment offers a rich array of data that is ideally suited to 1394.

MetaControls has developed and deployed such complex and multi-variable control systems based on 1394-A. Table 4 shows the maximum configurations that are possible with the

MetaControls 1394 machine control architecture. The practical need for such complex configurations is far below these limits for even very complex manufacturing solutions. With the conversion to 1394B and the implementation of even more powerful DSP’s and embedded processors, there would be few real world applications in controls that could not be addressed by a 1394 based system.

Table 4 – MetaControls 1394 Maximum Configurations

Maximum

Configuration*

Total nodes

Motion Control Axes

Digital I/O

Analog input channels

Analog output channels

PWM output channels

Total DSP MIPS

63

126

4032

504

126

126

2520

Total other CPU's

Total cameras

30

60

*not in concurrent use

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 18 / 21

Diagram 6 illustrates a complex semiconductor assembly machine designed entirely with

1394 based controls and machine vision. Such machines would typically have more than 16 axes of motion, hundreds of digital I/Os, dozens of analog sensors, 4 to 10 cameras, and require multiple Pentium class processors for coordination. All of the requirements for such a machine can be achieved with 1394-A based products today.

The software integration of these many real world variables and control loops is a daunting, complex task. It is made easier by the tight coupling of 1394 with mainstream operating systems such as Microsoft Windows 2000 / XP and Apple OS. MetaControls has developed an integrated robotic control software system oriented primarily to plug-and-play 1394 automation networks, called Visual Machines™. The following image is of a graphical configuration tool of Visual Machines which eases the mapping of logical software functions onto plug-and-play 1394 control modules in a machine configuration.

Other industrial automation and instrumentation companies are adapting their software systems to support 1394 networks. Among these are lead edge companies including National

Instruments ( www.ni.com

), Adept Technology ( www.adept.com

) and others.

For more information about the 1394 control and digital camera products of MetaControl

Technologies Inc. see www.metacontrols.com

.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 19 / 21

Diagram 6 – MetaControls 1394 Architecture applied to Semiconductor Machine

Conclusion

1394 is a strong technical fit for advanced distributed control systems. Its performance and technical features make it better suited for intra-machine real-time control than other popular networks such as Ethernet which dominate the enterprise network of the factory. Economic factors that previously favored proprietary Ethernet methods gaining a significant share of the intra-machine distributed control function are now highly immaterial as the volume of 1394 devices explode, and the cost of 1394 nodes drops to parity or below the cost of Ethernet at the systems level. Only 1394 has the potential to integrate motion control, machine vision, data acquisition, and I/O simultaneously on a single network with the high performance needed in competitive machine design.

The adoption of the 1394 Multimedia Standard Protocol for Instrument and Control

Applications in February 2000 laid the foundation for the movement of controls applications to

1394. This specification and the corresponding DCAM specification for industrial cameras, can be readily expanded and enhanced to cover the full range of technologies needed to support the most complex control implementations.

Continuing innovations will bring further convergence of PC based automation software with

DSP control modules and smart cameras running on 1394 networks. The impact of these innovations on the industrial control field is likely to be disruptive and will enable many new applications due to the flexibility and improved economics of this new control architecture.

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 20 / 21

Contact information:

The author: Edison Hudson

Edison@metacontrols.com

MetaControl Technologies Inc.

507 Airport Blvd., Unit 107

Morrisville, North Carolina 27560

919-459-6383

FireWire is a registered trademark of Apple Computer

Channel Link™ is a registered trademark of National Semiconductor, Inc.

Visual Machines is a trademark of MetaControl Technologies Inc. and Infotech Automation

AG.

StrongArm® and Pentium® are registered trademarks of Intel Corporation

Distributed Machine Control with 1394 E. Hudson 1394 Devcon June 25, 2002 21 / 21

Download