T 0798/18 (Robot workstations/ABB) 15-06-2021
Download and more information:
A system and a method for controlling movements of an industrial robot
Admittance of re-submitted requests - main and auxiliary requests 1 and 2 (no): "replacing" requests means "withdrawing" requests
Novelty - auxiliary requests 3 to 5 (no)
I. The appeal is against the decision of the opposition division revoking the present European patent for lack of novelty of the claims of the patent as granted (main request) and of auxiliary requests 1 and 3 to 5 (Articles 100(a) and 54 EPC), in view of prior-art document
A5: US 4 835 730 A.
The claims of the second auxiliary request were found not to be clear (Article 84 EPC).
II. In the statement setting out the grounds of appeal, the patent proprietor (appellant) requested that the decision under appeal be set aside and that the patent be maintained on the basis of the main request or one of auxiliary requests 1 to 5, all of which were the subject of the decision under appeal. In their reply, the opponent (respondent) requested that the appeal be dismissed.
III. In reply to the summons to oral proceedings before the board, the appellant submitted an amended main request and amended auxiliary requests 1 and 2 "with the request that these be admitted into the proceedings as replacements for the previous main request and auxiliary requests 1 and 2, respectively."
IV. Oral proceedings before the board were held on 15 June 2021. The board and the parties discussed the amended main request and auxiliary requests 1 and 2 with regard to admittance. During that discussion, the appellant withdrew said claim requests and requested that the previous main request and auxiliary requests 1 and 2, all filed with the statement of grounds of appeal, be (re-)admitted into the proceedings. The respondent contested any such admittance.
- The appellant's final requests were that the appealed decision be set aside and that the opposition be rejected (main request), i.e. that the patent be maintained as granted, or that the patent be maintained as amended according to one of auxiliary requests 1 to 5 filed with the statement of grounds of appeal.
- The respondent requested that the appeal be dismissed.
At the end of the oral proceedings, the board's decision was announced.
V. Claim 1 of the main request reads as follows (with the opposition division's feature numbering):
"1. A system for controlling the movements of an industrial robot during a work cycle including visiting and performing work on a plurality of workstations in a work cell, characterized in that
1.1 the system is adapted to receive information
about external events during execution of the
work cycle, and the system comprises:
1.2 a library (20) of predefined workstations, each
of the predefined workstation [sic] is adapted
to a specific type of machine or equipment
and includes:
1.2.1 preprogrammed robot code designed for
controlling the robot so that it
carries out a defined task at the
workstation,
1.2.2 an entry point defining the entrance
position to the workstation, and
1.2.3 one or more predefined paths to be
followed by the robot when carrying out
the task at the workstation,
1.3 a user interface (24), adapted to provide
information about the predefined workstations
and allowing an operator to select one or more
of the predefined workstations and to specify a
desired part flow between the workstations,
1.4 a scheduling unit (22), adapted to, during
execution of the work cycle:
1.4.1 schedule the execution order for the
workstations based on a set of workstations
selected from said library of predefined
workstations, the desired part flow and said
information about external events, and
1.4.2 to control the movements of the robot
based on the scheduled execution order and
the predefined paths for the selected
workstations."
VI. Claim 1 of auxiliary request 1 contains the following additional clause appended to the claim:
"... characterized in that the system is adapted to provide a possibility to assign different priorities to the chosen workstation, and that said scheduling unit is adapted to determine which of the workstations to be executed next based on the assigned priorities."
VII. Claim 1 of auxiliary request 2 is based on claim 1 of auxiliary request 1 and contains the following additional clause appended to the claim:
"... whereby it is possible to have different machines that work with different parts in parallel."
VIII. Claim 1 of auxiliary request 3 is based on the main request, with feature 1.1 being amended by the underlined wording:
"1.1 the system is adapted to receive information
about external events during execution of the
work cycle and to determine the execution
order in run time, and the system comprises:".
IX. Claim 1 of auxiliary request 4 is based on the main request, with feature 1.4 containing the following amendment:
"1.4 a scheduling unit (22), adapted to, during
execution of the work cycle:
keep track of the current condition of the
workstations and the current position of the
robot,".
X. Claim 1 of auxiliary request 5 has been amended in the following features (deletions indicated by
strike-through):
"1.2 a library (20) of predefined workstations,
each of the predefined workstations comprising preprogrammed robot code [deleted: is] adapted to a specific type of machine or equipment and
includes:
1.2.1 the preprogrammed robot code designed for
controlling the robot so that it
carries out a defined task at the
workstation,".
1. The opposed patent
The patent in suit relates to a system and a method for controlling the movements of an industrial robot during a work cycle including visiting and performing work on a plurality of physical locations in a work cell. The physical locations, where the robot carries out its tasks, may, for example, be an injection mould machine, a die-casting machine, a sensor station for checking a part, a scrap station for throwing away rejected parts, etc. The method employs preprogrammed robot code for controlling the robot at these locations. The preprogrammed code is adapted to the specific type of machine or equipment and contains an entry point defining the entrance position to the location and one or more predefined paths to be followed by the robot at the location. The physical locations, where the robot carries out its task are designated as "(real) workstations" in the patent in suit. In addition, the patent uses the term "workstation" to refer to a model of the real workstation including the preprogrammed robot code, the entry point defining the entrance position to the workstation, and the one or more predefined paths to be followed by the robot at the physical location (see paragraphs [0001], [0010], [0045] and [0064] of the patent specification).
An operator creates a robot program by selecting one or more workstations from the predefined set of workstations and specifies a desired order in which a part should be processed at the workstations. Since the robot program is generated based on the stored, preprogrammed code including predefined movement paths, according to the patent description, the operator does not need to bother about programming complicated movements at the physical locations in the work cell (see paragraphs [0012] to [0014] and [0046] of the patent specification).
2. Main request and auxiliary requests 1 and 2, admittance
2.1 As indicated in point III above, in reply to the summons to oral proceedings before the board, the appellant submitted amended main and auxiliary requests 1 and 2 "with the request that these be admitted into the proceedings as replacements for the previous main request and auxiliary requests 1 and 2, respectively". At those oral proceedings, the appellant withdrew the amended requests and requested that the previous main request and auxiliary requests 1 and 2, all filed with the statement of grounds of appeal, be (re-)admitted into the proceedings. The respondent contested any such admittance.
2.2 Following e.g. decision T 2301/12 (see Reasons, point 2.4), the use of the word "replace" clearly implies that the maintenance of the patent based on the main and auxiliary requests 1 and 2 was no longer pursued. Since there was no attempt to retain them as auxiliary requests either, it follows that these requests were in fact withdrawn.
2.3 Hence, the request to re-admit the previous claim requests (main and auxiliary requests 1 and 2) has to be considered as a new request, the admittance of which being subject to Article 13(2) RPBA 2020. According to that provision, "[a]ny amendment to a party's appeal case made after ... notification of a summons to oral proceedings shall, in principle, not be taken into account unless there are exceptional circumstances, which have been justified by cogent reasons by the party concerned."
2.4 In the present case, the appellant argued that the previous main request and auxiliary requests 1 and 2 had already been extensively discussed in the opposition and appeal proceedings. Hence, the respondent could not be surprised by the subject-matter of these requests.
2.5 The board is not convinced by this reasoning. The independent claims of the main request and auxiliary requests 1 and 2 are worded more broadly or relate to different subject-matter than the independent claims presented in preparation of the oral proceedings, i.e. of amended main and auxiliary requests 1 and 2. Because of the clear indication that these requests were replaced, the respondent and the board could rely on the withdrawal of the broader and diverging
higher-ranking requests and did not need to consider them in preparation of the oral proceedings. Reverting to these claim requests at this late stage constitutes a departure from and not just a development of the legal and factual framework of the present case. Thus, there are no exceptional circumstances, let alone any cogent reasons.
2.6 Hence, the main request and auxiliary requests 1 and 2 were not admitted into the appeal proceedings (Article 13(2) RPBA 2020).
3. Auxiliary request 3, novelty
3.1 The board agrees with the decision under appeal that, depending on the context of the opposed patent, the references to a "workstation" in claim 1 may be understood as referring to a "physical location where the robot operates" and/or to a "software component". This interpretation is, moreover, consistent with the definition of these expressions in the patent's description (see paragraphs [0010] and [0045] as well as point 1 above) and was not disputed by the parties. To distinguish these different entities consistently, the board adopts the opposition division's designation of workstations as "real workstations" and "software workstations". It is additionally noted that the patent in suit is understood to assume a one-to-one correspondence between "software workstations" (which are also called "predefined workstations") and "real workstations". The software workstations are understood as implementations of tasks carried out at a corresponding real workstation.
3.2 Document A5 discloses a system for controlling the movements of an industrial robot during a work cycle including visiting and performing work on a plurality of machines in the sense of the patent in suit (see figure 1 and column 4, lines 18 to 62). As required by feature 1.1, the system is adapted to receive information about external events during the execution of a work cycle (see column 39, lines 65 to 68, column 43, lines 21 to 26, and column 49, line 56 to column 50, line 9). A5 also discloses a library of predefined workstations, i.e. software components that are adapted to each one of the "real" workstation (see column 40, lines 20 to 49 and column 48, line 50 to column 49, line 6).
Each of the predefined workstations comprises preprogrammed robot code to perform the associated task at the workstation as well as an entry point defining the entrance position to the workstation and predefined paths to be followed by the robot when carrying out the task at the workstation (see column 40, lines 20 to 32, column 49, lines 25 and 26, column 51, lines 40 and 41 and column 53, line 57).
In addition, A5 discloses a user interface, adapted to provide information about the predefined workstations and allowing an operator to select one or more of the predefined workstations and to specify a desired part flow between the workstations (see column 30, lines 18 to 23 and lines 38 to 61, and column 46, lines 8 to 10). A "scheduling unit" is likewise disclosed in column 39, lines 47 to 68 and column 45, line 58 to column 47, line 4, which is adapted, during execution of the work cycle, to schedule the execution order for the workstations based on a set of workstations selected from the library of predefined workstations, the desired part flow and the information about external events. The scheduling unit further controls the movements of the robot based on the scheduled execution order and the predefined paths for the selected workstations (column 39, lines 48 to 54 and column 40, lines 51 to 57). The execution order is determined in run time, e.g. due to the reaction to external events.
3.3 The appellant essentially argued as follows.
3.3.1 A5 did not disclose feature 1.2, which required that each of the software workstations was adapted to a specific type of machine or equipment. The "primitives" of A5 relied on special "strategy routines" for the adaptation to a specific type of machine. The primitives were therefore no "software workstations" in the sense of feature 1.2. For example, the "acquire primitive" was not able to handle a specific type of feeder without a strategy subroutine. The acquire primitive related in a "one-to-x" manner to a real workstation, since this primitive was used for a wide variety of feeders. The "conveyor control routines" were called by the scheduler but they were no primitives (see A5, column 45, line 67 to column 46, line 2).
3.3.2 According to feature 1.2.1, the defined task was carried out "at the workstation" which did not include "in the proximity" of the workstation. Hence, the primitives of A5 did not match the preprogrammed robot code of the patent in suit.
3.3.3 In addition, A5 failed to disclose feature 1.2.2, according to which each predefined software workstation included an entry point defining the entrance position to the real workstation. The "approach location" of the "insertion and acquire primitives" of A5 were defined relative to a "part grip location" and a "part insertion location" and not in relation to the real workstation. There was rather a one-to-one correspondence between the alleged predefined (software) workstations and a part than between the alleged workstation and a real workstation. In the context of the "reject primitive", A5 referred to exit and entry points which were defined in relation to "paths" and not to a real workstation. The exit points of the reject primitive did not qualify as entry points, because they only defined end points of a path.
3.3.4 According to feature 1.2.3, each of the software workstations included one or more predefined paths to be followed by the robot when carrying out the task at the real workstation. However, the paths described in relation to the "reject primitive" (see A5, column 53, line 44 to column 54, line 3) moved the robot between real workstations and not at the real workstation.
3.3.5 Feature 1.3 referred to a user interface "to specify a desired part flow". A5 disclosed the "acquire primitive" only in relation to multiple "feeders". An appropriate feeder was selected on the spot and not as part of a desired part flow preselected by an operator. The "reject primitive" could not be part of a desired part flow as required by feature 1.3.
3.3.6 Feature 1.4.1 required the involvement of the "scheduling unit" since scheduling took place at the level of the scheduling unit and not at the level of the subroutines included in the library of predefined workstations. In A5, the scheduler merely selected the sequence to be run, but it did not influence the execution order on the level of the primitives, i.e. the level of the alleged predefined workstations.
3.3.7 It followed from claim 1, in particular features 1.2 to 1.4 relating to the "library", the "user interface" and the "scheduling unit" that the claimed system had an object-oriented design, whereas A5 did not disclose a clear correspondence of software routines and hardware components. Instead, A5 relied on databases to adapt the software to different operations. The alleged predefined workstations of A5 were not categorised as workstations but as actions that the robot performed, namely pick-and-place actions. It was also not disclosed that the "strategy subroutines" were organised in libraries as claimed.
3.4 The board is not convinced by these arguments for the following reasons.
3.4.1 Regarding feature 1.2 (see point 3.3.1 above), the board agrees with the respondent that the claim wording leaves open whether the predefined workstations are implemented by using a single routine or by calling appropriate subroutines. An adaptation of the primitives to a specific workstation by calling "strategy routines" is not excluded by the wording of the present claims. The combination of a primitive with an appropriate strategy routine also relates in a
one-to-one manner to a "real workstation".
As far as the "conveyor control routines" are concerned, it is noted that the conveyor is neither a (real) workstation in the sense of claim 1, nor can it be considered as relating to the movement of the industrial robot according to feature 1 of claim 1. Hence, these routines should be considered as control routines which are specified in addition to those of claim 1. However, their presence cannot change the fact that the further routines must be considered as a "library of predefined workstations" in the sense of claim 1.
3.4.2 Feature 1.2.1 broadly defines that the preprogrammed robot code is designed for controlling the robot so that it carries out a defined task "at the workstation". Since this task includes movements along predefined paths (see feature 1.2.3), the wording "at the workstation" cannot just designate a single spot, but must include some surrounding area. Therefore, the board interprets the wording "at the workstation" such that it includes an area "in proximity to the (real) workstation". The acquire-, insertion- and reject-primitives of A5 control the robot so that it may carry out a defined task in proximity to the workstation (see column 49, lines 9 to 45, column 51, lines 24 to 61, column 53, line 45 to column 54, line 27).
3.4.3 As far as feature 1.2.2 is concerned, it is correct that the "approach locations" of the "insertion and acquire primitives" of A5 are defined relative to a "part grip location" and a "part insertion location". Both the part grip and part insertion locations are situated at a (real) workstation (a PCB or a feeder) but may vary depending on the exact position of the part that is to be handled. However, apart from this "offset" from a presumed reference position, these locations are defined relative to the PCB (for the "insertion primitive") and the feeder (for the "acquire primitive").
Regarding the "reject primitive", the board agrees with the decision under appeal, which equated the "first exit point" of A5, column 53, line 57 with the "entry point" of feature 1.2.2. It is correct that there may be several exit points on a path. However, since the expression "entry point" is only further specified as defining the entrance to the workstation, the board is not convinced that any of these points could not be considered an "entry point" within the meaning of claim 1. The board also agrees with the respondent's argument that an exit point of one path was necessarily the entry point of the next path. Finally, claim 1 is silent on the relative position of the entry point in relation to the (real) workstation.
3.4.4 The board agrees with the respondent's argument that the "reject primitive" of A5 includes a predefined path (see column 54, lines 13 and 14). The continuation of the path at the "reject bin" can also be regarded as a path at the workstation (see column 53, line 59). Hence, feature 1.2.3 is also disclosed by A5 (see column 4, line 63 to column 5, line 6, column 7, line 64 to column 8, line 29, column 9, lines 15 to 17, column 54, lines 13 and 14 and column 56, lines 19 to 42).
3.4.5 As regards feature 1.3, the board agrees with the decision under appeal that "by editing a sequence of operations, the operator implicitly specifies a part flow between workstations". In that regard, the appellant argued correctly that in A5 an appropriate feeder was selected on the spot/at run time and not as part of a "desired part flow" preselected by
an operator. However, feature 1.3 does not require that the entire "part flow" between all workstations is specified by the operator. Furthermore, the board is not convinced that the "reject primitive" could not be part of a desired part flow. Discarding a part may e.g. be desirable in case of a defective part.
3.4.6 Feature 1.4.1 does not require the direct scheduling of each primitive by the scheduling unit but only the involvement of the scheduler. Such scheduling of the primitives is disclosed in A5, column 45, line 58 to column 46, line 69.
3.4.7 Finally, the board is also not convinced by the argument that the use of the term "library" in feature 1.2 implies a particular organisation of the software workstations that would distinguish the claimed system from A5, i.e. that the patent in suit relies on an object-oriented software design. Also the term "workstation" is not a well-established technical term (at least in the sense used in the opposed patent). The board cannot discern a difference between a (software) "workstation" and "pick and place routines" executed by the robot of A5. It is also not apparent that feature 1.4.1 requires the direct scheduling of each primitive by the scheduling unit.
3.5 Hence, the subject-matter of claim 1 of auxiliary request 3 lacks novelty in view of A5 (Article 54 (1) and (2) EPC).
4. Auxiliary requests 4 and 5, novelty
4.1 Claim 1 of auxiliary request 4 is based on the main request, with feature 1.4 specifying that the scheduling unit is adapted, during execution of the work cycle, to keep track of the current condition of the workstations and the current position of the robot (see point IX above).
4.2 Claim 1 of auxiliary request 5 has been amended by moving the expression "preprogrammed robot code" to feature 1.2 such that it specifies that the preprogrammed robot code of each workstation is adapted to a specific type of machine or equipment (see point X above).
4.3 The board agrees with the reasoning in the decision under appeal that the control of the sequences in A5 implicitly requires that the scheduling unit keeps track of the current condition of the workstations and the current position of the robot (see Reasons, point 16). Hence, the additional feature of claim 1 of auxiliary request 4 is disclosed in A5.
4.4 Also the amended feature of auxiliary request 5 is disclosed in A5, since each (software) workstation of A5, i.e. each software primitive, contains a preprogrammed robot code, adapted to the specific type of machine or equipment (see column 45, lines 58 to 66).
4.5 Hence, the subject-matter of claim 1 of auxiliary requests 4 and 5 likewise lacks novelty over A5 (Articles 54(1) and (2) EPC).
5. Conclusion
Since there are no allowable claim requests on file, the appeal has to be dismissed.
For these reasons it is decided that:
The appeal is dismissed.