`
`Page 1 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`The diagrams and annotations included herein are for illustration purposes only and are not intended to
`necessarily represent precise software architectures.
`
`Claim.Element
`
`Analysis
`
`“Control command(s)” has been construed to mean “command codes in hardware language,
`which instruct a motion control device to perform motion control operations.”
`
`On information and belief, systems based upon ABB’s Industrial System
`800xA are systems for generating a sequence of control commands for
`controlling a selected motion control device (including, but not limited to,
`an AC500, ACS800, and IRC5) selected from a group of supported motion
`control devices, as depicted in the exemplary illustrations below.
`
`11
`
`.
`A system for
`generating a
`sequence of
`control
`commands for
`controlling a
`selected motion
`control device
`selected from a
`group of
`supported
`motion control
`devices,
`comprising:
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation
`Technologies, p. 2. (annotated)
`
`Systems based upon ABB’s Industrial System 800xA include a System
`Connect, such as PLC Connect, which is used to communicate with
`controllers via OPC DA.
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation
`Technologies, p. 2.
`
`On information and belief, other System Connect products operate similar
`to PLC Connect.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 1 of 50
`
`Page 2 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`The term “motion control operation(s)” has been construed to mean “abstract operations (such as GET
`POSITION, MOVE RELATIVE, or CONTOUR MOVE) used to perform motion control.”
`
`The term “primitive operation(s)” has been construed to mean “motion control operation(s), such as
`GET POSITION and MOVE RELATIVE, necessary for motion control, which cannot be simulated using a
`combination of other motion control operations.”
`
`ABB Systems, including systems based upon ABB’s Industrial System 800xA,
`comprise a set of motion control operations where each motion control operation
`is either a primitive operation the implementation of which is required to operate
`motion control devices and cannot be simulated using other motion control
`operations or a non-primitive operation that does not meet the definition of a
`primitive operation. These include system implementations that support PLC
`Open, such as those shown below.
`
`1.1
`a set of
`motion control
`operations,
`where each
`motion control
`operation is
`either a
`primitive
`operation the
`implementation
`of which is
`required to
`operate motion
`control
`devices and
`cannot be
`simulated
`using other
`motion control
`operations or
`a non-
`primitive
`operation that
`does not meet
`the definition
`of a primitive
`operation;
`
`ABB Automation Products – AC500, AC31, CP400, WISA Catalog, 2009, ABB Automation Products, p. 8.
`
`For example, ABB’s PLCopen compliance statement shows support for many
`motion control operations including ‘MOVE RELATIVE’ and ‘GET POSITION’.
`
`ABB [PLCopen] Compliance – Function blocks for motion control – Version 1.1. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 2 of 50
`
`Page 3 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`ABB Documentation shows support for many non-primitive motion control
`operations as implemented, for example, in their support of PLCopen and also for
`example with what are called ‘calculated softpoints’ – which are softpoints created
`by combining two or more ‘other’ softpoints.
`
`PLC Connect Web Site, ABB Automation Technologies, Product Guide > Control Systems > 800xA > System > 800xA PLC Connect >
`Tools.
`
`PLC Connect Web Site, ABB Automation Technologies, Product Guide > Control Systems > 800xA > System > 800xA PLC Connect >
`Tools. (annotated)
`
`ABB supports motion control operations in their PLC’s (example: AC500) and
`Drives (example: ACS350).
`
`High performance machinery drive, ABB, Product Guide > Drives > Low Voltage AC Drives > Machinery Drives > High Performance
`Machinery Drives.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 3 of 50
`
`Page 4 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`ABB industrial drives – ACS800, multidrives 1.1 to 5600 kW Catalog, 2010, ABB Automation Products, p. 43.
`
`ABB also supports motion control operations in their PLC’s and Robots (IRC5).
`
`ABB Product Guide > Robotics > RobotStudio Community > Developer Tools web site, 2010, ABB.
`
`ABB Integrated PLC AC500 in IRC5, Slide 14.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 4 of 50
`
`Page 5 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`Several example ABB PLC/Drive implementations that use motion control
`operations are shown below.
`
`Flexible factory automation from a global supplier ABB offers a broad motion control system with PLCs, drives, motors and
`accessories, ABB, 2009, p. 2.
`
`Flexible factory automation from a global supplier ABB offers a broad motion control system with PLCs, drives, motors and
`accessories, ABB, 2009, p. 2.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 5 of 50
`
`Page 6 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`Flexible factory automation from a global supplier ABB offers a broad motion control system with PLCs, drives, motors and
`accessories, ABB, 2009, p. 3.
`
`Several example ABB PLC/Robot implementations that use motion control
`operations are shown below.
`
`ABB Integrated PLC AC500 in IRC5, Slide 24.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 6 of 50
`
`Page 7 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`ABB Integrated PLC AC500 in IRC5, Slide 25.
`
`ABB Integrated PLC AC500 in IRC5, Slide 27.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 7 of 50
`
`Page 8 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`1.2
`a core set
`of core
`driver
`functions,
`where each
`core driver
`function is
`associated
`with one of
`the
`primitive
`operations;
`
`The term “driver function(s)” has been construed to mean “abstract functions that are associated with
`primitive or non-primitive motion control operations and may define parameters necessary to
`implement such operations.”
`
`The term “core driver functions” has been construed to mean “driver functions associated with
`primitive motion control operations.”
`
`On information and belief, systems based upon ABB’s Industrial System 800xA
`comprise a core set of core driver functions, where each core driver function is
`associated with one of the primitive operations. These driver functions include,
`but are not necessarily limited to, certain OPC functions including IOPCSyncIO
`read and write functions. First, on information and belief, the ABB Connectivity
`Server in Industrial System 800xA communicates with drivers using for example
`OPC DA. See also the OPC Alarms and Event standard.
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation Technologies, p. 2.
`(annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 8 of 50
`
`Page 9 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`Second, the OPC DA specification defines functions that are associated with
`primitive motion control operations.
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 18. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 9 of 50
`
`Page 10 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`See example OPC tags shown below.
`
`DriveWare User’s Manual – Drive Window 2, 1/7/2004, ABB, p. 2-41. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 10 of 50
`
`Page 11 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`1.3
`an extended
`set of
`extended
`driver
`functions,
`where each
`extended
`driver
`function is
`associated
`with one of
`the non-
`primitive
`operations;
`
`The term “driver function(s)” has been construed to mean “abstract functions that are associated
`with primitive or non-primitive motion control operations and may define parameters necessary to
`implement such operations.”
`
`The term “primitive operation(s)” has been construed to mean “motion control operation(s), such as
`GET POSITION and MOVE RELATIVE, necessary for motion control, which cannot be simulated using a
`combination of other motion control operations.”
`
`On information and belief, systems based upon ABB’s Industrial System 800xA
`comprise an extended set of extended driver functions, where each extended
`driver function is associated with one of the non-primitive operations. These
`driver functions include, but are not limited to, certain OPC functions including
`IOPCAsyncIO read and write functions. Again, on information and belief, the
`ABB Connectivity Server in Industrial System 800xA communicates with
`drivers using for example OPC DA. And the OPC Specification supports many
`extended driver functions that are not essential for motion control, yet can
`easily be simulated.
`
`OLE for Process Control Data Access Custom Interface Standard, Version 2.05A, page 74. (annotated)
`
`OLE for Process Control Data Access Custom Interface Standard, Version 2.05A, page 111. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 11 of 50
`
`Page 12 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`ABB DriveWare DriveWindow 2 User’s Manual, page 10-20. (annotated)
`
`“The Value and Quality are the values that the [OPC] server obtains from the device at a periodic rate sufficient to accommodate
`the specified UpdateRate. If the Quality has changed from the Quality last sent to the client [e.g. the Motion Component], then
`the new value and quality will be sent to the client through the IOPCDataCallback::OnDataChange method, and the cache of the
`server should be updated with the acquired value and quality. If the Quality has NOT changed from the Quality last sent to the
`client, the server should compare the acquired value for a change that exceeds the Deadband criteria. If the change in value
`exceeds the deadband criteria, then the new value and new quality will be sent to the client through the
`IOPCDataCallback::OnDataChange method, and the cache of the server should be updated with the acquired value and quality.”
`OLE for Process Control, Data Access Custom Interface Standard, Version 2.05A, Page 26 (web link)
`
`For example, pursuant to an asynchronous read function (IOPCAsyncIO read),
`when the quality has not changed from the previous quality, and the data value
`(e.g. the motor position) has not changed outside the deadband specified, no
`data is sent to the client. Unlike a primitive motion operation that would for
`example read the position value from a single axis, the extended functionality
`offered provides a ‘more advanced’ and more efficient manner for which to read
`the position value of a single axis whereby only changed position values are
`sent to the client thus freeing the client from receiving redundant data that has
`not changed.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 12 of 50
`
`Page 13 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`As another example, ABB offers calculated softpoints that are ‘calculated’ using
`one or more other signals (either emulated or as collected from the controller).
`
`Industrial IT Compact HMI 800 System Version 4.1 – Product Guide, 2005, ABB Automation Technologies, p. 33. (annotated)
`
`Industrial IT Extended Automation System 800xA – System Version 3.1, System Guide, 2004, ABB Automation Technologies, p.
`139.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 13 of 50
`
`Page 14 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`The following is an example of a calculated softpoint.
`
`Industrial IT Extended Automation System 800xA – System Version 3.1, System Guide, 2004, ABB Automation Technologies, p.
`140.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 14 of 50
`
`Page 15 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`1.4
`a set of
`component
`functions;
`
`The term “component function” has been construed to mean “a hardware independent instruction that
`corresponds to an operation performed on or by a motion control device.”
`On information and belief, systems based upon ABB’s Industrial System 800xA
`comprise a set of component functions, including but not limited to the
`component functions available through, for example, the COM Interfaces, PLC
`Connect interfaces and other application programming interfaces that
`communicate with the Connectivity Server.
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation Technologies, p. 2.
`(annotated)
`
`PLC Connect Web Site, ABB Automation Technologies, Product Guide > Control Systems > 800xA > System > 800xA PLC Connect >
`Tools. (annotated)
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation Technologies, p. 2.
`(annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 15 of 50
`
`Page 16 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`ABB, Industrial IT Compact HMI 800 System Version 4.1, Product Guide, PLC Connect, p. 33-34, (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 16 of 50
`
`Page 17 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`On information and belief, Variable Access functions are provided through the
`Variable Access Interface.
`
`ABB IndustrialIT 800xA –System PLC Connect System Version 5.0 –Configuration, page 73. (annotated)
`
`On information and belief, Variable Access functions operate on PLC Connect
`signals.
`
`ABB IndustrialIT 800xA –System PLC Connect System Version 5.0 –Configuration, page 80.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 17 of 50
`
`Page 18 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`The Variable Access Interface provides read, write, and event support (among
`others) for various hardware independent PLC Connect signals. The PLC Connect
`signals are defined within PLC Connect and map to actual OPC items.
`
`ABB IndustrialIT 800xA –System PLC Connect System Version 5.0 –Configuration, page 20. (annotated)
`
`ABB IndustrialIT 800xA –System PLC Connect System Version 5.0 –Configuration, page 30. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 18 of 50
`
`Page 19 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`1.5
`component
`code
`associated
`with each
`of the
`component
`functions,
`where the
`component
`code
`associates
`at least
`some of the
`component
`functions
`with at
`least some
`of the
`driver
`functions;
`
`The term “component code” has been construed to mean “software code in the motion control
`component that associates at least some of the component functions with at least some of the driver
`functions.”
`
`The term “motion control component” has been construed to mean “a binary software module that
`associates component functions with driver functions by calling the driver functions.”
`
`On information and belief, systems based upon ABB’s Industrial System 800xA
`comprise component code associated with each of the component functions,
`where the component code associates at least some of the component functions
`with at least some of the driver functions. Specifically, the component code is
`in the connectivity server (and/or real time database software) and associates
`component functions (as described above) called by application programs
`through one or more application programming interfaces with driver functions
`(as described above) called by the real time database and/or connectivity server
`(which comprises the motion control component) on the software driver(s),
`which may be part of the connectivity server. On information and belief,
`examples of the connectivity server associating the component functions with
`the driver functions include the real-time database, Aspect Objects, and other
`data structures.
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation Technologies, p. 2.
`(annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 19 of 50
`
`Page 20 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation Technologies, p. 2.
`(annotated)
`
`Industrial IT Compact HMI 800 System Version 4.1 – Product Guide, 2005, ABB Automation Technologies, p. 33. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 20 of 50
`
`Page 21 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`1.6
`a set of
`software
`drivers,
`where
`
`The term “software driver(s)”/“drivers” has been construed to mean “a controller dependent
`software module that supports some core driver functions and is used to control a hardware device
`or group of related hardware devices.”
`
`On information and belief, systems based upon ABB’s Industrial System 800xA
`comprise a set of software drivers. For example, on information and belief PLC
`Connect uses drivers that comprise driver code, implement driver functions and
`are associated with one or of the hardware devices.
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation Technologies, p. 2.
`
`Industrial IT Compact HMI 800 System Version 4.1 – Product Guide, 2005, ABB Automation Technologies, p. 33.
`
`PLC Connect Web Site, ABB Automation Technologies, Product Guide > Control Systems > 800xA > System > 800xA PLC Connect >
`Tools. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 21 of 50
`
`Page 22 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`The term “software driver(s)”/“drivers” has been construed to mean “a controller dependent
`software module that supports some core driver functions and is used to control a hardware device or
`group of related hardware devices.”
`
`On information and belief, systems based upon ABB’s Industrial System 800xA
`comprise software drivers that are associated with one motion control device in
`the group of supported motion control devices. These drivers include all OPC-
`compliant drivers for motion control devices supported in Industrial System
`800xA systems.
`
`1.6.i
`each
`software
`driver is
`associated
`with one
`motion
`control
`device in
`the group of
`supported
`motion
`control
`devices,
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation Technologies, p. 2.
`(annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 22 of 50
`
`Page 23 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`On information and belief, all ABB Drives, PLCs, and Robot Controllers support
`OPC.
`
`The information below shows OPC support for at least the following ABB Motion
`Control Devices:
` ABB AC500 PLC (presumably with ACS500)
` ABB ACS800 Multi Drive
` ABB IRC5 Robot Controllers
`
`ABB AC500 has OPC support and Motion Control
`
`ABB Automation Products – AC500, AC31, CP400, WISA Catalog, 2009, ABB Automation Products, p. 1.
`
`ABB AC500 OPC Support
`
`ABB Automation Products – AC500, AC31, CP400, WISA Catalog, 2009, ABB Automation Products, p. 4. (annotated)
`
`ABB AC500 Motion Control Support
`
`ABB Automation Products – AC500, AC31, CP400, WISA Catalog, 2009, ABB Automation Products, p. 8.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 23 of 50
`
`Page 24 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`ABB ACS800 has OPC support and Motion Control
`
`ABB industrial drives – ACS800, multidrives 1.1 to 5600 kW Catalog, 2010, ABB Automation Products, p. 1.
`
`ABB ACS800 OPC Support
`
`ABB industrial drives – ACS800, multidrives 1.1 to 5600 kW Catalog, 2010, ABB Automation Products, p. 43. (annotated)
`
`ABB ACS800 Motion Control Support
`
`ABB industrial drives – ACS800, multidrives 1.1 to 5600 kW Catalog, 2010, ABB Automation Products, p. 37.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 24 of 50
`
`Page 25 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`ABB IRC5 Robot Controller has OPC support and Motion Control
`
`IRC5 Industrial Robot Controller Data Sheet, April 2007, ABB Automation Technology Products, p. 1.
`
`ABB IRC5 Robot Controller OPC Support
`
`RobotWare Industrial Robot Controller Software IRC5, 2004, ABB Automation Products, p. 3. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 25 of 50
`
`Page 26 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`The term “driver code” has been construed to mean “code associated with a hardware device or
`group of related hardware devices, which helps generate commands necessary to perform motion
`control operations associated with at least some driver functions.”
`
`On information and belief, the software drivers in ABB’s Industrial System 800xA
`systems comprise driver code for implementing the motion control operations
`associated with at least some of the driver functions. For example, on
`information and belief, the ACS800 Driver is an example hardware driver that
`has OPC support that is implemented using software driver code.
`ACS800 Driver
`
`1.6.ii
`each
`software
`driver
`comprises
`driver code
`for
`implementing
`the motion
`control
`operations
`associated
`with at
`least some
`of the
`driver
`functions,
`and
`
`DriveWare User’s Manual – Drive Window 2, 1/7/2004, ABB, p. 2-38. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 26 of 50
`
`Page 27 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`The ACS800 supports various OPC tags that are associated with motion control
`operations.
`
`DriveWare User’s Manual – Drive Window 2, 1/7/2004, ABB, p. 2-40.
`
`DriveWare User’s Manual – Drive Window 2, 1/7/2004, ABB, p. 2-41. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 27 of 50
`
`Page 28 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`On information and belief, in ABB’s Industrial System 800xA systems,
`one of the software drivers in the set of software drivers is a selected software
`driver, where the selected software driver is the software driver associated with
`the selected motion control device. Selection can occur during configuration
`and/or during system operation. For example, the instructions below reflect
`selection of the driver for a Compact HMI 800.
`
`1.6.iii
`one of the
`software
`drivers in
`the set of
`software
`drivers is a
`selected
`software
`driver,
`where the
`selected
`software
`driver is
`the software
`driver
`associated
`with the
`selected
`motion
`control
`device;
`
`Industrial IT Compact HMI 800, System Version 4.1 – Getting Started, ABB, 2005, pp. 34-35. (annotated)
`
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 28 of 50
`
`Page 29 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`The term “application program” has been construed to mean “a software program designed to handle
`specific tasks.”
`
`On information and belief, systems based on ABB’s Industrial System 800xA
`comprise one or more application programs comprising a series of component
`functions, where the application program defines the steps for operating motion
`control devices in a desired manner. Specifically, the application programs are
`the various software programs comprising component function calls that can be
`made on the Connectivity Server.
`
`1.7
`an
`application
`program
`comprising a
`series of
`component
`functions,
`where the
`application
`program
`defines the
`steps for
`operating
`motion
`control
`devices in a
`desired
`manner; and
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation Technologies, p. 2.
`(annotated)
`
`On information and belief, applications within the IndustrialIT System 800xA
`include the Aspect Server and Compact HMI 800.
`
`PLC Connect integrates ABB and third-party controllers with IndustrialIT System 800xA, 2004, ABB Automation Technologies, p. 1.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 29 of 50
`
`Page 30 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`Compact HMI 800 is an example of one such application, as shown below.
`
`Industrial IT Compact HMI 800, System Version 4.1 – Getting Started, ABB, 2005, pp. 19.
`
`Industrial IT Compact HMI 800, System Version 4.1 – Getting Started, ABB, 2005, pp. 78.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 30 of 50
`
`Page 31 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`On information and belief, additional (but not limited to) application program(s)
`included in each of the products listed below provide similar functionality to that
`described for the products herein:
`Product
`Panel 800
`Industrial IT System 800xA Operations
`System 800xA Smart Client
`System 800xA Engineering Tools
`System 800xA
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 31 of 50
`
`Page 32 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`“Control command(s)” has been construed to mean “command codes in hardware language, which
`instruct a motion control device to perform motion control operations.”
`
`The term “motion control component” has been construed to mean “a binary software module that
`associates component functions with driver functions by calling the driver functions.”
`
`On information and belief, systems based on ABB’s Industrial System 800xA
`comprise a motion control component for generating a sequence of control
`commands for controlling the selected motion control devices based on the
`component functions of the application program, the component code associated
`with the component functions, and the driver code associated with the selected
`software driver. On information and belief, the OPC DA server selected transmits
`command codes to the associated motion control device to read and write data as
`well as set-up device based (if supported) event handlers for events and alarms
`based on control exerted by the motion control component. SEE 1.4, 1.5, 1.6 and
`1.7 above.
`
`1.8
`a motion
`control
`component
`for
`generating
`the sequence
`of control
`commands for
`controlling
`the selected
`motion
`control
`device based
`on the
`component
`functions of
`the
`application
`program, the
`component
`code
`associated
`with the
`component
`functions,
`and the
`driver code
`associated
`with the
`selected
`software
`driver.
`
`Industrial IT Compact HMI 800, System Version 4.1 – Getting Started, ABB, 2005, pp. 78.
`
`ABB Integrated PLC AC500 in IRC5, Slide 24.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 32 of 50
`
`Page 33 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`On information and belief, additional (but not limited to) application program(s)
`included in each of the products listed below provides similar functionality to
`that described for the products herein:
`Product
`Panel 800
`Industrial IT System 800xA Operations
`System 800xA Smart Client
`System 800xA Engineering Tools
`System 800xA
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 33 of 50
`
`Page 34 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`Claim.Element
`
`Analysis
`
`On information and belief, the software drivers (discussed above) comprise driver
`code for implementing all of the core driver functions, which are required by the
`OPC Specification.
`
`2
`2.
`A system as
`recited in
`claim 1, in
`which the
`software
`drivers
`comprise
`driver code
`for
`implementing
`all of the
`core driver
`functions.
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 9. (annotated)
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 11. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 34 of 50
`
`Page 35 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 27. (annotated)
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 18. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 35 of 50
`
`Page 36 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`Claim.Element
`
`Analysis
`
`3
`3.
`A system as
`recited in
`claim 2, in
`which the
`software
`drivers
`comprise driver
`code for
`implementing at
`least some of
`the extended
`driver
`functions.
`
`On information and belief, the software drivers (discussed above) comprise
`driver code for implementing at least some of the extended driver
`functions, as required by the OPC Specification.
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 27. (annotated)
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 18. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 36 of 50
`
`Page 37 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`Claim.Element
`
`Analysis
`
`See claim 3 above.
`
`On information and belief, extended driver functions exist that do not have
`associated driver code.
`
`4
`4.
`A system as
`recited in
`claim 3, in
`which:
`4.1
`non-
`supported
`extended
`driver
`functions
`are
`extended
`driver
`functions
`having no
`driver code
`associated
`therewith;
`and
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 98.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 37 of 50
`
`Page 38 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`And, on further information and belief, the motion control component (discussed
`above) generates control commands based on the driver code associated with a
`combination of core driver functions to emulate the motion control operations
`associated with at least some of the non-supported extended driver functions.
`
`4.2
`the motion
`control
`component
`generates
`control
`commands
`based on the
`driver code
`associated
`with a
`combination
`of the core
`driver
`functions to
`emulate the
`motion
`control
`operations
`associated
`with
`at least
`some of the
`nonsupported
`extended
`driver
`functions.
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 85.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 38 of 50
`
`Page 39 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`Claim.Element
`
`Analysis
`
`See Claim 4 above.
`
`On information and belief, systems based on ABB’s Industrial System 800xA for
`example comprise an extended function pointer table maps the non-supported
`extended driver functions of the combination of core driver functions employed to
`emulate the non-supported extended driver functions, such as the function
`pointer table structure used in COM and OLE, as set forth below.
`
`5
`5.
`A system as
`recited in
`claim 4,
`further
`comprising:
`5.1
`an extended
`function
`pointer
`table that
`maps the
`non-
`supported
`extended
`driver
`functions
`to the
`combination
`of core
`driver
`functions
`employed to
`emulate the
`non-
`supported
`extended
`functions;
`and
`
`What OLE Is Really About, Kraig Brockschmidt, July 1996, pp. 17-18.
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 39 of 50
`
`Page 40 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 27. (annotated)
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 18. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 40 of 50
`
`Page 41 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September 14, 2012
`
`5.2
`the motion
`control
`component
`generates
`the control
`commands
`further
`based on
`the
`contents of
`the
`extended
`function
`pointer
`table.
`
`On information and belief, the motion control component (discussed above)
`generates control commands further based on the contents of the extended
`function pointer table (discussed above in 5.1).
`
`OLE for Process Control Data Access Standard (UPDATED) Version 1.0A, 9/11/1997, OPC Foundation, p. 27. (annotated)
`
`PRELIMINARY INFRINGEMENT CONTENTIONS – PATENT RULE 3-1
`
`Page 41 of 50
`
`Page 42 of 51
`
`
`
`U.S. Patent No. 6,516,236
`
`ABB
`
`September