Opinion
CASE NO. 2:15-CV-1543-JRG-RSP
10-05-2016
CLAIM CONSTRUCTION MEMORANDUM AND ORDER
On August 24, 2016, the Court held a hearing to determine the proper construction of disputed claim terms in United States Patents No. 5,619,409, 5,636,124, 5,812,133, 5,818,711, 5,844,795, 5,845,149, 5,940,293, 6,138,174, 6,247,168, 6,675,226, 6,816,817, 6,978,225, 7,130,704, 7,143,366, 7,693,585, 7,716,567, and 7,836,122. Having reviewed the arguments made by the parties at the hearing and in their claim construction briefing (Dkt. Nos. 63, 67, and 68), having considered the intrinsic evidence, and having made subsidiary factual findings about the extrinsic evidence, the Court hereby issues this Claim Construction Memorandum and Order. See Phillips v. AWH Corp., 415 F.3d 1303, 1314 (Fed. Cir. 2005); Teva Pharm. USA, Inc. v. Sandoz, Inc., 135 S. Ct. 831, 841 (2015).
Citations to documents (such as the parties' briefs and exhibits) in this Claim Construction Memorandum and Order refer to the page numbers of the original documents rather than the page numbers assigned by the Court's electronic docket unless otherwise indicated.
Table of Contents
I. BACKGROUND ....................................................................................................................... 6
II. LEGAL PRINCIPLES ........................................................................................................... 6
III. THE PARTIES' STIPULATED TERMS ......................................................................... 10
IV. CONSTRUCTION OF DISPUTED NON-PREAMBLE TERMS AS TO WHICH THERE IS NO 35 U.S.C. § 112 , ¶ 6 ALLEGATION .............................................................. 10
A. "breakpoint value" .............................................................................................................. 11
B. "breakpoint signal" .............................................................................................................. 14
C. "bus" .................................................................................................................................... 17
D. "execute once to completion" ............................................................................................. 18
E. "event" ................................................................................................................................. 21
F. "a portion of each scheduled task . . . from the portions starting point to its completion point" .................................................................................................................................. 22
G. "address monitor" ............................................................................................................... 22
H. "to alter the display of the graphical element when an address of the electronic memory is accessed during execution of the stored program" ......................................................... 23
I. "to display an indication of the graphical element together with a time of accessing of an address of the electronic memory when an address of the electronic memory from the second address area is accessed during execution of the stored program" ................... 25
J. "simultaneously displaying an executable program in a remote processor and a plurality [of] program edits input at a workstation" .......................................................................... 26
K. "monitoring the memory location to record the time of a change in the data in the memory location" ............................................................................................................... 28
L. "entering an I/O map table into the controller," "software address," and "physical network address" ................................................................................................................. 30
M. "sequences of axis functions" ............................................................................................ 35
N. "generating a substantially complete real time machine language program" and "producing a substantially complete real time machine language program for controlling axis functions" .................................................................................................. 37
O. "A production object for an object-oriented programming language" ............................... 39
P. "a first module" and "a second module" ............................................................................. 39
Q. "multi-network interface" ................................................................................................... 41
R. "identity data representative of an identity of the respective component in the system," "component designation data," and "component data" ...................................................... 45
S. "generating a series of user viewable monitoring displays of the parameters by component based upon the sensed parameters and the identity data, the monitoring displays including graphical presentations of parameter levels," "generating a user viewable monitoring display of the parameters by component based upon the sensed parameters and the identity data," and "a monitoring station configured cyclically to access the parameter data via the network link and to generate a user viewable representation of the parameter data including a plurality of virtual meters displaying current and historical levels of selected parameters for each component" ......................... 46
T. "an automation interface component that facilitates . . ." ................................................... 47
U. "editing the control program while in the industrial controller" ......................................... 50
V. "the computer process interface library is compiled with the automation interface component" ......................................................................................................................... 52
W. "a packaging component associated with an industrial control device" ............................ 52
X. "an abstraction component that . . . determines the properties and methods that are exposed to a particular data consuming device" ................................................................. 53
Y. "determining the properties and methods that are exposed to a particular data consuming device" .............................................................................................................. 53
Z. "invokes methods" .............................................................................................................. 54
AA. "scale of the data" ............................................................................................................ 54
BB. "the monitoring station is configured to build a view of the components in real-time based upon the identifying component data" ...................................................................... 55
CC. "a plurality of monitoring representations built in real-time based upon the identifying data and viewable on the monitoring station" and "displaying a plurality of monitoring representations . . . built in real-time based on the status and identity data" ... 55
DD. "providing a uniform interface" ....................................................................................... 56 V. CONSTRUCTION OF DISPUTED NON-MEANS TERMS AS TO WHICH THERE IS A 35 U.S.C. § 112 , ¶ 6 ALLEGATION ..................................................................................... 57
EE. "a conversion system that receives a first and a second control program and converts the first and second control program into a first and second data set representing individual instruction of the first and second control program" and "a conversion system that receives a first and a second control program and converts the first and second control program into a first and second binary data set representing individual instruction of the first and second control program" .......................................................... 58
FF. "a difference module that determines differences between the first and the second control programs and provides a difference data structure representing the differences between the first and second control program" and "a difference module for determining differences between the first and the second binary data set and providing a difference data structure representing the differences between the first and second control programs" ............................................................................................................... 63
GG. "a comparison module that receives the difference data structure and the first and second control programs and generates a plurality of comparison scenarios to provide a plurality of comparison set views, the comparison module employing a decision model to determine the optimal display set view from the plurality of comparison set views by maximizing individual instruction matches between the first and second control programs" and "a comparison module that receives the difference data structure and the first and second control programs and generates a plurality of comparison scenarios to provide a plurality of comparison set views; a decision model that determines an optimal display set view from the plurality of comparison set views by maximizing individual instruction matches between the first and second control programs" ............... 69
HH. "a viewing system that accepts the first and second data sets and provides a graphical view of the first and second control programs in a single view based on the first and second binary data sets" ...................................................................................................... 75
II. "a viewing system that accepts the optimal display set view and provides a graphical view of the first and second control programs in an adjacent configuration" .................... 76
JJ. "converting the first and second ladder logic control program into a first and second data set representing individual rungs of the first and second ladder logic control program," "determining differences between the first and the second ladder logic control programs and providing a difference data structure representing the differences between the first and second ladder logic control program," and "generating a plurality of comparison scenarios based on the differences to provide a plurality of comparison set views and selecting an optimal display set view from the plurality of comparison set views by maximizing individual rung matches between the first and second ladder logic control programs" ...................................................................................................... 77 VI. CONSTRUCTION OF DISPUTED TERMS AS TO WHICH THE PARTIES AGREE 35 U.S.C. § 112 , ¶ 6 APPLIES ................................................................................................... 80
KK. "means for monitoring the memory locations of the transfer of data to and from electronic memory to produce a breakpoint signal when the memory location matches at least one particular memory location indicated by the breakpoint value" ...................... 81
LL. "means for receiving a first and a second control program and converting the first and second control program into a first and second binary data set representing individual instruction of the first and second control program" .......................................................... 83
MM. "means for determining differences between the first and the second binary data set and providing a difference data structure representing the differences between the first and second control programs" ............................................................................................ 84
NN. "means for receiving the difference data structure and the first and second control programs and generating a plurality of comparison scenarios to provide a plurality of comparison set views; means for determining an optimal display set view from the plurality of comparison set views by maximizing individual instruction matches between the first and second control programs" ................................................................. 87
OO. "means for accepting the optimal display set view and providing a graphical view of the first and second control programs in an adjacent configuration" ................................. 90
PP. "means for accepting data from an industrial control component" ................................... 91
QQ. "means for determining the properties and methods that are exposed to a particular data consuming device" and "means for abstracting a property and a method of the data" .................................................................................................................................... 92
RR. "means for encapsulating" ................................................................................................ 95
SS. "means for providing such properties and methods to a data consumer" ......................... 95
TT. "means for connecting a client to a Web server" .............................................................. 96
UU. "means for directing communications from the client to the Web Server" ..................... 97
VV. "means for creating a desired HMI" ................................................................................ 97
VII. CONSTRUCTION OF DISPUTED PREAMBLES ....................................................... 98
AAA. "An industrial controller operating controlled equipment according to a control program divided into at least two tasks, the controller comprising" .................................. 98
BBB. "An industrial controller operating controlled equipment according to a control program divided into at least two tasks each having a starting and completion point, the controller comprising:" ....................................................................................................... 99
CCC. "A method of displaying the real-time status of input/output data exchanged between a multi-tasking industrial controller executing a control program and a control process, the method comprising the steps of:" ................................................................. 100
DDD. "A production object for an object-oriented programming language, said production object being disposed in a first module, and said production object comprising:" ...................................................................................................................... 101
EEE. "A method for monitoring operational parameters of a plurality of networked electrical component, the method comprising the steps of:" ............................................ 103
FFF. "A method for monitoring operational parameters of a system of electrical components, the method comprising the steps of:" .......................................................... 103
GGG. "A method of providing a uniform interface for an industrial controller comprising:" ...................................................................................................................... 104
HHH. "A system for providing a uniform industrial controller interface comprising:" ........ 105
III. "A system for providing an object based interface for an industrial controller comprising:" ...................................................................................................................... 106
VIII. CONCLUSION ............................................................................................................... 108
APPENDIX A ............................................................................................................................ 109
I. BACKGROUND
Plaintiff has alleged infringement of United States Patents No. 5,619,409 ("the '409 Patent"), 5,636,124 ("the '124 Patent"), 5,812,133 ("the '133 Patent"), 5,818,711 ("the '711 Patent"), 5,844,795 ("the '795 Patent"), 5,845,149 ("the '149 Patent"), 5,940,293 ("the '293 Patent"), 6,138,174 ("the '174 Patent"), 6,247,168 ("the '168 Patent"), 6,675,226 ("the '226 Patent"), 6,816,817 ("the '817 Patent"), 6,978,225 ("the '225 Patent"), 7,130,704 ("the '704 Patent"), 7,143,366 ("the '366 Patent"), 7,693,585 ("the '585 Patent"), 7,716,567 ("the '567 Patent"), and 7,836,122 ("the '122 Patent") (collectively, the "patents-in-suit").
Plaintiff submits that the patents-in-suit "relate to industrial control applications. These patents have a wide breadth and include various technologies associated with PLCs [(programmable logic controllers)] and HMIs [(human machine interfaces)], and the software used with them to support the automation of numerous types of industrial processes, including manufacturing." Dkt. No. 63 at 3. Plaintiff has asserted 113 claims, which are identified in the parties' June 3, 2016 Joint Claim Construction and Prehearing Statement. Dkt. No. 58 at 1-2.
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with preliminary constructions with the aim of focusing the parties' arguments and facilitating discussion. Those preliminary constructions are set forth below within the discussion for each term.
II. LEGAL PRINCIPLES
"It is a 'bedrock principle' of patent law that 'the claims of a patent define the invention to which the patentee is entitled the right to exclude.'" Phillips v. AWH Corp., 415 F.3d 1303, 1312 (Fed. Cir. 2005) (en banc) (quoting Innova/Pure Water Inc. v. Safari Water Filtration Sys., Inc., 381 F.3d 1111, 1115 (Fed. Cir. 2004)). Claim construction is an issue of law for the court to decide. Markman v. Westview Instruments, Inc., 52 F.3d 967, 970-71 (Fed. Cir. 1995) (en banc), aff'd, 517 U.S. 370 (1996). "In some cases, however, the district court will need to look beyond the patent's intrinsic evidence and to consult extrinsic evidence in order to understand, for example, the background science or the meaning of a term in the relevant art during the relevant time period." Teva Pharms. USA, Inc. v. Sandoz, Inc., 135 S. Ct. 831, 841 (2015) (citation omitted). "In cases where those subsidiary facts are in dispute, courts will need to make subsidiary factual findings about that extrinsic evidence. These are the 'evidentiary underpinnings' of claim construction that we discussed in Markman, and this subsidiary factfinding must be reviewed for clear error on appeal." Id. (citing 517 U.S. 370).
To determine the meaning of the claims, courts start by considering the intrinsic evidence. See Phillips, 415 F.3d at 1313; see also C.R. Bard, Inc. v. U.S. Surgical Corp., 388 F.3d 858, 861 (Fed. Cir. 2004); Bell Atl. Network Servs., Inc. v. Covad Commc'ns Group, Inc., 262 F.3d 1258, 1267 (Fed. Cir. 2001). The intrinsic evidence includes the claims themselves, the specification, and the prosecution history. See Phillips, 415 F.3d at 1314; C.R. Bard, 388 F.3d at 861. Courts give claim terms their ordinary and accustomed meaning as understood by one of ordinary skill in the art at the time of the invention in the context of the entire patent. Phillips, 415 F.3d at 1312-13; accord Alloc, Inc. v. Int'l Trade Comm'n, 342 F.3d 1361, 1368 (Fed. Cir. 2003).
The claims themselves provide substantial guidance in determining the meaning of particular claim terms. Phillips, 415 F.3d at 1314. First, a term's context in the asserted claim can be instructive. Id. Other asserted or unasserted claims can aid in determining the claim's meaning because claim terms are typically used consistently throughout the patent. Id. Differences among the claim terms can also assist in understanding a term's meaning. Id. For example, when a dependent claim adds a limitation to an independent claim, it is presumed that the independent claim does not include the limitation. Id. at 1314-15.
"[C]laims 'must be read in view of the specification, of which they are a part.'" Id. at 1315 (quoting Markman, 52 F.3d at 979 (en banc)). "[T]he specification 'is always highly relevant to the claim construction analysis. Usually, it is dispositive; it is the single best guide to the meaning of a disputed term.'" Phillips, 415 F.3d at 1315 (quoting Vitronics Corp. v. Conceptronic, Inc., 90 F.3d 1576, 1582 (Fed. Cir. 1996)); accord Teleflex, Inc. v. Ficosa N. Am. Corp., 299 F.3d 1313, 1325 (Fed. Cir. 2002). This is true because a patentee may define his own terms, give a claim term a different meaning than the term would otherwise possess, or disclaim or disavow the claim scope. Phillips, 415 F.3d at 1316. In these situations, the inventor's lexicography governs. Id. The specification may also resolve the meaning of ambiguous claim terms "where the ordinary and accustomed meaning of the words used in the claims lack sufficient clarity to permit the scope of the claim to be ascertained from the words alone." Teleflex, 299 F.3d at 1325. But, "[a]lthough the specification may aid the court in interpreting the meaning of disputed claim language, particular embodiments and examples appearing in the specification will not generally be read into the claims." Comark Commc'ns, Inc. v. Harris Corp., 156 F.3d 1182, 1187 (Fed. Cir. 1998) (quoting Constant v. Advanced Micro-Devices, Inc., 848 F.2d 1560, 1571 (Fed. Cir. 1988)); accord Phillips, 415 F.3d at 1323.
The prosecution history is another tool to supply the proper context for claim construction because a patent applicant may also define a term in prosecuting the patent. Home Diagnostics, Inc., v. Lifescan, Inc., 381 F.3d 1352, 1356 (Fed. Cir. 2004) ("As in the case of the specification, a patent applicant may define a term in prosecuting a patent."). "[T]he prosecution history (or file wrapper) limits the interpretation of claims so as to exclude any interpretation that may have been disclaimed or disavowed during prosecution in order to obtain claim allowance." Standard Oil Co. v. Am. Cyanamid Co., 774 F.2d 448, 452 (Fed. Cir. 1985).
Although extrinsic evidence can be useful, it is "less significant than the intrinsic record in determining the legally operative meaning of claim language." Phillips, 415 F.3d at 1317 (citations and internal quotation marks omitted). Technical dictionaries and treatises may help a court understand the underlying technology and the manner in which one skilled in the art might use claim terms, but technical dictionaries and treatises may provide definitions that are too broad or may not be indicative of how the term is used in the patent. Id. at 1318. Similarly, expert testimony may aid a court in understanding the underlying technology and determining the particular meaning of a term in the pertinent field, but an expert's conclusory, unsupported assertions as to a term's definition are unhelpful to a court. Id. Generally, extrinsic evidence is "less reliable than the patent and its prosecution history in determining how to read claim terms." Id.
The Supreme Court of the United States has "read [35 U.S.C.] § 112, ¶ 2 to require that a patent's claims, viewed in light of the specification and prosecution history, inform those skilled in the art about the scope of the invention with reasonable certainty." Nautilus, Inc. v. Biosig Instruments, Inc., 134 S. Ct. 2120, 2129 (2014). "A determination of claim indefiniteness is a legal conclusion that is drawn from the court's performance of its duty as the construer of patent claims." Datamize, LLC v. Plumtree Software, Inc., 417 F.3d 1342, 1347 (Fed. Cir. 2005) (citations and internal quotation marks omitted), abrogated on other grounds by Nautilus, 134 S. Ct. 2120.
III. THE PARTIES' STIPULATED TERMS
The parties reached agreement on constructions as stated in their June 3, 2016 Joint Claim Construction and Prehearing Statement and their August 12, 2016 Joint Claim Construction Chart. Dkt. No. 58 at 2-3; see Dkt. No. 63 at Ex. A; see also Dkt. No. 71 at Ex. A. Those agreements are set forth in Appendix A to the present Claim Construction Memorandum and Order.
IV. CONSTRUCTION OF DISPUTED NON-PREAMBLE TERMS AS TO WHICH
THERE IS NO 35 U.S.C. § 112 , ¶ 6 ALLEGATION
Plaintiff argues that "[t]hese 39 terms all have a plain and ordinary meaning to a person of ordinary skill in the art and therefore do not need any construction." Dkt. No. 63 at 9. Plaintiff submits:
[I]n many instances, Defendant's proposed constructions deviate from the clear plain and ordinary meaning of the claim terms by importing limitations that would read out whole embodiments of the invention from the scope of the claims. In other instances, Defendant's proposed constructions do nothing more than unnecessarily repeat claim elements from elsewhere within the claims which creates ambiguity and does nothing to clarify the claim scope.Id. at 10.
Plaintiff further argues that "[n]o clearly limiting definitions in the intrinsic record support any of Defendant's special definitions," and "no clear and unmistakable disavowal supports Defendant's proposed constructions." Id. at 10-11.
Finally, Plaintiff argues that "[d]espite the prohibition against selectively reading limitations from preferred embodiments into a claim term, Defendant's proposed constructions repeatedly do just that." Id. at 12.
Plaintiff has also submitted the June 3, 2016 Declaration of Arthur M. Zatarain (Dkt. No. 58 at Ex. B). The entirety of the claim construction opinions set forth in that expert declaration are as follows:
28. I have reviewed each of the claim terms identified in Exhibit A to the parties' Joint Claim Construction Statement. Based on my experience, and my review of the relevant patent's written description and prosecution history, it is my opinion that each of those claim terms should be given their plain and ordinary meaning as understood by a PHOSITA at the time of the application's filing in light of the relevant patent's written description and file history.
29. I have reviewed each of the Defendant's proposed constructions of claim terms identified in Exhibit A to the parties' Joint Claim Construction Statement for which Defendant[] proposed a construction. Based on my experience, and my review of the relevant patent's written description and prosecution history, it is my opinion that each of the Defendant's proposed constructions unjustifiably deviate from the plain and ordinary meaning of the respective claim terms as understood by a PHOSITA at the time of the application's filing in light of the relevant patent's written description and prosecution history.
A. "breakpoint value"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "an address or an address range identifying alocation in data memory or an instruction incode memory" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "an address (or an address range) identifying a location in memory."
(1) The Parties' Positions
Defendant argues that this term is explained in the specification. Dkt. No. 67 at 3 (citing '409 Patent at 3:1-16).
Plaintiff replies that Defendant has not shown any disclaimer or disavowal, and this disputed term "would be understandable to both one skilled in the art and to a jury and [Defendant's] proposed construction[] only add[s] ambiguity and unnecessary language." Dkt. No. 68 at 1.
(2) Analysis
Claim 1 of the '409 Patent recites (emphasis added):
1. An industrial controller operating controlled equipment according to a control program divided into at least two tasks, the controller comprising:
(a) an I/O module receiving electrical inputs and outputs connected to controlled equipment;
(b) a user terminal for entering data from the user providing a breakpoint value;
(d) [sic] an electronic memory;
(e) a bus communicating signals to and from the electronic memory for transferring data to and from memory locations of the electronic memory, the data of the memory including:
(i) instructions for the at least two tasks of the control program;
(ii) variables for the at least two tasks of the control program;
(iii) an operating system program controlling the execution of the tasks according to a task scheduling table;
(iv) instructions for a breakpoint recording program,
(d) [sic] means for monitoring the memory locations of the transfer of data to and from electronic memory to produce a breakpoint signal when the memory location matches at least one particular memory location indicated by the breakpoint value;
(e) an electronic processor communicating with the I/O module to receive the inputs and change the outputs, according to the inputs and the control program, and executing the operating system program to:
(i) execute a specific one of the at least two tasks according to the task scheduling table;
(ii) upon the occurrence of the breakpoint signal executing the breakpoint record routine to record an indication [of] the specific one of the at least two tasks.
The Background of the Invention states that "breakpoints" are instructions to stop a task at certain points so as to output values of certain memory locations:
For controllers executing only a single task and executing instructions from re-writable memory, instructions ("breakpoints") may be inserted into the task
being executed to stop the task at certain points in the task program so as to output values of certain memory locations to the operator. These breakpoint instructions allow the operator to observe the progress of the task program as it is reflected in the changes in memory values caused by the task program, and thus to evaluate the operation of the task on a step-by-step basis.'409 Patent at 2:30-39 (emphasis added).
Although the specification sometimes refers to a "value of the data," thus suggesting that "value" refers to data rather than an address at which data can reside (see id. at 14:58-60), the Summary of the Invention explains that a "breakpoint value" is an address:
In particular, the present invention provides an industrial controller operating controlled equipment according to a control program divided into at least two tasks. The controller includes: an I/O module receiving electrical inputs and outputs connected to controlled equipment, a user terminal for entering data from the user providing a breakpoint value, and an electronic memory. A bus communicates data to and from memory locations of the electronic memory, the data of the memory including instructions for the tasks, variables for the tasks, an operating system controlling execution of the tasks, and instructions for a breakpoint recording program. Circuitry monitoring the memory locations of the transfer of data to and from the electronic memory produces a breakpoint signal when the memory locations match one or more particular memory locations indicated by the breakpoint value.Id. at 3:1-16 (emphasis added); see, e.g., id. at 12:45-46 ("range of addresses").
The specification thus demonstrates that a "breakpoint" is an instruction to output data values of certain memory locations, and a "breakpoint value" is the address or range of addresses of data that is to be outputted. The context provided by the above-quoted claim is similar and reinforces this understanding, in particular as to the recital that data is stored in memory locations and that memory locations are monitored "to produce a breakpoint signal when the memory location matches at least one particular memory location indicated by the breakpoint value."
As to Defendant's proposal that a "breakpoint value" can be "an instruction in code memory," however, Defendant has not adequately supported its proposal that a "breakpoint value" can be an "instruction." Finally, Defendant has not demonstrated that the claim language gives rise to any distinction between "data memory" and "code memory." At the August 24, 2016 hearing, Defendant stated that it agreed with the Court's preliminary construction, which did not include the "instruction," "data memory," and "code memory" limitations that Defendant had proposed.
The Court therefore hereby construes "breakpoint value" to mean "an address (or an address range) identifying a location in memory."
B. "breakpoint signal"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "a hardware interrupt produced by themonitoring component" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "a hardware interrupt."
(1) The Parties' Positions
Defendant argues that "[i]n contrast to software-based general processor interrupts known in the art, the patent utilizes a hardware-based breakpoint logic circuitry and comparator to monitor and compare certain values, and, based on that information, generate a hardware interrupt (breakpoint signal) that prevents any task switching until the breakpoint signal is processed." Dkt. No. 67 at 4 (citing '409 Patent at 12:39-51).
Plaintiff replies that Defendant has not shown any disclaimer or disavowal, and this disputed term "would be understandable to both one skilled in the art and to a jury and [Defendant's] proposed construction[] only add[s] ambiguity and unnecessary language." Dkt. No. 68 at 1.
(2) Analysis
Claim 1 of the '409 Patent recites (emphasis added):
1. An industrial controller operating controlled equipment according to a control program divided into at least two tasks, the controller comprising:
(a) an I/O module receiving electrical inputs and outputs connected to controlled equipment;
(b) a user terminal for entering data from the user providing a breakpoint value;
(d) [sic] an electronic memory;
(e) a bus communicating signals to and from the electronic memory for transferring data to and from memory locations of the electronic memory, the data of the memory including:
(i) instructions for the at least two tasks of the control program;
(ii) variables for the at least two tasks of the control program;
(iii) an operating system program controlling the execution of the tasks according to a task scheduling table;
(iv) instructions for a breakpoint recording program,
(d) [sic] means for monitoring the memory locations of the transfer of data to and from electronic memory to produce a breakpoint signal when the memory location matches at least one particular memory location indicated by the breakpoint value;
(e) an electronic processor communicating with the I/O module to receive the inputs and change the outputs, according to the inputs and the control program, and executing the operating system program to:
The specification discloses:(i) execute a specific one of the at least two tasks according to the task scheduling table;
(ii) upon the occurrence of the breakpoint signal executing the breakpoint record routine to record an indication [of] the specific one of the at least two tasks.
Referring to FIGS. 9 and 10, the breakpoint logic circuitry 260 includes a multiple bit comparator 263 that may compare the address on secondary bus 254 to values contained in registers B1 264, and B2 266 in order to generate the breakpoint signal on the abort line 262. Each of registers B1 and B2 may receive a 25 bit address via the data lines of the secondary bus 254 which is then used to establish a range of addresses that will generate the breakpoint signal on the abort line 262. The breakpoint signal is separate from general processor interrupts as are known
in the art. When the breakpoint signal occurs, interrupts are disabled to prevent task switching (as will be described) until the breakpoint signal is processed.'409 Patent at 12:39-51; see id. at 5:46-48 ("specialized circuitry for providing an alarm signal to the processor 62 on a periodic basis without the need for software timing loops by the processor 62").
In addition to this disclosure as to specific embodiments, the Summary of the Invention states: "The circuitry of the present invention unlike a software system adds no overhead to the execution time of the tasks, an important feature for real time control." Id. at 3:26-29 (emphasis added).
On balance, this characterization of the invention in terms of hardware should be given effect in the Court's construction. See, e.g., Verizon Servs. Corp. v. Vonage Holdings Corp., 503 F.3d 1295, 1308 (Fed. Cir. 2007) ("When a patent thus describes the features of the 'present invention' as a whole, this description limits the scope of the invention."). At the August 24, 2016 hearing, Plaintiff emphasized that the specification refers to a "software interrupt routine" ('409 Patent at 2:65), but Defendant persuasively argued that the term "interrupt routine" refers not to an interrupt itself but rather to actions performed in response to an interrupt. Regardless, even if "software interrupt routine" is interpreted as disclosure of a software interrupt, this disclosure does not override the above-quoted disclosures explaining that a "breakpoint signal" in the context of the claimed invention is a hardware interrupt.
Defendant's proposal that this hardware interrupt is "produced by the monitoring component," however, is rejected as potentially confusing and as unnecessary in light of surrounding claim language. At the August 24, 2016 hearing, Defendant stated that it agreed with the Court's preliminary construction, which did not include the "produced by the monitoring component" limitation that Defendant had proposed.
The Court accordingly hereby construes "breakpoint signal" to mean "a hardware interrupt."
C. "bus"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "a single path or multiple parallel paths forpower or data signals to which several devicesmay be connected at the same time" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "a single path or multiple paths for power or data signals to which several devices may be connected at the same time."
(1) The Parties' Positions
Defendant argues that its proposed construction is consistent with a definition set forth in one of Plaintiff's own documents. Dkt. No. 67 at 4.
Plaintiff replies that "[Defendant] seeks to import a definition from extrinsic evidence without explanation as to why the claim language or the intrinsic record would not permit one of ordinary skill in the art to understand the meaning of this term." Dkt. No. 68 at 1.
(2) Analysis
"Bus" is a technical term, and "[t]he Court believes that some construction of the disputed claim language will assist the jury to understand the claims." See TQP Dev., LLC v. Merrill Lynch & Co., Inc., No. 2:08-CV-471, 2012 WL 1940849, at *2 (E.D. Tex. May 29, 2012) (Bryson, J.).
Defendant has cited extrinsic evidence in the form of an "Industrial Automation Glossary," apparently published by Plaintiff, that defines "bus" as:
A single path or multiple parallel paths for power or data signals to which several devices may be connected at the same time. A bus may have several sources of supply and/or several sources of demand.Dkt. No. 67, Ex. C at 14.
Although the word "parallel" appears in this definition, that term would tend to confuse rather than clarify the scope of the term, particularly in light of the separate explanation in the definition that multiple devices may be connected. Further, Plaintiff expressed concern at the August 24, 2016 hearing that requiring multiple "devices" in the construction might exclude "internal" buses that are within a single device. See, e.g., '409 Patent at 5:14. Plaintiff stated that it would be amenable to construing "bus" to mean "a single path or multiple paths for power or data signals."
On balance, the Court hereby construes "bus" to mean "a single path or multiple paths for power or data signals to which several components may be connected at the same time."
D. "execute once to completion"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "execute the highest priority task to completionwithout interruption from any other task" |
Defendant previously proposed: "execute the highest priority periodic task to completion without interruption from any other task." Dkt. No. 58, Ex. A at 3 (emphasis added).
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "execute the highest priority task to completion without interruption from any other task."
(1) The Parties' Positions
Defendant argues that during prosecution the patentee explained that when the claim requires a task to "execute once to completion," it must do so without interruption, and any other task must wait for the task to complete. Dkt. No. 67 at 5. Defendant also submits that this is consistent with the specification. Id.
Plaintiff replies that "[t]he fact that the event triggered task cited by [Defendant] in the prosecution history 'must wait for the periodic task to execute once to completion' does not mean that the periodic task could not be interrupted by a different, higher priority task." Dkt. No. 68 at 1.
(2) Analysis
Claim 1 of the '124 Patent recites, in relevant part (emphasis added):
(d) an electronic processor communicating with the electronic memory and the I/O module to receive the electrical inputs and operate according to the inputs and the control program, and executing the operating system program to:
The Summary of the Invention states:(i) identify a highest priority periodic task requiring current execution based on the task priority and the time period of the task;
(ii) identify a highest priority event triggered task ready current execution based on the occurrence of its event;
(iii) if there is no ready event triggered task of higher priority than the highest priority periodic task, execute once to completion the highest priority periodic task;
(iv) if there is no highest priority periodic tasks [sic] of higher priority than the ready event triggered task execute once to completion the ready event triggered task.
An electronic processor, operating according to the task scheduling information and the operating system, executes the tasks by determining a highest priority periodic or event triggered task requiring current execution, based on the task priority and the task periodicity values or occurrence of an event, and executes that highest priority task once from its starting point to its completion point unless an event occurs associated with a task of higher priority. Other tasks are suspended.'124 Patent at 3:7-15 (emphasis added). The specification further discloses:
Once a task is readied, the first program of the task is executed once to completion from a starting point to an ending point as indicated by process block 234.Id. at 11:31-34 (emphasis added).
During prosecution, the patentee used the term "execute once to completion" in the context of requiring that if a particular "event driven" task has a lower priority than a particular periodic task, then the event-driven task must await completion of the periodic task:
Prior art methods of ensuring that periodic tasks are executed on a reliable schedule are described generally at page 5, lines 6-19 of the present application. Unfortunately, these techniques do not well accommodate a mixture of "periodic tasks" with "event driven tasks", the latter which occur at arbitrary times and tend to disrupt any regular scheduling mechanism. See the present invention, page 5, line 20 et seq. The present invention recognizes that both periodic and event driven tasks can co-exist with predictable execution times if the event driven tasks, once they are triggered, are prioritized and queued just like periodic tasks.Dkt. No. 67, Ex. D, Sept. 12, 1996 First Amendment at 2-3 (RAI_00000229).
For this to work, the present invention requires that an interrupt (an event driven task) does not necessarily get immediate execution but rather the priority of the interrupt must be determined and, if lower than a periodic task, must wait for the periodic task to execute once to completion. See claim 1, lines 33-40.
In contrast, the Flood device does not contemplate scheduled event driven tasks. Thus, Flood does not teach the critical elements of identifying priorities of periodic tasks, and event driven tasks, and of having event driven task give way to higher priority periodic tasks. This is not surprising because Flood is concerned with a much more basic problem of ensuring that continuously running background operations do not overwhelm primary tasks.
On balance, the above-quoted prosecution history sets forth definitive statements by the patentee that to "execute once to completion" means to execute a task without interruption from any other task. See Omega Eng'g v. Raytek Corp., 334 F.3d 1314, 1324 (Fed. Cir. 2003) ("As a basic principle of claim interpretation, prosecution disclaimer promotes the public notice function of the intrinsic evidence and protects the public's reliance on definitive statements made during prosecution."); see also Typhoon Touch Techs., Inc. v. Dell, Inc., 659 F.3d 1376, 1381 (Fed. Cir. 2011) ("The patentee is bound by representations made and actions that were taken in order to obtain the patent.").
At the August 24, 2016 hearing, Plaintiff expressed concern that a "without interruption" construction would preclude a task from being interrupted by a higher priority task. This concern is addressed by the phrase "highest priority" in the construction, as well as by conditional language that precedes the disputed term in the claim, as quoted above. Plaintiff stated that it interprets the conditional language as evaluating relative priorities at the time a task begins to execute, but no such "at that time" limitation is apparent in the claim language at issue.
The Court therefore hereby construes "execute once to completion" to mean "execute the highest priority task to completion without interruption from any other task."
E. "event"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "an electrical signal interrupting all runningtasks that can be observed at any time" |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 4. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
F. "a portion of each scheduled task . . . from the portions starting point to its completion point"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "a user defined amount of code of a scheduledtask . . . from the user defined starting point tothe user defined completion point" |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 6. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
G. "address monitor"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "a hardware circuit for supervising memoryaccess" |
Defendant submits that "[a]lthough this term was included in [Plaintiff']s Brief (at page 7), the parties previously agreed to this construction." Dkt. No. 67 at 5.
The parties' June 3, 2016 Joint Claim Construction and Prehearing Statement lists an agreement that the term "address monitor" in Claims 1 and 8 of the '133 Patent means "a hardware circuit for supervising memory access." Dkt. No. 58 at 2. This agreement also appears in the parties' August 12, 2016 Joint Claim Construction Chart. Dkt. No. 71, Ex. A at 6. This agreed-upon construction is set forth in Appendix A to this Claim Construction Memorandum and Order.
H. "to alter the display of the graphical element when an address of the electronic memory is accessed during execution of the stored program"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "to alter the display of the graphical elementonly at the time an address of the electronicmemory is accessed during execution of thestored program" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "Plain meaning ([r]eject Defendant's proposal of altering 'only at the time an address of the electronic memory is accessed during execution of the stored program')."
(1) The Parties' Positions
Defendant argues that the prosecution history "requires the editing of the graphical element to occur only when the stored program is executing." Dkt. No. 67 at 6.
Plaintiff replies that the prosecution does not alter the claim language, and the Court should reject "[Defendant's] improper attempt to swap the claim term 'when' with 'only at the time.'" Dkt. No. 68 at 2.
(2) Analysis
During prosecution, the patentee argued:
The interface 41 of Kiya apparently allows for a reading of a program and data and displaying of the same in graphical form on a computer screen. Apparently in
Kiya, the display is altered by selection by the user with a cursor independent of operation of the program. There is no indication that the editing proposed by Kiya is done while the processor is executing. In fact, editing is normally done while the control program is not operating for reasons of safety and practicality.Dkt. No. 67, Ex. E, Sept. 18, 1997 First Amendment at 3-4 (RAI_00000374-75) (emphasis added).
* * *
The Brooks patent, owned by the assignee of the present invention, describes a control system similar to the present invention but lacking the address monitor of element (f). The Bender patent teaches displaying a "sequence time" for instructions that implicitly cause an action at a certain time, but there is no indication that the instruction address is monitored during execution to determine this sequence time. Rather the sequence time is probably the time entered by the programmer.
Defendant's proposal of "only," however, is a negative limitation that is not supported by any apparent disclaimer or definitive statement during prosecution. See Omega Eng'g, 334 F.3d at 1324 ("As a basic principle of claim interpretation, prosecution disclaimer promotes the public notice function of the intrinsic evidence and protects the public's reliance on definitive statements made during prosecution.") (emphasis added).
The Court therefore hereby expressly rejects Defendant's proposed construction. No further construction is necessary. See U.S. Surgical Corp. v. Ethicon, Inc., 103 F.3d 1554, 1568 (Fed. Cir. 1997) ("Claim construction is a matter of resolution of disputed meanings and technical scope, to clarify and when necessary to explain what the patentee covered by the claims, for use in the determination of infringement. It is not an obligatory exercise in redundancy."); see also O2 Micro Int'l Ltd. v. Beyond Innovation Tech. Co., 521 F.3d 1351, 1362 (Fed. Cir. 2008) ("[D]istrict courts are not (and should not be) required to construe every limitation present in a patent's asserted claims."); Finjan, Inc. v. Secure Computing Corp., 626 F.3d 1197, 1207 (Fed. Cir. 2010) ("Unlike O2 Micro, where the court failed to resolve the parties' quarrel, the district court rejected Defendants' construction."); ActiveVideo Networks, Inc. v. Verizon Commcn's, Inc., 694 F.3d 1312, 1326 (Fed. Cir. 2012); Summit 6, LLC v. Samsung Elecs. Co., Ltd., 802 F.3d 1283, 1291 (Fed. Cir. 2015).
The Court accordingly hereby construes "to alter the display of the graphical element when an address of the electronic memory is accessed during execution of the stored program" to have its plain meaning.
I. "to display an indication of the graphical element together with a time of accessing of an address of the electronic memory when an address of the electronic memory from the second address area is accessed during execution of the stored program"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "to alter the display of the graphical elementonly at the time an address of the electronicmemory is accessed during execution of thestored program" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "Plain meaning ([r]eject Defendant's proposal of altering 'only at the time an address of the electronic memory is accessed during execution of the stored program')."
Defendant argues that the prosecution history "requires the editing of the graphical element to occur only when the stored program is executing." Dkt. No. 67 at 6.
This term presents essentially the same dispute as the term "to alter the display of the graphical element when an address of the electronic memory is accessed during execution of the stored program," which is addressed above.
The Court therefore hereby expressly rejects Defendant's proposed construction. No further construction is necessary. See U.S. Surgical, 103 F.3d at 1568; see also O2 Micro, 521 F.3d at 1362; Finjan, 626 F.3d at 1207; ActiveVideo, 694 F.3d at 1326; Summit 6, 802 F.3d at 1291.
The Court accordingly hereby construes "to display an indication of the graphical element together with a time of accessing of an address of the electronic memory when an address of the electronic memory from the second address area is accessed during execution of the stored program" to have its plain meaning.
J. "simultaneously displaying an executable program in a remote processor and a plurality [of] program edits input at a workstation"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "simultaneously displaying a program runningon a remote processor of an industrialcontroller and also displaying a plurality ofprogram edits input at a workstation" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "simultaneously displaying a program that runs on a remote processor and also displaying a plurality of program edits input at a workstation."
(1) The Parties' Positions
Defendant argues that, during prosecution, the patentee explained that it is an essential element of the claims that the program be executed on the processor in the controller, and not on the workstation or elsewhere outside of the industrial controller. Dkt. No. 67 at 7.
Plaintiff replies:
[Defendant] seeks to require that the displayed executable program be "running on a remote processor" instead of simply resident "in a remote processor" as the plain language of the claim recites. [Defendant's] proposed additional requirement would improperly exclude from the claim scope any embodiment in which a displayed program is resident on a remote processor that is temporarily halted, stopped or running a different program or task; there is no lexicography or disavowal in the intrinsic record that would justify such an exclusion. [Defendant] also cites to portions of the prosecution history that discuss "editing" and when an instruction address may be "monitored"; however these portions of the prosecution history do not discuss "displaying" and thus should be disregarded.Dkt. No. 68 at 2.
(2) Analysis
Because the disputed term recites an executable program "in" a remote processor, the disputed term itself is consistent with Defendant's proposal. Likewise, during prosecution the patentee stated:
In contrast to the present invention Kimelman teaches highlighting program segments as they execute. Kimelman also teaches identifying which program segments are running in which processor. In the present invention, program segments only execute in the controller. The workstation is utilized as an interface for performing edits which must be downloaded to the controller before they can be executed. Kimelman anticipates that every program segment will be executed and thus eventually be highlighted. As claimed, the present invention applies modifiable visual indicia to select program segments (i.e. new and modified) which is not taught or even suggested in either of the cited references.Dkt. No. 67, Ex. F, Feb. 17, 1998 Amendment A at 3 (RAI_00000517) (emphasis added).
This prosecution history thus reinforces that the disputed term requires that the program is executed by a remote processor. See Omega, 334 F.3d at 1324 ("As a basic principle of claim interpretation, prosecution disclaimer promotes the public notice function of the intrinsic evidence and protects the public's reliance on definitive statements made during prosecution."); see also Typhoon Touch, 659 F.3d at 1381 ("The patentee is bound by representations made and actions that were taken in order to obtain the patent.").
Nonetheless, to whatever extent Defendant is arguing that the program must actually be running or that the remote processor must be "of an industrial controller," such limitations are not apparent in the claim and have not otherwise been justified by Defendant.
The Court therefore hereby construes "simultaneously displaying an executable program in a remote processor and a plurality [of] program edits input at a workstation" to mean "simultaneously displaying an executable program that is located in a remote processor and also displaying a plurality of program edits input at a workstation."
K. "monitoring the memory location to record the time of a change in the data in the memory location"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "monitoring the memory location and onlyrecording the time of a change in the data inthe memory location, and not recording timeinformation when there is no change in the datain the memory location" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "Plain meaning ([r]eject Defendant's proposal of 'only recording the time of a change in the data in the memory location, and not recording time information when there is no change in the data in the memory location')."
(1) The Parties' Positions
Defendant argues that, during prosecution, the patentee explained that it is essential to the claims that the data is recorded only when there is a change in the data in the memory location and that no data is recorded when there is no change. Dkt. No. 67 at 7-8.
Plaintiff replies that "[Defendant] cites to statements made during prosecution that discuss the recording of 'data,' but contain no prohibition as to when a 'time of a change' may be recorded, much less 'time information,' a term coined by [Defendant] without justification and not found in the specification." Dkt. No. 68 at 2.
(2) Analysis
The specification discloses:
[T]he monitoring task 400 need only perform four tasks: (1) reading a pre-designated memory location for each input or output data being monitored; (2) comparing the value of the data in that memory location to a previously stored value, and only if the value has changed, (3) storing the new value in memory (for later comparisons) and (4) storing the time of the change of the value (the current time).'795 Patent at 18:30-56. Although this disclosure could be interpreted as stating that time is recorded only for the time of a change of a value, this is a specific feature of a particular disclosed embodiment that should not be imported into the claim. See Comark, 156 F.3d at 1187; see also Phillips, 415 F.3d at 1323.
Likewise, during prosecution the patentee stated:
[T]he Sadre approach logs all data between break points, not just data that has changed. As claimed in claim 1 of the present invention, the memory monitor monitors changes in the data and logs those time of changes [sic]. The significance of this is that far less data is generated in the present invention and this allows real-time data monitoring with a program as opposed to specialized hardware.Dkt. No. 67, Ex. G, May 4, 1998 First Amendment at 3 (RAI_00000654).
Although the patentee explained that it may be advantageous to record data only when data changes, this prosecution history contains no definitive statement that would warrant imposing a negative limitation as to recording time information only when data changes. See Omega Eng'g, 334 F.3d at 1324 ("As a basic principle of claim interpretation, prosecution disclaimer promotes the public notice function of the intrinsic evidence and protects the public's reliance on definitive statements made during prosecution.") (emphasis added); see also Golight, Inc. v. Wal-Mart Stores, Inc., 355 F.3d 1327, 1332 (Fed. Cir. 2004) ("Because the statements in the prosecution history are subject to multiple reasonable interpretations, they do not constitute a clear and unmistakable departure from the ordinary meaning of the term . . . ."); Praxair, Inc. v. ATMI, Inc., 543 F.3d 1306, 1325 (Fed. Cir. 2008) ("it is generally not appropriate to limit claim language to exclude particular devices because they do not serve a perceived purpose of the invention") (citation and internal quotation marks omitted).
The Court therefore hereby expressly rejects Defendant's proposed construction. No further construction is necessary. See U.S. Surgical, 103 F.3d at 1568; see also O2 Micro, 521 F.3d at 1362; Finjan, 626 F.3d at 1207; ActiveVideo, 694 F.3d at 1326; Summit 6, 802 F.3d at 1291.
The Court therefore hereby construes "monitoring the memory location to record the time of a change in the data in the memory location" to have its plain meaning. L. "entering an I/O map table into the controller," "software address," and "physical network address"
"entering an I/O map table into the controller" | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Plain and ordinary meaning. | "entering an I/O map table, that allowsmapping to occur within the controller and isseparate from the control program, into thecontroller" |
"software address" | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Plain and ordinary meaning. | "a mnemonic used in a control program toidentify a physical I/O address independent ofthe physical address itself" |
"physical network address" | |
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Plain and ordinary meaning. | "unique address corresponding to a specificphysical device" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary constructions: "entering an I/O map table into the controller" means "entering into the controller an I/O map table that allows mapping to occur within the controller"; "software address" has its "[p]lain meaning ([r]eject Def[endant]'s proposal of 'mnemonic')"; and "physical network address" has its "[p]lain meaning ([r]eject Def[endant]'s proposal of 'unique')."
(1) The Parties' Positions
Defendant argues that, during prosecution, the patentee explained that "the I/O map table is separate from the control program, and the control program can be created without needing the physical addresses because mapping the physical addresses occurs independent of the layout of the I/O modules via the software address." Dkt. No. 67 at 8. Defendant also argues that "[b]ecause the software addresses are assigned without regard to the actual layout of the I/O modules in a system, they are independent of the physical network addresses." Id. at 9. Finally, Defendant argues that its proposal for "physical network address" is supported by the specification. Id.
Plaintiff replies that "the prosecution history cited by [Defendant] distinguishes the claimed invention over the prior art based on the 'existence' of the I/O map table and not because it is 'separate from the control program' or that it 'allows mapping to occur within the controller' as [Defendant] would have the Court rule." Dkt. No. 68 at 3. Plaintiff also argues that "[t]he claim terms 'software address' and 'physical network address', as drafted, would be understandable to both one skilled in the art and to a jury," and "[Defendant's] constructions add ambiguity and unnecessary terms and are not required or justified by any disavowal or lexicography in the intrinsic record." Id.
(2) Analysis
Claim 4 of the '149 Patent recites (emphasis added):
4. A method of operating an industrial controller having a central processor executing a stored control program to exchange data with a plurality of input/output modules distributed over a network at physical network addresses to provide an electrical interface at control points to a controlled process, the method comprising the steps of:
(a) entering the control program into the controller, the program having steps where data is exchanged with a particular control point in the controlled process designated by a software address in the control program and not dependent on a physical address;
(b) entering an I/O map table into the controller linking the software address to a physical network address of a particular input/output module serving as the electrical interface with the control point;
(c) operating the controller to exchange data with the control point through the particular I/O module at the physical network address linked to the software address by the I/O map table;
(d) entering into the I/O map table the second software address linked to the physical network addresses of the second industrial controller; and
(e) operating the controller to exchange data with the second industrial controller at the physical network address linked to the second software address by the I/O map table;
wherein the industrial controller also executes the stored control program to exchange data with a second industrial controller, the second industrial controller having a physical network address, wherein at step (a) the control program entered into the controller has steps where data is exchanged with the second industrial controller designated by a second software address in the control program.
The specification refers to a "separate I/O map table" (see '149 Patent at 2:32-37) and during prosecution the patentee stated:
Applicant agrees generally that the present invention differs from prior art industrial controllers by the existence of an I/O map table which links software addresses to physical network addresses. As noted in the Summary of the Invention of the present application, . . . this allows the control program to be developed without regard to the actual layout of the I/O modules and allows the control points to be given easy-to-understand names. It also allows a program to be used at different sites where the physical addresses may change.Dkt. No. 67, Ex. H, Mar. 31, 1998 Amendment at 4 (RAI_00000736) (emphasis modified).
* * *
[T]he Applicant cannot find an indication that the Montgomery I/O map is used to translate arbitrary software addresses to physical addresses of the devices as is required by the present claims. As noted above, Applicant has amended claim 1 to emphasize this distinction and to indicate that the software addresses are not dependent on the physical addresses of the I/O module but may be arbitrarily selected.
On one hand, this prosecution history can be read as assuming or implying that the "I/O map table" is separate from the control program, thereby "allow[ing] the control program to be developed without regard to the actual layout of the I/O modules." Id. On the other hand, the patentee relied upon the "existence" of an I/O map table rather than any separateness. Id. This prosecution history thus does not give rise to any disclaimer or disavowal that would support Defendant's proposed construction as to the I/O map table. See Omega Eng'g, 334 F.3d at 1324; see also Golight, 355 F.3d at 1332.
As to Defendant's proposal that a "software address" must be a "mnemonic," this is a potential advantage that should not be imported into the claim. See '149 Patent at 1:7-11; see also Praxair, 543 F.3d at 1325 ("it is generally not appropriate to limit claim language to exclude particular devices because they do not serve a perceived purpose of the invention") (citation and internal quotation marks omitted). The remainder of Defendant's proposal is adequately addressed by surrounding claim language. The Court therefore hereby expressly rejects Defendant's proposed construction. No further construction is necessary. See U.S. Surgical, 103 F.3d at 1568; see also O2 Micro, 521 F.3d at 1362; Finjan, 626 F.3d at 1207; ActiveVideo, 694 F.3d at 1326; Summit 6, 802 F.3d at 1291.
Finally, Defendant has not adequately demonstrated that a "physical network address" must be "unique." No such limitation is express or implied in the above-reproduced claim language, and the above-quoted prosecution history cited by Defendant contains no definitive statement in that regard. See Omega Eng'g, 334 F.3d at 1324 ("As a basic principle of claim interpretation, prosecution disclaimer promotes the public notice function of the intrinsic evidence and protects the public's reliance on definitive statements made during prosecution.") (emphasis added).
As to the specification, the Background of the Invention states: "Each I/O module has a unique address on the communication network, its 'physical address,' which may be defined by the path of a message between the controller and the I/O module through various branches of the communication network." '149 Patent at 1:34-37 (emphasis added). On one hand, the patentee's use of quotation marks around "physical address" suggests that this passage sets forth a definition. On the other hand, this passage refers to "physical address" rather than the disputed term "physical network address."
On balance, to whatever extent this disclosure regarding "physical address" is deemed relevant to the term "physical network address," use of a "unique" address is a specific feature of particular disclosed embodiments that should not be imported into the claim. See Comark, 156 F.3d at 1187; see also Phillips, 415 F.3d at 1323. The Court therefore hereby expressly rejects Defendant's proposed construction. No further construction is necessary. See U.S. Surgical, 103 F.3d at 1568; see also O2 Micro, 521 F.3d at 1362; Finjan, 626 F.3d at 1207; ActiveVideo, 694 F.3d at 1326; Summit 6, 802 F.3d at 1291.
The Court therefore hereby construes the disputed terms as set forth in the following chart:
Term | Construction |
---|---|
"entering an I/O map table into thecontroller" | "entering into the controller an I/O maptable that allows mapping to occur withinthe controller" |
"software address" | Plain meaning |
"physical network address" | Plain meaning |
M. "sequences of axis functions"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "sets of separate machine movements" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "sets of machine movements."
(1) The Parties' Positions
Defendant argues that "[d]uring prosecution, [the] patentee defined the terms 'axis,' 'function,' and 'sequence.'" Dkt. No. 67 at 9.
Plaintiff replies that "[Defendant's] proposed additions to this claim term contradict the intrinsic record that [Defendant] itself recited [sic, cited] and should therefore be rejected." Dkt. No. 68 at 4.
(2) Analysis
During prosecution, the patentee referred to "axis," "function," and "sequence" as follows:
[A]s used in the present specification and claims, a machine progresses through a cycle including two sequences. A sequence includes one or more axis which perform functions on an object being machined. The words [emphasized] in the preceding sentence have distinct meanings.Dkt. No. 67, Ex. I, Nov. 2, 1998 Amendment at 5-6 (RAI_00000996-97).
An axis is an assembly of two or more mechanical components wherein one component has freedom to move with respect to the other component in a reciprocal manner along a single axis . . . . For example, an axis may include a main slide on a horizontal mill or a cross slide on a mill.
A function is a single axis movement (e.g. main slide advance, main slide return, etc.).
A sequence includes a correctly orchestrated set of functions by one or more axis which realizes a portion of a manufacturing process (i. e. a cycle) . . . . For example, a sequence may include a "main slide advance" function followed by a "cross slide advance" function.
A cycle includes two sequences wherein a second sequence inverts the actions (i.e. functions) performed by the first sequence. In other words the second sequence returns tools to the states the tools occupied prior to the beginning of the first sequence. . . . For example, where a first sequence includes functions "main slide advance" and "cross slide advance", the second sequence in a cycle may include the functions "cross slide return" and "main slide return".
Particularly because these definitions appear as part of a discussion of terms "as used in the present specification and claims" (id. at 5), the patentee's definitions should be given effect. See Typhoon Touch, 659 F.3d at 1381; see also Phillips, 415 F.3d at 1316 ("the inventor's lexicography governs"); Home Diagnostics, 381 F.3d at 1356 ("As in the case of the specification, a patent applicant may define a term in prosecuting a patent.").
As to Defendant's proposal of "separate" movements, no such requirement appears in the above-quoted prosecution history, and Defendant has not otherwise justified such a limitation.
The Court therefore hereby construes "sequences of axis functions" to mean "sets of machine movements."
N. "generating a substantially complete real time machine language program" and "producing a substantially complete real time machine language program for controlling axis functions"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "generating a substantially complete machinecontrol program using predefined machinelanguage modules" |
Defendant previously proposed "generating a substantially complete machine control program in real time using predefined machine language modules." Dkt. No. 58, Ex. A at 6 (emphasis added). --------
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "Plain meaning ([r]eject Defendant's proposal of 'predefined machine language modules')."
(1) The Parties' Positions
Defendant argues that its proposed construction "is consistent with the specification which explains using predefined modules to produce a control program." Dkt. No. 67 at 10.
Plaintiff replies that "[Defendant] seeks to completely remove the 'real time' aspect from these claim terms and instead add its coined terms 'machine control program' and 'predefined machine language program,' both of which appear nowhere in the specification." Dkt. No. 68 at 4.
(2) Analysis
The specification discloses:
Using the inventive apparatus, a user can quickly construct a bar chart image on a computer screen that contains all of the information necessary to sequence tool movements.'293 Patent at 4:28-31 & 12:43-48 (emphasis added); see id. at 4:31-41 ("the apparatus itself can completely convert bar chart information into sequencing logic thus minimizing programming time and associated cost").
* * *
Template language guides a user to assemble from a set of programming units called modules a complete and correct machine tree 11. Individual modules are identified with templates, which include truly reusable control logic so that, when a template-based machine tree is compiled, a complete control program for an industrial process is produced.
On balance, the use of predefined modules is a specific feature of particular disclosed embodiments that should not be imported into the claims. See Comark, 156 F.3d at 1187; see also Phillips, 415 F.3d at 1323.
The Court therefore hereby expressly rejects Defendant's proposed construction. No further construction is necessary. See U.S. Surgical, 103 F.3d at 1568; see also O2 Micro, 521 F.3d at 1362; Finjan, 626 F.3d at 1207; ActiveVideo, 694 F.3d at 1326; Summit 6, 802 F.3d at 1291.
The Court accordingly hereby construes "generating a substantially complete real time machine language program" and "producing a substantially complete real time machine language program for controlling axis functions" to have their plain meaning.
O. "A production object for an object-oriented programming language"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
This claim element does not require theCourt's construction because it is only found inthe non-limiting portion of the preamble ofclaim 1.Alternatively, this claim element should begiven its plain and ordinary meaning. | "a runtime or firmware module with embeddedproperties and/or functions for use in an object-oriented programming language" |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 19.
Nonetheless, the parties have presented a dispute as to whether the preamble in which this term appears is limiting, and the Court separately addresses that dispute below.
P. "a first module" and "a second module"
"a first module" | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Plain and ordinary meaning. | "a first microprocessor hardware module of amodular programmable controller" |
"a second module" | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Plain and ordinary meaning. | "a second hardware module of a modularprogrammable controller, where the first andsecond modules are separate pieces ofhardware" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "Plain meaning ([r]eject Defendant's proposal of requiring 'hardware' modules)."
(1) The Parties' Positions
Defendant argues that "[t]he specification of the '168 Patent explains 'a first module' and 'a second module[]' are hardware components of a programmable controller." Dkt. No. 67 at 11.
Plaintiff replies that "the words 'microprocessor' and 'modular' appear nowhere in the specification," and Plaintiff argues that Defendant's proposed construction would exclude disclosed embodiments. Dkt. No. 68 at 4.
(2) Analysis
The Summary of the Invention discloses "a first module" and "a second module" in a hardware context:
The programmable controller system includes a backplane, a first module, and a second module. The first and second modules are disposed in the backplane and are linked by the backplane.'168 Patent at 2:25-34. Further, as disclosed regarding Figure 1:
The PLC system 30 comprises a PLC processor module 32 and a plurality of other
modules 34-42. The other modules 34-42 could include, for example, one or more Ethernet modules, DHRIO modules, CNB modules, analog modules, PLC processor modules and/or a plurality of other types of modules. The modules are disposed in a rack (not illustrated) and are networked by way of a common backplane 54 (see FIG. 2).Id. at 4:11-19 (emphasis added); see id. at Fig. 1.
On balance, however, the use of "hardware" modules is a specific feature of particular disclosed embodiments that should not be imported into the claims. See Comark, 156 F.3d at 1187; see also Phillips, 415 F.3d at 1323. Of particular note, Claim 1 of the '168 Patent introduces "a first module" in the context of "an object-oriented programming language" rather than in the context of hardware.
The Court therefore hereby expressly rejects Defendant's proposed construction. No further construction is necessary. See U.S. Surgical, 103 F.3d at 1568; see also O2 Micro, 521 F.3d at 1362; Finjan, 626 F.3d at 1207; ActiveVideo, 694 F.3d at 1326; Summit 6, 802 F.3d at 1291.
The Court accordingly hereby construes "a first module" and "a second module" to have their plain meaning.
Q. "multi-network interface"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "multi-network interface circuit card" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "multi-network interface circuit card."
(1) The Parties' Positions
Plaintiff argues that "[w]hile the specification states that the multi-network interface requires a processor and memory, a circuit card is not required." Dkt. No. 63 at 13 (citing '226 Patent at 4:57-64).
Defendant responds that "[Plaintiff's] 'plain and ordinary meaning' construction improperly enlarges the scope of a claim term that requires hardware and cannot be performed by software alone." Dkt. No. 67 at 11. In particular, Defendant cites prosecution history. Id. at 12.
Plaintiff replies that "[t]he patentee knew how to explicitly claim a 'multi network interface circuit card' and chose not to do so in claim 1." Dkt. No. 68 at 5.
(2) Analysis
On one hand, Figure 2 of the '226 Patent illustrates "multi-network interface 42" (see '226 Patent at 4:57-58) as being within "desktop computer 12" (see id. at 4:35-36). At least at first blush, this disclosure weighs against requiring the "multi-network interface" to be distinct. Also of note, whereas independent Claim 11 of the '226 Patent expressly recites a "multi-network interface card," no such recital of a "card" appears in Claim 1 of the '226 Patent.
On the other hand, the Summary of the Invention states: "The present invention provides a circuit card that may be attached to a desktop computer to allow a simple programming interface to a wide variety of industrial controller communication networks." '226 Patent at 2:16-19. Likewise, the written description sets forth:
The bus 36 also communicates with a multi-network interface 42 of the present invention which has multiple ports 50 communicating with the network cables 24 for the various networks needed to support the industrial control system 10. The multi-network interface 42 includes its own processor 43 and memory 45 as will be described further below.'226 Patent at 4:57-63 (emphasis added).
Also, during prosecution the patentee stated:
Claims 1 and 9 recite both a computer and a separate processor. That is, claims 1 and 9 recite a processor on a multi-network interface that is in addition to a computer.Dkt. No. 67, Ex. J, May 27, 2003 Reply at 2 (RAI_00001358); see Dkt. No. 68 at 4 (noting that Claim 11 of the '226 Patent was numbered as claim 9 during prosecution).
Plaintiff has cited the following explanation by the patentee regarding the addition of a "card" limitation in application claim 9 (issued Claim 11):
Finally, claim 9 additionally has been amended to provide that the multi-network interface is implemented on a card that is capable of being coupled to and decoupled from a bus of the computer. This is supported in the Specification at page 4, lines 3-13 and page 8 lines 13-17.Dkt. No. 68, Ex. A, Apr. 15, 2002 Amendment at 7 (RAI_00001324); see id. at 12 (showing amendments to claim 9). Because this amendment added not merely that the multi-network interface is "implemented on a card" but also that it is "capable of being coupled to and decoupled from a bus of the computer," any claim differentiation argument by Plaintiff in this regard is unpersuasive. Id.; see, e.g., Mycogen Plant Sci. v. Monsanto Co., 243 F.3d 1316, 1329 (Fed. Cir. 2001).
The Applicants respectfully submit that, except for the last above-discussed amendment to claim 9, in which the multi-network interface is specified to be a card, the amendments to the claims have been made to clarify the language of the claims.
Moreover, as Defendant urged at the August 24, 2016 hearing, the "card" limitation in Claim 11 is presented as having antecedent basis in "[a] multi-network interface" recited in the preamble. The limitation at issue is: "wherein the multi-network interface card is implemented using a card that is capable of being coupled to and decoupled from a bus of the computer." A fair reading of this limitation is that rather than limiting the multi-network interface to being a card, this limitation presumes that the multi-network interface is a card and then adds the limitation that the card "is capable of being coupled to and decoupled from a bus of the computer." The above-quoted prosecution history can likewise be read in this manner.
Finally, other differences between Claim 1 and Claim 11 are also apparent. See Wenger Mfg., Inc. v. Coating Mach. Sys., Inc., 239 F.3d 1225, 1233 (Fed. Cir. 2001) ("Claim differentiation, while often argued to be controlling when it does not apply, is clearly applicable when there is a dispute over whether a limitation found in a dependent claim should be read into an independent claim, and that limitation is the only meaningful difference between the two claims.") (emphasis added). For example, whereas Claim 1 recites an "API" and "API extensions," Claim 11 does not.
On balance, the specification and the prosecution history demonstrate that although a "multi-network interface" may be attached to a computer, a "multi-network interface" is nonetheless a distinct circuit card. See, e.g., Verizon, 503 F.3d at 1308 ("When a patent thus describes the features of the 'present invention' as a whole, this description limits the scope of the invention."); Typhoon Touch, 659 F.3d at 1381 ("The patentee is bound by representations made and actions that were taken in order to obtain the patent.").
The Court accordingly hereby construes "multi-network interface" to mean "multi-network interface circuit card." R. "identity data representative of an identity of the respective component in the system," "component designation data," and "component data"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "data representing the configuration of aparticular hardware device component in thesystem, in addition to the communicationaddress of the particular hardware devicecomponent" |
In their August 12, 2016 Joint Claim Construction Chart, the parties submit that they now agree that these terms should be given their "[p]lain and ordinary meaning." Dkt. No. 71, Ex. A at 23. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order. S. "generating a series of user viewable monitoring displays of the parameters by component based upon the sensed parameters and the identity data, the monitoring displays including graphical presentations of parameter levels," "generating a user viewable monitoring display of the parameters by component based upon the sensed parameters and the identity data," and "a monitoring station configured cyclically to access the parameter data via the network link and to generate a user viewable representation of the parameter data including a plurality of virtual meters displaying current and historical levels of selected parameters for each component"
"generating a series of user viewable monitoring displays of the parameters by componentbased upon the sensed parameters and the identity data, the monitoring displays includinggraphical presentations of parameter levels" ('817 Patent, Claims 21, 27) | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Plain and ordinary meaning. | "automatically generating a series of userviewable screens of the parameters bycomponent based upon the sensed parametersand the identity data, the monitoring displaysincluding graphical presentations of parameterlevels" |
"generating a user viewable monitoring display of the parameters by component basedupon the sensed parameters and the identity data" ('817 Patent, Claims 33, 34, 35) | |
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Plain and ordinary meaning. | "automatically generating a series of userviewable screens of the parameters bycomponent based upon the sensed parametersand the identity data" |
"a monitoring station configured cyclically to access the parameter data via the networklink and to generate a user viewable representation of the parameter data including aplurality of virtual meters displaying current and historical levels of selected parametersfor each component" ('225 Patent, Claim 1) | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Plain and ordinary meaning. | "a monitoring station configured to cyclicallyaccess the parameter data via the network linkand to automatically generate user viewablescreens of the parameter data including aplurality of virtual meters displaying currentand historical levels of selected parameters foreach component" |
In their August 12, 2016 Joint Claim Construction Chart, the parties submit that they now agree that these terms should be given their "[p]lain and ordinary meaning." Dkt. No. 71, Ex. A at 22-23. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
T. "an automation interface component that facilitates . . ."
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "a stand-alone application that, throughexternal program code rather than a userinterface or direct user interaction, provides for. . ." |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "an application that can operate without a user interface and that provides for . . . ."
(1) The Parties' Positions
Plaintiff argues that Defendant is "selectively excluding whole embodiments from the scope of the claims without reason." Dkt. No. 63 at 15.
Defendant responds that its proposal is supported by the specification as well as by the doctrine of claim differentiation. Dkt. No. 67 at 16.
Plaintiff replies that Defendant's proposal improperly limits the claims to a single disclosed embodiment and excludes other claimed embodiments, such as recited in Claim 10. Dkt. No. 68 at 6. Plaintiff also argues that Defendant's proposal of "external program code" lacks support in the specification. Id.
(2) Analysis
The specification discloses that functions may be controlled with or without user interface control:
A user interface can be provided to the applications program to allow users to manually control functions, or functions can be controlled programmatically without any user intervention.'704 Patent at 7:35-36.
The context of the claims is consistent with such a reading. For example, Claims 1 and 13 of the '704 Patent recite (emphasis added):
1. A system that facilitates interaction with an industrial controller, comprising:
an automation interface component that facilitates communications with at least an industrial controller for creating, uploading to and downloading from the industrial controller a control program, and editing of the control program while in the industrial controller; and
a computer process interface library that comprises object-oriented based objects and classes that are associated with the automation interface component, the computer process interface library is compiled with the automation interface component and provides the automation interface component with a plurality of computer process interfaces that expose the automation interface component to one or more client application processes to facilitate programmatical communications with the industrial controller.
* * *
13. The system of claim 1, wherein the automation interface has a visible mode provided with a user interface and an invisible mode where no user interface is provided.
Thus, dependent Claim 13 reinforces that the "automation interface" can operate with or without a user interface.
Nonetheless, that the automation interface is "stand-alone" is a specific feature of a particular disclosed embodiment that should not be imported into the claims. See Comark, 156 F.3d at 1187; see also Phillips, 415 F.3d at 1323. Further, to whatever extent Defendant intends "stand-alone" to refer merely to the ability to operate without a user interface, such a limitation is already apparent in the remainder of Defendant's proposed construction.
At the August 24, 2016 hearing, Plaintiff proposed replacing "without" in the Court's preliminary construction with the phrase "with or without" so as to ensure that the construction does not exclude operating with a user interface. Defendant was amenable to this modification, although Defendant proposed that the construction should specify not merely "a user interface" but rather "a separate user interface." On balance, Defendant has not adequately justified its proposal that the user interface must be "separate," and also such a requirement would tend to confuse rather than clarify the scope of the claims.
The Court therefore hereby construes "an automation interface component that facilitates . . ." to mean "an application that can operate with or without a user interface and that provides for . . . ."
U. "editing the control program while in the industrial controller"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "remotely editing the control program sourcecode while that source code is resident in theindustrial controller" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "remotely editing the control program source code while that source code is resident in the industrial controller."
(1) The Parties' Positions
Defendant argues that although the specification discloses two ways in which control programs can be edited, the claim term makes clear that it is limited to only one of those embodiments. Dkt. No. 67 at 17.
Plaintiff replies: "However, the specification describes multiple embodiments in which edits may be made locally or remotely (see, e.g. 2:40-43, 3:53-56) and the term 'source code' appears nowhere in the specification. The only intrinsic record cited by [Defendant] is the patent's Background of the Invention section describing prior art techniques for 'creating' a control program, not 'editing' one as in the claim term." Dkt. No. 68 at 7.
(2) Analysis
Claim 1 of the '704 Patent, for example, recites in relevant part (emphasis added): "an automation interface component that facilitates communications with at least an industrial controller for creating, uploading to and downloading from the industrial controller a control program, and editing of the control program while in the industrial controller; . . . ."
The Background of the Invention states:
A ladder program can be created by connecting a special input module to a PLC [(programmable logic controller)] that includes a small keyboard and entering ladder logic statements directly into the memory of the PLC. Another method of creating a ladder logic program involves, utilizing a ladder logic program development/editor tool residing on a separate device, such as a personal computer. An operator or programmer of the personal computer draws a series of ladder logic graphs representing each rung or instruction directly on the computer display screen. Once the ladder logic program is complete, the PC software converts the graphs into the corresponding ladder logic commands. The ladder logic command[s] are then transferred to the PLC and stored in the PLC memory.'704 Patent at 2:1-13.
Both of the options set forth in the above-quoted disclosure refer to creating a program, not editing a program, so this disclosure is of limited relevance. Nonetheless, the disputed term refers to editing a program that is "in" the industrial controller, which excludes merely transferring an edited program to a controller.
At the August 24, 2016 hearing, Defendant agreed with the Court's preliminary construction except that Defendant withdrew its proposal of the word "remotely." Also, Plaintiff persuasively argued at the hearing that a control program may include more than source code, such as variables that may be controlled by the operator, and Plaintiff emphasized that the specification does not refer to "source code" of a control program.
The Court therefore hereby construes "editing the control program while in the industrial controller" to mean "editing the control program while that control program is resident in the industrial controller."
V. "the computer process interface library is compiled with the automation interface component"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
No construction of this term is proposed by[Defendant].[Plaintiff] proposes that no construction by theCourt is necessary and that this element shouldbe given its plain and ordinary meaning. | Invalid as indefinite under 35 U.S.C. § 112 ¶ 2for claiming both a system and a method ofusing that system. |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
W. "a packaging component associated with an industrial control device"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "a software component located on an industrialcontrol device to provide data to a particularremote consumer" |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 50. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
X. "an abstraction component that . . . determines the properties and methods that are exposed to a particular data consuming device"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "a device that, based on user input, selects andprepares data for transmission to a particulardata consuming device" |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 50. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
Y. "determining the properties and methods that are exposed to a particular data consuming device"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "based on user input, selecting and preparingdata for transmission to a particular dataconsuming device" |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 50. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
Z. "invokes methods"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "triggers the execution of proceduresassociated with objects and waits for theresult" |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 56. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
AA. "scale of the data"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "correlation and conversion information for thedata" |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 56. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
BB. "the monitoring station is configured to build a view of the components in real-time based upon the identifying component data"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Plain and ordinary meaning. | "the monitoring station is configured to build auser viewable display of the componentswithout previous knowledge of the componentsby polling the networked components andautomatically building the display based on theidentifying data received from the localmemory of the components" |
In their August 12, 2016 Joint Claim Construction Chart, the parties submit that they now agree that this term should be given its "[p]lain and ordinary meaning." Dkt. No. 71, Ex. A at 56. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
CC. "a plurality of monitoring representations built in real-time based upon the identifying data and viewable on the monitoring station" and "displaying a plurality of monitoring representations . . . built in real-time based on the status and identity data"
"a plurality of monitoring representations built in real-time based upon the identifyingdata and viewable on the monitoring station" ('567 Patent, Claim 9) | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Plain and ordinary meaning. | "a plurality of user viewable representations ofthe plurality of components built automaticallywithout prior knowledge of the componentsbased on the polled identifying data storedlocally in the components, the representationsviewable on the monitoring station" |
"displaying a plurality of monitoring representations . . . built in real-time based on thestatus and identity data" ('567 Patent, Claim 20) | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Plain and ordinary meaning. | "displaying a plurality of visual representationsof the components, built automatically withoutprior knowledge of the components based onpolling the status and identity data stored in thecomponents" |
In their August 12, 2016 Joint Claim Construction Chart, the parties submit that they now agree that these terms should be given their "[p]lain and ordinary meaning." Dkt. No. 71, Ex. A at 56. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
DD. "providing a uniform interface"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
This claim element does not require theCourt's construction because it is only found inthe non-limiting preamble of claim 1.Alternatively, this claim element should begiven its plain and ordinary meaning. | "providing a uniform standardizedprogramming interface" |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following: "This disputed term appears in the preamble of Claim 1 of the '122 Patent, which is addressed separately below."
Defendant argues that although "[t]he claim does not provide any clarity about what a 'uniform interface' means," "[t]he specification provides some hint of the patentee's intended meaning: that an object provider 'provide[s] an abstraction of the underlying proprietary software object interface [giving] the programmer a unified and standard programming environment.'" Dkt. No. 67 at 21 (citing '122 Patent at 10:40-59).
Plaintiff replies that "[Defendant] seeks to depart from the term's plain and ordinary meaning by importing its coined word 'standardized' (which does not appear in the specification and which is different than the term 'standard' that is present in the specification) without explanation as to why the language of the claim itself or the intrinsic record is insufficient." Dkt. No. 68 at 8.
This disputed term appears in the preamble of Claim 1 of the '122 Patent, which the Court addresses separately below.
V. CONSTRUCTION OF DISPUTED NON-MEANS TERMS AS TO WHICH THERE IS
A 35 U.S.C. § 112 , ¶ 6 ALLEGATION
Plaintiff has addressed these terms as a group, arguing that "[a]s can be seen from the plain language of these terms, they recite sufficiently definite structure, and thus, the presumption that 112 ¶6 does not apply has not been overcome." Dkt. No. 63 at 20 (citation and internal quotation marks omitted). Alternatively, Plaintiff argues that "ample structure is recited in the specification." Id.
Defendant has addressed these terms individually as set forth below.
EE. "a conversion system that receives a first and a second control program and converts the first and second control program into a first and second data set representing individual instruction of the first and second control program" and "a conversion system that receives a first and a second control program and converts the first and second control program into a first and second binary data set representing individual instruction of the first and second control program"
"a conversion system that receives a first and a second control program and converts thefirst and second control program into a first and second data set representing individualinstruction of the first and second control program" ('366 Patent, Claim 1) | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
This claim element is not governed by35 U.S.C. § 112 ¶ 6 and should be given itsplain and ordinary meaning.Alternatively, the function is "receiving a firstand a second control program and convertingthe first and second control program into a firstand second data set representing individualinstruction of the first and second controlprogram" and exemplary related structuresdisclosed in the specification include:PC software ('366 Patent: 1:67-2:2)conversion system 20, converter 22; firstconverter and second converter ('366 Patent:Fig. 2; 3:6-8; 4:60-5:22)conversion system 52 ('366 Patent: 5:67-6:7)compare utility ('366 Patent: 10:35-37) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"receiving a first and a second controlprogram and converting the first and secondcontrol program into a first and second data setrepresenting individual instruction of the firstand second control program"Structure:Indefinite |
"a conversion system that receives a first and a second control program and converts thefirst and second control program into a first and second binary data set representingindividual instruction of the first and second control program" ('366 Patent, Claim 9) | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
This claim element is not governed by35 U.S.C. § 112 ¶ 6 and should be given itsplain and ordinary meaning.Alternatively, the function is "receiving a firstand a second control program and convertingthe first and second control program into a firstand second binary data set representingindividual instruction of the first and secondcontrol program" and exemplary relatedstructures disclosed in the specificationinclude:PC software ('366 Patent: 1:67-2:2)conversion system 20, converter 22; firstconverter and second converter ('366 Patent:Fig. 2; 3:6-8; 4:60-5:22)conversion system 52 ('366 Patent: 5:67-6:7)compare utility ('366 Patent: 10:35-37) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"receiving a first and a second controlprogram and converting the first and secondcontrol program into a first and second binarydata set representing individual instruction ofthe first and second control program"Structure:Indefinite |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "35 U.S.C. § 112, ¶ 6 does not apply. Plain m[eanin]g."
(1) The Parties' Positions
Defendant argues that "the rebuttable presumption against application of 35 U.S.C. § 112 ¶6 is overcome" because "conversion system" does not connote any particular structure in the relevant art and because the explanations in the specification are purely functional. Dkt. No. 67 at 22. Also, Defendant submits, "the function recited in claims 1 and 9 ('receives a first and a second control program and converts . . .') is nearly identical to the recited function of claim 20 ('receiving a first and a second control program and converting . . .')." Id. at 23. Defendant concludes that "the specification fails to disclose an operative algorithm for the recited claim functions." Id. at 24.
Plaintiff replies that the structure is "the algorithm performed by a converter (Fig. 2 and corresponding written description) configured to receive control programs (Fig. 2 and 4:60-64) and convert them into binary data sets (Fig. 2 and 4:64-5:3) to achieve the claimed function and equivalents." Dkt. No. 68 at 9.
(2) Analysis
Title 35 U.S.C. § 112, ¶ 6 provides: "An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof."
"[T]he failure to use the word 'means' . . . creates a rebuttable presumption . . . that § 112, para. 6 does not apply." Williamson v. Citrix Online LLC, 792 F.3d 1339, 1348 (Fed. Cir. 2015) (citations and internal quotation marks omitted). "When a claim term lacks the word 'means,' the presumption can be overcome and § 112, para. 6 will apply if the challenger demonstrates that the claim term fails to recite sufficiently definite structure or else recites function without reciting sufficient structure for performing that function." Id. at 1349 (citations and internal quotation marks omitted).
Williamson, in an en banc portion of the decision, abrogated prior statements that the absence of the word "means" gives rise to a "strong" presumption against means-plus-function treatment. Id. (citation omitted). Williamson also abrogated prior statements that this presumption "is not readily overcome" and that this presumption cannot be overcome "without a showing that the limitation essentially is devoid of anything that can be construed as structure." Id. (citations omitted). Instead, Williamson found, "[h]enceforth, we will apply the presumption as we have done prior to Lighting World . . . ." Id. (citing Lighting World, Inc. v. Birchwood Lighting, Inc., 382 F.3d 1354, 1358 (Fed. Cir. 2004)). In a subsequent part of the decision not considered en banc, Williamson affirmed the district court's finding that the term "distributed learning control module" was a means-plus-function term that was indefinite because of lack of corresponding structure, and in doing so Williamson stated that "'module' is a well-known nonce word." 792 F.3d at 1350.
Here, the disputed terms each recite a "conversion system that" carries out particular algorithmic steps that are set forth in the claim terms themselves.
In so finding, the Court applies long-standing principles articulated prior to the abrogated Lighting World decision. See id.; see, e.g., Linear Tech. Corp. v. Impala Linear Corp., 379 F.3d 1311, 1320 (Fed. Cir. 2004) ("when the structure-connoting term 'circuit' is coupled with a description of the circuit's operation, sufficient structural meaning generally will be conveyed to persons of ordinary skill in the art, and § 112 ¶ 6 presumptively will not apply"; noting "language reciting [the circuits'] respective objectives or operations"); Apex, 325 F.3d at 1372 ("While we do not find it necessary to hold that the term 'circuit' by itself always connotes sufficient structure, the term 'circuit' with an appropriate identifier such as 'interface,' 'programming' and 'logic,' certainly identifies some structural meaning to one of ordinary skill in the art."); Personalized Media Commc'ns, LLC v. Int'l Trade Comm'n, 161 F.3d 696, 705 (Fed. Cir. 1998) ("Even though the term 'detector' does not specifically evoke a particular structure, it does convey to one knowledgeable in the art a variety of structures known as 'detectors.' We therefore conclude that the term 'detector' is a sufficiently definite structural term to preclude the application of § 112, ¶ 6."); Greenberg, 91 F.3d at 1583 (finding that "detent mechanism" was not a means-plus-function term because it denotes a type of device with a generally understood meaning in the mechanical arts); Affymetrix, Inc. v. Hyseq, Inc., 132 F. Supp. 2d 1212, 1232 (N.D. Cal. 2001) (finding that "'computer code' is not a generic term, but rather recites structure that is understood by those of skill in the art to be a type of device for accomplishing the stated functions").
Although Defendant argued at the August 24, 2016 that the claims and the specification lack sufficient detail regarding an algorithm, "[t]he amount of detail required to be included in claims depends on the particular invention and the prior art." Typhoon Touch, 659 F.3d at 1385 (citation and internal quotation marks omitted). Here, the relatively simple receiving and converting functions do not demand any greater detail than is recited.
The Court therefore hereby construes the disputed terms as set forth in the following chart:
Term | Construction |
---|---|
"a conversion system that receives a firstand a second control program and convertsthe first and second control program into afirst and second data set representingindividual instruction of the first and secondcontrol program" | 35 U.S.C. § 112, ¶ 6 does not apply.Plain meaning. |
"a conversion system that receives a firstand a second control program and convertsthe first and second control program into afirst and second binary data setrepresenting individual instruction of thefirst and second control program" | 35 U.S.C. § 112, ¶ 6 does not apply.Plain meaning. |
FF. "a difference module that determines differences between the first and the second control programs and provides a difference data structure representing the differences between the first and second control program" and "a difference module for determining differences between the first and the second binary data set and providing a difference data structure representing the differences between the first and second control programs"
"a difference module that determines differences between the first and the second controlprograms and provides a difference data structure representing the differences betweenthe first and second control program" ('366 Patent, Claim 1) | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
This claim element is not governed by35 U.S.C. § 112 ¶ 6 and should be given itsplain and ordinary meaning.Alternatively, the function is "determiningdifferences between the first and the secondcontrol programs and providing a differencedata structure representing the differencesbetween the first and second control program"and exemplary related structures disclosed inthe specification include:difference module 28 ('366 Patent: 5:1-22)comparison utility ('366 Patent: 10:37-42)computer 220 ('366 Patent: 9:61-10:16;10:37-42) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"determining differences between the firstand the second control programs and providinga difference data structure representing thedifferences between the first and secondcontrol program"Structure:Indefinite |
"a difference module for determining differences between the first and the second binarydata set and providing a difference data structure representing the differences between thefirst and second control programs" ('366 Patent, Claim 9) | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
This claim element is not governed by35 U.S.C. § 112 ¶ 6 and should be given itsplain and ordinary meaning.Alternatively, the function is "determiningdifferences between the first and the secondbinary data set and providing a difference datastructure representing the differences betweenthe first and second control programs" andexemplary related structures disclosed in thespecification include:difference module 28 ('366 Patent: 5:1-22)comparison utility ('366 Patent: 10:37-42)computer 220 ('366 Patent: 9:61-10:16;10:37-42) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"determining differences between the firstand the second binary data set and providing adifference data structure representing thedifferences between the first and secondcontrol programs"Structure:Indefinite |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary constructions:
Term | Preliminary Construction |
---|---|
"a difference module thatdetermines differencesbetween the first and thesecond control programsand provides a differencedata structure representingthe differences between thefirst and second controlprogram"('366 Pat., Cl. 1) | 35 U.S.C. § 112, ¶ 6 applies.Function:"determining differences between the first and the secondcontrol programs and providing a difference data structurerepresenting the differences between the first and second controlprogram"Structure:"difference module 28 configured to perform the algorithm setforth in the '366 Patent at 5:1-22, or comparison utilityconfigured to perform the algorithm set forth in the '366 Patent at10:37-42; and equivalents thereof" |
"a difference module fordetermining differencesbetween the first and thesecond binary data set andproviding a difference datastructure representing thedifferences between the firstand second controlprograms"('366 Pat., Cl. 9) | 35 U.S.C. § 112, ¶ 6 applies.Function:"determining differences between the first and the secondbinary data set and providing a difference data structurerepresenting the differences between the first and second controlprograms"Structure:"difference module 28 configured to perform the algorithm setforth in the '366 Patent at 5:1-22, or comparison utilityconfigured to perform the algorithm set forth in the '366 Patent at10:37-42; and equivalents thereof" |
(1) The Parties' Positions
Defendant argues that "the disputed 'a difference module' in claims 1 and 9 and 'means for determining differences. . . and providing' in claim 20 are all means-plus-function terms" because "[t]he claim terms recite only function." Dkt. No. 67 at 24. Defendant urges that the specification fails to disclose adequate structure. Id. at 25.
Plaintiff replies that the structure is "the algorithm performed by a difference module (Fig. 2, 5:1-13) or comparison utility (10:37-42) configured to achieve the claimed function and equivalents." Dkt. No. 68 at 9.
(2) Analysis
Legal principles regarding whether 35 U.S.C. § 112, ¶ 6 applies are discussed above as to the "conversion system" terms.
The disputed terms each recite a "difference module" that performs particular functions, and Williamson found that "module" is a "nonce" word that generally does not connote structure. 792 F.3d at 1350. Further, although "the presence of modifiers can change the meaning of 'module,'" no such modifiers are apparent here. Id. at 1351. The Court therefore finds that the disputed terms are means-plus-function terms governed by 35 U.S.C. § 112, ¶ 6.
When it applies, 35 U.S.C. § 112, ¶ 6 limits the scope of the functional term "to only the structure, materials, or acts described in the specification as corresponding to the claimed function and equivalents thereof." Id. at 1347.
Construing a means-plus-function limitation involves multiple steps. "The first step . . . is a determination of the function of the means-plus-function limitation." Medtronic, Inc. v. Advanced Cardiovascular Sys., Inc., 248 F.3d 1303, 1311 (Fed. Cir. 2001). Here, the parties agree that the claimed function is to "monitor a currently running node in an HPC system comprising a plurality of nodes."
"[T]he next step is to determine the corresponding structure disclosed in the specification and equivalents thereof." Id. A "structure disclosed in the specification is 'corresponding' structure only if the specification or prosecution history clearly links or associates that structure to the function recited in the claim." Id. The focus of the "corresponding structure" inquiry is not merely whether a structure is capable of performing the recited function, but rather whether the corresponding structure is "clearly linked or associated with the [recited] function." Id. The corresponding structure "must include all structure that actually performs the recited function." Default Proof Credit Card Sys. v. Home Depot U.S.A., Inc., 412 F.3d 1291, 1298 (Fed. Cir. 2005). However, § 112 does not permit "incorporation of structure from the written description beyond that necessary to perform the claimed function." Micro Chem., Inc. v. Great Plains Chem. Co., 194 F.3d 1250, 1258 (Fed. Cir. 1999).
Here, the parties agree upon the claimed function. As to the corresponding structure, Plaintiff has cited "exemplary related structures disclosed in the specification." On balance, the proper corresponding structure is "difference module 28" or "comparison utility" configured to perform the algorithms set forth in the specification. See '366 Patent at 5:1-13 & 10:37-42; see, e.g., Media Rights Techs., Inc. v. Capital One Fin. Corp., 800 F.3d 1366, 1374 (Fed. Cir. 2015) ("Because these functions are computer-implemented functions, . . . the structure disclosed in the specification must be more than a general purpose computer or microprocessor. Instead, we require that the specification disclose an algorithm for performing the claimed function.") (citations omitted).
The Court therefore hereby construes the disputed terms as set forth in the following chart:
Term | Construction |
---|---|
"a difference module that determinesdifferences between the first and the secondcontrol programs and provides a differencedata structure representing the differencesbetween the first and second controlprogram" | 35 U.S.C. § 112, ¶ 6 applies.Function:"determining differences between thefirst and the second control programs andproviding a difference data structurerepresenting the differences between thefirst and second control program"Structure:"difference module 28 configured toperform the algorithm set forth in the '366Patent at 5:1-22, or comparison utilityconfigured to perform the algorithm setforth in the '366 Patent at 10:37-42; andequivalents thereof" |
"a difference module for determiningdifferences between the first and the secondbinary data set and providing a differencedata structure representing the differencesbetween the first and second controlprograms" | 35 U.S.C. § 112, ¶ 6 applies.Function:"determining differences between thefirst and the second binary data set andproviding a difference data structurerepresenting the differences between thefirst and second control programs"Structure:"difference module 28 configured toperform the algorithm set forth in the '366Patent at 5:1-22, or comparison utilityconfigured to perform the algorithm setforth in the '366 Patent at 10:37-42; andequivalents thereof" |
---|
"a comparison module that receives the difference data structure and the first and secondcontrol programs and generates a plurality of comparison scenarios to provide a pluralityof comparison set views, the comparison module employing a decision model to determinethe optimal display set view from the plurality of comparison set views by maximizingindividual instruction matches between the first and second control programs"('366 Patent, Claim 1) | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
This claim element is not governed by35 U.S.C. § 112 ¶ 6 and should be given itsplain and ordinary meaning.Alternatively, the function is "receiving thedifference data structure and the first andsecond control programs and generating aplurality of comparison scenarios to provide aplurality of comparison set views andemploying a decision model to determine theoptimal display set view from the plurality ofcomparison set views by maximizingindividual instruction matches between the firstand second control programs" and exemplaryrelated structures disclosed in the specificationinclude:viewing system 40, comparison component42 ('366 Patent: 5:30-40)viewing system 60, comparison component62 ('366 Patent: 6:54-64compare utility ('366 Patent: 10:42-46)computer 220 ('366 Patent: 9:61-10:16;10:42-46) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"receiving the difference data structure andthe first and second control programs andgenerating a plurality of comparison scenariosto provide a plurality of comparison set views,and determining the optimal display set viewfrom the plurality of comparison set views bymaximizing individual instruction matchesbetween the first and second control programs"Structure:Indefinite |
"a comparison module that receives the difference data structure and the first and secondcontrol programs and generates a plurality of comparison scenarios to provide a pluralityof comparison set views; a decision model that determines an optimal display set view fromthe plurality of comparison set views by maximizing individual instruction matchesbetween the first and second control programs" ('366 Patent, Claim 9) | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
This claim element is not governed by35 U.S.C. § 112 ¶ 6 and should be given itsplain and ordinary meaning.Alternatively, the two functions are"receiving the difference data structure and thefirst and second control programs andgenerating a plurality of comparison scenariosto provide a plurality of comparison set views"and "determining an optimal display set viewfrom the plurality of comparison set views bymaximizing individual instruction matchesbetween the first and second control programs"and exemplary related structures disclosed inthe specification include:viewing system 40, comparison component42 ('366 Patent: 5:30-40)viewing system 60, comparison component62 ('366 Patent: 6:54-64[)]compare utility ('366 Patent: 10:42-46)computer 220 ('366 Patent: 9:61-10:16;10:42-46) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"receiving the difference data structure andthe first and second control programs andgenerating a plurality of comparison scenariosto provide a plurality of comparison set views;determining an optimal display set view fromthe plurality of comparison set views bymaximizing individual instruction matchesbetween the first and second control programs"Structure:Indefinite |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary constructions:
Term | Preliminary Construction |
---|---|
"a comparison module thatreceives the difference datastructure and the first andsecond control programsand generates a plurality of | 35 U.S.C. § 112, ¶ 6 applies.Function:"receiving the difference data structure and the first andsecond control programs and generating a plurality of comparison |
comparison scenarios toprovide a plurality ofcomparison set views, thecomparison moduleemploying a decision modelto determine the optimaldisplay set view from theplurality of comparison setviews by maximizingindividual instructionmatches between the firstand second controlprograms"('366 Pat., Cl. 1) | scenarios to provide a plurality of comparison set views andemploying a decision model to determine the optimal display setview from the plurality of comparison set views by maximizingindividual instruction matches between the first and secondcontrol programs"Structure:"comparison component 42 configured to perform thealgorithm set forth in the '366 Patent at 5:30-40, or comparisoncomponent 62 configured to perform the algorithm set forth in the'366 Patent at 6:54-64, or compare utility configured to performthe algorithm set forth in the '366 Patent at 10:42-46; andequivalents thereof |
"a comparison module thatreceives the difference datastructure and the first andsecond control programsand generates a plurality ofcomparison scenarios toprovide a plurality ofcomparison set views; adecision model thatdetermines an optimaldisplay set view from theplurality of comparison setviews by maximizingindividual instructionmatches between the firstand second controlprograms"('366 Pat., Cl. 9) | 35 U.S.C. § 112, ¶ 6 applies.Function:"receiving the difference data structure and the first andsecond control programs and generating a plurality of comparisonscenarios to provide a plurality of comparison set views"Structure:"comparison component 42 configured to perform thealgorithm set forth in the '366 Patent at 5:30-40, or comparisoncomponent 62 configured to perform the algorithm set forth in the'366 Patent at 6:54-64, or compare utility configured to performthe algorithm set forth in the '366 Patent at 10:42-44; andequivalents thereof""a decision model that determines an optimal display set viewfrom the plurality of comparison set views by maximizingindividual instruction matches between the first and secondcontrol programs":Plain meaning (35 U.S.C. § 112, ¶ 6 does not apply) |
(1) The Parties' Positions
Defendant argues that "each term recites only function, without structure." Dkt. No. 67 at 26. Also, Defendant submits, "the '366 Patent does not disclose adequate corresponding structure, material, or acts for performing all of the recited functions." Id.
Plaintiff replies that the structure is "the algorithm performed by a viewing system (Fig 3, 5:30-40) configured to achieve the claimed function(s) and equivalents." Dkt. No. 68 at 9.
(2) Analysis
As a threshold matter, the second of these disputed terms submitted by the parties includes a distinct disputed term, namely a "decision model," which the Court construes separately herein.
Legal principles regarding 35 U.S.C. § 112, ¶ 6 are discussed above as to other disputed terms.
Here, two of these disputed terms each recite a "comparison module" that performs particular functions, and Williamson found that "module" is a "nonce" word that generally does not connote structure. 792 F.3d at 1350. Further, although "the presence of modifiers can change the meaning of 'module,'" no such modifiers are apparent here. Id. at 1351. The Court therefore finds that the "comparison module" terms presented here are means-plus-function terms governed by 35 U.S.C. § 112, ¶ 6.
As to the claimed function for the "comparison module" terms, the differences between the parties' proposals appear to be stylistic rather than substantive. The Court adopts Plaintiff's proposals, which more closely follow the language that appears in the disputed terms themselves.
As to the corresponding structure for the "comparison module" terms, Plaintiff has cited "exemplary related structures disclosed in the specification." A patent may disclose multiple "alternative structures for performing the claimed function," and the Court may identify those alternatives rather than attempt to formulate a single claim interpretation to cover multiple alternatives. Ishida Co., Ltd. v. Taylor, 221 F.3d 1310, 1316 (Fed. Cir. 2000). On balance, the proper corresponding structure is "comparison component 42," "comparison component 62," or "compare utility" configured to perform the algorithms set forth in the specification. See '366 Patent at 5:30-40, 6:54-66 & 10:42-46; see, e.g., Media Rights, 800 F.3d at 1374.
Finally, Defendant has not demonstrated that "decision model" is a nonce term or that this term otherwise fails to connote structure. Alternatively and in addition, "a decision model that determines an optimal display set view from the plurality of comparison set views by maximizing individual instruction matches between the first and second control programs" is not a means-plus-function term because the term itself sets forth an algorithm. See Typhoon Touch, 659 F.3d at 1385 ("the amount of detail that must be included in the specification depends on the subject matter that is described and its role in the invention as a whole, in view of the existing knowledge in the field of the invention") (citation and internal quotation marks omitted). The Court thus hereby expressly rejects Defendant's argument that this is a means-plus-function term. No further construction is necessary. See U.S. Surgical, 103 F.3d at 1568; see also O2 Micro, 521 F.3d at 1362; Finjan, 626 F.3d at 1207; ActiveVideo, 694 F.3d at 1326; Summit 6, 802 F.3d at 1291.
The Court therefore hereby construes the disputed terms as set forth in the following chart:
Term | Construction |
---|---|
"a comparison module that receives thedifference data structure and the first andsecond control programs and generates aplurality of comparison scenarios to providea plurality of comparison set views, thecomparison module employing a decisionmodel to determine the optimal display setview from the plurality of comparison setviews by maximizing individual instructionmatches between the first and secondcontrol programs" | 35 U.S.C. § 112, ¶ 6 applies.Function:"receiving the difference data structureand the first and second control programsand generating a plurality of comparisonscenarios to provide a plurality ofcomparison set views and employing adecision model to determine the optimaldisplay set view from the plurality ofcomparison set views by maximizingindividual instruction matches between thefirst and second control programs"Structure:"comparison component 42 configuredto perform the algorithm set forth in the'366 Patent at 5:30-40, or comparisoncomponent 62 configured to perform thealgorithm set forth in the '366 Patent at6:54-64, or compare utility configured toperform the algorithm set forth in the '366Patent at 10:42-46; and equivalents thereof" |
"a comparison module that receives thedifference data structure and the first andsecond control programs and generates aplurality of comparison scenarios to providea plurality of comparison set views" | 35 U.S.C. § 112, ¶ 6 applies.Function:"receiving the difference data structureand the first and second control programsand generating a plurality of comparisonscenarios to provide a plurality ofcomparison set views"Structure:"comparison component 42 configuredto perform the algorithm set forth in the'366 Patent at 5:30-40, or comparisoncomponent 62 configured to perform thealgorithm set forth in the '366 Patent at6:54-64, or compare utility configured toperform the algorithm set forth in the '366Patent at 10:42-44; and equivalents thereof" |
"a decision model that determines anoptimal display set view from the pluralityof comparison set views by maximizingindividual instruction matches between thefirst and second control programs" | 35 U.S.C. § 112, ¶ 6 does not apply.Plain meaning |
---|
HH. "a viewing system that accepts the first and second data sets and provides a graphical view of the first and second control programs in a single view based on the first and second binary data sets"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
This claim element is not governed by35 U.S.C. § 112 ¶ 6 and should be given itsplain and ordinary meaning.Alternatively, the function is "accepting thefirst and second data sets and providing agraphical view of the first and second controlprograms in a single view based on the firstand second binary data sets" and exemplaryrelated structures disclosed in the specificationinclude:computer display screen, computer display('366 Patent: 1:64-66; 3:64-4:2)a single frame window ('366 Patent: 3:45-54; 4:2-9)viewing system 14 ('366 Patent: 14:27-49)display system 16, CRT ('366 Patent: 4:49-59; Figs 2 and 3)viewing system 60, viewing component 66('366 Patent: 6:50-7:4; Fig. 5)input/output system 70 ('366 Patent: 7:4-7)frame 100, frame window 100 ('366Patent: 7:48-8:41; Figs. 7-9)monitor 247 ('366 Patent: 9:28-32; Fig. 10)compare utility ('366 Patent: 10:52-54)computer 220, CRT ('366 Patent: 9:61-10:16; 10:52-54) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"accepting the first and second data setsand providing a graphical view of the first andsecond control programs in a single view basedon the first and second binary data sets"Structure:Indefinite |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 42-44. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
II. "a viewing system that accepts the optimal display set view and provides a graphical view of the first and second control programs in an adjacent configuration"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
This claim element is not governed by 35U.S.C. § 112 ¶ 6 and should be given its plainand ordinary meaning.Alternatively, the function is "accepting theoptimal display set view and providing agraphical view of the first and second controlprograms in an adjacent configuration" andexemplary related structures disclosed in thespecification include:computer display screen, computer display('366 Patent: 1:64-66; 3:64-4:2)a single frame window ('366 Patent: 3:45-54; 4:2-9)viewing system 14 ('366 Patent: 14:27-49)display system 16, CRT ('366 Patent: 4:49-59; Figs 2 and 3)viewing system 60, viewing component 66('366 Patent: 6:50-7:4; Fig. 5)input/output system 70 ('366 Patent: 7:4-7)frame 100, frame window 100 ('366Patent: 7:48-8:41; Figs. 7-9)monitor 247 ('366 Patent: 9:28-32; Fig. 10)compare utility ('366 Patent: 10:52-54)computer 220, CRT ('366 Patent: 9:61-10:16; 10:52-54) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"accepting the optimal display set view andproviding a graphical view of the first andsecond control programs in an adjacentconfiguration"Structure:Indefinite |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 44-45. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order. JJ. "converting the first and second ladder logic control program into a first and second data set representing individual rungs of the first and second ladder logic control program," "determining differences between the first and the second ladder logic control programs and providing a difference data structure representing the differences between the first and second ladder logic control program," and "generating a plurality of comparison scenarios based on the differences to provide a plurality of comparison set views and selecting an optimal display set view from the plurality of comparison set views by maximizing individual rung matches between the first and second ladder logic control programs"
"converting the first and second ladder logic control program into a first and second dataset representing individual rungs of the first and second ladder logic control program" | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
This claim element is not governed by35 U.S.C. § 112 ¶ 6.Plain and ordinary meaning. | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"converting the first and second ladderlogic control program into a first and seconddata set representing individual rungs of thefirst and second ladder logic control program"Structure:Indefinite |
"determining differences between the first and the second ladder logic control programsand providing a difference data structure representing the differences between the first andsecond ladder logic control program" | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
This claim element is not governed by35 U.S.C. § 112 ¶ 6.Plain and ordinary meaning. | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"determining differences between the firstand the second ladder logic control programsand providing a difference data structurerepresenting the differences between the firstand second ladder logic control program"Structure:Indefinite |
"generating a plurality of comparison scenarios based on the differences to provide aplurality of comparison set views and selecting an optimal display set view from theplurality of comparison set views by maximizing individual rung matches between the firstand second ladder logic control programs" | |
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
This claim element is not governed by35 U.S.C. § 112 ¶ 6.Plain and ordinary meaning. | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"generating a plurality of comparisonscenarios based on the differences to provide aplurality of comparison set views and selectingan optimal display set view from the pluralityof comparison set views by maximizingindividual rung matches between the first andsecond ladder logic control programs"Structure:Indefinite |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "35 U.S.C. § 112, ¶ 6 does not apply. Plain m[eanin]g."
Defendant argues that "[t]he rebuttable presumption against the above three claim terms not being in step-plus-function format is overcome, because the limitations contain no act for performing the recited claim functions." Dkt. No. 67 at 26. In other words, Defendant argues, "those elements recite steps for what is accomplished in the claim, but not how it is accomplished, and 35 U.S.C. §112 ¶6 applies to each of the terms." Id. at 27.
The Court of Appeals for the Federal Circuit has stated: "Where the claim drafter has not signaled his intent to invoke § 112, paragraph 6 by using the 'step[s] for' language, we are unwilling to resort to that provision to constrain the scope of coverage of a claim limitation without a showing that the limitation contains nothing that can be construed as an act." Masco Corp. v. U.S., 303 F.3d 1316, 1327 (Fed. Cir. 2002).
Here, the disputed terms set forth acts and also set forth limitations as to how such acts must be performed. For example, the "converting" must be to data "representing" rungs of ladder logic control programs, the "determining" must compare ladder logic control programs, and the "generating" must be based on certain differences and must provide comparison set views.
The Court therefore hereby expressly rejects Defendant's argument that the disputed terms are governed by 35 U.S.C. § 112 ¶ 6. No further construction is necessary. See U.S. Surgical, 103 F.3d at 1568; see also O2 Micro, 521 F.3d at 1362; Finjan, 626 F.3d at 1207; ActiveVideo, 694 F.3d at 1326; Summit 6, 802 F.3d at 1291.
The Court accordingly hereby construes the disputed terms as set forth in the following chart:
Term | Construction |
---|---|
"converting the first and second ladder logiccontrol program into a first and second dataset representing individual rungs of the firstand second ladder logic control program" | 35 U.S.C. § 112, ¶ 6 does not apply.Plain meaning |
"determining differences between the firstand the second ladder logic controlprograms and providing a difference datastructure representing the differencesbetween the first and second ladder logiccontrol program" | 35 U.S.C. § 112, ¶ 6 does not apply.Plain meaning |
"generating a plurality of comparisonscenarios based on the differences toprovide a plurality of comparison set viewsand selecting an optimal display set viewfrom the plurality of comparison set viewsby maximizing individual rung matchesbetween the first and second ladder logiccontrol programs" | 35 U.S.C. § 112, ¶ 6 does not apply.Plain meaning |
VI. CONSTRUCTION OF DISPUTED TERMS AS TO WHICH THE PARTIES AGREE
35 U.S.C. § 112, ¶ 6 APPLIES
Plaintiff has addressed these terms as a group, arguing that "for most of the proposed functions . . ., Defendant proposes changing the claimed function from what is recited in the claim to some other function with no explanation as to why the Court should deviate from the express claim language." Dkt. No. 63 at 26.
Defendant has addressed some of these terms individually as set forth below.
KK. "means for monitoring the memory locations of the transfer of data to and from electronic memory to produce a breakpoint signal when the memory location matches at least one particular memory location indicated by the breakpoint value"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"monitoring the memory locations of thetransfer of data to and from electronic memoryto produce a breakpoint signal when thememory location matches at least oneparticular memory location indicated by thebreakpoint value"Exemplary Structures:a circuit, circuitry ('409 Patent; 2:57-64;3:12-16)breakpoint logic circuitry 260 ('409 Patent:12:27-34)comparator 263 ('409 Patent: 12:39-58)condition registers 264-268 ('409 Patent:12:52-14:9)secondary bus 254 ('409 Patent: 12:27-34)a software interrupt routine ('409 Patent; 2:65-67) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"means for monitoring the memorylocations of the transfer of data to and fromelectronic memory to produce a breakpointsignal when the memory location matches atleast one particular memory location indicatedby the breakpoint value"Structure:Indefinite |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "Function: 'monitoring the memory locations of the transfer of data to and from electronic memory to produce a breakpoint signal when the memory location matches at least one particular memory location indicated by the breakpoint value,'" and "Structure: 'comparator 263 ('409 Patent 12:39-58) and equivalents thereof.'"
The parties agree as to the claimed function. As to the corresponding structure, Defendant argues that "[Plaintiff's] citation to multiple exemplary structures[] confuses the bounds of the claim term." Dkt. No. 67 at 27. Plaintiff replies that the structure is "the algorithm by which the comparator (12:39-58) and condition register (12:52-58), performs (12:59-14:9) the claimed function and equivalents. In addition, comparators were a fundamental and generic programming concept well known to those skilled in the art at the time." Dkt. No. 68 at 8-9 (citing Blue Spike, LLC v. Tex. Instruments, Inc., No. 6:12-CV-499, 2014 WL 5299320, at *21-*22 (E.D. Tex. Oct. 16, 2014). On balance, the proper corresponding structure is "comparator 263." See '409 Patent at 12:39-58.
The Court therefore hereby construes the disputed term as set forth in the following chart:
Term | Construction |
---|---|
"means for monitoring the memorylocations of the transfer of data to and fromelectronic memory to produce a breakpointsignal when the memory location matches atleast one particular memory locationindicated by the breakpoint value" | 35 U.S.C. § 112, ¶ 6 applies.Function:"monitoring the memory locations of thetransfer of data to and from electronicmemory to produce a breakpoint signalwhen the memory location matches at leastone particular memory location indicated bythe breakpoint value"Structure:"comparator 263 ('409 Patent: 12:39-58); and equivalents thereof" |
LL. "means for receiving a first and a second control program and converting the first and second control program into a first and second binary data set representing individual instruction of the first and second control program"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"receiving a first and a second controlprogram and converting the first and secondcontrol program into a first and second binarydata set representing individual instruction ofthe first and second control program"Exemplary structures:PC software ('366 Patent: 1:67-2:2)conversion system 20, converter 22; firstconverter and second converter ('366 Patent:Fig. 2; 3:6-8; 4:60-5:22)conversion system 52 ('366 Patent: 5:67-6:7)compare utility ('366 Patent: 10:35-37)computer 220 ('366 Patent: 9:61-10:16;10:35-37) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"receiving a first and a second controlprogram and converting the first and secondcontrol program into a first and second binarydata set representing individual instruction ofthe first and second control program"Structure:Indefinite |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "Function: 'receiving a first and a second control program and converting the first and second control program into a first and second binary data set representing individual instruction of the first and second control program,'" and "Structure: 'converter 22; and equivalents thereof.'"
The parties agree as to the claimed function. Plaintiff submits that the structure is "the algorithm performed by a converter (Fig. 2 and corresponding written description) configured to receive control programs (Fig. 2 and 4:60-64) and convert them into binary data sets (Fig. 2 and 4:64-5:3) to achieve the claimed function and equivalents." Dkt. No. 68 at 9. On balance, the proper corresponding structure is "converter 22." '366 Patent at 4:63-5:1.
The Court therefore hereby construes the disputed term as set forth in the following chart:
Term | Construction |
---|---|
"means for receiving a first and a secondcontrol program and converting the firstand second control program into a first andsecond binary data set representingindividual instruction of the first and secondcontrol program" | 35 U.S.C. § 112, ¶ 6 applies.Function:"receiving a first and a second controlprogram and converting the first andsecond control program into a first andsecond binary data set representingindividual instruction of the first and secondcontrol program"Structure:"converter 22 ('366 Patent: 4:63-5:1);and equivalents thereof" |
MM. "means for determining differences between the first and the second binary data set and providing a difference data structure representing the differences between the first and second control programs"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"determining differences between the firstand the second binary data set and providing adifference data structure representing thedifferences between the first and secondcontrol programs"Exemplary structures:difference module 28 ('366 Patent: 5:1-22)comparison utility ('366 Patent: 10:37-42)computer 220 ('366 Patent: 9:61-10:16;10:37-42) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"determining differences between the firstand the second binary data set and providing adifference data structure representing thedifferences between the first and secondcontrol programs"Structure:Indefinite |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "Function: 'determining differences between the first and the second binary data set and providing a difference data structure representing the differences between the first and second control programs,'" and "Structure: 'difference module 28 configured to perform the algorithm set forth in the '366 Patent at 5:1-22, or comparison utility configured to perform the algorithm set forth in the '366 Patent at 10:37-42; and equivalents thereof.'"
The parties agree as to the claimed function. Plaintiff submits that the structure is "the algorithm performed by a difference module (Fig. 2, 5:1-13) or comparison utility (10:37-42) configured to achieve the claimed function and equivalents." Dkt. No. 68 at 9. On balance, the proper corresponding structure is "difference module 28" or "comparison utility" configured to perform the algorithms set forth in the specification. '366 Patent at 5:1-13 & 10:37-42; see, e.g., Media Rights, 800 F.3d at 1374 ("Because these functions are computer-implemented functions, . . . the structure disclosed in the specification must be more than a general purpose computer or microprocessor. Instead, we require that the specification disclose an algorithm for performing the claimed function.") (citations omitted).
At the August 24, 2016 hearing, Defendant argued that the specification merely restates the claimed function. Of particular note, however, the specification explains that differences identified may be "inserted rungs, deleted rungs, modified rungs and moved rungs." '366 Patent at 5:7-9.
The Court therefore hereby construes the disputed term as set forth in the following chart:
Term | Construction |
---|---|
"means for determining differences betweenthe first and the second binary data set andproviding a difference data structurerepresenting the differences between thefirst and second control programs" | 35 U.S.C. § 112, ¶ 6 applies.Function:"determining differences between thefirst and the second binary data set andproviding a difference data structurerepresenting the differences between thefirst and second control programs"Structure:"difference module 28 configured toperform the algorithm set forth in the '366Patent at 5:1-22, or comparison utilityconfigured to perform the algorithm setforth in the '366 Patent at 10:37-42; andequivalents thereof" |
NN. "means for receiving the difference data structure and the first and second control programs and generating a plurality of comparison scenarios to provide a plurality of comparison set views; means for determining an optimal display set view from the plurality of comparison set views by maximizing individual instruction matches between the first and second control programs"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"receiving the difference data structure andthe first and second control programs andgenerating a plurality of comparison scenariosto provide a plurality of comparison set views"Exemplary structure:viewing system 40, comparison component42 ('366 Patent: 5:30-40)viewing system 60, comparison component62 ('366 Patent: 6:54-64[)]compare utility ('366 Patent: 10:42-46)computer 220 ('366 Patent: 9:61-10:16;10:42-46)Function:"determining an optimal display set viewfrom the plurality of comparison set views bymaximizing individual instruction matchesbetween the first and second control programs"Exemplary structures:viewing system 40, comparison component42 ('366 Patent: 5:30-40)viewing system 60, comparison component62 ('366 Patent: 6:54-64[)]compare utility ('366 Patent: 10:42-46)computer 220 ('366 Patent: 9:61-10:16;10:42-46) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"receiving the difference data structure andthe first and second control programs andgenerating a plurality of comparison scenariosto provide a plurality of comparison set views;means for determining an optimal display setview from the plurality of comparison setviews by maximizing individual instructionmatches between the first and second controlprograms"Structure:Indefinite |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary constructions:
Term | Preliminary Construction |
---|---|
"means for receiving the difference datastructure and the first and second controlprograms and generating a plurality ofcomparison scenarios to provide a plurality ofcomparison set views"('366 Pat., Cl. 20) | Function:"receiving the difference data structure andthe first and second control programs andgenerating a plurality of comparison scenariosto provide a plurality of comparison set views"Structure:"comparison component 42 configured toperform the algorithm set forth in the '366Patent at 5:30-40, or comparison component 62configured to perform the algorithm set forth inthe '366 Patent at 6:54-64, or compare utilityconfigured to perform the algorithm set forth inthe '366 Patent at 10:42-44; and equivalentsthereof" |
"means for determining an optimal display setview from the plurality of comparison setviews by maximizing individual instructionmatches between the first and second controlprograms"('366 Pat., Cl. 20) | Function:"determining an optimal display set viewfrom the plurality of comparison set views bymaximizing individual instruction matchesbetween the first and second control programs"Structure:"decision model 44 configured to performthe algorithm set forth in the '366 Patent at5:34-42, or decision model 64 configured toperform the algorithm set forth in the '366Patent at 6:58-64, or decision modelconfigured to perform the algorithm set forth inthe '366 Patent at 10:44-46; and equivalentsthereof" |
The parties agree as to the claimed function. On balance, the Court hereby construes the disputed terms as set forth in the following chart (see, e.g., Media Rights, 800 F.3d at 1374):
Term | Construction |
---|---|
"means for receiving the difference datastructure and the first and second controlprograms and generating a plurality ofcomparison scenarios to provide a pluralityof comparison set views" | 35 U.S.C. § 112, ¶ 6 applies.Function:"receiving the difference data structureand the first and second control programsand generating a plurality of comparisonscenarios to provide a plurality ofcomparison set views"Structure:"comparison component 42 configuredto perform the algorithm set forth in the'366 Patent at 5:30-40, or comparisoncomponent 62 configured to perform thealgorithm set forth in the '366 Patent at6:54-64, or compare utility configured toperform the algorithm set forth in the '366Patent at 10:42-44; and equivalents thereof" |
"means for determining an optimal displayset view from the plurality of comparison setviews by maximizing individual instructionmatches between the first and secondcontrol programs" | 35 U.S.C. § 112, ¶ 6 applies.Function:"determining an optimal display set viewfrom the plurality of comparison set viewsby maximizing individual instructionmatches between the first and secondcontrol programs"Structure:"decision model 44 configured toperform the algorithm set forth in the '366Patent at 5:34-42, or decision model 64configured to perform the algorithm setforth in the '366 Patent at 6:58-64, ordecision model configured to perform thealgorithm set forth in the '366 Patent at10:44-46; and equivalents thereof" |
OO. "means for accepting the optimal display set view and providing a graphical view of the first and second control programs in an adjacent configuration"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"accepting the optimal display set view andproviding a graphical view of the first andsecond control programs in an adjacentconfiguration"Exemplary structures:computer display screen, computer display('366 Patent: 1:64-66; 3:64-4:2)a single frame window ('366 Patent: 3:45-54; 4:2-9)viewing system 14 ('366 Patent: 14:27-49)display system 16, CRT ('366 Patent: 4:49-59; Figs 2 and 3)viewing system 60, viewing component 66('366 Patent: 6:50-7:4; Fig. 5)input/output system 70 ('366 Patent: 7:4-7)frame 100, frame window 100 ('366Patent: 7:48-8:41; Figs. 7-9)monitor 247 ('366 Patent: 9:28-32; Fig. 10)compare utility ('366 Patent: 10:52-54)computer 220, CRT ('366 Patent: 9:61-10:16; 10:52-54) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"accepting the optimal display set view andproviding a graphical view of the first andsecond control programs in an adjacentconfiguration"Structure:Indefinite |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 46-47. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
PP. "means for accepting data from an industrial control component"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"accepting data from an industrial controlcomponent"Exemplary structures:packaging component 110, which may be ahardware or software interface ('585 Patent:6:1-20)abstraction component 210 ('585 Patent:7:28-30; 6:14-20)industrial controller 410 ('585 Patent: 10:8-14)data object component 510 (10:43-45;6:14-20)data object library 610 ('585 Patent: 11:14-18)encapsulation component 730 ('585 Patent:11:55-60; 6:14-20)various wired and/or wireless media ('585Patent: 12:23-48)network interface 1148 or communicationconnection 1150 ('585 Patent: 15:16-38)communication framework 1250 ('585Patent: 15:47-57) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"receiving data from an industrial controlcomponent"Structure:Indefinite |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 50-52. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
QQ. "means for determining the properties and methods that are exposed to a particular data consuming device" and "means for abstracting a property and a method of the data"
"means for determining the properties and methods that are exposed to a particular dataconsuming device" | |
---|---|
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Function:"determining the properties and methodsthat are exposed to a particular data consumingdevice"Exemplary structure:abstraction component 210 ('585 Patent:7:36-46; 6:14-20) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"[Defendant] adopts [Plaintiff's] proposedfunction, only, for this term."Structure:Indefinite |
"means for abstracting a property and a method of the data" | |
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
Function:"abstracting a property and a method of thedata"Exemplary structures:abstraction component 210 ('585 Patent:7:25-46; 6:14-20)data object component 510 ('585 Patent:10:43-45; 6:14-20) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"[Defendant] adopts [Plaintiff's] proposedfunction, only, for this term."Structure:Indefinite |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary constructions:
Term | Preliminary Construction |
---|---|
"means for determining the properties andmethods that are exposed to a particular dataconsuming device"('585 Pat., Cl. 25) | Function:"determining the properties and methodsthat are exposed to a particular data consumingdevice"Structure:"abstraction component 210 configured toperform the algorithm set forth in the '585Patent at 7:25-46; and equivalents thereof |
"means for abstracting a property and a methodof the data"('585 Pat., Cl. 25) | Function:"abstracting a property and a method of thedata"Structure:"abstraction component 210 configured toperform the algorithm set forth in the '585Patent at 7:25-46, or data object component510 configured to perform the algorithm setforth in the '585 Patent at 10:43-45; andequivalents thereof" |
The parties agree as to the claimed function. As to the corresponding structure, Defendant argues that "[Plaintiff's] purported 'exemplary structure(s)' reveal nothing more than purely functional language . . . ." Dkt. No. 67 at 28.
Plaintiff replies that the structure for the "means for determining . . ." is "the algorithm performed by an abstraction component (7:36-46) configured to achieve the claimed function and equivalents." Dkt. No. 68 at 10. Plaintiff also submits that the structure for the "means for abstracting" is "the algorithm performed by an abstraction component (7:25-46) configured to achieve the claimed function and equivalents or the algorithm performed by a data object component (10:43-45) configured to achieve the claimed function and equivalents." Dkt. No. 68 at 10.
On balance, the proper corresponding structure includes "abstraction component 210" configured to perform the algorithm set forth in the '585 Patent at 7:25-46. See, e.g., Media Rights, 800 F.3d at 1374. For the "means for abstracting a property and a method of the data," corresponding structure also includes "data object component 510" configured to perform the algorithm set forth in the '585 Patent at 10:43-45. See id.
The Court therefore hereby construes the disputed term as set forth in the following chart:
Term | Construction |
---|---|
"means for determining the properties andmethods that are exposed to a particulardata consuming device" | 35 U.S.C. § 112, ¶ 6 applies.Function:"determining the properties andmethods that are exposed to a particulardata consuming device"Structure:"abstraction component 210 configuredto perform the algorithm set forth in the'585 Patent at 7:25-46; and equivalentsthereof" |
"means for abstracting a property and amethod of the data" | 35 U.S.C. § 112, ¶ 6 applies.Function:"abstracting a property and a method ofthe data"Structure:"abstraction component 210 configuredto perform the algorithm set forth in the'585 Patent at 7:25-46, or data objectcomponent 510 configured to perform thealgorithm set forth in the '585 Patent at10:43-45; and equivalents thereof" |
RR. "means for encapsulating"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"encapsulating"Exemplary structures:packaging component 110 ('585 Patent:5:60-64; 6:14-20)encapsulation component 220 ('585 Patent:8:10-16; 6:14-20)encapsulation component 310 ('585 Patent:9:23-24; 6:14-20)data object component 510 ('585 Patent:10:43-45; 6:14-20)encapsulation component 730 ('585 Patent:11:55-60; 6:14-20) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"defining the manner in which a data objectcan interface to various data consumers"Structure:Indefinite |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 54-55. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
SS. "means for providing such properties and methods to a data consumer"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"providing such properties and methods toa data consumer"Exemplary structures:various wired and/or wireless media ('585Patent: 12:23-48)network interface 1148 or communicationconnection 1150 ('585 Patent: 15:16-38)communication framework 1250 ('585Patent: 15:47-57) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"providing data objects to a data consumer"Structure:Indefinite |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 55-56. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
TT. "means for connecting a client to a Web server"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"connecting a client to a Web server"Exemplary Structures:browser 50 ('122 Patent: 4:39-44; 5:40-47)Internet connection 12, Internet 20 ('122Patent: 4:48-56; 5:40-47) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"connecting a client computer to awebserver"Structure:"a network" |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 63. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
UU. "means for directing communications from the client to the Web Server"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"directing communications from the clientto the Web Server"Exemplary Structures:Web page 24 ('122 Patent: 5:48-54) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"transmitting communications from theclient computer to the web server in aparticular manner ('directly')"Structure:Indefinite |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 63. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
VV. "means for creating a desired HMI"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
Function:"creating a desired HMI"Exemplary Structures:an HMI applet, applet program 30 ('122Patent: 3:50-53; Fig. 1; 7:18-30; claims 29 and30)server-side HMI program 37 ('122 Patent:5:6-12) | This term is governed by 35 U.S.C. § 112 ¶ 6.Function:"constructing a desired Human MachineInterface ('HMI')"Structure:Indefinite |
Defendant "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 63. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
VII. CONSTRUCTION OF DISPUTED PREAMBLES
Plaintiff submits that generally preambles are not limiting and, even if limiting, a preamble is not necessarily limiting in its entirety. Dkt. No. 63 at 27. More specifically, Plaintiff argues that although the preambles of Claim 1 of the '409 Patent and Claims 1 and 9 of the '124 Patent are limiting to the extent that they provided antecedent basis for later-recited claim elements, "the disputed preambles of the '795, '168, '817, and '122 Patents describe inventions that are completely set forth in the body of the claims" and "merely state[] a purpose or intended use." Dkt. No. 63 at 28-30 & 28 n.8. In its reply brief, Plaintiff also urges that "[Defendant] has failed to show that any terms in the disputed preambles 'provide essential context' or were relied upon 'to define or refine the scope of the asserted claims.'" Dkt. No. 68 at 10 (quoting Am. Med. Sys., Inc. v. Biolitec, Inc., 618 F.3d 1354, 1359 (Fed. Cir. 2010)). AAA. "An industrial controller operating controlled equipment according to a control program divided into at least two tasks, the controller comprising"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
The preamble is not limiting except for "acontrol program divided into at least twotasks." | The preamble is limiting. |
Plaintiff argues that apart from the portion that Plaintiff agrees is limiting, "the remainder of th[is] preamble[] simply state[s] the purpose or intended use for the invention - an industrial controller operating controlled equipment according to a control program." Dkt. No. 63 at 28 (citation and internal quotation marks omitted).
Defendant responds that it "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 4. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order. BBB. "An industrial controller operating controlled equipment according to a control program divided into at least two tasks each having a starting and completion point, the controller comprising:"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
The preamble is not limiting except for "acontrol program divided into at least two taskseach having a starting and completion point." | The preamble is limiting. |
Plaintiff argues that apart from the portion that Plaintiff agrees is limiting, "the remainder of th[is] preamble[] simply state[s] the purpose or intended use for the invention - an industrial controller operating controlled equipment according to a control program." Dkt. No. 63 at 28 (citation and internal quotation marks omitted).
Defendant responds that it "hereby withdraws its proposed construction[] for th[is] . . . disputed term and adopts [Plaintiff's] proposed construction[]." Dkt. No. 67, Ex. B at 1; see Dkt. No. 71, Ex. A at 4 & 6. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order. CCC. "A method of displaying the real-time status of input/output data exchanged between a multi-tasking industrial controller executing a control program and a control process, the method comprising the steps of:"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
The preamble is not limiting. | The preamble is limiting. |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "This preamble is limiting."
Defendant argues that this preamble is limiting because it provides antecedent basis. Dkt. No. 67 at 29. At the August 24, 2016 hearing, Plaintiff conceded that the preamble is limiting to the extent it provides antecedent basis, but Plaintiff maintained that "displaying the real-time status of input/output data exchanged" is a non-limiting statement of purpose that does not provide antecedent basis for any limitation recited in the body of the claim.
Claim 1 of the '795 Patent recites (emphasis added):
1. A method of displaying the real-time status of input/output data exchanged between a multi-tasking industrial controller executing a control program and a control process, the method comprising the steps of:
(a) executing the control program as first of at least two concurrent tasks on the multi-tasking industrial controller;
(b) accepting an input from a user identifying an input/output datum referenced by the control program;
(c) identifying a memory location in the industrial [sic, industrial controller] holding the input/output data;
(d) generating a memory monitor program to be run as a second of at least two concurrent tasks on the multi-tasking industrial controller, the memory monitor program receiving the memory location identified in step (c) and monitoring the memory location to record the time of a change in the data in the memory location;
(e) executing the memory monitor program concurrently with the control program; and
(f) displaying the recorded time of change.
The above-emphasized reliance upon the preamble for antecedent basis weighs in favor of finding the preamble limiting. See Eaton Corp. v. Rockwell Int'l Corp., 323 F.3d 1332, 1339 (Fed. Cir. 2003) ("When limitations in the body of the claim rely upon and derive antecedent basis from the preamble, then the preamble may act as a necessary component of the claimed invention."). Of particular note, although Plaintiff urges that the phrase "displaying the real-time status of input/output data exchanged" is not limiting, that phrase is related to status involving "a multi-tasking industrial controller" and "a control program" that provide antecedent basis for limitations set forth in the body of the claim.
On balance, the preamble as a whole is limiting. See Bell Commc'ns Research, Inc. v. Vitalink Commc'ns Corp., 55 F.3d 615, 620 (Fed. Cir. 1995) ("[W]hen the claim drafter chooses to use both the preamble and the body to define the subject matter of the claimed invention, the invention so defined, and not some other, is the one the patent protects."); see also Proveris Scientific Corp. v. Innovasystems, Inc., 739 F.3d 1367, 1373 (Fed. Cir. 2014) ("The phrase 'the image data' clearly derives antecedent basis from the 'image data' that is defined in greater detail in the preamble as being 'representative of at least one sequential set of images of a spray plume.'") (emphasis added).
The Court therefore finds that this preamble is limiting. DDD. "A production object for an object-oriented programming language, said production object being disposed in a first module, and said production object comprising:"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
The preamble is not limiting except for "saidproduction object being disposed in a firstmodule." | The preamble is limiting. |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "This preamble is limiting except as to the phrase 'for an object-oriented programming language.'"
Defendant argues that this preamble is limiting because it provides antecedent basis. Dkt. No. 67 at 29.
Claim 1 of the '168 Patent recites (emphasis added):
1. A production object for an object-oriented programming language, said production object being disposed in a first module, and said production object comprising:
a plurality of services and a plurality of attributes which are adapted for transferring an executable program from the first module to a second module over a common network;
wherein said plurality of services include a first service that is capable of creating a new instance of said production object to transfer the executable program from the first module to the second module; and
wherein said plurality of services include a second service that is capable of setting at least one of the plurality of attributes, said at least one attribute defining a parameter pertaining to the transfer of the executable program from the first module to the second module.
The above-emphasized reliance upon the preamble for antecedent basis weighs in favor of finding the preamble limiting. See Eaton, 323 F.3d at 1339. Indeed, Plaintiff acknowledges that the preamble is limiting as to the entire phrase "said production object being disposed in a first module." Dkt. No. 63, Ex. B at 7-8; see Proveris, 739 F.3d at 1373.
Nonetheless, the preamble phrase "for an object-oriented programming language" is a statement of purpose or use and is not inextricably intertwined with the other preamble language that provides antecedent basis. See TomTom Inc. v. Adolph, 790 F.3d 1315, 1323 (Fed. Cir. 2015) ("That [a] phrase in the preamble . . . provides a necessary structure for [the] claim . . . does not necessarily convert the entire preamble into a limitation, particularly one that only states the intended use of the invention."); see also Marrin v. Griffin, 599 F.3d 1290, 1294-95 (Fed. Cir. 2010) ("the mere fact that a structural term in the preamble is part of the claim does not mean that the preamble's statement of purpose or other description is also part of the claim").
Thus, the Court finds that this preamble is limiting except as to the phrase "for an object-oriented programming language." EEE. "A method for monitoring operational parameters of a plurality of networked electrical component, the method comprising the steps of:"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
The preamble is not limiting. | The preamble is limiting. |
In their August 12, 2016 Joint Claim Construction Chart, the parties submit that they now agree that this preamble is not limiting. Dkt. No. 71, Ex. A at 22. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order. FFF. "A method for monitoring operational parameters of a system of electrical components, the method comprising the steps of:"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
The preamble is not limiting. | The preamble is limiting. |
In their August 12, 2016 Joint Claim Construction Chart, the parties submit that they now agree that this preamble is not limiting. Dkt. No. 71, Ex. A at 22. The Court therefore sets forth the parties' now-agreed construction in Appendix A to this Claim Construction Memorandum and Order.
GGG. "A method of providing a uniform interface for an industrial controller comprising:"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
The preamble is not limiting. | The preamble is limiting. |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "This preamble is not limiting."
Defendant argues that this preamble is limiting because it provides antecedent basis. Dkt. No. 67 at 29.
Claim 1 of the '122 Patent recites (emphasis added):
1. A method of providing a uniform interface for an industrial controller comprising:
employing a processor executing computer executable instructions embodied on a computer readable storage medium to perform the following acts:
connecting a client to a first Web server communicating with the industrial controller;
executing an applet program at the client to enable the client to exchange data with the first Web server using a standard object protocol; and
providing at least two object providers, where a first object provider utilizes the standard object protocol to link a first software object with the client, wherein the first software object employs a first object protocol, wherein a second object provider utilizes the standard object protocol to link a second software object with the client, wherein the second software object employs a second object protocol, wherein the standard object protocol, first protocol, and second protocol are distinct protocols from each other, wherein the first object provider translates communications comprising object oriented instructions between the standard object protocol and the first protocol, wherein the
second object provider translates communications between the standard object protocol and the second protocol, wherein at least one of the first or second software objects communicates with one or more industrial controllers.
Although the preamble provides antecedent basis for "the industrial controller" that is recited in the body of the claim, the preamble phrase "providing a uniform interface" is nonetheless merely a non-limiting statement of purpose. See TomTom, 790 F.3d at 1323; see also Marrin, 599 F.3d at 1294-95. Further, the preamble does not provide any additional detail as to the recited "industrial controller." See Proveris, 739 F.3d at 1373.
The Court therefore finds that this preamble is not limiting.
HHH. "A system for providing a uniform industrial controller interface comprising:"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
The preamble is not limiting. | The preamble is limiting. |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "This preamble is limiting."
Defendant argues that this preamble is limiting because it provides antecedent basis. Dkt. No. 67 at 29.
Claim 14 of the '122 Patent recites (emphasis added):
14. A system for providing a uniform industrial controller interface comprising:
a processor;
a memory communicatively coupled to the processor, the memory having stored therein computer-executable instructions to implement the system, including:
a web server that provides the uniform interface;
the uniform interface further comprises at least two object providers, wherein a first object provider utilizes a standard object protocol to link a first software object with a client
program, wherein the first software object employs a first object protocol, wherein a second object provider utilizes the standard object protocol to link a second software object with the client program, wherein the second software object employs a second object protocol, wherein the standard object protocol, first protocol, and second protocol are distinct protocols from each other, wherein the first object provider translates communications comprising object oriented instructions between the standard object protocol and the first protocol, wherein the second object provider translates communications between the standard object protocol and the second protocol, wherein at least one of the first or second software objects communicates with one or more industrial controllers.
The above-emphasized reliance upon the preamble for antecedent basis weighs in favor of finding the preamble limiting. See Eaton, 323 F.3d at 1339.
On balance, the preamble as a whole is limiting, in particular because the preamble provides additional detail as to the "uniform industrial controller interface." See Bell Commc'ns, 55 F.3d at 620 ("[W]hen the claim drafter chooses to use both the preamble and the body to define the subject matter of the claimed invention, the invention so defined, and not some other, is the one the patent protects."); see also Proveris, 739 F.3d at 1373 ("The phrase 'the image data' clearly derives antecedent basis from the 'image data' that is defined in greater detail in the preamble as being 'representative of at least one sequential set of images of a spray plume.'") (emphasis added).
The Court therefore finds that this preamble is limiting.
III. "A system for providing an object based interface for an industrial controller comprising:"
Plaintiff's Proposed Construction | Defendant's Proposed Construction |
---|---|
The preamble is not limiting. | The preamble is limiting. |
Shortly before the start of the August 24, 2016 hearing, the Court provided the parties with the following preliminary construction: "This preamble is not limiting."
Defendant argues that this preamble is limiting because it provides antecedent basis. Dkt. No. 67 at 29.
Claim 32 of the '122 Patent recites (emphasis added):
32. A system for providing an object based interface for an industrial controller comprising:
a processor;
a memory communicatively coupled to the processor, the memory having stored therein computer-executable instructions to implement the system, including:
means for connecting a client to a Web server communicating with the industrial controller; and
means for directing communications from the client to the Web Server, wherein the communications comprise object oriented instructions, the means for directing comprises at least two object providers, where a first object provider utilizes the standard object protocol to link a first software object with the client, wherein the first software object employs a first object protocol, wherein a second object provider utilizes the standard object protocol to link a second software object with the client, wherein the second software object employs a second object protocol, wherein the standard object protocol, first protocol, and second protocol are distinct protocols from each other, wherein the first object provider translates communications comprising object oriented instructions between the standard object protocol and the first protocol, wherein the second object provider translates communications between the standard object protocol and the second protocol, wherein at least one of the first or second software objects communicates with one or more industrial controllers.
Although the preamble provides antecedent basis for "the industrial controller" that is recited in the body of the claim, the preamble phrase "providing an object based interface" is nonetheless merely a non-limiting statement of purpose or use. See TomTom, 790 F.3d at 1323; see also Marrin, 599 F.3d at 1294-95. Further, the preamble does not provide any additional detail as to the recited "industrial controller." See Proveris, 739 F.3d at 1373.
The Court therefore finds that this preamble is not limiting.
VIII. CONCLUSION
The Court adopts the constructions set forth in this opinion for the disputed terms of the patents-in-suit.
The parties are ordered to not refer to each other's claim construction positions in the presence of the jury. Likewise, in the presence of the jury, the parties are ordered to refrain from mentioning any portion of this opinion, other than the actual definitions adopted by the Court. The Court's reasoning in this order binds the testimony of any witnesses, but any reference to the claim construction proceedings is limited to informing the jury of the definitions adopted by the Court.
SIGNED this 5th day of October, 2016.
/s/_________
ROY S. PAYNE
UNITED STATES MAGISTRATE JUDGE
APPENDIX A
Term Parties' Agreement in Prehearing Statement "methods" ('585 Patent, Claims 1, 17, 25) "procedures associated with objects" "address monitor" ('133 Patent, Claims 1, 8) "a hardware circuit for supervising memory access" Preamble: "A method for simultaneously displaying an executable program in a remote processor and a plurality program edits input at a workstation, the executable program comprising a plurality of executable program segments, the plurality of program edits comprising new program segments and modified program segments, the executable program segments including corresponding executable program segments corresponding to the modified program segments, the plurality of program edits being selectively downloaded from the workstation to the remote processor, the method comprising the steps of:" ('711 Patent, Claim 1) The preamble is limiting. Preamble: "A method of operating an industrial controller having a central processor executing a stored control program to exchange data with a plurality of input/output modules distributed over a network at physical network addresses to provide an electrical interface at control points to a controlled process, the method comprising the steps of:" ('149 Patent, Claim 4) The preamble is limiting. 110 Preamble: "A method to be used with an industrial controller which has a processor module that stores and executes a machine language program to control a machine, the machine including at least one axis, the axis including two or more mechanical components wherein one component has freedom to move with respect to the other in a reciprocal manner along a single axis, each separate movement referred to as an axis function, each function being part of a machine cycle, the cycle represented by a behavior profile including means whereby functions and their sequences are illustrated, the method for providing a machine language program for controlling the cycle, the method comprising the steps of:" ('293 Patent, Claim 16) The preamble is limiting. Preamble: "A programming apparatus for an industrial controller which has a processor module that stores and executes a machine language program to control a machine, the machine including at least one axis, each axis including two or more mechanical components wherein one component has freedom to move with respect to another stationary component in a reciprocal manner along a single axis, each separate movement referred to as an axis function, each function being part of a machine cycle, the apparatus used to provide a machine language program for controlling at least one cycle, the apparatus comprising:" ('293 Patent, Claim 26) The preamble is limiting. "shell program" ('174 Patent, Claim 1) "a program simulating the stand-alone computer running the operating system to execute the utility program" Preamble: "A multi-network interface connecting a computer in parallel with plurality of industrial control networks employing different communication protocols to communicate with remote I/O devices, the computer executing at least one application program and an operating system, the operating system providing an API allowing the application program to communicate with the computer, the multi-network interface comprising:" ('226 Patent, Claim 1) The preamble is limiting. 111 Preamble: "A control and monitoring system including a plurality of control and monitoring components coupled to a monitoring station via a data network, the system comprising:" ('567 Patent, Claim 1) The preamble is limiting. Dkt. No. 58 at 2-4; Dkt. No. 63 at Ex. A. Term Parties' Agreement in Briefing Preamble: "An industrial controller operating controlled equipment according to a control program divided into at least two tasks, the controller comprising:" ('409 Patent, Claim 1) The preamble is not limiting except for "a control program divided into at least two tasks." Preamble: "An industrial controller operating controlled equipment according to a control program divided into at least two tasks each having a starting and completion point, the controller comprising:" ('124 Patent, Claims 1, 9) The preamble is not limiting except for "a control program divided into at least two tasks each having a starting and completion point." "event" ('124 Patent, Claim 1) Plain and ordinary meaning. "a portion of each scheduled task . . . from the portions starting point to its completion point" ('124 Patent, Claim 9) Plain and ordinary meaning. "the computer process interface library is compiled with the automation interface component" ('704 Patent, Claim 1) Plain and ordinary meaning. 112 "a viewing system that accepts the first and second data sets and provides a graphical view of the first and second control programs in a single view based on the first and second binary data sets" ('366 Patent, Claim 1) This claim element is not governed by 35 U.S.C. § 112 ¶ 6 and should be given its plain and ordinary meaning. "a viewing system that accepts the optimal display set view and provides a graphical view of the first and second control programs in an adjacent configuration" ('366 Patent, Claim 9) This claim element is not governed by 35 U.S.C. § 112 ¶ 6 and should be given its plain and ordinary meaning. "means for accepting the optimal display set view and providing a graphical view of the first and second control programs in an adjacent configuration" ('366 Patent, Claim 20) Function: "accepting the optimal display set view and providing a graphical view of the first and second control programs in an adjacent configuration" Exemplary structures: computer display screen, computer display ('366 Patent: 1:64- 66; 3:64-4:2) a single frame window ('366 Patent: 3:45-54; 4:2-9) viewing system 14 ('366 Patent: 14:27-49) display system 16, CRT ('366 Patent: 4:49-59; Figs 2 and 3) viewing system 60, viewing component 66 ('366 Patent: 6:50- 7:4; Fig. 5) input/output system 70 ('366 Patent: 7:4-7) frame 100, frame window 100 ('366 Patent: 7:48-8:41; Figs. 7-9) monitor 247 ('366 Patent: 9:28-32; Fig. 10) compare utility ('366 Patent: 10:52-54) computer 220, CRT ('366 Patent: 9:61-10:16; 10:52-54) "a packaging component associated with an industrial control device" ('585 Patent, Claim 1) Plain and ordinary meaning. "an abstraction component that . . . determines the properties and methods that are exposed to a particular data consuming device" ('585 Patent, Claim 1) Plain and ordinary meaning. 113 "determining the properties and methods that are exposed to a particular data consuming device" ('585 Patent, Claim 17) Plain and ordinary meaning. "means for accepting data from an industrial control component" ('585 Patent, Claim 25) Function: "accepting data from an industrial control component" Exemplary structures: packaging component 110, which may be a hardware or software interface ('585 Patent: 6:1-20) abstraction component 210 ('585 Patent: 7:28-30; 6:14-20) industrial controller 410 ('585 Patent: 10:8-14) data object component 510 (10:43-45; 6:14-20) data object library 610 ('585 Patent: 11:14-18) encapsulation component 730 ('585 Patent: 11:55-60; 6:14- 20) various wired and/or wireless media ('585 Patent: 12:23-48) network interface 1148 or communication connection 1150 ('585 Patent: 15:16-38) communication framework 1250 ('585 Patent: 15:47-57) "means for encapsulating" ('585 Patent, Claim 25) Function: "encapsulating" Exemplary structures: packaging component 110 ('585 Patent: 5:60-64; 6:14-20) encapsulation component 220 ('585 Patent: 8:10-16; 6:14-20) encapsulation component 310 ('585 Patent: 9:23-24; 6:14-20) data object component 510 ('585 Patent: 10:43-45; 6:14-20) encapsulation component 730 ('585 Patent: 11:55-60; 6:14- 20) "means for providing such properties and methods to a data consumer" ('585 Patent, Claim 25) Function: "providing such properties and methods to a data consumer" Exemplary structures: various wired and/or wireless media ('585 Patent: 12:23-48) network interface 1148 or communication connection 1150 ('585 Patent: 15:16-38) communication framework 1250 ('585 Patent: 15:47-57) 114 "invokes methods" ('585 Patent, Claims 1, 17, 25) Plain and ordinary meaning. "scale of the data" ('585 Patent, Claims 1, 17, 25) Plain and ordinary meaning. "means for connecting a client to a Web server" ('122 Patent, Claim 32) Function: "connecting a client to a Web server" Exemplary Structures: browser 50 ('122 Patent: 4:39-44; 5:40-47) Internet connection 12, Internet 20 ('122 Patent: 4:48- 56; 5:40-47) "means for directing communications from the client to the Web Server" ('122 Patent, Claim 32) Function: "directing communications from the client to the Web Server" Exemplary Structures: Web page 24 ('122 Patent: 5:48-54) "means for creating a desired HMI" ('122 Patent, Claim 33) Function: "creating a desired HMI" Exemplary Structures: an HMI applet, applet program 30 ('122 Patent: 3:50- 53; Fig. 1; 7:18-30; claims 29 and 30) server-side HMI program 37 ('122 Patent: 5:6-12) "A method for monitoring operational parameters of a plurality of networked electrical component, the method comprising the steps of:" ('817 Patent, Claims 21, 27) The preamble is not limiting. "A method for monitoring operational parameters of a system of electrical components, the method comprising the steps of:" ('817 Patent, Claims 33, 34, 35) The preamble is not limiting. 115 "generating a series of user viewable monitoring displays of the parameters by component based upon the sensed parameters and the identity data, the monitoring displays including graphical presentations of parameter levels" ('817 Patent, Claims 21, 27) Plain and ordinary meaning. "generating a user viewable monitoring display of the parameters by component based upon the sensed parameters and the identity data" ('817 Patent, Claims 33, 34, 35) Plain and ordinary meaning. "a monitoring station configured cyclically to access the parameter data via the network link and to generate a user viewable representation of the parameter data including a plurality of virtual meters displaying current and historical levels of selected parameters for each component" ('225 Patent, Claim 1) Plain and ordinary meaning. "identity data representative of an identity of the respective component in the system" ('817 Patent, Claims 21, 33, 34, 35) Plain and ordinary meaning. "component designation data" ('817 Patent, Claim 27) Plain and ordinary meaning. "component data" ('225 Patent, Claim 1) Plain and ordinary meaning. 116 "the monitoring station is configured to build a view of the components in real-time based upon the identifying component data" ('567 Patent, Claim 1) Plain and ordinary meaning. "a plurality of monitoring representations built in real-time based upon the identifying data and viewable on the monitoring station" ('567 Patent, Claim 9) Plain and ordinary meaning. "displaying a plurality of monitoring representations . . . built in real-time based on the status and identity data" ('567 Patent, Claim 20) Plain and ordinary meaning. Dkt. No. 67 at Ex. B; see Dkt. No. 58 at Ex. A; see also Dkt. No. 63 at Ex. B; Dkt. No. 71 at Ex. A.
Because these opinions are devoid of any analysis of the particular disputed terms, this expert declaration has not affected the Court's claim construction analysis. See Phillips, 415 F.3d at 1318 ("[C]onclusory, unsupported assertions by experts as to the definition of a claim term are not useful to a court.")