DETAILED ACTION
Claims 1-20 are presented for examination. This office action is response to the submission on 12/27/2023.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Information Disclosure Statement
The information disclosure statements (IDS) submitted on 2/14/2024, 10/18/2024, and 2/10/2025 are in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statements are being considered by the examiner.
Drawings
The drawings filed on 12/27/2023 are acceptable for examination proceedings.
Claim Objections
Claim 1 recites the limitation “the plurality of data sets” in line 3. There is insufficient antecedent basis for these limitations in these claims. For the purposes of examination, examiner interprets this limitation to be introduced in the line indicated above.
Claim Rejections - 35 USC § 112
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claim 7 is rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the enablement requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to enable one skilled in the art to which it pertains, or with which it is most nearly connected, to make and/or use the invention.
In order to determine compliance with the enablement requirement of 35 U.S.C. 112(a), the Federal Circuit developed a framework of factors in In re Wands, 858 F.2d 731, 737, 8 USPQ2d 1400, 1404 (Fed. Cir. 1988), referred to as the Wands factors to assess whether any necessary experimentation required by the specification is "reasonable" or is "undue." Consistent with Amgen Inc. et al. v. Sanofi et al., 598 U.S. 594, 2023 USPQ2d 602 (2023), the Wands factors continue to provide a framework for assessing enablement in a utility application or patent, regardless of technology area. See Guidelines for Assessing Enablement in Utility Applications and Patents in View of the Supreme Court Decision in Amgen Inc. et al. v. Sanofi et al., 89 FR 1563 (January 10, 2024). These factors include, but are not limited to:
(A) The breadth of the claims – The claims state that the machine as a whole is stopped in response to determining that a number of consecutive read cycles in each of which the missing data set is detected reaches a predetermined number for drive stoppages. Based on the specification (see paragraph [0074]), a stopping unit stops a drive unit, not the entire machine.
(B) The nature of the invention – The invention is directed towards transmission of control signals and control of a machine.
(C) The state of the prior art – The prior art states that individual components of a machine may be stopped in response to consecutive missing data sets.
(D) The level of one of ordinary skill – A person of ordinary skill would not be motivated to determine how to stop an entire machine based on the applicant’s specification which discloses stopping individual components of a machine, not a machine as a whole.
(E) The level of predictability in the art – The art is somewhat predictable.
(F) The amount of direction provided by the inventor – The direction provided by the inventor explains that individual actuators or guided vehicles may be stopped, not the entire machine.
(G) The existence of working examples – There is prior art that will stop units of a machine in response to communication failure.
(H) The quantity of experimentation needed to make or use the invention based on the content of the disclosure. – The quantity of experimentation required to determine how one would stop an entire machine based on the disclosure’s explanation of stopping units of the machine would be high.
Accordingly, the applicant has failed to enable claim 7 (and any claims dependent on claim 7).
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 8 recites the limitation “the number for communication stoppages” in line 6. It is unclear whether this number for communication stoppages is the same as the “predetermined number for communication stoppages” introduced in lines 5-6 or a different number. For the purposes of examination, examiner interprets the “the number for communication stoppages” in line 6 as “the predetermined number for communication stoppages”.
Claim 10 recites the limitation "a read cycle" in line 3. It is unclear whether this read cycle is the same as the “read cycle” introduced in claim 6 or a different read cycle. For the purposes of examination, examiner interprets the “read cycle” in line 3 of claim 10 as a newly introduced read cycle.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-6, 9-16 and 20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Independent Claims 1 and 20
Claims 1 is drawn to a system and claim 20 is drawn to a method. Therefore claims 1 and 20 fall under one of the four categories of statutory subject matter (process/method, machines, products, apparatus, manufactures, and compositions of matter).
Step 2A: Is the claim directed to a law of nature, a natural phenomenon (product of nature), or an abstract idea?
It is an abstract idea.
Step 2A-Prong 1: Does the claim recite an abstract idea, law of nature, or natural phenomenon?
Yes.
MPEP 2106.04(a) - “Mental processes – concepts performed in the human mind (including an observation, evaluation, judgment, opinion).”
Claims 1 and 20 are directed to a judicially recognized exception of an abstract idea without significantly more. Each of claims 1 and 20 recites functions below that under the limitation’s broadest reasonable interpretation, enumerates mental concepts. Other than reciting generic computer elements “A communication system comprising: a first communication device”, “a second communication device”, and “a standby buffer” (as recited in claim 1), nothing in the claims preclude the functions from the mental concept.
The mere nominal recitation of a generic processor to perform the mental concept does not take the claim limitations out of the abstract idea (See MPEP 2106.04(a)(2)(III)).
“add order information to each of the plurality of data sets;” A human can add information to data sets (Evaluation).
“arrange the plurality of received data sets… as ordered data sets based on the order information; and” A human can arrange the data based on order information (Judgment).
“sequentially reading the plurality of data sets… in the order in which the plurality of data sets are arranged.” (as recited in claim 20): A human can sequentially read data (Observation).
Step 2A-Prong 2: Does the claim recite additional element that integrate the judicial exception into a practical application?
No.
2106.05(d) – Well-Understood, Routine, and Conventional Activity
Each of claims 1 and 20 recite additional element and/or functions “sequentially transmit the plurality of data sets to which the order information is added;” and “receive the plurality of data sets from the first communication device;” that are transmitting and receiving data.
The additional functions that are form of insignificant extra-solution activities, do not amount to significantly more than an abstract idea because the court decisions have determined that these additional steps are well-understood, routine, and conventional when claimed in a merely generic manner for data storing, collecting and transmitting (See MPEP § 2106.05(d)(II)(i: Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information)) or (iv: Storing and retrieving information in memory, Versata Dev. Group, Inc. v. SAP Am., Inc., 793 F.3d 1306, 1334, 115 USPQ2d 1681, 1701 (Fed. Cir. 2015)).
2106.05(f) – Mere Instructions To Apply An Exception
“As explained by the Supreme Court, in order to make a claim directed to a judicial exception patent-eligible, the additional element or combination of elements must do "‘more than simply stat[e] the [judicial exception] while adding the words ‘apply it’". Alice Corp. v. CLS Bank, 573 U.S. 208, 221, 110 USPQ2d 1976, 1982-83 (2014) (quoting Mayo Collaborative Servs. V. Prometheus Labs., Inc., 566 U.S. 66, 72, 101 USPQ2d 1961, 1965). Thus, for example, claims that amount to nothing more than an instruction to apply the abstract idea using a generic computer do not render an abstract idea eligible. Alice Corp., 573 U.S. at 223, 110 USPQ2d at 1983. See also 573 U.S. at 224, 110 USPQ2d at 1984 (warning against a § 101 analysis that turns on "the draftsman’s art").”
The following is using generic computer elements:
“A communication system comprising: a first communication device”, “a second communication device”, and “a standby buffer” (as recited in claim 1).
MPEP 2106.05(h) – Field of Use
MPEP 2106.05(h) states: “Another consideration when determining whether a claim integrates the judicial exception into a practical application in Step 2A Prong Two or recites significantly more than a judicial exception in Step 2B is whether the additional elements amount to more than generally linking the use of a judicial exception to a particular technological environment or field of use. As explained by the Supreme Court, a claim directed to a judicial exception cannot be made eligible "simply by having the applicant acquiesce to limiting the reach of the patent for the formula to a particular technological use." Diamond v. Diehr, 450 U.S. 175, 192 n.14, 209 USPQ 1, 10 n. 14 (1981). Thus, limitations that amount to merely indicating a field of use or technological environment in which to apply a judicial exception do not amount to significantly more than the exception itself, and cannot integrate a judicial exception into a practical application.”
“a first communication device configured to: add order information to each of the plurality of data sets; and sequentially transmit the plurality of data sets to which the order information is added;” is directed towards implementing a communication device to the field of use of adding information to data sets and data transmission.
“a second communication device configured to: receive the plurality of data sets from the first
communication device; arrange the plurality of received data sets in a standby buffer as ordered data sets based on the order information; and sequentially read the ordered data sets.” Is directed towards implementing a communication device to the field of use of receiving data, arranging data, and reading data.
Examiner recommends actively reciting actions the devices take rather than citing their capabilities. The examiner has considered the limitations together as a single abstract idea for Step 2A Prong Two rather than as a plurality of separate ideas to be analyzed individually.
Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception?
The additional elements amount to implementing generic communication devices and a buffer towards a field of use and well-understood, routine, and conventional activity. “Courts have held computer‐implemented processes not to be significantly more than an abstract idea (and thus ineligible) where the claim as a whole amounts to nothing more than generic computer functions merely used to implement an abstract idea, such as an idea that could be done by a human analog (i.e., by hand or by merely thinking). On the other hand, courts have held computer-implemented processes to be significantly more than an abstract idea (and thus eligible), where generic computer components are able in combination to perform functions that are not merely generic.” DDR Holdings, LLC v. Hotels.com, L.P., 773 F.3d 1245, 1257-59, 113 USPQ2d 1097, 1105-07 (Fed. Cir. 2014). ”Selecting information, based on types of information and availability of information in a power-grid environment, for collection, analysis and display” Electric Power Group, LLC v. Alstom S.A., 830 F.3d 1350, 1354-55, 119 USPQ2d 1739, 1742 (Fed. Cir. 2016).
MPEP 2106.05(d)(II)(i) provides support that receiving or transmitting data over a network is well understood, routine, and conventional.
As such, claims 1 and 20 are not patent eligible.
Dependent Claims 2-6, 9-16:
Step 1:
Claims 2-6 and 9-16 are drawn to a system. Therefore each of claims 2-6 and 9-16 under one of four categories of statutory subject matter (process/method, machines/products/apparatus, manufactures, and compositions of matter). Nonetheless, dependent claims 2-6 and 9-16 are also ineligible for the same reasons given with respect to claims 1 and 20.
Steps 2A-2B:
Claims 2-6 and 9-16 recite further mental abstract concepts of the order information and reading of data (claim 2), arranging the data in order based on timing information (claim 3), repeating the transmission cycle and further defining the timing information (claim 4), setting a delay time based on input (claim 5), repeating reading to read the data and detecting missing data by comparing timing of execution and read timing (claim 6), detecting missing data by determining the head data read timing doesn’t correspond to execution timing (claim 9), waiting for reading of the head data set in response to detecting missing data (claim 10), requesting retransmission in response to detecting missing data (claim 11), holding the data that’s been transmitted in case of retransmission request (claim 12), storing the data in order they’re received and reading data in order they’re stored and arranging data in order based on order info (claim 13). (See MPEP 2106.04(a)(2)(III)).
Claims 14-16 recite further transmission of data via network, wireless, and mobile communication. (See MPEP 2106.05(d)).
Claim 5 recites further limitations directing a communication device towards a field of use of setting a delay time based on input (See MPEP 2106.05(h)).
The additional functions that are form of insignificant extra-solution activities, do not amount to significantly more than an abstract idea because the court decisions have determined that this additional steps to be well-understood, routine, and conventional when claimed in a merely generic manner for data storing, collecting and transmitting (See MPEP § 2106.05(d)(II)(i: Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information)) or (iv: Storing and retrieving information in memory, Versata Dev. Group, Inc. v. SAP Am., Inc., 793 F.3d 1306, 1334, 115 USPQ2d 1681, 1701 (Fed. Cir. 2015)), See further Electric Power Group, LLC v. Alstom S.A., 830 F.3d 1350, 119 USPQ2d 1739 (Fed. Cir. 2016))).
As such, claims 2-6 and 9-16 are not patent eligible.
Claim Rejections - 35 USC § 102
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1, 13-16 and 20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Suneya (JP2020145573A) (Citations to examiner provided translation).
Claim 1:
Suneya teaches “A communication system comprising: a first communication device configured to: add order information to each of the plurality of data sets;” (Suneya teaches a transmitter i.e. first communication device in Suneya [0012] "This communication system comprises a transmitting device 1 that transmits data containing multiple frames, and a receiving device 2 that is connected to the transmitting device 1 via a network 3 and receives data containing multiple frames transmitted from the transmitting device 1. Transmitter 1 and receiver 2 are examples of communication devices."; Suneya teaches adding an offset position 56 i.e. order information to the header of packets to be transmitted by the transmitting device 1 in Suneya [0026-0027] "Figure 7 shows an example of the configuration of an RTP packet generated by the packet generation unit 13 of this embodiment. The RTP packet 50 includes an RTP header 51 that indicates the attributes of the packet, and a payload 57 that stores the data of the frames divided by the frame division unit 12. The RTP header 51 includes an RTP extension header 52. In RTP, if an extended header is included, the identifier "X" in the RTP header 51, which indicates the presence or absence of the extended header, is set to 1 (X = 1 in the figure). In this embodiment, the extended header identifier 53 of the RTP extended header 52 stores an identifier indicating that it contains information about the frame size 55 of the frame data and the offset position 56 indicating the position of each divided data within the frame."),
“and sequentially transmit the plurality of data sets to which the order information is added;” (Suneya teaches the packets are stored in a transmission buffer 14 and then sequentially transmitted in Suneya [0030] "The packet generation unit 13 generates an RTP packet 50 by adding an RTP header 51 to the data of the frames divided by the frame division unit 12. In this case, the packet generation unit 13 stores the size of the frame before splitting (frame size 55) and the offset position 56 of the data contained in the packet payload from the beginning of the frame before splitting in the RTP extension header 52. The packets generated by the packet generation unit 13 are sequentially stored in the transmission buffer 14 and then sequentially transmitted to the receiving device 2 by the packet transmission unit 15."),
“and a second communication device configured to: receive the plurality of data sets from the first communication device;” (Suneya teaches a receiver 2 i.e. second communication device that receives data transmitted from the transmitting device 1 in Suneya [0012] "This communication system comprises a transmitting device 1 that transmits data containing multiple frames, and a receiving device 2 that is connected to the transmitting device 1 via a network 3 and receives data containing multiple frames transmitted from the transmitting device 1. Transmitter 1 and receiver 2 are examples of communication devices."),
“arrange the plurality of received data sets in a standby buffer as ordered data sets based on the order information;” (Suneya teaches the receiving device 2 storing packets in a receiving buffer 31 and copying a frame made up of multiple packets in the correct order in the frame recombination buffer 32 in Suneya [0020] "The receiving device 2 stores multiple packets for one frame in the receiving buffer (temporary) 31 in the order they are received, as shown in Figure 5, for example. After receiving multiple packets that make up a single frame, the receiving device 2 read the packets stored in the receive buffer 31 in the correct order and copied them to the frame recombination buffer 32, thereby recombining the frame." and in Suneya [0022-0023] "In the diagram, S stands for Step. The receiving device 2 first receives an RTP packet at S1. The reception process in S1 is repeated in S2 until it is detected that all packets constituting a single frame have been received. When the receiving device 2 receives all the packets that make up a single frame, it reserves (secures, acquires) a frame recombination buffer 32 in S3. The frame recombination buffer 32 is used to recombine the frame data, which has been divided and stored in multiple received packets, by combining them in the correct order. Furthermore, in S4, the receiving device 2 recombines the frame data by copying the payload data of the packets stored in the receiving buffer 31 to the frame recombination buffer 32 while arranging them in the correct order. In this process, the receiving device 2 aligns the order of the data in the payload portion by referring to the sequence number in the RTP header.), and
“and sequentially read the ordered data sets.” (Suneya teaches the receiving device 2 reading the packets in the correct order in Suneya [0020] "The receiving device 2 stores multiple packets for one frame in the receiving buffer (temporary) 31 in the order they are received, as shown in Figure 5, for example. After receiving multiple packets that make up a single frame, the receiving device 2 read the packets stored in the receive buffer 31 in the correct order and copied them to the frame recombination buffer 32, thereby recombining the frame.").
Claim 13:
Suneya teaches “The communication system according to claim 1, wherein the second communication device is configured to: store the plurality of received data sets in a reception buffer in an order in which the plurality of data sets are received;” (Suneya teaches the receiving device 2 storing packets in a receiving buffer 31 in the order they are received in Suneya [0020] "The receiving device 2 stores multiple packets for one frame in the receiving buffer (temporary) 31 in the order they are received, as shown in Figure 5, for example. After receiving multiple packets that make up a single frame, the receiving device 2 read the packets stored in the receive buffer 31 in the correct order and copied them to the frame recombination buffer 32, thereby recombining the frame." and in Suneya [0022-0023] "In the diagram, S stands for Step. The receiving device 2 first receives an RTP packet at S1. The reception process in S1 is repeated in S2 until it is detected that all packets constituting a single frame have been received. When the receiving device 2 receives all the packets that make up a single frame, it reserves (secures, acquires) a frame recombination buffer 32 in S3. The frame recombination buffer 32 is used to recombine the frame data, which has been divided and stored in multiple received packets, by combining them in the correct order. Furthermore, in S4, the receiving device 2 recombines the frame data by copying the payload data of the packets stored in the receiving buffer 31 to the frame recombination buffer 32 while arranging them in the correct order. In this process, the receiving device 2 aligns the order of the data in the payload portion by referring to the sequence number in the RTP header.), and
“read the plurality of stored data sets from the reception buffer in the order in which the plurality of data sets are stored; and arrange the plurality of read data sets in the standby buffer in an order based on the order information.” (Suneya teaches copying a frame made up of multiple packets in the correct order in the frame recombination buffer 32 based on the sequence number i.e. it reads the packets and arranges them in the buffer in order based on the order information in Suneya [0020] "The receiving device 2 stores multiple packets for one frame in the receiving buffer (temporary) 31 in the order they are received, as shown in Figure 5, for example. After receiving multiple packets that make up a single frame, the receiving device 2 read the packets stored in the receive buffer 31 in the correct order and copied them to the frame recombination buffer 32, thereby recombining the frame." and in Suneya [0022-0023] "In the diagram, S stands for Step. The receiving device 2 first receives an RTP packet at S1. The reception process in S1 is repeated in S2 until it is detected that all packets constituting a single frame have been received. When the receiving device 2 receives all the packets that make up a single frame, it reserves (secures, acquires) a frame recombination buffer 32 in S3. The frame recombination buffer 32 is used to recombine the frame data, which has been divided and stored in multiple received packets, by combining them in the correct order. Furthermore, in S4, the receiving device 2 recombines the frame data by copying the payload data of the packets stored in the receiving buffer 31 to the frame recombination buffer 32 while arranging them in the correct order. In this process, the receiving device 2 aligns the order of the data in the payload portion by referring to the sequence number in the RTP header.).
Claim 14:
Suneya teaches “The communication system according to claim 1, wherein the first communication device is configured to transmit the plurality of data sets via network communication,” (Suneya teaches the transmitting device 1 is connected to receiving device 2 via a network 3 in Suneya [0012] "This communication system comprises a transmitting device 1 that transmits data containing multiple frames, and a receiving device 2 that is connected to the transmitting device 1 via a network 3 and receives data containing multiple frames transmitted from the transmitting device 1."), and
“and wherein the second communication device is configured to receive the plurality of data sets from the first communication device via the network communication.” (Suneya teaches the transmitting device 1 is connected to receiving device 2 via a network 3 in Suneya [0012] "This communication system comprises a transmitting device 1 that transmits data containing multiple frames, and a receiving device 2 that is connected to the transmitting device 1 via a network 3 and receives data containing multiple frames transmitted from the transmitting device 1.").
Claim 15:
Suneya teaches “The communication system according to claim 14, wherein the first communication device is configured to transmit the plurality of data sets via wireless communication,” (Suneya [0014] "Network 3 consists of networks such as a wired LAN (Local Area Network) or a wireless LAN (Wireless LAN). Network 3 is not limited to this; it may also consist of networks such as the Internet, WANs (Wide Area Networks) including mobile phone communication networks, ad-hoc networks, Bluetooth®, etc."), and
“and wherein the second communication device is configured to receive the plurality of data sets from the first communication device via the wireless communication.” (Suneya [0014] "Network 3 consists of networks such as a wired LAN (Local Area Network) or a wireless LAN (Wireless LAN). Network 3 is not limited to this; it may also consist of networks such as the Internet, WANs (Wide Area Networks) including mobile phone communication networks, ad-hoc networks, Bluetooth®, etc.").
Claim 16:
Suneya teaches “The communication system according to claim 15, wherein the first communication device is configured to transmit the plurality of data sets via mobile communication,” (Suneya [0014] "Network 3 consists of networks such as a wired LAN (Local Area Network) or a wireless LAN (Wireless LAN). Network 3 is not limited to this; it may also consist of networks such as the Internet, WANs (Wide Area Networks) including mobile phone communication networks, ad-hoc networks, Bluetooth®, etc."), and
“and wherein the second communication device is configured to receive the plurality of data sets from the first communication device via the mobile communication.” (Suneya [0014] "Network 3 consists of networks such as a wired LAN (Local Area Network) or a wireless LAN (Wireless LAN).Network 3 is not limited to this; it may also consist of networks such as the Internet, WANs (Wide Area Networks) including mobile phone communication networks, ad-hoc networks, Bluetooth®, etc.").
Claim 20:
Suneya teaches “A communication method comprising: adding order information to each of a plurality of data sets;” (Suneya teaches a transmitter in Suneya [0012] "This communication system comprises a transmitting device 1 that transmits data containing multiple frames, and a receiving device 2 that is connected to the transmitting device 1 via a network 3 and receives data containing multiple frames transmitted from the transmitting device 1. Transmitter 1 and receiver 2 are examples of communication devices."; Suneya teaches adding an offset position 56 i.e. order information to the header of packets to be transmitted by the transmitting device 1 in Suneya [0026-0027] "Figure 7 shows an example of the configuration of an RTP packet generated by the packet generation unit 13 of this embodiment. The RTP packet 50 includes an RTP header 51 that indicates the attributes of the packet, and a payload 57 that stores the data of the frames divided by the frame division unit 12. The RTP header 51 includes an RTP extension header 52. In RTP, if an extended header is included, the identifier "X" in the RTP header 51, which indicates the presence or absence of the extended header, is set to 1 (X = 1 in the figure). In this embodiment, the extended header identifier 53 of the RTP extended header 52 stores an identifier indicating that it contains information about the frame size 55 of the frame data and the offset position 56 indicating the position of each divided data within the frame."),
“sequentially transmitting the plurality of data sets to which the order information is added;” (Suneya teaches the packets are stored in a transmission buffer 14 and then sequentially transmitted in Suneya [0030] "The packet generation unit 13 generates an RTP packet 50 by adding an RTP header 51 to the data of the frames divided by the frame division unit 12. In this case, the packet generation unit 13 stores the size of the frame before splitting (frame size 55) and the offset position 56 of the data contained in the packet payload from the beginning of the frame before splitting in the RTP extension header 52. The packets generated by the packet generation unit 13 are sequentially stored in the transmission buffer 14 and then sequentially transmitted to the receiving device 2 by the packet transmission unit 15."),
“sequentially receiving the plurality of data sets;” (Suneya teaches a receiver 2 that receives data transmitted from the transmitting device 1 in Suneya [0012] "This communication system comprises a transmitting device 1 that transmits data containing multiple frames, and a receiving device 2 that is connected to the transmitting device 1 via a network 3 and receives data containing multiple frames transmitted from the transmitting device 1. Transmitter 1 and receiver 2 are examples of communication devices."),
“arranging the plurality of received data sets in a standby buffer in an order based on the order information;” (Suneya teaches the receiving device 2 storing packets in a receiving buffer 31 and copying a frame made up of multiple packets in the correct order in the frame recombination buffer 32 in Suneya [0020] "The receiving device 2 stores multiple packets for one frame in the receiving buffer (temporary) 31 in the order they are received, as shown in Figure 5, for example. After receiving multiple packets that make up a single frame, the receiving device 2 read the packets stored in the receive buffer 31 in the correct order and copied them to the frame recombination buffer 32, thereby recombining the frame." and in Suneya [0022-0023] "In the diagram, S stands for Step. The receiving device 2 first receives an RTP packet at S1. The reception process in S1 is repeated in S2 until it is detected that all packets constituting a single frame have been received. When the receiving device 2 receives all the packets that make up a single frame, it reserves (secures, acquires) a frame recombination buffer 32 in S3. The frame recombination buffer 32 is used to recombine the frame data, which has been divided and stored in multiple received packets, by combining them in the correct order. Furthermore, in S4, the receiving device 2 recombines the frame data by copying the payload data of the packets stored in the receiving buffer 31 to the frame recombination buffer 32 while arranging them in the correct order. In this process, the receiving device 2 aligns the order of the data in the payload portion by referring to the sequence number in the RTP header.), and
“and sequentially reading the plurality of data sets stored in the standby buffer in the order in which the plurality of data sets are arranged.” (Suneya teaches the receiving device 2 reading the packets in the correct order in Suneya [0020] "The receiving device 2 stores multiple packets for one frame in the receiving buffer (temporary) 31 in the order they are received, as shown in Figure 5, for example. After receiving multiple packets that make up a single frame, the receiving device 2 read the packets stored in the receive buffer 31 in the correct order and copied them to the frame recombination buffer 32, thereby recombining the frame.").
Claims 2-5 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Iwashita et al. (JP2017005289A) (Citations to examiner provided translation).
Claim 2:
Iwashita teaches “A communication system comprising: a first communication device configured to: add order information to each of the plurality of data sets;” (Iwashita teaches an input node 101a i.e. a first communication device that assigns input time to the header of packets i.e. order information in Iwashita [0055] "For example, the input node 101a shown in Figure 4 adds information to the header of the packet signal indicating the time (input time) when it received the packet signal from the Layer 1 relay node 906. In the example shown in Figure 4, the header of packet (1) is assigned the input time (00:01), the header of packet (2) is assigned the input time (00:02), the header of packet (3) is assigned the input time (00:05), and the header of packet (4) is assigned the input time (00:07).Here, the input time is shown in seconds for clarity, but in reality, times on the order of msec or microseconds are used depending on the communication speed."),
“and sequentially transmit the plurality of data sets to which the order information is added;” (Iwashita teaches the input node forwards the packets after adding information to header i.e. it sequentially transmits the data sets in Iwashita [0033] "In Figure 1, the input node 101 adds information to the header of the packet signal input from the Layer 1 relay node 906 that allows the output node 102 to restore the packet interval, and then forwards the packet signal to the packet forwarding network in Layer 2."; Iwashita teaches input node 101a having the same functions as input node 101 in Iwashita [0053] "Note that the input node 101a and output node 102a shown in Figure 4 have the same functions as the input node 101 and output node 102 shown in Figure 1."),
“and a second communication device configured to: receive the plurality of data sets from the first communication device;” (Iwashita teaches output node 102a i.e. a second communication device that receives the data with the header information including the input time in Iwashita [0056] "For example, in Figure 4, assuming a fixed delay time α of 0:03 seconds, packets (1) through (4) are read from their buffers and output to the relay node 907 at a time obtained by adding 00:03 seconds to the input time stored in the header of each packet (1) through (4). In Figure 4, the header of packet (1) stored in the buffer of output node 102a contains the input time (00:01). Therefore, output node 102a reads packet (1) from the buffer at a time (00:04) obtained by adding a fixed delay time α (00:03 seconds) to the input time and outputs it to relay node 907. Furthermore, since the header of packet (2) contains the input time (00:02), the output node 102a reads packet (2) from the buffer at a time (00:05) obtained by adding a fixed delay time α (00:03 seconds) to the input time and outputs it to the relay node 907."),
“arrange the plurality of received data sets in a standby buffer as ordered data sets based on the order information; and sequentially read the ordered data sets.” (Iwashita teaches that the received packets are stored in a buffer and they are read based on the input time in the header in Iwashita [0056] "On the other hand, output node 102a temporarily stores the received packet signal in a buffer, and based on the information indicating the input time attached to the packet signal header, reads the packet signal from the buffer at a time obtained by adding a predetermined fixed delay time α, such as network delay, to the input time, and outputs it to Layer 1 relay node 907. Here, the time at output node 102a and the time at input node 101 are synchronized by the reference clock unit 105. For example, in Figure 4, assuming a fixed delay time α of 0:03 seconds, packets (1) through (4) are read from their buffers and output to the relay node 907 at a time obtained by adding 00:03 seconds to the input time stored in the header of each packet (1) through (4)."),
“The communication system according to claim 1, wherein the order information includes timing information that defines read timing,” (Iwashita teaches that input node 101a adds the time the packet was received i.e. timing information that defines read timing to the header in Iwashita [0055] "In this embodiment, time information is used as the packet interval restoration information as explained in Figure 2. For example, the input node 101a shown in Figure 4 adds information to the header of the packet signal indicating the time (input time) when it received the packet signal from the Layer 1 relay node 906."), and
“and wherein the second communication device is configured to read each of the plurality of data sets at the read timing specified by the timing information.” (Iwashita teaches that output node 102a reads the packet at a time by adding a delay time to the input time i.e. at the read timing specified by the timing information in Iwashita [0056] "On the other hand, output node 102a temporarily stores the received packet signal in a buffer, and based on the information indicating the input time attached to the packet signal header, reads the packet signal from the buffer at a time obtained by adding a predetermined fixed delay time α, such as network delay, to the input time, and outputs it to Layer 1 relay node 907." and Iwashita [0057] "In this way, the output node 102a controls the timing of reading the packet signal from the buffer based on information indicating the input time stored in the header of the packet signal received from the packet forwarding network.").
Claim 3:
Iwashita teaches “The communication system according to claim 2, wherein the second communication device is configured to arrange the plurality of data sets in the standby buffer in an order of the read timing based on the timing information included in the order information.” (Iwashita teaches that the received packets are stored in a buffer and they are read based on the input time in the header i.e. they are ordered based on the timing information in Iwashita [0056] "On the other hand, output node 102a temporarily stores the received packet signal in a buffer, and based on the information indicating the input time attached to the packet signal header, reads the packet signal from the buffer at a time obtained by adding a predetermined fixed delay time α, such as network delay, to the input time, and outputs it to Layer 1 relay node 907. Here, the time at output node 102a and the time at input node 101 are synchronized by the reference clock unit 105. For example, in Figure 4, assuming a fixed delay time α of 0:03 seconds, packets (1) through (4) are read from their buffers and output to the relay node 907 at a time obtained by adding 00:03 seconds to the input time stored in the header of each packet (1) through (4).").
Claim 4:
Iwashita teaches “The communication system according to claim 2, wherein the first communication device is configured to repeat a transmit cycle to sequentially transmit the data sets;” (Iwashita teaches output node 102a outputting multiple packets sequentially in Iwashita [0056] "Here, the time at output node 102a and the time at input node 101 are synchronized by the reference clock unit 105. For example, in Figure 4, assuming a fixed delay time α of 0:03 seconds, packets (1) through (4) are read from their buffers and output to the relay node 907 at a time obtained by adding 00:03 seconds to the input time stored in the header of each packet (1) through (4)."),
“wherein the timing information defines the read timing by indicating a reference timing that is predetermined in the transmit cycle,” (Iwashita teaches that output node 102a reads the packet at a time by adding a delay time to the input time i.e. the input time and delay time define the read timing in Iwashita [0056] "On the other hand, output node 102a temporarily stores the received packet signal in a buffer, and based on the information indicating the input time attached to the packet signal header, reads the packet signal from the buffer at a time obtained by adding a predetermined fixed delay time α, such as network delay, to the input time, and outputs it to Layer 1 relay node 907." and Iwashita [0057] "In this way, the output node 102a controls the timing of reading the packet signal from the buffer based on information indicating the input time stored in the header of the packet signal received from the packet forwarding network."), and
“and wherein the second communication device is configured to read each of the plurality of data sets at the read timing at which a predetermined delay time has elapsed from the reference timing.” (Iwashita teaches that output node 102a reads the packet at a time by adding a delay time to the input time in Iwashita [0056] "On the other hand, output node 102a temporarily stores the received packet signal in a buffer, and based on the information indicating the input time attached to the packet signal header, reads the packet signal from the buffer at a time obtained by adding a predetermined fixed delay time α, such as network delay, to the input time, and outputs it to Layer 1 relay node 907." and Iwashita [0057] "In this way, the output node 102a controls the timing of reading the packet signal from the buffer based on information indicating the input time stored in the header of the packet signal received from the packet forwarding network.").
Claim 5:
Iwashita teaches “The communication system according to claim 4, wherein the second communication device is further configured to set the delay time based on an input to a user interface.” (Iwashita teaches that output node 102a reads the packet at a time by adding a predetermined fixed delay time to the input time i.e. the user sets the delay time in Iwashita [0056] "On the other hand, output node 102a temporarily stores the received packet signal in a buffer, and based on the information indicating the input time attached to the packet signal header, reads the packet signal from the buffer at a time obtained by adding a predetermined fixed delay time α, such as network delay, to the input time, and outputs it to Layer 1 relay node 907.").
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 6 and 9-12 are rejected under 35 U.S.C. 103 as being unpatentable over Iwashita et al. (JP2017005289A) (citations to examiner provided translation), in view of Gerendai et al. (US20100058138A1).
Claim 6:
Iwashita teaches “The communication system according to claim 2, wherein the second communication device is configured to: repeat a read cycle to sequentially read the ordered data sets from the standby buffer;” (Iwashita teaches that the received packets are stored in a buffer and they are read based on the input time in the header i.e. they are read repeatedly in Iwashita [0056] "On the other hand, output node 102a temporarily stores the received packet signal in a buffer, and based on the information indicating the input time attached to the packet signal header, reads the packet signal from the buffer at a time obtained by adding a predetermined fixed delay time α, such as network delay, to the input time, and outputs it to Layer 1 relay node 907. Here, the time at output node 102a and the time at input node 101 are synchronized by the reference clock unit 105. For example, in Figure 4, assuming a fixed delay time α of 0:03 seconds, packets (1) through (4) are read from their buffers and output to the relay node 907 at a time obtained by adding 00:03 seconds to the input time stored in the header of each packet (1) through (4).").
Iwashita does not appear to explicitly teach “and detect a missing data set based on a comparison between an execution timing of the read cycle and the read timing of a data set corresponding to the read cycle in the ordered data sets.” However, Gerendai does teach this claim limitation (Gerendai teaches determining a packet is missing by comparing the received packet identifier to an expected packet identifier i.e. the expected read time may differ from the actual read time in Gerendai [0023] "In one embodiment, a sender (e.g. gateway 14 or server 18) transmits to the receiver the data packets 20 sequentially in accordance with the PSNs so that a data packet 20 with a lower PSN is transmitted prior to one with a higher PSN (e.g., a data packet with PSN=2 is transmitted before a data packet with PSN=3). If the receiver determines that a data packet 20 is missing (e.g., it has received data packet with PSN=3 but not PSN=1), it transmits to the sender a negative acknowledgement (NACK) message listing the missing packet (e.g., PSN=1). Preferably, the NACK message lists not only the missing packet(s) of the most current data packet group but also the missing packet(s) of all previous data packet groups. Thus, if a data packet with PSN=3 is missing from packet group 1 (and not yet received) and data packet with PSN=25 is missing from packet group 5, the NACK message will list both missing data packets (PSN=3 and PSN=25). This is particularly advantageous because even if the previous NACK message is lost, the sender will still be notified of the missing data packet(s) of previously sent packet groups. It is contemplated that the NACK message may be sent before or after the receiver receives a GTR data packet of each data packet group.").
Iwashita and Gerendai are analogous art because they are from the same field of endeavor of data transmission. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention, having teachings of Iwashita and Gerendai before him/her, to modify the teachings of a Delay fluctuation absorption method of Iwashita to include the determination of a missing packet of Gerendai because adding the Data Transmission method of Gerendai would allow for previously lost messages to be sent again, which a person having ordinary skill in the art would recognize as an improvement in ensuring the data is transmitted correctly as described in Gerendai [0023] “In one embodiment, a sender (e.g. gateway 14 or server 18) transmits to the receiver the data packets 20 sequentially in accordance with the PSNs so that a data packet 20 with a lower PSN is transmitted prior to one with a higher PSN (e.g., a data packet with PSN=2 is transmitted before a data packet with PSN=3). If the receiver determines that a data packet 20 is missing (e.g., it has received data packet with PSN=3 but not PSN=1), it transmits to the sender a negative acknowledgement (NACK) message listing the missing packet (e.g., PSN=1). Preferably, the NACK message lists not only the missing packet(s) of the most current data packet group but also the missing packet(s) of all previous data packet groups. Thus, if a data packet with PSN=3 is missing from packet group 1 (and not yet received) and data packet with PSN=25 is missing from packet group 5, the NACK message will list both missing data packets (PSN=3 and PSN=25). This is particularly advantageous because even if the previous NACK message is lost, the sender will still be notified of the missing data packet(s) of previously sent packet groups. It is contemplated that the NACK message may be sent before or after the receiver receives a GTR data packet of each data packet group.”
Claim 9:
Iwashita in view of Gerendai teaches “The communication system according to claim 6, wherein the second communication device is configured to detect the missing data set in response to determining that the read timing of a head data set located at a head of an arrangement in the standby buffer does not correspond to the execution timing of the read cycle.” (Gerendai teaches determining a packet is missing by comparing the received packet identifier to an expected packet identifier i.e. the expected read time may differ from the actual read time in Gerendai [0023] "In one embodiment, a sender (e.g. gateway 14 or server 18) transmits to the receiver the data packets 20 sequentially in accordance with the PSNs so that a data packet 20 with a lower PSN is transmitted prior to one with a higher PSN (e.g., a data packet with PSN=2 is transmitted before a data packet with PSN=3). If the receiver determines that a data packet 20 is missing (e.g., it has received data packet with PSN=3 but not PSN=1), it transmits to the sender a negative acknowledgement (NACK) message listing the missing packet (e.g., PSN=1). Preferably, the NACK message lists not only the missing packet(s) of the most current data packet group but also the missing packet(s) of all previous data packet groups. Thus, if a data packet with PSN=3 is missing from packet group 1 (and not yet received) and data packet with PSN=25 is missing from packet group 5, the NACK message will list both missing data packets (PSN=3 and PSN=25). This is particularly advantageous because even if the previous NACK message is lost, the sender will still be notified of the missing data packet(s) of previously sent packet groups. It is contemplated that the NACK message may be sent before or after the receiver receives a GTR data packet of each data packet group.").
Claim 10:
Iwashita in view of Gerendai teaches “The communication system according to claim 9, wherein the second communication device is configured to, in response to detecting the missing data set, wait for reading of the head data set until a read cycle next to the read cycle.” (Gerendai teaches that the receiver transmits a NACK message if the elapsed time for the missing data packet is less than a predetermined time and doesn't retransmit if it hasn't met that time i.e. the receiver waits to receive the next message during a proceeding read cycle in Gerendai [0024] "After receiving a NACK message from the receiver, the sender checks the time elapsed since the transmission of each missing data packet listed in the NACK message. If the elapsed time for a missing data packet is less than a predetermined time interval (e.g., about one round trip time (RTT) for a data packet to travel between the sender and the receiver), the sender does not retransmit the requested (missing) data packet. On the other hand, if the elapsed time for the missing data packet is greater than the predetermined time interval, then the sender retransmits the missing data packet.").
Claim 11:
Iwashita in view of Gerendai teaches “The communication system according to claim 6, wherein the second communication device is further configured to request the first communication device to retransmit the data set in response to detecting the missing data set.” (Gerendai teaches sending a negative acknowledgement message which includes the missing messages and the sender will retransmit the missing packets if a predetermined time interval has passed in Gerendai [0023-0024] "If the receiver determines that a data packet 20 is missing (e.g., it has received data packet with PSN=3 but not PSN=1), it transmits to the sender a negative acknowledgement (NACK) message listing the missing packet (e.g., PSN=1). Preferably, the NACK message lists not only the missing packet(s) of the most current data packet group but also the missing packet(s) of all previous data packet groups. Thus, if a data packet with PSN=3 is missing from packet group 1 (and not yet received) and data packet with PSN=25 is missing from packet group 5, the NACK message will list both missing data packets (PSN=3 and PSN=25). This is particularly advantageous because even if the previous NACK message is lost, the sender will still be notified of the missing data packet(s) of previously sent packet groups. It is contemplated that the NACK message may be sent before or after the receiver receives a GTR data packet of each data packet group. After receiving a NACK message from the receiver, the sender checks the time elapsed since the transmission of each missing data packet listed in the NACK message. If the elapsed time for a missing data packet is less than a predetermined time interval (e.g., about one round trip time (RTT) for a data packet to travel between the sender and the receiver), the sender does not retransmit the requested (missing) data packet. On the other hand, if the elapsed time for the missing data packet is greater than the predetermined time interval, then the sender retransmits the missing data packet.").
Claim 12:
Iwashita in view of Gerendai teaches “The communication system according to claim 11, wherein the first communication device is configured to hold the data set that has been transmitted in preparation for a retransmission request from the second communication device.” (Gerendai teaches retransmitting missing packets if requested and a predetermined time interval has passed i.e. it holds the previously sent packets in case of a retransmission request in Gerendai [0023-0024] "If the receiver determines that a data packet 20 is missing (e.g., it has received data packet with PSN=3 but not PSN=1), it transmits to the sender a negative acknowledgement (NACK) message listing the missing packet (e.g., PSN=1). Preferably, the NACK message lists not only the missing packet(s) of the most current data packet group but also the missing packet(s) of all previous data packet groups. Thus, if a data packet with PSN=3 is missing from packet group 1 (and not yet received) and data packet with PSN=25 is missing from packet group 5, the NACK message will list both missing data packets (PSN=3 and PSN=25). This is particularly advantageous because even if the previous NACK message is lost, the sender will still be notified of the missing data packet(s) of previously sent packet groups. It is contemplated that the NACK message may be sent before or after the receiver receives a GTR data packet of each data packet group. After receiving a NACK message from the receiver, the sender checks the time elapsed since the transmission of each missing data packet listed in the NACK message. If the elapsed time for a missing data packet is less than a predetermined time interval (e.g., about one round trip time (RTT) for a data packet to travel between the sender and the receiver), the sender does not retransmit the requested (missing) data packet. On the other hand, if the elapsed time for the missing data packet is greater than the predetermined time interval, then the sender retransmits the missing data packet.").
Claim 7 is rejected under 35 U.S.C. 103 as being unpatentable over Iwashita et al. (JP2017005289A) (citations to examiner provided translation), in view of Gerendai et al. (US20100058138A1), further in view of Sawai et al. (JP2010167550A) (citations to examiner provided translation).
Claim 6:
Iwashita in view of Gerendai teaches “The communication system according to claim 6,” as described above. Neither Iwashita or Gerendai appear to explicitly teach “wherein a machine is controlled based on the ordered data sets sequentially read by the second communication device;” or “and wherein the second communication device is further configured to stop the machine in response to determining that a number of consecutive read cycles in each of which the missing data set is detected reaches a predetermined number for drive stoppages.” However, Sawai does teach these claim limitations.
Sawai teaches “wherein a machine is controlled based on the ordered data sets sequentially read by the second communication device;” (Sawai teaches a controller that receives performs robot control according to received packet data in Sawai [0092] "Furthermore, the controller 30 includes a communication unit 33 (second communication means, communication means) that verifies whether or not key status data A4 (packet data) related to the received non-priority key 16 has been received in sequential order at each of the periodic intervals, and that requests retransmission when a communication error occurs in the received packet data related to the non-priority key. Furthermore, the controller 30 performs robot control according to the key status data B4 (packet data) related to the priority key 15 received by the communication unit 33 and the safety receiving unit 32 (second communication means, communication means) if the key status data B4 is received sequentially at each of the periodic intervals. If the data is not received sequentially at each of the periodic intervals, the controller 30 stops the robot R."), and
“and wherein the second communication device is further configured to stop the machine in response to determining that a number of consecutive read cycles in each of which the missing data set is detected reaches a predetermined number for drive stoppages.” (Sawai teaches that the controller stops the robot if the data is not received sequentially at an interval in Sawai [0092] "Furthermore, the controller 30 includes a communication unit 33 (second communication means, communication means) that verifies whether or not key status data A4 (packet data) related to the received non-priority key 16 has been received in sequential order at each of the periodic intervals, and that requests retransmission when a communication error occurs in the received packet data related to the non-priority key. Furthermore, the controller 30 performs robot control according to the key status data B4 (packet data) related to the priority key 15 received by the communication unit 33 and the safety receiving unit 32 (second communication means, communication means) if the key status data B4 is received sequentially at each of the periodic intervals. If the data is not received sequentially at each of the periodic intervals, the controller 30 stops the robot R.").
Iwashita, Gerendai, and Sawai are analogous art because they are from the same field of endeavor of data transmission. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention, having teachings of Iwashita, Gerendai, and Sawai before him/her, to modify the teachings of a Delay fluctuation absorption method of Iwashita modified to include the determination of a missing packet of Gerendai to include the controlling of a machine and stopping of the machine when packets aren’t received of Sawai because adding the Robot control system and controller of Sawai would enhance safety as described in Sawai [0089-0090] “Furthermore, if a communication error related to the priority key 15 is detected, the safety receiving unit 32 (storage means) of the controller 30 releases the ON state of the stored teaching operation key, that is, sets it to the OFF state. The main CPU 31 (control means) stops the robot upon the release of the memory. As a result, when a communication error is detected during teaching, the controller that controls the robot will not experience a delay in response or become unable to operate, thus providing a network-enabled robot control system that enhances safety.” And in Sawai [0092] “As a result, in the communication between the teach pendant 10, which applies remote desktop technology, and the controller 30 that controls the robot, by providing two paths for transmitting the key state of the operation keys on the teach pendant 10, it is possible to provide a robot control system that guarantees real-time transmission of key operations when teaching robot movements using the teach pendant 10, enhances the reliability of communication, and ensures safe and stable operation.”
Claims 17-19 are rejected under 35 U.S.C. 103 as being unpatentable over Hosokawa et al. (US20160359586A1) in view of Iwashita et al. (JP2017005289A) (citations to examiner provided translation).
Claim 17:
Hosokawa teaches “a controller configured to sequentially generate a plurality of command data sets;” (Hosokawa teaches an apparatus 10 that generates control commands in Hosokawa [0053] "The apparatus 10 corresponds to the apparatus 1 in the reference example. The apparatus 10 is connected to the OPS 4. The apparatus 10 includes a control unit 11 and a nonvolatile region 12. The nonvolatile region 12 stores apparatus management information 12A. Since the configuration of the apparatus 10 is the same configuration as the apparatus 1, description will not be repeated." and Hosokawa [0057] "The control (for example, control A) requested from the apparatus 10 is an example of the “first control command”, and the plurality of second controls (controls A-1 to A-n) converted by the translation unit 21 is an example of the “plurality of second control commands”."),
“and a local controller configured to operate a machine based on the plurality of command data sets,” (Hosokawa teaches control unit 31 of apparatus 3 executes controls based on execution requests and updates information based on the results of the control in Hosokawa [0039] "The control unit 31 of the apparatus 3 executes each of controls A1 to A-n according to the execution request, and updates the hardware control information 32A of the main signal control unit 32 and the apparatus configuration information 33A in the nonvolatile region 33, based on the execution results of each control. The execution result (normal finish (OK) or abnormal finish (NG)) of each of controls A-1 to A-n is returned to the apparatus 2. When all of the processes of the controls A1 to A-n are finished as OK, the apparatus 2 transmits a notification indicating the normal finish of the control A to the apparatus 1."; Hosokawa teaches apparatus 30 corresponds to apparatus 3 in Hosokawa [0058] "The apparatus 30 corresponds to the apparatus 3 in the reference example.”), and
“and wherein the local controller is configured to operate the machine based on the ordered data sets sequentially read by the second communication device.” (Hosokawa teaches control unit 31 of apparatus 3 executes controls A1 to A-n according to the execution requests i.e. it executes the controls based on the sequentially read controls in Hosokawa [0039] "The control unit 31 of the apparatus 3 executes each of controls A1 to A-n according to the execution request, and updates the hardware control information 32A of the main signal control unit 32 and the apparatus configuration information 33A in the nonvolatile region 33, based on the execution results of each control. The execution result (normal finish (OK) or abnormal finish (NG)) of each of controls A-1 to A-n is returned to the apparatus 2. When all of the processes of the controls A1 to A-n are finished as OK, the apparatus 2 transmits a notification indicating the normal finish of the control A to the apparatus 1.").
Hosokawa does not appear to explicitly teach “A control system comprising: the communication system according to claim 1;”, “wherein the first communication device is configured to: add the order information to each of a plurality of command data sets;”, “and sequentially transmit the plurality of command data sets to which the order information is added,”, “wherein the second communication device is configured to: sequentially receive the plurality of command data sets;”, “arrange the plurality of received command data sets in the standby buffer as the ordered data sets based on the order information;” or “and sequentially read the ordered data sets,” However, Suneya does teach these claim limitations.
Suneya teaches “A control system comprising: the communication system according to claim 1;” (as described above in 102 section, claim 1.),
“wherein the first communication device is configured to: add the order information to each of a plurality of command data sets;” (Suneya teaches a transmitter i.e. first communication device in Suneya [0012] "This communication system comprises a transmitting device 1 that transmits data containing multiple frames, and a receiving device 2 that is connected to the transmitting device 1 via a network 3 and receives data containing multiple frames transmitted from the transmitting device 1. Transmitter 1 and receiver 2 are examples of communication devices."; Suneya teaches adding an offset position 56 i.e. order information to the header of packets to be transmitted by the transmitting device 1 in Suneya [0026-0027] "Figure 7 shows an example of the configuration of an RTP packet generated by the packet generation unit 13 of this embodiment. The RTP packet 50 includes an RTP header 51 that indicates the attributes of the packet, and a payload 57 that stores the data of the frames divided by the frame division unit 12. The RTP header 51 includes an RTP extension header 52. In RTP, if an extended header is included, the identifier "X" in the RTP header 51, which indicates the presence or absence of the extended header, is set to 1 (X = 1 in the figure). In this embodiment, the extended header identifier 53 of the RTP extended header 52 stores an identifier indicating that it contains information about the frame size 55 of the frame data and the offset position 56 indicating the position of each divided data within the frame."),
“and sequentially transmit the plurality of command data sets to which the order information is added,” (Suneya teaches the packets are stored in a transmission buffer 14 and then sequentially transmitted in Suneya [0030] "The packet generation unit 13 generates an RTP packet 50 by adding an RTP header 51 to the data of the frames divided by the frame division unit 12. In this case, the packet generation unit 13 stores the size of the frame before splitting (frame size 55) and the offset position 56 of the data contained in the packet payload from the beginning of the frame before splitting in the RTP extension header 52. The packets generated by the packet generation unit 13 are sequentially stored in the transmission buffer 14 and then sequentially transmitted to the receiving device 2 by the packet transmission unit 15."),
“wherein the second communication device is configured to: sequentially receive the plurality of command data sets;” (Suneya teaches a receiver 2 i.e. second communication device that receives data transmitted from the transmitting device 1 in Suneya [0012] "This communication system comprises a transmitting device 1 that transmits data containing multiple frames, and a receiving device 2 that is connected to the transmitting device 1 via a network 3 and receives data containing multiple frames transmitted from the transmitting device 1. Transmitter 1 and receiver 2 are examples of communication devices."),
“arrange the plurality of received command data sets in the standby buffer as the ordered data sets based on the order information;” (Suneya teaches the receiving device 2 storing packets in a receiving buffer 31 and copying a frame made up of multiple packets in the correct order in the frame recombination buffer 32 in Suneya [0020] "The receiving device 2 stores multiple packets for one frame in the receiving buffer (temporary) 31 in the order they are received, as shown in Figure 5, for example. After receiving multiple packets that make up a single frame, the receiving device 2 read the packets stored in the receive buffer 31 in the correct order and copied them to the frame recombination buffer 32, thereby recombining the frame." and in Suneya [0022-0023] "In the diagram, S stands for Step. The receiving device 2 first receives an RTP packet at S1. The reception process in S1 is repeated in S2 until it is detected that all packets constituting a single frame have been received. When the receiving device 2 receives all the packets that make up a single frame, it reserves (secures, acquires) a frame recombination buffer 32 in S3. The frame recombination buffer 32 is used to recombine the frame data, which has been divided and stored in multiple received packets, by combining them in the correct order. Furthermore, in S4, the receiving device 2 recombines the frame data by copying the payload data of the packets stored in the receiving buffer 31 to the frame recombination buffer 32 while arranging them in the correct order. In this process, the receiving device 2 aligns the order of the data in the payload portion by referring to the sequence number in the RTP header.), and
“and sequentially read the ordered data sets,” (Suneya teaches the receiving device 2 reading the packets in the correct order in Suneya [0020] "The receiving device 2 stores multiple packets for one frame in the receiving buffer (temporary) 31 in the order they are received, as shown in Figure 5, for example. After receiving multiple packets that make up a single frame, the receiving device 2 read the packets stored in the receive buffer 31 in the correct order and copied them to the frame recombination buffer 32, thereby recombining the frame.").
Hosokawa and Suneya are analogous art because they are from the same field of endeavor of data transmission. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention, having teachings of Hosokawa and Suneya before him/her, to modify the teachings of a System and method for restoring a status of an apparatus controlled by multiple commands of Hosokawa to include the data transmission and arrangement method of Suneya because adding the Communication device, communication method, and program of Suneya would
allow for the load of recombining data to be distributed, allowing processing to be completed more quickly as described in Iwashita [0024-0025] “Thus, conventionally, after receiving a packet for one frame, it was necessary to copy all the data from the payload portion. Because copying data places a high processing load on the system, especially on devices with insufficient resources such as CPU processing power, there was a possibility that S4 processing could not be completed within the processing time of one frame, particularly when dealing with a large number of packets. Therefore, there was a possibility that the performance of content playback would be reduced. Therefore, in this embodiment, the copying of data in the payload portion is prevented from concentrating during frame recombination. In other words, in this embodiment, the processing load of recombining frame data is distributed.” And in Iwashita [0036] “Thus, in this embodiment, frame recombination is completed when the last RTP packet constituting a single frame is received and the payload data of that packet is stored in the frame recombination buffer 33.
In other words, in this embodiment, a frame recombination process is performed each time an RTP packet is received, that is, the process of storing the payload data in an appropriate location in the frame recombination buffer. Therefore, as in the past, it is no longer necessary to copy the payload data of all received packets into a frame recombination buffer after receiving all RTP packets that make up a single frame. This allows the process of recombining frame data to be distributed in this embodiment”
Claim 18:
Hosokawa in view of Suneya teaches “The control system according to claim 17, wherein the local controller is configured to sequentially acquire a plurality of feedback data sets including an operation result based on the plurality of command data sets,” (Hosokawa teaches that a normal finish notification or abnormal finish notification may be received from the apparatus 30 with respect to control success i.e. feedback data including an operation result in Hosokawa [0078-0079] "The control results management unit 22 stores “normal finish (control success)” in the volatile region 24 as the control results information 24A in a case where a normal finish notification is received for all of the series of controls (controls A-1 to A-n) to the apparatus 30, which are obtained through the conversion by the apparatus 20. In contrast, in a case where the normal finish notification is not obtained for all of the series of controls, the control results management unit 22 stores “abnormal finish (control failure)” as the control results information 24A in the volatile region 24. The control results management unit 22 sends the normal finish notification to the response results management unit 23 in a case where all of the series of controls finish normally for the apparatus 30. In contrast, in a case where the series of controls finish abnormally, the apparatus 20 stops the control for the apparatus 30. In this case, the control results management unit 22 sends the abnormal finish notification to the response results management unit 23, sends the R-CMD application notification for the R-CMD management unit 34, and sends the timer discard notification to the timer management unit 35."),
“and the second communication device is further configured to: add second order information to each of the plurality of feedback data sets acquired by the local controller;” (Suneya teaches a transmitter i.e. first communication device in Suneya [0012] "This communication system comprises a transmitting device 1 that transmits data containing multiple frames, and a receiving device 2 that is connected to the transmitting device 1 via a network 3 and receives data containing multiple frames transmitted from the transmitting device 1. Transmitter 1 and receiver 2 are examples of communication devices."; Suneya teaches adding an offset position 56 i.e. order information to the header of packets to be transmitted by the transmitting device 1 in Suneya [0026-0027] "Figure 7 shows an example of the configuration of an RTP packet generated by the packet generation unit 13 of this embodiment. The RTP packet 50 includes an RTP header 51 that indicates the attributes of the packet, and a payload 57 that stores the data of the frames divided by the frame division unit 12. The RTP header 51 includes an RTP extension header 52. In RTP, if an extended header is included, the identifier "X" in the RTP header 51, which indicates the presence or absence of the extended header, is set to 1 (X = 1 in the figure). In this embodiment, the extended header identifier 53 of the RTP extended header 52 stores an identifier indicating that it contains information about the frame size 55 of the frame data and the offset position 56 indicating the position of each divided data within the frame."),
“sequentially transmit the plurality of feedback data sets to which the second order information is added,” (Suneya teaches the packets are stored in a transmission buffer 14 and then sequentially transmitted in Suneya [0030] "The packet generation unit 13 generates an RTP packet 50 by adding an RTP header 51 to the data of the frames divided by the frame division unit 12. In this case, the packet generation unit 13 stores the size of the frame before splitting (frame size 55) and the offset position 56 of the data contained in the packet payload from the beginning of the frame before splitting in the RTP extension header 52. The packets generated by the packet generation unit 13 are sequentially stored in the transmission buffer 14 and then sequentially transmitted to the receiving device 2 by the packet transmission unit 15."),
“and wherein the first communication device is further configured to: sequentially receive the plurality of feedback data sets from the second communication device;” (Suneya teaches a receiver 2 i.e. second communication device that receives data transmitted from the transmitting device 1 in Suneya [0012] "This communication system comprises a transmitting device 1 that transmits data containing multiple frames, and a receiving device 2 that is connected to the transmitting device 1 via a network 3 and receives data containing multiple frames transmitted from the transmitting device 1. Transmitter 1 and receiver 2 are examples of communication devices."),
“arrange the plurality of received feedback data sets in a second standby buffer as a second ordered data sets based on the second order information;” (Suneya teaches the receiving device 2 storing packets in a receiving buffer 31 and copying a frame made up of multiple packets in the correct order in the frame recombination buffer 32 in Suneya [0020] "The receiving device 2 stores multiple packets for one frame in the receiving buffer (temporary) 31 in the order they are received, as shown in Figure 5, for example. After receiving multiple packets that make up a single frame, the receiving device 2 read the packets stored in the receive buffer 31 in the correct order and copied them to the frame recombination buffer 32, thereby recombining the frame." and in Suneya [0022-0023] "In the diagram, S stands for Step. The receiving device 2 first receives an RTP packet at S1. The reception process in S1 is repeated in S2 until it is detected that all packets constituting a single frame have been received. When the receiving device 2 receives all the packets that make up a single frame, it reserves (secures, acquires) a frame recombination buffer 32 in S3. The frame recombination buffer 32 is used to recombine the frame data, which has been divided and stored in multiple received packets, by combining them in the correct order. Furthermore, in S4, the receiving device 2 recombines the frame data by copying the payload data of the packets stored in the receiving buffer 31 to the frame recombination buffer 32 while arranging them in the correct order. In this process, the receiving device 2 aligns the order of the data in the payload portion by referring to the sequence number in the RTP header.), and
“and sequentially read the second ordered data sets.” (Suneya teaches the receiving device 2 reading the packets in the correct order in Suneya [0020] "The receiving device 2 stores multiple packets for one frame in the receiving buffer (temporary) 31 in the order they are received, as shown in Figure 5, for example. After receiving multiple packets that make up a single frame, the receiving device 2 read the packets stored in the receive buffer 31 in the correct order and copied them to the frame recombination buffer 32, thereby recombining the frame.").
Claim 19:
Hosokawa in view of Suneya teaches “The control system of claim 18, wherein the controller is configured to sequentially generate the command data sets based on the second ordered data sets sequentially read by the second ordered data sets.” (Hosokawa teaches that when the apparatus 10 receives the confirmation of a normal finish, apparatus 10 transmits reception verification i.e. it generates command data based on the second ordered data set in Hosokawa [0139-0140] "When it is determined that the response (normal finish) is received and both of the controls A-1 and A-2 finish, the control results management unit 22 stores the control results information 24A indicating the normal finish in the volatile region 24. The control results management unit 22 sends the normal finish notification to the response results management unit 23 which transmits the response indicating a normal finish of the control A to the apparatus 10 (<13> in FIG. 17). At this time, the response results management unit 23 sets the timer for standby and awaits the reception verification from the apparatus 10. When the response is received normally by the apparatus 10, the apparatus 10 transmits the reception verification to the apparatus 20. When the reception verification is received before the expiration of the timer, the response results management unit 23 verifies that the control results information 24A indicates a normal finish of the control A. Then, the response results management unit 23 sends the R-CMD discard notification and the timer discard notification to the apparatus 30 (<14> in FIG. 17).").
Allowable Subject Matter
Claim 8 would be allowable if rewritten to overcome the rejections under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), 2nd paragraph, 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), 1st paragraph, and the claim objection set forth in this Office action and to include all of the limitations of the base claim and any intervening claims.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Baduge et al. (US20140362690A1) teaches a buffer that stores transmitted packets in case of retransmission requests in Baduge [0049] “RTP packet output unit 205 has transmission data buffer 204 that accumulates output data from content output unit 202. RTP packet output unit 205 has a retransmission memory in case of a retransmission request. Depending on ACK/NACK modes in section 3.6 of NPLT 3, a transmitted normal packet is held in the retransmission memory for a time until an area of each RTP packet is permitted to be released. RTP packet output unit 205 outputs, to the transmission data buffer, a retransmission packet (corresponding to a normal packet) designated in response to the retransmission instruction from first controller 206. RTP packet output unit 205 outputs the retransmission packet to the Tx unit such that, in the buffer, a total amount of (1) a data amount by the normal packet and (2) a data amount by the retransmission packet in a predetermined time section is made uniform as much as possible in a plurality of time sections."
Simpson (US20050152274A1) teaches a method of data transmission where if the data block to be transmitted is larger than a certain size, it will split the data and the receiving device may send a request for the remaining data in Simpson [0029] "if the data block is bigger than the certain amount which can be transmitted with the command, the target immediately recognizes that additional data will be required (e.g., by referencing a flag in the header), whereupon the target can immediately issue a request (or multiple requests which transfer the data in multiple pieces in the case of a very large transfer) for the left-over data as indicated by (2) in FIG. 7. The flag can be included within the header of the command, and can be any type of flag, e.g., simply a single bit indicating that there is left-over data or can be more complex such as an address of the left-over data. In any case, the request for left-over data is immediately issued from the target device without waiting to process the other parts of the command or the data in the small data block. After the request is forwarded to the initiator, the target device can start to process the command together with the small data block (3). The left-over data is transmitted across the switched fabric (4), again without waiting for the processing of the command and the small data block in step 3. However, at this point, an adequate buffer is provided in the target device in expectation of the left-over data, preferably before the command and small data block are processed."
Turnbull et al. (US20050021821A1) teaches a method of sending a message in Turnbull [0055] "Referring to FIG. 5, in operation, the client 102 is in record mode (501). When recording commences, the client 102 sends a message reliably using TCP to the server 104 to establish contact and to request that the server then prepare to receive UDP data packets from the client 102 (this stage is not shown in the diagram). Multimedia data is captured and encoded (503) in encoder 201 and then packetised (505) at the RTP packetiser 202. The data packets are then transmitted (507) to the network interface 203 for onward transmission via the Internet 103 to the server 104 using unreliable UDP. The client also stores (509) a copy of the transmitted packets in temporary buffer 203 which serves as a library of recently transmitted data packets and may be drawn upon to replace packets which go missing during transmission. The server 104 receives data packets (511) and puts them into order for archiving (531) in archive 303. The RTP module 302 checks (513) for any packets that have been lost during transmission. An ACK message is returned to the client (515) to indicate that no packets have been lost during the ACK period. The ACK period is set to according to the capacity of the temporary store. A long ACK period is preferable to reduce the amount of network traffic, although the bandwidth requirement of an ACK message is minimal. Upon receipt of the ACK message, the controller 206 of the client 102 deletes (517) the contents of the temporary buffer 205 because the contents of the temporary buffer 205 are now known to have arrived safely at the server 104. As soon as a packet is recognised as missing by the server 104 a NACK message containing the RTP sequence number of the missing packet is sent (519) to the client reliably using TCP. In other embodiments a NACK message could be sent at predefined intervals or upon completion of the transmission. The controller 206 of the client 102 retrieves the missing packet (521) from the temporary buffer 205 and places it in the lost packet store 204. The controller 206 then deletes (517) the packets in the temporary buffer which pre-date the missing packet. The process is continued until the user stops recording, either voluntarily or involuntarily because the lost packet store 204 is full."
Hashimoto et al. (US20040078116A1) teaches a robot stopping if data has not been received after a period of time in Hashimoto [0066] "Furthermore, wireless communications may be impeded by noise and the like. While communications are thus impeded, there is a danger if an emergency stop is not be transmitted. Accordingly, a watchdog timer may be installed in the receiving means, and in cases where a packet transmitting an emergency-stop state is not received within a fixed period of time, an emergency stop signal is output to the emergency stop control circuits 1 and 2 in the same manner as in cases where data expressing an emergency stop is transmitted, so that the robot is caused to make an emergency stop."
Ikeno (US20070288674A1) teaches that if a communication failure occurs, stopping communication between two devices in Ikeno [0038] "In an example embodiment of a remote I/O system shown in FIG. 1A, it is assumed that a communication failure occurred between the master station 10 and the slave station S3. In this example embodiment as shown in FIG. 1B, only the communication with the slave station S3 which experiences a communication failure is stopped while master/slave communication with the other slave stations (i.e., S1, S2, S4, and S5) is continued to maintain normal communication. Here, the master station does not perform participation invitation (or participation solicitation) process 45 on the slave station S3 which has a failure. As a result, even after the communication failure is resolved, the participation process of the slave station S3 into the system is not performed, thereby maintaining the condition of the failure which facilitates identification of the slave station S3 with the communication failure. By utilizing this operation, when failures occur at multiple slave stations, the failure condition at each slave having a failure is maintained, thereby identifying the locations of the multiple failures at one time."
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Zachary A Cain whose telephone number is (571)272-4503. The examiner can normally be reached Mon-Fri 7:00-3:30 CST.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Kenneth M Lo can be reached at (571) 272-9774. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/Z.A.C./Examiner, Art Unit 2116
/KENNETH M LO/Supervisory Patent Examiner, Art Unit 2116