System
The system automates maintenance procedures to improve efficiency and stability by providing automated work notifications, alarm suppression, system health checks, and material verification, reducing human error and ensuring smooth maintenance operations.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-21
- Publication Date
- 2026-03-06
AI Technical Summary
Conventional system maintenance requires manual procedures that are time-consuming, prone to human error, and affect system stability.
A system that automates work notifications, alarm suppression, system health checks, material verification, and approval status checks to improve efficiency and reduce errors.
Enhances maintenance efficiency, reduces human error, and strengthens system stability by automating key maintenance processes.
Smart Images

Figure 2026037245000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Conventional system maintenance requires manual procedures such as notifying relevant parties, suppressing alarms, checking system health, checking work materials, and checking work approval status, which requires a great deal of time and effort. Furthermore, manual procedures are prone to human error. This can reduce the efficiency of maintenance work and affect the stable operation of the system. Therefore, there is a need to improve system stability by performing maintenance work efficiently and reliably. [Means for solving the problem]
[0005] The present invention solves the above problems by providing a system that includes a means for notifying relevant parties of work, a means for suppressing alarms that may occur during work, a means for pre-checking the system's normality, a means for checking required work materials, and a means for checking the approval status of work. This system automatically notifies relevant parties, disables alarms, checks the system's health status, checks material inventory, and confirms and requests work approval. As a result, the efficiency of maintenance work is improved, human error is reduced, and system stability is improved.
[0006] "Related parties" refers to people such as staff and administrators involved in system maintenance.
[0007] "Work notification" refers to the act of communicating information about system maintenance to relevant parties.
[0008] An "alarm" refers to a function that detects abnormalities or problems in the system and issues a warning.
[0009] "Alarm suppression" refers to the act of disabling predicted alarms during work in advance to prevent them from occurring.
[0010] "Preliminary system health check" refers to the act of checking the health status of a system before performing maintenance work.
[0011] "Work materials" refers to tools, parts, etc. required to perform system maintenance.
[0012] "Work approval status" refers to whether or not the maintenance work has been approved and its progress.
[0013] "System" refers to an operating environment consisting of multiple computer devices connected locally or via a network. [Brief explanation of the drawings]
[0014] [Figure 1]1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0015] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0016] First, the terms used in the following description will be explained.
[0017] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0018] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0019] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0020] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0021] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0022] [First embodiment]
[0023] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0024] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0025] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0026] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0027] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0028] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0029] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0030] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0031] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0032] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0033] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0034] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0035] This invention relates to a comprehensive management system for efficiently performing system maintenance work. The system aims to improve the efficiency and accuracy of maintenance work by automating work notifications, alarm suppression, advance system normality checks, work material checks, and work approval status checks.
[0036] Work Notification
[0037] The server notifies the relevant parties of the planned maintenance work before the work begins. The server retrieves a list of those involved from the database and generates a notification message. It then sends the notification to all those involved at once. This function allows those involved to know the schedule in advance and make appropriate preparations.
[0038] Alarm suppression
[0039] The server disables alarms that may occur during maintenance. Specifically, it analyzes past data and alarm occurrence history to generate a list of predicted alarms. It then configures the server to suppress applicable alarms based on this list. This prevents false alarms during maintenance and prevents disruption to the progress of work.
[0040] Pre-check system health
[0041] Before starting maintenance work, the server checks the system's health status. Health checks include CPU usage, memory usage, free disk space, and network status. The server collects this data in real time and evaluates its health. If a problem is detected, it suspends the work and issues an alert so that appropriate measures can be taken.
[0042] Checking work materials
[0043] The server checks whether all materials required for the maintenance work are available. It retrieves a list of work materials from the system and checks it against the inventory management system. If necessary materials are in short supply, the server generates a list of the missing materials and notifies the relevant parties that additional materials must be arranged. This function ensures that the necessary materials are prepared appropriately in advance, preventing work delays.
[0044] Checking work approval status
[0045] The server checks the approval status of maintenance work. It checks whether all approvals for the work have been obtained and sends approval requests to the relevant parties if necessary. This function automates the approval process and prevents oversight of approvals.
[0046] Specific examples
[0047] For example, when performing system maintenance at a large data center, the process goes like this:
[0048] 1. Work notification: The server notifies relevant parties, such as database administrators, network administrators, and operations teams, of planned maintenance via email. The notification includes the date and time of the maintenance, the scope of impact, and the expected downtime.
[0049] 2. Alarm suppression: The server analyzes past maintenance history to identify predicted alarms, then configures the server to suppress these alarms to prevent false alarms during maintenance work.
[0050] 3. Proactive system health check: The server checks the system health and verifies that there are no problems. For example, if CPU usage is abnormally high, maintenance is suspended and the problem is resolved as a priority.
[0051] 4. Checking work materials: The server checks the inventory of materials required for maintenance (tools, replacement parts, etc.) and confirms that all are available. If any materials are in short supply, the relevant parties are notified and prompted to make additional arrangements.
[0052] 5. Checking work approval status: The server checks whether work approval has been obtained from all parties involved. If there is any work that has not been approved, it automatically sends an approval request to speed up the approval process.
[0053] As described above, the system of the present invention provides a variety of integrated functions for efficient and reliable system maintenance, thereby improving work efficiency, reducing human error, and further strengthening system stability.
[0054] The processing flow will be explained below.
[0055] Work Notification
[0056] Step 1:
[0057] The server connects to the database and retrieves a list of people involved in the maintenance work, including their names, email addresses, and job titles.
[0058] Step 2:
[0059] The server generates a notification message to be sent to the relevant parties, embedding information such as the maintenance date and time, the scope of impact, and the work content in a template.
[0060] Step 3:
[0061] The server then sends the generated notification message to each of the parties based on the acquired list of parties. Specifically, it sends emails using the SMTP protocol.
[0062] Alarm suppression
[0063] Step 1:
[0064] The server analyzes the history of past alarms and the scope of impact of maintenance, and predicts alarms that may occur during maintenance.
[0065] Step 2:
[0066] The server generates a list of predicted alarms, including information such as the alarm type, cause, and scope of impact.
[0067] Step 3:
[0068] The server then disables the corresponding alarms based on the generated alarm list. Specifically, it calls the API of the alarm management system and changes the settings.
[0069] Pre-check system health
[0070] Step 1:
[0071] The server launches various system monitoring tools and collects system information such as CPU usage, memory usage, free disk space, and network status in real time.
[0072] Step 2:
[0073] The server evaluates the health of the system based on the collected data, checking for any abnormalities that exceed certain thresholds.
[0074] Step 3:
[0075] The server evaluates the results of the health check and, if there are any problems, generates an error message and sends an alert to the relevant personnel.
[0076] Checking work materials
[0077] Step 1:
[0078] The server obtains a list of materials required for maintenance, including tools, parts, consumables, etc.
[0079] Step 2:
[0080] The server accesses the inventory management system to check whether all the necessary work materials are available, specifically by querying the inventory database.
[0081] Step 3:
[0082] If there is a shortage of materials, the server generates a list of the materials in short supply and sends a notification to the relevant parties, specifically, by sending an email urging them to make additional arrangements for the materials.
[0083] Checking work approval status
[0084] Step 1:
[0085] The server obtains approval information from the work approval system to check the approval status of the work.
[0086] Step 2:
[0087] The server determines whether approval has been obtained from all parties based on the obtained approval information.
[0088] Step 3:
[0089] If approval has not been obtained from some of the parties involved, the server automatically sends an approval request. Specifically, it sends an email to the unapproved person requesting approval, urging them to take immediate action.
[0090] Specific examples
[0091] For example, when performing maintenance work on network equipment in a data center, the process is carried out in the following steps:
[0092] Step 1:
[0093] The server obtains a list of network engineers and operations managers from the database.
[0094] Step 2:
[0095] The server generates a maintenance operation notification message and sends it to all interested parties.
[0096] Step 3:
[0097] The server analyzes past alarm history of network devices, predicts false alarms during maintenance, and sets up the system to prevent them.
[0098] Step 4:
[0099] The server checks the current health status of network devices to ensure there are no abnormalities, and if there is a problem, it issues an alert and instructs you to take action.
[0100] Step 5:
[0101] The server checks that all materials necessary for maintenance (cables, replacement parts, etc.) are available and notifies relevant parties if there is a shortage.
[0102] Step 6:
[0103] The server checks whether work approval has been obtained from all parties involved, and automatically sends an approval request if approval has not been obtained.
[0104] This allows maintenance work to proceed efficiently and reliably as planned.
[0105] Example 1
[0106] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0107] Currently, much system maintenance work is performed manually, and processes such as notifying relevant parties, setting alarms, checking work materials, verifying system health, and obtaining work approval require a great deal of time and effort. Such manual work is prone to errors, reducing the efficiency and accuracy of maintenance work. Furthermore, insufficient automation of various processes increases the risk of delays and problems occurring throughout the maintenance work. The present invention aims to solve these problems and improve the efficiency and accuracy of system maintenance work.
[0108] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0109] In this invention, the server includes a means for notifying relevant parties of the work, a means for suppressing alarms that may occur during the work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, and a means for checking the approval status of the work. This allows the entire system maintenance work process to be automated and performed efficiently and reliably. This realizes prompt notification to relevant parties, suppression of false alarms, maintenance of a healthy system state, advance preparation of necessary materials, and a reliable approval process, thereby improving the overall quality and efficiency of maintenance work.
[0110] "Related Persons" refers to all personnel involved in system maintenance work, including, for example, database administrators, network administrators, and operations teams.
[0111] "Work notification" refers to the process of notifying relevant parties in advance of scheduled maintenance work, specifically by generating and sending a notification message.
[0112] "Alarm suppression" refers to the process of disabling false alarms or unnecessary alerts that may occur during maintenance work.
[0113] "Pre-health check" refers to the process of checking the health of a system and ensuring there are no problems before starting maintenance work.
[0114] "Checking work materials" refers to the process of checking whether all the items and materials necessary for maintenance work are available, and is carried out using an inventory management system.
[0115] "Checking work approval status" refers to the process of checking whether all approvals necessary to perform maintenance work have been obtained, and sending approval requests as necessary.
[0116] "Database" refers to a management system that stores information such as a list of people involved and past alarm history, and allows it to be searched and retrieved.
[0117] "Normality" refers to a state in which system performance indicators such as CPU usage, memory usage, free disk space, and network status are within appropriate ranges.
[0118] An "inventory management system" refers to a system for managing and checking the inventory status of items and materials required for maintenance work.
[0119] "Approval Request" means a notification to a Stakeholder requesting approval for an unapproved Maintenance Action.
[0120] This invention relates to a comprehensive management system for efficiently performing system maintenance work. The system aims to automate the following functions using a server: notifying relevant parties of work, suppressing alarms, pre-checking the system's normality, checking work materials, and checking the work approval status.
[0121] Work Notification
[0122] Before starting maintenance work, the server notifies the relevant parties of the planned schedule. Specifically, the server retrieves a list of those involved from the PostgreSQL database and generates a notification message using a Python script. It then broadcasts the message to all those involved using the SMTP protocol. This allows those involved to know the schedule in advance and make appropriate preparations. For example, the following message is sent:
[0123] Date and time: 2023-11-15 10:00 - 12:00
[0124] Affected areas: Database servers, network switches
[0125] Downtime: Up to 2 hours
[0126] Alarm suppression
[0127] The server disables alarms that may occur during maintenance. Specifically, the server uses ElasticSearch (registered trademark) to retrieve and analyze past alarm history and visualizes it using Kibana. Based on the results, the Ansible script sets up the system to suppress predicted alarms. This prevents false alarms during maintenance and prevents disruption to work progress.
[0128] Pre-check system health
[0129] Before starting maintenance work, the server checks the system health. This process involves using Prometheus to collect real-time data such as CPU usage, memory usage, free disk space, and network status, and visualizing it with Grafana to evaluate health. If a problem is detected, an alert is issued using the Slack API to notify relevant parties. For example, a notification may be sent saying, "CPU usage is over 80%. Please suspend maintenance work and check."
[0130] Checking work materials
[0131] The server checks whether all materials required for the maintenance work are available. Specifically, it obtains a list of materials for the work via the ERP system's API and checks the inventory in the SAP system based on that. If any required materials are in short supply, it uses JIRA to generate a task and notify the relevant parties. For example, the following notifications are sent:
[0132] Shortage Material List:
[0133] Network cables (10)
[0134] Hard disk (2 units)
[0135] Checking work approval status
[0136] The server checks the approval status of the maintenance work. This process includes checking the approval status of the relevant parties using LDAP and automatically sending email requests for unapproved work. For example, a request like "Approval required for maintenance work. Maintenance date and time: 2023-11-15 10:00 - 12:00 Approval: Approved / Not approved" may be sent.
[0137] As described above, this system provides a variety of integrated functions for efficient and reliable system maintenance, thereby improving work efficiency, reducing human error, and further strengthening system stability.
[0138] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0139] Step 1: Obtain a list of stakeholders
[0140] Server: Connect to the PostgreSQL database and retrieve the list of stakeholders (database administrators, network administrators, operations team, etc.) using an SQL query.
[0141] Input: Roles of the people involved in the work notification (e.g., database administrator, network administrator)
[0142] Output: List of stakeholders
[0143] What happens: The server executes the SQL query SELECT FROM stakeholders WHERE role IN ('DB Admin', 'Network Admin', 'Operations'); to get the list of stakeholders.
[0144] Step 2: Generate a notification message
[0145] Server: Runs a Python script to generate a notification message based on the obtained list of stakeholders. The message includes the date and time of the maintenance, the affected area, and the expected downtime.
[0146] Inputs: list of stakeholders, maintenance date and time, impact area, expected downtime
[0147] Output: Notification message
[0148] What it does: Create a message using Python's string formatting capabilities, for example using an f-string to generate:
[0149] message = f"Maintenance date and time: {maintenance_date}\nImpact scope: {impact_scope}\nExpected downtime: {downtime}\n"
[0150] Step 3: Sending notifications
[0151] Server: Uses the SMTP protocol to broadcast the generated messages to interested parties.
[0152] Input: Notification message, email addresses of people involved
[0153] Output: Transmission log
[0154] Specific behavior: Sends email using an SMTP library. For example, creates a message using MIMEText and sends it with smtplib.
[0155] Step 4: Analyzing historical data
[0156] Server: Connects to the Elasticsearch cluster and runs queries to analyze the history of past alarm occurrences.
[0157] Input: Alarm occurrence history data for the past 30 days
[0158] Output: Analysis result data
[0159] Specific behavior: Searches data using Elasticsearch DSL and receives it in JSON format.
[0160] Step 5: Generate the suppression list
[0161] Server: Use Kibana to visualize the search results and generate a list of predicted alarms, then generate alarm suppression configurations based on that list.
[0162] Input: Analysis result data
[0163] Output: Alarm suppression list
[0164] What it does: Save the suppression list to a JSON file and use it in an Ansible playbook.
[0165] Step 6: Disable alarms
[0166] Server: Use Ansible to apply alarm suppression settings to the server.
[0167] Input: Alarm suppression list, Ansible playbook
[0168] Output: The result of applying the settings
[0169] Specific operation: Execute command: "alarm_control --disable {{ item.alarm_id}}" in the Ansible task.
[0170] Step 7: Collect real-time data
[0171] Server: Use Prometheus to collect metrics such as CPU usage, memory usage, free disk space, and network status.
[0172] Input: System performance data
[0173] Output: Collected metric data
[0174] Specific operation: Set targets in the Prometheus scrape configuration file and collect data.
[0175] Step 8: Health assessment
[0176] Server: Visualize collected data in Grafana and set alert rules to assess health.
[0177] Input: Collected metrics data
[0178] Output: Evaluation results and alerts
[0179] Specific behavior: Set up alert rules on the Grafana dashboard to notify you when an anomaly is detected.
[0180] Step 9: Problem detection and notification
[0181] Server: If a problem is detected, alert relevant parties using the Slack API.
[0182] Input: Anomaly detection data
[0183] Output: Alert notification
[0184] Specific behavior: Sends notification messages to relevant parties using the Slack API.
[0185] Step 10: Get materials list
[0186] Server: Obtains a list of materials required for maintenance via the ERP system's API.
[0187] Input: Maintenance work material information
[0188] Output: Materials list
[0189] Specific operation: Obtain a materials list via an API request to the ERP system and receive the data in JSON format.
[0190] Step 11: Check inventory
[0191] Server: Based on the obtained material list, check the inventory quantity via the SAP system and API.
[0192] Input: Materials List
[0193] Output: Inventory check results
[0194] Specific operation: Sends an API request to the SAP system to obtain inventory data.
[0195] Step 12: Notification of shortage materials
[0196] Server: If there are any missing materials, a task is automatically generated using JIRA and relevant parties are notified.
[0197] Input: Inventory check result
[0198] Output: Shortage material notification and JIRA task
[0199] What it does: Uses JIRA API to generate tasks and notify stakeholders.
[0200] Step 13: Check Approval Status
[0201] Server: Uses LDAP to check the approval status of participants.
[0202] Input: Person involved information, approval status
[0203] Output: Approval status check result
[0204] Specific behavior: Retrieves unauthorized status via LDAP query.
[0205] Step 14: Submit an Unapproved Request
[0206] Server: For unapproved work, an approval request is automatically sent via email to the relevant parties.
[0207] Input: List of interested parties with pending approval status
[0208] Output: Approval request email
[0209] What it does: Sends an approval request to the relevant parties using the SMTP protocol.
[0210] (Application example 1)
[0211] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0212] In modern factories and large-scale facilities, machine maintenance work is complex and involves many parties. It is also prone to problems such as false alarms, material shortages, and delayed approvals. These problems not only delay maintenance work and reduce efficiency, but can also negatively impact system stability. There is a need for management methods to resolve these issues using automated systems.
[0213] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0214] In this invention, the server includes means for notifying relevant parties of work, means for suppressing alarms that may occur during work, means for performing advance confirmation of the system's normality, means for confirming necessary work materials, means for confirming the approval status of the work, management means for efficiently performing machine maintenance work, communication means for sending maintenance notices to relevant parties, prediction means for analyzing past data and suppressing alarms, evaluation means for checking the health status based on normality evaluation, inventory management means for confirming whether materials are available, and approval management means for confirming whether approval has been obtained. This makes it possible to perform maintenance work effectively and quickly, reduce human error, and improve system stability.
[0215] "Parties" means any person or entity involved in the maintenance work.
[0216] "Means for notifying work" refers to a system or function that notifies relevant parties of the schedule and details of maintenance work.
[0217] "Means to suppress alarms" is a function that predicts and disables alarms that may occur during work.
[0218] The "means for performing advance normality check" is a function for checking the health status of the system before starting maintenance work.
[0219] The "means for checking work materials" is a function for checking whether all materials necessary for maintenance work are available.
[0220] The "means for checking the approval status of work" is a function for checking whether work approval has been obtained from all parties involved in the maintenance work.
[0221] "Management means" refers to a system that includes all management functions for efficiently carrying out machine maintenance work.
[0222] "Communication means" refers to the system or network equipment used to send maintenance notifications to relevant parties.
[0223] "Prediction means" is a function that analyzes past data to prevent future alarms.
[0224] "Evaluation means" is a function that checks the health status based on an evaluation of the system's normality.
[0225] "Inventory management means" is a function that checks whether necessary maintenance materials are available and manages inventory.
[0226] The "approval management means" is a function that confirms approval from all parties involved and manages the approval status.
[0227] The present invention is a comprehensive management system for efficiently and automatically performing maintenance work on factory robots. Detailed embodiments are described below.
[0228] The server has a function for notifying the relevant parties of the maintenance schedule and details in order to notify the relevant parties of the maintenance work. This work notification is carried out, for example, by email or a message application.
[0229] The server then has the ability to suppress any alarms that may occur during the work. It analyzes past data to identify and disable predicted alarms. This process prevents false alarms during maintenance.
[0230] To check the system's health in advance, the server monitors system parameters such as CPU usage, memory usage, free disk space, and network status in real time, thereby checking the system's health before starting maintenance.
[0231] Regarding the confirmation of work materials, the server retrieves a list of required materials from the system and checks with the inventory management system to confirm that all materials are available. If any materials are missing, the server notifies the relevant parties.
[0232] The server also has a function to check the approval status of maintenance work. It checks whether approval has been obtained from all parties involved, and automatically sends an approval request if approval has not been obtained.
[0233] In this invention, Node.js is used for the application layer, MySQL (registered trademark) is used for server database management, nodemailer is used for message sending, and Prometheus is used for real-time system status monitoring.
[0234] As a concrete example, consider the case of performing maintenance on the hydraulic system of a factory robot. In this case, the following process is executed:
[0235] 1. The server notifies relevant parties of the maintenance schedule.
[0236] 2. Analyze past data and suppress predicted alarms.
[0237] 3. Check system parameters such as CPU usage and memory usage to see if there are any abnormalities.
[0238] 4. Ensure that necessary tools and spare parts are available and notify if any are missing.
[0239] 5. Ensure all relevant approvals are obtained.
[0240] In this way, the system of the present invention aims to improve the efficiency and accuracy of maintenance work.
[0241] Example prompt for a generative AI model:
[0242] "Generate a list of random email addresses in the format 'name@example.com'."
[0243] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0244] Step 1:
[0245] The server sends maintenance notifications to interested parties.
[0246] Input: Get the list of stakeholders from the database and the maintenance details as input.
[0247] Processing: Based on the obtained list, a notification message is generated and sent via nodemailer.
[0248] Output: An email is sent to the relevant parties so that they are aware of the upcoming maintenance.
[0249] Step 2:
[0250] Disables server predicted alarms.
[0251] Input: Takes historical alarm data and current system status as input.
[0252] Processing: Analyze the data, generate a list of predicted alarms, and configure the system to suppress the corresponding alarms.
[0253] Output: A list of alarms to suppress is generated and alarms are disabled during maintenance.
[0254] Step 3:
[0255] The server performs a pre-health check of the system.
[0256] Input: System parameters (CPU usage, memory usage, free disk space, network status) are taken as input.
[0257] Processing: Prometheus is used to monitor system parameters in real time and check for anomalies.
[0258] Output: The system health status is evaluated and an alert is issued if there is an abnormality.
[0259] Step 4:
[0260] Check the materials required for server maintenance.
[0261] Input: Required materials list and inventory information are taken as input.
[0262] Processing: Check the material list against the inventory information and generate a list if there are any missing materials.
[0263] Output: The results of checking whether materials are available and a list of shortages are output.
[0264] Step 5:
[0265] The server checks the approval status of the maintenance work.
[0266] Input: The list of parties requiring approval and their current approval status.
[0267] Process: Check the list of people involved to see if all approvals have been obtained. If approvals have not been obtained, automatically send an approval request.
[0268] Output: The result of checking whether approval has been obtained from all parties is output, and if approval has not been obtained, an approval request is sent.
[0269] In this way, the server acquires the necessary data at each step, performs appropriate processing and judgment, and manages the maintenance work so that it proceeds smoothly.
[0270] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0271] This invention relates to a comprehensive management system for efficiently performing system maintenance work. This system incorporates an emotion engine that recognizes the user's emotions and responds appropriately based on them. In addition to automatically notifying relevant parties of work, suppressing alarms, pre-checking the system's normality, checking work materials, and checking the work approval status, the system also adjusts the operation of each function taking the user's emotions into account, thereby further improving the efficiency and accuracy of maintenance work.
[0272] Work Notification
[0273] The server notifies relevant parties of scheduled maintenance work before the work begins. The server retrieves a list of relevant parties from a database and generates a notification message. The server then adjusts the content of the notification based on the user's emotions recognized by an emotion engine and sends the notification to all relevant parties at once. For example, if a relevant party is feeling stressed, the notification will be sent in more polite language. This function allows relevant parties to understand the schedule in advance and make appropriate preparations.
[0274] Alarm suppression
[0275] The server disables alarms that may occur during maintenance. Specifically, it analyzes past data and alarm occurrence history to generate a list of predicted alarms. It then sets up settings to suppress relevant alarms based on this list. It also takes into account the user's emotional state and strengthens countermeasures by, for example, setting alarms more strictly if the user is under high stress. This prevents false alarms during maintenance and prevents disruption to work progress.
[0276] Pre-check system health
[0277] Before starting maintenance work, the server checks the system's health status. Health checks include CPU usage, memory usage, free disk space, and network status. The server collects this data in real time and evaluates its health. In addition, the emotion engine obtains the user's emotional data and notifies the system of the results of the preliminary health check, adjusting the priority accordingly. For example, if the user is nervous, the notification text will be more polite and include a detailed explanation.
[0278] Checking work materials
[0279] The server checks whether all materials necessary for the maintenance work are available. It retrieves a list of work materials from the system and checks it against the inventory management system. If necessary materials are in short supply, the server generates a list of the missing materials and sends a notification after taking into account the emotions of the relevant parties through an emotion engine. For example, if the relevant parties are in a hurry, the notification will be sent using wording that encourages them to respond calmly. This function ensures that the necessary materials are properly prepared in advance, preventing work delays.
[0280] Checking work approval status
[0281] The server checks the approval status of the maintenance work. It checks whether all approvals for the work have been obtained and, if necessary, sends an approval request to the relevant parties. At this time, the emotion engine analyzes the emotional state of the users and adjusts the wording and timing of the approval request. For example, if the relevant parties are feeling stressed, it will respond by delaying the timing of the request or making the wording more gentle. This function automates the approval process and prevents approvals from being overlooked.
[0282] Specific examples
[0283] For example, when performing system maintenance at a large data center, the process goes like this:
[0284] 1. Work Notification: The server notifies relevant parties, such as database administrators, network administrators, and operation teams, of scheduled maintenance via email. The emotion engine evaluates the stress level of the relevant parties, and if stress is high, the notification text is carefully adjusted to encourage the relevant parties to relax.
[0285] 2. Alarm Suppression: The server analyzes past maintenance history and identifies predicted alarms. The emotion engine then adjusts alarm settings according to the user's stress level to prevent false alarms during maintenance.
[0286] 3. Pre-checking the system health: The server checks the system health and verifies that there are no problems. The emotion engine adjusts the notification text based on the user's emotional data and adds detailed explanations to reduce user anxiety.
[0287] 4. Checking work materials: The server checks the inventory of materials required for maintenance (tools, replacement parts, etc.) and confirms that all are available. If there is a shortage, the emotion engine sends a notification to guide the user to deal with the situation calmly.
[0288] 5. Checking the status of work approval: The server checks whether the work has been approved by all parties involved, and if it has not been approved, it sends an approval request at the optimal time through the emotion engine.
[0289] This ensures that maintenance work proceeds efficiently and reliably as planned, and further improves the working environment by taking into consideration the feelings of those involved.
[0290] The processing flow will be explained below.
[0291] Work Notification
[0292] Step 1:
[0293] The server connects to the database and retrieves a list of people involved in the maintenance work, including their names, email addresses, and job titles.
[0294] Step 2:
[0295] The server generates a notification message to be sent to the relevant parties, embedding information such as the maintenance date and time, the scope of impact, and the work content in a template.
[0296] Step 3:
[0297] The server uses an emotion engine to obtain the latest emotion data for each participant and adjusts the wording of the notification message. For example, if the emotion engine recognizes that the participant is feeling stressed, the server changes the wording of the notification to be more polite and reassuring.
[0298] Step 4:
[0299] The server then sends coordinated notification messages to all interested parties, specifically by sending emails using the SMTP protocol.
[0300] Alarm suppression
[0301] Step 1:
[0302] The server analyzes the history of past alarms and the scope of impact of maintenance, and predicts alarms that may occur during maintenance.
[0303] Step 2:
[0304] The server generates a list of predicted alarms, including information such as the alarm type, cause, and scope of impact.
[0305] Step 3:
[0306] The server uses an emotion engine to assess the emotional state of participants and sets more stringent alarms if any of the participants are particularly stressed.
[0307] Step 4:
[0308] The server sets up the system to disable predicted alarms. Specifically, it calls the API of the alarm management system to change the alarm settings.
[0309] Pre-check system health
[0310] Step 1:
[0311] The server launches various system monitoring tools and collects system information such as CPU usage, memory usage, free disk space, and network status in real time.
[0312] Step 2:
[0313] The server evaluates the health of the system based on the collected data, checking for any abnormalities that exceed certain thresholds.
[0314] Step 3:
[0315] The server uses an emotion engine to obtain the user's emotion data and notifies them of the results of the system's preliminary health check, adjusting the priority according to the emotion. For example, if the user is nervous, the notification text will be more polite and include a detailed explanation.
[0316] Checking work materials
[0317] Step 1:
[0318] The server obtains a list of materials required for maintenance, including tools, parts, consumables, etc.
[0319] Step 2:
[0320] The server accesses the inventory management system to check whether all the necessary work materials are available, specifically by querying the inventory database.
[0321] Step 3:
[0322] If there are shortages of materials, the server generates a list of the materials that are shortages.
[0323] Step 4:
[0324] The server notifies the stakeholders of the list of missing materials after taking into account their emotions through an emotion engine. For example, if the stakeholders are in a hurry, the server will notify them using words that encourage them to respond calmly.
[0325] Checking work approval status
[0326] Step 1:
[0327] The server obtains approval information from the work approval system to check the approval status of the work.
[0328] Step 2:
[0329] The server determines whether approval has been obtained from all parties based on the obtained approval information.
[0330] Step 3:
[0331] The server uses an emotion engine to analyze the emotional state of the participants if some of the participants do not approve.
[0332] Step 4:
[0333] If the emotion engine determines that the person involved is feeling stressed, the server adjusts the wording of the request and the timing of sending it. For example, if the person involved is feeling stressed, the server may delay the timing of the request or make the wording more gentle.
[0334] Specific examples
[0335] For example, when performing maintenance work on network equipment in a data center, the process is carried out in the following steps:
[0336] Step 1:
[0337] The server obtains a list of network engineers and operations managers from the database.
[0338] Step 2:
[0339] The server generates a maintenance work notification message, checks the emotional state of the people involved using an emotion engine, and adjusts the notification text as necessary.
[0340] Step 3:
[0341] The server analyzes past alarm history of network devices to identify predicted alarms, and uses an emotion engine to adjust alarm settings according to the user's stress level to prevent false alarms.
[0342] Step 4:
[0343] The server checks the current health status of network devices and verifies that there are no abnormalities. The emotion engine adjusts the notification text and provides detailed explanations based on the user's emotional data to reduce user anxiety.
[0344] Step 5:
[0345] The server checks the inventory of materials needed for maintenance (cables, replacement parts, etc.) and confirms that all are available. If there is a shortage, it takes into account the emotions of those involved through an emotion engine and notifies them so that they can deal with the situation calmly.
[0346] Step 6:
[0347] The server checks whether all parties have approved the work, and if not, it uses the emotion engine to send an approval request at the optimal time. Once approval is received, the maintenance work begins.
[0348] This ensures that maintenance work proceeds efficiently and reliably as planned, and the working environment is further improved by taking into consideration the feelings of those involved.
[0349] Example 2
[0350] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0351] Conventional system maintenance work suffers from insufficient notification to relevant parties, uncertainty in alarm prediction and prevention, and a lack of proper confirmation of system normality in advance. It is also prone to insufficient confirmation of materials required for maintenance and failure to confirm the approval status of work. Furthermore, uniform responses without consideration of user feelings result in reduced work efficiency and increased stress for those involved.
[0352] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0353] In this invention, the server includes a means for notifying relevant personnel of the work, a means for suppressing alarms that may occur during the work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, a means for checking the approval status of the work, and an emotion engine that recognizes the user's emotions and takes appropriate action at each stage of the work. This improves the efficiency and accuracy of maintenance work and enables responses that take into account the emotions of the relevant personnel.
[0354] "Parties" refers to all persons and organizations involved in system maintenance activities.
[0355] "Work notification" is the act of informing relevant parties of the schedule, content, and scope of impact of maintenance work.
[0356] "Alarm suppression" is the act of predicting, controlling, or disabling unnecessary alarms that may occur during maintenance.
[0357] "Preliminary system health check" refers to the act of checking the system's health status (CPU usage, memory usage, free disk space, network status, etc.) before starting maintenance work to ensure that it is operating normally.
[0358] "Work materials" refers to all tools, parts, consumables, etc. required for maintenance work.
[0359] "Confirming the approval status of work" is the act of confirming whether approval has been obtained from all parties involved in the maintenance work plan.
[0360] An "emotion engine" is a program or device that has the ability to recognize and analyze a user's emotional state and adjust system behavior and notification content based on that data.
[0361] "Disabling" refers to the act of temporarily or permanently deactivating a particular function or alarm.
[0362] This invention relates to a comprehensive management system for efficiently performing system maintenance work. This system incorporates an emotion engine that recognizes user emotions and responds appropriately based on those emotions. This system automatically notifies relevant parties of work, suppresses alarms, checks the system's normality in advance, checks work materials, and checks the work approval status.
[0363] Hardware and software used
[0364] server:
[0365] Database management system (e.g. MySQL)
[0366] Sentiment analysis engine (e.g., IBM Watson (registered trademark))
[0367] Notification systems (e.g., email sending systems using the SMTP protocol)
[0368] Data analysis systems (e.g., Hadoop)
[0369] System monitoring tools (e.g. Nagios)
[0370] Inventory management system (e.g. SAP)
[0371] User:
[0372] Stakeholders include database administrators, network administrators, and operations teams.
[0373] Specific operation of the system
[0374] 1. Get the stakeholder list:
[0375] The server connects to a MySQL database and retrieves information about the parties involved, including their email addresses, job titles, and responsibilities.
[0376] 2. Maintenance work notification generation and coordination:
[0377] The server uses a Python script to generate notification messages containing details of the maintenance work, then uses an emotion engine (such as IBM Watson) to detect the stress level of the relevant parties and tailor the notification text to send it.
[0378] For example, the server might send a notification message like this:
[0379] "Notice of scheduled system maintenance: System maintenance will be carried out on XX day from XX to XX. We appreciate your cooperation."
[0380] 3. Alarm prediction and suppression:
[0381] The server uses Hadoop to analyze past maintenance history and alarm data, and generates a list of predicted alarms. Based on user sentiment, it adjusts alarm settings to prevent false alarms.
[0382] 4. Check system health:
[0383] The server uses monitoring tools such as Nagios to collect health data such as CPU usage, memory usage, free disk space, and network status. This data is analyzed using a machine learning model (such as TENSORFLOW (registered trademark)) to evaluate the health of the system.
[0384] For example, the server might advertise:
[0385] "System health check: All items are normal. Please proceed with maintenance with confidence."
[0386] 5. Checking work materials:
[0387] The server retrieves the list of work materials from the ERP system and checks the stock against inventory management systems such as SAP. If there is a shortage, it sends a notification message adjusted by the emotion engine.
[0388] For example, the server might advertise:
[0389] "We are running low on certain materials. We advise you to remain calm."
[0390] 6. Check and adjust work approval status:
[0391] The server checks the approval status using a task management tool such as Jira, and if approval has not been granted, it sends an approval request adjusted by the emotion engine.
[0392] For example, the server sends the following message:
[0393] "Maintenance work approval request: Please review and approve. If it is urgent, please let us know in advance."
[0394] These operations ensure that maintenance work planning proceeds efficiently and reliably, and that responses that take into account the feelings of those involved are realized throughout the system.
[0395] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0396] Step 1: Obtain a list of stakeholders
[0397] Input: Request via database query
[0398] What happens: The server connects to the MySQL database and executes the query SELECT FROM stakeholders to get the list of stakeholders.
[0399] Data processing: Converts the related party information retrieved from the database into JSON format and stores it in the internal cache.
[0400] Output: A list of stakeholders' email addresses, titles, and responsibilities (JSON format).
[0401] Step 2: Generate and coordinate maintenance work notifications
[0402] Input: Maintenance work details, stakeholders list
[0403] Specific operation: The server uses a Python script to generate a template message containing information about the work date and time, the scope of impact, and the person in charge.
[0404] Adjustment using emotion engine: The server uses an emotion engine (IBM Watson) to analyze the stress level of the relevant person and adjust the notification text.
[0405] Output: The tailored notification message in text format.
[0406] Sending notifications: The server sends them to all interested parties via the SMTP protocol.
[0407] Step 3: Alarm prediction and suppression
[0408] Input: Past maintenance history data, alarm data
[0409] Specific operation: The server uses Hadoop to analyze past maintenance history and alarm data.
[0410] Data processing: Generate a predicted alarm list based on the analysis results.
[0411] Emotion engine considerations: The server adjusts and suppresses alarm settings based on the user's emotional state.
[0412] Output: Predictive alarm list (JSON format), setting change results
[0413] Alarm suppression: The server applies the settings to the system to disable the corresponding alarm based on the predicted alarm list.
[0414] Step 4: Check system health
[0415] Input: Real-time system usage data (CPU usage, memory usage, disk space, network status)
[0416] What it does: The server collects data using a monitoring tool such as Nagios.
[0417] Data processing: Analyze the collected data using a machine learning model (TensorFlow) and evaluate its normality.
[0418] Notification adjustment by emotion engine: The server adjusts the priority and details of the health check results based on the user's emotion data.
[0419] Output: System health assessment results in text format.
[0420] Sending notifications: The server notifies the relevant parties of the evaluation results.
[0421] Step 5: Check the work materials
[0422] Input: Working materials list
[0423] Specific operation: The server obtains the work materials list from the ERP system using REST API.
[0424] Data processing: Based on the obtained list, inventory is checked against inventory management systems such as SAP.
[0425] Generate a list of missing materials and send notifications: If there are any missing materials, a list will be generated and notifications will be sent in a form that takes into account the emotions of the relevant parties using an emotion engine.
[0426] Output: Shortage material list (text format), adjusted notification message
[0427] Sending notifications: The server sends coordinated notifications to interested parties.
[0428] Step 6: Check and adjust work approval status
[0429] Input: Approval status data, stakeholder list
[0430] Specific operation: The server checks the approval status using a task management tool such as Jira.
[0431] Data Processing: Identify unauthorized parties and create approval requests.
[0432] Coordination by emotion engine: The server analyzes the emotional state of the parties involved using an emotion engine and sends approval requests with optimal timing and wording.
[0433] Output: Reconciled approval request message (text format)
[0434] Send approval request: The server sends the coordinated approval request via email or Slack.
[0435] Through the above steps, the system can carry out maintenance work efficiently and reliably, and respond in a way that takes into account the feelings of those involved.
[0436] (Application example 2)
[0437] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0438] In conventional system maintenance, communication between related parties was inefficient, often resulting in delays in approval of necessary work and preparation of materials. In addition, insufficient management of alarms that occurred during maintenance led to frequent false alarms, causing disruption to work. In addition to these issues, ignoring the stress and emotional state of workers sometimes prevented maintenance work from progressing smoothly.
[0439] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0440] In this invention, the server includes a means for notifying relevant personnel of work, a means for suppressing alarms that may occur during work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, a means for checking the approval status of the work, and a means for analyzing emotion data and automatically adjusting the work notification text and alarm settings, thereby enabling efficient and highly accurate maintenance work while taking into account the emotional state of the relevant personnel.
[0441] "Stakeholder" means any person directly involved in or affected by a system maintenance activity, or both.
[0442] "Work notification" refers to the means of informing relevant parties of the schedule and progress of maintenance work.
[0443] "Alarm suppression" refers to measures to prevent predicted alarms from occurring and avoid unnecessary alarms during maintenance work.
[0444] "Preliminary health check" refers to a method of checking the health status of a system (CPU usage, memory usage, free disk space, network status, etc.) before starting maintenance work.
[0445] "Checking work materials" refers to the means of checking whether all materials, such as tools and replacement parts, necessary for maintenance work are available.
[0446] "Work Approval Status Check" refers to the means of verifying that proper approvals have been obtained from all parties before maintenance work is performed.
[0447] "Emotion data" is data that represents the emotional state of a user or worker, and includes emotions such as stress, tension, and impatience.
[0448] An "emotion engine" is an engine that has the ability to analyze emotional data and adjust system behavior and notification content based on that data.
[0449] "Notification text adjustment" refers to a method of changing the content and wording of notification messages based on emotional data to convey information in the most appropriate way to the relevant parties.
[0450] "Alarm setting adjustment" refers to the means of changing alarm thresholds and trigger conditions based on emotional data to avoid false or unnecessary alarms.
[0451] This invention is a system for efficiently managing system maintenance work using factory robots. This system is equipped with an emotion engine that recognizes the user's emotion data and has the function of automatically adjusting notification messages and alarm settings for various maintenance work based on that data.
[0452] System configuration
[0453] The main components of this system are as follows:
[0454] Server: Data processing and central management
[0455] Factory robots: assisting with maintenance tasks and collecting emotional data
[0456] Cameras and sensors: Used to collect emotion data
[0457] Database: Manage maintenance schedules, inventory information, stakeholder lists, etc.
[0458] software
[0459] The software configuration is as follows:
[0460] Emotion engine: Analyzes user emotion data and adjusts various functions
[0461] Database management system (MySQL): Manages maintenance schedules and inventory information
[0462] Image processing library (OpenCV, dlib): Used to analyze emotion data
[0463] Email sending API: Sends emails to notify users of work.
[0464] Processing flow
[0465] Work Notification
[0466] The server retrieves the maintenance schedule from the database and references the list of people involved. The factory robot uses a camera to capture the facial expressions of the workers and analyzes their emotions using OpenCV and dlib. The emotion engine analyzes this data and generates a message that will put the people involved at ease. It then sends a notification email to the people involved using the email sending API.
[0467] Alarm Suppression
[0468] The server analyzes past maintenance data and generates a list of predicted alarms. The factory robot checks the emotional state of the workers in real time and automatically adjusts alarm settings as needed using an emotion engine. During times of high stress, stricter alarm suppression is set, strengthening measures to ensure smooth maintenance.
[0469] Preliminary normality check
[0470] The server checks the system's health status and collects data such as CPU usage, memory usage, free disk space, and network status. The factory robot simultaneously collects the user's emotional data, analyzes the status check results through an emotion engine, and adjusts and notifies the user as necessary. For example, if the user is nervous, a detailed explanation will be provided.
[0471] Checking work materials
[0472] The server retrieves the list of work materials and checks the stock of the necessary materials from the inventory management system. The factory robot sends a notification to the relevant parties through the emotion engine, urging them to respond calmly. If the necessary materials are in short supply, the notification is sent using words that encourage the relevant parties to respond calmly.
[0473] Checking work approval status
[0474] The server checks whether all relevant parties have approved the work. The factory robot sends approval requests at the optimal time through the emotion engine. If a relevant party is feeling stressed, the robot adjusts the wording and timing of the request.
[0475] Specific examples
[0476] For example, the prompt text for a work notification is:
[0477] Text format
[0478] Subject: Maintenance Notice
[0479] Message: Thank you for your continued support. We would like to inform you of the schedule for the next maintenance work. Details are as follows.
[0480] Date: YYYY / MM / DD
[0481] Time: HH:MM
[0482] Advice from the Emotion Engine: Relax and work.
[0483] This system allows for efficient and accurate maintenance work while taking into account the emotional state of those involved.
[0484] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0485] Step 1:
[0486] The server retrieves the maintenance schedule from the database.
[0487] Input: Database where maintenance schedules are stored
[0488] Data processing: Run SQL queries to extract schedule data
[0489] Output: A list of maintenance schedules
[0490] Step 2:
[0491] The server retrieves the list of interested parties and generates a notification message.
[0492] Inputs: Interest List Database, Maintenance Schedule
[0493] Data Transformation: Extract stakeholder lists with SQL queries and generate scheduled notification messages
[0494] Output: Notification message (text format)
[0495] Step 3:
[0496] The factory robot uses a camera to capture the facial expressions of the workers.
[0497] Input: Worker's facial image (real-time video)
[0498] Data processing: Face recognition processing of face images taken with a camera using OpenCV and dlib
[0499] Output: Facial feature point data
[0500] Step 4:
[0501] Factory robots use emotion engines to analyze workers' emotions.
[0502] Input: Facial feature point data
[0503] Data processing: Analyze facial feature point data using the emotion engine and classify emotions using emotion recognition models
[0504] Output: Emotion data (e.g., stress, relaxation, tension)
[0505] Step 5:
[0506] Based on the emotion data, the emotion engine adjusts the notification text.
[0507] Input: Notification message, emotion data
[0508] Data processing: Optimizing notification message content based on emotional data (e.g., changing to more polite language)
[0509] Output: The adjusted notification message
[0510] Step 6:
[0511] The server uses an email sending API to send a notification message to the relevant parties.
[0512] Input: Tailored notification message, email addresses of interested parties
[0513] Data processing: Call the email sending API to send an email
[0514] Output: Email sending result (success / failure)
[0515] Step 7:
[0516] The server analyzes past maintenance data and generates a list of predicted alarms.
[0517] Input: Past maintenance database
[0518] Data processing: Analyzing past data to extract alarm occurrence patterns
[0519] Output: List of predicted alarms
[0520] Step 8:
[0521] Factory robots can monitor workers' emotional state in real time and adjust alarm settings.
[0522] Input: Real-time emotion data, predicted alarm list
[0523] Data processing: Analyze real-time data with an emotion engine and change alarm settings as needed
[0524] Output: Adjusted alarm settings
[0525] Step 9:
[0526] The server performs a pre-health check of the system.
[0527] Input: System health data (CPU usage, memory usage, etc.)
[0528] Data processing: Collect data from each system and evaluate its health
[0529] Output: Health evaluation result
[0530] Step 10:
[0531] The factory robot notifies the user of the results of a preliminary normality check based on the user's emotional data.
[0532] Input: Health assessment results, emotion data
[0533] Data manipulation: tailoring notifications based on sentiment (e.g., adding detailed explanations)
[0534] Output: Reconciled health check notification
[0535] Step 11:
[0536] The server obtains the list of work materials and checks it against the inventory management system.
[0537] Input: Work materials list, inventory database
[0538] Data processing: Compare the material list with inventory data and extract missing materials
[0539] Output: List of missing materials
[0540] Step 12:
[0541] The factory robot notifies relevant parties based on a list of missing materials.
[0542] Input: Shortage material list, emotion data
[0543] Data processing: Adjusting notification text based on emotional data (e.g., encouraging users to remain calm)
[0544] Output: Adjusted Shortage Material Notification
[0545] Step 13:
[0546] The server checks whether all parties have approved the work.
[0547] Input: Authorization Database
[0548] Data processing: Check the approval list to see if there are any missing approvals.
[0549] Output: Approval status list
[0550] Step 14:
[0551] If there is any missed approval, the factory robot will send an approval request through the emotion engine.
[0552] Input: Approval status list, emotion data
[0553] Data processing: Generate approval requests with optimal timing and wording based on sentiment data
[0554] Output: Reconciled approval request notification
[0555] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0556] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0557] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0558] [Second embodiment]
[0559] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0560] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0561] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0562] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0563] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0564] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0565] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0566] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0567] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0568] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0569] In the smart glasses 214, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0570] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."
[0571] This invention relates to a comprehensive management system for efficiently performing system maintenance work. The system aims to improve the efficiency and accuracy of maintenance work by automating work notifications, alarm suppression, advance system normality checks, work material checks, and work approval status checks.
[0572] Work Notification
[0573] The server notifies the relevant parties of the planned maintenance work before the work begins. The server retrieves a list of those involved from the database and generates a notification message. It then sends the notification to all those involved at once. This function allows those involved to know the schedule in advance and make appropriate preparations.
[0574] Alarm suppression
[0575] The server disables alarms that may occur during maintenance. Specifically, it analyzes past data and alarm occurrence history to generate a list of predicted alarms. It then configures the server to suppress applicable alarms based on this list. This prevents false alarms during maintenance and prevents disruption to the progress of work.
[0576] Pre-check system health
[0577] Before starting maintenance work, the server checks the system's health status. Health checks include CPU usage, memory usage, free disk space, and network status. The server collects this data in real time and evaluates its health. If a problem is detected, it suspends the work and issues an alert so that appropriate measures can be taken.
[0578] Checking work materials
[0579] The server checks whether all materials required for the maintenance work are available. It retrieves a list of work materials from the system and checks it against the inventory management system. If necessary materials are in short supply, the server generates a list of the missing materials and notifies the relevant parties that additional materials must be arranged. This function ensures that the necessary materials are prepared appropriately in advance, preventing work delays.
[0580] Checking work approval status
[0581] The server checks the approval status of maintenance work. It checks whether all approvals for the work have been obtained and sends approval requests to the relevant parties if necessary. This function automates the approval process and prevents oversight of approvals.
[0582] Specific examples
[0583] For example, when performing system maintenance at a large data center, the process goes like this:
[0584] 1. Work notification: The server notifies relevant parties, such as database administrators, network administrators, and operations teams, of planned maintenance via email. The notification includes the date and time of the maintenance, the scope of impact, and the expected downtime.
[0585] 2. Alarm suppression: The server analyzes past maintenance history to identify predicted alarms, then configures the server to suppress these alarms to prevent false alarms during maintenance work.
[0586] 3. Proactive system health check: The server checks the system health and verifies that there are no problems. For example, if CPU usage is abnormally high, maintenance is suspended and the problem is resolved as a priority.
[0587] 4. Checking work materials: The server checks the inventory of materials required for maintenance (tools, replacement parts, etc.) and confirms that all are available. If any materials are in short supply, the relevant parties are notified and prompted to make additional arrangements.
[0588] 5. Checking work approval status: The server checks whether work approval has been obtained from all parties involved. If there is any work that has not been approved, it automatically sends an approval request to speed up the approval process.
[0589] As described above, the system of the present invention provides a variety of integrated functions for efficient and reliable system maintenance, thereby improving work efficiency, reducing human error, and further strengthening system stability.
[0590] The processing flow will be explained below.
[0591] Work Notification
[0592] Step 1:
[0593] The server connects to the database and retrieves a list of people involved in the maintenance work, including their names, email addresses, and job titles.
[0594] Step 2:
[0595] The server generates a notification message to be sent to the relevant parties, embedding information such as the maintenance date and time, the scope of impact, and the work content in a template.
[0596] Step 3:
[0597] The server then sends the generated notification message to each of the parties based on the acquired list of parties. Specifically, it sends emails using the SMTP protocol.
[0598] Alarm suppression
[0599] Step 1:
[0600] The server analyzes the history of past alarms and the scope of impact of maintenance, and predicts alarms that may occur during maintenance.
[0601] Step 2:
[0602] The server generates a list of predicted alarms, including information such as the alarm type, cause, and scope of impact.
[0603] Step 3:
[0604] The server then disables the corresponding alarms based on the generated alarm list. Specifically, it calls the API of the alarm management system and changes the settings.
[0605] Pre-check system health
[0606] Step 1:
[0607] The server launches various system monitoring tools and collects system information such as CPU usage, memory usage, free disk space, and network status in real time.
[0608] Step 2:
[0609] The server evaluates the health of the system based on the collected data, checking for any abnormalities that exceed certain thresholds.
[0610] Step 3:
[0611] The server evaluates the results of the health check and, if there are any problems, generates an error message and sends an alert to the relevant personnel.
[0612] Checking work materials
[0613] Step 1:
[0614] The server obtains a list of materials required for maintenance, including tools, parts, consumables, etc.
[0615] Step 2:
[0616] The server accesses the inventory management system to check whether all the necessary work materials are available, specifically by querying the inventory database.
[0617] Step 3:
[0618] If there is a shortage of materials, the server generates a list of the materials in short supply and sends a notification to the relevant parties, specifically, by sending an email urging them to make additional arrangements for the materials.
[0619] Checking work approval status
[0620] Step 1:
[0621] The server obtains approval information from the work approval system to check the approval status of the work.
[0622] Step 2:
[0623] The server determines whether approval has been obtained from all parties based on the obtained approval information.
[0624] Step 3:
[0625] If approval has not been obtained from some of the parties involved, the server automatically sends an approval request. Specifically, it sends an email to the unapproved person requesting approval, urging them to take immediate action.
[0626] Specific examples
[0627] For example, when performing maintenance work on network equipment in a data center, the process is carried out in the following steps:
[0628] Step 1:
[0629] The server obtains a list of network engineers and operations managers from the database.
[0630] Step 2:
[0631] The server generates a maintenance operation notification message and sends it to all interested parties.
[0632] Step 3:
[0633] The server analyzes past alarm history of network devices, predicts false alarms during maintenance, and sets up the system to prevent them.
[0634] Step 4:
[0635] The server checks the current health status of network devices to ensure there are no abnormalities, and if there is a problem, it issues an alert and instructs you to take action.
[0636] Step 5:
[0637] The server checks that all materials necessary for maintenance (cables, replacement parts, etc.) are available and notifies relevant parties if there is a shortage.
[0638] Step 6:
[0639] The server checks whether work approval has been obtained from all parties involved, and automatically sends an approval request if approval has not been obtained.
[0640] This allows maintenance work to proceed efficiently and reliably as planned.
[0641] Example 1
[0642] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0643] Currently, much system maintenance work is performed manually, and processes such as notifying relevant parties, setting alarms, checking work materials, verifying system health, and obtaining work approval require a great deal of time and effort. Such manual work is prone to errors, reducing the efficiency and accuracy of maintenance work. Furthermore, insufficient automation of various processes increases the risk of delays and problems occurring throughout the maintenance work. The present invention aims to solve these problems and improve the efficiency and accuracy of system maintenance work.
[0644] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0645] In this invention, the server includes a means for notifying relevant parties of the work, a means for suppressing alarms that may occur during the work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, and a means for checking the approval status of the work. This allows the entire system maintenance work process to be automated and performed efficiently and reliably. This realizes prompt notification to relevant parties, suppression of false alarms, maintenance of a healthy system state, advance preparation of necessary materials, and a reliable approval process, thereby improving the overall quality and efficiency of maintenance work.
[0646] "Related Persons" refers to all personnel involved in system maintenance work, including, for example, database administrators, network administrators, and operations teams.
[0647] "Work notification" refers to the process of notifying relevant parties in advance of scheduled maintenance work, specifically by generating and sending a notification message.
[0648] "Alarm suppression" refers to the process of disabling false alarms or unnecessary alerts that may occur during maintenance work.
[0649] "Pre-health check" refers to the process of checking the health of a system and ensuring there are no problems before starting maintenance work.
[0650] "Checking work materials" refers to the process of checking whether all the items and materials necessary for maintenance work are available, and is carried out using an inventory management system.
[0651] "Checking work approval status" refers to the process of checking whether all approvals necessary to perform maintenance work have been obtained, and sending approval requests as necessary.
[0652] "Database" refers to a management system that stores information such as a list of people involved and past alarm history, and allows it to be searched and retrieved.
[0653] "Normality" refers to a state in which system performance indicators such as CPU usage, memory usage, free disk space, and network status are within appropriate ranges.
[0654] An "inventory management system" refers to a system for managing and checking the inventory status of items and materials required for maintenance work.
[0655] "Approval Request" means a notification to a Stakeholder requesting approval for an unapproved Maintenance Action.
[0656] This invention relates to a comprehensive management system for efficiently performing system maintenance work. The system aims to automate the following functions using a server: notifying relevant parties of work, suppressing alarms, pre-checking the system's normality, checking work materials, and checking the work approval status.
[0657] Work Notification
[0658] Before starting maintenance work, the server notifies the relevant parties of the planned schedule. Specifically, the server retrieves a list of those involved from the PostgreSQL database and generates a notification message using a Python script. It then broadcasts the message to all those involved using the SMTP protocol. This allows those involved to know the schedule in advance and make appropriate preparations. For example, the following message is sent:
[0659] Date and time: 2023-11-15 10:00 - 12:00
[0660] Affected areas: Database servers, network switches
[0661] Downtime: Up to 2 hours
[0662] Alarm suppression
[0663] The server disables alarms that may occur during maintenance. Specifically, the server uses Elasticsearch to retrieve and analyze past alarm history and visualizes it using Kibana. Based on the results, the Ansible script sets up the system to suppress predicted alarms. This prevents false alarms during maintenance and ensures that work progress is not disrupted.
[0664] Pre-check system health
[0665] Before starting maintenance work, the server checks the system health. This process involves using Prometheus to collect real-time data such as CPU usage, memory usage, free disk space, and network status, and visualizing it with Grafana to evaluate health. If a problem is detected, an alert is issued using the Slack API to notify relevant parties. For example, a notification may be sent saying, "CPU usage is over 80%. Please suspend maintenance work and check."
[0666] Checking work materials
[0667] The server checks whether all materials required for the maintenance work are available. Specifically, it obtains a list of materials for the work via the ERP system's API and checks the inventory in the SAP system based on that. If any required materials are in short supply, it uses JIRA to generate a task and notify the relevant parties. For example, the following notifications are sent:
[0668] Shortage Material List:
[0669] Network cables (10)
[0670] Hard disk (2 units)
[0671] Checking work approval status
[0672] The server checks the approval status of the maintenance work. This process includes checking the approval status of the relevant parties using LDAP and automatically sending email requests for unapproved work. For example, a request like "Approval required for maintenance work. Maintenance date and time: 2023-11-15 10:00 - 12:00 Approval: Approved / Not approved" may be sent.
[0673] As described above, this system provides a variety of integrated functions for efficient and reliable system maintenance, thereby improving work efficiency, reducing human error, and further strengthening system stability.
[0674] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0675] Step 1: Obtain a list of stakeholders
[0676] Server: Connect to the PostgreSQL database and retrieve the list of stakeholders (database administrators, network administrators, operations team, etc.) using an SQL query.
[0677] Input: Roles of the people involved in the work notification (e.g., database administrator, network administrator)
[0678] Output: List of stakeholders
[0679] What happens: The server executes the SQL query SELECT FROM stakeholders WHERE role IN ('DB Admin', 'Network Admin', 'Operations'); to get the list of stakeholders.
[0680] Step 2: Generate a notification message
[0681] Server: Runs a Python script to generate a notification message based on the obtained list of stakeholders. The message includes the date and time of the maintenance, the affected area, and the expected downtime.
[0682] Inputs: list of stakeholders, maintenance date and time, impact area, expected downtime
[0683] Output: Notification message
[0684] What it does: Create a message using Python's string formatting capabilities, for example using an f-string to generate:
[0685] message = f"Maintenance date and time: {maintenance_date}\nImpact scope: {impact_scope}\nExpected downtime: {downtime}\n"
[0686] Step 3: Sending notifications
[0687] Server: Uses the SMTP protocol to broadcast the generated messages to interested parties.
[0688] Input: Notification message, email addresses of people involved
[0689] Output: Transmission log
[0690] Specific behavior: Sends email using an SMTP library. For example, creates a message using MIMEText and sends it with smtplib.
[0691] Step 4: Analyzing historical data
[0692] Server: Connects to the Elasticsearch cluster and runs queries to analyze the history of past alarm occurrences.
[0693] Input: Alarm occurrence history data for the past 30 days
[0694] Output: Analysis result data
[0695] Specific behavior: Searches data using Elasticsearch DSL and receives it in JSON format.
[0696] Step 5: Generate the suppression list
[0697] Server: Use Kibana to visualize the search results and generate a list of predicted alarms, then generate alarm suppression configurations based on that list.
[0698] Input: Analysis result data
[0699] Output: Alarm suppression list
[0700] What it does: Save the suppression list to a JSON file and use it in an Ansible playbook.
[0701] Step 6: Disable alarms
[0702] Server: Use Ansible to apply alarm suppression settings to the server.
[0703] Input: Alarm suppression list, Ansible playbook
[0704] Output: The result of applying the settings
[0705] Specific operation: Execute command: "alarm_control --disable {{ item.alarm_id}}" in the Ansible task.
[0706] Step 7: Collect real-time data
[0707] Server: Use Prometheus to collect metrics such as CPU usage, memory usage, free disk space, and network status.
[0708] Input: System performance data
[0709] Output: Collected metric data
[0710] Specific operation: Set targets in the Prometheus scrape configuration file and collect data.
[0711] Step 8: Health assessment
[0712] Server: Visualize collected data in Grafana and set alert rules to assess health.
[0713] Input: Collected metrics data
[0714] Output: Evaluation results and alerts
[0715] Specific behavior: Set up alert rules on the Grafana dashboard to notify you when an anomaly is detected.
[0716] Step 9: Problem detection and notification
[0717] Server: If a problem is detected, alert relevant parties using the Slack API.
[0718] Input: Anomaly detection data
[0719] Output: Alert notification
[0720] Specific behavior: Sends notification messages to relevant parties using the Slack API.
[0721] Step 10: Get materials list
[0722] Server: Obtains a list of materials required for maintenance via the ERP system's API.
[0723] Input: Maintenance work material information
[0724] Output: Materials list
[0725] Specific operation: Obtain a materials list via an API request to the ERP system and receive the data in JSON format.
[0726] Step 11: Check inventory
[0727] Server: Based on the obtained material list, check the inventory quantity via the SAP system and API.
[0728] Input: Materials List
[0729] Output: Inventory check results
[0730] Specific operation: Sends an API request to the SAP system to obtain inventory data.
[0731] Step 12: Notification of shortage materials
[0732] Server: If there are any missing materials, a task is automatically generated using JIRA and relevant parties are notified.
[0733] Input: Inventory check result
[0734] Output: Shortage material notification and JIRA task
[0735] What it does: Uses JIRA API to generate tasks and notify stakeholders.
[0736] Step 13: Check Approval Status
[0737] Server: Uses LDAP to check the approval status of participants.
[0738] Input: Person involved information, approval status
[0739] Output: Approval status check result
[0740] Specific behavior: Retrieves unauthorized status via LDAP query.
[0741] Step 14: Submit an Unapproved Request
[0742] Server: For unapproved work, an approval request is automatically sent via email to the relevant parties.
[0743] Input: List of interested parties with pending approval status
[0744] Output: Approval request email
[0745] What it does: Sends an approval request to the relevant parties using the SMTP protocol.
[0746] (Application example 1)
[0747] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0748] In modern factories and large-scale facilities, machine maintenance work is complex and involves many parties. It is also prone to problems such as false alarms, material shortages, and delayed approvals. These problems not only delay maintenance work and reduce efficiency, but can also negatively impact system stability. There is a need for management methods to resolve these issues using automated systems.
[0749] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0750] In this invention, the server includes means for notifying relevant parties of work, means for suppressing alarms that may occur during work, means for performing advance confirmation of the system's normality, means for confirming necessary work materials, means for confirming the approval status of the work, management means for efficiently performing machine maintenance work, communication means for sending maintenance notices to relevant parties, prediction means for analyzing past data and suppressing alarms, evaluation means for checking the health status based on normality evaluation, inventory management means for confirming whether materials are available, and approval management means for confirming whether approval has been obtained. This makes it possible to perform maintenance work effectively and quickly, reduce human error, and improve system stability.
[0751] "Parties" means any person or entity involved in the maintenance work.
[0752] "Means for notifying work" refers to a system or function that notifies relevant parties of the schedule and details of maintenance work.
[0753] "Means to suppress alarms" is a function that predicts and disables alarms that may occur during work.
[0754] The "means for performing advance normality check" is a function for checking the health status of the system before starting maintenance work.
[0755] The "means for checking work materials" is a function for checking whether all materials necessary for maintenance work are available.
[0756] The "means for checking the approval status of work" is a function for checking whether work approval has been obtained from all parties involved in the maintenance work.
[0757] "Management means" refers to a system that includes all management functions for efficiently carrying out machine maintenance work.
[0758] "Communication means" refers to the system or network equipment used to send maintenance notifications to relevant parties.
[0759] "Prediction means" is a function that analyzes past data to prevent future alarms.
[0760] "Evaluation means" is a function that checks the health status based on an evaluation of the system's normality.
[0761] "Inventory management means" is a function that checks whether necessary maintenance materials are available and manages inventory.
[0762] The "approval management means" is a function that confirms approval from all parties involved and manages the approval status.
[0763] The present invention is a comprehensive management system for efficiently and automatically performing maintenance work on factory robots. Detailed embodiments are described below.
[0764] The server has a function for notifying the relevant parties of the maintenance schedule and details in order to notify the relevant parties of the maintenance work. This work notification is carried out, for example, by email or a message application.
[0765] The server then has the ability to suppress any alarms that may occur during the work. It analyzes past data to identify and disable predicted alarms. This process prevents false alarms during maintenance.
[0766] To check the system's health in advance, the server monitors system parameters such as CPU usage, memory usage, free disk space, and network status in real time, thereby checking the system's health before starting maintenance.
[0767] Regarding the confirmation of work materials, the server retrieves a list of required materials from the system and checks with the inventory management system to confirm that all materials are available. If any materials are missing, the server notifies the relevant parties.
[0768] The server also has a function to check the approval status of maintenance work. It checks whether approval has been obtained from all parties involved, and automatically sends an approval request if approval has not been obtained.
[0769] In this invention, Node.js is used as the application layer, MySQL is used for server database management, nodemailer is used for message sending, and Prometheus is used for real-time system status monitoring.
[0770] As a concrete example, consider the case of performing maintenance on the hydraulic system of a factory robot. In this case, the following process is executed:
[0771] 1. The server notifies relevant parties of the maintenance schedule.
[0772] 2. Analyze past data and suppress predicted alarms.
[0773] 3. Check system parameters such as CPU usage and memory usage to see if there are any abnormalities.
[0774] 4. Ensure that necessary tools and spare parts are available and notify if any are missing.
[0775] 5. Ensure all relevant approvals are obtained.
[0776] In this way, the system of the present invention aims to improve the efficiency and accuracy of maintenance work.
[0777] Example prompt for a generative AI model:
[0778] "Generate a list of random email addresses in the format 'name@example.com'."
[0779] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0780] Step 1:
[0781] The server sends maintenance notifications to interested parties.
[0782] Input: Get the list of stakeholders from the database and the maintenance details as input.
[0783] Processing: Based on the obtained list, a notification message is generated and sent via nodemailer.
[0784] Output: An email is sent to the relevant parties so that they are aware of the upcoming maintenance.
[0785] Step 2:
[0786] Disables server predicted alarms.
[0787] Input: Takes historical alarm data and current system status as input.
[0788] Processing: Analyze the data, generate a list of predicted alarms, and configure the system to suppress the corresponding alarms.
[0789] Output: A list of alarms to suppress is generated and alarms are disabled during maintenance.
[0790] Step 3:
[0791] The server performs a pre-health check of the system.
[0792] Input: System parameters (CPU usage, memory usage, free disk space, network status) are taken as input.
[0793] Processing: Prometheus is used to monitor system parameters in real time and check for anomalies.
[0794] Output: The system health status is evaluated and an alert is issued if there is an abnormality.
[0795] Step 4:
[0796] Check the materials required for server maintenance.
[0797] Input: Required materials list and inventory information are taken as input.
[0798] Processing: Check the material list against the inventory information and generate a list if there are any missing materials.
[0799] Output: The results of checking whether materials are available and a list of shortages are output.
[0800] Step 5:
[0801] The server checks the approval status of the maintenance work.
[0802] Input: The list of parties requiring approval and their current approval status.
[0803] Process: Check the list of people involved to see if all approvals have been obtained. If approvals have not been obtained, automatically send an approval request.
[0804] Output: The result of checking whether approval has been obtained from all parties is output, and if approval has not been obtained, an approval request is sent.
[0805] In this way, the server acquires the necessary data at each step, performs appropriate processing and judgment, and manages the maintenance work so that it proceeds smoothly.
[0806] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0807] This invention relates to a comprehensive management system for efficiently performing system maintenance work. This system incorporates an emotion engine that recognizes the user's emotions and responds appropriately based on them. In addition to automatically notifying relevant parties of work, suppressing alarms, pre-checking the system's normality, checking work materials, and checking the work approval status, the system also adjusts the operation of each function taking the user's emotions into account, thereby further improving the efficiency and accuracy of maintenance work.
[0808] Work Notification
[0809] The server notifies relevant parties of scheduled maintenance work before the work begins. The server retrieves a list of relevant parties from a database and generates a notification message. The server then adjusts the content of the notification based on the user's emotions recognized by an emotion engine and sends the notification to all relevant parties at once. For example, if a relevant party is feeling stressed, the notification will be sent in more polite language. This function allows relevant parties to understand the schedule in advance and make appropriate preparations.
[0810] Alarm suppression
[0811] The server disables alarms that may occur during maintenance. Specifically, it analyzes past data and alarm occurrence history to generate a list of predicted alarms. It then sets up settings to suppress relevant alarms based on this list. It also takes into account the user's emotional state and strengthens countermeasures by, for example, setting alarms more strictly if the user is under high stress. This prevents false alarms during maintenance and prevents disruption to work progress.
[0812] Pre-check system health
[0813] Before starting maintenance work, the server checks the system's health status. Health checks include CPU usage, memory usage, free disk space, and network status. The server collects this data in real time and evaluates its health. In addition, the emotion engine obtains the user's emotional data and notifies the system of the results of the preliminary health check, adjusting the priority accordingly. For example, if the user is nervous, the notification text will be more polite and include a detailed explanation.
[0814] Checking work materials
[0815] The server checks whether all materials necessary for the maintenance work are available. It retrieves a list of work materials from the system and checks it against the inventory management system. If necessary materials are in short supply, the server generates a list of the missing materials and sends a notification after taking into account the emotions of the relevant parties through an emotion engine. For example, if the relevant parties are in a hurry, the notification will be sent using wording that encourages them to respond calmly. This function ensures that the necessary materials are properly prepared in advance, preventing work delays.
[0816] Checking work approval status
[0817] The server checks the approval status of the maintenance work. It checks whether all approvals for the work have been obtained and, if necessary, sends an approval request to the relevant parties. At this time, the emotion engine analyzes the emotional state of the users and adjusts the wording and timing of the approval request. For example, if the relevant parties are feeling stressed, it will respond by delaying the timing of the request or making the wording more gentle. This function automates the approval process and prevents approvals from being overlooked.
[0818] Specific examples
[0819] For example, when performing system maintenance at a large data center, the process goes like this:
[0820] 1. Work Notification: The server notifies relevant parties, such as database administrators, network administrators, and operation teams, of scheduled maintenance via email. The emotion engine evaluates the stress level of the relevant parties, and if stress is high, the notification text is carefully adjusted to encourage the relevant parties to relax.
[0821] 2. Alarm Suppression: The server analyzes past maintenance history and identifies predicted alarms. The emotion engine then adjusts alarm settings according to the user's stress level to prevent false alarms during maintenance.
[0822] 3. Pre-checking the system health: The server checks the system health and verifies that there are no problems. The emotion engine adjusts the notification text based on the user's emotional data and adds detailed explanations to reduce user anxiety.
[0823] 4. Checking work materials: The server checks the inventory of materials required for maintenance (tools, replacement parts, etc.) and confirms that all are available. If there is a shortage, the emotion engine sends a notification to guide the user to deal with the situation calmly.
[0824] 5. Checking the status of work approval: The server checks whether the work has been approved by all parties involved, and if it has not been approved, it sends an approval request at the optimal time through the emotion engine.
[0825] This ensures that maintenance work proceeds efficiently and reliably as planned, and further improves the working environment by taking into consideration the feelings of those involved.
[0826] The processing flow will be explained below.
[0827] Work Notification
[0828] Step 1:
[0829] The server connects to the database and retrieves a list of people involved in the maintenance work, including their names, email addresses, and job titles.
[0830] Step 2:
[0831] The server generates a notification message to be sent to the relevant parties, embedding information such as the maintenance date and time, the scope of impact, and the work content in a template.
[0832] Step 3:
[0833] The server uses an emotion engine to obtain the latest emotion data for each participant and adjusts the wording of the notification message. For example, if the emotion engine recognizes that the participant is feeling stressed, the server changes the wording of the notification to be more polite and reassuring.
[0834] Step 4:
[0835] The server then sends coordinated notification messages to all interested parties, specifically by sending emails using the SMTP protocol.
[0836] Alarm suppression
[0837] Step 1:
[0838] The server analyzes the history of past alarms and the scope of impact of maintenance, and predicts alarms that may occur during maintenance.
[0839] Step 2:
[0840] The server generates a list of predicted alarms, including information such as the alarm type, cause, and scope of impact.
[0841] Step 3:
[0842] The server uses an emotion engine to assess the emotional state of participants and sets more stringent alarms if any of the participants are particularly stressed.
[0843] Step 4:
[0844] The server sets up the system to disable predicted alarms. Specifically, it calls the API of the alarm management system to change the alarm settings.
[0845] Pre-check system health
[0846] Step 1:
[0847] The server launches various system monitoring tools and collects system information such as CPU usage, memory usage, free disk space, and network status in real time.
[0848] Step 2:
[0849] The server evaluates the health of the system based on the collected data, checking for any abnormalities that exceed certain thresholds.
[0850] Step 3:
[0851] The server uses an emotion engine to obtain the user's emotion data and notifies them of the results of the system's preliminary health check, adjusting the priority according to the emotion. For example, if the user is nervous, the notification text will be more polite and include a detailed explanation.
[0852] Checking work materials
[0853] Step 1:
[0854] The server obtains a list of materials required for maintenance, including tools, parts, consumables, etc.
[0855] Step 2:
[0856] The server accesses the inventory management system to check whether all the necessary work materials are available, specifically by querying the inventory database.
[0857] Step 3:
[0858] If there are shortages of materials, the server generates a list of the materials that are shortages.
[0859] Step 4:
[0860] The server notifies the stakeholders of the list of missing materials after taking into account their emotions through an emotion engine. For example, if the stakeholders are in a hurry, the server will notify them using words that encourage them to respond calmly.
[0861] Checking work approval status
[0862] Step 1:
[0863] The server obtains approval information from the work approval system to check the approval status of the work.
[0864] Step 2:
[0865] The server determines whether approval has been obtained from all parties based on the obtained approval information.
[0866] Step 3:
[0867] The server uses an emotion engine to analyze the emotional state of the participants if some of the participants do not approve.
[0868] Step 4:
[0869] If the emotion engine determines that the person involved is feeling stressed, the server adjusts the wording of the request and the timing of sending it. For example, if the person involved is feeling stressed, the server may delay the timing of the request or make the wording more gentle.
[0870] Specific examples
[0871] For example, when performing maintenance work on network equipment in a data center, the process is carried out in the following steps:
[0872] Step 1:
[0873] The server obtains a list of network engineers and operations managers from the database.
[0874] Step 2:
[0875] The server generates a maintenance work notification message, checks the emotional state of the people involved using an emotion engine, and adjusts the notification text as necessary.
[0876] Step 3:
[0877] The server analyzes past alarm history of network devices to identify predicted alarms, and uses an emotion engine to adjust alarm settings according to the user's stress level to prevent false alarms.
[0878] Step 4:
[0879] The server checks the current health status of network devices and verifies that there are no abnormalities. The emotion engine adjusts the notification text and provides detailed explanations based on the user's emotional data to reduce user anxiety.
[0880] Step 5:
[0881] The server checks the inventory of materials needed for maintenance (cables, replacement parts, etc.) and confirms that all are available. If there is a shortage, it takes into account the emotions of those involved through an emotion engine and notifies them so that they can deal with the situation calmly.
[0882] Step 6:
[0883] The server checks whether all parties have approved the work, and if not, it uses the emotion engine to send an approval request at the optimal time. Once approval is received, the maintenance work begins.
[0884] This ensures that maintenance work proceeds efficiently and reliably as planned, and the working environment is further improved by taking into consideration the feelings of those involved.
[0885] Example 2
[0886] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0887] Conventional system maintenance work suffers from insufficient notification to relevant parties, uncertainty in alarm prediction and prevention, and a lack of proper confirmation of system normality in advance. It is also prone to insufficient confirmation of materials required for maintenance and failure to confirm the approval status of work. Furthermore, uniform responses without consideration of user feelings result in reduced work efficiency and increased stress for those involved.
[0888] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0889] In this invention, the server includes a means for notifying relevant personnel of the work, a means for suppressing alarms that may occur during the work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, a means for checking the approval status of the work, and an emotion engine that recognizes the user's emotions and takes appropriate action at each stage of the work. This improves the efficiency and accuracy of maintenance work and enables responses that take into account the emotions of the relevant personnel.
[0890] "Parties" refers to all persons and organizations involved in system maintenance activities.
[0891] "Work notification" is the act of informing relevant parties of the schedule, content, and scope of impact of maintenance work.
[0892] "Alarm suppression" is the act of predicting, controlling, or disabling unnecessary alarms that may occur during maintenance.
[0893] "Preliminary system health check" refers to the act of checking the system's health status (CPU usage, memory usage, free disk space, network status, etc.) before starting maintenance work to ensure that it is operating normally.
[0894] "Work materials" refers to all tools, parts, consumables, etc. required for maintenance work.
[0895] "Confirming the approval status of work" is the act of confirming whether approval has been obtained from all parties involved in the maintenance work plan.
[0896] An "emotion engine" is a program or device that has the ability to recognize and analyze a user's emotional state and adjust system behavior and notification content based on that data.
[0897] "Disabling" refers to the act of temporarily or permanently deactivating a particular function or alarm.
[0898] This invention relates to a comprehensive management system for efficiently performing system maintenance work. This system incorporates an emotion engine that recognizes user emotions and responds appropriately based on those emotions. This system automatically notifies relevant parties of work, suppresses alarms, checks the system's normality in advance, checks work materials, and checks the work approval status.
[0899] Hardware and software used
[0900] server:
[0901] Database management system (e.g. MySQL)
[0902] Sentiment analysis engine (e.g. IBM Watson)
[0903] Notification systems (e.g., email sending systems using the SMTP protocol)
[0904] Data analysis systems (e.g., Hadoop)
[0905] System monitoring tools (e.g. Nagios)
[0906] Inventory management system (e.g. SAP)
[0907] User:
[0908] Stakeholders include database administrators, network administrators, and operations teams.
[0909] Specific operation of the system
[0910] 1. Get the stakeholder list:
[0911] The server connects to a MySQL database and retrieves information about the parties involved, including their email addresses, job titles, and responsibilities.
[0912] 2. Maintenance work notification generation and coordination:
[0913] The server uses a Python script to generate notification messages containing details of the maintenance work, then uses an emotion engine (such as IBM Watson) to detect the stress level of the relevant parties and tailor the notification text to send it.
[0914] For example, the server might send a notification message like this:
[0915] "Notice of scheduled system maintenance: System maintenance will be carried out on XX day from XX to XX. We appreciate your cooperation."
[0916] 3. Alarm prediction and suppression:
[0917] The server uses Hadoop to analyze past maintenance history and alarm data, and generates a list of predicted alarms. Based on user sentiment, it adjusts alarm settings to prevent false alarms.
[0918] 4. Check system health:
[0919] The server uses monitoring tools such as Nagios to collect health data such as CPU usage, memory usage, free disk space, and network status, which is then analyzed using machine learning models (such as TensorFlow) to assess the health of the system.
[0920] For example, the server might advertise:
[0921] "System health check: All items are normal. Please proceed with maintenance with confidence."
[0922] 5. Checking work materials:
[0923] The server retrieves the list of work materials from the ERP system and checks the stock against inventory management systems such as SAP. If there is a shortage, it sends a notification message adjusted by the emotion engine.
[0924] For example, the server might advertise:
[0925] "We are running low on certain materials. We advise you to remain calm."
[0926] 6. Check and adjust work approval status:
[0927] The server checks the approval status using a task management tool such as Jira, and if approval has not been granted, it sends an approval request adjusted by the emotion engine.
[0928] For example, the server sends the following message:
[0929] "Maintenance work approval request: Please review and approve. If it is urgent, please let us know in advance."
[0930] These operations ensure that maintenance work planning proceeds efficiently and reliably, and that responses that take into account the feelings of those involved are realized throughout the system.
[0931] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0932] Step 1: Obtain a list of stakeholders
[0933] Input: Request via database query
[0934] What happens: The server connects to the MySQL database and executes the query SELECT FROM stakeholders to get the list of stakeholders.
[0935] Data processing: Converts the related party information retrieved from the database into JSON format and stores it in the internal cache.
[0936] Output: A list of stakeholders' email addresses, titles, and responsibilities (JSON format).
[0937] Step 2: Generate and coordinate maintenance work notifications
[0938] Input: Maintenance work details, stakeholders list
[0939] Specific operation: The server uses a Python script to generate a template message containing information about the work date and time, the scope of impact, and the person in charge.
[0940] Adjustment using emotion engine: The server uses an emotion engine (IBM Watson) to analyze the stress level of the relevant person and adjust the notification text.
[0941] Output: The tailored notification message in text format.
[0942] Sending notifications: The server sends them to all interested parties via the SMTP protocol.
[0943] Step 3: Alarm prediction and suppression
[0944] Input: Past maintenance history data, alarm data
[0945] Specific operation: The server uses Hadoop to analyze past maintenance history and alarm data.
[0946] Data processing: Generate a predicted alarm list based on the analysis results.
[0947] Emotion engine considerations: The server adjusts and suppresses alarm settings based on the user's emotional state.
[0948] Output: Predictive alarm list (JSON format), setting change results
[0949] Alarm suppression: The server applies the settings to the system to disable the corresponding alarm based on the predicted alarm list.
[0950] Step 4: Check system health
[0951] Input: Real-time system usage data (CPU usage, memory usage, disk space, network status)
[0952] What it does: The server collects data using a monitoring tool such as Nagios.
[0953] Data processing: Analyze the collected data using a machine learning model (TensorFlow) and evaluate its normality.
[0954] Notification adjustment by emotion engine: The server adjusts the priority and details of the health check results based on the user's emotion data.
[0955] Output: System health assessment results in text format.
[0956] Sending notifications: The server notifies the relevant parties of the evaluation results.
[0957] Step 5: Check the work materials
[0958] Input: Working materials list
[0959] Specific operation: The server obtains the work materials list from the ERP system using REST API.
[0960] Data processing: Based on the obtained list, inventory is checked against inventory management systems such as SAP.
[0961] Generate a list of missing materials and send notifications: If there are any missing materials, a list will be generated and notifications will be sent in a form that takes into account the emotions of the relevant parties using an emotion engine.
[0962] Output: Shortage material list (text format), adjusted notification message
[0963] Sending notifications: The server sends coordinated notifications to interested parties.
[0964] Step 6: Check and adjust work approval status
[0965] Input: Approval status data, stakeholder list
[0966] Specific operation: The server checks the approval status using a task management tool such as Jira.
[0967] Data Processing: Identify unauthorized parties and create approval requests.
[0968] Coordination by emotion engine: The server analyzes the emotional state of the parties involved using an emotion engine and sends approval requests with optimal timing and wording.
[0969] Output: Reconciled approval request message (text format)
[0970] Send approval request: The server sends the coordinated approval request via email or Slack.
[0971] Through the above steps, the system can carry out maintenance work efficiently and reliably, and respond in a way that takes into account the feelings of those involved.
[0972] (Application example 2)
[0973] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0974] In conventional system maintenance, communication between related parties was inefficient, often resulting in delays in approval of necessary work and preparation of materials. In addition, insufficient management of alarms that occurred during maintenance led to frequent false alarms, causing disruption to work. In addition to these issues, ignoring the stress and emotional state of workers sometimes prevented maintenance work from progressing smoothly.
[0975] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0976] In this invention, the server includes a means for notifying relevant personnel of work, a means for suppressing alarms that may occur during work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, a means for checking the approval status of the work, and a means for analyzing emotion data and automatically adjusting the work notification text and alarm settings, thereby enabling efficient and highly accurate maintenance work while taking into account the emotional state of the relevant personnel.
[0977] "Stakeholder" means any person directly involved in or affected by a system maintenance activity, or both.
[0978] "Work notification" refers to the means of informing relevant parties of the schedule and progress of maintenance work.
[0979] "Alarm suppression" refers to measures to prevent predicted alarms from occurring and avoid unnecessary alarms during maintenance work.
[0980] "Preliminary health check" refers to a method of checking the health status of a system (CPU usage, memory usage, free disk space, network status, etc.) before starting maintenance work.
[0981] "Checking work materials" refers to the means of checking whether all materials, such as tools and replacement parts, necessary for maintenance work are available.
[0982] "Work Approval Status Check" refers to the means of verifying that proper approvals have been obtained from all parties before maintenance work is performed.
[0983] "Emotion data" is data that represents the emotional state of a user or worker, and includes emotions such as stress, tension, and impatience.
[0984] An "emotion engine" is an engine that has the ability to analyze emotional data and adjust system behavior and notification content based on that data.
[0985] "Notification text adjustment" refers to a method of changing the content and wording of notification messages based on emotional data to convey information in the most appropriate way to the relevant parties.
[0986] "Alarm setting adjustment" refers to the means of changing alarm thresholds and trigger conditions based on emotional data to avoid false or unnecessary alarms.
[0987] This invention is a system for efficiently managing system maintenance work using factory robots. This system is equipped with an emotion engine that recognizes the user's emotion data and has the function of automatically adjusting notification messages and alarm settings for various maintenance work based on that data.
[0988] System configuration
[0989] The main components of this system are as follows:
[0990] Server: Data processing and central management
[0991] Factory robots: assisting with maintenance tasks and collecting emotional data
[0992] Cameras and sensors: Used to collect emotion data
[0993] Database: Manage maintenance schedules, inventory information, stakeholder lists, etc.
[0994] software
[0995] The software configuration is as follows:
[0996] Emotion engine: Analyzes user emotion data and adjusts various functions
[0997] Database management system (MySQL): Manages maintenance schedules and inventory information
[0998] Image processing library (OpenCV, dlib): Used to analyze emotion data
[0999] Email sending API: Sends emails to notify users of work.
[1000] Processing flow
[1001] Work Notification
[1002] The server retrieves the maintenance schedule from the database and references the list of people involved. The factory robot uses a camera to capture the facial expressions of the workers and analyzes their emotions using OpenCV and dlib. The emotion engine analyzes this data and generates a message that will put the people involved at ease. It then sends a notification email to the people involved using the email sending API.
[1003] Alarm Suppression
[1004] The server analyzes past maintenance data and generates a list of predicted alarms. The factory robot checks the emotional state of the workers in real time and automatically adjusts alarm settings as needed using an emotion engine. During times of high stress, stricter alarm suppression is set, strengthening measures to ensure smooth maintenance.
[1005] Preliminary normality check
[1006] The server checks the system's health status and collects data such as CPU usage, memory usage, free disk space, and network status. The factory robot simultaneously collects the user's emotional data, analyzes the status check results through an emotion engine, and adjusts and notifies the user as necessary. For example, if the user is nervous, a detailed explanation will be provided.
[1007] Checking work materials
[1008] The server retrieves the list of work materials and checks the stock of the necessary materials from the inventory management system. The factory robot sends a notification to the relevant parties through the emotion engine, urging them to respond calmly. If the necessary materials are in short supply, the notification is sent using words that encourage the relevant parties to respond calmly.
[1009] Checking work approval status
[1010] The server checks whether all relevant parties have approved the work. The factory robot sends approval requests at the optimal time through the emotion engine. If a relevant party is feeling stressed, the robot adjusts the wording and timing of the request.
[1011] Specific examples
[1012] For example, the prompt text for a work notification is:
[1013] Text format
[1014] Subject: Maintenance Notice
[1015] Message: Thank you for your continued support. We would like to inform you of the schedule for the next maintenance work. Details are as follows.
[1016] Date: YYYY / MM / DD
[1017] Time: HH:MM
[1018] Advice from the Emotion Engine: Relax and work.
[1019] This system allows for efficient and accurate maintenance work while taking into account the emotional state of those involved.
[1020] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1021] Step 1:
[1022] The server retrieves the maintenance schedule from the database.
[1023] Input: Database where maintenance schedules are stored
[1024] Data processing: Run SQL queries to extract schedule data
[1025] Output: A list of maintenance schedules
[1026] Step 2:
[1027] The server retrieves the list of interested parties and generates a notification message.
[1028] Inputs: Interest List Database, Maintenance Schedule
[1029] Data Transformation: Extract stakeholder lists with SQL queries and generate scheduled notification messages
[1030] Output: Notification message (text format)
[1031] Step 3:
[1032] The factory robot uses a camera to capture the facial expressions of the workers.
[1033] Input: Worker's facial image (real-time video)
[1034] Data processing: Face recognition processing of face images taken with a camera using OpenCV and dlib
[1035] Output: Facial feature point data
[1036] Step 4:
[1037] Factory robots use emotion engines to analyze workers' emotions.
[1038] Input: Facial feature point data
[1039] Data processing: Analyze facial feature point data using the emotion engine and classify emotions using emotion recognition models
[1040] Output: Emotion data (e.g., stress, relaxation, tension)
[1041] Step 5:
[1042] Based on the emotion data, the emotion engine adjusts the notification text.
[1043] Input: Notification message, emotion data
[1044] Data processing: Optimizing notification message content based on emotional data (e.g., changing to more polite language)
[1045] Output: The adjusted notification message
[1046] Step 6:
[1047] The server uses an email sending API to send a notification message to the relevant parties.
[1048] Input: Tailored notification message, email addresses of interested parties
[1049] Data processing: Call the email sending API to send an email
[1050] Output: Email sending result (success / failure)
[1051] Step 7:
[1052] The server analyzes past maintenance data and generates a list of predicted alarms.
[1053] Input: Past maintenance database
[1054] Data processing: Analyzing past data to extract alarm occurrence patterns
[1055] Output: List of predicted alarms
[1056] Step 8:
[1057] Factory robots can monitor workers' emotional state in real time and adjust alarm settings.
[1058] Input: Real-time emotion data, predicted alarm list
[1059] Data processing: Analyze real-time data with an emotion engine and change alarm settings as needed
[1060] Output: Adjusted alarm settings
[1061] Step 9:
[1062] The server performs a pre-health check of the system.
[1063] Input: System health data (CPU usage, memory usage, etc.)
[1064] Data processing: Collect data from each system and evaluate its health
[1065] Output: Health evaluation result
[1066] Step 10:
[1067] The factory robot notifies the user of the results of a preliminary normality check based on the user's emotional data.
[1068] Input: Health assessment results, emotion data
[1069] Data manipulation: tailoring notifications based on sentiment (e.g., adding detailed explanations)
[1070] Output: Reconciled health check notification
[1071] Step 11:
[1072] The server obtains the list of work materials and checks it against the inventory management system.
[1073] Input: Work materials list, inventory database
[1074] Data processing: Compare the material list with inventory data and extract missing materials
[1075] Output: List of missing materials
[1076] Step 12:
[1077] The factory robot notifies relevant parties based on a list of missing materials.
[1078] Input: Shortage material list, emotion data
[1079] Data processing: Adjusting notification text based on emotional data (e.g., encouraging users to remain calm)
[1080] Output: Adjusted Shortage Material Notification
[1081] Step 13:
[1082] The server checks whether all parties have approved the work.
[1083] Input: Authorization Database
[1084] Data processing: Check the approval list to see if there are any missing approvals.
[1085] Output: Approval status list
[1086] Step 14:
[1087] If there is any missed approval, the factory robot will send an approval request through the emotion engine.
[1088] Input: Approval status list, emotion data
[1089] Data processing: Generate approval requests with optimal timing and wording based on sentiment data
[1090] Output: Reconciled approval request notification
[1091] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1092] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1093] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[1094] [Third embodiment]
[1095] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[1096] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[1097] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1098] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[1099] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1100] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1101] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1102] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1103] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1104] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1105] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1106] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."
[1107] This invention relates to a comprehensive management system for efficiently performing system maintenance work. The system aims to improve the efficiency and accuracy of maintenance work by automating work notifications, alarm suppression, advance system normality checks, work material checks, and work approval status checks.
[1108] Work Notification
[1109] The server notifies the relevant parties of the planned maintenance work before the work begins. The server retrieves a list of those involved from the database and generates a notification message. It then sends the notification to all those involved at once. This function allows those involved to know the schedule in advance and make appropriate preparations.
[1110] Alarm suppression
[1111] The server disables alarms that may occur during maintenance. Specifically, it analyzes past data and alarm occurrence history to generate a list of predicted alarms. It then configures the server to suppress applicable alarms based on this list. This prevents false alarms during maintenance and prevents disruption to the progress of work.
[1112] Pre-check system health
[1113] Before starting maintenance work, the server checks the system's health status. Health checks include CPU usage, memory usage, free disk space, and network status. The server collects this data in real time and evaluates its health. If a problem is detected, it suspends the work and issues an alert so that appropriate measures can be taken.
[1114] Checking work materials
[1115] The server checks whether all materials required for the maintenance work are available. It retrieves a list of work materials from the system and checks it against the inventory management system. If necessary materials are in short supply, the server generates a list of the missing materials and notifies the relevant parties that additional materials must be arranged. This function ensures that the necessary materials are prepared appropriately in advance, preventing work delays.
[1116] Checking work approval status
[1117] The server checks the approval status of maintenance work. It checks whether all approvals for the work have been obtained and sends approval requests to the relevant parties if necessary. This function automates the approval process and prevents oversight of approvals.
[1118] Specific examples
[1119] For example, when performing system maintenance at a large data center, the process goes like this:
[1120] 1. Work notification: The server notifies relevant parties, such as database administrators, network administrators, and operations teams, of planned maintenance via email. The notification includes the date and time of the maintenance, the scope of impact, and the expected downtime.
[1121] 2. Alarm suppression: The server analyzes past maintenance history to identify predicted alarms, then configures the server to suppress these alarms to prevent false alarms during maintenance work.
[1122] 3. Proactive system health check: The server checks the system health and verifies that there are no problems. For example, if CPU usage is abnormally high, maintenance is suspended and the problem is resolved as a priority.
[1123] 4. Checking work materials: The server checks the inventory of materials required for maintenance (tools, replacement parts, etc.) and confirms that all are available. If any materials are in short supply, the relevant parties are notified and prompted to make additional arrangements.
[1124] 5. Checking work approval status: The server checks whether work approval has been obtained from all parties involved. If there is any work that has not been approved, it automatically sends an approval request to speed up the approval process.
[1125] As described above, the system of the present invention provides a variety of integrated functions for efficient and reliable system maintenance, thereby improving work efficiency, reducing human error, and further strengthening system stability.
[1126] The processing flow will be explained below.
[1127] Work Notification
[1128] Step 1:
[1129] The server connects to the database and retrieves a list of people involved in the maintenance work, including their names, email addresses, and job titles.
[1130] Step 2:
[1131] The server generates a notification message to be sent to the relevant parties, embedding information such as the maintenance date and time, the scope of impact, and the work content in a template.
[1132] Step 3:
[1133] The server then sends the generated notification message to each of the parties based on the acquired list of parties. Specifically, it sends emails using the SMTP protocol.
[1134] Alarm suppression
[1135] Step 1:
[1136] The server analyzes the history of past alarms and the scope of impact of maintenance, and predicts alarms that may occur during maintenance.
[1137] Step 2:
[1138] The server generates a list of predicted alarms, including information such as the alarm type, cause, and scope of impact.
[1139] Step 3:
[1140] The server then disables the corresponding alarms based on the generated alarm list. Specifically, it calls the API of the alarm management system and changes the settings.
[1141] Pre-check system health
[1142] Step 1:
[1143] The server launches various system monitoring tools and collects system information such as CPU usage, memory usage, free disk space, and network status in real time.
[1144] Step 2:
[1145] The server evaluates the health of the system based on the collected data, checking for any abnormalities that exceed certain thresholds.
[1146] Step 3:
[1147] The server evaluates the results of the health check and, if there are any problems, generates an error message and sends an alert to the relevant personnel.
[1148] Checking work materials
[1149] Step 1:
[1150] The server obtains a list of materials required for maintenance, including tools, parts, consumables, etc.
[1151] Step 2:
[1152] The server accesses the inventory management system to check whether all the necessary work materials are available, specifically by querying the inventory database.
[1153] Step 3:
[1154] If there is a shortage of materials, the server generates a list of the materials in short supply and sends a notification to the relevant parties, specifically, by sending an email urging them to make additional arrangements for the materials.
[1155] Checking work approval status
[1156] Step 1:
[1157] The server obtains approval information from the work approval system to check the approval status of the work.
[1158] Step 2:
[1159] The server determines whether approval has been obtained from all parties based on the obtained approval information.
[1160] Step 3:
[1161] If approval has not been obtained from some of the parties involved, the server automatically sends an approval request. Specifically, it sends an email to the unapproved person requesting approval, urging them to take immediate action.
[1162] Specific examples
[1163] For example, when performing maintenance work on network equipment in a data center, the process is carried out in the following steps:
[1164] Step 1:
[1165] The server obtains a list of network engineers and operations managers from the database.
[1166] Step 2:
[1167] The server generates a maintenance operation notification message and sends it to all interested parties.
[1168] Step 3:
[1169] The server analyzes past alarm history of network devices, predicts false alarms during maintenance, and sets up the system to prevent them.
[1170] Step 4:
[1171] The server checks the current health status of network devices to ensure there are no abnormalities, and if there is a problem, it issues an alert and instructs you to take action.
[1172] Step 5:
[1173] The server checks that all materials necessary for maintenance (cables, replacement parts, etc.) are available and notifies relevant parties if there is a shortage.
[1174] Step 6:
[1175] The server checks whether work approval has been obtained from all parties involved, and automatically sends an approval request if approval has not been obtained.
[1176] This allows maintenance work to proceed efficiently and reliably as planned.
[1177] Example 1
[1178] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1179] Currently, much system maintenance work is performed manually, and processes such as notifying relevant parties, setting alarms, checking work materials, verifying system health, and obtaining work approval require a great deal of time and effort. Such manual work is prone to errors, reducing the efficiency and accuracy of maintenance work. Furthermore, insufficient automation of various processes increases the risk of delays and problems occurring throughout the maintenance work. The present invention aims to solve these problems and improve the efficiency and accuracy of system maintenance work.
[1180] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1181] In this invention, the server includes a means for notifying relevant parties of the work, a means for suppressing alarms that may occur during the work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, and a means for checking the approval status of the work. This allows the entire system maintenance work process to be automated and performed efficiently and reliably. This realizes prompt notification to relevant parties, suppression of false alarms, maintenance of a healthy system state, advance preparation of necessary materials, and a reliable approval process, thereby improving the overall quality and efficiency of maintenance work.
[1182] "Related Persons" refers to all personnel involved in system maintenance work, including, for example, database administrators, network administrators, and operations teams.
[1183] "Work notification" refers to the process of notifying relevant parties in advance of scheduled maintenance work, specifically by generating and sending a notification message.
[1184] "Alarm suppression" refers to the process of disabling false alarms or unnecessary alerts that may occur during maintenance work.
[1185] "Pre-health check" refers to the process of checking the health of a system and ensuring there are no problems before starting maintenance work.
[1186] "Checking work materials" refers to the process of checking whether all the items and materials necessary for maintenance work are available, and is carried out using an inventory management system.
[1187] "Checking work approval status" refers to the process of checking whether all approvals necessary to perform maintenance work have been obtained, and sending approval requests as necessary.
[1188] "Database" refers to a management system that stores information such as a list of people involved and past alarm history, and allows it to be searched and retrieved.
[1189] "Normality" refers to a state in which system performance indicators such as CPU usage, memory usage, free disk space, and network status are within appropriate ranges.
[1190] An "inventory management system" refers to a system for managing and checking the inventory status of items and materials required for maintenance work.
[1191] "Approval Request" means a notification to a Stakeholder requesting approval for an unapproved Maintenance Action.
[1192] This invention relates to a comprehensive management system for efficiently performing system maintenance work. The system aims to automate the following functions using a server: notifying relevant parties of work, suppressing alarms, pre-checking the system's normality, checking work materials, and checking the work approval status.
[1193] Work Notification
[1194] Before starting maintenance work, the server notifies the relevant parties of the planned schedule. Specifically, the server retrieves a list of those involved from the PostgreSQL database and generates a notification message using a Python script. It then broadcasts the message to all those involved using the SMTP protocol. This allows those involved to know the schedule in advance and make appropriate preparations. For example, the following message is sent:
[1195] Date and time: 2023-11-15 10:00 - 12:00
[1196] Affected areas: Database servers, network switches
[1197] Downtime: Up to 2 hours
[1198] Alarm suppression
[1199] The server disables alarms that may occur during maintenance. Specifically, the server uses Elasticsearch to retrieve and analyze past alarm history and visualizes it using Kibana. Based on the results, the Ansible script sets up the system to suppress predicted alarms. This prevents false alarms during maintenance and ensures that work progress is not disrupted.
[1200] Pre-check system health
[1201] Before starting maintenance work, the server checks the system health. This process involves using Prometheus to collect real-time data such as CPU usage, memory usage, free disk space, and network status, and visualizing it with Grafana to evaluate health. If a problem is detected, an alert is issued using the Slack API to notify relevant parties. For example, a notification may be sent saying, "CPU usage is over 80%. Please suspend maintenance work and check."
[1202] Checking work materials
[1203] The server checks whether all materials required for the maintenance work are available. Specifically, it obtains a list of materials for the work via the ERP system's API and checks the inventory in the SAP system based on that. If any required materials are in short supply, it uses JIRA to generate a task and notify the relevant parties. For example, the following notifications are sent:
[1204] Shortage Material List:
[1205] Network cables (10)
[1206] Hard disk (2 units)
[1207] Checking work approval status
[1208] The server checks the approval status of the maintenance work. This process includes checking the approval status of the relevant parties using LDAP and automatically sending email requests for unapproved work. For example, a request like "Approval required for maintenance work. Maintenance date and time: 2023-11-15 10:00 - 12:00 Approval: Approved / Not approved" may be sent.
[1209] As described above, this system provides a variety of integrated functions for efficient and reliable system maintenance, thereby improving work efficiency, reducing human error, and further strengthening system stability.
[1210] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1211] Step 1: Obtain a list of stakeholders
[1212] Server: Connect to the PostgreSQL database and retrieve the list of stakeholders (database administrators, network administrators, operations team, etc.) using an SQL query.
[1213] Input: Roles of the people involved in the work notification (e.g., database administrator, network administrator)
[1214] Output: List of stakeholders
[1215] What happens: The server executes the SQL query SELECT FROM stakeholders WHERE role IN ('DB Admin', 'Network Admin', 'Operations'); to get the list of stakeholders.
[1216] Step 2: Generate a notification message
[1217] Server: Runs a Python script to generate a notification message based on the obtained list of stakeholders. The message includes the date and time of the maintenance, the affected area, and the expected downtime.
[1218] Inputs: list of stakeholders, maintenance date and time, impact area, expected downtime
[1219] Output: Notification message
[1220] What it does: Create a message using Python's string formatting capabilities, for example using an f-string to generate:
[1221] message = f"Maintenance date and time: {maintenance_date}\nImpact scope: {impact_scope}\nExpected downtime: {downtime}\n"
[1222] Step 3: Sending notifications
[1223] Server: Uses the SMTP protocol to broadcast the generated messages to interested parties.
[1224] Input: Notification message, email addresses of people involved
[1225] Output: Transmission log
[1226] Specific behavior: Sends email using an SMTP library. For example, creates a message using MIMEText and sends it with smtplib.
[1227] Step 4: Analyzing historical data
[1228] Server: Connects to the Elasticsearch cluster and runs queries to analyze the history of past alarm occurrences.
[1229] Input: Alarm occurrence history data for the past 30 days
[1230] Output: Analysis result data
[1231] Specific behavior: Searches data using Elasticsearch DSL and receives it in JSON format.
[1232] Step 5: Generate the suppression list
[1233] Server: Use Kibana to visualize the search results and generate a list of predicted alarms, then generate alarm suppression configurations based on that list.
[1234] Input: Analysis result data
[1235] Output: Alarm suppression list
[1236] What it does: Save the suppression list to a JSON file and use it in an Ansible playbook.
[1237] Step 6: Disable alarms
[1238] Server: Use Ansible to apply alarm suppression settings to the server.
[1239] Input: Alarm suppression list, Ansible playbook
[1240] Output: The result of applying the settings
[1241] Specific operation: Execute command: "alarm_control --disable {{ item.alarm_id}}" in the Ansible task.
[1242] Step 7: Collect real-time data
[1243] Server: Use Prometheus to collect metrics such as CPU usage, memory usage, free disk space, and network status.
[1244] Input: System performance data
[1245] Output: Collected metric data
[1246] Specific operation: Set targets in the Prometheus scrape configuration file and collect data.
[1247] Step 8: Health assessment
[1248] Server: Visualize collected data in Grafana and set alert rules to assess health.
[1249] Input: Collected metrics data
[1250] Output: Evaluation results and alerts
[1251] Specific behavior: Set up alert rules on the Grafana dashboard to notify you when an anomaly is detected.
[1252] Step 9: Problem detection and notification
[1253] Server: If a problem is detected, alert relevant parties using the Slack API.
[1254] Input: Anomaly detection data
[1255] Output: Alert notification
[1256] Specific behavior: Sends notification messages to relevant parties using the Slack API.
[1257] Step 10: Get materials list
[1258] Server: Obtains a list of materials required for maintenance via the ERP system's API.
[1259] Input: Maintenance work material information
[1260] Output: Materials list
[1261] Specific operation: Obtain a materials list via an API request to the ERP system and receive the data in JSON format.
[1262] Step 11: Check inventory
[1263] Server: Based on the obtained material list, check the inventory quantity via the SAP system and API.
[1264] Input: Materials List
[1265] Output: Inventory check results
[1266] Specific operation: Sends an API request to the SAP system to obtain inventory data.
[1267] Step 12: Notification of shortage materials
[1268] Server: If there are any missing materials, a task is automatically generated using JIRA and relevant parties are notified.
[1269] Input: Inventory check result
[1270] Output: Shortage material notification and JIRA task
[1271] What it does: Uses JIRA API to generate tasks and notify stakeholders.
[1272] Step 13: Check Approval Status
[1273] Server: Uses LDAP to check the approval status of participants.
[1274] Input: Person involved information, approval status
[1275] Output: Approval status check result
[1276] Specific behavior: Retrieves unauthorized status via LDAP query.
[1277] Step 14: Submit an Unapproved Request
[1278] Server: For unapproved work, an approval request is automatically sent via email to the relevant parties.
[1279] Input: List of interested parties with pending approval status
[1280] Output: Approval request email
[1281] What it does: Sends an approval request to the relevant parties using the SMTP protocol.
[1282] (Application example 1)
[1283] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1284] In modern factories and large-scale facilities, machine maintenance work is complex and involves many parties. It is also prone to problems such as false alarms, material shortages, and delayed approvals. These problems not only delay maintenance work and reduce efficiency, but can also negatively impact system stability. There is a need for management methods to resolve these issues using automated systems.
[1285] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1286] In this invention, the server includes means for notifying relevant parties of work, means for suppressing alarms that may occur during work, means for performing advance confirmation of the system's normality, means for confirming necessary work materials, means for confirming the approval status of the work, management means for efficiently performing machine maintenance work, communication means for sending maintenance notices to relevant parties, prediction means for analyzing past data and suppressing alarms, evaluation means for checking the health status based on normality evaluation, inventory management means for confirming whether materials are available, and approval management means for confirming whether approval has been obtained. This makes it possible to perform maintenance work effectively and quickly, reduce human error, and improve system stability.
[1287] "Parties" means any person or entity involved in the maintenance work.
[1288] "Means for notifying work" refers to a system or function that notifies relevant parties of the schedule and details of maintenance work.
[1289] "Means to suppress alarms" is a function that predicts and disables alarms that may occur during work.
[1290] The "means for performing advance normality check" is a function for checking the health status of the system before starting maintenance work.
[1291] The "means for checking work materials" is a function for checking whether all materials necessary for maintenance work are available.
[1292] The "means for checking the approval status of work" is a function for checking whether work approval has been obtained from all parties involved in the maintenance work.
[1293] "Management means" refers to a system that includes all management functions for efficiently carrying out machine maintenance work.
[1294] "Communication means" refers to the system or network equipment used to send maintenance notifications to relevant parties.
[1295] "Prediction means" is a function that analyzes past data to prevent future alarms.
[1296] "Evaluation means" is a function that checks the health status based on an evaluation of the system's normality.
[1297] "Inventory management means" is a function that checks whether necessary maintenance materials are available and manages inventory.
[1298] The "approval management means" is a function that confirms approval from all parties involved and manages the approval status.
[1299] The present invention is a comprehensive management system for efficiently and automatically performing maintenance work on factory robots. Detailed embodiments are described below.
[1300] The server has a function for notifying the relevant parties of the maintenance schedule and details in order to notify the relevant parties of the maintenance work. This work notification is carried out, for example, by email or a message application.
[1301] The server then has the ability to suppress any alarms that may occur during the work. It analyzes past data to identify and disable predicted alarms. This process prevents false alarms during maintenance.
[1302] To check the system's health in advance, the server monitors system parameters such as CPU usage, memory usage, free disk space, and network status in real time, thereby checking the system's health before starting maintenance.
[1303] Regarding the confirmation of work materials, the server retrieves a list of required materials from the system and checks with the inventory management system to confirm that all materials are available. If any materials are missing, the server notifies the relevant parties.
[1304] The server also has a function to check the approval status of maintenance work. It checks whether approval has been obtained from all parties involved, and automatically sends an approval request if approval has not been obtained.
[1305] In this invention, Node.js is used as the application layer, MySQL is used for server database management, nodemailer is used for message sending, and Prometheus is used for real-time system status monitoring.
[1306] As a concrete example, consider the case of performing maintenance on the hydraulic system of a factory robot. In this case, the following process is executed:
[1307] 1. The server notifies relevant parties of the maintenance schedule.
[1308] 2. Analyze past data and suppress predicted alarms.
[1309] 3. Check system parameters such as CPU usage and memory usage to see if there are any abnormalities.
[1310] 4. Ensure that necessary tools and spare parts are available and notify if any are missing.
[1311] 5. Ensure all relevant approvals are obtained.
[1312] In this way, the system of the present invention aims to improve the efficiency and accuracy of maintenance work.
[1313] Example prompt for a generative AI model:
[1314] "Generate a list of random email addresses in the format 'name@example.com'."
[1315] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1316] Step 1:
[1317] The server sends maintenance notifications to interested parties.
[1318] Input: Get the list of stakeholders from the database and the maintenance details as input.
[1319] Processing: Based on the obtained list, a notification message is generated and sent via nodemailer.
[1320] Output: An email is sent to the relevant parties so that they are aware of the upcoming maintenance.
[1321] Step 2:
[1322] Disables server predicted alarms.
[1323] Input: Takes historical alarm data and current system status as input.
[1324] Processing: Analyze the data, generate a list of predicted alarms, and configure the system to suppress the corresponding alarms.
[1325] Output: A list of alarms to suppress is generated and alarms are disabled during maintenance.
[1326] Step 3:
[1327] The server performs a pre-health check of the system.
[1328] Input: System parameters (CPU usage, memory usage, free disk space, network status) are taken as input.
[1329] Processing: Prometheus is used to monitor system parameters in real time and check for anomalies.
[1330] Output: The system health status is evaluated and an alert is issued if there is an abnormality.
[1331] Step 4:
[1332] Check the materials required for server maintenance.
[1333] Input: Required materials list and inventory information are taken as input.
[1334] Processing: Check the material list against the inventory information and generate a list if there are any missing materials.
[1335] Output: The results of checking whether materials are available and a list of shortages are output.
[1336] Step 5:
[1337] The server checks the approval status of the maintenance work.
[1338] Input: The list of parties requiring approval and their current approval status.
[1339] Process: Check the list of people involved to see if all approvals have been obtained. If approvals have not been obtained, automatically send an approval request.
[1340] Output: The result of checking whether approval has been obtained from all parties is output, and if approval has not been obtained, an approval request is sent.
[1341] In this way, the server acquires the necessary data at each step, performs appropriate processing and judgment, and manages the maintenance work so that it proceeds smoothly.
[1342] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1343] This invention relates to a comprehensive management system for efficiently performing system maintenance work. This system incorporates an emotion engine that recognizes the user's emotions and responds appropriately based on them. In addition to automatically notifying relevant parties of work, suppressing alarms, pre-checking the system's normality, checking work materials, and checking the work approval status, the system also adjusts the operation of each function taking the user's emotions into account, thereby further improving the efficiency and accuracy of maintenance work.
[1344] Work Notification
[1345] The server notifies relevant parties of scheduled maintenance work before the work begins. The server retrieves a list of relevant parties from a database and generates a notification message. The server then adjusts the content of the notification based on the user's emotions recognized by an emotion engine and sends the notification to all relevant parties at once. For example, if a relevant party is feeling stressed, the notification will be sent in more polite language. This function allows relevant parties to understand the schedule in advance and make appropriate preparations.
[1346] Alarm suppression
[1347] The server disables alarms that may occur during maintenance. Specifically, it analyzes past data and alarm occurrence history to generate a list of predicted alarms. It then sets up settings to suppress relevant alarms based on this list. It also takes into account the user's emotional state and strengthens countermeasures by, for example, setting alarms more strictly if the user is under high stress. This prevents false alarms during maintenance and prevents disruption to work progress.
[1348] Pre-check system health
[1349] Before starting maintenance work, the server checks the system's health status. Health checks include CPU usage, memory usage, free disk space, and network status. The server collects this data in real time and evaluates its health. In addition, the emotion engine obtains the user's emotional data and notifies the system of the results of the preliminary health check, adjusting the priority accordingly. For example, if the user is nervous, the notification text will be more polite and include a detailed explanation.
[1350] Checking work materials
[1351] The server checks whether all materials necessary for the maintenance work are available. It retrieves a list of work materials from the system and checks it against the inventory management system. If necessary materials are in short supply, the server generates a list of the missing materials and sends a notification after taking into account the emotions of the relevant parties through an emotion engine. For example, if the relevant parties are in a hurry, the notification will be sent using wording that encourages them to respond calmly. This function ensures that the necessary materials are properly prepared in advance, preventing work delays.
[1352] Checking work approval status
[1353] The server checks the approval status of the maintenance work. It checks whether all approvals for the work have been obtained and, if necessary, sends an approval request to the relevant parties. At this time, the emotion engine analyzes the emotional state of the users and adjusts the wording and timing of the approval request. For example, if the relevant parties are feeling stressed, it will respond by delaying the timing of the request or making the wording more gentle. This function automates the approval process and prevents approvals from being overlooked.
[1354] Specific examples
[1355] For example, when performing system maintenance at a large data center, the process goes like this:
[1356] 1. Work Notification: The server notifies relevant parties, such as database administrators, network administrators, and operation teams, of scheduled maintenance via email. The emotion engine evaluates the stress level of the relevant parties, and if stress is high, the notification text is carefully adjusted to encourage the relevant parties to relax.
[1357] 2. Alarm Suppression: The server analyzes past maintenance history and identifies predicted alarms. The emotion engine then adjusts alarm settings according to the user's stress level to prevent false alarms during maintenance.
[1358] 3. Pre-checking the system health: The server checks the system health and verifies that there are no problems. The emotion engine adjusts the notification text based on the user's emotional data and adds detailed explanations to reduce user anxiety.
[1359] 4. Checking work materials: The server checks the inventory of materials required for maintenance (tools, replacement parts, etc.) and confirms that all are available. If there is a shortage, the emotion engine sends a notification to guide the user to deal with the situation calmly.
[1360] 5. Checking the status of work approval: The server checks whether the work has been approved by all parties involved, and if it has not been approved, it sends an approval request at the optimal time through the emotion engine.
[1361] This ensures that maintenance work proceeds efficiently and reliably as planned, and further improves the working environment by taking into consideration the feelings of those involved.
[1362] The processing flow will be explained below.
[1363] Work Notification
[1364] Step 1:
[1365] The server connects to the database and retrieves a list of people involved in the maintenance work, including their names, email addresses, and job titles.
[1366] Step 2:
[1367] The server generates a notification message to be sent to the relevant parties, embedding information such as the maintenance date and time, the scope of impact, and the work content in a template.
[1368] Step 3:
[1369] The server uses an emotion engine to obtain the latest emotion data for each participant and adjusts the wording of the notification message. For example, if the emotion engine recognizes that the participant is feeling stressed, the server changes the wording of the notification to be more polite and reassuring.
[1370] Step 4:
[1371] The server then sends coordinated notification messages to all interested parties, specifically by sending emails using the SMTP protocol.
[1372] Alarm suppression
[1373] Step 1:
[1374] The server analyzes the history of past alarms and the scope of impact of maintenance, and predicts alarms that may occur during maintenance.
[1375] Step 2:
[1376] The server generates a list of predicted alarms, including information such as the alarm type, cause, and scope of impact.
[1377] Step 3:
[1378] The server uses an emotion engine to assess the emotional state of participants and sets more stringent alarms if any of the participants are particularly stressed.
[1379] Step 4:
[1380] The server sets up the system to disable predicted alarms. Specifically, it calls the API of the alarm management system to change the alarm settings.
[1381] Pre-check system health
[1382] Step 1:
[1383] The server launches various system monitoring tools and collects system information such as CPU usage, memory usage, free disk space, and network status in real time.
[1384] Step 2:
[1385] The server evaluates the health of the system based on the collected data, checking for any abnormalities that exceed certain thresholds.
[1386] Step 3:
[1387] The server uses an emotion engine to obtain the user's emotion data and notifies them of the results of the system's preliminary health check, adjusting the priority according to the emotion. For example, if the user is nervous, the notification text will be more polite and include a detailed explanation.
[1388] Checking work materials
[1389] Step 1:
[1390] The server obtains a list of materials required for maintenance, including tools, parts, consumables, etc.
[1391] Step 2:
[1392] The server accesses the inventory management system to check whether all the necessary work materials are available, specifically by querying the inventory database.
[1393] Step 3:
[1394] If there are shortages of materials, the server generates a list of the materials that are shortages.
[1395] Step 4:
[1396] The server notifies the stakeholders of the list of missing materials after taking into account their emotions through an emotion engine. For example, if the stakeholders are in a hurry, the server will notify them using words that encourage them to respond calmly.
[1397] Checking work approval status
[1398] Step 1:
[1399] The server obtains approval information from the work approval system to check the approval status of the work.
[1400] Step 2:
[1401] The server determines whether approval has been obtained from all parties based on the obtained approval information.
[1402] Step 3:
[1403] The server uses an emotion engine to analyze the emotional state of the participants if some of the participants do not approve.
[1404] Step 4:
[1405] If the emotion engine determines that the person involved is feeling stressed, the server adjusts the wording of the request and the timing of sending it. For example, if the person involved is feeling stressed, the server may delay the timing of the request or make the wording more gentle.
[1406] Specific examples
[1407] For example, when performing maintenance work on network equipment in a data center, the process is carried out in the following steps:
[1408] Step 1:
[1409] The server obtains a list of network engineers and operations managers from the database.
[1410] Step 2:
[1411] The server generates a maintenance work notification message, checks the emotional state of the people involved using an emotion engine, and adjusts the notification text as necessary.
[1412] Step 3:
[1413] The server analyzes past alarm history of network devices to identify predicted alarms, and uses an emotion engine to adjust alarm settings according to the user's stress level to prevent false alarms.
[1414] Step 4:
[1415] The server checks the current health status of network devices and verifies that there are no abnormalities. The emotion engine adjusts the notification text and provides detailed explanations based on the user's emotional data to reduce user anxiety.
[1416] Step 5:
[1417] The server checks the inventory of materials needed for maintenance (cables, replacement parts, etc.) and confirms that all are available. If there is a shortage, it takes into account the emotions of those involved through an emotion engine and notifies them so that they can deal with the situation calmly.
[1418] Step 6:
[1419] The server checks whether all parties have approved the work, and if not, it uses the emotion engine to send an approval request at the optimal time. Once approval is received, the maintenance work begins.
[1420] This ensures that maintenance work proceeds efficiently and reliably as planned, and the working environment is further improved by taking into consideration the feelings of those involved.
[1421] Example 2
[1422] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1423] Conventional system maintenance work suffers from insufficient notification to relevant parties, uncertainty in alarm prediction and prevention, and a lack of proper confirmation of system normality in advance. It is also prone to insufficient confirmation of materials required for maintenance and failure to confirm the approval status of work. Furthermore, uniform responses without consideration of user feelings result in reduced work efficiency and increased stress for those involved.
[1424] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1425] In this invention, the server includes a means for notifying relevant personnel of the work, a means for suppressing alarms that may occur during the work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, a means for checking the approval status of the work, and an emotion engine that recognizes the user's emotions and takes appropriate action at each stage of the work. This improves the efficiency and accuracy of maintenance work and enables responses that take into account the emotions of the relevant personnel.
[1426] "Parties" refers to all persons and organizations involved in system maintenance activities.
[1427] "Work notification" is the act of informing relevant parties of the schedule, content, and scope of impact of maintenance work.
[1428] "Alarm suppression" is the act of predicting, controlling, or disabling unnecessary alarms that may occur during maintenance.
[1429] "Preliminary system health check" refers to the act of checking the system's health status (CPU usage, memory usage, free disk space, network status, etc.) before starting maintenance work to ensure that it is operating normally.
[1430] "Work materials" refers to all tools, parts, consumables, etc. required for maintenance work.
[1431] "Confirming the approval status of work" is the act of confirming whether approval has been obtained from all parties involved in the maintenance work plan.
[1432] An "emotion engine" is a program or device that has the ability to recognize and analyze a user's emotional state and adjust system behavior and notification content based on that data.
[1433] "Disabling" refers to the act of temporarily or permanently deactivating a particular function or alarm.
[1434] This invention relates to a comprehensive management system for efficiently performing system maintenance work. This system incorporates an emotion engine that recognizes user emotions and responds appropriately based on those emotions. This system automatically notifies relevant parties of work, suppresses alarms, checks the system's normality in advance, checks work materials, and checks the work approval status.
[1435] Hardware and software used
[1436] server:
[1437] Database management system (e.g. MySQL)
[1438] Sentiment analysis engine (e.g. IBM Watson)
[1439] Notification systems (e.g., email sending systems using the SMTP protocol)
[1440] Data analysis systems (e.g., Hadoop)
[1441] System monitoring tools (e.g. Nagios)
[1442] Inventory management system (e.g. SAP)
[1443] User:
[1444] Stakeholders include database administrators, network administrators, and operations teams.
[1445] Specific operation of the system
[1446] 1. Get the stakeholder list:
[1447] The server connects to a MySQL database and retrieves information about the parties involved, including their email addresses, job titles, and responsibilities.
[1448] 2. Maintenance work notification generation and coordination:
[1449] The server uses a Python script to generate notification messages containing details of the maintenance work, then uses an emotion engine (such as IBM Watson) to detect the stress level of the relevant parties and tailor the notification text to send it.
[1450] For example, the server might send a notification message like this:
[1451] "Notice of scheduled system maintenance: System maintenance will be carried out on XX day from XX to XX. We appreciate your cooperation."
[1452] 3. Alarm prediction and suppression:
[1453] The server uses Hadoop to analyze past maintenance history and alarm data, and generates a list of predicted alarms. Based on user sentiment, it adjusts alarm settings to prevent false alarms.
[1454] 4. Check system health:
[1455] The server uses monitoring tools such as Nagios to collect health data such as CPU usage, memory usage, free disk space, and network status, which is then analyzed using machine learning models (such as TensorFlow) to assess the health of the system.
[1456] For example, the server might advertise:
[1457] "System health check: All items are normal. Please proceed with maintenance with confidence."
[1458] 5. Checking work materials:
[1459] The server retrieves the list of work materials from the ERP system and checks the stock against inventory management systems such as SAP. If there is a shortage, it sends a notification message adjusted by the emotion engine.
[1460] For example, the server might advertise:
[1461] "We are running low on certain materials. We advise you to remain calm."
[1462] 6. Check and adjust work approval status:
[1463] The server checks the approval status using a task management tool such as Jira, and if approval has not been granted, it sends an approval request adjusted by the emotion engine.
[1464] For example, the server sends the following message:
[1465] "Maintenance work approval request: Please review and approve. If it is urgent, please let us know in advance."
[1466] These operations ensure that maintenance work planning proceeds efficiently and reliably, and that responses that take into account the feelings of those involved are realized throughout the system.
[1467] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1468] Step 1: Obtain a list of stakeholders
[1469] Input: Request via database query
[1470] What happens: The server connects to the MySQL database and executes the query SELECT FROM stakeholders to get the list of stakeholders.
[1471] Data processing: Converts the related party information retrieved from the database into JSON format and stores it in the internal cache.
[1472] Output: A list of stakeholders' email addresses, titles, and responsibilities (JSON format).
[1473] Step 2: Generate and coordinate maintenance work notifications
[1474] Input: Maintenance work details, stakeholders list
[1475] Specific operation: The server uses a Python script to generate a template message containing information about the work date and time, the scope of impact, and the person in charge.
[1476] Adjustment using emotion engine: The server uses an emotion engine (IBM Watson) to analyze the stress level of the relevant person and adjust the notification text.
[1477] Output: The tailored notification message in text format.
[1478] Sending notifications: The server sends them to all interested parties via the SMTP protocol.
[1479] Step 3: Alarm prediction and suppression
[1480] Input: Past maintenance history data, alarm data
[1481] Specific operation: The server uses Hadoop to analyze past maintenance history and alarm data.
[1482] Data processing: Generate a predicted alarm list based on the analysis results.
[1483] Emotion engine considerations: The server adjusts and suppresses alarm settings based on the user's emotional state.
[1484] Output: Predictive alarm list (JSON format), setting change results
[1485] Alarm suppression: The server applies the settings to the system to disable the corresponding alarm based on the predicted alarm list.
[1486] Step 4: Check system health
[1487] Input: Real-time system usage data (CPU usage, memory usage, disk space, network status)
[1488] What it does: The server collects data using a monitoring tool such as Nagios.
[1489] Data processing: Analyze the collected data using a machine learning model (TensorFlow) and evaluate its normality.
[1490] Notification adjustment by emotion engine: The server adjusts the priority and details of the health check results based on the user's emotion data.
[1491] Output: System health assessment results in text format.
[1492] Sending notifications: The server notifies the relevant parties of the evaluation results.
[1493] Step 5: Check the work materials
[1494] Input: Working materials list
[1495] Specific operation: The server obtains the work materials list from the ERP system using REST API.
[1496] Data processing: Based on the obtained list, inventory is checked against inventory management systems such as SAP.
[1497] Generate a list of missing materials and send notifications: If there are any missing materials, a list will be generated and notifications will be sent in a form that takes into account the emotions of the relevant parties using an emotion engine.
[1498] Output: Shortage material list (text format), adjusted notification message
[1499] Sending notifications: The server sends coordinated notifications to interested parties.
[1500] Step 6: Check and adjust work approval status
[1501] Input: Approval status data, stakeholder list
[1502] Specific operation: The server checks the approval status using a task management tool such as Jira.
[1503] Data Processing: Identify unauthorized parties and create approval requests.
[1504] Coordination by emotion engine: The server analyzes the emotional state of the parties involved using an emotion engine and sends approval requests with optimal timing and wording.
[1505] Output: Reconciled approval request message (text format)
[1506] Send approval request: The server sends the coordinated approval request via email or Slack.
[1507] Through the above steps, the system can carry out maintenance work efficiently and reliably, and respond in a way that takes into account the feelings of those involved.
[1508] (Application example 2)
[1509] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1510] In conventional system maintenance, communication between related parties was inefficient, often resulting in delays in approval of necessary work and preparation of materials. In addition, insufficient management of alarms that occurred during maintenance led to frequent false alarms, causing disruption to work. In addition to these issues, ignoring the stress and emotional state of workers sometimes prevented maintenance work from progressing smoothly.
[1511] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1512] In this invention, the server includes a means for notifying relevant personnel of work, a means for suppressing alarms that may occur during work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, a means for checking the approval status of the work, and a means for analyzing emotion data and automatically adjusting the work notification text and alarm settings, thereby enabling efficient and highly accurate maintenance work while taking into account the emotional state of the relevant personnel.
[1513] "Stakeholder" means any person directly involved in or affected by a system maintenance activity, or both.
[1514] "Work notification" refers to the means of informing relevant parties of the schedule and progress of maintenance work.
[1515] "Alarm suppression" refers to measures to prevent predicted alarms from occurring and avoid unnecessary alarms during maintenance work.
[1516] "Preliminary health check" refers to a method of checking the health status of a system (CPU usage, memory usage, free disk space, network status, etc.) before starting maintenance work.
[1517] "Checking work materials" refers to the means of checking whether all materials, such as tools and replacement parts, necessary for maintenance work are available.
[1518] "Work Approval Status Check" refers to the means of verifying that proper approvals have been obtained from all parties before maintenance work is performed.
[1519] "Emotion data" is data that represents the emotional state of a user or worker, and includes emotions such as stress, tension, and impatience.
[1520] An "emotion engine" is an engine that has the ability to analyze emotional data and adjust system behavior and notification content based on that data.
[1521] "Notification text adjustment" refers to a method of changing the content and wording of notification messages based on emotional data to convey information in the most appropriate way to the relevant parties.
[1522] "Alarm setting adjustment" refers to the means of changing alarm thresholds and trigger conditions based on emotional data to avoid false or unnecessary alarms.
[1523] This invention is a system for efficiently managing system maintenance work using factory robots. This system is equipped with an emotion engine that recognizes the user's emotion data and has the function of automatically adjusting notification messages and alarm settings for various maintenance work based on that data.
[1524] System configuration
[1525] The main components of this system are as follows:
[1526] Server: Data processing and central management
[1527] Factory robots: assisting with maintenance tasks and collecting emotional data
[1528] Cameras and sensors: Used to collect emotion data
[1529] Database: Manage maintenance schedules, inventory information, stakeholder lists, etc.
[1530] software
[1531] The software configuration is as follows:
[1532] Emotion engine: Analyzes user emotion data and adjusts various functions
[1533] Database management system (MySQL): Manages maintenance schedules and inventory information
[1534] Image processing library (OpenCV, dlib): Used to analyze emotion data
[1535] Email sending API: Sends emails to notify users of work.
[1536] Processing flow
[1537] Work Notification
[1538] The server retrieves the maintenance schedule from the database and references the list of people involved. The factory robot uses a camera to capture the facial expressions of the workers and analyzes their emotions using OpenCV and dlib. The emotion engine analyzes this data and generates a message that will put the people involved at ease. It then sends a notification email to the people involved using the email sending API.
[1539] Alarm Suppression
[1540] The server analyzes past maintenance data and generates a list of predicted alarms. The factory robot checks the emotional state of the workers in real time and automatically adjusts alarm settings as needed using an emotion engine. During times of high stress, stricter alarm suppression is set, strengthening measures to ensure smooth maintenance.
[1541] Preliminary normality check
[1542] The server checks the system's health status and collects data such as CPU usage, memory usage, free disk space, and network status. The factory robot simultaneously collects the user's emotional data, analyzes the status check results through an emotion engine, and adjusts and notifies the user as necessary. For example, if the user is nervous, a detailed explanation will be provided.
[1543] Checking work materials
[1544] The server retrieves the list of work materials and checks the stock of the necessary materials from the inventory management system. The factory robot sends a notification to the relevant parties through the emotion engine, urging them to respond calmly. If the necessary materials are in short supply, the notification is sent using words that encourage the relevant parties to respond calmly.
[1545] Checking work approval status
[1546] The server checks whether all relevant parties have approved the work. The factory robot sends approval requests at the optimal time through the emotion engine. If a relevant party is feeling stressed, the robot adjusts the wording and timing of the request.
[1547] Specific examples
[1548] For example, the prompt text for a work notification is:
[1549] Text format
[1550] Subject: Maintenance Notice
[1551] Message: Thank you for your continued support. We would like to inform you of the schedule for the next maintenance work. Details are as follows.
[1552] Date: YYYY / MM / DD
[1553] Time: HH:MM
[1554] Advice from the Emotion Engine: Relax and work.
[1555] This system allows for efficient and accurate maintenance work while taking into account the emotional state of those involved.
[1556] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1557] Step 1:
[1558] The server retrieves the maintenance schedule from the database.
[1559] Input: Database where maintenance schedules are stored
[1560] Data processing: Run SQL queries to extract schedule data
[1561] Output: A list of maintenance schedules
[1562] Step 2:
[1563] The server retrieves the list of interested parties and generates a notification message.
[1564] Inputs: Interest List Database, Maintenance Schedule
[1565] Data Transformation: Extract stakeholder lists with SQL queries and generate scheduled notification messages
[1566] Output: Notification message (text format)
[1567] Step 3:
[1568] The factory robot uses a camera to capture the facial expressions of the workers.
[1569] Input: Worker's facial image (real-time video)
[1570] Data processing: Face recognition processing of face images taken with a camera using OpenCV and dlib
[1571] Output: Facial feature point data
[1572] Step 4:
[1573] Factory robots use emotion engines to analyze workers' emotions.
[1574] Input: Facial feature point data
[1575] Data processing: Analyze facial feature point data using the emotion engine and classify emotions using emotion recognition models
[1576] Output: Emotion data (e.g., stress, relaxation, tension)
[1577] Step 5:
[1578] Based on the emotion data, the emotion engine adjusts the notification text.
[1579] Input: Notification message, emotion data
[1580] Data processing: Optimizing notification message content based on emotional data (e.g., changing to more polite language)
[1581] Output: The adjusted notification message
[1582] Step 6:
[1583] The server uses an email sending API to send a notification message to the relevant parties.
[1584] Input: Tailored notification message, email addresses of interested parties
[1585] Data processing: Call the email sending API to send an email
[1586] Output: Email sending result (success / failure)
[1587] Step 7:
[1588] The server analyzes past maintenance data and generates a list of predicted alarms.
[1589] Input: Past maintenance database
[1590] Data processing: Analyzing past data to extract alarm occurrence patterns
[1591] Output: List of predicted alarms
[1592] Step 8:
[1593] Factory robots can monitor workers' emotional state in real time and adjust alarm settings.
[1594] Input: Real-time emotion data, predicted alarm list
[1595] Data processing: Analyze real-time data with an emotion engine and change alarm settings as needed
[1596] Output: Adjusted alarm settings
[1597] Step 9:
[1598] The server performs a pre-health check of the system.
[1599] Input: System health data (CPU usage, memory usage, etc.)
[1600] Data processing: Collect data from each system and evaluate its health
[1601] Output: Health evaluation result
[1602] Step 10:
[1603] The factory robot notifies the user of the results of a preliminary normality check based on the user's emotional data.
[1604] Input: Health assessment results, emotion data
[1605] Data manipulation: tailoring notifications based on sentiment (e.g., adding detailed explanations)
[1606] Output: Reconciled health check notification
[1607] Step 11:
[1608] The server obtains the list of work materials and checks it against the inventory management system.
[1609] Input: Work materials list, inventory database
[1610] Data processing: Compare the material list with inventory data and extract missing materials
[1611] Output: List of missing materials
[1612] Step 12:
[1613] The factory robot notifies relevant parties based on a list of missing materials.
[1614] Input: Shortage material list, emotion data
[1615] Data processing: Adjusting notification text based on emotional data (e.g., encouraging users to remain calm)
[1616] Output: Adjusted Shortage Material Notification
[1617] Step 13:
[1618] The server checks whether all parties have approved the work.
[1619] Input: Authorization Database
[1620] Data processing: Check the approval list to see if there are any missing approvals.
[1621] Output: Approval status list
[1622] Step 14:
[1623] If there is any missed approval, the factory robot will send an approval request through the emotion engine.
[1624] Input: Approval status list, emotion data
[1625] Data processing: Generate approval requests with optimal timing and wording based on sentiment data
[1626] Output: Reconciled approval request notification
[1627] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1628] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1629] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1630] [Fourth embodiment]
[1631] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1632] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1633] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1634] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1635] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1636] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1637] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1638] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1639] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1640] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1641] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1642] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1643] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1644] This invention relates to a comprehensive management system for efficiently performing system maintenance work. The system aims to improve the efficiency and accuracy of maintenance work by automating work notifications, alarm suppression, advance system normality checks, work material checks, and work approval status checks.
[1645] Work Notification
[1646] The server notifies the relevant parties of the planned maintenance work before the work begins. The server retrieves a list of those involved from the database and generates a notification message. It then sends the notification to all those involved at once. This function allows those involved to know the schedule in advance and make appropriate preparations.
[1647] Alarm suppression
[1648] The server disables alarms that may occur during maintenance. Specifically, it analyzes past data and alarm occurrence history to generate a list of predicted alarms. It then configures the server to suppress applicable alarms based on this list. This prevents false alarms during maintenance and prevents disruption to the progress of work.
[1649] Pre-check system health
[1650] Before starting maintenance work, the server checks the system's health status. Health checks include CPU usage, memory usage, free disk space, and network status. The server collects this data in real time and evaluates its health. If a problem is detected, it suspends the work and issues an alert so that appropriate measures can be taken.
[1651] Checking work materials
[1652] The server checks whether all materials required for the maintenance work are available. It retrieves a list of work materials from the system and checks it against the inventory management system. If necessary materials are in short supply, the server generates a list of the missing materials and notifies the relevant parties that additional materials must be arranged. This function ensures that the necessary materials are prepared appropriately in advance, preventing work delays.
[1653] Checking work approval status
[1654] The server checks the approval status of maintenance work. It checks whether all approvals for the work have been obtained and sends approval requests to the relevant parties if necessary. This function automates the approval process and prevents oversight of approvals.
[1655] Specific examples
[1656] For example, when performing system maintenance at a large data center, the process goes like this:
[1657] 1. Work notification: The server notifies relevant parties, such as database administrators, network administrators, and operations teams, of planned maintenance via email. The notification includes the date and time of the maintenance, the scope of impact, and the expected downtime.
[1658] 2. Alarm suppression: The server analyzes past maintenance history to identify predicted alarms, then configures the server to suppress these alarms to prevent false alarms during maintenance work.
[1659] 3. Proactive system health check: The server checks the system health and verifies that there are no problems. For example, if CPU usage is abnormally high, maintenance is suspended and the problem is resolved as a priority.
[1660] 4. Checking work materials: The server checks the inventory of materials required for maintenance (tools, replacement parts, etc.) and confirms that all are available. If any materials are in short supply, the relevant parties are notified and prompted to make additional arrangements.
[1661] 5. Checking work approval status: The server checks whether work approval has been obtained from all parties involved. If there is any work that has not been approved, it automatically sends an approval request to speed up the approval process.
[1662] As described above, the system of the present invention provides a variety of integrated functions for efficient and reliable system maintenance, thereby improving work efficiency, reducing human error, and further strengthening system stability.
[1663] The processing flow will be explained below.
[1664] Work Notification
[1665] Step 1:
[1666] The server connects to the database and retrieves a list of people involved in the maintenance work, including their names, email addresses, and job titles.
[1667] Step 2:
[1668] The server generates a notification message to be sent to the relevant parties, embedding information such as the maintenance date and time, the scope of impact, and the work content in a template.
[1669] Step 3:
[1670] The server then sends the generated notification message to each of the parties based on the acquired list of parties. Specifically, it sends emails using the SMTP protocol.
[1671] Alarm suppression
[1672] Step 1:
[1673] The server analyzes the history of past alarms and the scope of impact of maintenance, and predicts alarms that may occur during maintenance.
[1674] Step 2:
[1675] The server generates a list of predicted alarms, including information such as the alarm type, cause, and scope of impact.
[1676] Step 3:
[1677] The server then disables the corresponding alarms based on the generated alarm list. Specifically, it calls the API of the alarm management system and changes the settings.
[1678] Pre-check system health
[1679] Step 1:
[1680] The server launches various system monitoring tools and collects system information such as CPU usage, memory usage, free disk space, and network status in real time.
[1681] Step 2:
[1682] The server evaluates the health of the system based on the collected data, checking for any abnormalities that exceed certain thresholds.
[1683] Step 3:
[1684] The server evaluates the results of the health check and, if there are any problems, generates an error message and sends an alert to the relevant personnel.
[1685] Checking work materials
[1686] Step 1:
[1687] The server obtains a list of materials required for maintenance, including tools, parts, consumables, etc.
[1688] Step 2:
[1689] The server accesses the inventory management system to check whether all the necessary work materials are available, specifically by querying the inventory database.
[1690] Step 3:
[1691] If there is a shortage of materials, the server generates a list of the materials in short supply and sends a notification to the relevant parties, specifically, by sending an email urging them to make additional arrangements for the materials.
[1692] Checking work approval status
[1693] Step 1:
[1694] The server obtains approval information from the work approval system to check the approval status of the work.
[1695] Step 2:
[1696] The server determines whether approval has been obtained from all parties based on the obtained approval information.
[1697] Step 3:
[1698] If approval has not been obtained from some of the parties involved, the server automatically sends an approval request. Specifically, it sends an email to the unapproved person requesting approval, urging them to take immediate action.
[1699] Specific examples
[1700] For example, when performing maintenance work on network equipment in a data center, the process is carried out in the following steps:
[1701] Step 1:
[1702] The server obtains a list of network engineers and operations managers from the database.
[1703] Step 2:
[1704] The server generates a maintenance operation notification message and sends it to all interested parties.
[1705] Step 3:
[1706] The server analyzes past alarm history of network devices, predicts false alarms during maintenance, and sets up the system to prevent them.
[1707] Step 4:
[1708] The server checks the current health status of network devices to ensure there are no abnormalities, and if there is a problem, it issues an alert and instructs you to take action.
[1709] Step 5:
[1710] The server checks that all materials necessary for maintenance (cables, replacement parts, etc.) are available and notifies relevant parties if there is a shortage.
[1711] Step 6:
[1712] The server checks whether work approval has been obtained from all parties involved, and automatically sends an approval request if approval has not been obtained.
[1713] This allows maintenance work to proceed efficiently and reliably as planned.
[1714] Example 1
[1715] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1716] Currently, much system maintenance work is performed manually, and processes such as notifying relevant parties, setting alarms, checking work materials, verifying system health, and obtaining work approval require a great deal of time and effort. Such manual work is prone to errors, reducing the efficiency and accuracy of maintenance work. Furthermore, insufficient automation of various processes increases the risk of delays and problems occurring throughout the maintenance work. The present invention aims to solve these problems and improve the efficiency and accuracy of system maintenance work.
[1717] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1718] In this invention, the server includes a means for notifying relevant parties of the work, a means for suppressing alarms that may occur during the work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, and a means for checking the approval status of the work. This allows the entire system maintenance work process to be automated and performed efficiently and reliably. This realizes prompt notification to relevant parties, suppression of false alarms, maintenance of a healthy system state, advance preparation of necessary materials, and a reliable approval process, thereby improving the overall quality and efficiency of maintenance work.
[1719] "Related Persons" refers to all personnel involved in system maintenance work, including, for example, database administrators, network administrators, and operations teams.
[1720] "Work notification" refers to the process of notifying relevant parties in advance of scheduled maintenance work, specifically by generating and sending a notification message.
[1721] "Alarm suppression" refers to the process of disabling false alarms or unnecessary alerts that may occur during maintenance work.
[1722] "Pre-health check" refers to the process of checking the health of a system and ensuring there are no problems before starting maintenance work.
[1723] "Checking work materials" refers to the process of checking whether all the items and materials necessary for maintenance work are available, and is carried out using an inventory management system.
[1724] "Checking work approval status" refers to the process of checking whether all approvals necessary to perform maintenance work have been obtained, and sending approval requests as necessary.
[1725] "Database" refers to a management system that stores information such as a list of people involved and past alarm history, and allows it to be searched and retrieved.
[1726] "Normality" refers to a state in which system performance indicators such as CPU usage, memory usage, free disk space, and network status are within appropriate ranges.
[1727] An "inventory management system" refers to a system for managing and checking the inventory status of items and materials required for maintenance work.
[1728] "Approval Request" means a notification to a Stakeholder requesting approval for an unapproved Maintenance Action.
[1729] This invention relates to a comprehensive management system for efficiently performing system maintenance work. The system aims to automate the following functions using a server: notifying relevant parties of work, suppressing alarms, pre-checking the system's normality, checking work materials, and checking the work approval status.
[1730] Work Notification
[1731] Before starting maintenance work, the server notifies the relevant parties of the planned schedule. Specifically, the server retrieves a list of those involved from the PostgreSQL database and generates a notification message using a Python script. It then broadcasts the message to all those involved using the SMTP protocol. This allows those involved to know the schedule in advance and make appropriate preparations. For example, the following message is sent:
[1732] Date and time: 2023-11-15 10:00 - 12:00
[1733] Affected areas: Database servers, network switches
[1734] Downtime: Up to 2 hours
[1735] Alarm suppression
[1736] The server disables alarms that may occur during maintenance. Specifically, the server uses Elasticsearch to retrieve and analyze past alarm history and visualizes it using Kibana. Based on the results, the Ansible script sets up the system to suppress predicted alarms. This prevents false alarms during maintenance and ensures that work progress is not disrupted.
[1737] Pre-check system health
[1738] Before starting maintenance work, the server checks the system health. This process involves using Prometheus to collect real-time data such as CPU usage, memory usage, free disk space, and network status, and visualizing it with Grafana to evaluate health. If a problem is detected, an alert is issued using the Slack API to notify relevant parties. For example, a notification may be sent saying, "CPU usage is over 80%. Please suspend maintenance work and check."
[1739] Checking work materials
[1740] The server checks whether all materials required for the maintenance work are available. Specifically, it obtains a list of materials for the work via the ERP system's API and checks the inventory in the SAP system based on that. If any required materials are in short supply, it uses JIRA to generate a task and notify the relevant parties. For example, the following notifications are sent:
[1741] Shortage Material List:
[1742] Network cables (10)
[1743] Hard disk (2 units)
[1744] Checking work approval status
[1745] The server checks the approval status of the maintenance work. This process includes checking the approval status of the relevant parties using LDAP and automatically sending email requests for unapproved work. For example, a request like "Approval required for maintenance work. Maintenance date and time: 2023-11-15 10:00 - 12:00 Approval: Approved / Not approved" may be sent.
[1746] As described above, this system provides a variety of integrated functions for efficient and reliable system maintenance, thereby improving work efficiency, reducing human error, and further strengthening system stability.
[1747] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1748] Step 1: Obtain a list of stakeholders
[1749] Server: Connect to the PostgreSQL database and retrieve the list of stakeholders (database administrators, network administrators, operations team, etc.) using an SQL query.
[1750] Input: Roles of the people involved in the work notification (e.g., database administrator, network administrator)
[1751] Output: List of stakeholders
[1752] What happens: The server executes the SQL query SELECT FROM stakeholders WHERE role IN ('DB Admin', 'Network Admin', 'Operations'); to get the list of stakeholders.
[1753] Step 2: Generate a notification message
[1754] Server: Runs a Python script to generate a notification message based on the obtained list of stakeholders. The message includes the date and time of the maintenance, the affected area, and the expected downtime.
[1755] Inputs: list of stakeholders, maintenance date and time, impact area, expected downtime
[1756] Output: Notification message
[1757] What it does: Create a message using Python's string formatting capabilities, for example using an f-string to generate:
[1758] message = f"Maintenance date and time: {maintenance_date}\nImpact scope: {impact_scope}\nExpected downtime: {downtime}\n"
[1759] Step 3: Sending notifications
[1760] Server: Uses the SMTP protocol to broadcast the generated messages to interested parties.
[1761] Input: Notification message, email addresses of people involved
[1762] Output: Transmission log
[1763] Specific behavior: Sends email using an SMTP library. For example, creates a message using MIMEText and sends it with smtplib.
[1764] Step 4: Analyzing historical data
[1765] Server: Connects to the Elasticsearch cluster and runs queries to analyze the history of past alarm occurrences.
[1766] Input: Alarm occurrence history data for the past 30 days
[1767] Output: Analysis result data
[1768] Specific behavior: Searches data using Elasticsearch DSL and receives it in JSON format.
[1769] Step 5: Generate the suppression list
[1770] Server: Use Kibana to visualize the search results and generate a list of predicted alarms, then generate alarm suppression configurations based on that list.
[1771] Input: Analysis result data
[1772] Output: Alarm suppression list
[1773] What it does: Save the suppression list to a JSON file and use it in an Ansible playbook.
[1774] Step 6: Disable alarms
[1775] Server: Use Ansible to apply alarm suppression settings to the server.
[1776] Input: Alarm suppression list, Ansible playbook
[1777] Output: The result of applying the settings
[1778] Specific operation: Execute command: "alarm_control --disable {{ item.alarm_id}}" in the Ansible task.
[1779] Step 7: Collect real-time data
[1780] Server: Use Prometheus to collect metrics such as CPU usage, memory usage, free disk space, and network status.
[1781] Input: System performance data
[1782] Output: Collected metric data
[1783] Specific operation: Set targets in the Prometheus scrape configuration file and collect data.
[1784] Step 8: Health assessment
[1785] Server: Visualize collected data in Grafana and set alert rules to assess health.
[1786] Input: Collected metrics data
[1787] Output: Evaluation results and alerts
[1788] Specific behavior: Set up alert rules on the Grafana dashboard to notify you when an anomaly is detected.
[1789] Step 9: Problem detection and notification
[1790] Server: If a problem is detected, alert relevant parties using the Slack API.
[1791] Input: Anomaly detection data
[1792] Output: Alert notification
[1793] Specific behavior: Sends notification messages to relevant parties using the Slack API.
[1794] Step 10: Get materials list
[1795] Server: Obtains a list of materials required for maintenance via the ERP system's API.
[1796] Input: Maintenance work material information
[1797] Output: Materials list
[1798] Specific operation: Obtain a materials list via an API request to the ERP system and receive the data in JSON format.
[1799] Step 11: Check inventory
[1800] Server: Based on the obtained material list, check the inventory quantity via the SAP system and API.
[1801] Input: Materials List
[1802] Output: Inventory check results
[1803] Specific operation: Sends an API request to the SAP system to obtain inventory data.
[1804] Step 12: Notification of shortage materials
[1805] Server: If there are any missing materials, a task is automatically generated using JIRA and relevant parties are notified.
[1806] Input: Inventory check result
[1807] Output: Shortage material notification and JIRA task
[1808] What it does: Uses JIRA API to generate tasks and notify stakeholders.
[1809] Step 13: Check Approval Status
[1810] Server: Uses LDAP to check the approval status of participants.
[1811] Input: Person involved information, approval status
[1812] Output: Approval status check result
[1813] Specific behavior: Retrieves unauthorized status via LDAP query.
[1814] Step 14: Submit an Unapproved Request
[1815] Server: For unapproved work, an approval request is automatically sent via email to the relevant parties.
[1816] Input: List of interested parties with pending approval status
[1817] Output: Approval request email
[1818] What it does: Sends an approval request to the relevant parties using the SMTP protocol.
[1819] (Application example 1)
[1820] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1821] In modern factories and large-scale facilities, machine maintenance work is complex and involves many parties. It is also prone to problems such as false alarms, material shortages, and delayed approvals. These problems not only delay maintenance work and reduce efficiency, but can also negatively impact system stability. There is a need for management methods to resolve these issues using automated systems.
[1822] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1823] In this invention, the server includes means for notifying relevant parties of work, means for suppressing alarms that may occur during work, means for performing advance confirmation of the system's normality, means for confirming necessary work materials, means for confirming the approval status of the work, management means for efficiently performing machine maintenance work, communication means for sending maintenance notices to relevant parties, prediction means for analyzing past data and suppressing alarms, evaluation means for checking the health status based on normality evaluation, inventory management means for confirming whether materials are available, and approval management means for confirming whether approval has been obtained. This makes it possible to perform maintenance work effectively and quickly, reduce human error, and improve system stability.
[1824] "Parties" means any person or entity involved in the maintenance work.
[1825] "Means for notifying work" refers to a system or function that notifies relevant parties of the schedule and details of maintenance work.
[1826] "Means to suppress alarms" is a function that predicts and disables alarms that may occur during work.
[1827] The "means for performing advance normality check" is a function for checking the health status of the system before starting maintenance work.
[1828] The "means for checking work materials" is a function for checking whether all materials necessary for maintenance work are available.
[1829] The "means for checking the approval status of work" is a function for checking whether work approval has been obtained from all parties involved in the maintenance work.
[1830] "Management means" refers to a system that includes all management functions for efficiently carrying out machine maintenance work.
[1831] "Communication means" refers to the system or network equipment used to send maintenance notifications to relevant parties.
[1832] "Prediction means" is a function that analyzes past data to prevent future alarms.
[1833] "Evaluation means" is a function that checks the health status based on an evaluation of the system's normality.
[1834] "Inventory management means" is a function that checks whether necessary maintenance materials are available and manages inventory.
[1835] The "approval management means" is a function that confirms approval from all parties involved and manages the approval status.
[1836] The present invention is a comprehensive management system for efficiently and automatically performing maintenance work on factory robots. Detailed embodiments are described below.
[1837] The server has a function for notifying the relevant parties of the maintenance schedule and details in order to notify the relevant parties of the maintenance work. This work notification is carried out, for example, by email or a message application.
[1838] The server then has the ability to suppress any alarms that may occur during the work. It analyzes past data to identify and disable predicted alarms. This process prevents false alarms during maintenance.
[1839] To check the system's health in advance, the server monitors system parameters such as CPU usage, memory usage, free disk space, and network status in real time, thereby checking the system's health before starting maintenance.
[1840] Regarding the confirmation of work materials, the server retrieves a list of required materials from the system and checks with the inventory management system to confirm that all materials are available. If any materials are missing, the server notifies the relevant parties.
[1841] The server also has a function to check the approval status of maintenance work. It checks whether approval has been obtained from all parties involved, and automatically sends an approval request if approval has not been obtained.
[1842] In this invention, Node.js is used as the application layer, MySQL is used for server database management, nodemailer is used for message sending, and Prometheus is used for real-time system status monitoring.
[1843] As a concrete example, consider the case of performing maintenance on the hydraulic system of a factory robot. In this case, the following process is executed:
[1844] 1. The server notifies relevant parties of the maintenance schedule.
[1845] 2. Analyze past data and suppress predicted alarms.
[1846] 3. Check system parameters such as CPU usage and memory usage to see if there are any abnormalities.
[1847] 4. Ensure that necessary tools and spare parts are available and notify if any are missing.
[1848] 5. Ensure all relevant approvals are obtained.
[1849] In this way, the system of the present invention aims to improve the efficiency and accuracy of maintenance work.
[1850] Example prompt for a generative AI model:
[1851] "Generate a list of random email addresses in the format 'name@example.com'."
[1852] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1853] Step 1:
[1854] The server sends maintenance notifications to interested parties.
[1855] Input: Get the list of stakeholders from the database and the maintenance details as input.
[1856] Processing: Based on the obtained list, a notification message is generated and sent via nodemailer.
[1857] Output: An email is sent to the relevant parties so that they are aware of the upcoming maintenance.
[1858] Step 2:
[1859] Disables server predicted alarms.
[1860] Input: Takes historical alarm data and current system status as input.
[1861] Processing: Analyze the data, generate a list of predicted alarms, and configure the system to suppress the corresponding alarms.
[1862] Output: A list of alarms to suppress is generated and alarms are disabled during maintenance.
[1863] Step 3:
[1864] The server performs a pre-health check of the system.
[1865] Input: System parameters (CPU usage, memory usage, free disk space, network status) are taken as input.
[1866] Processing: Prometheus is used to monitor system parameters in real time and check for anomalies.
[1867] Output: The system health status is evaluated and an alert is issued if there is an abnormality.
[1868] Step 4:
[1869] Check the materials required for server maintenance.
[1870] Input: Required materials list and inventory information are taken as input.
[1871] Processing: Check the material list against the inventory information and generate a list if there are any missing materials.
[1872] Output: The results of checking whether materials are available and a list of shortages are output.
[1873] Step 5:
[1874] The server checks the approval status of the maintenance work.
[1875] Input: The list of parties requiring approval and their current approval status.
[1876] Process: Check the list of people involved to see if all approvals have been obtained. If approvals have not been obtained, automatically send an approval request.
[1877] Output: The result of checking whether approval has been obtained from all parties is output, and if approval has not been obtained, an approval request is sent.
[1878] In this way, the server acquires the necessary data at each step, performs appropriate processing and judgment, and manages the maintenance work so that it proceeds smoothly.
[1879] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1880] This invention relates to a comprehensive management system for efficiently performing system maintenance work. This system incorporates an emotion engine that recognizes the user's emotions and responds appropriately based on them. In addition to automatically notifying relevant parties of work, suppressing alarms, pre-checking the system's normality, checking work materials, and checking the work approval status, the system also adjusts the operation of each function taking the user's emotions into account, thereby further improving the efficiency and accuracy of maintenance work.
[1881] Work Notification
[1882] The server notifies relevant parties of scheduled maintenance work before the work begins. The server retrieves a list of relevant parties from a database and generates a notification message. The server then adjusts the content of the notification based on the user's emotions recognized by an emotion engine and sends the notification to all relevant parties at once. For example, if a relevant party is feeling stressed, the notification will be sent in more polite language. This function allows relevant parties to understand the schedule in advance and make appropriate preparations.
[1883] Alarm suppression
[1884] The server disables alarms that may occur during maintenance. Specifically, it analyzes past data and alarm occurrence history to generate a list of predicted alarms. It then sets up settings to suppress relevant alarms based on this list. It also takes into account the user's emotional state and strengthens countermeasures by, for example, setting alarms more strictly if the user is under high stress. This prevents false alarms during maintenance and prevents disruption to work progress.
[1885] Pre-check system health
[1886] Before starting maintenance work, the server checks the system's health status. Health checks include CPU usage, memory usage, free disk space, and network status. The server collects this data in real time and evaluates its health. In addition, the emotion engine obtains the user's emotional data and notifies the system of the results of the preliminary health check, adjusting the priority accordingly. For example, if the user is nervous, the notification text will be more polite and include a detailed explanation.
[1887] Checking work materials
[1888] The server checks whether all materials necessary for the maintenance work are available. It retrieves a list of work materials from the system and checks it against the inventory management system. If necessary materials are in short supply, the server generates a list of the missing materials and sends a notification after taking into account the emotions of the relevant parties through an emotion engine. For example, if the relevant parties are in a hurry, the notification will be sent using wording that encourages them to respond calmly. This function ensures that the necessary materials are properly prepared in advance, preventing work delays.
[1889] Checking work approval status
[1890] The server checks the approval status of the maintenance work. It checks whether all approvals for the work have been obtained and, if necessary, sends an approval request to the relevant parties. At this time, the emotion engine analyzes the emotional state of the users and adjusts the wording and timing of the approval request. For example, if the relevant parties are feeling stressed, it will respond by delaying the timing of the request or making the wording more gentle. This function automates the approval process and prevents approvals from being overlooked.
[1891] Specific examples
[1892] For example, when performing system maintenance at a large data center, the process goes like this:
[1893] 1. Work Notification: The server notifies relevant parties, such as database administrators, network administrators, and operation teams, of scheduled maintenance via email. The emotion engine evaluates the stress level of the relevant parties, and if stress is high, the notification text is carefully adjusted to encourage the relevant parties to relax.
[1894] 2. Alarm Suppression: The server analyzes past maintenance history and identifies predicted alarms. The emotion engine then adjusts alarm settings according to the user's stress level to prevent false alarms during maintenance.
[1895] 3. Pre-checking the system health: The server checks the system health and verifies that there are no problems. The emotion engine adjusts the notification text based on the user's emotional data and adds detailed explanations to reduce user anxiety.
[1896] 4. Checking work materials: The server checks the inventory of materials required for maintenance (tools, replacement parts, etc.) and confirms that all are available. If there is a shortage, the emotion engine sends a notification to guide the user to deal with the situation calmly.
[1897] 5. Checking the status of work approval: The server checks whether the work has been approved by all parties involved, and if it has not been approved, it sends an approval request at the optimal time through the emotion engine.
[1898] This ensures that maintenance work proceeds efficiently and reliably as planned, and further improves the working environment by taking into consideration the feelings of those involved.
[1899] The processing flow will be explained below.
[1900] Work Notification
[1901] Step 1:
[1902] The server connects to the database and retrieves a list of people involved in the maintenance work, including their names, email addresses, and job titles.
[1903] Step 2:
[1904] The server generates a notification message to be sent to the relevant parties, embedding information such as the maintenance date and time, the scope of impact, and the work content in a template.
[1905] Step 3:
[1906] The server uses an emotion engine to obtain the latest emotion data for each participant and adjusts the wording of the notification message. For example, if the emotion engine recognizes that the participant is feeling stressed, the server changes the wording of the notification to be more polite and reassuring.
[1907] Step 4:
[1908] The server then sends coordinated notification messages to all interested parties, specifically by sending emails using the SMTP protocol.
[1909] Alarm suppression
[1910] Step 1:
[1911] The server analyzes the history of past alarms and the scope of impact of maintenance, and predicts alarms that may occur during maintenance.
[1912] Step 2:
[1913] The server generates a list of predicted alarms, including information such as the alarm type, cause, and scope of impact.
[1914] Step 3:
[1915] The server uses an emotion engine to assess the emotional state of participants and sets more stringent alarms if any of the participants are particularly stressed.
[1916] Step 4:
[1917] The server sets up the system to disable predicted alarms. Specifically, it calls the API of the alarm management system to change the alarm settings.
[1918] Pre-check system health
[1919] Step 1:
[1920] The server launches various system monitoring tools and collects system information such as CPU usage, memory usage, free disk space, and network status in real time.
[1921] Step 2:
[1922] The server evaluates the health of the system based on the collected data, checking for any abnormalities that exceed certain thresholds.
[1923] Step 3:
[1924] The server uses an emotion engine to obtain the user's emotion data and notifies them of the results of the system's preliminary health check, adjusting the priority according to the emotion. For example, if the user is nervous, the notification text will be more polite and include a detailed explanation.
[1925] Checking work materials
[1926] Step 1:
[1927] The server obtains a list of materials required for maintenance, including tools, parts, consumables, etc.
[1928] Step 2:
[1929] The server accesses the inventory management system to check whether all the necessary work materials are available, specifically by querying the inventory database.
[1930] Step 3:
[1931] If there are shortages of materials, the server generates a list of the materials that are shortages.
[1932] Step 4:
[1933] The server notifies the stakeholders of the list of missing materials after taking into account their emotions through an emotion engine. For example, if the stakeholders are in a hurry, the server will notify them using words that encourage them to respond calmly.
[1934] Checking work approval status
[1935] Step 1:
[1936] The server obtains approval information from the work approval system to check the approval status of the work.
[1937] Step 2:
[1938] The server determines whether approval has been obtained from all parties based on the obtained approval information.
[1939] Step 3:
[1940] The server uses an emotion engine to analyze the emotional state of the participants if some of the participants do not approve.
[1941] Step 4:
[1942] If the emotion engine determines that the person involved is feeling stressed, the server adjusts the wording of the request and the timing of sending it. For example, if the person involved is feeling stressed, the server may delay the timing of the request or make the wording more gentle.
[1943] Specific examples
[1944] For example, when performing maintenance work on network equipment in a data center, the process is carried out in the following steps:
[1945] Step 1:
[1946] The server obtains a list of network engineers and operations managers from the database.
[1947] Step 2:
[1948] The server generates a maintenance work notification message, checks the emotional state of the people involved using an emotion engine, and adjusts the notification text as necessary.
[1949] Step 3:
[1950] The server analyzes past alarm history of network devices to identify predicted alarms, and uses an emotion engine to adjust alarm settings according to the user's stress level to prevent false alarms.
[1951] Step 4:
[1952] The server checks the current health status of network devices and verifies that there are no abnormalities. The emotion engine adjusts the notification text and provides detailed explanations based on the user's emotional data to reduce user anxiety.
[1953] Step 5:
[1954] The server checks the inventory of materials needed for maintenance (cables, replacement parts, etc.) and confirms that all are available. If there is a shortage, it takes into account the emotions of those involved through an emotion engine and notifies them so that they can deal with the situation calmly.
[1955] Step 6:
[1956] The server checks whether all parties have approved the work, and if not, it uses the emotion engine to send an approval request at the optimal time. Once approval is received, the maintenance work begins.
[1957] This ensures that maintenance work proceeds efficiently and reliably as planned, and the working environment is further improved by taking into consideration the feelings of those involved.
[1958] Example 2
[1959] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1960] Conventional system maintenance work suffers from insufficient notification to relevant parties, uncertainty in alarm prediction and prevention, and a lack of proper confirmation of system normality in advance. It is also prone to insufficient confirmation of materials required for maintenance and failure to confirm the approval status of work. Furthermore, uniform responses without consideration of user feelings result in reduced work efficiency and increased stress for those involved.
[1961] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1962] In this invention, the server includes a means for notifying relevant personnel of the work, a means for suppressing alarms that may occur during the work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, a means for checking the approval status of the work, and an emotion engine that recognizes the user's emotions and takes appropriate action at each stage of the work. This improves the efficiency and accuracy of maintenance work and enables responses that take into account the emotions of the relevant personnel.
[1963] "Parties" refers to all persons and organizations involved in system maintenance activities.
[1964] "Work notification" is the act of informing relevant parties of the schedule, content, and scope of impact of maintenance work.
[1965] "Alarm suppression" is the act of predicting, controlling, or disabling unnecessary alarms that may occur during maintenance.
[1966] "Preliminary system health check" refers to the act of checking the system's health status (CPU usage, memory usage, free disk space, network status, etc.) before starting maintenance work to ensure that it is operating normally.
[1967] "Work materials" refers to all tools, parts, consumables, etc. required for maintenance work.
[1968] "Confirming the approval status of work" is the act of confirming whether approval has been obtained from all parties involved in the maintenance work plan.
[1969] An "emotion engine" is a program or device that has the ability to recognize and analyze a user's emotional state and adjust system behavior and notification content based on that data.
[1970] "Disabling" refers to the act of temporarily or permanently deactivating a particular function or alarm.
[1971] This invention relates to a comprehensive management system for efficiently performing system maintenance work. This system incorporates an emotion engine that recognizes user emotions and responds appropriately based on those emotions. This system automatically notifies relevant parties of work, suppresses alarms, checks the system's normality in advance, checks work materials, and checks the work approval status.
[1972] Hardware and software used
[1973] server:
[1974] Database management system (e.g. MySQL)
[1975] Sentiment analysis engine (e.g. IBM Watson)
[1976] Notification systems (e.g., email sending systems using the SMTP protocol)
[1977] Data analysis systems (e.g., Hadoop)
[1978] System monitoring tools (e.g. Nagios)
[1979] Inventory management system (e.g. SAP)
[1980] User:
[1981] Stakeholders include database administrators, network administrators, and operations teams.
[1982] Specific operation of the system
[1983] 1. Get the stakeholder list:
[1984] The server connects to a MySQL database and retrieves information about the parties involved, including their email addresses, job titles, and responsibilities.
[1985] 2. Maintenance work notification generation and coordination:
[1986] The server uses a Python script to generate notification messages containing details of the maintenance work, then uses an emotion engine (such as IBM Watson) to detect the stress level of the relevant parties and tailor the notification text to send it.
[1987] For example, the server might send a notification message like this:
[1988] "Notice of scheduled system maintenance: System maintenance will be carried out on XX day from XX to XX. We appreciate your cooperation."
[1989] 3. Alarm prediction and suppression:
[1990] The server uses Hadoop to analyze past maintenance history and alarm data, and generates a list of predicted alarms. Based on user sentiment, it adjusts alarm settings to prevent false alarms.
[1991] 4. Check system health:
[1992] The server uses monitoring tools such as Nagios to collect health data such as CPU usage, memory usage, free disk space, and network status, which is then analyzed using machine learning models (such as TensorFlow) to assess the health of the system.
[1993] For example, the server might advertise:
[1994] "System health check: All items are normal. Please proceed with maintenance with confidence."
[1995] 5. Checking work materials:
[1996] The server retrieves the list of work materials from the ERP system and checks the stock against inventory management systems such as SAP. If there is a shortage, it sends a notification message adjusted by the emotion engine.
[1997] For example, the server might advertise:
[1998] "We are running low on certain materials. We advise you to remain calm."
[1999] 6. Check and adjust work approval status:
[2000] The server checks the approval status using a task management tool such as Jira, and if approval has not been granted, it sends an approval request adjusted by the emotion engine.
[2001] For example, the server sends the following message:
[2002] "Maintenance work approval request: Please review and approve. If it is urgent, please let us know in advance."
[2003] These operations ensure that maintenance work planning proceeds efficiently and reliably, and that responses that take into account the feelings of those involved are realized throughout the system.
[2004] The flow of the identification process in the second embodiment will be described with reference to FIG.
[2005] Step 1: Obtain a list of stakeholders
[2006] Input: Request via database query
[2007] What happens: The server connects to the MySQL database and executes the query SELECT FROM stakeholders to get the list of stakeholders.
[2008] Data processing: Converts the related party information retrieved from the database into JSON format and stores it in the internal cache.
[2009] Output: A list of stakeholders' email addresses, titles, and responsibilities (JSON format).
[2010] Step 2: Generate and coordinate maintenance work notifications
[2011] Input: Maintenance work details, stakeholders list
[2012] Specific operation: The server uses a Python script to generate a template message containing information about the work date and time, the scope of impact, and the person in charge.
[2013] Adjustment using emotion engine: The server uses an emotion engine (IBM Watson) to analyze the stress level of the relevant person and adjust the notification text.
[2014] Output: The tailored notification message in text format.
[2015] Sending notifications: The server sends them to all interested parties via the SMTP protocol.
[2016] Step 3: Alarm prediction and suppression
[2017] Input: Past maintenance history data, alarm data
[2018] Specific operation: The server uses Hadoop to analyze past maintenance history and alarm data.
[2019] Data processing: Generate a predicted alarm list based on the analysis results.
[2020] Emotion engine considerations: The server adjusts and suppresses alarm settings based on the user's emotional state.
[2021] Output: Predictive alarm list (JSON format), setting change results
[2022] Alarm suppression: The server applies the settings to the system to disable the corresponding alarm based on the predicted alarm list.
[2023] Step 4: Check system health
[2024] Input: Real-time system usage data (CPU usage, memory usage, disk space, network status)
[2025] What it does: The server collects data using a monitoring tool such as Nagios.
[2026] Data processing: Analyze the collected data using a machine learning model (TensorFlow) and evaluate its normality.
[2027] Notification adjustment by emotion engine: The server adjusts the priority and details of the health check results based on the user's emotion data.
[2028] Output: System health assessment results in text format.
[2029] Sending notifications: The server notifies the relevant parties of the evaluation results.
[2030] Step 5: Check the work materials
[2031] Input: Working materials list
[2032] Specific operation: The server obtains the work materials list from the ERP system using REST API.
[2033] Data processing: Based on the obtained list, inventory is checked against inventory management systems such as SAP.
[2034] Generate a list of missing materials and send notifications: If there are any missing materials, a list will be generated and notifications will be sent in a form that takes into account the emotions of the relevant parties using an emotion engine.
[2035] Output: Shortage material list (text format), adjusted notification message
[2036] Sending notifications: The server sends coordinated notifications to interested parties.
[2037] Step 6: Check and adjust work approval status
[2038] Input: Approval status data, stakeholder list
[2039] Specific operation: The server checks the approval status using a task management tool such as Jira.
[2040] Data Processing: Identify unauthorized parties and create approval requests.
[2041] Coordination by emotion engine: The server analyzes the emotional state of the parties involved using an emotion engine and sends approval requests with optimal timing and wording.
[2042] Output: Reconciled approval request message (text format)
[2043] Send approval request: The server sends the coordinated approval request via email or Slack.
[2044] Through the above steps, the system can carry out maintenance work efficiently and reliably, and respond in a way that takes into account the feelings of those involved.
[2045] (Application example 2)
[2046] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[2047] In conventional system maintenance, communication between related parties was inefficient, often resulting in delays in approval of necessary work and preparation of materials. In addition, insufficient management of alarms that occurred during maintenance led to frequent false alarms, causing disruption to work. In addition to these issues, ignoring the stress and emotional state of workers sometimes prevented maintenance work from progressing smoothly.
[2048] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[2049] In this invention, the server includes a means for notifying relevant personnel of work, a means for suppressing alarms that may occur during work, a means for pre-checking the normality of the system, a means for checking the necessary work materials, a means for checking the approval status of the work, and a means for analyzing emotion data and automatically adjusting the work notification text and alarm settings, thereby enabling efficient and highly accurate maintenance work while taking into account the emotional state of the relevant personnel.
[2050] "Stakeholder" means any person directly involved in or affected by a system maintenance activity, or both.
[2051] "Work notification" refers to the means of informing relevant parties of the schedule and progress of maintenance work.
[2052] "Alarm suppression" refers to measures to prevent predicted alarms from occurring and avoid unnecessary alarms during maintenance work.
[2053] "Preliminary health check" refers to a method of checking the health status of a system (CPU usage, memory usage, free disk space, network status, etc.) before starting maintenance work.
[2054] "Checking work materials" refers to the means of checking whether all materials, such as tools and replacement parts, necessary for maintenance work are available.
[2055] "Work Approval Status Check" refers to the means of verifying that proper approvals have been obtained from all parties before maintenance work is performed.
[2056] "Emotion data" is data that represents the emotional state of a user or worker, and includes emotions such as stress, tension, and impatience.
[2057] An "emotion engine" is an engine that has the ability to analyze emotional data and adjust system behavior and notification content based on that data.
[2058] "Notification text adjustment" refers to a method of changing the content and wording of notification messages based on emotional data to convey information in the most appropriate way to the relevant parties.
[2059] "Alarm setting adjustment" refers to the means of changing alarm thresholds and trigger conditions based on emotional data to avoid false or unnecessary alarms.
[2060] This invention is a system for efficiently managing system maintenance work using factory robots. This system is equipped with an emotion engine that recognizes the user's emotion data and has the function of automatically adjusting notification messages and alarm settings for various maintenance work based on that data.
[2061] System configuration
[2062] The main components of this system are as follows:
[2063] Server: Data processing and central management
[2064] Factory robots: assisting with maintenance tasks and collecting emotional data
[2065] Cameras and sensors: Used to collect emotion data
[2066] Database: Manage maintenance schedules, inventory information, stakeholder lists, etc.
[2067] software
[2068] The software configuration is as follows:
[2069] Emotion engine: Analyzes user emotion data and adjusts various functions
[2070] Database management system (MySQL): Manages maintenance schedules and inventory information
[2071] Image processing library (OpenCV, dlib): Used to analyze emotion data
[2072] Email sending API: Sends emails to notify users of work.
[2073] Processing flow
[2074] Work Notification
[2075] The server retrieves the maintenance schedule from the database and references the list of people involved. The factory robot uses a camera to capture the facial expressions of the workers and analyzes their emotions using OpenCV and dlib. The emotion engine analyzes this data and generates a message that will put the people involved at ease. It then sends a notification email to the people involved using the email sending API.
[2076] Alarm Suppression
[2077] The server analyzes past maintenance data and generates a list of predicted alarms. The factory robot checks the emotional state of the workers in real time and automatically adjusts alarm settings as needed using an emotion engine. During times of high stress, stricter alarm suppression is set, strengthening measures to ensure smooth maintenance.
[2078] Preliminary normality check
[2079] The server checks the system's health status and collects data such as CPU usage, memory usage, free disk space, and network status. The factory robot simultaneously collects the user's emotional data, analyzes the status check results through an emotion engine, and adjusts and notifies the user as necessary. For example, if the user is nervous, a detailed explanation will be provided.
[2080] Checking work materials
[2081] The server retrieves the list of work materials and checks the stock of the necessary materials from the inventory management system. The factory robot sends a notification to the relevant parties through the emotion engine, urging them to respond calmly. If the necessary materials are in short supply, the notification is sent using words that encourage the relevant parties to respond calmly.
[2082] Checking work approval status
[2083] The server checks whether all relevant parties have approved the work. The factory robot sends approval requests at the optimal time through the emotion engine. If a relevant party is feeling stressed, the robot adjusts the wording and timing of the request.
[2084] Specific examples
[2085] For example, the prompt text for a work notification is:
[2086] Text format
[2087] Subject: Maintenance Notice
[2088] Message: Thank you for your continued support. We would like to inform you of the schedule for the next maintenance work. Details are as follows.
[2089] Date: YYYY / MM / DD
[2090] Time: HH:MM
[2091] Advice from the Emotion Engine: Relax and work.
[2092] This system allows for efficient and accurate maintenance work while taking into account the emotional state of those involved.
[2093] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[2094] Step 1:
[2095] The server retrieves the maintenance schedule from the database.
[2096] Input: Database where maintenance schedules are stored
[2097] Data processing: Run SQL queries to extract schedule data
[2098] Output: A list of maintenance schedules
[2099] Step 2:
[2100] The server retrieves the list of interested parties and generates a notification message.
[2101] Inputs: Interest List Database, Maintenance Schedule
[2102] Data Transformation: Extract stakeholder lists with SQL queries and generate scheduled notification messages
[2103] Output: Notification message (text format)
[2104] Step 3:
[2105] The factory robot uses a camera to capture the facial expressions of the workers.
[2106] Input: Worker's facial image (real-time video)
[2107] Data processing: Face recognition processing of face images taken with a camera using OpenCV and dlib
[2108] Output: Facial feature point data
[2109] Step 4:
[2110] Factory robots use emotion engines to analyze workers' emotions.
[2111] Input: Facial feature point data
[2112] Data processing: Analyze facial feature point data using the emotion engine and classify emotions using emotion recognition models
[2113] Output: Emotion data (e.g., stress, relaxation, tension)
[2114] Step 5:
[2115] Based on the emotion data, the emotion engine adjusts the notification text.
[2116] Input: Notification message, emotion data
[2117] Data processing: Optimizing notification message content based on emotional data (e.g., changing to more polite language)
[2118] Output: The adjusted notification message
[2119] Step 6:
[2120] The server uses an email sending API to send a notification message to the relevant parties.
[2121] Input: Tailored notification message, email addresses of interested parties
[2122] Data processing: Call the email sending API to send an email
[2123] Output: Email sending result (success / failure)
[2124] Step 7:
[2125] The server analyzes past maintenance data and generates a list of predicted alarms.
[2126] Input: Past maintenance database
[2127] Data processing: Analyzing past data to extract alarm occurrence patterns
[2128] Output: List of predicted alarms
[2129] Step 8:
[2130] Factory robots can monitor workers' emotional state in real time and adjust alarm settings.
[2131] Input: Real-time emotion data, predicted alarm list
[2132] Data processing: Analyze real-time data with an emotion engine and change alarm settings as needed
[2133] Output: Adjusted alarm settings
[2134] Step 9:
[2135] The server performs a pre-health check of the system.
[2136] Input: System health data (CPU usage, memory usage, etc.)
[2137] Data processing: Collect data from each system and evaluate its health
[2138] Output: Health evaluation result
[2139] Step 10:
[2140] The factory robot notifies the user of the results of a preliminary normality check based on the user's emotional data.
[2141] Input: Health assessment results, emotion data
[2142] Data manipulation: tailoring notifications based on sentiment (e.g., adding detailed explanations)
[2143] Output: Reconciled health check notification
[2144] Step 11:
[2145] The server obtains the list of work materials and checks it against the inventory management system.
[2146] Input: Work materials list, inventory database
[2147] Data processing: Compare the material list with inventory data and extract missing materials
[2148] Output: List of missing materials
[2149] Step 12:
[2150] The factory robot notifies relevant parties based on a list of missing materials.
[2151] Input: Shortage material list, emotion data
[2152] Data processing: Adjusting notification text based on emotional data (e.g., encouraging users to remain calm)
[2153] Output: Adjusted Shortage Material Notification
[2154] Step 13:
[2155] The server checks whether all parties have approved the work.
[2156] Input: Authorization Database
[2157] Data processing: Check the approval list to see if there are any missing approvals.
[2158] Output: Approval status list
[2159] Step 14:
[2160] If there is any missed approval, the factory robot will send an approval request through the emotion engine.
[2161] Input: Approval status list, emotion data
[2162] Data processing: Generate approval requests with optimal timing and wording based on sentiment data
[2163] Output: Reconciled approval request notification
[2164] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[2165] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[2166] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[2167] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[2168] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[2169] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[2170] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[2171] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[2172] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[2173] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[2174] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[2175] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[2176] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[2177] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[2178] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[2179] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[2180] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[2181] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[2182] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[2183] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[2184] All publications, patent applications, and technical standards mentioned in this specification are herein incorp...
Claims
1. a means for notifying relevant parties of the work; a means of suppressing alarms that may occur during the work; A means for pre-checking the health of the system; a means for identifying the necessary work materials; A system that includes a means to check the approval status of work.
2. 2. The system according to claim 1, further comprising: a system for generating and transmitting a notification message by acquiring a list of interested parties.
3. 10. The system of claim 1, further comprising: capturing predicted alarms and disabling them.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A