Industrial wireless system, primary radio node, and secondary radio node
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- KEYENCE CORP
- Filing Date
- 2023-06-20
- Publication Date
- 2026-03-19
AI Technical Summary
【0009】 本発明によれば、産業用ワイヤレスシステムにおけるデータの転送の遅延等を抑制しつつ、モバイル機器にデータを円滑に表示させることが可能となる。
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to an industrial wireless system, a primary wireless node and a secondary wireless node. [Background technology]
[0002] In a factory, multiple pieces of industrial equipment, such as machine tools, are installed and controlled by programmable logic controllers (PLCs). By connecting multiple pieces of industrial equipment or multiple PLCs with a wireless mesh network, it becomes possible to maintain the industrial network in the factory even if the layout of the industrial equipment in the factory is changed. The wireless mesh network selects an appropriate single-hop or multi-hop communication route in consideration of the radio wave conditions between multiple nodes that make up the network, ensuring good communication quality (Patent Document 1). [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2014-22981 A Summary of the Invention [Problem to be solved by the invention]
[0004] Meanwhile, a PLC can acquire various data from other PLCs, etc., and display various information on a display device. For example, a PLC may periodically collect various data from industrial equipment or other PLCs via a wireless mesh network. The data collected by the PLC may be reproduced on a display device connected to the PLC by wire. This data may be reproduced in real time, or as previously acquired operation record data (history). By adopting a wireless mesh network instead of a conventional wired connection, the degree of freedom in installing the PLC, various other industrial equipment, sensors, etc. is improved.
[0005] On the other hand, the display device that displays the data collected by the PLC is still connected to the PLC by wire. Therefore, it is necessary to connect the PLC and the mobile device that functions as the display device to a wireless network. In this case, the wireless node connected to the wireless mesh network needs a setting for communicating with other wireless nodes and a separate setting for communicating with the mobile device, and the user needs advanced setting knowledge.
[0006] In addition, when a mobile device as a display device is added to a wireless mesh network that is constructed by multiple wireless nodes connected to a PLC or industrial equipment, the wireless mesh network may become congested, causing delays or losses in data collection by the PLC, which may cause problems in monitoring the PLC.
[0007] Therefore, an object of the present invention is to smoothly display data on a mobile device while suppressing delays in data transfer in an industrial wireless system. [Means for solving the problem]
[0008] The present invention relates to, for example, The primary wireless node in an industrial wireless system includes at least a primary wireless node connected by wire to a first industrial device that collects data, and one or more secondary wireless nodes that are connected by wire to a second industrial device that transmits the data to the first industrial device and are wirelessly connected to the primary wireless node, the primary wireless node mediating data communication between the second industrial device that transmits the data and the first industrial device that collects the data, a wired communication port connected to the first industrial device by wire; a first wireless communication port for wirelessly communicating with a mobile device corresponding to the first industrial device; a second wireless communication port for wireless communication with the one or more secondary wireless nodes; a construction unit that constructs a first wireless network for wireless communication between the mobile device connected via the first wireless communication port and the primary wireless node, and that constructs a second wireless network for wireless communication between the one or more secondary wireless nodes connected via the second wireless communication port and the primary wireless node; a transfer unit that transfers data transmitted from the second industrial device and received via the one or more secondary wireless nodes, the second wireless network, and the second wireless communication port to the first industrial device via the wired communication port, and transfers monitoring information of the second industrial device or the second wireless network transmitted from the first industrial device and received via the wired communication port to the mobile device via the first wireless communication port; having the first wireless network uses a first radio frequency band; a second radio frequency band is used in the second wireless network; The second radio frequency band provides a primary wireless node that is a higher frequency band than the first radio frequency band. Effect of the Invention
[0009] According to the present invention, it is possible to smoothly display data on a mobile device while suppressing delays in data transfer in an industrial wireless system. [Brief description of the drawings]
[0010] [Figure 1] Diagram explaining a PLC system [Diagram 2] Diagram explaining PC hardware [Diagram 3] Diagram explaining PLC hardware [Figure 4] A diagram explaining the functions realized by a PC's CPU [Diagram 5] Diagram explaining the functions realized by the PLC CPU [Figure 6] Diagram explaining the user interface [Figure 7] Diagram explaining the user interface [Figure 8] Diagram explaining the notification dialog [Figure 9] Diagram explaining the analysis report [Figure 10] Diagram explaining the analysis report [Figure 11] Diagram explaining the user interface [Figure 12] Diagram explaining the analysis report [Figure 13] Diagram explaining the connection position of the master unit in an industrial wireless system [Figure 14] Diagram explaining industrial wireless systems [Figure 15] Diagram explaining the parent unit's hardware [Figure 16] Diagram explaining the functions of the parent unit [Figure 17] Diagram explaining the child unit hardware [Figure 18] Diagram explaining the functions of the child unit [Figure 19] Diagram explaining how to set up the parent unit [Figure 20] Flowchart explaining how to set up the parent unit [Figure 21] A diagram explaining the settings screen [Figure 22] A diagram explaining how a wired child unit is connected to a parent unit [Figure 23] Flowchart explaining how to register a wired device [Figure 24] Flowchart explaining the operation of the child unit [Diagram 25] A diagram showing the state in which wired child devices have created an industrial wireless network [Figure 26] A diagram showing the state before the wireless slave device is connected [Figure 27] A diagram explaining how to build a wireless network for adding a child device [Figure 28] A diagram explaining the addition of a wireless slave unit [Figure 29] A diagram illustrating an example in which multiple wireless slave devices are added at once. [Diagram 30] A diagram illustrating an example in which multiple wireless slave devices are added at once. [Diagram 31] A diagram explaining how multiple wireless slave devices have created a wireless network for adding additional slave devices. [Diagram 32] A diagram explaining how a wired device has joined a wireless network for adding devices [Diagram 33] Diagram explaining how multiple wireless slave devices join an industrial wireless network [Diagram 34] Flowchart explaining the operation of the parent unit [Diagram 35] Figure explaining the Add screen [Diagram 36] Figure explaining the Add screen [Figure 37] Diagram explaining the operation of existing child devices [Figure 38] Diagram explaining the operation of the child unit [Figure 39] Flowchart for explaining highlighting [Diagram 40] FIG. 1 shows a signal sequence for further processing. [Diagram 41] A diagram explaining the batch registration of multiple devices, including wired devices [Diagram 42] A diagram explaining the creation of an additional wireless network [Diagram 43] A diagram explaining the construction of an industrial wireless network [Diagram 44] FIG. 1 shows a signal sequence for further processing. [Diagram 45] Flowchart explaining the operation of the parent unit [Figure 46] Flowchart explaining the setting change process [Figure 47] Figure explaining the deletion screen [Figure 48] Flowchart for explaining deletion processing in the parent device [Figure 49] Flowchart for explaining the deletion process in the child device [Figure 50] Diagram illustrating a PLC link built on an industrial wireless network [Figure 51]A diagram explaining the information display process using PC2 or a programmable display unit [Figure 52] Diagram explaining the display process of real-time data by PC2 [Diagram 53] A diagram explaining program editing and debugging processes using PC2 [Figure 54] A diagram explaining an example of constructing multiple wireless networks. [Figure 55] A diagram explaining an example of constructing multiple wireless networks [Figure 56] A diagram explaining an example of constructing multiple wireless networks. [Figure 57] Figure explaining the access point setting screen [Figure 58] Figure explaining the access point setting screen [Figure 59] A diagram explaining the collection and display process of the PLC operation history and the wireless network operation history. [Figure 60] Flowchart explaining the collection settings for driving history [Figure 61] Flowchart explaining the process of collecting the operation history of other PLCs [Figure 62] A flowchart for explaining a process for collecting driving history of a wireless network. [Figure 63] A flowchart for explaining a process for collecting status information by a parent device [Figure 64] A flowchart explaining the analysis and display processing of a driving history. [Figure 65] FIG. 1 is a diagram showing an example of a user interface for real-time monitoring. [Figure 66] FIG. 13 is a diagram showing an example of a user interface for checking analysis results. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] Hereinafter, the embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the invention according to the claims, and not all combinations of features described in the embodiments are essential to the invention. Two or more features among the multiple features described in the embodiments may be arbitrarily combined. In addition, the same reference numbers are used for the same or similar configurations, and duplicated descriptions are omitted.
[0012] A programmable logic controller (PLC) is a controller that controls industrial machines such as manufacturing equipment, conveying equipment, and inspection equipment in factory automation. PLCs control various extension units and controlled devices by executing user programs such as ladder programs created by programmers. In order to monitor the operation of a PLC, it has been proposed to collect data held by the PLC and monitor the data on a computer (PC) or HMI (human interface: display device) connected externally to the PLC (JP Patent Publication No. 2019-016325).
[0013] By the way, a user creates a user program using a program creation support device and transfers it to a PLC. The PLC actually executes the user program to manufacture various products. Here, a rare event that was not anticipated when the user program was created may occur, causing the production line to stop. Although the production line will not stop, an event that requires attention may occur. On the other hand, when a certain event occurs, the PLC reads out the device values collected before and after the occurrence time from the buffer and records them. This may be called an operation record (operation log). The data utilization unit may analyze this record, create an analysis report, and provide it to a Web browser outside the PLC. Here, if the operation log can be played back together with the analysis report, the user will not only be able to easily understand the contents of the analysis report, but will also be able to easily identify the cause of the occurrence of the certain event. Therefore, the analysis report and the operation log will need to be linked. If the analysis report and the operation log are not linked, it will be difficult for the user to identify the operation log corresponding to the analysis report. Therefore, some of the following embodiments aim to appropriately maintain the relationship between the operation record and the analysis result in the PLC.
[0014] <System configuration> First, in order to allow those skilled in the art to better understand programmable logic controllers (PLCs, which may also be simply called programmable controllers), the configuration and operation of a typical PLC will be described.
[0015] FIG. 1 is a conceptual diagram showing an example of a configuration of a PLC system according to an embodiment of the present invention. As shown in FIG. 1, the PLC system includes a PC 2 for editing a user program such as a ladder program, and a PLC 1 for controlling various industrial machines installed in a factory or the like. PC is an abbreviation for personal computer. The user program may be created using a graphical programming language such as a ladder language or a motion program in a flow chart format such as SFC (Sequential Function Chart), or may be created using a high-level programming language such as C language. In the following, for convenience of explanation, it is assumed that the user program executed by the basic unit 3 is a ladder program. The PLC 1 includes a basic unit 3 with a built-in CPU, and one or more expansion units 4. One or more expansion units 4 are detachable from the basic unit 3.
[0016] The basic unit 3 includes a display unit 5 and an operation unit 6. The display unit 5 can display the operating status of the basic unit 3 or the expansion unit 4 attached to the basic unit 3. The display unit 5 switches the display content according to the operation content by the user on the operation unit 6. The display unit 5 usually displays the current value (device value) stored in the device in the PLC 1 and error information generated in the PLC 1. A device is a name (symbol) that indicates a storage area in memory provided to store device values (device data), and may also be called a device memory. A device value is information that indicates the input state from an input device, the output state to an output device, and the state of an internal relay (auxiliary relay), timer, counter, data memory, etc. that are set on a user program. There are two types of device values: bit type and word type. A bit device stores a device value of 1 bit. A word device stores a device value of 1 word.
[0017] The expansion unit 4 is provided to expand the functions of the PLC 1. A field device (controlled device) 10 corresponding to the function of the expansion unit 4 may be connected to the expansion unit 4, and each field device 10 is thereby connected to the basic unit 3 via the expansion unit 4. The field device 10 may be an input device such as a sensor or a camera, or an output device such as an actuator. In addition, multiple field devices may be connected to one expansion unit 4.
[0018] For example, the extension unit 4b may be a positioning unit that drives a motor (field device 10) to position a workpiece, or may be a counter unit that counts signals from an encoder (field device 10) such as a manual pulsar.
[0019] The expansion unit 4a collects symbol values from symbols (devices, variables, etc.) in the basic unit 3, analyzes the symbol values, and creates an analysis report including the analysis results. The expansion unit 4a may have a Web server that provides the analysis report to an external PC 2. The basic unit 3 may also be called a CPU unit. In this embodiment, an example is described in which the expansion unit (analysis unit) 4a has a collection unit that collects symbol values. However, the collection unit may be provided in the basic unit 3 or in another expansion unit. In addition, the expansion unit 4a may function as an analysis device that analyzes the collected data according to an instruction from the basic unit 3 or a predetermined timing. In this embodiment, an example is described in which the expansion unit 4a functions as an analysis device. However, there is no intention to limit the present invention. The basic unit 3 may function as the analysis device, or an external device such as the PC 2 may function as the analysis device. A system including the PLC 1 and the PC 2 may be called a programmable logic controller system.
[0020] The PC2 is a computer operated mainly by a programmer. The PC2 may be called a program creation support device (monitoring device). The PC2 is, for example, a portable notebook or tablet type personal computer or a smartphone, and is an external computer equipped with a display unit 7 and an operation unit 8. The external computer is a computer outside the PLC1. A ladder program, which is an example of a user program for controlling the PLC1, is created using the PC2. The created ladder program is converted into a mnemonic code in the PC2. The PC2 is connected to the basic unit 3 of the PLC1 via a communication cable 9a such as a USB (Universal Serial Bus) cable. However, the communication cable 9a may be a network cable similar to the communication cable 9b. The PC2 may be a programmable display whose screen is set by the user. In this case, the screen for displaying the analysis results and the like may be set by the user. The programmable display may be equipped with a Web browser function, and the analysis results and the like may be displayed by the Web browser function.
[0021] Although not shown in Fig. 1, the operation unit 8 of the PC 2 may include a pointing device such as a mouse connected to the PC 2. The PC 2 may be detachably connected to the base unit 3 or the expansion unit 4a of the PLC 1 via a communication cable 9b other than a USB cable. The communication cable 9b may be a so-called LAN cable. The PC 2 may be connected to the base unit 3 of the PLC 1 by wireless communication without using the communication cables 9a and 9b.
[0022] <Program creation support device> FIG. 2 is a block diagram for explaining the electrical configuration of the PC 2. As shown in FIG. 2, the PC 2 includes a CPU 11, a display unit 7, an operation unit 8, a storage device 12, and communication units 13a and 13b. The display unit 7, the operation unit 8, the storage device 12, and the communication units 13a and 13b are each electrically connected to the CPU 11. The storage device 12 includes a RAM, a ROM, an HDD, and an SSD, and may further include a removable memory card. CPU is an abbreviation for central processing unit. ROM is an abbreviation for read-only memory. RAM is an abbreviation for random access memory. HDD is an abbreviation for hard disk drive. SSD is an abbreviation for solid state drive.
[0023] A user of the PC 2 causes the CPU 11 to execute the project editing program 14a stored in the storage device 12, and edits the project data through the operation unit 8. In other words, the PC 2 is an engineering tool and also functions as a program creation support device. The project data includes one or more user programs (e.g., ladder program) and configuration information of the base unit 3 and the expansion unit 4. The configuration information includes information indicating the connection positions of the multiple expansion units 4 relative to the base unit 3, information indicating the functions of the base unit 3 (e.g., communication function and positioning function), information indicating the functions of the expansion unit 4 (e.g., photography function), and device allocation information. Here, editing of the project data includes creation and modification (re-editing) of the project data. The user reads out the project data stored in the storage device 12 as necessary, and modifies the project data using the project editing program 14a. The communication unit 13a communicates with the base unit 3 via the communication cable 9a. The CPU 11 transfers the project data to the base unit 3 via the communication unit 13a. The communication unit 13a includes a communication circuit capable of performing communication in accordance with the USB standard. The communication unit 13b communicates with the extension unit 4a via the communication cable 9b. The communication unit 13b includes a network communication circuit. The Web server program 14c is implemented as a part of the project editing program 14a. The Web browser program 14d receives an analysis report written in a Web format by the extension unit 4a via the communication unit 13a and displays it on the display unit 7. The Web browser program 14d may request the Web server program 14c to provide the analysis report. The Web server program 14c may access the extension unit 4a via the communication unit 13a and the basic unit 3, obtain the analysis report, and transfer it to the Web browser program 14d.
[0024] <plc> FIG. 3 is a block diagram for explaining the electrical configuration of the PLC 1. As shown in FIG. 3, the basic unit 3 includes a CPU 31, a display unit 5, an operation unit 6, a storage device 32, and a communication unit 33. The display unit 5, the operation unit 6, the storage device 32, and the communication unit 33 are each electrically connected to the CPU 31. The storage device 32 may include a RAM, a ROM, a memory card, and the like. The storage device 32 has a plurality of storage areas such as a device unit 34, a project storage unit 35, a ring buffer 36, and an operation record storage unit 37. The device unit 34 has a bit device, a word device, and the like, and each device stores a device value. The project storage unit 35 stores project data transferred from the PC 2. The ring buffer 36 periodically collects and stores device values from the device unit 34. When a predetermined event occurs, the operation record storage unit 37 stores an event record including device values collected around the time of occurrence (before, after, or around the time of occurrence) and the time of collection. An event means, for example, that an alarm condition or a caution condition set for each device is satisfied. An alarm condition means, for example, a condition that the control operation of the production line by the PLC1 should be stopped. An caution condition means, for example, a condition of a device value that the administrator should be careful about regarding the control operation of the production line by the PLC1. The CPU 41 transmits an event record to the PC2 in response to a request from the PC2. The CPU 31 may also provide the PC2 with a device value in real time. The storage device 32 also stores a control program executed by the CPU 31 of the basic unit 3. As shown in FIG. 3, the basic unit 3 and the expansion unit 4 are connected via a unit internal bus 90, which is a type of expansion bus. Note that a communication function related to the unit internal bus 90 is implemented in the CPU 31, but may be implemented as a part of the communication unit 33. The communication unit 33 may have a serial communication circuit conforming to the USB standard or the like. The CPU 31 receives project data from the PC2 via the communication unit 33. Note that the ring buffer 36 and the operation record storage unit 37 described above may be provided in the expansion unit 4a or 4b.In this case, the CPU 31 of the basic unit 3 may read out the device values periodically updated by the device section 34 and transfer them to a ring buffer provided in the expansion unit 4a or 4b. If the expansion unit 4a or 4b is provided with an operation record storage section, the CPU 31 may transfer the device values collected in the ring buffer to the expansion unit 4a or 4b and store them when a predetermined event occurs. In this way, some or all of the functions of the CPU 31 may be performed by the CPU 41a or CPU 41b.
[0025] Here, a supplementary explanation will be given about the unit internal bus 90. This unit internal bus 90 is a communication bus used for input / output refresh. Input / output refresh is a process for updating device values between the basic unit 3 and the expansion unit 4. Input / output refresh is performed each time a ladder program is executed (i.e., each scan).
[0026] The operation record (such as device values and their collection times) recorded in the operation record storage unit 37 may be a record of the operation state of the PLC1 at the scan time level. For example, the operation record may be a record of the symbol values of all symbols related to the operation of the PLC1 and their collection times in chronological order for each scan. All symbols related to the operation may be, for example, all symbols used in a user program such as a ladder program, or all symbols included in a program unit or unit unit selected by the user. In this case, the symbols to be the subject of the operation record may be selected collectively in a significant unit such as a program unit or unit unit. The symbols to be the subject of the operation record may be added or removed individually. For example, when a trouble occurs, an operation record may be generated in which the symbol values of all symbols related to the operation of the PLC1 around the time of the trouble occurrence and their collection times are recorded in chronological order for each scan. The user will be able to accurately grasp what happened when the trouble occurred based on the operation record even later. The operation record may contain a lot of information to reproduce the situation at that time. If there is a lot of information, the data volume of the driving record will be large, making it difficult to handle the driving record (data processing, etc.) and putting a burden on collecting the driving record. Therefore, the symbols to be collected can be selected by the user on a program or unit basis.
[0027] In addition to symbols, the operation record may also include a time series of camera images along with the time of capture. This allows the user to accurately grasp what happened around the time of the occurrence of a problem, for example, even after the problem has occurred. In particular, the inclusion of camera images showing the external changes of the equipment in the operation record will be useful in grasping the situation. For this reason, the camera images may be recorded in conjunction with the time series of the execution of the user program. The write history from external devices such as HMI (human machine interface) and PCs, and the write history from PLCs may also be included in the operation record as change point events. This allows the user to check, for example, what change point events occurred before and after the occurrence of a problem in chronological order.
[0028] From another perspective, the operation record may be called a collective term for data for each scan time, such as devices, buffer memory of the expansion unit 4, variables, etc., that are saved in response to the establishment of the save trigger condition. The operation record may include video data acquired by the expansion unit (camera unit) for each frame, that is saved in response to the establishment of the save trigger condition. The operation record may also include an event history, such as errors and device value changes, that is saved in response to the establishment of the save trigger condition. Furthermore, the operation record may include a ladder program (project data) that was being executed when the save trigger condition was established. By including the project data at the time when the operation record was generated in the operation record, even if there are multiple versions of the project data, the situation can be reproduced by the project data that was actually used when the operation record was generated. The operation record may also include an analysis report.
[0029] The expansion unit 4 includes a CPU 41 and a memory 42. The CPU 41b of the expansion unit 4b controls the field device 10 according to instructions (device values) from the basic unit 3 stored in the device. The CPU 41b also stores the control results of the field device 10 in a device called a buffer memory. The control results stored in the device are transferred to the basic unit 3 by input / output refresh. The control results stored in the device may also be transferred to the basic unit 3 in accordance with a read command from the basic unit 3, even at a timing different from the input / output refresh. The memory 42 includes a RAM, a ROM, and the like. In particular, a storage area used as a buffer memory is secured in the RAM. The memory 42 may include a buffer that temporarily holds data (e.g., still image data or video data) acquired by the field device 10.
[0030] The CPU 41a of the extension unit 4a functioning as a data utilization unit (analysis unit) communicates with the PC 2 via the communication unit 43 and the communication cable 9b. The communication unit 43 includes a communication circuit that executes network communication. The CPU 41a executes a data utilization program stored in the memory 42a, and creates an analysis report including the analysis results by analyzing device values collected in the basic unit 3. When a driving record analysis application is set as a data utilization application, the CPU 41a creates an analysis report including the analysis results by analyzing device values collected in the basic unit 3. For example, the CPU 41a analyzes symbol values included in the driving record data to identify abnormal symbols and the time at which the symbols became abnormal, and creates an analysis report including analysis results in which the abnormal symbols are associated with the time at which the symbols became abnormal. The driving record data includes information for reproducing the situation around the time at which a driving record storage event occurred. Therefore, the driving record data may be managed in association with the analysis report. Furthermore, the driving record data includes symbol values of many symbols for reproducing the situation around the time at which a driving record storage event occurred. Therefore, the data size of the driving record data is likely to be large. For example, the CPU 41a may read data necessary for an analysis report from the driving record data, and additionally store it as data for the analysis report in the driving record data. Here, additional storage refers to, for example, reading data necessary for the analysis report from the driving record data, copying it, and tagging the copied data to create data for the analysis report, and additionally storing it in the driving record data. Applying data processing such as tagging the data in this way makes it easier to create the analysis report.
[0031] The driving record data may include camera images. In this case, by playing back the camera images, the user can grasp the situation around the time when the driving record storage event occurred in more detail. The analysis report may include a UI (user interface) for playing back the camera images. The camera images have a large data size. Therefore, only the necessary camera image data may be partially downloaded when, for example, a click or scroll operation is accepted in the UI for playing back the camera images. For example, when creating the analysis report, the CPU 41a may process the camera images in accordance with the display order in the analysis report, or generate index information indicating the correspondence between the time and the storage position of the camera images. In this way, the CPU 41a may quickly and partially download the camera images corresponding to the display time (the time of the internal clock for playback).
[0032] In a narrow sense, the analysis report means the analysis result itself, but in a broad sense, it may mean a Web application that displays the analysis result and its user interface. For example, the CPU 41a judges whether the device value is within a normal range, whether the timing at which the device value changes is within a normal range, and the like. Whether the timing at which the device value changes is within a normal range may be, for example, whether the length of the period during which the device value is "1" (ON) is within a normal range. It may also be judged whether the number of times the device value changes in a certain process or cycle is within a normal range. If the device value collected from a certain device does not satisfy the normal condition, the device may be called an abnormal device as a device that behaves differently than usual. The CPU 41a may create an analysis report in a Web format and provide the analysis report to the Web browser of the PC 2 via the communication unit 43 and the communication cable 9b. If the CPU 31 has a protocol conversion function, the CPU 41a may transmit the analysis report to the PC 2 via the unit internal bus 90, the CPU 31, the communication unit 33, and the communication cable 9a. The analysis report may have a graph display component, a numerical value display component, and the like. These display components are realized by markup data (e.g. HTML data) that describes the front-end structure, style data (e.g. CSS data) that describes decoration, and code (e.g. JavaScript (registered trademark) code) that describes dynamic processing. HTML is an abbreviation for HyperText Markup Language. CSS is an abbreviation for Cascading Style Sheets.
[0033] FIG. 4 is a diagram for explaining functions realized by the CPU 11 of the PC 2. The project editing unit 50 is a function realized by the CPU 11 executing the project editing program 14a. The project editing unit 50 creates project data including a user program according to a user instruction input through the operation unit 8. The Web server 51 communicates with the Web browser 60 according to HTTP (Hypertext Transfer Protocol) and provides display components to the Web browser 60. The protocol conversion unit 52 converts HTTP into a predetermined communication protocol. The predetermined communication protocol is a communication protocol used in communication between the communication unit 13a and the communication unit 33. For example, when the Web browser 60 requests an analysis report by an HTTP request, the Web server 51 passes the HTTP request to the protocol conversion unit 52. The HTTP request includes a URL (Uniform Resource Locator) of the extension unit 4a (Web server) that is executed by the CPU 41a and provides the analysis report. The protocol conversion unit 52 encapsulates the HTTP request and converts it into a request signal (command) that can be transmitted by the predetermined communication protocol. This request signal is passed to the CPU 31 of the basic unit 3, and further to the CPU 41a of the extension unit 4a. The CPU 41a returns the analysis report to the CPU 11 via the CPU 31. The Web server 51 of the CPU 11 passes the analysis report to the Web browser 60. As a result, the Web browser 60 displays the analysis report on the display unit 7.
[0034] The download unit 53 downloads the operation records and the like from the basic unit 3 and stores them in the storage device 12. The debug unit 54 debugs the user program and displays the debug results on the display unit 7. The ladder monitor unit 56 acquires values stored in symbols described in the user program from the operation records and highlights the values for the symbols in the user program. For example, the device values acquired from the operation records may be displayed in association with devices drawn in the ladder diagram of the ladder program. The relationship map unit 55 creates a relationship map showing devices related to abnormal devices displayed in the analysis report and displays it on the display unit 7. An abnormal device is a device whose device value does not satisfy the normal condition or whose device value change timing does not satisfy the normal condition. The relationship map is, for example, a UI that visually shows the relationship between a device (input device) that has an effect on an abnormal device and the abnormal device. The relationship map may also display the relationship between a device (output device) that is affected by the abnormal device and the abnormal device. The debug unit 54 acquires the abnormal device and its associated device by analyzing the ladder program and creates a relationship map.
[0035] The reception unit 57 receives an editing operation for a user program and an operation for a debug process. The notification processing unit 58 acquires whether a notification has been issued in the PLC 1 by polling, and displays the acquired notification on the display unit 7. An example of the notification is that the creation of an analysis report has been completed. The replay unit 59 causes the download unit 53 to download the driving record and store it in the storage device 12 in response to a replay request input from the reception unit 57 or the linking unit 64. The replay request may include, for example, identification information that can identify the driving record (e.g., unique identification information or a storage path name in the PLC 1). The replay unit 59 replays the driving record stored in the storage device 12 and displays it on the display unit 7. The replay unit 59 may have a ladder monitor unit 56 instead of the debug unit 54. Alternatively, the replay unit 59 may be included in the debug unit 54. The replay unit 59 may display the time-series device values acquired in real time from the PLC 1 as waveforms, or may display the time-series device values included in the driving record as waveforms.
[0036] The Web browser 60 may display the analysis report on the display unit 7 by executing the Web application 61. The Web application 61 is composed of, for example, HTML data, CSS data, and java(R) script. The Web application 61 may be provided from the extension unit 4a. The communication processing unit 62 processes communication with the Web server 51. The data acquisition unit 63 acquires the driving record to be displayed in the analysis report from the project editing unit 50. It is assumed that the driving record has already been saved in the storage device 12 by the download unit 53. The linking unit 64 passes designation information indicating the device or the like designated or selected by the user in the analysis report to the debugging unit 54 or the like. This enables the debugging unit 54 to display a relationship map of the non-normal device designated in the analysis report, or to display a portion in the ladder program in which the non-normal device is described. The user can easily edit the ladder program with respect to the non-normal device. The drawing unit 65 displays the analysis report on the display unit 7. Furthermore, the linking unit 64 performs time management so that the playback time (selection time) in the analysis report and the playback time of the driving record in the project editing unit 50 are synchronized.
[0037] FIG. 5 shows functions that are realized by the CPU 31 and the CPU 41a executing a control program in the PLC 1. In the CPU 31, the command processing unit 71 interprets a command received from the PC 2 and executes a process corresponding to the interpretation result. For example, when a request signal created by encapsulating an HTTP request is received, the command processing unit 71 transfers the request signal to the CPU 41a. When a response signal to the request signal is received from the CPU 41a, the command processing unit 71 transfers the response signal to the PC 2. The collection unit 72 collects symbol values (device values and values stored in variables) from the basic unit 3 and the expansion unit 4b and stores them in the ring buffer 36. The logging unit 73 determines whether any error or trouble (abnormal event) has occurred in the PLC 1 based on the collected symbol values, etc. For example, the logging unit 73 may determine whether the collected symbol values meet the recording conditions. When the collected symbol values meet the recording conditions, the logging unit 73 saves the symbol values as an operation log 76 in the operation record 74. For example, the logging unit 73 creates a folder for storing the driving record 74, and saves the operation log 76 therein. The logging unit 73 reads out from the project storage unit 35 the project data 75 that was being executed when the driving record was created, and saves it in the driving record 74. Furthermore, the logging unit 73 notifies the analysis unit 83 that the driving record 74 has been created.
[0038] The CPU 31 or the CPU 41a may have a setting unit for setting a control cycle to be used for generating a learning model, analysis, and generating an analysis report, which will be described later, according to an input from an operator. The control cycle is set by specifying a reference timing for the cycle. The setting of the control cycle may be called a cycle setting. For example, the cycle setting includes a symbol name that specifies the start timing of the cycle, and rising / falling edge information of the symbol value. The cycle setting may include setting information for the start timing of the cycle based on the symbol name that specifies the start timing of the cycle, and rising / falling edge information of the symbol value, and setting information for the end timing of the cycle based on the symbol name that specifies the end timing of the cycle, and rising / falling edge information of the symbol value. The setting of the control cycle by the setting unit may be provided to the PLC 1 in a file format such as CSV, and the setting unit may set the control cycle by reading the file such as CSV. For example, the control cycle set by the setting unit is used to classify devices that are synchronized with the cycle and add the classification information to a model as attribute information, to narrow down devices to be analyzed by the control cycle, and to generate an analysis report that is displayed in synchronization with the control cycle. A plurality of control cycles may be set. Also, the control cycle does not necessarily have to be set. For example, if possible values of a symbol value in a normal state are predetermined, whether or not the symbol value is an abnormal symbol may be determined by determining whether or not the symbol value is one of the possible values determined in advance.
[0039] In the CPU 41a, the protocol conversion unit 81 converts the protocol of the HTTP request encapsulated and transferred from the PC 2 via the CPU 31 and extracts it from the request signal. The protocol conversion unit 81 encapsulates response information transmitted from the Web server 82 in response to the HTTP request and passes it to the CPU 31. In the following, the Web browser 60 of the PC 2 and the Web server 82 of the extension unit 4a can also communicate indirectly via the Web server 51, the protocol conversion units 52 and 81, the command processing unit 71, and the like in the PC 2. The protocol conversion units 52 and 81 may provide a transparent tunnel (e.g., a TCP tunnel). The Web server 82 provides the PC 2 with an analysis report created by the analysis unit 83. The analysis unit 83 analyzes the operation log 76 in the driving record 74, creates an analysis result 77, and passes it to the logging unit 73. When the analysis unit 83 creates the analysis result 77, the logging unit 73 adds it to the driving record 74 including the analysis result 77 in addition to the project data 75 and the operation log 76. The driving record 74 is stored in the driving record storage unit 37. In this way, the operation record 74 stores the project data 75, the operation log 76, and the analysis result 77 associated with each other when an abnormal event occurs in the PLC1, so that the state of the PLC1 when the abnormal event occurs can be easily reproduced. For example, by visually reproducing the change in the device value on the ladder diagram, the user can easily debug the ladder program. In particular, when the project data stored in the PC2 is used, it may be difficult to accurately reproduce the state of the PLC1 when an abnormal event occurs. This is because the project data stored in the PC2 and the project data 75 executed in the PLC1 when the abnormal event occurs may not match. Therefore, the project data 75 executed in the PLC1 when the abnormal event occurs is stored in the operation record 74. When the analysis result 77 is issued, the notification issuing unit 84 issues a notification. This notification is sent to the CPU 11.
[0040] <User Interface (UI)> 6 and 7 show the UI 100 of the project editing program 14a displayed on the display unit 7 (the UI 100 is displayed on the display unit 7 by executing the project editing program 14a). The mode selection menu 101 displays a plurality of modes provided in the project editing program 14a in a selectable manner. The plurality of modes include an edit mode, a monitor mode, a replay mode (debug mode), and the like. The edit mode shown in FIG. 6 is a mode for editing a ladder program displayed in the program display area 104. The project display area 102 displays information constituting the project. This information includes specification information and setting information of the basic unit 3 and the extension unit 4 constituting the PLC 1, device allocation information, setting information of the operation record, a ladder program, and the like. In the edit mode, the program display area 104 displays the ladder program specified in the project display area 102 in an editable manner. In FIG. 6, a ladder program having program modules named an input unit, an output unit, and a machining unit state is displayed. In particular, a plurality of program modules can be selected by a tab 107, and in FIG. 6, the tab 107 corresponding to the input unit is selected.
[0041] The monitor mode is a mode that waits for a notification issued by the PLC 1. When the extension unit 4a issues a notification indicating that an analysis result has been created, the CPU 11 displays a dialog for displaying the notification on the display unit 7. The user interface of the monitor mode is basically the same as that of the edit mode.
[0042] 8 shows the notification dialog 108. The notification dialog 108 displays the name of the application or function that issued the notification, the content of the notification, the number of notifications that occurred, the date and time when the notification occurred, etc. The notification information for displaying the notification dialog 108 includes the URL of the analysis report. When the display button 109 is pressed, the CPU 11 passes the URL of the analysis report to the Web browser 60. As a result, the Web browser 60 accesses the Web server specified by the URL, obtains the display data of the analysis report (Web application 61), and displays the analysis report.
[0043] 7, the replay mode is a mode in which the operation record is reproduced on a ladder program and the operation record is displayed as a waveform. The pointer 103 moves in conjunction with a user operation on the operation unit 8, and is used to press down a button or to select an object. For example, when an analysis report displayed in the project display area 102 is double-clicked by the pointer 103, the CPU 11 causes the Web browser 60 to display the analysis report.
[0044] In replay mode, device values included in the operation record are displayed on the ladder program in the program display area 104. In the case of a relay device (bit device), the device value is displayed so that it is visually distinguishable between 0 and 1. Visually distinguishable includes display in different colors or different icons. In the case of a word device, for example, the device value may be displayed after being decimalized. Other numeric display formats, such as device values after being decimalized, may also be adopted.
[0045] Since the device values are time-series data that may change over time, each device value is linked to time information that indicates the time at which it was collected. The seek bar 105a indicates the playback time of the device values, and may be operated by the pointer 103 to specify the playback time. During playback of the driving record, the seek bar 105a moves from left to right in conjunction with the passage of the playback time. The time specification unit 106a is a control object for instructing to advance or rewind the playback time, to start automatic playback, or to stop playback.
[0046] [Analysis Report] 9 shows an analysis report 110 displayed on the display unit 7 by the Web browser 60 executing the Web application 61. The analysis report 110 is displayed on the display unit 7 together with the UI 100 of the project editing program 14a. That is, the UI 100 and the analysis report 110 are displayed as separate windows. However, the UI 100 and the analysis report 110 may be displayed in a single window. The analysis report 110 may be displayed on the display unit 7, or on another display device such as a programmable display device, a tablet, or a smartphone.
[0047] The detection map 111 displays the start timing and end timing for each of a plurality of processes executed in the PLC1. In general, the period from the start timing to the end timing is called a cycle. In FIG. 9, a rectangle extending horizontally indicates a period (cycle) during which a process is being executed. The left of this rectangle indicates the older one, and the right indicates the newer one. The time bar 112a indicates the timing when a save trigger for the driving record data occurred. As described above, the driving record data holds data collected before the timing when the save trigger occurred and data collected after this timing. Therefore, data is shown before and after the time bar 112a. Meanwhile, the time bar 112e indicates the selected time, and can be moved to a desired time (left and right) by a drag operation or a drag-and-drop operation by the user. Instead of drag-and-drop, the time bar 112e may be configured to jump to a desired position when the user clicks on the desired position on the detection map. In this way, the user can update the display of the analysis result by operating the time bar 112e. In accordance with the operation of the time bar 112e, at least one or all of the detection list 114, the image display area 113, and the analysis comment 116, which will be described later, may be updated in conjunction with each other (time-synchronized) to display the corresponding analysis result. The time bars 112a and 112e may be drawn in different colors, or may be drawn with solid and dashed lines. This improves the distinguishability of the time bars 112a and 112e.
[0048] Here, two circles are written in step 1 of the detection map 111, which indicate the timing when the detection target devices became in an unusual state. The circle on the left indicates the timing when devices R001 and MR001 became in an unusual state (both at 14:50:45). The circle on the right indicates the timing when device R004 became in an unusual state (14:59:01). Fig. 9 shows a state in which the user has selected the device column for R004 in the detection list 114, and the time bar 112e of the detection map 111 is displayed at a position overlapping with the circle on the right.
[0049] The display position of the time bar 112e on the detection map 111 is linked to the user's device selection in the detection list 114. When the device field of MR001 is selected (clicked) in the state shown in Fig. 9, MR001 is highlighted as shown in Fig. 10, and the time bar 112e on the detection map 111 moves to a position overlapping with the leftmost circle of the two circles (the same applies when the device field of R001 is selected). In addition, in response to the movement of the time bar 112e, the time bar 112f on the detection list also moves up by one (linked).
[0050] An abnormal state is, for example, when a device value deviates from a normal range, or when the timing or frequency of a device value change deviates from the normal range. In a manufacturing factory, the same products are mass-produced every day. In other words, the same process is repeated many times. Therefore, detecting and displaying an abnormal state is very useful for improving a ladder program or reviewing production equipment. The normal range (normal condition) that defines the normal state (normal state) may be defined by master data or by the learning results of device values. In the detection map 111, the rectangle indicating the process moves from right to left as time passes (as described above, the left is older and the right is newer).
[0051] The image display area 113 displays the camera image acquired by the PLC1. The camera image may also be included in the driving record. In FIG. 9, the camera image of the master data and the current camera image are displayed so as to be contrasted. Since the camera image is also time-series data, the seek bar 105b indicates the playback time of the camera image and moves from left to right as the playback time progresses. The time bar 112b indicates the selected time, and in FIG. 9, indicates the timing when the detection target device R004 became in a different state from usual. The time designation unit 106b is a control object for instructing to advance the playback time of the camera image, to return the playback time, to start playback, and to stop playback. The link unit 64 and the playback unit 59 manage the playback time of the detection map 111, the playback time of the camera image, and the playback time in the UI 100 so as to be synchronized. As a result, the playback time in the UI 100 and the playback time in the analysis report 110 match.
[0052] The detection list 114 indicates the device that has become in an unusual state and the time when the state occurred (the time when the device value was collected). When the CPU 11 detects a click on a device displayed in the detection list 114, the CPU 11 may switch the operation mode of the project editing unit 50 to the replay mode. The CPU 11 passes the identification information of the clicked device, the playback time information (the time when the device value was collected), and the information (such as the storage path) that specifies the driving record that was the subject of analysis to the debugging unit 54. As a result, the replay mode is started using the driving record that was the subject of analysis, and at that time, the playback time of the analysis report 110 and the playback time information of the project editing unit 50 are synchronized. As a result, as shown in FIG. 7, the driving record 74 is played back in association with the ladder program. Note that FIG. 7 corresponds to a display screen when the replay mode of the UI 100 is started with the device R004 selected in the detection list 114 of FIG. 9. The seek bar 105a in FIG. 7 indicates the time (14:59:01) when the device R004 became in an unusual state. Furthermore, in the program display area 104, the state of each device at this time (14:59:01) is displayed so as to be visually distinguishable. Note that the project editing unit 50 may already be operating in the replay mode before the analysis report 110 is displayed. In this case, when an abnormal device is selected in the analysis report 110, the CPU 11 may pass the time at which the abnormal state (an event different from usual) occurred to the project editing unit 50, and the project editing unit 50 may read out the device value synchronized with that time from the storage device 12 and display the device value on the ladder program.
[0053] 9, the time bar 112c indicates the timing (14:59:06) when the drive record data save trigger occurred. As described above, the time bar 112f is linked to the time indicated by the time bar 112e in the detection map 111. For example, when the time bar 112e is moved leftward from the left circle, the time bar 112f in the detection list 114 moves to a position overlapping with the top line of the device column for R001.
[0054] 10 and 11 are explanatory diagrams for explaining how the analysis report 110 (FIG. 9) and the UI 100 (FIG. 7) of the project editing program 14a are linked together. As described above, FIG. 7 corresponds to the display screen when the replay mode of the UI 100 is started with the device R004 selected in the detection list 114 of FIG. 9.
[0055] 10, when the user selects (clicks) MR001 in the detection list 114, the time bar 112e moves accordingly in the detection map 111. As the time bar 112e moves, the time bar 112f also moves up by one. As the time bar 112e moves, the time bar 112b in the image display area 113 also moves to the left (linked display). Furthermore, the display of the analysis comment 116 described later also changes in response to the selection of MR001. Details will be described later.
[0056] On the other hand, as shown in Fig. 11, the seek bar 105a moves slightly to the left (earlier in time) than in Fig. 7. At this time, the seek bar 105a indicates the time (14:50:45) when the device MR001 became in an unusual state. In this way, the linking unit 64 displays the time specified by the time bar 112e and the time bar 112f of the analysis report 110 in synchronization with the playback time of the driving record (the time specified by the seek bar 105a).
[0057] Note that Figures 10 and 11 explain the linked display when the UI100 of the project editing program 14a has been launched in advance. However, for example, if the UI100 is launched after the device column for MR001 has been selected in the detection list 114 of the analysis report 110, the UI100 will be launched in the changed state shown in Figures 10 and 11.
[0058] Also, in FIG. 10, the user selects one device from the detection list 114, but multiple devices may be selected. In this case, the same process as when the topmost device (the oldest device in terms of time) is selected is performed. That is, for example, when the replay mode of the UI 100 is started with both MR001 and R004 selected, the UI 100 is started in the changed state shown in FIG. 11. The concept of time synchronous playback in this specification includes synchronous playback of the time index specified by the time bar 112f and the playback time index of the driving record. In other words, it is also possible to synchronously play back indexes representing time, instead of the time itself.
[0059] 12, the CPU 11 may read the name of the abnormal device and its device comment 115 from the project data and display them in the detection list 114. The device comment 115 indicates the use of the device, etc. Thus, the user can easily understand the use of the abnormal device, etc.
[0060] The analysis comment 116 displays the comment included in the analysis result, the master data, and the time series data of the current device value for the device selected in the detection list 114. The data displayed in the analysis comment 116 is data for one control cycle. The time bar 112d indicates the timing when an unusual state occurred.
[0061] 9 and 12 show data for one control cycle in which an unusual state occurred for device R004. More specifically, in one control cycle, the master data shows two changes, OFF→ON and ON→OFF, whereas the current data shows no changes at all. Therefore, the time bar 112d is displayed at the timing of the unusual state, i.e., OFF→ON.
[0062] Here, when the user selects (clicks) MR001 in the detection list 114 in the analysis comment 116 shown in Fig. 9 and Fig. 12, the display switches to that shown in Fig. 10. Fig. 10 shows that an unusual state has occurred in the device of MR001. Note that in this embodiment, each of the time bars 112e, 112b, and 112f all show the same timing.
[0063] <Data collection from other PLCs, etc.> In the above embodiment, data is collected from the field device 10 connected to the PLC 1 and the data is analyzed. However, this is merely an example. The PLC 1 may collect and analyze data from other PLCs, field devices, etc. connected via a network. To do this, the PLC 1 must be able to communicate with devices (hereinafter, target devices) from which data is to be collected, such as other PLCs 1, via an industrial network.
[0064] 13 shows network devices required to connect the PLC 1 to an industrial wireless network. The industrial wireless system 200 includes, for example, the PLC 1, a master unit 201, and an industrial wireless network 204 (FIG. 14).
[0065] The master device 201 is a management device that manages the settings of a plurality of wireless slave devices, etc. The master device 201 has a WAN port (LAN port 38d) and LAN ports 38e to 38h.
[0066] The LAN port 38d is an Ethernet port for connecting to a higher-level network such as the Internet or an intranet. The LAN ports 38e to 38h are Ethernet ports for connecting to at least one of the wireless slave devices that form the industrial network. In this example, the LAN port 38e is connected to the LAN port 38a of the basic unit 3.
[0067] The expansion unit 4c is an expansion unit for increasing the number of network devices that can be connected to the basic unit 3. The expansion unit 4c has multiple LAN ports 38b, 38c, and is sometimes called an Ethernet (registered trademark) unit. As a result, the basic unit 3 has three LAN ports 38a, 38b, and 38c. The LAN ports 38b and 38c may be connected to the parent device 201, for example, or to a backbone server (e.g., a relational database server, a Web server, or an FTP server) or a display (a monitor device that displays device values of PLC1).
[0068] 14 shows an industrial wireless network 204 connected to a master unit 201. The PLC 1 and master unit 201 are housed in a control panel 208, which is a shielded case.
[0069] The slave devices 202 (slave devices 202a to 202f) are an example of a wireless slave device. The slave devices 202a to 202f are the same network devices, but their roles in the industrial wireless network 204 may differ depending on their connection positions in the network topology and the settings made by the master device 201. The slave devices 202a to 202f may be called wireless nodes.
[0070] The slave unit 202a is connected to the LAN port 38e of the master unit 201 via a network cable. The slave unit 202a is connected to a target device 203a (e.g., another PLC1, a field device, etc.) via a network cable, and transfers operation data of the target device 203a to the PLC1. The target device 203a may be, for example, a power meter for measuring the power of a device (such as a flow meter or a processing device) used at an FA site. In this case, examples of the operation data transferred from the power meter to the PLC1 include data such as integrated active power, current, voltage, power factor, frequency, and integrated reactive power. An Ethernet-compatible communication unit may be provided as a part of the PLC1, and various operation data may be transferred from a power meter wired to any of the slave units 202a to 202f to the Ethernet-compatible communication unit via the industrial wireless network 204. It is not essential that the target device 203a is connected to the slave unit 202a. Furthermore, the child device 202a can wirelessly communicate with one or more other child devices 202b, 202d. When the child device 202a receives a request (including a transfer request) from the PLC 1 via the parent device 201, the child device 202a operates according to the request, transfers the request to the other child devices 202b to 202f, and transfers responses from the other child devices 202b to 202f to the PLC 1 via the parent device 201.
[0071] The child device 202b is a network device that performs wireless communication with the child devices 202a and 202c, and performs wired communication with the target device 203b. The target device 203b does not have to be connected. The child device 202b relays communication signals between the child devices 202a and 202c, and transfers operation data of the target device 203b to the PLC1 via the child device 202a and the parent device 201. When the child device 202b receives a request from the PLC1 via the parent device 201, the child device 202b operates according to the request, transfers the request to another child device 202c, and transfers a response from the other child device 202c to the PLC1 via the parent device 201.
[0072] The child device 202c is a network device that performs wireless communication with the child device 202b and wired communication with the target device 203c. The target device 203c may not be connected. The child device 202c transfers operation data of the target device 203c to the PLC 1 via the child device 202b, the child device 202a, and the parent device 201. When the child device 202c receives a request from the PLC 1 via the parent device 201 and the child devices 202a and 202b, it operates according to the request, creates a response to the request, and transfers it to the PLC 1 via the child devices 202a and 202b and the parent device 201.
[0073] The child device 202d is a network device that performs wireless communication with the child devices 202a, 202e, and 202f. A target device may also be connected to the child device 202d. The child device 202d relays communication signals between the child devices 202a and 202e, and relays communication signals between the child devices 202a and 202f. When the child device 202d receives a request from the PLC1 via the parent device 201 and the child device 202a, the child device 202d operates according to the request, transfers the request to the other child devices 202e and 202f, and transfers responses from the other child devices 202e and 202f to the PLC1 via the parent device 201.
[0074] The slave device 202e is a network device that performs wireless communication with the slave device 202d and wired communication with the target device 203e. The target device 203e does not have to be connected. The slave device 202e transfers operation data of the target device 203e to the PLC 1 via the slave device 202d, the slave device 202a, and the master device 201. When the slave device 202e receives a request from the PLC 1 via the master device 201 and the slave devices 202a and 202d, it operates according to the request, creates a response to the request, and transfers it to the PLC 1 via the slave devices 202a and 202d and the master device 201.
[0075] The slave device 202f is a network device that performs wireless communication with the slave device 202d and wired communication with the target device 203f. The target device 203f does not have to be connected. The slave device 202f transfers operation data of the target device 203f to the PLC 1 via the slave device 202d, the slave device 202a, and the master device 201. When the slave device 202f receives a request from the PLC 1 via the master device 201 and the slave devices 202a and 202d, it operates according to the request, creates a response to the request, and transfers it to the PLC 1 via the slave devices 202a and 202d and the master device 201.
[0076] In this way, by constructing the industrial wireless network 204, PLC1 can not only collect operation data from the expansion units 4 and field devices 10 connected to it, but also collect operation data from target devices including other PLC1s connected via the industrial wireless network 204.
[0077] Each of the child devices 202a to 202f may be connected to another PC2 and relay communication between the other PC2 and the PLC1. The other PC2 may function as a simple display (simple monitor) that displays operation data of the PLC1. Here, the industrial wireless network 204 may be a wireless mesh network. In general, a wireless mesh network is a network in which a plurality of child devices 202a to 202f are connected to each other by wireless communication and packets are forwarded in a multi-hop manner. In other words, it is a network in which a mesh-like topology is formed in the entire network by wirelessly connecting adjacent child devices that can communicate with each other, and packets are forwarded in a bucket brigade manner across one or more child devices. A wireless mesh network is characterized in that it is more resistant to communication failures than other wireless networks because it can switch to an alternative route even if communication is disabled on a specific route. Below, a supplementary explanation will be given using FIG. 14.
[0078] In FIG. 14, the child devices 202a to 202f may store, for example, a "destination table" and a "next hop table." The "destination table" is a table in which destination terminals such as the parent device 201 and the target devices 203a to 203f (their MAC addresses) are associated with wireless nodes (child devices 202a to 202f) connected by wire. When constructing a wireless mesh network, the parent device 201 grasps the existence (MAC addresses, etc.) of all the target devices 203a to 203f included in the wireless mesh network by, for example, transmitting a broadcast packet, and distributes information on the wireless nodes connected by wire to the target devices 203a to 203f to the child devices 202a to 202f. The "destination table" may be updated by transmitting a broadcast packet at the timing of first communication with a specific target device.
[0079] The "next hop table" is a table stored individually in each of the child devices 202a to 202f, and determines to which nearby child device the packet should be forwarded next (i.e., the next forwarding destination of the packet). When the parent device 201 constructs the industrial wireless network 204, it determines a packet forwarding path (e.g., a tree shape) and a next hop table assuming that path, and also determines next hop tables for the child devices 202a to 202f and distributes them to each child device. For example, the next hop table stored in the child device 202e includes information such as the next forwarding destination of a packet whose destination node is set to "child device 202a" is "child device 202d."
[0080] In this embodiment, the parent device 201 has the function of determining the packet forwarding path and the next hop table, but for example, the child device 202a connected to the parent device 201 by wire may have the function. In other words, when the child device 202a is not connected to the parent device 201 by wire, it has the same function as the other child devices 202b to 202f, while when it is connected to the parent device 201 by wire, it may have a function different from the other child devices 202b to 202f (for example, the function of determining the above-mentioned packet forwarding path and the next hop table). For example, a specific program may be executed only in the child device 202a connected to the parent device 201 by wire in order to perform the function of determining the above-mentioned packet forwarding path and the next hop table.
[0081] An example of packet forwarding will be described. Considering packet forwarding from the target device 203e to the parent device 201, the target device 203e first forwards the packet to the child device 202e connected to itself by wire. The child device 202e refers to the destination table and recognizes that the packet should be delivered to the child device 202a connected to the parent device 201 by wire. Next, the child device 202e refers to the next hop table and recognizes that in order to deliver the packet to the child device 202a, the packet should be sent to the child device 202d as the next forwarding destination. Then, the child device 202e forwards the packet to the child device 202d, which is the next packet forwarding destination. After that, the same process is repeated in the child device 202d, and the packet arrives at the child device 202a. The child device 202a refers to the destination table and recognizes that the packet addressed to the parent device 201 has arrived at itself, and forwards the packet to the parent device 201 connected by wire. In this way, packets are transferred in a bucket brigade fashion.
[0082] Another example of packet forwarding will be described. Considering packet forwarding from the target device 203e to the target device 203f, the target device 203e first forwards the packet to the child device 202e connected to itself by wire. The child device 202e refers to the destination table and recognizes that the packet should be delivered to the child device 202f connected to the target device 203f by wire. Next, the child device 202e refers to the next hop table and recognizes that in order to deliver the packet to the child device 202f, the packet should be sent to the child device 202d as the next forwarding destination. Then, the child device 202e forwards the packet to the child device 202d, which is the next packet forwarding destination. The child device 202d repeats the same process, and the packet arrives at the child device 202f. The child device 202f refers to the destination table and recognizes that the packet addressed to the target device 203f has arrived at itself, and forwards the packet to the target device 203f connected to it by wire. In this way, by using the "next hop table", it is possible to perform wireless communication without going through the child device 202a connected to the parent device 201.
[0083] The parent device 201 (or the child device 202a) may dynamically optimize the network configuration in the industrial wireless network 204 by periodically monitoring the communication state between the child devices in the industrial wireless network 204 (for example, packet delay time, number of hops, radio wave congestion, radio wave strength, etc.). In other words, the parent device 201 (or the child device 202a) may dynamically generate and update the next hop table. For example, when deterioration of the communication state between the child device 202d and the child device 202e is recognized due to some reason (such as the placement of an object that causes radio wave interference or radio wave disturbance), the child device 202e searches for other child devices with which wireless communication is possible. For example, when the child device 202b is found, a route that passes through the child device 202b is determined and updated as a packet transfer route from the child device 202e to the child device 202a. Then, parent device 201 (or child device 202a) determines and updates a next hop table assuming the updated packet forwarding route, and also determines and updates next hop tables for child devices 202a to 202f, and distributes the updated next hop table to each child device.
[0084] In addition, the function of periodically monitoring the communication state between the child devices, as well as the function of determining the packet forwarding path and the next hop table, may be provided in the child device 202a connected to the parent device 201 by wire, rather than in the parent device 201. In the above example, the packet forwarding using both the "destination table" and the "next hop table" has been described, but this is merely one example.
[0085] (1) Structure of the parent unit FIG. 15 shows the electrical structure of the parent device 201. The CPU 210 controls the LAN module 212 according to a program stored in the storage device 211. The LAN module 212 is a wired communication circuit (network communication circuit) that performs wired communication with other network devices connected to the multiple LAN ports 38d to 38h. The CPU 210 has at least one processor core (processing circuit). The storage device 211 has a read-only memory (ROM) and a random access memory (RAM). The ROM is an example of a non-volatile memory. The RAM is an example of a volatile memory.
[0086] 16 shows the functions of the CPU 210. The CPU 210 realizes various functions according to a program 250 stored in the storage device 211. All or part of these various functions may be implemented by a separate logic circuit (ASIC, FPGA) different from the CPU 210. ASIC is an abbreviation for application specific integrated circuit. FPGA is an abbreviation for field programmable gate array.
[0087] The memory management unit 230 reads predetermined data from the storage device 211 and writes predetermined data to the storage device 221 .
[0088] The slave management unit 231 manages the slaves 202a to 202f connected to the industrial wireless network 204. In particular, the request transmission unit 232 may request a specific slave 202 to turn on an indicator light or to change the lighting state of the indicator light. The slave search unit 233 searches for the slave 202a that is directly connected to the master 201 via a network cable. Such a slave 202a may be called a direct node or a root node. The slave registration unit 234 registers slave-specific information (e.g., product serial number, MAC address) of a slave newly added to the industrial wireless network 204 in the slave list 253 via the memory management unit 230.
[0089] The memory allocation unit 248 secures a storage area or a storage variable based on the memory map, and stores predetermined information therein. The memory map is setting information that holds the relationship between the storage area or storage variable (e.g., device memory (sometimes simply called device)) secured in the storage device 211 and the information (e.g., device value) stored therein, and is set in advance through the PC 2. For example, the device memory named DM11200 stores information indicating the operation state (e.g., normal, warning, abnormal) of the child device 202a. The device memory named DM11201 stores the reception strength of the radio wave by the child device 202a. The device memory named DM11300 stores information indicating the operation state (e.g., normal, warning, abnormal) of the child device 202b. The device memory named DM11301 stores the reception strength of the radio wave by the child device 202b. The device memory named DM11400 stores information indicating the operating status (e.g., normal, warning, abnormal) of the child device 202c. The device memory named DM11401 stores the reception strength of radio waves by the child device 202c. The same is true for the child devices 202d to 202f. In this example, the status information group 255 indicates individual status information of the child devices 202a to 202f stored in the device memory allocated based on the memory map.
[0090] The communication management unit 235 is an instance of a program module for the parent device 201 to communicate with the child device 202. The communication management unit 235 processes communication packets between the parent device 201 and the child device 202 in accordance with a predetermined communication protocol. The child device management unit 231 described above communicates with the child device 202 through the parent device / child device communication unit 236 of the communication management unit 235. The NAT unit 237 is an address conversion module that converts the address of a communication packet. For example, the NAT unit 237 converts the network address and port number of a packet transmitted and received between the LAN port 38d, which is a port for WAN, and the LAN ports 38e to 38h, which are ports for LAN. The communication management unit 235 may generate an IPv6 address based on its own MAC address.
[0091] The setting screen management unit 238 provides various setting screens to the PC 2 connected to the LAN ports 38e to 38h or the PC 2 connected to the child device 202. The setting screen may be realized by a Web user interface. The setting screen may be, for example, a setting screen for setting the industrial wireless network 204 and a setting screen for setting the indicator light of the child device 202. The user input receiving unit 239 receives user input from the PC 2 connected to the LAN ports 38e to 38h or the PC 2 connected to the child device 202. The screen providing unit 240 provides a setting screen (e.g., a Web page) to the PC 2 connected to the LAN ports 38e to 38h or the PC 2 connected to the child device 202. The screen providing unit 240 may be, for example, a Web server.
[0092] In addition to the program 250, various information is stored in the storage device 211. The parent device specific information 251 is network identification information (e.g., MAC address) or a serial number assigned to the parent device 201. The mesh network identifier 252 is a network identifier of the industrial wireless network 204 constructed as a wireless mesh network. The child device list 253 is a list of child device specific information of the child devices 202 permitted by the parent device 201 to participate in the industrial wireless network 204. The setting information 254 includes a wireless frequency band, a wireless channel, an IP address, and the like used in the industrial wireless network 204. The mesh network identifier 252 may be included in the setting information 254.
[0093] The status collection unit 245 collects individual status information indicating the operating status of the child devices 202a to 202f registered in the child device list 253, creates a status information group 255, and stores it in the storage device 211. As described above, the status collection unit 245 may store the individual status information collected from the child devices 202 in a device memory allocated by a memory map. Here, the status collection unit 245 may collect individual status information in parallel from a plurality of child devices 202 and store it in the device memory. Thereby, a plurality of pieces of individual status information collected from a plurality of child devices 202 may be substantially time-synchronized.
[0094] The device memory is substantially directly accessed by the PLC 1. Therefore, the collection unit 72 can collect the state information group 255 stored in the device memory of the master unit 201.
[0095] The status information group 255 held in the parent device 201 may be collected by the collection unit 72 of the basic unit 3 and recorded by the logging unit 73 as part of the operation record 74. The collection unit 72 executes collection of the device values in the PLC 1 and collection of the status information group 255 from the parent device 201 in parallel. Therefore, the collection time of the device values in the PLC 1 and the collection time of the status information group 255 are substantially synchronized in time.
[0096] The analysis unit 83 may analyze the individual status information of the slave units 202a to 202f included in the status information group 255, and store the result of analysis 77. The Web server 82 may provide the PC 2 with the individual status information of the slave units 202a to 202f together with a graph created from the time-series data of the device values, and cause the PC 2 to display the same. The Web server 82 may provide the PC 2 or the programmable display with display data (e.g., HTML files, CSS files, image data, scripts, etc. for displaying graphs) of the device values collected in the PLC 1 by the collection unit 72 in real time, and the status information group 255 collected from the parent unit 201 by the collection unit 72 in real time. The Web server 82 may provide the PC 2 or the programmable display with display data (e.g., HTML files, CSS files, image data, scripts, etc. for displaying graphs) of the analysis results (analysis report) of the device values collected in the PLC 1 by the collection unit 72, and the status information group 255 collected from the parent unit 201 by the collection unit 72.
[0097] (2) Structure of the handset FIG. 17 shows an electrical structure of the child device 202. The CPU 220 controls the WLAN modules 223a to 223c and the LAN module 222 according to a program stored in the storage device 221. The CPU 220 has at least one processor core (processing circuit). The WLAN modules 223a to 223c are wireless communication circuits (wireless network communication circuits) that perform wireless communication with other wireless network devices. The WLAN modules 223a to 223c may be independent wireless communication circuits, or may be wireless communication circuits virtually realized by the SDR 226. In the case of a virtually realized wireless communication circuit, the antennas 225a, 225b, and 225c may be shared. SDR is an abbreviation for software radio. The SDR 226 realizes various wireless communication circuits by rewriting the contents of the software. The WLAN modules 223a to 223c communicate with other child devices 202 and the PC 2 through the antennas 225a, 225b, and 225c, respectively. In this example, the WLAN modules 223a to 223c and the antennas 225a, 225b, and 225c are connected one-to-one, but this is merely an example. For example, by interposing a multiplexer, the WLAN modules 223a to 223c and the antenna 225a may share an antenna prepared for each wireless band (e.g., 2.4 GHz, 5 GHz). Amplifiers, filters, frequency conversion circuits, and the like are arranged between the SDR 226 and 225a, 225b, and 225c, but are not shown here. The LAN module 222 is a wired communication circuit (network communication circuit) that performs wired communication with other network devices (e.g., the parent device 201, industrial devices) connected to the LAN port 38i. The indicator light 224 includes one or more light-emitting elements (e.g., light-emitting diodes, organic EL) that indicate the state of the child device 202 and a lighting control circuit. The storage device 221 has a ROM and a RAM.
[0098] The WLAN module 223a is, for example, a wireless local area network module for backhaul communication between the child devices 202. The network identifier (e.g., SSID) of the WLAN module 223a is the mesh network identifier 281 of the industrial wireless network 204. The WLAN module 223a operates as an access point (AP) and also as a station (STA).
[0099] The WLAN module 223b is, for example, a module for performing communication to wirelessly communicate with other child devices 202 to add the other child devices 202 to the industrial wireless network 204. Alternatively, the WLAN module 223b is, for example, a module for performing communication to wirelessly communicate with other child devices 202 to have the other child devices 202 add the WLAN module 223b to the industrial wireless network 204 in which the other child devices 202 are participating. In this case, an initial mesh network identifier 282 (dedicated to the adding process) is set in the WLAN module 223b. If the child device 202 has already participated in the industrial wireless network 204, the WLAN module 223b of the child device 202 functions as a second access point. If the child device 202 is about to participate in the industrial wireless network 204, the WLAN module 223b of the child device 202 functions as a second station. In FIG. 17, the WLAN module 223b and the other WLAN modules 223a and 223c appear to be physically separate modules, but this is merely an example. The present invention is not limited to this, and these modules may be physically configured in a single module (e.g., an integrated circuit) and logically configured as separate modules. In other words, they may be physically configured as one module by using a virtual AP technology or the like.
[0100] The WLAN module 223c is a module used to connect an external terminal (e.g., a notebook PC2, a tablet terminal, or a smartphone) to the industrial wireless network 204. The WLAN module 223c may function as a third access point, for example. It should be noted that the WLAN modules to be connected to the networks can be freely combined.
[0101] FIG. 18 shows the functions of the CPU 220. The CPU 220 realizes various functions according to the program 280 stored in the storage device 221. The storage management unit 260 reads out predetermined data from the storage device 221 and writes predetermined data to the storage device 221. When updating the program 280, an update file may be wirelessly transferred from the parent device 201 to the child device 202. Specifically, the user may instruct the program of the child device 202 to be updated via a Web screen provided by the parent device 201, for example, a screen of the PC2. The parent device 201 may hold the program 280 (system program) of the child device 202, and may update the program by transferring the program 280 held in the parent device 201 to the child device 202 upon receiving a user instruction (instruction signal) from the PC2.
[0102] The child unit management unit 261 manages various functions of the child unit 202. The indicator light operation unit 262 controls the display color and lighting mode (blinking, continuous lighting, etc.) of the indicator light 224. The additional child unit connection unit 263 is a module that establishes a communication link with other child units 202 that wish to be added to the industrial wireless network 204. The additional child unit connection unit 263 assigns an initial (dedicated for addition processing) mesh network identifier 282 to the WLAN module 223b, and connects the other child units 202 to a network dedicated to adding child units. Note that the mesh network identifier 282 is a mesh network identifier dedicated to addition processing that is known to all child units 202. The additional child unit connection unit 263 may operate only when the parent unit 201 permits or instructs the addition of the child unit 202. The request reception unit 264 receives a request from the parent unit 201 through the parent unit / child unit communication unit 266 of the communication management unit 265 and the WLAN module 223a. These requests include a request to transition from normal mode to child unit addition mode, an acquisition request to acquire the unique information 283 from the child unit 202 to be added, and a request to highlight the indicator light 224 of the child unit 202 to be added.
[0103] The memory allocation unit 278 secures a storage area or a storage variable based on the memory map, and stores predetermined information therein. The memory map is setting information that holds the relationship between the storage area or storage variable (e.g., device) secured in the storage device 221 and the information (e.g., device value) stored therein, and is set in advance by the PC2 through the parent device 201. For example, in the storage device 221 of the child device 202a, a device named DM11200 stores information indicating the operation state (e.g., normal, warning, abnormal) of the child device 202a. In the storage device 221 of the child device 202a, a device named DM11201 stores the reception strength of the radio wave by the child device 202a. In the storage device 221 of the child device 202b, a device named DM11300 stores information indicating the operation state (e.g., normal, warning, abnormal) of the child device 202b. In the device named DM11301 stores the reception strength of the radio wave by the child device 202b. In the storage device 221 of the child device 202c, a device named DM11400 stores information indicating the operating status (e.g., normal, warning, abnormal) of the child device 202c. A device named DM11401 stores the reception strength of radio waves by the child device 202c. The same applies to the child devices 202d to 202f. In this example, the individual status information 256 indicates individual status information of the child device 202 stored in a device assigned based on the memory map. For example, the individual status information 256 held in the storage device 221 of the child device 202a includes status information of the child device 202a. The individual status information 256 held in the storage device 221 of the child device 202b includes status information of the child device 202b.
[0104] The communication management unit 265 manages and controls communication through the WLAN modules 223a to 223c and the LAN module 222. The parent / child communication unit 266 is an instance of a program module for the child device 202 to communicate with the parent device 201 in accordance with a predetermined communication protocol. The existing child device / additional child device communication unit 267 is an instance of a program module for controlling the WLAN module 223b in accordance with a predetermined communication protocol and for executing communication between the existing child device and the additional child device. The communication management unit 265 generates an IPv6 address based on its own MAC address and sets it in the network management unit 268.
[0105] The measurement unit 270 measures the operating state of the child device 202. For example, the measurement unit 270 may measure the reception strength of radio waves transmitted from other child devices 202, measure the communication speed, measure the signal-to-interference plus noise (SINR), or measure the temperature of the child device 202. The measurement unit 270 creates individual state information 256 indicating the measurement result and stores it in the storage device 221. For example, the measurement unit 270 saves the measurement result for the device secured in the storage device 221 based on the memory map. Therefore, the individual state information 256 may be understood as a collection of the measurement results respectively held in a plurality of devices. When the child device management unit 261 is requested by the parent device 201 to send the individual state information 256, the child device management unit 261 transmits the individual state information 256 to the parent device 201 via the parent device / child device communication unit 266.
[0106] The network management unit 268 manages the industrial wireless network 204. The network construction unit 269 constructs the industrial wireless network 204 as a wireless mesh network. For example, the network construction unit 269 sets the mesh network identifier 281 and setting information 254 set by the master unit 201 in the WLAN module 223a, and constructs the industrial wireless network 204. The setting information 254 includes a wireless frequency band, a wireless channel, an IP address, and the like used in the industrial wireless network 204.
[0107] The storage device 221 stores unique information 283. The unique information 283 is a network identifier (e.g., MAC address) assigned to the WLAN modules 223a to 223c and the LAN module 222. Hereinafter, the unique information 283 will be described as the network identifier assigned to the WLAN module 223a. When a child device 202 is newly added, the unique information 283 of the child device 202 is transmitted to the parent device 201 via the industrial wireless network 204. The parent device 201 determines whether to permit the addition of the child device 202 based on the unique information 283 of the child device 202.
[0108] <Adding master and slave devices to an industrial wireless network> 1. Initial setup of the parent unit The connection of the master unit 201 and the slave unit 202 to the industrial wireless network 204 is performed, for example, in the following procedure.
[0109] -Connection between PLC1 and master unit 201 Initial settings for parent unit 201 Addition of handset 202 There are various methods for adding the child device 202. For example, it is possible to first register the child device 202a, which is a wired child device connected by a LAN cable, to the parent device 201, and then register the other child devices 202b to 202h to the parent device 201. Alternatively, it is possible to register not only the child device 202a, which is a wired child device, but also the child devices 202b to 202h, which are wireless child devices, to the parent device 201 in parallel at the same time. In any case, initial settings are first performed on the parent device 201.
[0110] 19 is a diagram showing how the parent device 201 connected to the PLC 1 is initially set by the PC 2, which is a setting device. The PLC 1 and the parent device 201 are connected by a LAN cable. The PC 2 and the parent device 201 are also connected by a LAN cable. These LAN cables are connected to any of the LAN ports 38e to 38h.
[0111] 20 shows the setting information saving process executed by the parent device 201. The CPU 210 of the parent device 201 executes the following procedure in accordance with the program 250.
[0112] In S1, the CPU 210 (screen providing unit 240) determines whether or not a setting screen request has been received from the PC 2, which is a setting device. For example, a request from the PC 2 to access a setting page of a Web server that is part of the screen providing unit 240 is an example of a setting screen request. When the setting screen request is received, the CPU 210 proceeds from S1 to S2.
[0113] In S2, the CPU 210 provides a setting screen to the setting device, PC 2. For example, the CPU 210 transmits to PC 2 parts of a Web page (e.g., an HTML file, an image file, a CSS file, etc.) for displaying the setting screen.
[0114] FIG. 21 is an example of a setting screen 300 displayed on the display unit 7 of the PC 2. In this example, the network identifier (e.g., SSID), frequency, and channel of the industrial wireless network 204 to be stored in the setting information 254 are input. The text box 301 accepts the network identifier input by the user. The frequency list 302 accepts the input or selection of a frequency band by the user. The channel list 303 accepts the input or selection of a channel by the user. The cancel button 304 is a button for instructing the CPU 210 to cancel the initial setting of the parent device 201. The save button 305 is a button for instructing the CPU 210 to save the network identifier, frequency, and channel in the setting information 254. Other settings, such as an encryption method for the wireless section, may be accepted through the setting screen 300. The network identifier may be saved in the mesh network identifier 252. Although the network identifier is input in FIG. 21, either the backhaul or the external AP may be selectively input.
[0115] In S3, the CPU 210 (user input receiving unit 239) receives user input regarding network settings (initial settings of the parent device 201). As described above, the network identifier, frequency, channel, and the like are received.
[0116] In S4, the CPU 210 (user input receiving unit 239) determines whether a save request has been input. A save request is, for example, pressing the save button 305 with the pointer 103. When a save request is input, the CPU 210 proceeds to S5. In S5, the CPU 210 (storage management unit 230) stores the setting information 254 input by the user in the storage device 211. On the other hand, if a save request has not been input, the CPU 210 proceeds from S4 to S6. In S6, the CPU 210 determines whether the cancel button 304 has been pressed. If the cancel button 304 has not been pressed, the CPU 210 proceeds from S6 to S3. On the other hand, if the cancel button 304 has been pressed, the CPU 210 closes the setting screen 300 and ends the save process.
[0117] 2. Adding a child unit 2-1. Adding a wired device 2-1-1. Parent unit processing 22 shows that a child device 202a, which is a direct child device (wired child device), is added to a parent device 201. In this example, other child devices 202b to 202h are added later.
[0118] 23 shows the operation of CPU 210 of parent device 201 when a wired child device (child device 202a) is connected. It is assumed that communication between child device 202a and parent device 201 is encrypted using an encryption key known to both child device 202a and parent device 201. Here, the simplest example in which PC2, which is a setting device, is not involved, is described, but as described later, parent device 201 may be permitted by PC2 to connect a wired child device (child device 202a).
[0119] In S11, CPU 210 (e.g., child device search unit 233) broadcasts a child device search request, and determines whether or not a connection request has been received from a wired child device in response to the search request. For example, CPU 210 determines whether or not a connection request has been received from child device 202a connected to any of LAN ports 38e to 38h via a LAN cable. If there is a connection request from a wired child device, CPU 210 proceeds from S11 to S12. Note that, although the connection request is assumed to be from a wired child device here, it may be from parent device 201.
[0120] In S12, CPU 210 (slave unit search section 233) acquires unique information (unique information 283) from the wired slave unit.
[0121] In S13 , the CPU 210 (slave unit registration unit 234 ) registers the unique information of the wired slave unit in the slave unit list 253 .
[0122] In S14, the CPU 210 (slave registration unit 234) reads out the setting information 254 from the storage device 211, and transmits the setting information 254 to the wired slave device. As a result, the slave device 202a, which is a wired slave device, obtains the setting information 254 and establishes the industrial wireless network 204.
[0123] 2-1-2. Processing of wired child devices 24 shows the process executed by the CPU 220 of the wired slave unit. When the power is turned on, the CPU 220 executes the following process.
[0124] In S21, the CPU 220 (network construction unit 269) determines whether the setting information 254 has not been acquired from the parent device 201. This corresponds to the process of determining whether the wired child device has yet been registered in the parent device 201. If the wired child device has not yet been registered in the parent device 201 and the industrial wireless network 204 cannot be constructed, the CPU 220 proceeds from S21 to S22. On the other hand, if the wired child device has already been registered in the parent device 201 and has been stored in the storage device 221 based on the setting information 254, the CPU 220 proceeds from S22 to S28.
[0125] In S22, the CPU 220 (indicator light operation unit 262) causes the indicator light 224 to flash orange. Flashing orange means setting the display color of the indicator light 224 to orange and setting the display mode to flash the indicator light 224 at regular intervals. Note that in this embodiment, the indicator light is turned on orange in S22, but it may also be turned on orange when communication is established, for example.
[0126] In S23, CPU 220 (parent device / child device communication unit 266) transmits a request to parent device 201 to acquire setting information 254. Note that, although a request to acquire setting information 254 is transmitted to parent device 201 here, the present invention is not limited to this, and for example, a request may always be issued from parent device 201 to the child device.
[0127] In S24, the CPU 220 (parent device / child device communication unit 266) receives the setting information 254 from the parent device 201.
[0128] In S25, the CPU 220 (memory management unit 260) stores the setting information 254 in the storage device 221.
[0129] In S26, the CPU 220 (network construction unit 269) starts up the WLAN module 223a in accordance with the setting information 254, and constructs the industrial wireless network 204, which is a wireless mesh network.
[0130] In S27, the CPU 220 (indicator light operation unit 262) causes the indicator light 224 to light up in green. Lighting up in green means setting the display color of the indicator light 224 to green and the display mode to continuous lighting.
[0131] In S28, the CPU 220 (additional slave connection unit 263) distributes (propagates) the setting information 254 to the wireless slaves (slave units 202b to 202h) connected to the mesh network for adding a slave unit constructed by the WLAN module 223b. Note that S28 is an option that is executed when other wireless slave units are present. The other wireless slave units acquire the setting information 254 from the wired slave unit directly connected to the master unit 201, store it in their own storage device 221, and join the industrial wireless network 204 according to the setting information 254.
[0132] 2-2. Adding a wireless adapter 25 shows that the parent device 201 and the child device 202a, which is a wired child device, are connected via a network cable 600, and the child device 202a acquires setting information 254 from the parent device 201 to construct an industrial wireless network 204. However, the child device 202a is the only wireless child device participating in the industrial wireless network 204. Note that, in FIG. 25, a case will be described in which the child device 202a is added once, and then a wireless child device is added, but the present invention is not limited to this, and the child device 202a and at least one of the other child devices 202b to 202f may be added at the same time.
[0133] 26 shows that the power of the child device 202d, which has not yet been registered in the parent device 201, has been turned on and started up. Since the child device 202d has not yet been registered in the parent device 201, the child device 202d cannot join the industrial wireless network 204.
[0134] FIG. 27 shows the wireless network for addition 209 constructed to register the child device 202d to the parent device 201. Since the child device 202d to be added does not have the setting information 254 of the industrial wireless network 204, the mesh network identifier 282 of the wireless network for addition 209 is set to the WLAN module 223b. The child device 202a, which is a wired child device, sets the mesh network identifier 282 of the wireless network for addition 209 to the WLAN module 223b based on a transition instruction to a child device addition mode (child device addition permitted state) transmitted from the PC2 through the parent device 201. As a result, the child devices 202a and 202d construct and participate in the wireless network for addition 209. That is, the child device 202a becomes capable of propagating the setting information 254 to the child device 202d. The child device 202d saves the setting information 254 in the storage device 221.
[0135] 28 shows that the slave device 202d has joined the industrial wireless network 204. The CPU 220 of the slave device 202d sets the setting information 254 stored in the storage device 221 in the WLAN module 223a, and joins the industrial wireless network 204. It is assumed that the setting information 254 is stored in a non-volatile memory area.
[0136] FIG. 29 shows an example in which a plurality of other child devices 202d, 202e, and 202f are added to the parent device 201. In this state, the parent device 201 and the child device 202a have not yet transitioned to the child device addition mode and are in the normal mode. Therefore, as shown in FIG. 30, the unregistered child device 202d sets the mesh network identifier 282 in the WLAN module 223b and constructs the addition wireless network 209. Similarly, the other child devices 202e and 202f do not have the setting information 254. Therefore, as shown in FIG. 31, the child devices 202e and 202f also set the mesh network identifier 282 in the WLAN module 223b and join the addition wireless network 209.
[0137] 32, when the parent device 201 and the child device 202a transition to the child device addition mode through the setting device 2, the child device 202a sets the mesh network identifier 282 in the WLAN module 223b and participates in the addition wireless network 209. This enables the child devices 202a, 202d, 202e, and 202f to communicate wirelessly. The child device 202a distributes the setting information 254 to the child devices 202d, 202e, and 202f. The child devices 202d, 202e, and 202f store the setting information 254 in the storage device 221.
[0138] 33, the slave devices 202d, 202e, and 202f join the industrial wireless network 204 in accordance with the setting information 254. Note that the slave devices 202a, 202d, 202e, and 202f each deactivate the WLAN module 223b and withdraw from the additional wireless network 209.
[0139] 2-2-1. Parent unit processing 34 shows the addition process of the child device 202 executed by the CPU 210 of the parent device 201. Here, it is assumed that the parent device 201 has already stored the setting information 254 in the storage device 221.
[0140] In S41, the CPU 210 (setting screen management unit 238) determines whether or not an additional screen request has been received from the PC 2. Here, the additional screen is an additional screen (e.g., a Web page) provided to the PC 2 in order to add the child device 202. When the additional screen request is received, the CPU 220 proceeds from S41 to S42.
[0141] In S42, the CPU 210 (setting screen management unit 238) provides an additional screen (for example, a Web page) to the PC 2.
[0142] FIG. 35 shows an example of an addition screen 310 displayed on the display unit 7 of the PC 2. The addition screen 310 has a list 311 of wireless slave units to be added and a list 315 of slave units already connected to the industrial wireless network 204. The lists 311 and 315 each include a unit name 312 and a serial number 314, which are unique information of the slave unit. The check box 317 is a control object for selecting a slave unit that the user wishes to add from among multiple slave units to be added found by the search. The button 313 is a button for instructing to highlight the indicator light 224 of the slave unit 202. When the button 313 is pressed by the pointer 103, a request for highlighting is transmitted to the slave unit 202 corresponding to the pressed button 313. The indicator light operation unit 262 of the slave unit 202 highlights the indicator light 224 in accordance with the request for highlighting. The highlighting may include, for example, increasing the brightness more than normal. In addition, on the addition screen 310, the list 315 of connected child devices may be omitted.
[0143] The targets of the highlighted lighting may include not only the child unit 202 to be added, but also the child unit 202 that is already connected. A large number of child units 202 may be installed throughout a factory. A user can press the button 313 to identify a specific child unit 202 from among the multiple child units 202.
[0144] When the addition approval button 316 is pressed by the pointer 103, the slave unit management unit 231 transmits an addition approval to the slave unit 202 that has been checked by the check box 317. When the wired slave unit receives the addition approval, it transmits the setting information 254 to the slave unit 202 that is the target of the addition approval. When the slave unit 202 that is the target of the addition approval receives the setting information 254, it stores it in the storage device 221.
[0145] In S43, the CPU 210 (request transmission unit 232, parent / child communication unit 236) transmits an addition instruction to the wired child device.
[0146] In S44, the CPU 210 (parent device / child device communication unit 236) receives the unique information of the child device to be added. When the CPU 210 receives a notification from the parent device 201 indicating that the added child device has been found, the CPU 210 may transmit an instruction to the parent device 201 to obtain the unique information of the added child device.
[0147] In S45, the CPU 210 (screen providing unit 240) displays the unique information of the additional child device on the display unit 7 of the PC 2.
[0148] 36 shows the addition screen 310 reflecting the unique information of the discovered added child device. The parent device 201 updates the addition screen 310 upon acquiring the unique information of the added child device.
[0149] In S46, the CPU 210 (user input receiving unit 239) determines whether or not a request for highlighting has been input from the PC 2. If a request for highlighting has not been input, the CPU 210 proceeds from S46 to S50.
[0150] In S47, the CPU 210 (request transmission unit 232, parent / child unit communication unit 236) transmits a request for highlighting to the child unit that is to be highlighted.
[0151] In S48, the CPU 210 (user input receiving unit 239) determines whether or not an emphasis removal instruction has been input from the PC 2. If an emphasis removal instruction has been input, the CPU 210 proceeds from S48 to S49. Note that the CPU 210 also proceeds from S48 to S49 if an emphasis removal instruction has not been input even after a predetermined time has elapsed.
[0152] In S50, the CPU 210 (child unit registration unit 234) determines whether approval for addition has been obtained from the parent unit 201. If approval for addition has been obtained, the CPU 210 proceeds from S50 to S51. In S51, the CPU 210 (child unit registration unit 234) registers the unique information in the child unit list 253 and transmits approval for addition to the wired child unit. As a result, the wired child unit transmits setting information 254, which has been stored in advance in the storage device 221, to the added child unit that is the target of approval for addition. On the other hand, if approval for addition has not been obtained from PC2, the CPU 210 proceeds from S50 to S52. In S52, the CPU 210 (child unit registration unit 234) transmits an addition refusal to the parent unit 201. As a result, the parent unit 201 does not transmit setting information 254 to the child unit 202 that was the target of addition.
[0153] 2-2-2. Processing of wired devices (or existing devices) FIG. 37 shows a slave unit addition process executed by the CPU 220 of a wired slave unit or a slave unit 202 already participating in the industrial wireless network 204.
[0154] In S61, the CPU 220 (request receiving unit 264) determines whether or not an instruction to transition to the child unit addition mode has been received from the parent unit 201. When an instruction to transition to the child unit addition mode has been received, the CPU 220 transitions from the normal mode to the child unit addition mode, and proceeds from S61 to S62.
[0155] In S62, the CPU 220 (network construction unit 269) sets the mesh network identifier 282 in the WLAN module 223b, and constructs the additional wireless network 209. The additional slave unit also holds the mesh network identifier 282, and can therefore connect to the additional wireless network 209.
[0156] In S63, the CPU 220 (additional child device connection unit 263) determines whether or not an additional child device has connected to the additional wireless network 209. When an additional child device has connected to the additional wireless network 209, the CPU 210 advances from S63 to S64.
[0157] In S64, the CPU 220 (additional child device connection unit 263) notifies (reports) to the parent device 201 that the additional child device has been connected.
[0158] In S65, the CPU 220 (additional child device connection section 263) determines whether or not a request to acquire unique information about the added child device has been received from the parent device 201. If a request to acquire unique information has been received, the CPU 220 proceeds from S65 to S66.
[0159] In S66, the CPU 220 (additional child device connection unit 263) acquires unique information from the additional child device. For example, the added child device connection unit 263 transmits an acquisition request to the added child device.
[0160] In S67, the CPU 220 transmits to the parent device 201 the unique information of the added child device (eg, unit name, serial number).
[0161] In S68, the CPU 220 (additional child unit connection unit 263) determines whether or not an addition approval for the additional child unit has been received from the parent unit. If an addition approval has not been received (for example, if an addition refusal has been received), the CPU 220 returns from the child unit addition mode to the normal mode and ends the child unit addition process. On the other hand, if an addition approval has been received, the CPU 220 proceeds from S68 to S69.
[0162] In S69, the CPU 220 (additional child device connection section 263) reads out the setting information 254 stored in the storage device 221, and transfers the setting information 254 to the additional child device.
[0163] In S70, the CPU 220 (network construction unit 269) releases the addition wireless network 209. In addition, the CPU 220 returns from the child unit addition mode to the normal mode.
[0164] 2-2-3. Processing additional handsets 38 shows a slave unit adding process executed by the added slave unit. The CPU 220 executes the following process in accordance with the program 280.
[0165] In S81, the CPU 220 (network construction unit 269) determines whether the parent device 201 does not exist or is not registered with the parent device 201. For example, if the setting information 254 is stored in the storage device 221, the network construction unit 269 determines that the parent device 201 is registered. In this case, the CPU 220 proceeds from S81 to S91, and joins the industrial wireless network 204, which is a wireless mesh network, based on the setting information 254. On the other hand, if the setting information 254 is not stored in the storage device 221, the network construction unit 269 determines that the parent device 201 is not registered. In this case, the CPU 220 proceeds from S81 to S82.
[0166] In S82, the CPU 220 (indicator light operation unit 262) causes the indicator light 224 to flash orange.
[0167] In S83, the CPU 220 (additional child device connection unit 263) determines whether or not there is an additional wireless network 209 (existing child device). The additional child device connection unit 263 searches for an additional wireless network 209 having the same network identifier as the mesh network identifier 282 that the additional child device connection unit 263 holds. If the additional wireless network 209 already exists, the CPU 220 proceeds from S83 to S84. In S84, the CPU 220 (network construction unit 269) joins the additional wireless network 209 constructed by the existing child device. On the other hand, if the additional wireless network 209 does not exist, the CPU 220 proceeds from S83 to S93. In S93, the CPU 220 (network construction unit 269) constructs the additional wireless network 209 by itself. As a result, a plurality of additional child devices join the additional wireless network 209. Details of this example will be described later.
[0168] In S85, the CPU 220 (indicator lamp operation unit 262) lights the indicator lamp 224 in orange. Lighting in orange means setting the lighting color of the indicator lamp 224 to orange and setting the lighting mode to continuous lighting.
[0169] In S86, the CPU 220 (request receiving unit 264) determines whether or not a request to acquire unique information has been received from the parent device 201 via the additional wireless network 209. When a request to acquire unique information has been received, the CPU 220 proceeds from S86 to S87.
[0170] In S 87 , the CPU 220 (request receiving unit 264 ) reads out the unique information 283 from the storage device 221 and transmits it to the parent device 201 .
[0171] In S88, the CPU 220 (parent device / child device communication unit 266) receives the setting information 254 from the wired child device or another existing child device via the additional wireless network 209.
[0172] In S89, the CPU 220 (memory management unit 260) stores the setting information 254 in the storage device 221.
[0173] In S90, the CPU 220 (network construction unit 269) releases the additional wireless network 209.
[0174] In S91, the CPU 220 (network construction unit 269) joins the industrial wireless network 204, which is a wireless mesh network, in accordance with the setting information 254.
[0175] In S92, the CPU 220 (indicator lamp operation unit 262) turns on the indicator lamp 224 in green.
[0176] In this manner, the slave device becomes able to participate in the industrial wireless network 204 .
[0177] 2-3. Highlighting FIG. 39 shows the highlight lighting process executed by the CPU 220 of the child device 202.
[0178] In S121, the CPU 220 (request receiving unit 264) determines whether or not a highlight lighting instruction (highlight lighting request) has been received from the parent device 201. When a highlight lighting instruction has been received, the CPU 220 proceeds from S121 to S122.
[0179] In S122, the CPU 220 (indicator lamp operation unit 262) lights up the indicator lamp 224 in an emphasized manner.
[0180] In S123, the CPU 220 (request receiving unit 264) determines whether or not a highlighting cancellation instruction (highlighting cancellation request) has been received from the parent device 201. When a highlighting cancellation instruction has been received, the CPU 220 proceeds from S123 to S124.
[0181] In S124, the CPU 220 (indicator lamp operation unit 262) cancels the highlighted illumination of the indicator lamp 224.
[0182] Here, the highlighted lighting is cancelled based on the instruction to cancel the highlighted lighting, but this is merely an example. When a timer or counter has timed a certain period of time, the CPU 220 may cancel the highlighted lighting.
[0183] 2-4.Signal sequence Fig. 40 shows a signal sequence in the slave unit addition process. Here, it is assumed that when a wired slave unit is already connected to the master unit 201, another wireless slave unit will join the industrial wireless network 204. In Fig. 40, WNW is an abbreviation for wireless network.
[0184] In Sq1, the PC2 transmits an add screen request to the parent device 201, and the parent device 201 receives the add screen request. The add screen request is an implicit instruction to switch to a child device addition mode.
[0185] In Sq2, the parent device 201 transmits an instruction to the wired child device (child device 202a) to switch to the child device addition mode, and the child device 202a receives the instruction. As a result, the child device 202a switches to the child device addition mode and establishes an addition wireless network 209.
[0186] In Sq3, the parent device 201 transmits display information (such as an HTML file) for the additional screen 310 to the PC 2, which receives it. The PC 2 displays the additional screen 310 (FIG. 35) on the display unit 7 using a Web browser. Note that the order of Sq2 and Sq3 may be reversed.
[0187] In Sq4, the additional child devices (child devices 202b to 202h, etc.) discover the additional wireless network 209 and join the additional wireless network 209.
[0188] In Sq5, the child device 202a discovers an additional child device that has joined the additional wireless network 209, and transmits a notification indicating that the additional child device has been discovered to the parent device 201. The parent device 201 receives the notification.
[0189] In Sq6, the parent device 201 transfers the notification to the PC 2. Sq6 may be omitted.
[0190] In Sq7, the parent device 201 transmits an acquisition request for requesting unique information 283 of the added child device to the child device 202a, and the child device 202a receives the acquisition request.
[0191] In Sq8, the child device 202a transfers the acquisition request to the additional child device. The additional child device receives the acquisition request.
[0192] In Sq9, the added child device transmits its own unique information 283 to the child device 202a as a response to the acquisition request. The child device 202a receives the unique information 283 of the added child device.
[0193] In Sq10, the child device 202a transfers unique information 283 of the added child device to the parent device 201. The parent device 201 receives unique information 283 of the added child device.
[0194] In Sq11, the parent unit 201 creates (updates) an addition screen 310 that reflects the unique information 283 of the added child unit, and transmits the updated addition screen 310 to the PC2. The PC2 receives the updated addition screen 310 (FIG. 36) and displays it on the display unit 7. This allows the user to check the unique information (e.g., unit name and serial number) of the added child unit. The unique information is generally printed on the box in which the child unit 202 is packed, the instruction manual, and the warranty card, and the user can check the unique information. In other words, the user can check through the addition screen 310 whether the child unit that the user wishes to have join the industrial wireless network 204 has actually been detected as an added child unit.
[0195] In Sq12, PC2 transmits approval for addition to parent device 201 based on a user operation, and parent device 201 receives the approval for addition. The approval for addition may include unique information of child device 202 approved for addition. This allows a distinction to be made between child device 202 approved for addition and child device 202 rejected for addition. Parent device 201 registers unique information 283 of child device 202 approved for addition in child device list 253.
[0196] In Sq13, the parent device 201 transfers the addition approval to the child device 202a. The child device 202a receives the addition approval.
[0197] In Sq14, the parent device 201 transmits the setting information 254 to the additional child device whose addition has been approved. The additional child device whose addition has been approved receives the setting information 254 (including the mesh network identifier 281) and stores it in the storage device 221.
[0198] In Sq15, the additional slave device joins the industrial wireless network 204 according to the setting information 254.
[0199] In Sq16, the parent device 201 transmits an instruction to end the child device addition mode to the existing child devices (child device 202a) including the wired child devices. The existing child devices (child device 202a) including the wired child devices return (transition) from the child device addition mode to the normal mode.
[0200] <Other examples of adding child units (bulk registration)> In the above example, the wired slave unit is first registered in the parent device 201, and then the wireless slave unit is added. However, as shown in Fig. 41, a plurality of slave units 202a, 202e, and 202f including a wired slave unit may be registered in the parent device 201 in parallel at the same time.
[0201] In this case, as shown in Fig. 42, the multiple child devices 202a, 202e, and 202f do not have the setting information 254, and therefore establish an addition wireless network 209. The multiple child devices 202a, 202e, and 202f acquire the setting information 254 from the parent device 201 through the addition wireless network 209. Then, as shown in Fig. 43, the multiple child devices 202a, 202e, and 202f join the industrial wireless network 204 based on the setting information 254.
[0202] Fig. 44 is a sequence diagram of this example. Since the child devices 202a, 202e, and 202f are not yet registered, the indicator lights 224 may blink orange. When the parent device 201 is accessed by the PC2, the parent device 201 may execute user authentication by having the PC2 input a login ID and a password.
[0203] In Sq21, PC2 transmits a request for an additional screen to parent device 201, and parent device 201 receives the request for an additional screen.
[0204] In Sq22, the parent device 201 transmits a network construction instruction to the child device 202a.
[0205] In Sq23, the parent device 201 transmits display information (such as an HTML file) for the additional screen 310 to the PC 2, which receives it. The PC 2 displays the additional screen 310 (FIG. 35) on the display unit 7. The order of Sq32 and Sq23 may be reversed.
[0206] In Sq24, the child devices 202a, 202e, and 202f construct an additional wireless network 209 based on the NW construction instruction. This allows not only the child device 202a, which is a wired child device, but also the child devices 202e and 202f, which are wireless child devices, to communicate with the parent device 201. The child devices 202a, 202e, and 202f may each turn on an indicator light 224 in orange.
[0207] In Sq25, parent device 201 broadcasts a search packet for searching for child devices 202a, 202e, and 202f.
[0208] In Sq26, the child devices 202a, 202e, and 202f transmit the unique information 283 to the parent device 201 as a response to the search packet.
[0209] In Sq27, the parent device 201 updates the added screen 310 with the unique information 283 of the discovered child devices 202a, 202e, and 202f. As a result, the PC 2 displays the updated added screen 310 on the display unit 7.
[0210] In Sq28, PC2 transmits approval for addition to parent device 201 based on a user operation, and parent device 201 receives the approval for addition. The approval for addition may include unique information of child devices 202a, 202e, and 202f approved for addition. This allows a distinction to be made between child devices 202 approved for addition and child devices 202 rejected for addition. Parent device 201 registers unique information 283 of child devices 202a, 202e, and 202f approved for addition in child device list 253.
[0211] In Sq29, the parent device 201 transmits the setting information 254 to the child devices 202a, 202e, and 202f whose addition has been approved. The child devices 202a, 202e, and 202f whose addition has been approved receive the setting information 254 (including the mesh network identifier 281) and store it in the storage device 221.
[0212] In Sq30, the slave units 202a, 202e, and 202f join the industrial wireless network 204 in accordance with the setting information 254. The slave units 202a, 202e, and 202f may each turn on the indicator light 224 in green.
[0213] In Sq31, the parent device 201 updates the addition screen 310 to indicate that the child devices 202a, 202e, and 202f have been connected. The PC 2 displays the updated addition screen 310 on the display unit 7.
[0214] In this manner, a plurality of child devices 202 may be registered simultaneously in parallel. Note that the child device 202 that has received a request for emphasis lighting from the PC 2 may emphasize lighting (e.g., increase brightness) the indicator lamp 224 in accordance with the request for emphasis lighting.
[0215] <Settings change process> The PC2 can connect to the parent device 201 and change the setting information 254. In this case, the changed setting information 254 must be propagated (distributed) to each child device 202 participating in the industrial wireless network 204.
[0216] Fig. 45 shows the setting change process executed in the parent device 201. The difference between Fig. 45 and Fig. 20 is that S6 is added after S5. In S6, the CPU 210 (request transmission unit 232, parent device / child device communication unit 236) detects that the setting information 254 has been changed, and transmits (broadcasts) a setting change request including the changed setting information 254 to the industrial wireless network 204. Note that the CPU 210 may wait for a response to the setting change request before transmitting the setting information 254 to the child device 202.
[0217] 46 shows the setting change process of the child device 202. Here, it is assumed that the setting change request and the setting information 254 are received separately. Of course, the setting change request and the setting information 254 may be received together.
[0218] In S101, the CPU 220 (request receiving unit 264, parent / child device communication unit 266) determines whether or not a setting change request has been received. When a setting change request has been received, the CPU 220 proceeds from S101 to S102.
[0219] In S102, the CPU 220 (request receiving unit 264, parent / child device communication unit 266) receives the setting information 254 from the parent device 201.
[0220] In S103, the CPU 220 (memory management unit 260) stores the received setting information 254 in the storage device 221.
[0221] In S104, the CPU 220 judges whether or not there is another child device 202 connected to the self device. Each child device 202 holds the network address (e.g., MAC address, etc.) of the child device 202 that is the next hop in the storage device 221, and knows whether or not there is another child device 202 connected to the self device. If the parent device 201 does not broadcast the setting information, the setting information 254 needs to be propagated to the other child devices 202 in S104 and S105. Therefore, in the case where the setting information 254 is broadcast, S104 and S105 are unnecessary. If there is no other child device 202 connected to the self device, the CPU 220 proceeds from S104 to S106. If there is another child device 202 connected to the self device, the CPU 220 proceeds from S104 to S105.
[0222] In S105, the CPU 220 distributes the setting information 254 to the other child devices 202. The other child devices 202 store the distributed setting information 254 in the storage device 221.
[0223] In S106, the CPU 220 reconstructs the wireless mesh network (industrial wireless network 204) based on the updated setting information 254. As a result, the updated setting information 254 is reflected in the industrial wireless network 204.
[0224] The setting change request may be used when writing the setting information 254 to the added child device in the child device addition process.
[0225] <Removal of child device> FIG. 47 shows a deletion screen 320 for deleting any of the slave units 202 connected to the industrial wireless network 204. As already described, the list 315 is a list of the connected slave units 202. The unit name 312 and the serial number 314 are listed for each slave unit 202. The button 313 is a button for highlighting and lighting the indicator light 224 of the corresponding slave unit 202. The check box 317 is a control object for selecting the slave unit 202 to be deleted. Note that, if a wired slave unit is deleted, the industrial wireless network 204 is disconnected from the master unit 201, so deletion of the wired slave unit may be prohibited. For example, the check box 317 corresponding to the wired slave unit may not be displayed or may be made unselectable. The delete button 318 is a button for instructing the CPU 210 to delete the selected slave unit.
[0226] FIG. 48 shows the deletion process executed by the CPU 220 of the parent device 201.
[0227] In S161, the CPU 210 (screen providing unit 240) determines whether or not a delete screen request has been received from the PC 2. The delete screen request may be an access request to the URL of a Web page corresponding to the delete screen 320. When the delete screen request is received, the CPU 210 proceeds from S161 to S162.
[0228] In S162, the CPU 210 (screen providing unit 240) provides the deletion screen 320 (HTML file, CSS file, image file) to the PC 2 which is the setting device.
[0229] In S163, the CPU 210 (user input receiving unit 239) receives the selection of the child unit to be deleted. As described above, the child unit 202 with the check box 317 checked is the child unit to be deleted.
[0230] In S164, the CPU 210 (user input receiving unit 239) determines whether or not a delete instruction has been input by the user. If a delete instruction has been input, the CPU 210 proceeds from S164 to S165.
[0231] In S165, the CPU 210 (child unit registration unit 234) deletes the selected child unit 202 from the child unit list 253.
[0232] In S166 , the CPU 210 (request transmission unit 232 ) transmits a deletion request to the selected child device 202 .
[0233] FIG. 49 shows the deletion process executed by the CPU 220 of the child device 202 .
[0234] In S181, the CPU 220 (request receiving unit 264) determines whether or not a deletion request has been received from the parent device 201. If a deletion request has been received, the CPU 220 proceeds from S181 to S182.
[0235] In S182, the CPU 220 (memory management unit 260) deletes the setting information 284 (and the mesh network identifier 281) from the storage device 221.
[0236] In S183, the CPU 220 (network management unit 268) turns off the WLAN module 223a and leaves the industrial wireless network 204.
[0237] In S184, the CPU 220 (indicator light operation unit 262) blinks the indicator light 224 in orange. This allows the user to easily understand which child device 202 has become unregistered. In the child device deletion process described above, it is assumed that the child device to be deleted is powered on when the deletion request is issued. There may be a case where the child device to be deleted is powered off when the deletion request is issued. In this case, for example, the parent device may store a unique identifier of the target child device. After the target child device is powered on next time, the parent device may be configured to automatically transmit a deletion request to the target child device at the timing specified by the user or when the parent device recognizes that the target child device is powered on. When the target child device receives the deletion request from the parent device, it withdraws from the industrial wireless network 204.
[0238] <Other> Although the case where the additional slave unit is connected to the wired slave unit has been mainly described, the additional slave unit may be connected to a wireless slave unit connected to the wired slave unit. In this case, a plurality of slave units 202 relay communication between the parent unit 201 and the additional slave unit.
[0239] When an additional handset is connected to an existing handset, the existing device may apply authentication processing to the additional handset, such as a 4-way handshake.
[0240] The next hop can be dynamically changed for each of the multiple child devices 202 participating in the industrial wireless network 204. For example, the next hop of the child device 202e in Fig. 14 is the child device 202d, but the next hop of the child device 202e may be changed to the child device 202b. This is because when the wireless environment changes, the next hop that allows more stable communication also changes.
[0241] A plurality of blinking methods may be provided. The first blinking method is a method in which the brightness gradually increases and gradually decreases, repeatedly. The first blinking method may be applied, for example, to a state in which a connection to the additional wireless network 209 is being attempted (orange blinking) and a state in which a connection to the industrial wireless network 204 is being attempted (green blinking). The second blinking method is a method in which lighting at a first brightness (e.g., 100%) and lighting at a second brightness (e.g., 0%) are repeated. The cycle of the first blinking method may be longer than the cycle of the second blinking method. That is, the first blinking method may be a method in which the brightness changes gradually. On the other hand, the second blinking method may be a method in which the brightness changes more quickly. The second blinking method may be adopted for the highlighted lighting described above.
[0242] <First Use Case> The industrial wireless network 204 described above can be used for various purposes and applications in the FA field. For example, as the first use case, it can be used in the generation phase of the operation record, which has been described in detail using Figs. 1 to 12. This will be described with reference to Fig. 50.
[0243] FIG. 50 is a sequence diagram for explaining a case where data of the target device 203c is included as data periodically collected in the ring buffer 36 of the PLC1 (FIG. 3). As described above, various data are collected in the ring buffer 36 of the PLC1 to generate an operation record. For example, data obtained from the field device 10 connected to the extension unit 4b of the PLC1 by wire, that is, data obtained without going through the industrial wireless network 204 (through a wire), is collected at a scan period (for example, several ms or less) as a preset period. However, when trying to obtain data from the target device 203c through the industrial wireless network 204, it may be difficult to collect data at the scan period due to a delay (for example, several tens to several hundreds ms) caused by wireless communication.
[0244] Therefore, as shown in FIG. 50, an "update interval" is set, which determines the interval at which the PLC1 requests data from the target device 203c. Specifically, the user sets the update interval via the PC2, and the set update interval is stored in the project storage unit 35 of the PLC1. In addition, the user may set an IP address for identifying the location of the target device 203c via the PC2, or set information for identifying data to be collected in the target device 203c. For example, if another PLC is considered as the target device 203c (when the so-called PLC link function is used), an IP address for identifying the location of the other PLC may be set, and a device type, device number, number of words from the first device number, etc. to be collected in the other PLC may be set. Various information (such as IP address) set in this way is stored in the project storage unit 35 of the PLC1.
[0245] In FIG. 50, the CPU 31 of the PLC1 communicates with the target device 203c based on the contents stored in the project storage unit 35. That is, the CPU 31 transmits a data request to the target device 203c via the master device 201, the slave device 202a, the slave device 202b, and the slave device 202c, which are connected to the CPU 31 by wire. The target device 203c that receives the data request transmits the data previously specified (set) as described above to the PLC1 via the slave device 202c, the slave device 202b, the slave device 202a, and the master device 201. The PLC1 stores the received data in the ring buffer 36. By repeating the above-mentioned data request and data transmission at the above-mentioned predetermined update interval, the time-series data from the target device 203c is collected in the ring buffer 36 of the PLC1. In this case, in the ring buffer 36, data collected at the scan period (data obtained from the field device 10) and data collected at the predetermined update interval (target device 203c) are mixed. Thereafter, when the storage trigger condition is satisfied, data for a predetermined period of time out of the data stored in the ring buffer 36 is stored in the driving record storage unit 37, and a driving record is generated. Note that the predetermined period for determining the data to be stored may be set by the user via the PC 2, and stored in the project storage unit 35 of the PLC 1.
[0246] In this way, according to the first use case, it is possible to include data from the target device 203c in the operation record via the industrial wireless network 204. In this embodiment, the ring buffer 36 for generating the operation record is provided in the PLC 1, but the present invention is not limited to this, and may be provided, for example, in the master unit 201. In the industrial wireless system according to this embodiment, the master unit (management unit) and the slave unit (wireless communication circuit) are separated, so that such functional expansion of the master unit 201 can be easily performed.
[0247] <Second Use Case> As a second use case, the industrial wireless network 204 can also be used to check the analysis report of the driving record generated in the first use case.
[0248] Specifically, as described above, the expansion unit (analysis unit) 4a of the PLC 1 creates an analysis report of the driving records stored in the driving record storage unit 37, and provides it to a Web browser 60 external to the PLC 1. An example of a device having a Web browser 60 is a PC 2. As shown in Figs. 14 and 28, the PC 2 may be wirelessly connected not only to the parent unit 201, but also to any of the child units 202a to 202f that constitute an industrial wireless network 204.
[0249] 51, for example, PC2 connected to slave unit 202a transmits a data request for the analysis report to slave unit 202a, master unit 201, and PLC 1. In other words, PC2 may access the memory of PLC 1 in which the analysis report is saved (driving record storage unit 37 of PLC 1 if the analysis report is included in the driving record; a memory for saving the analysis report other than driving record storage unit 37 may also be provided separately), and read out and play back the analysis report.
[0250] At this time, the update interval (FIG. 50) described above may be set to an interval that takes into consideration delays caused by wireless communication. This makes it easier for PC2 to smoothly repeat partial reading and partial playback of the analysis report, such as so-called streaming playback. Of course, it is also conceivable to first download the entire analysis report to PC2, and then play the analysis report on PC2.
[0251] <Third Use Case> As another example, as a third use case, the industrial wireless network 204 can also be used to monitor time-series device values acquired in real time from the PLC 1.
[0252] As described above, the PC2 may be wirelessly connected to any one of the slave units 202a to 202f constituting the industrial wireless network 204. As illustrated in FIG. 52, the PC2 may be connected to the slave unit 202a. In this case, in order to monitor the time-series device values recorded in the target device 203c (e.g., PLC), the PC2 transmits a data request to the target device 203c via the slave units 202a, 202b, and 202c, and acquires and displays real-time data (e.g., device values). By setting an appropriate update interval, the PC2 can monitor the time-series device values recorded in the PLC1. As described above, the PC2 may be replaced by a programmable display.
[0253] <Fourth Use Case> As another example, as a fourth use case, the industrial wireless network 204 can also be used for debugging a ladder program executed in the PLC1.
[0254] Conventionally, in order to debug a ladder program, the system designer had to go to the location where the PLC 1 is installed, connect the PC 2 to the ladder program, and debug while verifying the operation of the PLC 1. However, by utilizing the industrial wireless network 204 according to this embodiment, it is possible to debug the ladder program without going to the location where the PLC 1 is installed.
[0255] As shown in FIG. 53, PC2 connects to the slave unit 202a and transmits a data request (a read request for a ladder program) to the target device 203c (e.g., PLC1) via the slave units 202a, 202b, and 202c. In response to the data request, the target device 203c transmits the ladder program to PC2. The ladder program is transferred to PC2 via the slave units 202c, 202b, and 202a. PC2 edits the ladder program according to a user operation. PC2 transmits a write request for the edited ladder program to the target device 203c via the slave units 202a, 202b, and 202c, and writes the ladder program to the target device 203c, which is PLC1. After that, PC2 executes a debug process by transmitting an operation trial command for the ladder program written to PLC1 via the slave units 202a, 202b, and 202c. PC2 may obtain device values from PLC1 during debugging and display the device values in association with the ladder program.
[0256] <Reducing congestion on the industrial wireless network 204> 1. Concept As shown in FIG. 14, when many slave devices 202 join the industrial wireless network 204, the industrial wireless network 204 becomes congested, causing delays in communication packets transmitted between the PLC1 and the multiple target devices 203, or communication packets being lost. For example, when a part of a time-series device value that is set to be collected at a certain update interval is lost, a gap occurs in the time-series data in the PC2, which is a programmable display device, and the PLC1, which is a data utilization unit. In this case, accurate display and accurate analysis may become impossible. Furthermore, when the PC2 joins the industrial wireless network 204, the congestion of the industrial wireless network 204 may become even more serious. On the other hand, the slave device 202 has an access point function. For example, the WLAN module 223a may connect to the industrial wireless network 204, and the WLAN module 223c may operate as an access point.
[0257] Therefore, in this embodiment, the industrial wireless network 204 that transfers data between the PLC1 and the target device 203 is separated from the wireless network accessed by the PC2, thereby suppressing congestion on the industrial wireless network 204. This suppresses delays in data transfer in the industrial wireless system, and enables data to be displayed smoothly on mobile devices such as the PC2.
[0258] 2. Construction example FIG. 54 is a diagram showing an example of constructing two types of wireless networks. Here, PLC1 including a data utilization unit is written as PLC1a. PLC1a is connected to a parent unit 201 by wire. Parent unit 201 is connected to child unit 202a by wire via a network cable 600. Child units 202a, 202b, and 202c construct an industrial wireless network 204, which is a wireless mesh network. PLC1a collects various data (e.g., device values) required for analysis from PLC1b via parent unit 201 and industrial wireless network 204, analyzes the collected data, and stores the analysis results.
[0259] Furthermore, child device 202a, child device 202b, and child device 202c respectively establish wireless LAN networks 901a, 901b, and 901c. PC 2 connects to any of wireless LAN networks 901a, 901b, and 901c, accesses PLC 1a, and acquires analysis results and the like to display on display unit 7.
[0260] Alternatively, PC2 may connect to any one of the wireless LAN networks 901a, 901b, and 901c, access PLC 1b, acquire real-time data, and display it on the display unit 7. PC2 may connect to any one of the wireless LAN networks 901a, 901b, and 901c, access PLC 1b, read out and edit the ladder program, and transfer the ladder program to PLC 1b again and write it. Furthermore, PC2 may connect to any one of the wireless LAN networks 901a, 901b, and 901c, access PLC 1b, send a test run command to PLC 1b, and execute debugging of the ladder program.
[0261] Here, the network identification information (SSID) of the wireless LAN networks 901a, 901b, and 901c may be the same or different. When a specific PC2 is to be allowed to access a specific child device 202 (e.g., child device 202a), only a specific SSID is set for the specific PC2 and the specific child device 202 (e.g., child device 202a). This allows the specific PC2 to access only the specific child device 202.
[0262] Fig. 55 is a diagram showing an example of constructing two types of wireless networks. In this example, the access point function of the child device 202a is set to ON (enabled). The access point functions of the child devices 202b and 202c are each set to OFF (disabled). Therefore, only the child device 202a constructs the wireless LAN network 901. PC2 can only access the child device 202a.
[0263] Fig. 56 is a diagram showing an example of constructing two types of wireless networks. In this example, the access point functions of the child devices 202a and 202c are set to ON. The access point function of the child device 202b is set to OFF. PC2 is located near the child device 202c, and the reception strength of the radio wave transmitted from the child device 202c is stronger than the reception strength of the radio wave transmitted from the child device 202a. Therefore, PC2 accesses the wireless LAN network 901c constructed by the child device 202c.
[0264] 3. Settings UI 3-1. Common Settings UI 57 is an example of a setting screen 300 displayed on the display unit 7 of the PC 2. The same reference numerals are given to parts that have already been described, and the description thereof is incorporated herein by reference. The setting screen 300 is provided to the PC 2 by the screen providing unit 240 and displayed thereon. An input operation by the user on the setting screen 300 is received by the user input receiving unit 249.
[0265] 21, the setting screen 300 shown in Fig. 57 additionally includes an access point function switching section 330, an SSID setting section 331, a frequency setting section 332, and a channel setting section 333. In this example, it is assumed that the access point function is set in common for all the slave units 202 participating in the industrial wireless network 204.
[0266] Switching unit 330 is a radio button for switching the access point function on / off. When on is selected in switching unit 330, operations of SSID setting unit 331, frequency setting unit 332, and channel setting unit 333 are enabled. When off is selected in switching unit 330, SSID setting unit 331, frequency setting unit 332, and channel setting unit 333 are grayed out, and the user may not be able to set them.
[0267] The SSID setting section 331 is a text box that accepts input of the SSID of the wireless LAN network established by the access point function of the child device 202. The frequency setting section 332 is a menu that accepts selection of a frequency band of the wireless LAN network established by the access point function of the child device 202. The channel setting section 333 is a menu that accepts selection of a channel to be used in the wireless LAN network established by the access point function of the child device 202.
[0268] The slave device management unit 231 writes the access point function on / off, SSID, frequency band (e.g., 2.4 GHz, 5 GHz (5.2 GHz, 5.3 GHz, 5.6 GHz), 6 GHz), and channel, which are input via the setting screen 300, into the setting information 254. As described above, the setting information 254 is transferred to and written into all the slave devices 202 registered in the slave device list 253. Thus, all the slave devices 202 establish the wireless LAN network 901 according to the setting information 254.
[0269] 57, the encryption key may also be accepted through the setting screen 300. Similarly, the encryption method may also be accepted through the setting screen 300.
[0270] 3-2. Individual Settings UI 58 shows a slave setting screen 350 that is provided individually by a slave unit 202 participating in the industrial wireless network 204 or that is provided by the setting screen management unit 238 of the master unit 201. In the former case, the PC2 accesses the slave unit management unit 261 (e.g., a Web browser) of each slave unit 202 via the master unit 201, receives the slave setting screen 350 from the slave unit 202, and displays it on the display unit 7. In the latter case, the PC2 accesses the setting screen management unit 238 (e.g., a Web browser) of the master unit 201, receives the slave setting screen 350, and displays it on the display unit 7. When there are multiple slave units 202, the setting screen management unit 238 may first have the user select one slave unit 202 from the multiple slave units 202, and then provide the slave setting screen 350 for the selected slave unit 202 to the PC2.
[0271] As described with reference to Fig. 57, the child device setting screen 350 has an access point function switching section 330, an SSID setting section 331, a frequency setting section 332, and a channel setting section 333. The PC 2 may set the access point function of the child device 202a to ON through the child device setting screen 350, and may set the access point function of the child devices 202b and 202c to OFF through the child device setting screen 350. This results in the construction of a wireless LAN network 901 as illustrated in Fig. 55.
[0272] Similarly, PC2 may set the access point functions of child devices 202a and 202c to ON via child device setting screen 350, and may set the access point function of child device 202b to OFF via child device setting screen 350. This results in the construction of wireless LAN networks 901a and 901b as shown in FIG.
[0273] 58, the encryption key may also be accepted through the setting screen 300. Similarly, the encryption method may also be accepted through the setting screen 300.
[0274] 4. Reduce the number of hops It is desirable to achieve as low a delay as possible in the industrial wireless network 204. Therefore, when constructing the industrial wireless network 204, the slave management unit 231 of the master unit 201 creates a next hop table so that the number of hops between the multiple slave units 202 is as small as possible.
[0275] The slave management unit 231 of the master unit 201 executes keep-alive for all the slave units 202 registered in the slave unit list 253, thereby monitoring whether or not each of the slave units 202 has been lost. When the slave management unit 231 detects that any of the slave units 202 has been lost, it executes reconstruction of the industrial wireless network 204. That is, the wireless communication path for each of the slave units 202 is reconstructed.
[0276] Note that a child device 202 located at a higher level in the industrial wireless network 204 may execute keep-alive for another child device 202 located at a lower level. When the network management unit 268 of the child device 202 located at a higher level detects the loss of another child device 202 located at a lower level, the network management unit 268 may request the parent device 201 to reconstruct the industrial wireless network 204. This will enable the industrial wireless network 204 to recover from the wireless failure.
[0277] <Collecting device values and status information> 1. Concept FIG. 59 is a diagram for explaining the process of collecting operation history from target devices 203 such as PLCs 1a and 1b, the process of collecting status information indicating wireless status from a slave unit 202, and the process of displaying analysis results in an industrial wireless system 200. As an example, a master unit 201 and a slave unit 202a form a root node. PLC 1a includes a function of collecting device values and an analysis unit (data utilization unit) that executes analysis processing of the collected device values, and is connected to the master unit 201 by wire. PLC 1b has a function of collecting device values, but may not include an analysis unit (data utilization unit) that executes analysis processing of the collected device values. Alternatively, PLC 1b may not have a function of collecting device values. In any case, the device values of PLC 1b are ultimately collected by the collection unit 72 of PLC 1a.
[0278] PC2a is a setting support device that sets PLCs 1a and 1b, parent device 201, and child device 202. PC2b is a display that displays analysis results and the like. Therefore, PC2b may be a programmable display. PC2a and PC2b may be one PC2. PC2b is wirelessly connected to child device 202a via wireless LAN network 901a.
[0279] The slave devices 202a, 202b, and 202c form an industrial wireless network 204. The slave device 202b is a relay node, and in this example, no industrial device is connected to it. The slave device 202c is connected to the PLC1b, which is an industrial device.
[0280] PLC 1a collects device values and the like within PLC 1a according to the collection settings set by PC 2a, and also collects device values and the like from PLC 1b. Furthermore, PLC 1a collects the wireless status (individual status information 256) of each of slave units 202a to 202c via master unit 201. These collection processes may be executed in parallel. This indirectly synchronizes the collection times.
[0281] 59, in Sq51, PLC1a transmits a data request to PLC1b regarding device values (such as operation history) to be collected. PLC1b receives the data request from PLC1a via the industrial wireless network 204.
[0282] In Sq52, PLC 1b transmits the operation history (e.g., device values) collected in PLC 1b to PLC 1a via the industrial wireless network 204. PLC 1a stores the operation history (operation log 76) of each of PLC 1a and PLC 1b in the operation record storage unit 37.
[0283] Incidentally, when PLC1a and PLC1b have established a PLC link, PLC1a can directly collect a specific device value from the device memory of PLC1b. The PLC link associates a device name in PLC1a with a device name in PLC1b, and a device value stored in a certain device in PLC1b is also stored in a specific device in PLC1a. This may be realized by a refresh process that is executed for each scan. In other words, for each scan, a device value stored in a first device in PLC1a and a device value stored in a second device in PLC1b are synchronized. The first device and the second device are associated with each other by the PLC link.
[0284] In Sq53, the parent device 201 transmits to the child device 202a a data request for the individual status information 256. The child device 202a receives the data request from the parent device 201 via a wired connection.
[0285] In Sq54, the child device 202a reads out the individual status information 256 from its own storage device 221 and transmits it to the parent device 201. The parent device 201 receives the individual status information 256 of the child device 202a and stores the individual status information 256 in a predetermined device (device memory) based on the memory map.
[0286] In Sq55, the parent unit 201 transmits to the child unit 202b a data request for the individual status information 256. The child unit 202b receives the data request from the parent unit 201 via the industrial wireless network 204.
[0287] In Sq56, child device 202b reads out individual status information 256 from its own storage device 221 and transmits it to parent device 201. Parent device 201 receives individual status information 256 of child device 202b, and stores individual status information 256 in a predetermined device (device memory) based on the memory map.
[0288] In Sq57, the parent unit 201 transmits to the child unit 202c a data request for the individual status information 256. The child unit 202c receives the data request from the parent unit 201 via the industrial wireless network 204.
[0289] In Sq58, the child device 202c reads out the individual status information 256 from its own storage device 221 and transmits it to the parent device 201. The parent device 201 receives the individual status information 256 of the child device 202c, and stores the individual status information 256 in a predetermined device (device memory) based on the memory map.
[0290] In Sq59, PLC 1a transmits a data request for the status information group 255 to the master unit 201. The master unit 201 receives the data request from PLC 1a.
[0291] In Sq60, the master unit 201 reads out the status information group 255 from the storage device 211 and transmits it to the PLC 1a. The PLC 1a receives the status information group 255 from the master unit 201 and stores it in the operation record storage unit 37.
[0292] Regarding Sq59 and Sq60, CPU 31 of PLC 1a may be able to directly access the device memory in which status information group 255 is stored, of storage device 211 of parent device 201. In this case, CPU 31 can directly collect status information group 255 from storage device 211 of parent device 201. Access to the device memory of parent device 201 by collection unit 72 may be achieved through a PLC link.
[0293] The PLC 1a analyzes the collected driving records 74 (driving history) and creates an analysis result 77. This makes it possible to provide the analysis result to the PC 2b via the Web server 82.
[0294] In Sq71, PC2b or the programmable display device accesses the child device 202a via the wireless LAN network 901a and transmits a data request to PLC1a (e.g., an HTTP request for requesting a Web page that displays the analysis results). The Web server 82 of PLC1a receives the data request from PC2b.
[0295] In Sq72, the Web server 82 of the PLC 1a transmits display data corresponding to the data request to the PC 2b. The display data is transferred to the PC 2b via the parent device 201, the child device 202a, and the wireless LAN network 901a. When the PC 2b receives the display data, it displays the display data of the analysis results on the Web browser 60.
[0296] 2. Flowchart 2-1.Setting support device 60 shows the setting process in the PC 2a functioning as a setting support device. S201 to S203 show the collection setting process for the PLC 1a. S204 to S205 show the collection setting process for the PLC 1b. S206 to S207 show the setting process for the parent device 201.
[0297] In S201, the CPU 11 executes collection settings for the operation history of the PLC 1a in accordance with a user instruction input from the operation unit 8. For example, device values (device names) to be collected, collection timing, and the like are set.
[0298] In S202, the CPU 11 executes collection settings for collection of wireless status by the PLC 1a from the master unit 201 in accordance with a user instruction input from the operation unit 8. The timing for the PLC 1a to collect the status information group 255 from the master unit 201 and the like are determined by this setting.
[0299] In S203, the CPU 11 transmits a collection setting to the PLC 1a to start collection, whereby the operation history in the PLC 1a and the wireless status of the child devices 202a to 202c are collected.
[0300] In S204, the CPU 11 executes collection settings for the operation history in PLC 1b in accordance with a user instruction input from the operation unit 8. The device values (device names) to be collected, collection timing, etc. are set. As a result, the operation history is collected inside PLC 1b.
[0301] In S205, the CPU 11 transmits the collection setting to the PLC 1b and starts collection.
[0302] In S206, the CPU 11 executes wireless network setting in accordance with a user instruction input from the operation unit 8. As a result, setting information 254 for the industrial wireless network 204 and the wireless LAN network 901 is created.
[0303] In S207, the CPU 11 executes collection setting for the master unit 201 to collect wireless states (individual state information 256) from the slave units 202a to 202c in accordance with a user instruction input from the operation unit 8. This collection setting is also stored in the setting information 254.
[0304] In S208, the CPU 11 causes the parent device 201 to start collecting the wireless status. The parent device 201 establishes the industrial wireless network 204 and the wireless LAN network 901 by transferring the setting information 254 to the child devices 202a to 202b. Furthermore, the parent device 201 collects the wireless status (individual status information 256) from the child devices 202a to 202c in accordance with the collection setting included in the setting information 254. The parent device 201 stores the individual status information 256 from the child devices 202a to 202c in a predetermined device memory based on the memory map included in the collection setting.
[0305] 2-2. Collection of operation history (device values) from PLC1b by PLC1a FIG. 61 shows a collection process for data of PLC 1b executed by the CPU 31 of PLC 1a.
[0306] In S221, the CPU 31 (collection unit 72) of the PLC 1a transmits a data request for the operation history (device values) to the other PLC 1b in accordance with the collection setting.
[0307] In S222, the CPU 31 (collection unit 72) of the PLC 1a receives data (operation history or device values) from the PLC 1b.
[0308] In S223, the CPU 31 (logging unit 73) of the PLC 1a stores the operation history (device values) of the PLC 1b in the device memory.
[0309] 2-3. Data request to parent unit Fig. 62 shows a collection process of the wireless status executed by the CPU 31 of the PLC 1a. The collection process shown in Fig. 61 and the collection process shown in Fig. 62 may be executed in parallel.
[0310] In S231, the CPU 31 (collection unit 72) of the PLC 1a transmits, to the parent device 201, a data request for the status information group 255, which is a collection of the individual status information 256 for the child devices 202a to 202c, in accordance with the collection setting.
[0311] In S232, the CPU 31 (collection unit 72) of the PLC 1a receives the data (the status information group 255) from the parent device 201.
[0312] In S233, the CPU 31 (logging unit 73) of the PLC 1a stores the data (status information group 255) in the device memory (operation record storage unit 37) in accordance with the collection settings.
[0313] 2-4. Collection process of individual status information 256 by parent device 201 FIG. 63 shows the collection process executed by the CPU 210 of the parent device 201 .
[0314] In S241, the CPU 210 (memory allocation unit 248) allocates memory (device memory) for storing the state information group 255 in the storage device 211 based on the memory map in the collection setting included in the setting information 254.
[0315] In S242, the CPU 210 (status collection unit 245) selects a child device 202 to be collected from the multiple child devices 202a to 202c registered in the child device list 253. This selection may be random, or may be made in the order of registration in the child device list 253.
[0316] In S243, the CPU 210 (status collection unit 245) transmits a data request for the individual status information 256 to the child devices 202 that are the targets of collection.
[0317] In S244, the CPU 210 (status collection unit 245) receives data (individual status information 256) from the slave unit 202 that is the collection target.
[0318] In S245, the CPU 210 (status collection unit 245) stores data (individual status information 256 of the slave unit 202 to be collected) in the device memory based on the memory map.
[0319] In S246, the CPU 210 (status collection unit 245) determines whether data collection is complete for all child units 202a to 202c registered in the child unit list 253. If data collection is not complete, the CPU 210 returns to S242 and selects the next child unit 202 to be collected from the child unit list 253. Thereafter, the CPU 210 repeats S242 to S246. When data collection is complete for all child units 202a to 202c, the CPU 210 ends the collection process.
[0320] 2-5. Creation and provision of display data of analysis results by PLC1a FIG. 64 shows the process of creating and providing display data of the analysis result, which is executed by the CPU 41a of the PLC 1a.
[0321] In S251, the CPU 41a (analysis unit 83) determines whether a predetermined event (trouble) has occurred. This event is an event that triggers the start of analysis of the operation history (operation log 76). For example, the predetermined event may be a change in the device value of a predetermined relay device (1-bit device memory) from 0 to 1. If the predetermined event has occurred, the CPU 41a proceeds from S251 to S252. If the predetermined event has not occurred, the CPU 41a proceeds from S251 to S261.
[0322] In S252, the CPU 41a (analysis unit 83) executes an analysis of the operation history (operation log 76) and creates the analysis result 77.
[0323] In S253, the CPU 41a (analysis unit 83) creates display data (for example, an HTML file, a CSS file, a script, or image data) for the analysis result 77.
[0324] In S261, the CPU 41a (Web server 82) determines whether or not a display request for the analysis result has been received from the PC 2b. If a display request has been received, the CPU 41a proceeds from S261 to S262. If a display request has not been received, the CPU 41a ends the creation process and the provision process.
[0325] In S261, the CPU 41a (Web server 82) transmits display data (e.g., HTML file, CSS file, script, image data) of the analysis result 77 to the PC 2b. The Web browser 60 of the PC 2b displays the analysis result 77 based on the display data (e.g., HTML file, CSS file, script, image data).
[0326] 3. User Interface 3-1. Real-time monitoring 65 shows an example of real-time data displayed on the display unit 7 or on a programmable display device by a Web browser 60 executing a Web application 61. Here, it is assumed that the Web application 61 is an application that realizes real-time monitoring of device values and wireless status.
[0327] The real-time monitoring UI 400 is a user interface provided by the Web application 61. The display area 401 displays a graph of device values (time series data) acquired in real time within PLC 1a. The display area 402 displays a graph of device values (time series data) acquired in real time by PLC 1a from PLC 1b. The display area 403 is a display area that displays the wireless status (status information group 255, time series data) collected in real time by the parent device 201.
[0328] Here, the device values and wireless statuses selected as display targets are collected in real time by the collection unit 72 of the PLC 1a from the PLC 1a, PLC 1b, and the parent device 201. Therefore, these device values and wireless statuses are substantially time-synchronized.
[0329] The user can monitor the changes in the device values in PLC1a and PLC1b and the changes in the wireless conditions in the industrial wireless network 204 while comparing them.
[0330] 3-2.Analysis report 66 shows an analysis report 110 displayed on the display unit 7 by the Web browser 60 executing the Web application 61. Here, it is assumed that the Web application 61 is an application that realizes the provision of analysis results of device values and wireless conditions.
[0331] In the analysis report 110, a display area 501 displays a graph of device values (time series data) collected in PLC 1a by the collection unit 72. A display area 502 displays a graph of device values (time series data) collected from PLC 1b by the collection unit 72 of PLC 1a. A display area 503 is a display area that displays the wireless status (status information group 255, time series data) collected from the parent device 201 by the collection unit 72.
[0332] Since the device values and wireless states are time-series data that may change over time, each device value and each wireless state is linked by the collection unit 72 to time information indicating the time at which it was collected. The seek bar 105a indicates the playback time of the device values and wireless states, and may be operated by the pointer 103 to specify the playback time. During playback of the driving record (driving history), the seek bar 105a moves from left to right in conjunction with the passage of the playback time. The time specification unit 106a is a control object for instructing to advance or rewind the playback time, to start automatic playback, or to stop playback.
[0333] The user can compare and study the changes in the device values in PLC1a and PLC1b with the changes in the wireless state in the industrial wireless network 204. For example, a missing device value is collected from PLC1b, which is thought to be caused by a failure to collect the device value due to a deterioration in wireless quality in the industrial wireless network 204. It was impossible for the user to identify the cause of such missing data caused by the industrial wireless network 204 by looking only at the device values collected from PLC1b. However, according to this embodiment, it will be possible to identify the missing data caused by the industrial wireless network 204.
[0334] <Technical ideas derived from examples> [Perspective A1] The slave device 202a and the master device 201 function as a primary wireless node that is wired to a first industrial device (e.g., PLC1, 1a) that collects data. The slave devices 202b to 202f are wired to second industrial devices (e.g., target devices 203b to 203f, PLC1b) that transmit data to the first industrial device, and operate as one or more secondary wireless nodes that are wirelessly connected to the primary wireless node. The industrial wireless system 200 mediates data communication between the second industrial device that transmits data and the first industrial device that collects data.
[0335] The LAN ports 38e to 38h are examples of wired communication ports connected to the first industrial apparatus by wire. The WLAN modules 223a to 223c are examples of first wireless communication ports that wirelessly communicate with a mobile device (e.g., PC2, programmable display) corresponding to the first industrial apparatus. The WLAN modules 223a to 223c are examples of second wireless communication ports that wirelessly communicate with one or more secondary wireless nodes. The CPUs 210 and 220 function as a construction unit that constructs a first wireless network (e.g., wireless LAN network 901) for wireless communication between a mobile device connected via the first wireless communication port and a primary wireless node, and that constructs a second wireless network (e.g., industrial wireless network 204) for wireless communication between a primary wireless node and one or more secondary wireless nodes connected via the second wireless communication port. The CPU 210, the LAN module 212, the CPU 220, and the communication management units 235, 265 function as a transfer unit that transfers data transmitted from the second industrial equipment and received via one or more secondary wireless nodes, the second wireless network, and the second wireless communication port to the first industrial equipment via the wired communication port, and transfers monitoring information of the second industrial equipment or the second wireless network transmitted from the first industrial equipment and received via the wired communication port (e.g., individual status information 256, status information group 255, device value) to the mobile device via the first wireless communication port.
[0336] Here, the first wireless network uses a first radio frequency band (e.g., 2.4 GHz, 5 GHz), and the second wireless network uses a second radio frequency band (e.g., 6 GHz), which is a higher frequency band than the first radio frequency band.
[0337] In this way, by constructing the industrial wireless network 204 using a wireless frequency band that has a wide bandwidth and is less congested among multiple wireless frequency bands, congestion in the industrial wireless network 204 is reduced. In addition, a mobile device can acquire and display data from the industrial wireless system by using another wireless network that uses a different wireless frequency band. The wireless frequency band of the wireless network to which the mobile device connects is different from the wireless frequency band of the industrial wireless network 204. Therefore, congestion in the industrial wireless network 204 is less likely to be caused by access from a mobile device. In other words, delays in data transfer in the industrial wireless system are suppressed, and it is possible to smoothly display data on a mobile device.
[0338] [Perspective A2] The first radio frequency band may be the 2.4 GHz band, and the second radio frequency band may be the 5 GHz or 6 GHz band. The first radio frequency band may be the 5 GHz band, and the second radio frequency band may be the 6 GHz band. Compared with mobile devices, industrial devices need to transfer more data without delay. Therefore, compared with mobile devices, industrial devices use radio frequency bands with wider bandwidths. This suppresses delays in data transfer in the industrial wireless system, and enables data to be displayed smoothly on mobile devices.
[0339] [Perspective A3] The one or more secondary wireless nodes may include a first secondary wireless node (e.g., child device 202b) that wirelessly communicates with the primary wireless node, and a tertiary wireless node (e.g., child device 202c) that wirelessly communicates with the first secondary wireless node and communicates with the primary wireless node via the first secondary wireless node.
[0340] [Perspective A4] The first industrial device may be a programmable logic controller (e.g., PLC1). The mobile device may be a mobile computer (e.g., PC2) that displays data or monitoring information using a Web browser 60. Here, the monitoring information may be any of the device values of each industrial device, analysis information of the device values, and wireless communication status (e.g., radio wave reception strength, communication speed, and signal-to-interference-and-noise ratio measured by the child device 202).
[0341] [Perspective A5] The first industrial device and the second industrial device may each be a programmable logic controller (e.g., PLC 1a, 1b). The first industrial device and the second industrial device may build a PLC link that is established across the primary wireless node and one or more secondary wireless nodes. The PLC link is a communication link that allows multiple PLCs to refer to each other's device values. A user sets the source device (e.g., IP address of the device), the name of the source device value, the destination device (e.g., IP address of the device), the name of the destination device value, and the transfer timing (e.g., every scan, every fixed cycle) for the PLCs 1a and 1b via the PC2. This allows the user to transfer device values between multiple PLCs 1a and 1b without creating a ladder program for transfer. In other words, the first industrial device and the second industrial device can transmit and receive data, which are device values stored in multiple device memories, which are storage areas, at a fixed cycle via the PLC link. The device values are data that are sensitive to delays, such as data used to control the PLCs 1a and 1b. Therefore, it is necessary to reduce the delay in the industrial wireless network 204 in which the PLC link is established.
[0342] [Point of View A6] The first industrial device may be a programmable logic controller, and the second industrial device may be a sensor (e.g., a position sensor that detects the arrival of a workpiece) or a programmable logic controller. The first industrial device may collect data from the second industrial device in real time. The mobile device may be a display device (e.g., PC2, programmable display) that communicates with the first industrial device via the primary wireless node and displays the data collected from the second industrial device as a graph in a time series. When graphing multiple time series data, delays and loss of data are likely to be problems. For example, if some time series data is lost, a part of the graph will be missing, making it impossible to analyze events in that section. Therefore, by separating the industrial wireless network 204 and the wireless LAN network 901, data delays in the industrial wireless network 204 are reduced and data loss is less likely to occur. As a result, data display on the mobile device is also smoother.
[0343] [Point of View A7] The first industrial device may be a programmable logic controller (e.g., PLC1a), and the second industrial device may be a sensor or a programmable logic controller (e.g., PLC1b). The mobile device may be a display device that collects data from the second industrial device in real time and displays the data collected from the second industrial device as a graph in chronological order. As illustrated in FIG. 52, the mobile device (e.g., PC2, programmable display) may access PLC1b without going through PLC1a, obtain data from PLC1b, and display the data in a graph.
[0344] [Point of View A8] The first industrial device may be a programmable logic controller, and the mobile device may be an editing device (e.g., PC2 on which the project editing unit 50 runs) that edits a ladder program. The second industrial device may be a programmable logic controller (e.g., PLC1, 1b) that executes a ladder program. The mobile device (e.g., PC2 that executes the debugging unit 54) may execute a debugging process that associates data collected from the second industrial device with the ladder program and displays the data (e.g., FIGS. 7, 9 to 11). In this way, the PC2 that executes editing and debugging of the ladder program may access the PLC 1b that is the target of debugging via the wireless LAN network 901 and the industrial wireless network 204.
[0345] [Point of View A9] The first industrial device may be a programmable logic controller, and the second industrial device may be a sensor or a programmable logic controller. The first industrial device may have an analysis unit (e.g., analysis unit 83) that collects and analyzes data of the second industrial device in real time, a creation unit (e.g., CPU 41a, analysis unit 83) that creates display information showing the analysis result generated by the analysis unit, and a server (e.g., Web server 82) that provides the display information to a mobile device operating as a client.
[0346] [Point of View A10] The mobile device may include a web browser 60. A web server 82 provides information to the web browser 60 for display.
[0347] [Point of View A11] The first industrial device (e.g., PLC1, 1a) may further collect status information (e.g., individual status information 256, status information group 255) indicating a communication status of a second wireless network established between the primary wireless node and one or more secondary wireless nodes, and provide the status information to the mobile device, so that the user can grasp the communication status of the industrial wireless network 204.
[0348] [Point of View A12] The first wireless network may be a wireless LAN, and the second wireless network may be a wireless mesh network.
[0349] [Point of View A13] The construction unit (e.g., CPU 210, child device management unit 231) constructs the second wireless network so as to reduce the number of hops between wireless nodes constructing the second wireless network. This further reduces data delays in the industrial wireless network 204, and facilitates the display of data on mobile devices.
[0350] [Point of View A14] The primary wireless node may include a network controller (e.g., parent device 201) and a wireless node (e.g., child device 202a) that is wired to the network controller and wirelessly connected to one or more secondary wireless nodes and a mobile device. Such a primary wireless node may be called a root node. Each of the one or more secondary wireless nodes is composed of wireless nodes (e.g., child devices 202b to 202f). That is, when parent device 201 is connected to LAN port 38i, child device 202 operates as a root node (child device 202a). When nothing is connected to LAN port 38i or when PLC1 or the like is connected, child device 202 operates as a normal wireless node (child devices 202b to 202f).
[0351] The network controller is configured to distribute, from the primary wireless node to each of the one or more secondary wireless nodes, setting information (e.g., setting information 254) for setting the wireless nodes so that the first wireless network uses the first wireless frequency band and the second wireless network uses the second wireless frequency band. This saves the user the trouble of individually setting the multiple slave units 202a to 202f, improving usability regarding the setting of the industrial wireless network 204.
[0352] [Point of View A15] As illustrated in FIG. 54, the primary wireless node and one or more secondary wireless nodes may each operate as an access point to construct a first wireless network. The mobile device may switch from the first wireless network of the primary wireless node to the first wireless network of one or more secondary wireless nodes, and connect to the first industrial device via the one or more secondary wireless nodes and the primary wireless node. As illustrated in FIG. 54, the slaves 202a to 202c may each operate as an access point. In this case, the mobile device (PC2, programmable display device) selects one slave 202a having a better wireless state among the three slaves 202a to 202c and communicates with it. When the reception strength of the radio wave transmitted from the slave 202a decreases and the reception strength of the radio wave received from the slave 202b increases, the mobile device may switch from the wireless LAN network 901a to the wireless LAN network 901b and connect to the slave 202b. This will stabilize the wireless connection of the mobile device.
[0353] [Point of View A16] The SSID of the first wireless network of the primary wireless node and the SSID of the first wireless network of one or more secondary wireless nodes may be the same. This will allow the mobile device to maintain a seamless wireless connection. For example, it will be easy to collectively configure multiple child devices 202a to 202f using the configuration information 254.
[0354] [Point of View A17] The SSID of the first wireless network of the primary wireless node may be different from the SSID of the first wireless network of one or more secondary wireless nodes. This allows a specific mobile device to connect only to a specific child device 202.
[0355] [Point of View A18] One or more secondary wireless nodes may determine whether to establish their own first wireless network based on the setting information received from the primary wireless node. As illustrated in Fig. 57 and Fig. 58, the network management unit 268 of each child device 202 may turn on / off the access point function based on the setting information 254.
[0356] [Point of View A19] The secondary wireless node (e.g., child device 202b to 202f) has a wired communication port (e.g., LAN port 38i) connected to the second industrial device by wire, a first wireless communication port (e.g., WLAN module 223a to 223c) for wirelessly communicating with a mobile device corresponding to the first industrial device in the first wireless network, a second wireless communication port (e.g., WLAN module 223a to 223c) for wirelessly communicating with a primary wireless node in the second wireless network, and a transfer unit (e.g., CPU 220) for transferring data transmitted from the second industrial device to the first industrial device via the second wireless communication port, the second wireless network, and the primary wireless node, and transferring monitoring information of the second industrial device or the second wireless network transmitted from the first industrial device and received via the primary wireless node, the second wireless network, and the second wireless communication port to the mobile device via the first wireless communication port. A first wireless frequency band is used in the first wireless network, and a second wireless frequency band is used in the second wireless network, and the second wireless frequency band may be a frequency band higher than the first wireless frequency band.
[0357] [Point of View A20] The first radio frequency band may be the 2.4 GHz band or the 5 GHz band, and the second radio frequency band may be the 6 GHz band.
[0358] [Point of View A21] A secondary wireless node (eg, child device 202c) may communicate with a primary wireless node (eg, parent device 201, child device 202a) via a relay node (eg, child device 202b).
[0359] [Point of View A22] The industrial wireless system 200 has a primary wireless node (e.g., child device 202a) wiredly connected to a first industrial device, a secondary wireless node (e.g., child device 202b) wirelessly connected to the primary wireless node, and a tertiary wireless node (e.g., child device 202c) wirelessly connected to the secondary wireless node, and may transfer data transmitted and received between a second industrial device wiredly connected to the secondary wireless node or the tertiary wireless node and the first industrial device.
[0360] The primary wireless node has a first wired communication port wiredly connected to the first industrial equipment, a first wireless communication port capable of wirelessly communicating with a mobile device corresponding to the first industrial equipment in a first wireless frequency band, and a second wireless communication port for wirelessly communicating with a secondary wireless node in a second wireless frequency band higher than the first wireless frequency band. The secondary wireless node has a second wired communication port wiredly connected to the second industrial equipment, a third wireless communication port capable of wirelessly communicating with the mobile device in the first wireless frequency band, and a fourth wireless communication port for wirelessly communicating with the primary wireless node and the tertiary wireless node in the second wireless frequency band. The tertiary wireless node has a third wired communication port wiredly connected to the second industrial equipment, a fifth wireless communication port capable of wirelessly communicating with the mobile device in the first wireless frequency band, and a sixth wireless communication port for wirelessly communicating with the secondary wireless node in the second wireless frequency band.
[0361] The primary wireless node, the secondary wireless node, or the tertiary wireless node establish a first wireless network (e.g., wireless LAN network 901) for relaying data communication performed between the first industrial device and the mobile device. The primary wireless node, the secondary wireless node, and the tertiary wireless node establish a second wireless communication network (e.g., industrial wireless network 204) for relaying data communication between the first industrial device and the second industrial device. The mobile device wirelessly connects to one of the primary wireless node, the secondary wireless node, or the tertiary wireless node via the first wireless network. The mobile device may be configured to display data collected by the first industrial device from the second industrial device and status information indicating a communication status related to the second wireless communication network collected from the primary wireless node, the secondary wireless node, and the tertiary wireless node.
[0362] [Point of View A23] The primary wireless node may have a wireless unit (e.g., child device 202a) having a first wireless communication port and a second wireless communication port, and a controller unit (e.g., parent device 201) that controls the primary wireless node, the secondary wireless node, and the tertiary wireless node and is housed in a housing independent of the housing of the wireless unit. The controller unit (e.g., parent device 201) has a first wired communication port and a fourth wired communication port that is wired-connected to the wireless unit of the primary wireless node. The wireless unit (e.g., child device 202a) has a fifth wired communication port that is wired-connected to the fourth wired communication port of the controller unit.
[0363] [Perspective B1] The master device 201 and the slave device 202a are examples of a root node that is a wireless node connected by wire to a first industrial device (e.g., PLC1, 1a) that collects data. The slave devices 202b to 202f are examples of peripheral wireless nodes that are wireless nodes connected by wire to a second industrial device (e.g., PLC1b) that transmits data to the first industrial device. The industrial wireless system 200 mediates data communication between the second industrial device that transmits data and the first industrial device that collects data.
[0364] The CPUs 210 and 220 and the network construction unit 269 function as a construction unit that constructs a wireless network including at least a root node that is wired to a first industrial device that collects data, and a peripheral wireless node that is wired to a second industrial device that transmits data to the first industrial device. The measurement unit 270 functions as a first measurement unit that measures a state related to wireless communication for the root node and generates state information indicating the state related to wireless communication. The CPU 210 and the state collection unit 245 function as a collection unit that repeatedly collects state information generated by a first measurement unit (e.g., the measurement unit 270 of the child device 202a) and state information indicating a state related to wireless communication for the peripheral wireless node that is measured by a second measurement unit (e.g., the measurement unit 270 of the child devices 202b to 202f) provided in the peripheral wireless node, and stores the state information in a memory accessible from the first industrial device (e.g., a storage area accessible from the PLC 1 in the storage device 211. A storage area (device memory) allocated in the storage device 211 by the memory allocation unit 248 based on a memory map). The slave unit 202a, the CPU 220, and the WLAN modules 223a to 223c function as a wireless communication unit that communicates with peripheral wireless nodes via the wireless network constructed by the construction unit and receives data of the peripheral wireless nodes (e.g., data and status information of the second industrial apparatus). The LAN ports 38d to 38h function as wired communication units that transfer data of the second industrial apparatus received by the wireless communication unit via the wireless network constructed by the construction unit to the first industrial apparatus, and transmit status information stored in memory to the first industrial apparatus.
[0365] According to viewpoint B1, status information on the wireless network is stored in a memory accessible from a first industrial device that collects data on a second industrial device, which allows the industrial device that collects data on other industrial devices to also collect status information on the wireless network.
[0366] [Perspective B2] A PLC link may be established between a first industrial device (e.g., PLC1a) and a second industrial device (e.g., PLC1b) via a wireless network. The first industrial device and the second industrial device transmit and receive data, which are device values stored in a plurality of device memories, which are storage areas, via the PLC link at a predetermined period (e.g., scan period). The PLC1 repeatedly executes a ladder program. The time required to execute this ladder program once is called a scan period, and is not necessarily a constant period. The basic unit 3 and the expansion unit 4 constituting the PLC1 have a mechanism for exchanging control data and the like with each other using a logically shared device memory. The PLC link is an extension of this mechanism between multiple PLCs, and by establishing a correspondence relationship between the device memory (device name) of one PLC and the device memory (device name) of the other PLC in advance, it becomes possible to share data (device values) between multiple PLCs. In viewpoint B2, the PLC link is established via a wireless network. The PLC link may also be applied between the PLC1, 1a and the parent device 201. This means that the status information is stored in the device memory and shared between the PLCs 1 and 1a and the parent device 201. In this way, by using the device memory via the PLC link, the PLCs 1 and 1a can essentially access a part of the storage device 211 of the parent device 201.
[0367] [Perspective B3] The first industrial equipment may identify an event that is expected to occur in the second industrial equipment by analyzing the device value of the second industrial equipment. This will make it possible to monitor a sign of a specific event. The analysis unit 83 of PLC1a can identify an event that has occurred in PLC1b and an event that is expected to occur in PLC1b in the future by analyzing the operation log 76 acquired from PLC1b. For example, if the deviation amount of the position of a workpiece transported on the manufacturing line gradually increases, the analysis unit 83 can predict that a positioning error of the workpiece will occur. In addition, there may be a case where the deviation amount between the timing at which the workpiece transported on the manufacturing line arrives at the processing device and the specified timing gradually increases. In this case, the analysis unit 83 can predict that a transport error will occur in which the workpiece will not arrive by the processing start timing of the processing device. In this way, it can be said that the deviation amount exceeding the threshold is a sign of a transport error.
[0368] [Perspective B4] The first industrial device may be a programmable logic controller (e.g., PLC1a), and the second industrial device may be a programmable logic controller (e.g., PLC1b) or a sensor (e.g., a field device, a workpiece detection sensor). The CPU 41a and the analysis unit 83 function as an analysis unit that collects and analyzes data of the second industrial device in real time. The CPU 41a and the analysis unit 83 may function as a creation unit that creates display information showing the analysis results. The Web server 82 functions as a server that provides display information to client terminals (e.g., PC2, 2b).
[0369] [Point of View B5] The analysis unit 83 may further analyze the state information generated by the first measurement unit and the state information measured by the second measurement unit provided in the peripheral wireless node. For example, when the reception strength of the radio wave transmitted by the child device 202c and received by the child device 202b is less than the warning threshold, the analysis unit 83 may analyze that the wireless performance between the child devices 202b and 202c has deteriorated and some kind of countermeasure is necessary. For example, the analysis unit 83 may determine that the countermeasure is to move the child devices 202b and 202c closer to each other or to remove a radio wave obstruction between the child devices 202b and 202c to ensure visibility.
[0370] [Point of View B6] The client terminal (e.g., PC2, PC2b, programmable display) may display the data (e.g., device value) of the second industrial device and the status information (e.g., radio wave reception strength, radio wave usage rate, communication speed) as a graph along a time series, so that the user can determine whether the wireless status of the wireless network affected an event that occurred in the second industrial device.
[0371] [Point of View B7] The client terminal (e.g., PC2, PC2b, programmable display) may be a display of the first industrial device or the second industrial device. Generally, in a production line, a programmable display that displays device values in real time is installed to grasp the operating status of PLC1. Since the display unit of PLC1 is small and has poor visibility, the device values are displayed on a larger programmable display. This allows the user to monitor the status of PLC1 in real time. Such a programmable display may display the operation history or real-time data of the industrial device and the operation history or real-time data of the wireless network. The programmable display may be replaced by PC2, 2b equipped with a Web browser 60.
[0372] [Point of View B8] The server may be a Web server 82. The client terminal (eg, PC2, PC2b, programmable display) may be a computer that executes a Web browser 60 that displays display information provided by the Web server 82.
[0373] [Point of View B9] The client terminal (e.g., PC2, PC2a) may be a program creation support device that supports a user in editing a user program (e.g., ladder program) executed by the first industrial device and the second industrial device. The user program (e.g., ladder program) is transferred to and stored in the project storage unit 35 and executed by the CPU 31.
[0374] [Point of View B10] As illustrated in Fig. 54, the root node or the peripheral wireless node may include an access point that constructs a wireless LAN (e.g., wireless LAN networks 901a to 901c). The first industrial device may transmit display information for displaying the status information and the analysis result of the data to a wireless LAN terminal (e.g., PC2) connected to the first industrial device via the access point (e.g., WLAN module 223a of child device 202a). This allows the user to visually recognize the analysis result and the display information by the wireless LAN terminal.
[0375] [Point of View B11] The display information may be information (eg, HTML file, CSS file, script, image data) that displays the status information and the data analysis results in chronological order on a display device (eg, display unit 7) of the wireless LAN terminal.
[0376] [Point of View B12] The wireless LAN terminal may include a program editing assistant device (e.g., PC2, PC2a on which the project editing program 14a runs) that assists a user in editing a user program executed by at least one of the first industrial device and the second industrial device. In this way, by making the program editing assistant device also a wireless LAN terminal, the degree of freedom in installing the program editing assistant device is improved.
[0377] [Point of View B13] The wireless LAN terminal includes a display device that displays data collected from the second industrial device in real time. In this way, by making the programmable display device also a wireless LAN terminal, the degree of freedom in installation of the programmable display device is improved.
[0378] [Point of View B14] The CPUs 210 and 220 and the network construction unit 269 operate as a construction unit that constructs a wireless network including at least a root node that is wired to a first industrial device that collects data, and a peripheral wireless node that is wired to a second industrial device that transmits data to the first industrial device. The measurement unit 270 operates as a first measurement unit that measures a state related to wireless communication for the root node and generates state information indicating the state related to wireless communication. The state collection unit 245 operates as a collection unit that repeatedly collects state information generated by the first measurement unit and state information indicating a state related to wireless communication for the peripheral wireless node that is measured by a second measurement unit provided in the peripheral wireless node. The storage device 211 stores state information and operates as a memory accessible from the first industrial device. The WLAN modules 223a to 223c operate as wireless communication units that communicate with the peripheral wireless nodes via the wireless network constructed by the construction unit and receive data from the peripheral wireless nodes. The LAN module 222 and LAN port 38i of the child unit 202a, and the LAN module 212 and LAN ports 38d to 38h of the parent unit 201 operate as a wired communication unit that transfers data of the second industrial equipment received by the wireless communication unit to the first industrial equipment via the wireless network constructed by the construction unit, and transmits status information stored in a memory accessed by the first industrial equipment to the first industrial equipment.
[0379] [Point of View B15] The PLCs 1 and 1a operate as programmable logic controllers connected to the industrial wireless system. The CPU 31 operates as a program execution unit that repeatedly executes a user program. The device unit 34 operates as a device storage unit having a plurality of devices that are storage areas used in the user program executed by the program execution unit. The communication unit 33 and the LAN port 38a operate as wired communication ports that are wiredly connected to a root node for constructing a wireless network in the industrial wireless system. The collection unit 72 and the logging unit 73 operate as acquisition units that acquire log data of industrial equipment from industrial equipment connected to the programmable logic controller via the wired communication port and the wireless network, and acquire status information indicating the status of the wireless network acquired at the root node and wireless nodes participating in the wireless network and collected by the root node. The analysis unit 83 operates as a creation unit that creates log data (e.g., operation log 76) or display information (e.g., HTML file, CSS file, image data, script) that displays the analysis result of the log data and the status information. The Web server 82 operates as a server that provides display information to client terminals.< / plc>
Claims
1. The primary wireless node in an industrial wireless system mediates data communication between the second industrial equipment that transmits the data and the first industrial equipment that collects the data, comprising at least a primary wireless node wired to a first industrial equipment that collects data, and one or more secondary wireless nodes wired to a second industrial equipment that transmits the data to the first industrial equipment and wirelessly connected to the primary wireless node, A wired communication port connected to the aforementioned first industrial equipment, A first wireless communication port for wireless communication with a mobile device corresponding to the first industrial equipment, A second wireless communication port that communicates wirelessly with one or more secondary wireless nodes, A construction unit constructs a first wireless network for wireless communication between the mobile device connected via the first wireless communication port and the primary wireless node, and constructs a second wireless network for wireless communication between one or more secondary wireless nodes connected via the second wireless communication port and the primary wireless node, A transfer unit that transfers data transmitted from the second industrial equipment and received via one or more secondary wireless nodes, the second wireless network, and the second wireless communication port to the first industrial equipment via the wired communication port, and transfers monitoring information of the second industrial equipment or the second wireless network transmitted from the first industrial equipment and received via the wired communication port to the mobile device via the first wireless communication port, It has, The first wireless network uses the first wireless frequency band. The second wireless network uses the second wireless frequency band. The second radio frequency band is a primary radio node, which is a higher frequency band than the first radio frequency band.
2. The aforementioned first radio frequency band is either the 2.4 GHz band or the 5 GHz band. The primary radio node according to claim 1, wherein the second radio frequency band is the 6 GHz band.
3. The one or more secondary wireless nodes mentioned above are A first secondary radio node that communicates wirelessly with the primary radio node, A tertiary radio node that communicates wirelessly with the first secondary radio node and communicates with the primary radio node via the first secondary radio node, A primary wireless node according to claim 1, including the above.
4. The aforementioned first industrial device is a programmable logic controller, The primary wireless node according to claim 1, wherein the mobile device is a mobile computer that displays the data or the monitoring information using a web browser.
5. The first industrial device and the second industrial device are each programmable logic controllers. The first industrial equipment and the second industrial equipment establish a PLC link that spans the primary wireless node and one or more secondary wireless nodes. The primary wireless node according to claim 1, wherein the first industrial equipment and the second industrial equipment transmit and receive data, which is a device value stored in a plurality of device memories that are storage areas, at predetermined intervals via the PLC link.
6. The aforementioned first industrial device is a programmable logic controller, The aforementioned second industrial device is a sensor or a programmable logic controller. The first industrial equipment collects data from the second industrial equipment in real time. The mobile device is a display device that communicates with the first industrial equipment via the primary wireless node and displays the data collected from the second industrial equipment as a graph in chronological order. The primary wireless node according to claim 1.
7. The aforementioned first industrial device is a programmable logic controller, The aforementioned second industrial device is a sensor or a programmable logic controller. The aforementioned mobile device is a display device that collects data from the second industrial equipment in real time and displays the data collected from the second industrial equipment as a graph in chronological order. The primary wireless node according to claim 1.
8. The aforementioned first industrial device is a programmable logic controller, The aforementioned mobile device is an editing device for editing ladder programs, The second industrial device is a programmable logic controller that executes the ladder program, The mobile device performs a debugging process that displays the data collected from the second industrial equipment in association with the ladder program. The primary wireless node according to claim 1.
9. The aforementioned first industrial device is a programmable logic controller, The aforementioned second industrial device is a sensor or a programmable logic controller. The aforementioned first industrial equipment is, An analysis unit that collects and analyzes the data from the aforementioned second industrial equipment in real time, A creation unit that creates display information showing the analysis results generated by the aforementioned analysis unit, A server that provides the aforementioned display information to the mobile device acting as a client, A primary wireless node according to claim 1, having the above characteristics.
10. The aforementioned server includes a web server, The aforementioned mobile device has a web browser, The primary wireless node according to claim 9, wherein the Web server provides the display information to the Web browser.
11. The primary wireless node according to claim 1, further comprising the first industrial equipment, which collects status information indicating the communication status of the second wireless network established between the primary wireless node and one or more secondary wireless nodes, and provides the status information to the mobile device.
12. The aforementioned first wireless network is a wireless LAN. The aforementioned second wireless network is a wireless mesh network. The primary wireless node according to claim 1.
13. The construction unit constructs the second wireless network such that the number of hops between wireless nodes that make up the second wireless network is reduced. The primary wireless node includes a network controller and wireless nodes that are wiredly connected to the network controller and wirelessly connected to one or more secondary wireless nodes and the mobile devices. Each of the aforementioned one or more secondary wireless nodes is composed of a wireless node, The primary radio node according to claim 1, wherein the network controller is configured to distribute configuration information from the primary radio node to each of the one or more secondary radio nodes for configuring the radio node so that the first radio frequency band is used in the first radio network and the second radio frequency band is used in the second radio network.
14. The primary wireless node and the one or more secondary wireless nodes each operate as access points to construct the first wireless network. The primary wireless node according to claim 1, wherein the mobile device switches from the first wireless network of the primary wireless node to the first wireless network of one or more secondary wireless nodes and connects to the first industrial equipment via the one or more secondary wireless nodes and the primary wireless node.
15. The primary radio node according to claim 14, wherein one or more secondary radio nodes decide whether or not to construct their own first radio network based on configuration information received from the primary radio node.
16. An industrial wireless system comprising at least a primary wireless node wired to a first industrial device that collects data, and a secondary wireless node wired to a second industrial device that transmits the data to the first industrial device and is also wirelessly connected to the primary wireless node, wherein the secondary wireless node mediates data communication between the second industrial device that transmits the data and the first industrial device that collects the data, A wired communication port connected to the aforementioned second industrial equipment, A first wireless communication port in the first wireless network that communicates wirelessly with a mobile device corresponding to the first industrial equipment, A second wireless communication port that communicates wirelessly with the primary wireless node in the second wireless network, A transfer unit that transfers data transmitted from the second industrial equipment to the first industrial equipment via the second wireless communication port, the second wireless network, and the primary wireless node, and transfers monitoring information of the second industrial equipment or the second wireless network transmitted from the first industrial equipment and received via the primary wireless node, the second wireless network, and the second wireless communication port to the mobile device via the first wireless communication port, It has, The first wireless network uses the first wireless frequency band. The second wireless network uses the second wireless frequency band. The second radio frequency band is a secondary radio node, where the second radio frequency band is a higher frequency band than the first radio frequency band.
17. The aforementioned first radio frequency band is either the 2.4 GHz band or the 5 GHz band. The secondary radio node according to claim 19, wherein the second radio frequency band is the 6 GHz band.
18. The secondary wireless node according to claim 17, wherein the secondary wireless node communicates with the primary wireless node via a relay node.
19. An industrial wireless system comprising a primary wireless node wired to a first industrial device, a secondary wireless node wirelessly connected to the primary wireless node, and a tertiary wireless node wirelessly connected to the secondary wireless node, wherein data transmitted and received between a second industrial device wired to the secondary wireless node or the tertiary wireless node and the first industrial device is transmitted and received, The aforementioned primary wireless node is A first wired communication port connected via a wire to the first industrial equipment, A first wireless communication port capable of wireless communication with a mobile device corresponding to the first industrial equipment in the first radio frequency band, A second wireless communication port that communicates wirelessly with the secondary wireless node in a second wireless frequency band higher than the first wireless frequency band, It has, The aforementioned secondary wireless node is The aforementioned second industrial equipment includes a second wired communication port that can be connected via a wire, A third wireless communication port capable of wirelessly communicating with the mobile device in the first wireless frequency band, A fourth wireless communication port that communicates wirelessly with the primary wireless node and the tertiary wireless node in the second wireless frequency band, It has, The aforementioned third-tier wireless node is The aforementioned second industrial equipment is provided with a third wired communication port that can be connected via wire, A fifth wireless communication port capable of wirelessly communicating with the mobile device in the first radio frequency band, A sixth wireless communication port that communicates wirelessly with the secondary wireless node in the second wireless frequency band, It has, The primary wireless node, the secondary wireless node, or the tertiary wireless node establish a first wireless network that relays data communication performed between the first industrial equipment and the mobile device. The primary wireless node, the secondary wireless node, and the tertiary wireless node establish a second wireless communication network for relaying data communication between the first industrial equipment and the second industrial equipment. The mobile device wirelessly connects to one of the primary wireless node, the secondary wireless node, or the tertiary wireless node via the first wireless network. An industrial wireless system in which the mobile device is configured to display data collected from the second industrial device by the first industrial device, and status information indicating the communication status of the second wireless communication network collected from the primary wireless node, the secondary wireless node, and the tertiary wireless node.
20. The aforementioned primary wireless node is A wireless unit having the first wireless communication port and the second wireless communication port, A controller unit that controls the primary wireless node, the secondary wireless node, and the tertiary wireless node, and is housed in a separate enclosure from the wireless unit's enclosure, It has, The controller unit has the first wired communication port and the fourth wired communication port which is wired to the wireless unit of the primary wireless node. The aforementioned wireless unit is The industrial wireless system according to claim 19, further comprising a fifth wired communication port wired to the fourth wired communication port of the controller unit.