Industrial wireless system and primary wireless node

The industrial wireless system addresses IP address management challenges by using a primary wireless node to collect and link identification information, ensuring accurate network management and reducing operational disruptions.

JP2025121594APending Publication Date: 2025-08-20KEYENCE CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024017127
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-07
Publication Date
2025-08-20

AI Technical Summary

Technical Problem

Existing industrial wireless networks face challenges in managing IP addresses for multiple wireless slave devices, which can lead to incorrect access and operational disruptions, especially when the layout of industrial equipment changes.

Method used

An industrial wireless system with a primary wireless node that manages the network and collects IP addresses and identification information from secondary wireless nodes, linking this data to generate management data for network devices.

Benefits of technology

Enables effective construction and management of wireless networks by accurately identifying and managing IP addresses, reducing operational disruptions and improving network stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025121594000001_ABST
    Figure 2025121594000001_ABST
Patent Text Reader

Abstract

To suitably check a wireless network in, for example, an industrial wireless system.SOLUTION: A primary wireless node of the present invention has a first wireless communication interface for wirelessly communicating with one or more secondary wireless nodes via a wireless network. The primary wireless node includes: a device search section that searches for devices connected to a predetermined network corresponding to a predetermined port of the primary wireless node, and that collects, from each device, an IP address and identification information associated with the IP address and also collects, in association with each secondary wireless node, identification information of a second industrial device connected to a wired communication interface of each secondary wireless node, from the one or more secondary wireless nodes of the wireless network; and a management data generation section that generates management data associating each secondary wireless node collected by the device search section with an IP address of the second industrial device connected to each secondary wireless node.SELECTED DRAWING: Figure 22
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an industrial wireless system and a primary wireless node. [Background technology]

[0002] A factory is equipped with multiple pieces of industrial equipment, such as machine tools, which are controlled by programmable logic controllers (PLCs). By connecting multiple pieces of industrial equipment or multiple PLCs via a wireless mesh network, it becomes possible to maintain the industrial network within the factory even if the layout of the industrial equipment within the factory is changed. A wireless mesh network ensures good communication quality by selecting an appropriate single-hop or multi-hop communication route, taking into account the radio wave conditions between the multiple nodes that make up the network (Patent Document 1). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2014-22981 Summary of the Invention [Problem to be solved by the invention]

[0004] The above-mentioned wireless network is comprised of multiple wireless slave devices, to which devices such as PLCs and sensors are connected, requiring IP addresses for access. However, it is difficult to grasp the IP addresses of multiple wireless slave devices, and it may be necessary to go to the device's location to check, or in some cases, to initialize it. Furthermore, accessing and operating other devices using an incorrect IP address can affect the operation of the line.

[0005] SUMMARY OF THE INVENTION Therefore, an object of the present invention is to preferably check a wireless network in, for example, an industrial wireless system. [Means for solving the problem]

[0006] The present invention provides an industrial wireless system including, for example, a plurality of wireless nodes that convert some of the connections between a plurality of communicable industrial devices into connections via a wireless network, the plurality of wireless nodes including a primary wireless node that manages the wireless network and is wired to a first industrial device among the plurality of industrial devices, and one or more secondary wireless nodes that are wirelessly connected to the primary wireless node and wired to a second industrial device among the plurality of industrial devices, the secondary wireless node having a first wireless communication interface for wirelessly communicating with the primary wireless node via the wireless network, a wired communication interface for wired communication with the second industrial device connected to a wired network, and a secondary wireless node connected to the secondary wireless node via the wired communication interface. and a providing unit that provides the primary wireless node with the identification information recorded by the information recording unit, wherein the primary wireless node searches for devices connected to a predetermined network corresponding to a predetermined port of the primary wireless node and collects from each device an IP address and identification information linked to the IP address, and collects from the one or more secondary wireless nodes on the wireless network the identification information of the second industrial devices connected to the wired communication interface of each secondary wireless node by linking it to each secondary wireless node; and a management data generating unit that generates management data that links each secondary wireless node collected by the equipment searching unit with the IP address of the second industrial device connected to each secondary wireless node.

[0007] Furthermore, the present invention provides a primary wireless node of an industrial wireless system including, for example, a plurality of wireless nodes that convert some of the connections between a plurality of communicable industrial devices into connections via a wireless network, the plurality of wireless nodes including a primary wireless node that manages the wireless network and is wired to a first industrial device among the plurality of industrial devices, and one or more secondary wireless nodes that are wirelessly connected to the primary wireless node and wired to a second industrial device among the plurality of industrial devices, the primary wireless node having a first wireless interface for wirelessly communicating with the one or more secondary wireless nodes via the wireless network, an equipment searching unit that searches for devices connected to a predetermined network corresponding to a predetermined port of the primary wireless node, and collects IP addresses and identification information linked to the IP addresses from each device, and collects identification information of the second industrial devices connected to the wired communication interface of each secondary wireless node from one or more secondary wireless nodes on the wireless network, in association with each secondary wireless node, and a management data generating unit that generates management data in which each secondary wireless node collected by the equipment searching unit is linked to an IP address of the second industrial device connected to each secondary wireless node. [Effects of the Invention]

[0008] According to the present invention, a wireless network can be suitably constructed in an industrial wireless system. [Brief explanation of the drawings]

[0009] [Figure 1] Diagram explaining a PLC system [Figure 2] Diagram explaining PC hardware [Figure 3] Diagram explaining PLC hardware [Figure 4] A diagram explaining the functions realized by a PC's CPU [Figure 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 illustrating 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 slave unit hardware [Figure 18] Diagram explaining the functions of the handset [Figure 19] Diagram explaining the IP address conversion procedure [Figure 20] Flowchart 1 explaining the parent unit's processing procedure [Figure 21] Flowchart 2 explaining the parent unit's processing procedure [Figure 22] Flowchart explaining the processing procedure of the slave unit [Figure 23] Figure showing the search screen for connected devices (map display) [Figure 24] Communication setting screen [Figure 25] Figure showing the device information editing screen [Figure 26] Figure showing the search screen (list display) for connected devices [Figure 27] A diagram showing layout editing screen 1 [Figure 28] Layout editing screen 2 [Figure 29] Figure showing layout editing screen 3 [Figure 30] A diagram explaining an example of building multiple wireless networks DETAILED DESCRIPTION OF THE INVENTION

[0010] Hereinafter, the embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the invention as claimed, and not all combinations of features described in the embodiments are necessarily essential to the invention. Two or more of the features described in the embodiments may be arbitrarily combined. Furthermore, the same reference numerals are used for the same or similar components, and redundant explanations will be omitted.

[0011] A programmable logic controller (PLC) is a controller used in factory automation to control industrial machinery such as manufacturing equipment, conveying equipment, and inspection equipment. PLCs control various expansion units and controlled devices by executing user programs, such as ladder programs created by programmers. 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 (Japanese Patent Application Laid-Open No. 2019-016325).

[0012] A user creates a user program using a programming support device and transfers it to a PLC. The PLC then executes the user program to manufacture various products. A rare event that was not anticipated when the user program was created can cause the production line to stop. An event that does not cause the production line to stop but requires attention can also occur. When a specific event occurs, the PLC reads and records device values collected around the time of the event from a buffer. This may be called an operation record (operation log). A data utilization unit may analyze this record, create an analysis report, and provide it to a web browser external to the PLC. If the operation log could be played back along with the analysis report, users would not only be able to understand the contents of the analysis report but also be able to identify the cause of the specific event. Therefore, the analysis report and the operation log must be linked. If the analysis report and the operation log were not linked, it would be difficult for users 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 results in the PLC.

[0013] <System configuration> FIG. 1 is a conceptual diagram showing an example of the configuration of a PLC system (industrial equipment) according to an embodiment of the present invention. As shown in FIG. 1, the PLC system includes a PC 2 for editing user programs such as ladder programs, and a PLC 1 for comprehensively controlling various industrial machines installed in a factory or the like. PC is an abbreviation for personal computer. User programs may be created using a graphical programming language such as a ladder language or a flowchart-style motion program such as SFC (Sequential Function Chart), or may be created using a high-level programming language such as C. For ease of explanation, the user program executed by the basic unit 3 is assumed to be 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.

[0014] The base unit 3 is equipped with a display unit 5 and an operation unit 6. The display unit 5 can display the operating status of the base unit 3 or the expansion unit 4 attached to the base unit 3. The display unit 5 switches the display content depending on the operation performed by the user on the operation unit 6. The display unit 5 typically displays the current values (device values) stored in devices within the PLC 1 and error information that has occurred within the PLC 1. A device is a name (symbol) that refers to a storage area in memory provided for storing device values (device data), and may also be called device memory. A device value is information that indicates the input status from input devices, the output status to output devices, and the status of internal relays (auxiliary relays), timers, counters, data memory, etc. set in a user program. Device values are classified into bit and word types. A bit device stores a 1-bit device value. A word device stores a 1-word device value.

[0015] The expansion unit 4 is provided to expand the functions of the PLC 1. Field devices (controlled devices) 10 corresponding to the functions 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. Furthermore, multiple field devices may be connected to one expansion unit 4.

[0016] For example, the expansion 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 pulser.

[0017] 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 is sometimes 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. The expansion unit 4a may also function as an analysis device that analyzes the collected data in accordance with instructions from the basic unit 3 or at a predetermined timing. In this embodiment, an example is described in which the expansion unit 4a functions as an analysis device. However, this is not intended to limit the present invention. The basic unit 3 may function as the analysis device, or an external device such as PC 2 may function as the analysis device. A system including the PLC 1 and PC 2 may be called a programmable logic controller system.

[0018] The PC2 is a computer operated primarily by a programmer. The PC2 may also be called a program creation support device (monitoring device). The PC2 is, for example, a portable notebook or tablet 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 external to 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 mnemonic code within 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 also be a network cable similar to the communication cable 9b. The PC2 may also be a programmable display whose screen can be configured by the user. In this case, the screen displaying the analysis results, etc., may be configured by the user. The programmable display may be equipped with a web browser function, and the analysis results, etc. may be displayed via the web browser function.

[0019] 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. Furthermore, 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 also be connected to the base unit 3 of the PLC 1 via wireless communication without using the communication cables 9a and 9b.

[0020] <Programming support device> FIG. 2 is a block diagram for explaining the electrical configuration of PC 2. As shown in FIG. 2, 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, operation unit 8, storage device 12, and communication units 13a and 13b are each electrically connected to CPU 11. Storage device 12 includes RAM, ROM, HDD, and 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.

[0021] A user of the PC 2 edits project data through the operation unit 8 by causing the CPU 11 to execute the project editing program 14a stored in the storage device 12. 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., a ladder program) and configuration information for the base unit 3 and the expansion units 4. The configuration information includes information indicating the connection positions of the 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 units 4 (e.g., photography function), and device allocation information. Here, editing of project data includes creating and changing (re-editing) project data. The user reads project data stored in the storage device 12 as needed and changes 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 project data to the base unit 3 via the communication unit 13a. The communication unit 13a includes a communication circuit capable of performing communication compliant with the USB standard. The communication unit 13b communicates with the expansion unit 4a via a communication cable 9b. The communication unit 13b includes a network communication circuit. The Web server program 14c is implemented as part of the project editing program 14a. The Web browser program 14d receives an analysis report written in Web format from the expansion 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 expansion 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.

[0022] <plc> FIG. 3 is a block diagram illustrating 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 RAM, ROM, a memory card, etc. The storage device 32 has multiple 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 includes bit devices and word devices, 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 specific event occurs, the operation record storage unit 37 stores an event record including device values collected around the time of the occurrence (before, after, or around the time of the occurrence) and the time of collection. An event refers to, for example, the satisfaction of an alarm or caution condition set for each device. An alarm condition refers, for example, to a condition that requires the PLC 1 to stop controlling the production line. An caution condition refers, for example, to a device value condition that requires the administrator to pay attention to the PLC 1's control of the production line. The CPU 41 sends an event record to the PC 2 in response to a request from the PC 2. The CPU 31 may also provide device values to the PC 2 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 the communication function related to the unit internal bus 90 is implemented in the CPU 31, but may also be implemented as part of the communication unit 33. The communication unit 33 may have a serial communication circuit compliant with the USB standard or the like. The CPU 31 receives project data from the PC 2 via the communication unit 33. Note that the ring buffer 36 and 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. Also, 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.

[0023] Here, we will provide additional information 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).

[0024] The operation record (e.g., device values and their collection times) stored in the operation record storage unit 37 may record the operating status of the PLC 1 at the scan time level. For example, the operation record may record the symbol values and collection times of all symbols related to the operation of the PLC 1 in chronological order for each scan. All symbols related to the operation may be all symbols used in a user program, such as a ladder program, or all symbols included in a program or unit selected by the user. In this case, the symbols to be recorded may be selected collectively in meaningful units, such as a program or unit. Symbols to be recorded may also be added or deleted individually. For example, when a problem occurs, an operation record may be generated in which the symbol values and collection times of all symbols related to the operation of the PLC 1 around the time of the problem are recorded in chronological order for each scan. Based on the operation record, the user may be able to accurately determine what happened at the time of the problem, even later. The operation record may contain a large amount of information required to reconstruct the situation at the time. If there is a lot of information, the data volume of the driving record will become large, making it difficult to handle the driving record (data processing, etc.) and putting a burden on collecting the driving record.For this reason, the symbols to be collected can be selected by the user on a program or unit basis.

[0025] In addition to symbols, operation records may also include a time series of camera images along with the time of capture. This allows users to accurately understand what happened around the time of a problem, for example, by looking back at the time of the problem. In particular, including camera images showing changes in the appearance of the equipment in operation records will be useful for understanding the situation. For this reason, camera images may be recorded in conjunction with the time series of user program execution. Write histories from external devices such as HMIs (human-machine interfaces) and PCs, and write histories from PLCs may also be included in operation records as change-point events. This allows users to check, for example, what change-point events occurred before and after a problem occurred in chronological order.

[0026] From another perspective, the operation record may be referred to as a collective term for data per scan time, such as devices, the buffer memory of the expansion unit 4, variables, etc., that is saved in response to the satisfaction of the save trigger conditions. The operation record may also include video data acquired by the expansion unit (camera unit) for each frame, which is saved in response to the satisfaction of the save trigger conditions. The operation record may also include an event history, such as errors and device value changes, which is saved in response to the satisfaction of the save trigger conditions. Furthermore, the operation record may also include the ladder program (project data) that was being executed when the save trigger conditions were met. By including the project data at the time the operation record was generated in the operation record, even if multiple versions of the project data exist, the situation can be reproduced using the project data that was actually used when the operation record was generated. The operation record may also include an analysis report.

[0027] 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 in accordance with 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 RAM, ROM, etc. In particular, the RAM has a storage area reserved for use as a buffer memory. The memory 42 may also have a buffer that temporarily stores data (e.g., still image data or video data) acquired by the field device 10.

[0028] The CPU 41a of the expansion unit 4a, which functions 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 performs network communication. The CPU 41a executes a data utilization program stored in the memory 42a and analyzes device values collected by the basic unit 3 to create an analysis report including the analysis results. When a driving record analysis application is set as the data utilization application, the CPU 41a analyzes device values collected by the basic unit 3 to create an analysis report including the analysis results. For example, the CPU 41a analyzes symbol values included in the driving record data to identify abnormal symbols and the time when the symbols became abnormal, and creates an analysis report including analysis results that associate the abnormal symbols with the time when the symbols became abnormal. The driving record data includes information for recreating the situation around the time when a driving record storage event occurred. Therefore, the driving record data may be managed in association with an analysis report. Furthermore, the driving record data includes symbol values of many symbols for recreating the situation around the time when a driving record storage event occurred. Therefore, the data size of driving record data tends to be large. For example, the CPU 41a may read data necessary for an analysis report from the driving record data and add it to the driving record data as data for the analysis report. Here, "additional saving" refers to, for example, reading and copying the data necessary for the analysis report from the driving record data, tagging the copied data, and then adding the data for the analysis report to the driving record data. Applying data processing such as tagging the data in this way makes it easier to create an analysis report.

[0029] The driving record data may include camera images. In this case, by playing back the camera images, the user can understand in more detail the circumstances surrounding the time when a driving record storage event occurred. The analysis report may also include a UI (user interface) for playing back camera images. Camera images have a large data size. Therefore, only necessary camera image data may be partially downloaded when, for example, a click or scroll operation is received in the UI for playing back camera images. For example, when creating an analysis report, the CPU 41a may process the camera images according to the display order in the analysis report, or generate index information indicating the correspondence between the time and the storage location of the camera images. In this way, the CPU 41a may quickly and partially download camera images corresponding to the display time (the time of the internal clock for playback).

[0030] In a narrow sense, an analysis report refers to the analysis results themselves, but in a broad sense, it can refer to a web application or its user interface that displays the analysis results. The CPU 41a determines, for example, whether a device value is within a normal range or whether the timing at which the device value changes is within a normal range. Whether the timing at which a device value changes is within a normal range may be determined, for example, by determining whether the length of time during which the device value is "1" (ON) is within a normal range. It may also be determined whether the number of times the device value changes in a certain process or cycle is within a normal range. If the device values collected from a device do not satisfy the normal conditions, the device may be deemed to be behaving abnormally and may be called an abnormal device. The CPU 41a may create a web-based analysis report and provide it 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 include graph display components, numerical display components, 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.

[0031] FIG. 4 is a diagram illustrating functions implemented 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 user instructions 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 the communication protocol used for communication between the communication unit 13a and the communication unit 33. For example, when the web browser 60 requests an analysis report via an HTTP request, the web server 51 passes the HTTP request to the protocol conversion unit 52. The HTTP request is executed by the CPU 41a and includes the URL (Uniform Resource Locator) of the extension unit 4a (web server) that 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 using the predetermined communication protocol. This request signal is passed to CPU 31 of basic unit 3, and further to CPU 41a of extension unit 4a. CPU 41a returns an analysis report to CPU 11 via CPU 31. Web server 51 of CPU 11 passes the analysis report to Web browser 60. As a result, Web browser 60 displays the analysis report on display unit 7.

[0032] The download unit 53 downloads operation records and other data 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 obtains 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, device values obtained from the operation records may be displayed in association with devices depicted in the ladder diagram of the ladder program. The relationship map unit 55 creates a relationship map indicating 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 devices (input devices) that affect the abnormal device and the abnormal device. The relationship map may also display the relationship between devices (output devices) affected by the abnormal device and the abnormal device. The debug unit 54 obtains abnormal devices and their associated devices by analyzing the ladder program and creates a relationship map.

[0033] The reception unit 57 receives editing operations for the user program and operations for debugging processing. The notification processing unit 58 obtains, by polling, whether a notification has been issued in the PLC 1 and displays the obtained notification on the display unit 7. An example of a notification is that an analysis report has been created. The playback unit 59 causes the download unit 53 to download the driving record and store it in the storage device 12 in response to a playback request input from the reception unit 57 or the linking unit 64. The playback request may include, for example, identification information capable of identifying the driving record (e.g., unique identification information or a storage path name in the PLC 1). The playback unit 59 plays back the driving record stored in the storage device 12 and displays it on the display unit 7. The playback unit 59 may have a ladder monitor unit 56 instead of the debugging unit 54. Alternatively, the playback unit 59 may be included in the debugging unit 54. The playback unit 59 may display time-series device values acquired in real time from the PLC 1 as waveforms, or may display time-series device values included in the driving record as waveforms.

[0034] The Web browser 60 may execute a Web application 61 to display the analysis report on the display unit 7. The Web application 61 may be configured, for example, with HTML data, CSS data, and Java® script. The Web application 61 may be provided by the expansion unit 4a. The communication processing unit 62 processes communication with the Web server 51. The data acquisition unit 63 acquires the driving records to be displayed in the analysis report from the project editing unit 50. It is assumed that the driving records have already been saved in the storage device 12 by the download unit 53. The linking unit 64 passes designation information indicating devices designated or selected by the user in the analysis report to the debugging unit 54. This enables the debugging unit 54 to display a relationship map of the abnormal device designated in the analysis report or to display the portion of the ladder program where the abnormal device is described. The user can easily edit the ladder program regarding the abnormal device. The drawing unit 65 displays the analysis report on the display unit 7. The linking unit 64 also 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.

[0035] FIG. 5 illustrates functions realized by the CPU 31 and CPU 41a executing a control program in the PLC 1. In the CPU 31, the command processing unit 71 interprets commands received from the PC 2 and executes processing 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. For example, the logging unit 73 may determine whether the collected symbol values satisfy the recording conditions. If the collected symbol values satisfy 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.

[0036] The CPU 31 or 41a may have a setting unit for setting a control cycle used for generating a learning model (described later) and for generating analysis and analysis reports, according to operator input. The control cycle is set by specifying the reference timing of the cycle. The control cycle setting may be referred to as a cycle setting. For example, the cycle setting may include 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 using a 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 using a symbol name that specifies the end timing of the cycle and rising / falling edge information of the symbol value. The control cycle setting 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 CSV file. For example, the control cycle set by the setting unit may be used to classify devices synchronized with the cycle and add the classification information to a model as attribute information, narrow down devices to be analyzed by the control cycle, or generate an analysis report 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 predetermined possible values.

[0037] In the CPU 41a, the protocol conversion unit 81 converts the protocol of an 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 sent from the web server 82 in response to the HTTP request and passes it to the CPU 31. Hereinafter, the web browser 60 of the PC 2 and the web server 82 of the expansion unit 4a can also communicate indirectly via the web server 51, protocol conversion units 52 and 81, command processing unit 71, etc., within 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, operation log 76, and analysis result 77 associated with each other when an abnormal event occurs in PLC1, making it easier to accurately reproduce the state of PLC1 when the abnormal event occurred. For example, visually reproducing changes in device values on a ladder diagram may make it easier for users to debug ladder programs. In particular, using project data stored in PC2 can make it difficult to accurately reproduce the state of PLC1 when an abnormal event occurred. This is because the project data stored in PC2 may not match the project data 75 executed by PLC1 when the abnormal event occurred. Therefore, the project data 75 executed by PLC1 when the abnormal event occurred 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.

[0038] <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 multiple modes provided by the project editing program 14a in a selectable manner. The multiple modes include edit mode, monitor mode, replay mode (debug mode), etc. 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 for the basic unit 3 and expansion unit 4 constituting the PLC 1, device assignment information, operation record setting information, and the ladder program. 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 input section, output section, and machining section state is displayed. In particular, multiple program modules can be selected using tabs 107. In FIG. 6, the tab 107 corresponding to the input section is selected.

[0039] 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 it has created an analysis result, the CPU 11 displays a dialog box or the like for displaying the notification on the display unit 7. The user interface in the monitor mode is basically the same as that in the edit mode.

[0040] 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 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 (web application 61) of the analysis report, and displays the analysis report.

[0041] 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 a button or select an object. For example, when an analysis report displayed in the project display area 102 is double-clicked with the pointer 103, the CPU 11 causes the analysis report to be displayed on the web browser 60.

[0042] In replay mode, the 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 whether it is 0 or 1. Visually distinguishable includes displaying it in a different color or a different icon. In the case of a word device, for example, the device value may be displayed after being decimalized. Alternatively, other numeric display formats may be adopted, such as device values after being decimalized.

[0043] Because device values are time-series data that can 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 value, and may be operated with the pointer 103 to specify the playback time. While the driving record is being played back, the seek bar 105a moves from left to right in conjunction with the passage of playback time. The time designation unit 106a is a control object for instructing to advance or rewind the playback time, to start automatic playback, or to stop playback.

[0044] [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. In other words, the UI 100 and the analysis report 110 are displayed in 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, a tablet, or a smartphone.

[0045] The detection map 111 displays the start and end timings for each of the multiple processes executed by the PLC 1. Generally, the period from the start timing to the end timing is called a cycle. In FIG. 9, a horizontally extending rectangle indicates the period (cycle) during which the process is being executed. The left rectangle indicates the oldest data, and the right rectangle indicates the newest data. The time bar 112a indicates the timing when a drive record data save trigger occurred. As described above, the drive record data contains data collected before the save trigger occurred and data collected after the trigger. Therefore, data is displayed before and after the time bar 112a. Meanwhile, the time bar 112e indicates the currently selected time and can be moved (left or right) to the desired time by the user's drag operation or drag-and-drop operation. Instead of drag-and-drop, the time bar 112e may jump to the desired position when the user clicks on the detection map. In this way, the user can update the display of the analysis results 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), and the corresponding analysis results may be displayed. The time bars 112a and 112e may be drawn in different colors, or may be drawn using solid and dashed lines. This improves the distinguishability of the time bars 112a and 112e.

[0046] Here, two circles are shown 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). Figure 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 in a position overlapping with the circle on the right.

[0047] 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 for MR001 is selected (clicked) in the state shown in Fig. 9, MR001 is highlighted and the time bar 112e on the detection map 111 moves to a position where it overlaps with the leftmost circle of the two circles, as shown in Fig. 10 (the same applies when the device field for R001 is selected). Furthermore, in response to the movement of the time bar 112e, the time bar 112f on the detection list also moves up by one position (linked).

[0048] An abnormal state is, for example, when a device value deviates from its normal range, or when the timing or frequency of device value changes 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 over and over again. Therefore, detecting and displaying abnormal states is extremely useful for improving ladder programs and 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 rectangles representing processes move from right to left as time passes (as mentioned above, the left represents the older time and the right represents the newer time).

[0049] The image display area 113 displays camera images acquired by the PLC 1. The camera images may also be included in the driving record. In FIG. 9, the camera images of the master data and the current camera images are displayed for comparison. Because the camera images are also time-series data, the seek bar 105b indicates the playback time of the camera images and moves from left to right as the playback time elapses. The time bar 112b indicates the selected time. In FIG. 9, it indicates the time when the detection target device R004 entered an unusual state. The time designation unit 106b is a control object for instructing the user to advance or rewind the playback time of the camera images, start playback, or 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 images, and the playback time on the UI 100 so that they are synchronized. This ensures that the playback time on the UI 100 matches the playback time on the analysis report 110.

[0050] The detection list 114 indicates devices that have entered an abnormal state and the time at which that state occurred (the time at which 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 replay mode. The CPU 11 passes the identification information of the clicked device, playback time information (the time at which the device value was collected), and information identifying the driving record to be analyzed (such as a storage path) to the debugging unit 54. This causes the system to transition to replay mode using the driving record to be analyzed, and at this 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 the display screen when the replay mode of the UI 100 is activated with device R004 selected in the detection list 114 of FIG. 9. The seek bar 105a in FIG. 7 indicates the time (14:59:01) at which device R004 entered an abnormal state. Furthermore, the program display area 104 displays the status of each device at this time (14:59:01) in a visually distinguishable manner. Note that the project editing unit 50 may already be operating in 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 passes the time at which the abnormal state (an event that is 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.

[0051] 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, if the time bar 112e is moved to the left of the circle on the left, the time bar 112f in the detection list 114 will move to a position where it overlaps with the top line of the device column for R001.

[0052] 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 activated with the device R004 selected in the detection list 114 of FIG. 9.

[0053] 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 one space. 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, which will be described later, also changes in response to the selection of MR001. Details will be provided later.

[0054] 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 entered an unusual state. In this way, the linking unit 64 synchronizes and displays the time specified by the time bars 112e and 112f of the analysis report 110 with the playback time of the driving record (the time specified by the seek bar 105a).

[0055] 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 device column for MR001 is selected in the detection list 114 of the analysis report 110 and then the UI100 is launched, the UI100 will be launched in the changed state shown in Figures 10 and 11.

[0056] 10, the user selects one device from the detection list 114, but multiple devices may be selected. In this case, the same processing is performed as when the top-level device (the oldest device in terms of time) is selected. That is, for example, if the replay mode of the UI 100 is activated with both MR001 and R004 selected, the UI 100 is activated in the changed state shown in FIG. 11. The concept of time-synchronized playback in this specification includes synchronized 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 synchronize playback of indexes representing time, rather than the time itself.

[0057] 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. Therefore, the user will be able to easily understand the use of the abnormal device, etc.

[0058] The analysis comment 116 displays comments included in the analysis results, master data, and 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.

[0059] 9 and 12 show data for one control cycle in which an unusual state occurred for device R004. More specifically, in the master data, two changes, OFF → ON and ON → OFF, occur in one control cycle, whereas in the current data, no changes occur at all. Therefore, the time bar 112d is displayed at the time when the unusual state occurred, i.e., when the device changed from OFF to ON.

[0060] 9 and 12, when the user selects (clicks) MR001 in the detection list 114, 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, the time bars 112e, 112b, and 112f all indicate the same timing.

[0061] <Industrial wireless system> An industrial wireless system according to an embodiment of the present invention will be described below. In the above embodiment, data is collected from field devices 10 connected to a PLC 1 and analyzed. However, this is merely an example. The PLC 1 may also collect and analyze data from other PLCs, field devices, etc. connected via a network. To do this, the PLC 1 (first industrial device) must be able to communicate with devices (hereinafter referred to as target devices (second industrial devices)) from which data is to be collected, such as other PLCs 1, via an industrial network.

[0062] 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).

[0063] The master device 201 is an example of a primary wireless node, and 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.

[0064] 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.

[0065] 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).

[0066] 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.

[0067] The slave devices 202 (slave devices 202a to 202f) are an example of a wireless slave device. The slave devices 202a to 202f are each the same network device, 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 also be called wireless nodes. Here, the slave device 202a is connected to the master device 201 by wire and is therefore an example of a primary wireless node. On the other hand, the slave devices 202b to 202f are connected wirelessly to the slave device 202a and are therefore examples of secondary wireless nodes.

[0068] The slave device 202a is wiredly connected to the LAN port 38e of the master device 201 via a network cable, which is a wired communication interface. By being wiredly connected to the master device 201, which is a controller, the slave device 202a operates as a wireless module of a primary wireless node. The slave device 202a can also be disconnected from the master device 201 via a wired connection, in which case it operates as a secondary wireless node. The slave device 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 in an FA site. In this case, the operation data transferred from the power meter to the PLC1 may include, for example, data such as integrated active power, current, voltage, power factor, frequency, and integrated reactive power. Furthermore, an Ethernet-compatible communication unit may be provided as part of the PLC 1, and various operational data may be transferred from a power meter wired to any of the slave devices 202a to 202f to the Ethernet-compatible communication unit via the industrial wireless network 204. It is not essential that the target device 203a be connected to the slave device 202a. Furthermore, the slave device 202a can wirelessly communicate with one or more of the other slave devices 202b and 202d via the first wireless communication interface. When the slave device 202a receives a request (including a transfer request) from the PLC 1 via the master device 201, the slave device 202a operates in accordance with the request, transfers the request to the other slave devices 202b to 202f, and transfers responses from the other slave devices 202b to 202f to the PLC 1 via the master device 201.

[0069] The slave device 202b is a network device that performs wireless communication with the slave devices 202a and 202c and wired communication with the target device 203b. The target device 203b does not need to be connected. The slave device 202b relays communication signals between the slave devices 202a and 202c and transfers operation data of the target device 203b to PLC1 via the slave device 202a and the master device 201. When the slave device 202b receives a request from PLC1 via the master device 201, it operates according to the request, transfers the request to another slave device 202c, and transfers a response from the other slave device 202c to PLC1 via the master device 201.

[0070] The slave device 202c is a network device that performs wireless communication with the slave device 202b and wired communication with the target device 203c. The target device 203c does not need to be connected. The slave device 202c transfers operation data of the target device 203c to the PLC 1 via the slave devices 202b, 202a, and the master device 201. When the slave device 202c receives a request from the PLC 1 via the master device 201 and the slave devices 202a and 202b, it operates in accordance with the request, creates a response to the request, and transfers it to the PLC 1 via the slave devices 202a, 202b, and the master device 201.

[0071] The slave device 202d is a network device that performs wireless communication with the slave devices 202a, 202e, and 202f. A target device may also be connected to the slave device 202d. The slave device 202d relays communication signals between the slave devices 202a and 202e, and between the slave devices 202a and 202f. When the slave device 202d receives a request from the PLC 1 via the master device 201 and the slave device 202a, the slave device 202d operates according to the request, forwards the request to the other slave devices 202e and 202f, and forwards responses from the other slave devices 202e and 202f to the PLC 1 via the master device 201.

[0072] 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 need 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 in accordance with the request, creates a response to the request, and transfers the response to the request to the PLC 1 via the slave devices 202a, 202d, and the master device 201.

[0073] 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 need to be connected. The slave device 202f transfers operation data of the target device 203f to PLC1 via the slave device 202d, the slave device 202a, and the master device 201. When the slave device 202f receives a request from PLC1 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 PLC1 via the slave devices 202a, 202d, and the master device 201.

[0074] In this way, by constructing the industrial wireless network 204, the 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.

[0075] Each of the slave devices 202a-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 operational data of the PLC1. Here, the industrial wireless network 204 may be a wireless mesh network. Generally, a wireless mesh network is a network in which multiple slave devices 202a-202f are connected to each other via wireless communication and transmit packets via multi-hop communication. In other words, a mesh-like topology is formed throughout the network by wirelessly connecting adjacent slave devices that can communicate with each other, and packets are transmitted between one or more slave devices in a bucket brigade-like fashion. A wireless mesh network is characterized by its robustness against communication failures compared to other wireless networks, since it can switch to an alternative route if communication becomes unavailable along a specific route. The following provides additional information using FIG. 14.

[0076] 14, the slave 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 (slave devices 202a to 202f) connected by wire. When constructing a wireless mesh network, the parent device 201, for example, by transmitting a broadcast packet, identifies the existence (MAC addresses, etc.) of all the target devices 203a to 203f included in the wireless mesh network, and distributes information on the wireless nodes connected by wire to the target devices 203a to 203f to the slave devices 202a to 202f. The "destination table" may be updated by transmitting a broadcast packet when communicating with a specific target device for the first time.

[0077] The "next hop table" is a table stored individually in each of the slave devices 202a to 202f, and determines to which nearby slave device a packet should be forwarded next (i.e., the next forwarding destination of the packet). When constructing the industrial wireless network 204, the master device 201 determines a packet forwarding path (e.g., a tree shape) and a next hop table that assumes that path, and also determines next hop tables for the slave devices 202a to 202f and distributes them to each slave device. For example, the next hop table stored in the slave device 202e contains information that the next forwarding destination of a packet whose destination node is set to "slave device 202a" is "slave device 202d."

[0078] In this embodiment, the parent device 201 is provided with the function of determining the packet forwarding path and the next hop table, but for example, the function may be provided in the child device 202a connected to the parent device 201 by wire. In other words, when the child device 202a is not connected to the parent device 201 by wire, it has the same functions as the other child devices 202b to 202f, but when it is connected to the parent device 201 by wire, it may perform a function different from that of the other child devices 202b to 202f (for example, the function of determining the packet forwarding path and the next hop table described above). 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 packet forwarding path and the next hop table described above.

[0079] An example of packet forwarding will be described. Considering packet forwarding from target device 203e to parent device 201, target device 203e first forwards the packet to child device 202e, which is connected to it by wire. Child device 202e references the destination table and recognizes that the packet should be delivered to child device 202a, which is connected to parent device 201 by wire. Next, child device 202e references the next hop table and recognizes that in order to deliver the packet to child device 202a, it should send the packet to child device 202d as the next forwarding destination. Child device 202e then forwards the packet to child device 202d, which is the next packet forwarding destination. Thereafter, the same process is repeated at child device 202d, and the packet arrives at child device 202a. Child device 202a references the destination table and recognizes that a packet addressed to parent device 201 has arrived at itself, and forwards the packet to parent device 201, which is connected to it by wire. In this way, packets are transferred in a bucket brigade fashion.

[0080] Another example of packet forwarding will be described. Considering packet forwarding from target device 203e to target device 203f, first, target device 203e forwards the packet to slave device 202e, which is connected to target device 203f by wire. Slave device 202e references the destination table and recognizes that the packet should be delivered to slave device 202f, which is connected to target device 203f by wire. Next, slave device 202e references the next hop table and recognizes that, in order to deliver the packet to slave device 202f, it should send the packet to slave device 202d as the next forwarding destination. Slave device 202e then forwards the packet to slave device 202d, which is the next packet forwarding destination. Slave device 202d repeats the same process, and the packet arrives at slave device 202f. Slave device 202f references the destination table and recognizes that a packet addressed to target device 203f has arrived at itself, and forwards the packet to target device 203f, which is 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 slave device 202a connected to the master device 201.

[0081] The master device 201 (or slave device 202a), which is a primary wireless node, may periodically monitor the communication status (e.g., packet delay time, number of hops, radio wave congestion, radio wave strength, etc.) between slave devices in the industrial wireless network 204, thereby dynamically optimizing the network configuration of the industrial wireless network 204. In other words, the master device 201 (or slave device 202a) may dynamically generate and update the next hop table. For example, if deterioration of the communication status between slave device 202d and slave device 202e is recognized for some reason (such as the placement of an object that causes radio wave interference or radio wave disturbance), slave device 202e searches for other slave devices with which wireless communication is possible. For example, when slave device 202b is found, a route that passes through slave device 202b is determined and updated as the packet transfer route from slave device 202e to slave device 202a. Then, the parent device 201 (or the child device 202a) determines and updates a next hop table that assumes the updated packet forwarding route, and also determines and updates next hop tables for the child devices 202a to 202f, and distributes the updated next hop tables to each child device.

[0082] Note that the function of periodically monitoring the communication status between slave devices, as well as the function of determining the packet forwarding path and the next hop table, may be provided not in master device 201 but in slave device 202a connected to master device 201 by wire. In the above example, packet forwarding using both the "destination table" and the "next hop table" has been described, but this is merely an example.

[0083] The slave devices 202a to 202f also have a NAT (Network Address Translation) function. The NAT function converts source or destination IP addresses on a network path, for example, at the boundary between different networks. By using the NAT function, it is possible to achieve a favorable network configuration while avoiding IP address duplication without converting the IP addresses of existing equipment in a factory or the like. These NAT functions can be enabled or disabled in each slave device. When the NAT function is disabled, the slave devices 202a to 202f operate in a mode without an IP address (operating with an IPv6 address and therefore not consuming an IPv4 address). On the other hand, when the NAT function is enabled, the slave devices 202a to 202f operate in a mode with an IP address (consuming an IPv4 address). According to this embodiment, the NAT function is disabled in the slave device 202a connected to the master device 201 by wire, and is enabled in the other slave devices 202b to 202f. Since the slave device 202a operates as a primary wireless node, it is desirable to restrict the setting to enable the NAT function.

[0084] <Reducing congestion on the industrial wireless network 204> As shown in FIG. 14, when a large number of slave devices 202 join the industrial wireless network 204, the industrial wireless network 204 becomes congested, causing delays in communication packets sent and received between PLC1 and multiple target devices 203 and resulting in packet loss. For example, if some of the time-series device values set to be collected at regular update intervals are lost, gaps in the time-series data occur in PC2, which is a programmable display device, and PLC1, which is a data utilization unit. This may make accurate display and analysis impossible. Furthermore, when 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, WLAN module 223a may connect to the industrial wireless network 204, and WLAN module 223c may operate as an access point.

[0085] 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, making it possible to smoothly display data on mobile devices such as the PC2.

[0086] FIG. 30 is a diagram showing an example of the construction of two types of wireless networks. Here, PLC1 including a data utilization unit is denoted as PLC1a. PLC1a is wired to a parent device 201. Parent device 201 is wired to a child device 202a via a network cable 600. Child devices 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 device 201 and industrial wireless network 204, analyzes the collected data, and stores the analysis results.

[0087] Furthermore, slave device 202a, slave device 202b, and slave device 202c respectively construct wireless LAN networks 901a, 901b, and 901c. PC 2 connects to any of wireless LAN networks 901a, 901b, and 901c, accesses PLC 1a, obtains analysis results, and displays them on display unit 7.

[0088] Alternatively, PC2 may connect to any one of wireless LAN networks 901a, 901b, and 901c, access PLC 1b, acquire real-time data, and display it on display unit 7. PC2 may connect to any one of wireless LAN networks 901a, 901b, and 901c, access PLC 1b, read and edit the ladder program, and then transfer and write the ladder program back to PLC 1b. Furthermore, PC2 may connect to any one of wireless LAN networks 901a, 901b, and 901c, access PLC 1b, send a test run command to PLC 1b, and debug the ladder program.

[0089] Here, the network identification information (SSID) of the wireless LAN networks 901a, 901b, and 901c may be the same or different. When it is desired to allow a specific PC2 to access a specific slave device 202 (e.g., slave device 202a), only a specific SSID is set for the specific PC2 and the specific slave device 202 (e.g., slave device 202a). This allows the specific PC2 to access only the specific slave device 202.

[0090] (1) Structure of the base unit FIG. 15 shows the electrical structure of the parent device 201. The CPU 210 controls the LAN module 212 in accordance with 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 non-volatile memory. The RAM is an example of volatile memory.

[0091] 16 shows the functions of the CPU 210. The CPU 210 realizes various functions in accordance with a program 250 stored in a 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.

[0092] The memory management unit 230 reads predetermined data from the storage device 211 and writes predetermined data to the storage device 221. The storage device 211 functions as an information recording unit.

[0093] The slave unit management unit 231 manages the slave units 202a to 202f connected to the industrial wireless network 204. In particular, the request transmission unit 232 may request a specific slave unit 202 to turn on its indicator light or change the lighting state of its indicator light. The slave unit search unit 233 searches for a slave unit 202a that is directly connected to the master unit 201 via a network cable. Such a slave unit 202a may be called a direct node or a root node. The slave unit registration unit 234 registers slave unit specific information (e.g., product serial number, MAC address) of a slave unit that is newly added to the industrial wireless network 204 in the slave unit list 253 via the memory management unit 230.

[0094] The memory allocation unit 248 reserves a memory area or a memory variable based on the memory map and stores predetermined information therein. The memory map is setting information that maintains the relationship between the memory area or memory variable (e.g., device memory (sometimes simply called a device)) reserved in the storage device 211 and the information (e.g., device value) stored therein, and is set in advance via the PC 2. For example, a device memory named DM11200 stores information indicating the operating status (e.g., normal, warning, abnormal) of the slave device 202a. A device memory named DM11201 stores the reception strength of radio waves from the slave device 202a. A device memory named DM11300 stores information indicating the operating status (e.g., normal, warning, abnormal) of the slave device 202b. A device memory named DM11301 stores the reception strength of radio waves from the slave device 202b. The device memory named DM11400 stores information indicating the operating status (e.g., normal, warning, abnormal) of the slave device 202c. The device memory named DM11401 stores the reception strength of radio waves from the slave device 202c. The same applies to the slave devices 202d to 202f. In this example, the status information group 255 indicates the individual status information of the slave devices 202a to 202f stored in the device memory allocated based on the memory map.

[0095] 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 addresses of communication packets. For example, the NAT unit 237 converts the network addresses and port numbers of packets transmitted and received between the LAN port 38d, which is a port for the WAN, and the LAN ports 38e to 38h, which are ports for the LAN. The communication management unit 235 may generate an IPv6 address based on its own MAC address.

[0096] 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 slave device 202. The setting screens may be realized by a Web user interface. Examples of setting screens include a setting screen for setting the industrial wireless network 204 and a setting screen for setting the indicator light of the slave device 202. The user input accepting unit 239 accepts user input from the PC 2 connected to the LAN ports 38e to 38h or the PC 2 connected to the slave 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 slave device 202. The screen providing unit 240 may be, for example, a Web server.

[0097] The device management unit 241 manages information about the slave devices 202a to f connected to the industrial wireless network 204 and the target devices 203a to f connected to each slave device 202. The device search unit 242 searches for slave devices 202 within the industrial wireless network 204. Specifically, the device search unit 242 sends a notification to all devices within the industrial wireless network 204 and confirms the presence of the connected slave device 202 by receiving a response from the slave device 202. The communication confirmation unit 243 checks the communication status with each slave device 202 present in the slave device list 253 and determines whether or not a connection is established. In addition, the device management unit 241 collects the MAC address table held by each slave device 202 from the slave device 202 that has responded.

[0098] The data control unit 291 controls data related to devices searched for by the device management unit 241. The result conversion unit 292 converts the IP address into data in a format linked to the corresponding slave device 202, based on the data collected by the device management unit 241. The result merging unit 293 merges the data converted by the result conversion unit 292 with existing device data (management data), and the result saving unit 294 saves the updated device data in the storage device 211. Here, the device data is an example of management data. The saving destination may be the slave device list 253 in the storage device 211, or a separate area may be provided for saving the data. The result saving unit 294 also saves status information of each slave device 202 confirmed by the communication confirmation unit 243.

[0099] The screen display unit 295 provides a screen that serves as a graphical user interface (GUI) by providing screen information to the device for the user who is running the Web application. The information providing unit 296 provides information to the user through the various screens it provides. The receiving unit 297 receives user operations performed on the provided screen. For example, the receiving unit 297 receives requests to add a device or edit device information. The result saving unit 294 saves the received information as needed.

[0100] The storage device 211 stores not only the program 250 but also various other information. The master device specific information 251 is network identification information (e.g., MAC address) or a serial number assigned to the master device 201. The mesh network identifier 252 is a network identifier of the industrial wireless network 204 constructed as a wireless mesh network. The slave device list 253 is a list of slave device specific information of the slave devices 202 that are permitted by the master device 201 to participate in the industrial wireless network 204. The setting information 254 includes the wireless frequency band, wireless channel, IP address, etc. used in the industrial wireless network 204. The mesh network identifier 252 may be included in the setting information 254.

[0101] The status collection unit 245 collects individual status information indicating the operating status of the slave units 202a to 202f registered in the slave unit list 253, creates 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 slave units 202 in device memory allocated by the memory map. Here, the status collection unit 245 may collect individual status information in parallel from multiple slave units 202 and store it in the device memory. As a result, multiple pieces of individual status information collected from multiple slave units 202 may be substantially time-synchronized.

[0102] 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 device 201.

[0103] The status information group 255 held in the master unit 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 collects the device values in the PLC 1 and the status information group 255 from the master unit 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.

[0104] 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 results in the analysis result 77. The Web server 82 may provide the PC 2 with the individual status information of the slave units 202a to 202f along with graphs created from time-series data of the device values to display the graphs. 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 master 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 master unit 201 by the collection unit 72.

[0105] (2) Structure of the handset FIG. 17 shows the electrical structure of the slave 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 each be an independent wireless communication circuit, or may be a wireless communication circuit virtually implemented by the SDR 226. In the case of a virtually implemented wireless communication circuit, the antennas 225a, 225b, and 225c may be shared. SDR is an abbreviation for software defined radio. The SDR 226 implements various wireless communication circuits by rewriting the contents of the software. The WLAN modules 223a to 223c communicate with other slave devices 202 and the PC 2 via antennas 225a, 225b, and 225c, respectively. In this example, the WLAN modules 223a-223c are connected to the antennas 225a, 225b, and 225c in a one-to-one relationship, but this is merely an example. For example, by using a multiplexer, the WLAN modules 223a-223c and the antenna 225a may share an antenna provided for each wireless band (e.g., 2.4 GHz, 5 GHz). Amplifiers, filters, frequency conversion circuits, etc. are arranged between the SDR 226 and the antennas 225a, 225b, and 225c, but these 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 equipment) 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 status of the child device 202 and a lighting control circuit. The memory device 221 has ROM and RAM.

[0106] The CPU 220 also has the above-mentioned NAT function. The CPU 220 is provided between the WLAN modules 223a to 223c (wireless connections) and the LAN module 222, and converts addresses to different networks using the NAT function in accordance with specified rules, enabling mutual communication between the networks.

[0107] The WLAN module 223a is, for example, a wireless local area network module for backhaul communication between the slave 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).

[0108] The WLAN module 223b is, for example, a module for wirelessly communicating with other slave devices 202 to execute communication for adding the other slave devices 202 to the industrial wireless network 204. Alternatively, the WLAN module 223b is, for example, a module for wirelessly communicating with other slave devices 202 to execute communication for adding the other slave devices 202 to the industrial wireless network 204 in which the other slave devices 202 are participating. In this case, an initial mesh network identifier 282 (dedicated to the addition process) is set in the WLAN module 223b. If the slave device 202 has already participated in the industrial wireless network 204, the WLAN module 223b of the slave device 202 may function as a second access point and provide a second wireless communication interface. If the slave device 202 is about to participate in the industrial wireless network 204, the WLAN module 223b of the slave device 202 functions as a second station. 17, WLAN module 223b and 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 within a single module (e.g., an integrated circuit) but may be logically separate modules. In other words, they may be physically configured as a single module by using virtual AP technology or the like.

[0109] The WLAN module 223c is a module used to connect, for example, 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, for example, a third access point. Note that the WLAN modules to be connected to the networks can be freely combined.

[0110] FIG. 18 shows the functions of the CPU 220. The CPU 220 realizes various functions in accordance with the program 280 stored in the storage device 221. The storage management unit 260 reads 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 issue an instruction to update the program of the child device 202 via a Web screen provided by the parent device 201, for example, the screen of the PC2. The parent device 201 may store the program 280 (system program) of the child device 202, and may update the program by transferring the program 280 stored in the parent device 201 to the child device 202 upon receiving a user instruction (instruction signal) from the PC2.

[0111] The slave unit management unit 261 manages various functions of the slave 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 slave unit connection unit 263 is a module that establishes a communication link with other slave units 202 that wish to be added to the industrial wireless network 204. The additional slave unit connection unit 263 assigns an initial mesh network identifier 282 (dedicated to addition processing) to the WLAN module 223b and connects the other slave units 202 to a network dedicated to adding slave units. Note that the mesh network identifier 282 is a mesh network identifier dedicated to addition processing that is known to all slave units 202. The additional slave unit connection unit 263 may operate only when the master unit 201 permits or instructs it to add a slave unit 202. The request reception unit 264 receives a request from the master unit 201 via the master / slave 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 sub-unit addition mode, an acquisition request to acquire the unique information 283 from the sub-unit 202 to be added, a request for settings related to IP address conversion, a request to restart the sub-unit, and a request to highlight the indicator light 224 of the sub-unit 202 to be added.

[0112] The memory allocation unit 278 reserves a memory area or a memory variable based on the memory map and stores predetermined information therein. The memory map is setting information that maintains the relationship between the memory area or memory variable (e.g., device) reserved in the storage device 221 and the information (e.g., device value) stored therein, and is set in advance by the PC 2 via the parent device 201. For example, in the storage device 221 of the child device 202a, a device named DM11200 stores information indicating the operating status of the child device 202a (e.g., normal, warning, abnormal). In the storage device 221 of the child device 202a, a device named DM11201 stores the reception strength of radio waves from the child device 202a. In the storage device 221 of the child device 202b, a device named DM11300 stores information indicating the operating status of the child device 202b (e.g., normal, warning, abnormal). In the device named DM11301, the reception strength of radio waves from the child device 202b is stored. In the storage device 221 of the slave device 202c, a device named DM11400 stores information indicating the operating status of the slave device 202c (e.g., normal, warning, abnormal). A device named DM11401 stores the reception strength of radio waves from the slave device 202c. The same applies to the slave devices 202d to 202f. In this example, the individual status information 256 indicates the individual status information of the slave device 202 stored in a device assigned based on the memory map. For example, the individual status information 256 stored in the storage device 221 of the slave device 202a includes the status information of the slave device 202a. The individual status information 256 stored in the storage device 221 of the slave device 202b includes the status information of the slave device 202b.

[0113] The communication management unit 265 manages and controls communication via the WLAN modules 223a to 223c and the LAN module 222. The parent device / child device communication unit 266 is an instance of a program module that enables 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 that controls the WLAN module 223b in accordance with a predetermined communication protocol and executes 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.

[0114] The measurement unit 270 measures the operating status of the slave device 202. For example, the measurement unit 270 may measure the reception strength of radio waves transmitted from other slave devices 202, measure the communication speed, measure the signal-to-interference-plus-noise ratio (SINR), or measure the temperature of the slave device 202. The measurement unit 270 creates individual status information 256 indicating the measurement results and stores it in the storage device 221. For example, the measurement unit 270 saves the measurement results for devices allocated in the storage device 221 based on a memory map. Therefore, the individual status information 256 may be understood as a collection of measurement results respectively held in multiple devices. When the master device 201 requests the individual status information 256, the slave device management unit 261 transmits the individual status information 256 to the master device 201 via the master device / slave device communication unit 266.

[0115] 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 parent device 201 in the WLAN module 223a, and constructs the industrial wireless network 204. The setting information 254 includes the wireless frequency band, wireless channel, IP address, etc. used in the industrial wireless network 204.

[0116] The communication control unit 271 controls communication with external devices such as other communicatively connected slave devices 202, target devices, and the master device 201. The communication control unit 271 includes an IP address allocation unit 272, an IP address conversion unit 273, and a filter unit 274. The IP address allocation unit 272 allocates an IP address for the slave device 202. When the NAT function is enabled, the IP address conversion unit 273 converts the source or destination IP address in accordance with the NAT transfer rule 258. Note that, according to this embodiment, the IP address conversion unit 273 converts the source IP address when receiving a communication packet from the LAN module 222, which is a wired connection. On the other hand, the IP address conversion unit 273 converts the source and destination IP addresses when receiving a communication packet from the WLAN modules 223a to 223c, which are wirelessly connected. The filter unit 274 determines whether or not the IP address of the transmission destination or destination of a received communication packet needs to be converted in accordance with the NAT transfer rules 258, and if conversion is necessary, notifies the IP address conversion unit 273 of the received communication packet. Specifically, the filter unit 274 makes the above determination based on whether or not the communication packet has an IP address set according to the NAT transfer rules 258.

[0117] The storage device 221 stores unique information 283 of the slave device. The unique information 283 is a network identifier (e.g., a 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 slave device 202 is newly added, the unique information 283 of the slave device 202 is transmitted to the master device 201 via the industrial wireless network 204. The master device 201 determines whether to permit the addition of the slave device 202 based on the unique information 283 of the slave device 202. The unique information 283 of the slave device may also store a MAC address table that holds the MAC addresses of one or more target devices (secondary industrial equipment) that are wired to the slave device.

[0118] Furthermore, the memory device 221 stores a NAT function mode enable / disable flag 257 and a NAT transfer rule 258. The NAT function mode enable / disable flag 257 is information indicating whether the NAT mode of the slave device 202 is set to be enabled or disabled. The NAT transfer rule 258 defines a rule for transferring the destination or source IP address of a received communication packet when the NAT function is set to be enabled. By distributing the NAT transfer rule 258 from the master device 201 to each slave device 202, the transfer rules of the NAT function can be set collectively.

[0119] <Overview of IP Address Translation> FIG. 19 shows the IP address conversion procedure in the slave device 202. The conversion procedure described below is a process that can be performed in the slave devices 202a to 202f. In the present embodiment, the NAT function is disabled in the slave device 202a, and the NAT function is enabled in the slave devices 202b to 202f.

[0120] FIG. 19(a) shows the IP address conversion procedure when receiving a packet from a wired-connected device. A communication packet is received from the wired-connected target device 203 via the LAN port 38i and the LAN module 222. For example, the source IP address in the communication packet is set to "192.168.0.10" and the destination IP address is set to "192.168.1.101". When receiving the communication packet, first, the filter unit 274 determines whether the source and destination IP addresses are IP addresses that need to be converted based on the information in the NAT transfer rule 258. When the filter unit 274 determines that IP address conversion is necessary, it is passed to the IP address conversion unit 273, and at least one of the source and destination IP addresses is converted based on the information in the NAT transfer rule 258. Here, as shown in the figure, the source IP address is converted from "192.168.0.10" to "192.168.0.1". Thereafter, the communication packet with the converted source IP address is transferred to the destination IP address via the WLAN module 223.

[0121] 19(b) shows the IP address conversion procedure when a packet is received from a wirelessly connected device. A communication packet is received from another wirelessly connected slave device 202 via the WLAN module 223. For example, the source IP address of the communication packet is set to "192.168.1.100" and the destination IP address is set to "192.168.1.1." When the communication packet is received, the filter unit 274 first determines whether the source and destination IP addresses are IP addresses that need to be converted based on the information in the NAT transfer rule 258. If the filter unit 274 determines that IP address conversion is required, the packet is passed to the IP address conversion unit 273, and at least one of the source and destination IP addresses is converted based on the information in the NAT transfer rule 258. Here, as shown in the figure, the source IP address is converted from "192.168.1.100" to "192.168.0.254," and the destination IP address is converted from "192.168.1.1" to "192.168.0.10." The communication packet with the converted source and destination IP addresses is then transferred to the destination IP address via the LAN module 222 and LAN port 38i.

[0122] As described above, according to this embodiment, the IP addresses to be converted differ between the direction in which a communication packet is transferred from the first wireless communication interface to the wired communication interface and the direction in which a communication packet is transferred from the wired communication interface to the first wireless communication interface. Specifically, when a communication packet is transferred from the first wireless communication interface to the wired communication interface, both the source IP address and the destination IP address of the communication packet are converted in accordance with the transfer rule. On the other hand, when a communication packet is transferred from the wired communication interface to the first wireless communication interface, only the source IP address of the communication packet is converted in accordance with the transfer rule.

[0123] <Device connection confirmation procedure> 20 is a flowchart showing the processing procedure for device connection confirmation in the parent device 201. The processing described below is realized, for example, by the CPU 210 of the parent device 201 executing a program stored in the storage device 211. Here, an example will be described in which a PC 2 is connected to the parent device 201 and device connection confirmation is performed in response to an instruction from a user via the PC 2, but this is not intended to limit the present invention. For example, the PC 2 may be connected to the child devices 202a to 202f, etc. The various screens described below will be described as being displayed on the display unit 7 of the PC 2.

[0124] In S1, the CPU 210 receives a device search instruction from the user via a screen displayed on the display unit 7 by the screen providing unit 240 of the setting screen management unit 238, and executes a device search by the device search unit 242. The device search unit 242 broadcasts a device search notification (response request) to all devices within the same network (predetermined network) as port B, which is a predetermined port of the parent device 201. In S2, the CPU 210 determines whether a predetermined time has elapsed while receiving responses from each child device 202. If the predetermined time has elapsed, the process proceeds to S3.

[0125] In S3, the CPU 210 acquires specific information about each slave device 202 from the response received from that slave device. Specifically, the CPU 210 acquires the IP address of that slave device included in the response to the search and the MAC address associated with it. Furthermore, in S4, the CPU 210 retrieves the MAC address table held by each slave device 202. The MAC address table includes the MAC addresses of one or more target devices or other industrial equipment wired to that slave device.

[0126] Next, in S5, CPU 210 converts the data acquired by result conversion unit 292 into data linking IP addresses with each device, and generates a list of IP addresses. Next, in S6, CPU 210 reads the slave device NAT settings and adds the read information to the IP address list generated in S5 to update it. Details of the processing of S6 will be described later using Figure 21. When updating of the list in S6 is completed, in S7 CPU 210 causes result storage unit 294 to store the results updated in S6.

[0127] The process of checking the communication status of each device will now be described. When the list is updated, the communication status of the devices included in the list can be checked. According to this embodiment, the communication status of each device may be checked immediately after the list is updated, or the communication status of each device may be checked in response to an instruction from the user. First, in S8, the CPU 210 acquires the communication status of the registered devices included in the slave device list 253 using the communication check unit 243, and updates and stores the communication status and information on the target devices connected to each device according to the information acquired using the result storage unit 294. Thereafter, in S9, the CPU 210 provides a screen including the updated information using the information provision unit 296 to the user running the Web application.

[0128] Layout editing will now be described. A user who has been provided with the latest device status information can perform editing on those devices. In this embodiment, the procedure for editing following the provision of information in S9 will be described, but this is not intended to limit the present invention. The editing described below may also be triggered by any other process.

[0129] In S10, the CPU 210 accepts a device editing operation via the accepting unit 297. Once the device editing has been performed, in S11 the CPU 210 acquires the communication status of the registered devices included in the slave device list 253 via the communication confirmation unit 243, updates and saves the communication status and information on the target devices connected to each device according to the acquired information via the result saving unit 294, and ends the processing of this flowchart. Details of the editing process will be described later using an editing screen.

[0130] 21 shows the detailed processing procedure of S6 in confirming device connection of parent device 201. When the IP address list is generated in S5 above, CPU 210 determines in S61 whether or not there are already existing search results (device data). If there is existing device data, the process proceeds to S62; if not, the process proceeds to S63.

[0131] In S62, the CPU 210 deletes predetermined information (the random MAC and the device data of the slave device NAT) from the existing data and proceeds to S63. Here, the predetermined information refers to, for example, the random MAC address and the device data of the slave device NAT. Here, the random MAC using a random MAC address mainly corresponds to a WiFi-connected device such as an iPad (registered trademark), a tablet, or a smartphone. A random MAC address is a dynamically changing MAC address, which prevents tracking and improves security. However, because the MAC address changes, leaving the existing results as they are would result in the same device's previous MAC address remaining. Therefore, in this embodiment, if existing device data exists, potentially duplicated MAC addresses are searched for and deleted. This prevents duplicate MAC addresses from affecting the system.

[0132] Since random MAC has a characteristic feature in the first 3 bytes of the MAC address, it is possible to search for a specific device by searching that part. Furthermore, since the device data of the child device NAT is returned as the MAC address of the connected child device, it can be searched using that MAC address. However, since the MAC address of the connected device itself cannot be obtained from the device data of the child device NAT, this embodiment deletes it from the existing device data and merges it with the latest device data. Note that a child device NAT device refers to a device to which an IP address is assigned using the NAT function of the child device 202.

[0133] In S63, the CPU 210 merges the generated IP address list, which is the latest search result, with the existing data, and ends the processing of this flowchart. After completion, the processing proceeds to S7 above, where the merged results are saved. By merging the search results with the existing device data in this way, duplication of device data searched in the past is avoided and maintained, and devices that have been searched even once can be displayed on the search screen described later. This makes it possible to display devices that are not connected to communication due to factors such as power off or the occurrence of an abnormality, and allows the user to easily recognize such devices. Note that devices that do not need to be managed can be deleted using button 2306 described later.

[0134] 22 is a flowchart showing the processing procedure for confirming device connection of the child device 202. The processing described below is realized by, for example, the CPU 220 of each child device 202 executing a program stored in the storage device 221.

[0135] First, the storage of the MAC address table will be described. In S11, the CPU 220 determines whether a second industrial device such as a target device is connected via a wired connection to the LAN port 38i of the slave device 202. If a wired connection is established, the process proceeds to S12, where the CPU 220 acquires the MAC address of the connected device, and in S13, stores the acquired MAC address in a predetermined area of the storage device 221. Here, multiple second industrial devices may be connected to the slave device 202.

[0136] Next, a case where a response request for a device search is received will be described. In S14, the CPU 210 determines whether a request for a device search has been received from the parent device 201. If not, the processing of this flowchart ends. On the other hand, if a request for a device search has been received, the CPU 210 responds to the request in S15 by transmitting specific information including an IP address and a MAC address to the parent device 201, and then the processing of this flowchart ends.

[0137] <Settings GUI> The various setting GUIs (setting screens) described below will be described as being displayed on the display unit 7 of the PC 2 connected to the parent device 201, for example. However, the PC 2 can also be connected to the child device 202, and in that case, various setting screens described below are displayed on the display unit 7 of the PC 2 in accordance with instructions from the child device 202. That is, in this embodiment, the setting screens can be displayed on the display unit of a PC connected to either the parent device 201 or the child device 202. Furthermore, these setting screens may be generated by either the parent device 201 or the child device 202 to which the PC is connected, or may be generated collectively by the parent device 201 and provided to the child device 202. In either case, when screen information for the setting screen is generated, the parent device 201 and the child device 202 are examples of screen generation units.

[0138] 23 shows a search screen (map display) for connected devices. The search screen according to this embodiment searches for industrial devices within an area such as a factory, and provides the user with a map display or list display, as well as the communication connection status within the area. The user can check the various screens described below to confirm the connected devices within the area, and can add or edit devices via these screens.

[0139] A screen 2300 is an example of a screen for executing a device search, and shows the display screen after the device search has been executed. The screen 2300 includes a map display 2301, a device display 2302, and various buttons 2303 to 2307.

[0140] In the map display 2301, icons 2311 indicating wireless nodes present in the industrial wireless network 204, icons 2312 indicating the number of second industrial devices connected to each wireless node by wire, and lines 2313 indicating the communication connections of each wireless node are superimposed on an area map of a factory or the like. In this example, the wireless nodes include the master device 201 and each slave device 202. An icon 2314 indicates the icon of a wireless node selected by the pointer 103. The icon 2314 is displayed in a different color, transparency, or shading from the unselected icons. An icon 2315 indicates the icon of the master device 201. Although a slave device 202a is wired to the master device 201, no second industrial device is connected to that device, and therefore "0" is displayed in the icon 2312. The icon 2312 includes an object indicating a wired connection and a numerical value indicating the number of wired connected devices. A line 2313 indicating a communication connection indicates the connection status, for example, a solid line indicates a communication connection, and a dashed line indicates a communication disconnection. By checking the map display 2301, the user can easily understand the location of each wireless node, the status of the communication connection between the nodes, and the devices connected to each node by wire.

[0141] The device display 2302 is a list display of second industrial devices connected by wire to the wireless node displayed in the map display 2301. 2321 indicates the name of the wireless node. 2322 is an item showing information about devices connected by wire to the corresponding wireless node. Item 2322 indicates the connection status of the corresponding device, with "OK" indicating a communication-enabled state and "not connected" indicating a communication-disabled state. Item 2322 also displays the IP address and name of each device. In the example of unit 05, a slave NAT device is shown. For a slave NAT device, the IP address within the industrial wireless network 204 and the IP address converted by the NAT function are displayed in parentheses. Furthermore, an edit button 2323 is displayed in the item 2322 in an operable manner. Operating the edit button 2323 displays a screen 2500 (described later) where various information about each device can be changed. This allows for easy identification when multiple devices are connected. Since unit 05 is "unconnected," an object indicating that unit 05 cannot be edited if it is a unit NAT device or a random MAC device is displayed. An icon 2324 is displayed for each corresponding wireless node, and by operating the icon, the LED of the corresponding wireless node can be turned on. Specifically, when the icon 2324 is operated, the CPU 210 determines that an instruction to select the corresponding wireless node has been received and transmits a highlighting command to the corresponding wireless node (e.g., slave device 202b). The slave device receiving the highlighting command performs highlighting, such as by turning on (or blinking) an LED (status indicator light), in response to the command. This allows the user to easily confirm the actual location of the selected slave device within the factory. When the IP address is set as a hyperlink, icon 2325 is displayed with an underline and can be operated. The user can access the IP address by operating the hyperlinked IP address.

[0142] When button 2303 is operated, a device search and communication confirmation are executed, and the search results are reflected in map display 2301 and device display 2302. Before a device search is executed, the results of the previous search may be displayed. Furthermore, when button 2304 is operated, the communication status of the registered devices is confirmed using the latest information on the child device list, and the results are reflected in line 2313 of map display 2301 and item 2322 of device display 2302. The difference is that button 2303 requires processing time because communication is performed with all devices within the network, whereas button 2304 shortens processing time because communication is performed only with registered devices.

[0143] When button 2305 is operated, past search results (not shown) are displayed in a list, and by selecting any result included in the list, the result can be displayed in map display 2301 and device display 2302. When any device displayed in map display 2301 or device display 2302 is selected with pointer 103 or the like and button 2306 is operated, the device can be deleted from management. When button 2307 is operated, the screen transitions to a list display screen, which will be described later.

[0144] In this way, a user can obtain various information about wireless nodes by using the search screen. For example, the user can easily check the IP address of a device located at a specific location in a factory. Alternatively, if the user recognizes a specific IP address, the user can check the device to which that IP address is assigned on the search screen. Furthermore, when the user operates the pointer 103 on the map display 2301 to move the pointer 103 over the icon 2311 of a specific wireless node, the node is selected. The corresponding icon 2311 in the map display 2301 and the corresponding item 2322 in the device display 2302 are displayed in a different color or with a different shade than the other devices. This allows the user to easily check the IP address of the device they want to access and the connected devices in relation to its location in the factory.

[0145] 24 shows an IP address input screen for the application. Screen 2400 is an example of an input screen for entering the IP address of the desired device confirmed on screen 2300 above and accessing that device. Screen 2500 includes a selection area 2401 for the communication port on PC2, a connection destination setting area 2402, a route setting 2403, setting information 2404 for the route setting, a route setting detail setting button 2405, and buttons 2406 to 2408.

[0146] As shown in Fig. 24, Ethernet can be selected in selection area 2401, and the IP address and port number of the connection destination confirmed on screen 2300 can be entered in setting area 2402. Note that a connection destination search button and a connection test button are displayed in an operable manner in setting area 2402. Operating the connection destination search button executes a device search and displays screen 2300. Operating the connection test button executes a communication check with the entered connection destination.

[0147] Route settings 2403 enables the settings for routing via a relay network, and the setting information 2404 and advanced settings button 2405, which were displayed with shading before the settings were enabled, are now displayed without shading. When the shading is removed, the advanced settings button 2405 can be selected, and detailed route settings can be made. The set contents are reflected in the setting information 2404 and displayed.

[0148] When button 2406 is operated, a list of connected devices, such as screen 2300, is displayed. When button 2407 is operated, the set contents are reflected and the screen returns to the original screen. On the other hand, when button 2408 is operated, the set contents are discarded and the screen returns to the original screen.

[0149] 25 shows an edit screen for device information. Screen 2500 shows an example of the edit screen for device information, and is a screen that is displayed when, for example, edit button 2323 on screen 2300 is operated. Screen 2500 is configured to include various setting areas 2501 to 2504 and buttons 2505 and 2506.

[0150] In setting area 2501, the IP address of the corresponding device can be edited. In setting area 2502, the name of the corresponding device can be edited. In setting area 2503, the type of the corresponding device can be set, and when selected, a pull-down menu is displayed allowing multiple types to be selected. The type of device icon displayed in item 2322 on screen 2300 changes depending on the type setting. This allows the user to easily check the type of device in the list display of connected devices. In setting area 2504, the wireless node to connect to can be edited.

[0151] Operating button 2505 saves the changes made on screen 2500. Operating button 2506, on the other hand, discards the changes made on screen 2500 and returns to the original screen. Items 2507 and 2508 indicate items for setting the IP addresses of the PLC equipped with a Web server, the data utilization unit (analysis unit), and the wireless node equipped with a Web server as hyperlinks. For the device equipped with a Web server selected in 2504, the hyperlink setting can be enabled or disabled in 2507. When the hyperlink is enabled in 2507, a Web address can be entered in link URL field 2508, and the address is saved along with the enabled setting. A hyperlink for accessing the Web address based on the saved setting is displayed in 2325 in FIG. 23 and in 2611 in FIG. 26 (described later). Note that an example of a device editing screen has been described above. As a setting screen related to the search screen, in addition to editing devices, a use case for pre-registering device information for equipment to be added in the future can also be envisioned. By pre-registering, an IP address can be secured for the equipment to be added. The pre-registration screen has the same configuration as the editing screen, so a description thereof will be omitted.

[0152] 26 shows a search screen (list display) for connected devices. Screen 2600 shows the list display format of the search screen (map display) of screen 2300. For example, it is displayed by operating button 2307 on screen 2300. In screen 2600, the same components as those in screen 2300 are given the same reference numerals, and descriptions thereof will be omitted.

[0153] Screen 2600 includes display areas 2601 to 2607 and buttons 2303 to 2306, 2608, and 2609. As shown in FIG. 26, screen 2600 displays various information for each searched device in list form. In each item, display area 2601 displays the IP address of the corresponding device, display area 2603 displays an icon and name indicating the type of the corresponding device, display area 2605 displays the belonging (wired) unit, display area 2606 displays the communication status of the corresponding device, and display area 2607 displays an edit button for editing the corresponding device in an operable manner. Reference numerals 2602 and 2604 denote search bars for entering an IP address or device name to search for the corresponding device. Using the search bars also makes it possible to easily search for unused IP addresses.

[0154] Each item can be selected using pointer 103, and the selected item is highlighted with a frame or the like, as shown in 2610. When a button 2609 for displaying the selected device on a map is operated in this selected state, a map screen such as screen 2300 is displayed with the device highlighted. The map display may be displayed in a pop-up window instead of transitioning to screen 2300. By displaying a map screen highlighting the selected device, the location of the desired device within the factory can be easily grasped. Only the selected device may be displayed, or other devices may also be displayed. When other devices are also displayed, highlighting is preferable. Operating button 2608 transitions to the map display format of screen 2300. For a unit (here, unit 03) to which a hyperlink is set in FIG. 25, its IP address is underlined and operable in display area 2601. Operating the hyperlink allows access to the unit.

[0155] 27 to 29 show layout screens for editing the placement positions of wireless nodes. Here, a description will be given of the layout editing screens for editing the placement in association with the actual positions of wireless nodes on a map displaying area information such as a factory.

[0156] Screen 2700 shows a screen for selecting a background image (map) that displays area information such as a factory when a wireless node is searched for in a device search or the like. The background image is an image that shows information about the premises where wireless nodes and the like are located. If a background image is not registered when a device search is performed, only objects indicating the searched wireless nodes are displayed, and they are not displayed on the map. Therefore, it is necessary to select a background image to be displayed on the map and edit the layout. Therefore, after a device search is performed from screen 2300 or the like, if a background image is not registered, the screen may transition to screen 2700. Alternatively, a button or the like for transitioning from screen 2300 to screen 2700 may be displayed as needed, and the screen may transition to screen 2700 when the button is operated.

[0157] Screen 2700 displays icons (objects) of the searched wireless nodes (master device 201, slave device 202a) 2701 and the wireless nodes (slave devices 202b to 202f). Screen 2700 also displays a layout editing setting area 2710 and buttons 2703 to 2705. Setting area 2710 includes a thumbnail image 2711 of the background image, a setting button 2712 for setting the selected background image, a slide bar 2713 for setting the transparency of the background image, a setting area 2714 for setting the display color of the icons, and a setting area 2715 for setting the size of the icons. Selecting thumbnail image 2711 with pointer 103 or the like displays a pop-up (not shown) for changing to another background image. This pop-up displays at least one of a plurality of file names and thumbnail images so that they can be selected. The transparency of the background image can be changed by dragging the selected portion (black circle) of the slide bar left or right using pointer 103. By increasing the transparency of the background image and making it appear lighter, the icons representing wireless nodes can be displayed more clearly. Setting areas 2714 and 2715 are each a pull-down setting method, and selecting one displays selectable options. There are no particular limitations on the options.

[0158] Button 2703 is a button for initializing the layout and for returning icons 2701 and 2702 whose arrangement has been changed to their initial arrangement. Button 2704 is a button for completing and saving the edited contents of the wireless node arrangement. Furthermore, operating button 2704 transitions to screen 2900, which will be described later. Button 2705 is a button for discarding the edited contents and returning to the screen from which the transition originated.

[0159] 28 is a screen showing a state in which a background image has been set by operating the setting button 2712 on the screen 2700. The same components as those on the screen 2700 are given the same reference numerals, and descriptions thereof will be omitted. An area 2801 on the screen 2800 shows a state in which a background image has been set in the area of the icons indicating the searched wireless nodes. Note that transparency has been set for the background image, so that it is displayed in a form different from that of the icons 2701 and 2702 (for example, with different color parameters). In the area 2801, the icons 2701 and 2702 can be dragged using the pointer 103 to change their placement to a desired position.

[0160] 29 shows a screen to which the transition occurs when the layout of icons 2701 and 2702 on screen 2800 is edited and button 2704 is operated. The same components as those on screens 2700 and 2800 are given the same reference numerals and description thereof will be omitted.

[0161] On screen 2900, as shown by the icons in 2901, the placement of each wireless node is changed from its initial position, and the communication status of each wireless node is also displayed. A solid line connecting the icons indicates a communication-enabled state, a cross on the solid line indicates a communication-disabled state, and a dashed line connecting the icons indicates a redundant path. Note that these display formats are merely examples, and any display format that clearly displays the communication status may be used. Here, a redundant path refers to a reroute that automatically restores communication using another path when one communication path in a mesh network is disconnected. By referring to the redundant path, the user can easily confirm the safety in the event of a disconnection. If the safety is low, measures can be taken, such as adding a wireless node or changing the location. For wireless nodes that are not connected, an object indicating this may be displayed, as shown in 2910.

[0162] Button 2902 is a button for returning to a layout editing screen such as screen 2800, and allows the layout to be edited again. Button 2903 is a button for adding a wireless node. Button 2904 is a button for deleting a wireless node corresponding to an icon selected with pointer 103 or the like from among the icons displayed in area 2801. Note that on screen 2900, device display 2302 may be displayed in a list as displayed on screen 2300.

[0163] <Technical ideas derived from examples> [Aspect 1] An industrial wireless system including at least a plurality of wireless nodes that convert some of the connections between a plurality of communicable industrial devices into connections via a wireless network, the plurality of wireless nodes including a primary wireless node (e.g., slave device 202a and master device 201) that manages the wireless network and is wired to a first industrial device (e.g., PLC1, 1a) among the plurality of industrial devices, and one or more secondary wireless nodes (e.g., slave devices 202b to 202f) that are wirelessly connected to the primary wireless node and wired to a second industrial device (e.g., target devices 203b to 203f, PLC1b) among the plurality of industrial devices, wherein the secondary wireless node includes a first wireless communication interface for wirelessly communicating with the primary wireless node via the wireless network, a wired communication interface for wired communication with the second industrial device connected to a wired network, and a second wireless communication interface for connecting the secondary wireless node to the wired communication interface. and a providing unit that provides the primary wireless node with the identification information recorded by the information recording unit, wherein the primary wireless node searches for devices connected to a predetermined network corresponding to a predetermined port of the primary wireless node and collects, from each device, an IP address and identification information linked to the IP address, and collects, from the one or more secondary wireless nodes of the wireless network, identification information of the second industrial devices connected to a wired communication interface of each secondary wireless node by linking the identification information with each secondary wireless node; and a management data generating unit that generates management data that links each secondary wireless node collected by the device searching unit with the IP address of the second industrial device connected to each secondary wireless node.

[0164] A wireless network includes multiple wireless nodes, and understanding the location and identification information, such as IP addresses, of wireless nodes located on the premises of a factory or other facility can be cumbersome, complex, and difficult. Accidental access to a device and changes to a program in an uncertain state can affect the production line. However, according to the above-described embodiment, it is possible to search for devices connected to a specific wireless network and appropriately manage the identification information of each device. Using this information, a list of each device can be provided, with the identification information associated with each device. This allows users to easily check the wireless network in an industrial wireless system.

[0165] [Point 2] The management data generation unit may update the existing management data based on the identification information of each secondary wireless node newly collected by the equipment search unit and the identification information of the second industrial equipment connected to each secondary wireless node.

[0166] [Point 3] When updating the management data, the management data generation unit may maintain the original data and add new data.

[0167] [Point 4] When updating the management data, the management data generation unit may delete potentially duplicated data from the original data before adding new data.

[0168] [Point 5] the primary wireless node has a setting information generating unit that generates setting information for each secondary wireless node having an enabled NAT (Network Address Translation) function, for associating a connection IP address for identifying the second industrial device connected to the secondary wireless node corresponding to the predetermined network with a device IP address for identifying the second industrial device connected to each secondary wireless node; The management data generation unit may replace an IP address that corresponds to the connection IP address among the IP addresses newly collected by the device search unit with an IP address that corresponds to the device IP address, based on the setting information generated by the setting information generation unit.

[0169] [Point 6] When the second industrial device is wired connected via the wired communication interface and the NAT function is disabled, the secondary wireless node may communicate between the wireless networks using an IPv6 address, and control communication between the first wireless communication interface and the wired communication interface as communication on the specified network using an IPv4 address.

[0170] [Point 7] a screen generation unit that provides a GUI for generating setting information; The GUI may include a screen that displays a list of the one or more secondary wireless nodes and displays a map of the primary wireless node and the one or more secondary wireless nodes.

[0171] [Point 8] The map display may be displayed superimposed on a background image of the site where the secondary wireless node is located.

[0172] [Point 9] The map display may display the arrangement of the wireless nodes in a changeable manner.

[0173] [Point 10] the list display displays a list of the second industrial devices connected to each wireless node; The map display may display the number of the second industrial devices connected to each wireless node.

[0174] [Point 11] The map display may display the wireless network route and an alternative mesh network route.

[0175] [Point 12] In the map display, the positions of objects representing wireless nodes displayed on the map may be editable.

[0176] [Point 13] The primary wireless node may further include a communication confirmation unit that confirms a communication state with a device managed by the management data.

[0177] [Point 14] the primary wireless node further comprises a web server; The GUI screen generated by the screen generation unit may be provided via the web server.

[0178] [Point 15] the primary wireless node further comprises an engineering tool; The GUI screen generated by the screen generation unit may be provided via the engineering tool.

[0179] [Point 16] The wireless node is provided with a status indicator light, When a selection instruction for a wireless node is received on the screen of the GUI, a highlight display command is sent to the corresponding wireless node; When the wireless node receives the highlight command, the wireless node may highlight the status indicator light of the wireless node in response to the command.

[0180] [Point 17] The highlighted display may be displayed in a color different from that of the other wireless nodes, or may be displayed in a flashing manner.

[0181] [Point 18] The highlighting command may request that an LED provided in the one or more secondary wireless nodes blink.< / plc>

Claims

1. An industrial wireless system including at least a plurality of wireless nodes that convert some of connections between a plurality of communicable industrial devices into connections via a wireless network, the plurality of wireless nodes including a primary wireless node that manages the wireless network and is wired to a first industrial device among the plurality of industrial devices, and one or more secondary wireless nodes that are wirelessly connected to the primary wireless node and wired to a second industrial device among the plurality of industrial devices, The secondary wireless node a first wireless communication interface for wirelessly communicating with the primary wireless node via the wireless network; a wired communication interface for wired communication with the second industrial device connected to a wired network; an information recording unit that records identification information that identifies each of the one or more second industrial devices connected to the secondary wireless node via the wired communication interface; a providing unit that provides the primary wireless node with the identification information recorded by the information recording unit, The primary wireless node: an equipment searching unit that searches for equipment connected to a predetermined network corresponding to a predetermined port of the primary wireless node, and collects an IP address and identification information associated with the IP address from each equipment, and also collects identification information of the second industrial equipment connected to a wired communication interface of each secondary wireless node from the one or more secondary wireless nodes of the wireless network, in association with each secondary wireless node; an industrial wireless system having a management data generation unit that generates management data linking each secondary wireless node collected by the equipment search unit with the IP address of the second industrial equipment connected to each secondary wireless node.

2. 2. The industrial wireless system according to claim 1, wherein the management data generation unit updates the existing management data based on the identification information of each secondary wireless node newly collected by the device search unit and the identification information of the second industrial device connected to each secondary wireless node.

3. The industrial wireless system according to claim 2 , wherein the management data generator maintains the original data and adds new data when updating the management data.

4. 4. The industrial wireless system according to claim 3, wherein when updating the management data, the management data generation unit deletes potentially duplicated data from the original data before adding new data.

5. the primary wireless node has a setting information generating unit that generates setting information for each secondary wireless node having an enabled NAT (Network Address Translation) function, for associating a connection IP address for identifying the second industrial device connected to the secondary wireless node corresponding to the predetermined network with a device IP address for identifying the second industrial device connected to each secondary wireless node; 2. The industrial wireless system according to claim 1, wherein the management data generation unit replaces an IP address corresponding to the connection IP address among the IP addresses newly collected by the device search unit with an IP address corresponding to the device IP address, based on the setting information generated by the setting information generation unit.

6. 6. The industrial wireless system according to claim 5, wherein when the second industrial device is wired connected via the wired communication interface and the NAT function is disabled, the secondary wireless node communicates within the wireless network using an IPv6 address, and controls communication between the first wireless communication interface and the wired communication interface as communication of the specified network using an IPv4 address.

7. a screen generation unit that provides a GUI for generating setting information; The industrial wireless system of claim 1 , wherein the GUI includes a screen that lists the one or more secondary wireless nodes and displays a map of the primary wireless node and the one or more secondary wireless nodes.

8. The industrial wireless system according to claim 7 , wherein the map display is displayed superimposed on a background image of a site where the secondary wireless node is located.

9. The industrial wireless system of claim 7 , wherein the map display is displayed in a manner that allows the arrangement of wireless nodes to be changed.

10. the list display displays a list of the second industrial devices connected to each wireless node; The industrial wireless system according to claim 9 , wherein the map display displays the number of the second industrial devices connected to each wireless node.

11. 10. The industrial wireless system of claim 9, wherein the map display displays a path for the wireless network and an alternate path for a mesh network.

12. The industrial wireless system of claim 9 , wherein the map display allows editing of positions of objects representing wireless nodes displayed on the map.

13. 10. The industrial wireless system according to claim 9, wherein the primary wireless node further comprises a communication confirmation unit that confirms a communication state with a device managed by the management data.

14. the primary wireless node further comprises a web server; 10. The industrial wireless system according to claim 9, wherein the GUI screen generated by the screen generator is provided via the web server.

15. the primary wireless node further comprises an engineering tool; The industrial wireless system according to claim 9 , wherein the GUI screen generated by the screen generator is provided via the engineering tool.

16. The wireless node is provided with a status indicator light, When a selection instruction for a wireless node is received on the screen of the GUI, a highlight display command is sent to the corresponding wireless node; 8. The industrial wireless system according to claim 7, wherein when the wireless node receives the highlighting command, the wireless node highlights the status indicator light of the wireless node in response to the command.

17. The industrial wireless system of claim 16 , wherein the highlighting is displayed in a color different from other wireless nodes or flashes.

18. 17. The industrial wireless system of claim 16, wherein the highlight command requests that an LED provided on the one or more secondary wireless nodes blink.

19. a primary wireless node of an industrial wireless system including at least a plurality of wireless nodes that convert some of connections between a plurality of communicable industrial devices into connections via a wireless network, the plurality of wireless nodes including a primary wireless node that manages the wireless network and is wired to a first industrial device among the plurality of industrial devices, and one or more secondary wireless nodes that are wirelessly connected to the primary wireless node and wired to a second industrial device among the plurality of industrial devices, a first wireless communication interface for wirelessly communicating with the one or more secondary wireless nodes via the wireless network; an equipment searching unit that searches for equipment connected to a predetermined network corresponding to a predetermined port of the primary wireless node, and collects an IP address and identification information associated with the IP address from each equipment, and also collects identification information of the second industrial equipment connected to a wired communication interface of each secondary wireless node from one or more secondary wireless nodes of the wireless network, in association with each secondary wireless node; A primary wireless node having a management data generation unit that generates management data linking each secondary wireless node collected by the equipment search unit with the IP address of the second industrial equipment connected to each secondary wireless node.

Citation Information

Patent Citations

  • Radio mesh network system and state display method for the same

    JP2014022981A