Communication apparatus, server, communication system, and communication method

In a communication apparatus communicating with a server based on connection information and firmware for connecting to the server, in order to appropriately communicate with various servers, the communication apparatus is configured to

TECHNICAL FIELD

The present disclosure relates to a communication apparatus, a server, a communication system, and a communication method.

BACKGROUND ART

There is a gateway device (hereinafter referred to as a communication apparatus) that collects data from an electronic device and transmits, via a communication network, the collected data to an Internet of Things (IoT) server that provides various services such as monitoring of the electronic device.

Further, in order to enable such a communication apparatus to connect to an appropriate connection destination, there is known a technique for transmitting first identification information to a server and acquiring the information of a second connection destination corresponding to the first identification information (see, e.g., Patent Document 1).

CITATION LIST

Patent Document

SUMMARY OF INVENTION

Technical Problem

The communication apparatus as described in Patent Document 1 operates on firmware that is premised on being connected to the server of the own company (cloud service, etc.), and, therefore, it has been difficult to form an alliance with a partner company or the like and connect to another company's server, for example. For example, as described in Patent Document 1, by only acquiring information on the second connection destination, it is sometimes impossible to properly communicate with other communication systems that are operated by various partner companies and that continue to evolve on a daily basis.

The present disclosure makes it possible to appropriately communicate with various kinds of other servers by a communication apparatus communicating with a server, based on connection information and firmware for connecting to the server.

Solution to Problem

A communication apparatus according to a first aspect of the present disclosure is configured tocommunicate with a first server based on first connection information and first firmware for connecting to the first server, andacquire, from the first server, second firmware for connecting to a second server different from the first server.

According to the first aspect of the present disclosure, the communication apparatus communicating with the server based on the connection information and the firmware for connecting to the server, can appropriately communicate with various other servers.

A second aspect of the present disclosure is the communication apparatus according to the first aspect, whereinthe communication apparatus acquires, from the first server, second connection information for connecting to the second server, andthe second connection information includes authentication information for connecting to the second server.

A third aspect of the present disclosure is the communication apparatus according to the second aspect, wherein the communication apparatus communicates with the second server based on the second connection information and the second firmware.

A fourth aspect of the present disclosure is the communication apparatus according to any one of the first to third aspects, wherein when changing the second server to which the communication apparatus is to be connected, the communication apparatus communicates with the first server based on an instruction from outside, to reacquire firmware for connecting to a different second server that is different from the second server.

A fifth aspect of the present disclosure is the communication apparatus according to any one of the first to fourth aspects, wherein the first connection information and the first firmware are set when the communication apparatus is manufactured.

A server according to a sixth aspect of the present disclosure is a first server and is configured toreceive a selection of a service to be used by a communication apparatus or a second server,receive, from the communication apparatus, first connection information including apparatus identification information identifying the communication apparatus, andtransmit, to the communication apparatus, second firmware for connecting to the second server providing the service to be used by the communication apparatus.

According to the second aspect of the present disclosure, the server can appropriately provide the communication apparatus with second firmware for connecting to a second server that is the connection destination.

A seventh aspect of the present disclosure is the server according to the sixth aspect, whereinthe first serverstores second connection information and the second firmware for connecting to the second server, andtransmits, to the communication apparatus, the second connection information and the second firmware for connecting to the second server providing the service to be used by the communication apparatus.

An eighth aspect of the present disclosure is the server according to the seventh aspect, whereinthe second connection information includes authentication information for connecting to the second server, andthe first server generates the authentication information for connecting to the second server.

A ninth aspect of the present disclosure is the server according to any one of the sixth to eighth aspects, whereinthe first serverstores information of the second server to which the communication apparatus is to be connected, for each piece of the apparatus identification information identifying the communication apparatus, anddetermines the second server to which the communication apparatus is to be connected, based on the apparatus identification information.

A tenth aspect of the present disclosure is the server according to any one of the sixth to eighth aspects, whereinthe first serverstores the service to be used by the communication apparatus, for each piece of the apparatus identification information identifying the communication apparatus, anddetermines the second server to which the communication apparatus is to be connected, according to the service.

A communication system according to an eleventh aspect of the present disclosure includes:a first server; anda communication apparatus, whereinthe first server is configured toreceive a selection of a service to be used by the communication apparatus,receive, from the communication apparatus, first connection information including apparatus identification information identifying the communication apparatus, andtransmit, to the communication apparatus, second firmware for connecting to a second server providing the service to be used by the communication apparatus, and whereinthe communication apparatus is configured tocommunicate with the first server based on the first connection information and first firmware for connecting to the first server, andacquire, from the first server, the second firmware for connecting to the second server different from the first server.

A communication method according to a twelfth aspect of the present disclosure is in a communication system including a first server and a communication apparatus, the communication method including:receiving, by the first server, a selection of a service to be used by the communication apparatus;communicating, by the communication apparatus with the first server, based on first connection information and first firmware for connecting to the first server;receiving, by the first server from the communication apparatus, the first connection information including apparatus identification information identifying the communication apparatus;transmitting, by the first server to the communication apparatus, second firmware for connecting to a second server providing the service to be used by the communication apparatus; andacquiring, by the communication apparatus from the first server, the second firmware for connecting to the second server different from the first server.

DESCRIPTION OF EMBODIMENTS

Hereinafter, each embodiment will be described with reference to the attached drawings. In the present specification and the drawings, elements having substantially the same functional configuration will be denoted by the same reference numerals to omit duplicate descriptions.

FIG.1is a diagram illustrating an example of a system configuration of a communication system according to an embodiment. A communication system1includes a management server10connected to a communication network N, one or more Internet of Things (IoT) servers20A,20B, and so forth, a terminal apparatus30, a communication apparatus100, and the like. In the following description, when indicating any IoT server among one or more IoT servers20A,20B, and so forth, the IoT server is referred to as the “IoT server20”. The number of IoT servers20illustrated inFIG.1is an example, and may be any other number.

The communication network N is, for example, a network such as the Internet, a local area network (LAN), a wide area network (WAN), or the like. The communication network N may include, for example, a communication section according to wireless communication such as a wireless LAN, a wireless WAN, or the like.

The communication apparatus100is, for example, an edge (gateway device) that is communicatively connected to the plurality of devices101A,101B,101C, and so forth, and collects data acquired by the plurality of devices101A,101B,101C, and so forth, and transmits the acquired data to the IoT server20. In the following description, the “device101” is used to indicate any of the plurality of devices101A,101B,101C, and so forth. The communication apparatus100may have a function of transmitting an instructed command to the device101in accordance with an instruction from the IoT server20. The device101is a device such as an air conditioner, various sensors, etc., which acquires predetermined data and transmits the data to the communication apparatus100.

The communication apparatus100according to the present embodiment stores, in advance, connection information (hereinafter referred to as the first connection information) and firmware (hereinafter referred to as the first firmware) for connection to the management server10. Further, the communication apparatus100connects to the management server10by using the first connection information and the first firmware the first time the power is turned on, for example, and acquires connection information (hereinafter referred to as the second connection information) and firmware (hereinafter referred to as the second firmware) for connection to the IoT server that is the connection destination.

The second connection information includes, for example, the URL (Uniform Resource Locator) of the IoT server that is the connection destination, and authentication information, etc., for authenticating the communication apparatus100. The firmware is a program (software) incorporated into the communication apparatus100for controlling the communication apparatus100. The second firmware includes, for example, a communication protocol, an authentication method, a data format, setting information and the like for communicating with the IoT server20that is the connection destination.

The management server (first server)10is, for example, an information processing apparatus having a computer configuration or a system including a plurality of computers. The management server10displays, on the terminal apparatus30, for example, a selection screen for selecting a connection destination of the communication apparatus100and receives a selection of a service to be used by the communication apparatus100or the IoT server (second server)20. When the communication apparatus100connects to the management server10, the management server10receives, from the communication apparatus100, apparatus identification information (hereinafter referred to as communication apparatus ID) identifying the communication apparatus100and identifies the IoT server that is the connection destination of the communication apparatus100selected on the selection screen. Furthermore, the management server10transmits, to the communication apparatus100, the second connection information and the second firmware for connecting to the IoT server that is the connection destination of the communication apparatus100. A part of or the entirety of the second connection information may be included in the second firmware.

The terminal apparatus30is, for example, an information terminal such as a personal computer (PC), a tablet terminal, a smartphone or the like. The terminal apparatus30includes various terminal apparatuses such as, for example, a terminal apparatus used by a worker on a manufacturing line for manufacturing the communication apparatus100, a terminal apparatus used by a manager or the like who manages the communication apparatus100, or a terminal apparatus used by a builder who installs the communication apparatus100.

The IoT server (second server)20is, for example, an information processing apparatus having a computer configuration or a system including a plurality of computers. The IoT server20receives IoT data transmitted by the communication apparatus100, performs data processing, and provides various services, for example, remote monitoring and fault diagnosis.

With the above configuration, the communication apparatus100according to the present embodiment can acquire, from the management server10, not only the second connection information of the IoT server20that is the connection destination but also the second firmware for connecting to the IoT server20that is the connection destination. Accordingly, the communication apparatus100according to the present embodiment can appropriately communicate with other communication systems that are operated by various partner companies and continue to evolve daily.

According to the present embodiment, the communication apparatus100that communicates with the server based on connection information and firmware for connecting to the server, can appropriately communicate with other communication systems.

The communication apparatus100, the management server10, the IoT server20, and the terminal apparatus30, etc., according to the present embodiment have, for example, a hardware configuration of a computer200as illustrated inFIG.2. Alternatively, the management server10and the IoT server20, etc., are configured by a plurality of the computers200.

FIG.2is a diagram illustrating an example of a hardware configuration of a computer according to an embodiment. The computer200includes, for example, a CPU (Central Processing Unit)201, a memory202, a storage device203, a communication I/F (Interface)204, an output device205, an input device206, and a bus207.

The CPU201is a processor that performs various functions by executing predetermined programs stored in a recording medium such as, for example, the storage device203or the memory202. The memory202includes, for example, a RAM (Random Access Memory), which is a volatile memory used as a work area of the CPU201, and a ROM (Read Only Memory), which is a nonvolatile memory that stores programs for activating the computer200. The storage device203is a large-capacity storage device for storing an OS (Operating System), a program such as an application, various kinds of data, information, etc., and is implemented by, for example, an SSD (Solid State Drive) or a HDD (Hard Disk Drive).

The communication I/F204includes one or more communication interfaces, for example, a LAN, a WAN (Wide Area Network), etc., that connect the computer200to the communication network N to communicate with other apparatuses. The output device205includes a display apparatus that displays various display screens, or a voice output device that outputs voice messages, error sounds, etc. The input device206is, for example, an input device that receives input, such as a touch panel, a keyboard, or a pointing device. The output device205and the input device206may be, for example, a display input device such as a touch panel display. The bus207is connected to each of the above elements and transmits, for example, an address signal, a data signal, and various control signals.

(Hardware Configuration of the Device)

In the present embodiment, the hardware configuration of the device101may be any configuration, and the description thereof will be omitted here.

FIG.3is a diagram illustrating an example of a functional configuration of a communication system according to an embodiment.

(Functional Configuration of Communication Apparatus)

The communication apparatus100includes, for example, a communication control unit301, an acquiring unit302, a device managing unit303, and a storage unit304.

The communication control unit301is implemented by first firmware (hereinafter referred to as the first FW)305or second firmware (hereinafter referred to as the second FW)307executed by the CPU201provided in the communication apparatus100. For example, when the CPU201executes the first FW305, the communication control unit301communicates with the management server (first server)10by using the first connection information. On the other hand, when the CPU201executes the second FW307, the communication control unit301communicates with the IoT server (second server)20that is the connection destination by using the second connection information.

The acquiring unit302is implemented by a program (the first FW305) executed by the CPU201, and acquires, from the management server10, the second FW307, second connection information308, and the like, for connecting to the IoT server20that is the connection destination. Note that the second connection information308may be included in the second FW307. In this case, the acquiring unit302may acquire the second FW307from the management server10.

The device managing unit303is implemented by a program (the second FW307) executed by the CPU201, and transmits the IoT data collected from the plurality of devices101to the IoT server20that is the connection destination via the communication control unit301.

The storage unit304is implemented by, for example, the storage device203provided in the communication apparatus100, and stores in advance the first FW305and the first connection information306. The storage unit304stores the second FW307and the second connection information308acquired by the acquiring unit302.

(Functional Configuration of Management Server)

The management server (first server)10implements a transmitting/receiving unit311, a receiving unit312, a first generating unit313, an apparatus information managing unit314, an apparatus management DB315, and FW providing units316A,316B, and so forth, by executing a predetermined program on the computer200provided in the management server10. At least a part of the above functional configurations may be implemented by hardware.

The transmitting/receiving unit311connects the management server10to the communication network N by using the communication I/F204provided in the management server10, and executes transmission processing for transmitting data to other apparatuses and reception processing for receiving data from other apparatuses.

For example, the receiving unit312provides, to the terminal apparatus30or the like, a web UI (User Interface) for displaying a display screen such as a setting screen for setting the connection destination of the communication apparatus100, and receives a setting operation, an input operation, or a selection operation on the display screen. The receiving unit312also provides a web API (Application Programming Interface) for using the function provided by the management server10from the IoT server20, the terminal apparatus30, the communication apparatus100or the like, and receives request information from each apparatus.

The first generating unit313generates first connection information306for the communication apparatus100to connect to the management server10in response to a request to issue first connection information from, for example, the exclusive-use terminal apparatus30provided in a manufacturing line for manufacturing the communication apparatus100. The first connection information306generated by the first generating unit313includes, for example, URL information of the management server10and authentication information for connecting to the management server10.

The apparatus information managing unit314stores and manages apparatus information400ato400eof the communication apparatus100, such as those illustrated inFIGS.4A to4E, in the apparatus management DB315. In the following description, when referring to any apparatus information among the apparatus information400ato400e, “apparatus information400” is used.

In the examples ofFIGS.4A to4D, the apparatus information400includes information such as “communication apparatus ID”, “IoT server”, “edge ID”, and “state” as items. The “communication apparatus ID” is identification information identifying the hardware of the communication apparatus100. The “IoT server” is identification information identifying the IoT server that is the connection destination of the communication apparatus100, or information such as a name. The “edge ID” is identification information identifying the communication apparatus100functioning as an edge in the service provided by the “IoT server”. The “state” is information indicating the state of the communication apparatus100.

As illustrated inFIG.4E, the apparatus information400may have an item of “service” instead of “Iot server”. “Service” is information indicating a service provided by the IoT server20. In this case, as illustrated inFIG.4F, the apparatus information managing unit314stores association information401indicating the association relationship between “service” and “IoT server” in the apparatus management DB315, etc., so that the identification information, name, etc., of the IoT server20providing the “service” can be identified.

The apparatus management DB315is, for example, a database for storing the apparatus information400as illustrated inFIGS.4A to4E. The apparatus management DB315stores information of the IoT server20that is the connection destination, for each communication apparatus ID identifying the communication apparatus100. A part of the functions of the apparatus management DB315may be implemented by the apparatus management DB324provided in the IoT servers20A,20B, and so forth. For example, among the apparatus information400ato400eillustrated inFIGS.4A to4E, the apparatus information400dmay be managed by the apparatus management DB315of the management server or by the apparatus management DB324of the IoT server20. The apparatus management DB315and324may be implemented by another computer200different from the management server10and the IoT server20.

The FW providing units316A,316B, and so forth execute processing for providing the second FW307and the second connection information308for connecting to the IoT servers20A,20B, and so forth. For example, the FW providing unit316A executes processing for providing the communication apparatus100with the second FW307and the second connection information308for connecting to the IoT server20A. Similarly, the FW providing unit316B executes processing for providing the communication apparatus100with the second FW307and the second connection information308for connecting to the IoT server20B. In the following description, when referring to any FW providing unit among the FW providing units316A,316B, and so forth, the “FW providing unit316” is used. InFIG.3, it is assumed that the FW providing units316B and so forth have the same functional configuration as the FW providing unit316A.

The FW providing unit316includes, for example, a FW managing unit317, a second generating unit318, and a storage unit319.

The FW managing unit317stores and manages the second FW307for connecting to the IoT server20corresponding to the FW providing unit316, in the storage unit319or the like. For example, the FW managing unit317of the FW providing unit316A stores and manages the second FW307for connecting to the IoT server20A, in the storage unit319or the like.

The second generating unit318generates the second connection information308for connecting to the IoT server20corresponding to the FW providing unit316. For example, the second generating unit318of the FW providing unit316A generates the second connection information308for connecting to the IoT server20A. The FW providing unit316may request the IoT server20to generate the second connection information308. For example, the FW providing unit316A may request the IoT server20A to generate the second connection information308without having the second generating unit318. In this case, the FW providing unit316serves as a bridge with the IoT server20. The second connection information308includes, for example, the URL of the IoT server20that is the connection destination, an edge ID identifying the communication apparatus100serving as an edge in the service provided by the IoT server that is the connection destination, and a device certificate (an example of authentication information).

The storage unit319stores, for example, the second FW307managed by the FW managing unit317and the second connection information308generated by the second generating unit318.

The IoT server (second server)20implements a transmitting/receiving unit321, an apparatus information managing unit322, a service providing unit323, an apparatus management DB324, and the like by executing a predetermined program on the computer200provided in the IoT server20. At least a part of the above functional configurations may be implemented by hardware.

The transmitting/receiving unit321connects the IoT server20to the communication network N by using the communication I/F204provided in the IoT server20, and executes transmission processing for transmitting data to other apparatuses and reception processing for receiving data from other apparatuses.

The apparatus information managing unit322stores and manages the state of the communication apparatus100connected to the IoT server20, in the apparatus management DB324or the like. The apparatus information managing unit322may store and manage the state of the communication apparatus100connected to the IoT server, in the apparatus management DB324provided in the management server10. For example, the apparatus information managing unit322may register the state of the communication apparatus100in the apparatus management DB315by using a web API provided by the receiving unit312, or may report, to the apparatus information managing unit314of the management server10, the state of the communication apparatus100. The apparatus management DB324stores information indicating the state of the communication apparatus100connected to the IoT server20, for example, the apparatus information400das illustrated inFIG.4D.

The service providing unit323provides services such as a remote monitoring service and a fault diagnosis service provided by the IoT server20.

Next, the processing flow of the communication method according to the present embodiment will be described.

First Embodiment

(Processing when Manufacturing Communication Apparatus)

FIG.5is a sequence diagram illustrating an example of processing when manufacturing the communication apparatus according to the first embodiment. This process illustrates an example of a process for storing the first FW305, the first connection information306, and the like in the communication apparatus100in a line for manufacturing the communication apparatus100. It is assumed that the terminal apparatus30has already logged in to the management server10at the start of the processing illustrated inFIG.5.

In step S501, when the line worker performs the initial setting operation of the communication apparatus100, with respect to the exclusive-use terminal apparatus30provided on the line, the communication system1executes the processing from step S502and onward.

In step S502, the terminal apparatus30transmits a request for issuing the first connection information306to the management server10.

In step S503, when the receiving unit312of the management server10receives the request for issuing the first connection information, the first generating unit313generates the first connection information for the communication apparatus100to connect to the management server10. The first connection information includes, for example, a URL for connecting to the management server10and authentication information. Preferably, the first generating unit313generates unique authentication information for each communication apparatus100.

In step S504, the apparatus information managing unit314of the management server10updates the apparatus management DB315. For example, the apparatus information managing unit314updates the item “state” of the apparatus information400aof the communication apparatus100to “initial state” as illustrated inFIG.4A. The communication apparatus ID of the communication apparatus100may be issued by the terminal apparatus30or by the management server10. When the terminal apparatus30issues the communication apparatus ID, in step S502, the terminal apparatus30transmits, to the management server10, a request for issuing the first connection information including the communication apparatus ID of the communication apparatus100.

In step S505, the transmitting/receiving unit311of the management server10transmits the first connection information306generated by the first generating unit313to the terminal apparatus that is the request source.

In step S506, the terminal apparatus30writes the first connection information306received from the management server10and the first FW305into the communication apparatus100.

In step S507, the first connection information306and the first FW305are stored in the storage unit304of the communication apparatus100. The communication apparatus100is shipped from the factory in this state (initial state), for example.

(Processing1at the Time of Installation of the Communication Apparatus)

FIG.6is a sequence diagram (1) illustrating an example of processing at the time of installation of the communication apparatus according to the first embodiment. This processing illustrates an example of the processing for installing, at a predetermined location, the communication apparatus100in which the first FW305and the first connection information306are stored in the storage unit304by the processing illustrated inFIG.5, and connecting the communication apparatus100to the IoT server20.

In step S601, a system administrator who manages the communication system1or a manager such as a shipment administrator who manages the shipment of the communication apparatus100(hereinafter referred to as a manager, etc.) performs a display operation of the displaying setting screen with respect to the terminal apparatus30. Here, the terminal apparatus30is any information terminal logged in to the management server10and can display a display screen (web page) provided by the management server10, by using a web browser or an application program (hereinafter referred to as an app) corresponding to the communication system1. The terminal apparatus30illustrated inFIG.6may be different from the terminal apparatus30illustrated inFIG.5.

In step S602, when the terminal apparatus30receives the display operation for displaying the setting screen by the manager or the like, the terminal apparatus30transmits a display request for displaying the setting screen to the management server10.

In steps S603and S604, when the receiving unit312of the management server10receives the display request for displaying the setting screen, the receiving unit312displays, on the terminal apparatus30, for example, a setting screen700A as illustrated inFIG.7Aor a setting screen700B as illustrated inFIG.7B.

FIG.7Aillustrates an example of the setting screen for setting the connection destination displayed by the terminal apparatus30. The setting screen700A illustrated inFIG.7Adisplays a plurality of selection buttons701for selectably displaying the IoT servers20A,20B, and so forth that are candidates for the connection destination of the communication apparatus100. When connecting the communication apparatus100to the IoT server20A, the manager or the like selects the selection button701A for selecting the “IoT server20A” from among the plurality of selection buttons701.

FIG.7Billustrates another example of a screen for selecting a connection destination displayed by the terminal apparatus30. The setting screen700B illustrated inFIG.7Bdisplays a plurality of selection buttons702for selectably displaying the services (for example, a remote monitoring service, a fault diagnosis service, and so on, etc.) available to the communication apparatus100. For example, the receiving unit312of the management server10may display the setting screen700B illustrated inFIG.7Bon the terminal apparatus by using the association information401indicating the association relationship between the IoT server20and the services provided by each IoT server20as illustrated inFIG.4F.

Now, returning toFIG.6, the description of the sequence diagram is continued. In step S605, the manager or the like performs a connection destination selection operation on the setting screens illustrated inFIGS.7A and7B, for example. Here, as an example, the following description is given assuming that the manager or the like selects the selection button701A for selecting the “IoT server20A” from the setting screen700A illustrated inFIG.7A.

In step S606, when the terminal apparatus30receives an operation for selecting a connection destination by the manager or the like, the terminal apparatus30transmits, to the management server10, a setting request including information on the selected connection destination (the IoT server20A) and a communication apparatus ID identifying the communication apparatus100.

In step S607, when the receiving unit312of the management server10receives a setting request, the second generating unit318of the FW providing unit316A corresponding to the connection destination (the IoT server20A) included in the setting request, generates the second connection information308. For example, the second generating unit318generates the second connection information308including a URL of the IoT server20A, an edge ID identifying the communication apparatus100serving as an edge in the IoT server20A, a device certificate (electronic certificate) of the communication apparatus100, and the like. The device certificate of the communication apparatus100is an example of authentication information and may be other authentication information. The second generating unit318stores the generated second connection information308in the storage unit319or the like in association with the communication apparatus ID of the communication apparatus100.

In step S608, the apparatus information managing unit314of the management server10updates the apparatus management DB315. For example, at the start of the processing illustrated inFIG.6, the apparatus management DB315stores the apparatus information400aof the communication apparatus100as illustrated inFIG.4A. The apparatus information managing unit314updates the information such as “IoT server”, “edge ID”, “state”, and the like of the apparatus information400ato the apparatus information400bas illustrated inFIG.4B.

In the apparatus information400billustrated inFIG.4B, the information of the IoT server20A that is the connection destination is stored in the item “IoT server”, and the edge ID generated by the second generating unit318is stored in the item “edge ID”. The apparatus information managing unit314updates the item “state” of the apparatus information400bto “second connection information issued”.

In step S609, the transmitting/receiving unit311of the management server10transmits a completion report indicating that the setting has been completed to the terminal apparatus30that is the request source.

When the builder, etc., installs the communication apparatus100and turns on the power of the communication apparatus100at any timing after executing the processing in steps S601to S609(step S611), the communication system1executes the processing in step S612and thereafter.

In step S612, the communication apparatus100is activated by the first FW305previously stored in the storage unit304. In step S613, the communication control unit301of the communication apparatus100is connected to the management server by using the first connection information306previously stored in the storage unit304. At this time, the communication control unit301of the communication apparatus100transmits a communication apparatus ID identifying the communication apparatus100to the management server10.

In step S614, the apparatus information managing unit314of the management server10updates the apparatus management DB315. For example, the apparatus information managing unit314changes the item “state” of the apparatus information400billustrated inFIG.4Bto “second connection information reported” and the information is updated to the apparatus information400cillustrated inFIG.4C.

In step S615, the FW providing unit316A of the management server10transmits, to the communication apparatus100, the second connection information308corresponding to the communication apparatus ID of the communication apparatus100stored in the storage unit319and the second FW307for connecting to the IoT server20A.

As described above, the apparatus management DB315stores the IoT server20information that is the connection destination for each communication apparatus ID identifying the communication apparatus100. Therefore, the management server10can determine the IoT server20A that is the connection destination of the communication apparatus100and the FW providing unit316A corresponding to the IoT server20A based on the communication apparatus ID.

In step S616, the acquiring unit302of the communication apparatus100stores, in the storage unit304, the second FW307received from the management server10and the second connection information308.

In step S617, the communication apparatus100is reactivated by the second FW307stored in the storage unit304.

By the process illustrated inFIG.6, the communication apparatus100can connect to the IoT server20A that is the connection destination set in the setting screen700A or the like and communicate appropriately, by using the second connection information308acquired from the management server and the second FW307.

(Processing2at the Time of Installation of the Communication Apparatus)

FIG.8is a sequence diagram (2) illustrating an example of processing at the time of installation of the communication apparatus according to the first embodiment. This processing illustrates another example of the processing for installing, at a predetermined location, the communication apparatus100in which the first FW305and the first connection information306are stored in the storage unit304by the processing illustrated inFIG.5, and connecting the communication apparatus100to the IoT server20.

The process from step S611inFIG.8is the same as the process at the time of installation of the communication apparatus described inFIG.6, and, therefore, the description thereof will be omitted here. Further, the basic process contents of steps S801to S809are the same as those of steps S601to S609inFIG.6, and, therefore, the detailed description thereof will be omitted here.

In step S801, the builder or the like who installs the communication apparatus100performs a display operation of displaying the setting screen with respect to the terminal apparatus30.

In step S802, when the terminal apparatus30receives a display operation of displaying the setting screen by the operator or the like, the terminal apparatus30transmits a display request to display the setting screen to the management server10.

In steps S803and S804, when the receiving unit312of the management server10receives the display request to display the setting screen, the receiving unit312causes the terminal apparatus30to display, for example, the setting screen700A as illustrated inFIG.7Aor the setting screen700B as illustrated inFIG.7B.

In step S805, the builder or the like selects a selection button701A for selecting the “IoT server20A” from, for example, the setting screen700A as illustrated inFIG.7A.

In step S806, when the terminal apparatus30receives an operation for selecting a connection destination by the builder or the like, the terminal apparatus30transmits, to the management server10, a setting request including information on the selected connection destination (the IoT server20A) and the communication apparatus ID of the communication apparatus100.

In step S807, when the receiving unit312of the management server10receives the setting request, the second generating unit318of the FW providing unit316A corresponding to the connection destination (the IoT server20A) included in the setting request, generates the second connection information308.

In step S808, the apparatus information managing unit314of the management server10updates the apparatus management DB315.

In step S809, the transmitting/receiving unit311of the management server10transmits a completion report indicating that the setting has been completed to the terminal apparatus30that is the request source.

As described above, it is desirable that the processing of steps S801to S809inFIG.8can be carried out by the builder, etc., even if the manager, etc., is not present.

(Processing at the Time of Data Collection)

FIG.9is a sequence diagram illustrating an example of processing at the time of data collection according to the first embodiment. This processing illustrates an example of processing executed by the communication apparatus100after being reactivated by the second FW307in step S617ofFIGS.6and8.

In step S901, when the communication apparatus100is reactivated by the second FW307, the communication apparatus100connects to the IoT server20A that is the connection destination, by using the second connection information308.

In step S902, the apparatus information managing unit322of the IoT server20A performs authentication processing of the communication apparatus100based on the second connection information308received from the communication apparatus100. For example, the apparatus information managing unit322verifies whether the authentication information (for example, a device certificate) included in the second connection information is legitimate authentication information. Here, the communication apparatus100has legitimate second connection information308issued by the management server10, and, therefore, the apparatus information managing unit322permits connection by the communication apparatus100.

In step S903, the apparatus information managing unit322of the IoT server20A updates the apparatus management DB324. For example, as illustrated inFIG.4D, the apparatus information managing unit322updates the item “state” of the apparatus information400dof the communication apparatus100stored in the apparatus management DB324to “second connection information connected”. As described above, the apparatus information managing unit322may update the apparatus information400stored in the apparatus management DB315of the management server10by using a web API or the like provided by the receiving unit312of the management server10.

By the above process, the communication apparatus100is communicatively connected to the IoT server20A, and can execute data collection processing as illustrated in steps S911and S912, for example.

In step S911, the device managing unit303of the communication apparatus100collects data transmitted by the plurality of devices101A,101B,101C, and so forth.

In step S912, the device managing unit303of the communication apparatus100transmits the collected data as IoT data to the IoT server20A at a predetermined timing. At this time, the type of data collected by the device managing unit303, the timing of transmitting IoT data, the format of IoT data and the like are all programmed in the second FW307. Accordingly, the communication apparatus100can appropriately communicate with the IoT server20A that is the connection destination.

As described above, the communication apparatus100according to the present embodiment acquires the second FW307in addition to the second connection information308in accordance with the IoT server20that is the connection destination, and reactivates the communication apparatus100by the acquired second FW307. Therefore, the communication apparatus100can appropriately communicate with other IoT servers even when the IoT server20that is the connection destination is changed to another IoT server (for example, the IoT server20B).

FIG.10is a sequence diagram (1) illustrating an example of connection destination changing processing according to the first embodiment. This processing illustrates an example of processing in which the communication apparatus100communicates with the management server10based on an instruction from outside such as that from the management server10or the IoT server20A to reacquire the second FW307for connecting to another IoT server20B.

In the following description, the second connection information308for connecting to the IoT server20A is defined as “second connection information A”, and the second connection information308for connecting to the IoT server20B is defined as “second connection information B”, to distinguish these from each other. The second FW307for connecting to the IoT server20A is defined as “second FWA”, and the second FW307for connecting to the IoT server20B is defined as “second FWB”, to distinguish these from each other.

At the start of the processing illustrated inFIG.10, it is assumed that the terminal apparatus is displaying a change screen for changing the connection destination of the communication apparatus100, for example, by the same procedures as in steps S802to S804ofFIG.8.

In step S1001, the manager or the like performs a change operation for changing the connection destination of the communication apparatus100to the IoT server20B, on the change screen displayed by the terminal apparatus30.

In step S1002, when the terminal apparatus receives the change operation for changing the connection destination by the manager or the like, the terminal apparatus30transmits, to the management server10, a change request for changing the connection destination including the information of the IoT server20B to which the connection destination has been changed and the communication apparatus ID of the communication apparatus100.

In step S1003, when the receiving unit312of the management server10receives the change request, the second generating unit318of the FW providing unit316B corresponding to the connection destination (the IoT server20B) included in the change request, generates the second connection information B. For example, the second generating unit318generates the second connection information B including the URL of the IoT server20B, the edge ID identifying the communication apparatus100serving as the edge in the IoT server20B, the device certificate of the communication apparatus100, and the like. The second generating unit318stores the generated second connection information B in the storage unit319of the FW providing unit316B in association with the communication apparatus ID of the communication apparatus100. The FW providing unit316B may request the IoT server20B to create the second connection information B as described above. In this case, the FW providing unit316B stores the second connection information B generated by the IoT server20B in the storage unit319or the like of the FW providing unit316B in association with the communication apparatus ID of the communication apparatus100.

In step S1004, the apparatus information managing unit314of the management server10updates the apparatus management DB315. For example, in the apparatus information400das illustrated inFIG.4Dstored in the apparatus management DB315, the item of “IoT server” is updated to “IoT server20B”, and the item of “edge ID” is updated to the edge ID included in the second connection information B. The apparatus information managing unit314also updates the item of “state” to “second connection information issued”.

In step S1005, the FW providing unit316A corresponding to the IoT server20A of the management server10invalidates the second connection information A for the communication apparatus100.

In step S1006, the FW providing unit316A may add that the second connection information A is invalid in the “state” item of the apparatus information of the communication apparatus100.

In step S1007, the FW providing unit316B of the management server10instructs the communication apparatus100to acquire the second connection information B and the second FWB.

In step S1008, the device managing unit303of the communication apparatus100stops transmission of IoT data to the IoT server20A.

In step S1009, the acquiring unit302of the communication apparatus100requests the management server10to acquire the second connection information B and the second FWB.

In step S1010, the apparatus information managing unit314of the management server10updates the item of “state” of the apparatus information of the communication apparatus100stored in the apparatus management DB315to “second connection information B reported”.

In step S1011, the FW providing unit316B of the management server10transmits, to the communication apparatus100, the second connection information B corresponding to the communication apparatus ID of the communication apparatus100stored in the storage unit319and the second FWB for connecting to the IoT server20B.

In step S1012, the acquiring unit302of the communication apparatus100overwrites the second FWB received from the management server10and the second connection information B in the storage unit304.

In step S1013, the communication apparatus100is reactivated by the second FWB stored in the storage unit304.

In step S1014, when the communication apparatus100is reactivated by the second FWB, the communication apparatus100connects to the IoT server20B that is the connection destination by using the second connection information B.

In step S1015, the apparatus information managing unit322of the IoT server20B performs authentication processing of the communication apparatus100based on the second connection information B received from the communication apparatus100. Here, the communication apparatus100has the legitimate second connection information B issued by the management server10, and, therefore, the apparatus information managing unit322permits connection by the communication apparatus100.

In step S1016, the apparatus information managing unit322of the IoT server20B updates the item of “state” of the apparatus information of the communication apparatus100stored in the apparatus management DB315to “second connection information B connected”.

According to the above process, the communication apparatus100is communicatively connected to the IoT server20B, and various processes can be executed.

FIG.11is a sequence diagram (2) illustrating an example of connection destination changing processing according to the first embodiment. This processing illustrates another example of processing in which the communication apparatus100communicates with the management server based on an instruction from outside such as that from the management server10or the IoT server20A to reacquire the second FW307for connecting to another IoT server20B.

Of the processing illustrated inFIG.11, the processing in steps S1001, S1002, and S1008to S1016are similar to the processing in steps S1001, S1002, and S1008to S1016inFIG.10, so the differences from the processing inFIG.10will be described here.

In step S1101, the management server10executes the processing of issuing the second connection information B as illustrated in steps S1003to S1006inFIG.10.

In step S1102, the FW providing unit316B of the management server10requests the IoT server20A to which the communication apparatus100is connected, to instruct the communication apparatus100to acquire the second connection information B and the second FWB.

In step S1103, the transmitting/receiving unit321of the IoT server20A instructs the communication apparatus100to acquire the second connection information B and the second FWB.

Thus, the FW providing unit316B of the management server10may instruct the communication apparatus100to acquire the second connection information B and the second FWB by using the IoT server20A to which the communication apparatus100is connected.

FIG.12is a sequence diagram (3) illustrating an example of connection destination changing processing according to the first embodiment. This processing illustrates another example of processing when a manager or the like changes the IoT server20that is the connection destination to be connected to the installed communication apparatus100. Of the processing illustrated inFIG.11, the processing in steps S1001, S1002, S1014, and S1015is similar to the processing in steps S1001, S1002, S1014, and S1015inFIG.10, and, therefore, the difference from the processing inFIG.10will be mainly described here.

In step S1201, the management server10executes the processing of issuing the second connection information B as illustrated in steps S1003to S1006inFIG.10.

In step S1202, the FW providing unit316B of the management server10requests the IoT server20A to which the communication apparatus100is connected, to instruct the communication apparatus100to perform initialization.

In step S1203, the transmitting/receiving unit321of the IoT server20A instructs the communication apparatus100to perform initialization.

In step S1204, the communication apparatus100performs initialization. For example, the communication apparatus100deletes the second FWA and the second connection information A stored in the storage unit304and is reactivated by the first FW305.

In step S1205, the communication apparatus100and the management server10execute second connection information acquiring processing, for example, as illustrated in steps S613to S617ofFIG.6, and is reactivated by the second FWB.

(Processing at the Time of Discontinuance1)

FIG.13is a sequence diagram (1) illustrating an example of processing at the time of discontinuance according to the first embodiment. This processing illustrates an example of a processing when discontinuing the installed communication apparatus100. At the start of the processing illustrated inFIG.13, it is assumed that the terminal apparatus30is displaying a setting screen for receiving a discontinuance operation of discontinuing the communication apparatus100, for example, by the same procedures as in steps S802to S804ofFIG.8.

In step S1301, the manager or the like performs a discontinuance operation of discontinuing the communication apparatus100on the setting screen displayed by the terminal apparatus30.

In step S1302, when the terminal apparatus receives the discontinuance operation of discontinuing the communication apparatus100by the manager or the like, the terminal apparatus30transmits, to the management server10, a discontinuance request to discontinue the communication apparatus including the communication apparatus ID of the communication apparatus100to be discontinued.

When the receiving unit312of the management server10receives the discontinuance request to discontinue the communication apparatus100in step S1303, the apparatus information managing unit314of the management server10invalidates the second connection information308corresponding to the communication apparatus100.

In step S1304, the apparatus information managing unit314of the management server10sets the “state” item of the apparatus information of the communication apparatus100stored in the apparatus management DB315to “second connection information invalid” (or “discontinued”).

In step S1305, the apparatus information managing unit314of the management server10transmits a discontinuance instruction to the communication apparatus100.

In step S1306, the device managing unit303of the communication apparatus100stops transmission of IoT data.

In step S1307, the communication apparatus100deletes the second FW307and the second connection information308stored in the storage unit304.

By the above process, the manager or the like can execute the discontinuance processing of discontinuing the communication apparatus100by remote operation.

(Processing at the Time of Discontinuance2)

FIG.14is a sequence diagram (2) illustrating an example of processing at the time of discontinuance according to the first embodiment. This processing illustrates another example of a processing when discontinuing the installed communication apparatus100. At the start of the processing illustrated inFIG.14, it is assumed that the terminal apparatus30is displaying a setting screen for receiving a discontinuance operation of discontinuing the communication apparatus100, for example, in the same procedures as in steps S802to S804ofFIG.8.

In step S1401, the builder, etc., performs the discontinuance operation for discontinuing the communication apparatus100on the setting screen displayed by the terminal apparatus30.

In step S1402, when the terminal apparatus receives the discontinuance operation of discontinuing the communication apparatus100by the operator or the like, the terminal apparatus30transmits, to the management server10, a discontinuance request of discontinuing the communication apparatus including the communication apparatus ID of the communication apparatus100to be discontinued.

When the receiving unit312of the management server10receives the discontinuance request of discontinuing the communication apparatus100in step S1403, the apparatus information managing unit314of the management server10invalidates the second connection information308corresponding to the communication apparatus100.

In step S1404, the apparatus information managing unit314of the management server10sets the “state” item of the apparatus information of the communication apparatus100stored in the apparatus management DB315to “second connection information invalid” (or “discontinued”).

In step S1405, the builder, etc., performs a deletion operation of deleting the second connection information308and the second FW307with respect to the communication apparatus100.

In step S1406, the communication apparatus100deletes the second FW307and the second connection information308stored in the storage unit304.

As described above, it is desirable that the discontinuance processing of discontinuing the communication apparatus100can be carried out by the builder or the like at the place where the communication apparatus100is installed.

Second Embodiment

In the first embodiment, an example in which the number of the IoT servers20to which the communication apparatus100transmits IoT data is one has been described, but the number of IoT servers to which the communication apparatus100transmits IoT data may be a plurality.

In the second embodiment, an example of processing in which the communication apparatus100transmits IoT data to two IoT servers20will be described. The system configuration, hardware configuration, and functional configuration of the communication system1according to the second embodiment may be the same as that of the first embodiment.

(Processing at the Time of Installation of the Communication Apparatus)

FIG.15is a sequence diagram illustrating an example of processing at the time of installation of the communication apparatus according to the second embodiment. This processing illustrates an example of processing for making a setting to install, at a predetermined location, the communication apparatus100, in which the first FW305and the first connection information306are stored in the storage unit304by the processing illustrated inFIG.5, to be connected to the IoT server20A and the IoT server20B.

In step S1500, the communication system1executes the display processing of the setting screen described in steps S601to S604ofFIG.6, and displays, for example, the setting screen700A illustrated inFIG.7Aon the terminal apparatus30.

In step S1501, the manager or the like performs the selection operation of selecting the connection destination on, for example, the setting screen700A illustrated inFIG.7A. Here, for example, it is assumed that the manager or the like selects the selection button701A for selecting the “IoT server20A” and the selection button701B for selecting the “IoT server20B” on the setting screen700A, as described below.

In step S1502, when the terminal apparatus receives the connection destination selection operation by the manager or the like, the terminal apparatus30transmits, to the management server10, a setting request including the information of the selected connection destination (the IoT server20A and the IoT server20B) and the communication apparatus ID identifying the communication apparatus100.

In step S1503, when the receiving unit312of the management server10receives the setting request, the second generating unit318of the FW providing unit316A corresponding to the IoT server20A generates the second connection information in accordance with the setting request. For example, the second generating unit318of the FW providing unit316A generates the second connection information including the URL of the IoT server20A, the edge ID identifying the communication apparatus100serving as the edge in the IoT server20A, and the authentication information of the communication apparatus100. The second generating unit318of the FW providing unit316A stores the generated second connection information in the storage unit319or the like in association with the communication apparatus ID of the communication apparatus100.

In step S1504, the apparatus information managing unit314of the management server10updates the apparatus management DB315. For example, the apparatus information managing unit314stores the information of the IoT server20A in the item “IoT server” of the apparatus information400aof the communication apparatus100, the generated edge ID in the item “edge ID”, and “second connection information issued” indicating the state in the item “state” as illustrated inFIG.4A.

In step S1505, the second generating unit318of the FW providing unit316B corresponding to the IoT server20B generates the third connection information according to the setting information. For example, the second generating unit318of the FW providing unit316B generates the third connection information including the URL of the IoT server20B, the edge ID identifying the communication apparatus100serving as the edge in the IoT server20B, the authentication information of the communication apparatus100, and the like. The second generating unit318of the FW providing unit316B stores the generated third connection information in the storage unit319and the like in association with the communication apparatus ID of the communication apparatus100.

In step S1506, the apparatus information managing unit314of the management server10updates the apparatus management DB315. For example, the apparatus information managing unit314updates the items of “IoT server”, “edge ID”, and “state” in the apparatus information400aof the communication apparatus100as illustrated inFIG.4B. Specifically, the apparatus information managing unit314adds the information of the IoT server20B that is the connection destination to the item “IoT server”, adds the edge ID generated by the second generating unit318to the item “edge ID”, and adds “third connection information issued” indicating the state to the item “state”.

In step S1507, the transmitting/receiving unit311of the management server10transmits a completion report indicating that the setting has been completed to the terminal apparatus30that is the request source.

When the builder, etc., installs the communication apparatus100and turns on the power of the communication apparatus100at any timing after executing the processing in steps S1501to S1507(step S1511), the communication system1executes the processing in step S1512and thereafter.

In step S1512, the communication apparatus100is activated by the first FW305previously stored in the storage unit304. In step S1513, the communication control unit301of the communication apparatus100connects to the management server10by using the first connection information306previously stored in the storage unit304. At this time, the communication control unit301of the communication apparatus100transmits a communication apparatus ID identifying the communication apparatus100to the management server10.

In step S1514, the apparatus information managing unit314of the management server10updates the apparatus management DB315. For example, the apparatus information managing unit314updates the item “state” corresponding to the apparatus ID of the communication apparatus to “initially connected” in the apparatus information400stored in the apparatus management DB315.

In step S1515, the FW providing unit316A of the management server10transmits, to the communication apparatus100, the second connection information308corresponding to the communication apparatus ID of the communication apparatus100stored in the storage unit319and the second FW307for connecting to the IoT server20A.

In step S1516, the acquiring unit302of the communication apparatus100stores, in the storage unit304, the second FW307and the second connection information308received from the management server10.

In step S1517, the FW providing unit316B of the management server10transmits, to the communication apparatus100, the third connection information corresponding to the communication apparatus ID of the communication apparatus100and the third FW (firmware) for connecting to the IoT server20B stored in the storage unit319.

In step S1518, the acquiring unit302of the communication apparatus100stores, in the storage unit304, the third FW and the third connection information received from the management server10. For example, the acquiring unit302may overwrite the first FW305stored in the storage unit304with the third FW received from the management server10.

FIG.16is a sequence diagram illustrating an example of processing when collecting data according to the second embodiment. This processing illustrates an example of processing when collecting data executed by the communication system1after executing the processing of installing the communication apparatus described inFIG.15.

In step S1601, the communication apparatus100connects to the IoT server20A that is the connection destination by using, for example, the second connection information308and the second FW307stored in the storage unit304.

In step S1602, the apparatus information managing unit322of the IoT server20A performs authentication processing of authenticating the communication apparatus100based on the second connection information308received from the communication apparatus100. For example, the apparatus information managing unit322verifies whether the authentication information (for example, a device certificate) included in the second connection information is legitimate authentication information. Here, the communication apparatus100has legitimate second connection information308issued by the management server10, and, therefore, the apparatus information managing unit322permits connection by the communication apparatus100.

In step S1603, the apparatus information managing unit322of the IoT server20A updates the apparatus management DB324. For example, the apparatus information managing unit322updates the “state” of the communication apparatus100stored in the apparatus management DB324of the IoT server20A to “second connection information connected”. As described above, the apparatus information managing unit322may update the apparatus information400stored in the apparatus management DB315of the management server10by using a web API or the like provided by the receiving unit312of the management server10.

By the processing in steps S1601to S1603, the communication apparatus100can transmit, to the IoT server20A, IoT data including data received from the devices101A,101B,101C, and so forth in steps S1604and S1605.

In step S1611, the communication apparatus100connects to the IoT server20B that is the connection destination by using, for example, the third connection information and the third FW stored in the storage unit304.

In step S1612, the apparatus information managing unit322of the IoT server20B performs authentication processing of authenticating the communication apparatus100based on the third connection information received from the communication apparatus100. For example, the apparatus information managing unit322verifies whether the authentication information included in the third connection information is legitimate authentication information. Here, the communication apparatus100has legitimate third connection information issued by the management server10, and, therefore, the apparatus information managing unit322permits connection by the communication apparatus100.

In step S1613, the apparatus information managing unit322of the IoT server20B updates the apparatus management DB324. For example, the apparatus information managing unit322updates the “state” of the communication apparatus100stored in the apparatus management DB324of the IoT server20B to “third connection information connected”. As described above, the apparatus information managing unit322may update the apparatus information400stored in the apparatus management DB315of the management server10by using a web API or the like provided by the receiving unit312of the management server10.

By the processing in steps S1611to S1613, the communication apparatus100can transmit, to the IoT server20A, IoT data including data received from the devices101A,101B,101C, and so forth in step S1614.

For example, the communication apparatus100can transmit IoT data to the IoT server20A and the IoT server20B by alternately repeating the execution of the first connection processing illustrated in steps S1601to S1603and the processing of steps S1611to S1613.

Modified Example

As a modified example, the communication system1may use the second FW and the third FW as common firmware, and manage, by the connection information, information such as the type of data collected by the device managing unit303, the timing of transmitting IoT data, and the format of IoT data. For example, in step81503ofFIG.15, the second generating unit318of the FW providing unit316A may generate the second connection information including the type of data to be collected, the timing of transmitting data, the format, etc., in addition to the URL, edge ID, and authentication information for the IoT server A. Similarly, in step1505ofFIG.15, the second generating unit318of the FW providing unit316B may generate the third connection information including the type of data to be collected, the timing of transmitting data, the format, etc., in addition to the URL, edge ID, and authentication information for the IoT server B.

In this case, the communication apparatus100can connect to the IoT server20A by using the common firmware and the second connection information in step S1601, and transmit IoT data to the IoT server20A in accordance with the second connection information in step S1605. Similarly, the communication apparatus100can connect to the IoT server20B by using the common firmware and the third connection information in step S1611, and transmit IoT data to the IoT server20B in accordance with the third connection information in step S1614.

Thus, according to the second embodiment, the communication apparatus100can transmit IoT data collected from the devices101A,101B,101C, and so on, etc., to the plurality of IoT servers20.

According to the above embodiments, the communication apparatus communicating with the server based on connection information and firmware for connecting to the server, can appropriately communicate with various other servers.

Although the above embodiments have been described, it will be understood that various changes in form and details can be made without departing from the purpose and scope of the claims.

The present international application is based upon and claims priority to Japanese Patent Application No. 2021-078393 filed on May 6, 2021, the entire contents of which are incorporated herein by reference.

REFERENCE SIGNS LIST