Electronic device, log generation method, and program

The electronic device generates logs during a first period and a second period before special processing, ensuring accurate historical reflection by addressing log generation gaps caused by special processing.

JP2026056934APending Publication Date: 2026-04-02CASIO COMPUTER CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-09-20
Publication Date
2026-04-02

AI Technical Summary

Technical Problem

Conventional electronic devices face issues in generating logs that accurately reflect their history due to special processing that hinders log generation at predetermined timings.

Method used

An electronic device generates logs including operation history during a first period and performs additional logging during a second period before special processing begins, ensuring logs are generated even when special processing occurs.

Benefits of technology

This approach allows for the generation of logs that appropriately reflect the device's history, minimizing gaps and enabling accurate historical analysis despite special processing interruptions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026056934000001_ABST
    Figure 2026056934000001_ABST
Patent Text Reader

Abstract

Generates logs that appropriately reflect the operation history. [Solution] The electronic device includes a processing unit, which generates logs containing information relating to at least the operation history of the electronic device during a first period of a predetermined length at regular intervals for each first period. If the electronic device performs special processing that may prevent the generation of logs at regular intervals, the processing unit executes a predetermined process to generate logs for a second period from the previous regular interval until the special processing begins.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an electronic device, a log generation method, and a program.

Background Art

[0002] Conventionally, in an electronic device such as a robot, a technique of periodically generating logs related to histories such as an operation history and using them for various analyzes is known (for example, Patent Document 1).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, if the electronic device performs special processing that hinders the generation of logs at the log generation timing, logs cannot be generated at that generation timing. For this reason, the above conventional technology has a problem that logs that appropriately reflect the history of the electronic device may not be generated.

[0005] An object of the present invention is to generate a log that appropriately reflects the history.

Means for Solving the Problems

[0006] To solve the above problems, an electronic device according to the present invention is an electronic device including a processing unit, wherein the processing unit generates a log including information related to at least the operation history of the electronic device in a first period of a predetermined length at each periodic timing for each first period, If the electronic device performs special processing that may prevent the generation of the log at the aforementioned periodic timing, it performs predetermined processing for generating the log during the second period from the previous periodic timing until before the special processing is started. [Effects of the Invention]

[0007] According to the present invention, it is possible to generate logs that appropriately reflect the history. [Brief explanation of the drawing]

[0008] [Figure 1] This figure shows the appearance of a robot and a smartphone. [Figure 2] This is a schematic diagram showing the configuration of the robot's main body. [Figure 3] This is a block diagram showing the functional configuration of a robot. [Figure 4] This is a block diagram showing the functional configuration of a smartphone. [Figure 5] This diagram shows the contents of the log. [Figure 6] This diagram shows how logs are generated when log transfer is performed as a special process. [Figure 7] This diagram shows how logs are generated when log transfer is performed as a special process. [Figure 8] This diagram shows how logs are generated when a firewall update is performed as a special process. [Figure 9] This flowchart shows the control procedure for the log generation process. [Modes for carrying out the invention]

[0009] Embodiments of the present invention will be described below with reference to the drawings. As shown in Figure 1, the robot management system 1 comprises a robot 10 (electronic device) and a smartphone 20 (management device, external device). The robot 10 comprises a main body 100 and an exterior 200 that covers the entire surface of the main body 100. The robot 10 is a pet robot that mimics a small living creature. The robot 10 can perform multiple different actions that mimic the gestures of living creatures. The exterior 200 is made of a flexible material and deforms according to the movement of the main body 100. The exterior 200 has, for example, fur made of pile fabric or decorative members that mimic eyes. The smartphone 20 can communicate with the robot 10 via short-range wireless communication. In this embodiment, BLE (Bluetooth® Low Energy) is used as the short-range wireless communication. However, other types of short-range wireless communication may be used. The robot 10 and the smartphone 20 operate in cooperation by communicating and transmitting / receiving data via BLE. For example, logs 133 (see Figures 3 and 5) generated by robot 10 are sent to smartphone 20 and stored in log DB (database) 232 (see Figure 4). Furthermore, a robot management application program installed on smartphone 20 (hereinafter referred to as "management app") can analyze log DB 232 to generate information related to the robot 10's history and display it on the smartphone 20's display unit 24. Other types of devices (including computer program products) such as tablet terminals, smartwatches, notebook PCs, or management servers may be used instead of smartphone 20.

[0010] As shown in Figure 2, the main body 100 of the robot 10 has a head 101, a torso 103, and a connecting part 102 that connects the head 101 and the torso 103. The main body 100 has a drive unit 16 for moving the head 101 relative to the torso 103. The drive unit 16 has a twist motor 161 and a vertical motor 162. The twist motor 161 is a servo motor that rotates the head 101 and the connecting part 102 within a predetermined angular range around a first rotation axis 161a that extends in the direction of extension of the connecting part 102. The operation of the twist motor 161 enables the robot 10 to twist its head 101. The vertical motor 162 is a servo motor that rotates the head 101 within a predetermined angular range around a second rotation axis 162a that is perpendicular to the first rotation axis 161a. The vertical movement motor 162 enables the robot 10 to move its head 101 up and down. The direction of the vertical movement of the head 101 can also be inclined relative to the vertical direction, depending on the angle of twisting of the head 101 by the twisting motor 161. By operating the twisting motor 161 and / or the vertical movement motor 162 in a fine, periodic manner, the robot 10 can achieve movements such as shaking or trembling of its head 101. By appropriately changing and combining the timing, magnitude, and speed of the twisting motor 161 and the vertical movement motor 162, the robot 10 can perform a variety of movements, such as expressions of joy, surprise, and breathing movements that mimic the respiration of living creatures. Of these, the breathing movement is one form of spontaneous movement by the robot 10.

[0011] As shown in Figure 2, the main body 100 includes a first touch sensor 171a, a second touch sensor 171b, an acceleration sensor 172, a gyro sensor 173, an illuminance sensor 174, a microphone 175, a sound output unit 15, and a power receiving coil 193. The first touch sensor 171a is located on the upper part of the head 101. The second touch sensor 171b is located on the upper part and side of the body 103, respectively. Hereinafter, "touch sensor 171" will be used to refer to either the first touch sensor 171a or the second touch sensor 171b. The acceleration sensor 172, gyro sensor 173, and power receiving coil 193 are located near the lower surface of the body 103. The illuminance sensor 174 and sound output unit 15 are located on the upper part of the body 103. The microphone 175 is located on the upper part near the base of the head 101.

[0012] As shown in Figure 3, the robot 10 comprises a CPU 11 (Central Processing Unit) (processing unit, processing means), RAM 12 (Random Access Memory), storage unit 13, operation unit 14, sound output unit 15, drive unit 16, sensor unit 17, communication unit 18, and power supply unit 19. Each part of the robot 10 is connected via a data transmission path such as a bus. All of the functional configurations shown in Figure 3 are provided in the main body 100.

[0013] The CPU 11 is a processor that controls the operation of the robot 10 by reading and executing the program 131 stored in the memory unit 13 and performing various arithmetic operations. The robot 10 may have multiple processors (for example, multiple CPUs), and the multiple processes that the CPU 11 in this embodiment performs may be performed by these multiple processors. In this case, the processing unit is composed of multiple processors. In this case, the multiple processors may be involved in common processing, or the multiple processors may independently execute different processes in parallel. The RAM 12 provides the CPU 11 with a working memory space and stores temporary data.

[0014] The storage unit 13 is a non-temporary recording medium readable by the CPU 11 as a computer, and stores the program 131 and various data. Therefore, the storage unit 13 includes a computer program product including the program 131. The storage unit 13 includes a non-volatile memory such as a flash memory, for example. The program 131 is stored in the storage unit 13 in the form of program code readable by a computer. The program 131 includes firmware for controlling each hardware of the robot 10. Examples of the data stored in the storage unit 13 include operation setting data 132 and a log 133 including information related to the history of the robot 10. In the operation setting data 132, communication operations performed by the robot 10 according to the state of the robot 10 and the content of external stimuli, automatic generation operations spontaneously performed by the robot 10 regardless of external stimuli, and operation contents such as breathing operations are set. Since the automatic generation operation seems to be a whim movement of the robot 10, it can also be referred to as a whim movement. The settings related to the operation content include, for example, the setting of the operation timing and operation amount of the twisting motor 161 and the vertical movement motor 162 of the drive unit 16, and the setting of the pitch (height), length, and volume of the sound output by the sound output unit 15. The specific content of the log 133 will be described later.

[0015] The operation unit 14 includes operation buttons and operation knobs for turning on and off the power, adjusting the volume of the output sound by the sound output unit 15, and the like. The operation unit 14 outputs operation information corresponding to an input operation on the operation buttons and operation knobs to the CPU 11. The sound output unit 15 includes a speaker and outputs sound at a pitch (height), length, and volume according to a control signal and sound data transmitted from the CPU 11. The sound may be a sound imitating the cry of a living thing. The drive unit 16 operates the above-described twisting motor 161 and vertical movement motor 162 according to a control signal transmitted from the CPU 11.

[0016] The sensor unit 17 includes the above-described first touch sensor 171a, second touch sensor 171b, acceleration sensor 172, gyro sensor 173, illuminance sensor 174, and microphone 175, and outputs the detection results by each sensor and microphone 175 to the CPU 11. The touch sensor 171 detects that a user or another object has come into contact with the robot 10. The touch sensor 171 includes, for example, a pressure sensor or a capacitance sensor, and outputs detection data related to the presence or absence of contact with the robot 10 to the CPU 11. The acceleration sensor 172 detects the acceleration in each of the three orthogonal axial directions and outputs the detection data to the CPU 11. The gyro sensor 173 detects the angular velocity around each of the three orthogonal axial directions and outputs the detection data to the CPU 11. The illuminance sensor 174 detects the brightness around the robot 10 and outputs the detection data to the CPU 11. The microphone 175 detects the sound around the robot 10 and outputs the detected sound data to the CPU 11.

[0017] The communication unit 18 is a communication module having an antenna, a modulation / demodulation circuit, a signal processing circuit, etc., and performs wireless data communication with the smartphone 20 according to the communication standard of BLE.

[0018] The power supply unit 19 includes a battery 191, a remaining amount detection unit 192, and a power receiving coil 193. The battery 191 supplies power to each part of the robot 10. The battery 191 of the present embodiment is a secondary battery that can be repeatedly charged by a non-contact charging method. The remaining amount detection unit 192 detects the remaining battery amount of the battery 191 according to a control signal transmitted from the CPU 11 and outputs the detection result to the CPU 11. The charging operation of the battery 191 is performed in a state where the robot 10 is stored (installed) inside a dedicated power feeder (storage unit, charging dock), not shown in the figure. The power feeder includes a power transmission coil for charging the battery 191 by an electromagnetic induction method at a position facing the power receiving coil 193 in a state where the robot 10 is stored.

[0019] As shown in Figure 4, the smartphone 20 comprises a CPU 21, RAM 22, storage unit 23, display unit 24, operation unit 25, and communication unit 26. Each part of the smartphone 20 is connected via a data transmission path such as a bus.

[0020] The CPU 21 is a processor that controls the operation of the smartphone 20 by reading and executing the program 231 stored in the memory unit 23 and performing various arithmetic operations. The smartphone 20 may have multiple processors (for example, multiple CPUs). The RAM 22 provides the CPU 21 with a working memory space and stores temporary data. The memory unit 23 is a non-temporary recording medium readable by the CPU 21 as a computer, and stores the program 231 and various data. The memory unit 23 has non-volatile memory such as flash memory. The program 231 includes the management application mentioned above. The data stored in the memory unit 23 includes the log DB 232 mentioned above.

[0021] The display unit 24 comprises a display panel, such as a liquid crystal panel, capable of displaying data using a dot matrix method, and a drive circuit for the display panel. The display unit 24 displays various menus, application screens, etc., according to control signals transmitted from the CPU 21. The operation unit 25 has operating means such as a touch panel and operation buttons superimposed on the display panel of the display unit 24, and outputs operation signals corresponding to operations on the operating means to the CPU 21. The communication unit 26 is a communication module having an antenna, a modulation / demodulation circuit, a signal processing circuit, etc., and performs wireless data communication with the robot 10 according to the BLE communication standard. The communication unit 26 also transmits and receives voice data for telephone communication and packet data related to internet connection, etc., with the base station.

[0022] Next, the operation of the robot 10 will be described. In this embodiment, the CPU 11 of the robot 10 generates a log 133 containing information related to the robot 10's history at periodic timings A (A1, A2, ... shown in Figures 6 to 8) for each predetermined first period T1 (see Figures 6 to 8) and stores it in the storage unit 13. A single log 133 generated at a certain periodic timing A contains information related to the robot 10's history during the first period T1 that ends at that periodic timing A. The robot 10's history includes at least the robot 10's operation history, and may also include history other than operation history. Hereinafter, the operation of generating a single log 133 at a certain timing and storing it in the storage unit 13 will be referred to as "log saving". A log 133 containing information related to the robot 10's history during a certain period will also be referred to as "log 133 for a certain period".

[0023] As shown in Figure 5, the log 133 generated in a single log save includes the robot ID 31, log generation date and time 32, log time interval information 33 (time information), state time information 34, state information 35, stimulus count information 36, action count information 37, etc. The robot ID 31 is a unique code assigned to the robot 10. The log generation date and time 32 is the date and time (hours, minutes, seconds) when the log 133 was generated. The log time interval information 33 represents the length of the log recording period in which the history reflected in the log 133 is recorded. The log recording period is usually the first period T1 as described above, but it may also be the second period T2 or the third period T3 as described later. In Figure 5, the log time interval information 33 is recorded in 1-minute units, but it is not limited to this and may be recorded in seconds. The state time information 34 represents the length of time during the log recording period in which the robot 10 was in a predetermined state. In Figure 5, sleep time is exemplified as state time information 34. Sleep time is the length of time that robot 10 was in sleep mode, which mimics the sleep of a living creature. State information 35 represents the state of robot 10 at a predetermined point in time during the logging period (for example, at the start of the logging period). In Figure 5, emotion value and personality value are exemplified as state information 35. Emotion value represents the simulated emotion of robot 10 by the position of the plot on the emotion map in the XY coordinate plane. Emotion value (X) is the position of the plot in the X-axis direction, where a larger value indicates a higher level of security and a smaller value indicates a higher level of anxiety. Emotion value (Y) is the position of the plot in the Y-axis direction, where a larger value indicates a higher level of excitement and a smaller value indicates a higher level of lethargy. Personality value represents the simulated personality of robot 10 using four parameters: "cheerful," "shy," "active," and "clingy." Personality value (cheerful) represents the ease with which the emotion map changes in the positive X-axis direction, i.e., how easily it feels secure. The personality score (Shy) represents the ease with which the X-axis on the emotional map changes in the negative direction, i.e., the tendency to become anxious. The personality score (Active) represents the ease with which the Y-axis on the emotional map changes in the positive direction, i.e., the tendency to become excitable. The personality score (Clingy) represents the ease with which the Y-axis on the emotional map changes in the negative direction, i.e., the tendency to become lethargic.The stimulus count information 36 represents the number of times the robot 10 received a predetermined stimulus from the outside during the logging period. In Figure 5, examples of stimulus count information 36 include the number of times a voice was detected, the number of times its head was stroked, the number of times its body was stroked, and the number of times it was picked up. Note that instead of the number of times a stimulus was received, a numerical value representing the frequency of the stimulus may be recorded. The action count information 37 represents the number of times the robot 10 performed a predetermined action during the logging period. In Figure 5, examples of action count information 37 include the number of times the automatically generated action and the communication action described above were performed. Note that instead of the number of times an action was performed, a numerical value representing the frequency of the action may be recorded. The log 133 in Figure 5 is an example and can be changed as appropriate. For example, the log 133 may record the number of times the robot 10 transitions to the taming mode when it becomes attached to the user, the number of times it receives a stimulus from the user in taming mode, and the number of times it performs a predetermined action in taming mode.

[0024] Thus, Log 133 is not a sequential record of the robot 10's state, actions, and stimuli received in chronological order, but rather a format in which the robot's state, actions, and stimuli received during a certain logging period are summarized and presented for each item as statistical values ​​(number of occurrences, frequency, duration, etc.) and representative values ​​(emotional value, personality value, etc.). In other words, Log 133 is a package format that summarizes the history of the robot 10 during the logging period into a predetermined number of items. This significantly reduces the amount of data in Log 133 compared to a sequential recording format.

[0025] Log 133 is transferred from the robot 10 to the smartphone 20 in response to a transfer request from the smartphone 20. A transfer request for log 133 is sent from the smartphone 20 to the robot 10, for example, when the user instructs the smartphone 20 to retrieve the latest log 133 via the management app. Log 133 transferred to the smartphone 20 is stored in the log DB 232 and used for analyzing the robot 10's movements. Specifically, the CPU 21 of the smartphone 20 analyzes the robot 10's history based on the latest log DB 232 via the management app and displays various information related to the analysis results on the display unit 24. For example, the CPU 11 displays the interaction status between the robot 10 and the user, as well as the changes in emotional and personality values, on the display unit 24.

[0026] Since the packaged log 133 can describe the history in a unified format regardless of the robot 10's status during the logging period, the amount of data per log 133 (the amount of data per log 133 generated at one time) remains roughly constant. Therefore, the upper limit of the number of logs 133 that can be stored in the storage unit 13 is roughly determined by the storage capacity of the storage unit 13. Accordingly, the first period T1 is set to a length that allows the storage unit 13 to store multiple logs 133 generated in each first period T1 over a predetermined recording period. Specifically, the number of logs 133 that can be stored in the storage unit 13 in this embodiment (i.e., the storage capacity of the storage unit 13 divided by the amount of data per log 133 (average or maximum value)) is approximately 1440, and in order to secure a recording period of 30 days, the first period T1 is set to 30 minutes (= 30 × 24 × 60 / 1440). If, after the 31st day, a new log 133 is generated when the storage capacity of the memory unit 13 is full, the oldest log 133 is deleted and a new log 133 is stored. In this way, the history of the robot 10 for the past 30 days is recorded in the form of a packaged log 133. The length of the first period T1 may be predetermined and stored in the memory unit 13 at the time of shipment, or it may be changed according to a predetermined operation by the user on the operation unit 14. Alternatively, the CPU 11 may determine the length of the first period T1 based on the storage capacity of the memory unit 13 so that log 133 can be generated over a predetermined recording period.

[0027] However, the robot 10 may, irregularly, perform special processing that may prevent the generation of log 133. If the robot 10 is performing special processing at a periodic timing A in each first period T1 when log 133 is generated, log 133 will not be generated at this periodic timing A. As a result, a gap will occur in the robot 10's history record. Examples of special processing include processing related to the transition operation of the robot 10's operating mode, and processing related to automatic power off when a voltage drop or temperature anomaly is detected. Among these, processing related to transition operation includes processing related to the transition operation from normal mode to another mode, and processing related to the transition operation from another mode to normal mode. Normal mode is the period during which the above-mentioned automatic generation operation and communication operation can be performed, as well as the period during which log 133 can be generated. Other modes include, for example, a "log transfer mode" that transfers log 133 to the smartphone 20 in response to a request from the smartphone 20, and a "FW update mode" for updating the firmware (hereinafter abbreviated as "FW") installed in the robot 10. In these log transfer modes and FW update modes, the CPU 11 cannot generate log 133 not only during the transition operation to the mode, but also during the duration of the mode (i.e., while special processing related to the log transfer mode and FW update mode is being executed).

[0028] To minimize gaps in the history caused by special processing, the CPU 11 of the robot 10 in this embodiment saves logs in the following manner. First, referring to Figures 6 and 7, we will explain using the example of a case where the special processing is log transfer in log transfer mode. In Figure 6, after the robot 10 is started at time t0, while it is operating in normal mode 40, the CPU 11 saves logs at periodic timings A1 and A2 every first period T1 (30 minutes). When the CPU 11 receives a request to transfer log 133 from the smartphone 20, it transitions the operating mode from normal mode 40 to log transfer mode 50. When the robot 10 transitions to log transfer mode 50 as special processing, the CPU 11 saves logs irregularly at irregular timing B before the transition to log transfer mode 50. In other words, at an irregular timing B that is different from the regular timings A1, A2, ... and before the start of special processing, the CPU 11 generates a log 133 containing information related to the history in the second period T2 from the previous regular timing A2 until before the start of special processing (i.e., from the previous regular timing A2 to irregular timing B) and stores it in the storage unit 13. Irregular timing B is determined to fall within a predetermined period immediately before the start of special processing. Here, the predetermined period may be, for example, a period of less than 10 seconds until the start of special processing. Also, when the CPU 11 generates the log 133 at an irregular timing B, it records log time interval information 33 related to the length of the second period T2 in the log 133. For example, when generating the log 133 at an irregular timing B 14 minutes after the regular timing A2 in Figure 6, the CPU 11 records "14 minutes" as the log time interval information 33 of the log 133. The process of generating log 133 for the second period at the irregular timing B is one form of "a predetermined process for generating logs for the second period". Log 133 generated at the normal regular timings A1 and A2 may be distinguished as "first log", and log 133 generated at the irregular timing B as "second log".

[0029] Subsequently, the CPU 11 transitions the operating mode to log transfer mode 50 and transfers log 133 to the smartphone 20 via the communication unit 18. The transferred log 133 records that it has been transferred, and in subsequent log transfer mode 50, only newly generated untransferred logs 133 are transferred. As described above, transferred logs 133 are also stored in the storage unit 13 for 30 days without being deleted. During the log transfer mode 50 period, no records related to the robot 10's history are made. Therefore, stimuli received during the log transfer mode 50 period are not reflected in the stimulus count information 36, and the number of times automatic generation operations and communication operations are performed are not reflected in the operation count information 37. Alternatively, the robot 10 may refrain from performing automatic generation operations and communication operations during the log transfer mode 50 period. Once log transfer is complete, the CPU 11 returns the operating mode from log transfer mode 50 to normal mode 40.

[0030] The CPU 11 generates a log 133 at the first periodic timing A3 after the log transfer mode 50, which is a special process, has finished, and stores it in the storage unit 13. The log 133 generated at periodic timing A3 includes information related to the history in the third period T3, which is the period from irregular timing B to periodic timing A3 during which the history was not recorded due to the special process (the period of log transfer mode 50). In addition, when the CPU 11 generates the log 133 at periodic timing A3, it records log time interval information 33 related to the length of the third period T3 in the log 133. For example, if the period of log transfer mode 50 in Figure 6 was 3 minutes, the length of the third period T3 will be 13 minutes, which is obtained by subtracting the 14 minutes of the second period T2 and the 3 minutes of log transfer mode 50 from the 30 minutes of the first period T1. Therefore, when the CPU 11 generates the log 133 at periodic timing A3, it records "13 minutes" as the log time interval information 33 of the log 133. Log 133 containing information related to the history in the third period T3 may be distinguished from other logs 133 as the "third log". Thereafter, the CPU 11 generates log 133 at periodic timings A4, A5, ... for each of the first periods T1.

[0031] Figure 6 shows the case where the log transfer mode 50 period does not overlap with any of the periodic timings A, but the log transfer mode 50 period may overlap with any of the periodic timings A. Figure 7 illustrates the case where the log transfer mode 50 period overlaps with periodic timing A3. In Figure 7, the second period T2 is assumed to be 29 minutes and the log transfer mode 50 period is 3 minutes. In the example shown in Figure 7, when the CPU 11 generates log 133 at the irregular timing B, it records "29 minutes" as the log time interval information 33 for log 133. Also, since periodic timing A3 overlaps with log transfer mode 50, log 133 is not generated at periodic timing A3. The third period T3 is the period from the end of log transfer mode 50 to the next periodic timing A4, and its length is 28 minutes. Therefore, when the CPU 11 generates log 133 at periodic timing A4, it records "28 minutes" as the log time interval information 33 for log 133.

[0032] Next, with reference to Figure 8, we will explain the case where the special processing is a firmware update in firmware update mode. In Figure 8, after log saving at periodic timing A2, a firmware update request is sent from the smartphone 20 to the robot 10. Similar to the log transfer request 133, the firmware update request is sent from the smartphone 20 to the robot 10 when the user instructs a firmware update on the management app on the smartphone 20. When the CPU 11 receives the firmware update request, it transitions the operating mode from normal mode 40 to firmware update mode 60. When the robot 10 transitions to firmware update mode 60 as special processing, the CPU 11 performs irregular log saving at irregular timing B before the transition to firmware update mode 60, similar to Figures 6 and 7.

[0033] Subsequently, the CPU 11 transitions the operating mode to FW update mode 60 and performs a FW update. Once the FW update is complete, the CPU 11 restarts the robot 10 to activate the updated FW. In Figure 8, the period between the completion of the FW update in FW update mode 60 and the completion of the restart is depicted as a blank period during which no operating mode is executed. During the period of FW update mode 60 and the subsequent period until the restart is complete, no records related to the robot 10's history and no log 133 are generated. For example, in Figure 8, periodic timing A3 occurs after the start of FW update mode 60 but before the restart is completed, but no log 133 is generated at this periodic timing A3. Once the restart is complete, the CPU 11 operates the robot 10 in normal mode 40. The CPU 11 also starts measuring the first period T1 from the time t1 when the restart is completed, and thereafter generates log 133 at periodic timings A4, A5, ... each time the first period T1 has elapsed.

[0034] Next, with reference to Figure 9, the log generation process performed by the CPU 11 to achieve the above operation will be described. The log generation process starts when the power to the robot 10 is turned on. Once the log generation process starts, the CPU 11 repeatedly determines whether the process related to starting up or restarting the robot 10 has been completed (step S1). If it is determined that the process has been completed ("YES" in step S1), the CPU 11 starts measuring the first period T1 (30 minutes in this embodiment) (step S2). The CPU 11 also starts recording various things related to the log 133 (step S3). For example, from step S3 onward, the CPU 11 counts the number of times it receives a predetermined stimulus from the outside or performs a predetermined action. The CPU 11 also records the elapsed time if the robot 10 enters sleep mode from step S3 onward. The CPU 11 also records the emotion value and personality value at the time of step S3.

[0035] The CPU 11 determines whether the first period T1 (30 minutes) has elapsed and whether the periodic timing A has arrived (step S4). If it is determined that the periodic timing A has arrived ("YES" in step S4), the CPU 11 generates a log 133 containing the log time interval information 33 (30 minutes) for the first period T1 and stores it in the memory unit 13 (step S5). Here, the CPU 11 generates the log 133 by aggregating the various records started in step S3. When step S5 is completed, the CPU 11 resets the number of times stimuli were received, the number of times predetermined actions were performed, and sleep time, etc., and returns the process to step S2. If it is determined in step S4 that the periodic timing A has not arrived ("NO" in step S4), the CPU 11 determines whether the operation to turn off the power of the robot 10 has been performed (step S6). If it is determined that the operation has been performed ("YES" in step S6), the CPU 11 terminates the log generation process. If it is determined that the operation in question has not been performed ("NO" in step S6), the CPU 11 determines whether or not special processing will be performed (step S7). For example, if the CPU 11 receives a request to transfer log 133 from the smartphone 20 or a request to update the firmware, it determines that special processing will be performed. If it is determined that no special processing will be performed ("NO" in step S7), the CPU 11 returns the process to step S4.

[0036] If it is determined that special processing is to be performed ("YES" in step S7), the CPU 11 generates a log 133 containing log time interval information 33 for the second period T2 at an irregular timing B before the special processing begins, and stores it in the storage unit 13 (step S8). Here, the CPU 11 records the time from the previous regular timing A to the irregular timing B as log time interval information 33 for the second period T2 in log 133. The CPU 11 also generates log 133 by aggregating the various records started in step S3. After that, the CPU 11 executes the special processing (step S9). For example, if the CPU 11 receives a request to transfer log 133, it transitions the operation mode to log transfer mode 50 and sends any untransferred logs 133 to the smartphone 20. Also, if the CPU 11 receives a FW update request, it executes the FW update. The CPU 11 repeatedly determines whether the special processing has finished or not (step S10). If the CPU determines that the special processing is complete ("YES" in step S10), it determines whether the special processing involves restarting the robot 10 (step S11). If the CPU determines that the special processing involves restarting ("YES" in step S11), it returns to step S1. For example, if the special processing is a firmware update, the CPU branches to "YES" in step S11. After that, if the restart is complete ("YES" in step S1), the CPU starts measuring the first period T1 anew (step S2).

[0037] If the CPU determines that the special processing does not involve a restart ("NO" in step S11), the CPU 11 starts recording various information related to log 133 (step S12). The CPU 11 repeatedly checks whether or not periodic timing A has arrived (step S13). At this point, since no restart has occurred since step S2 was last executed, the counter measuring the first period T1, which was started in step S2, has not been reset. Therefore, periodic timing A in step S13 is the timing when a time that is an integer multiple of the first period T1 has first elapsed since the measurement of the first period T1 began in the last executed step S2. If the CPU determines that periodic timing A has arrived ("YES" in step S13), the CPU 11 generates log 133 containing log time interval information 33 for the third period T3 and stores it in the storage unit 13 (step S14). Here, the CPU 11 records the time from the end of the special processing to periodic timing A as log time interval information 33 for the third period T3 in log 133. Furthermore, the CPU 11 aggregates the various records started in step S12 and generates log 133. When step S14 is completed, the CPU 11 resets the number of times stimuli were received, the number of times predetermined actions were performed, and the sleep time, and returns the process to step S2.

[0038] In Figure 9, the determination of whether or not the operation to turn off the power of the robot 10 has been performed is made at the timing of step S6, but this operation can be accepted at any other timing. If the operation to turn off the power is accepted, the CPU 11 terminates the log generation process and immediately (for example, in less than 1 second) turns off the power of the robot 10. When the power of the robot 10 is turned off in this way in response to an operation on the operation unit 14, there is not enough time to generate log 133, so the CPU 11 does not generate log 133. However, it is also possible to prioritize the generation of log 133 and turn off the power of the robot 10 after the generation and storage of log 133 is completed.

[0039] Furthermore, while the above example exemplified the process of generating log 133 for the second period (step S8) as a "predetermined process for generating logs for the second period," the predetermined process is not limited to this. For example, if there is sufficient RAM capacity, a flag may be set at the timing of step S8 to delineate the second period T2, and at any subsequent timing, the second period T2 may be identified based on the flag and log 133 for the second period T2 may be generated. The flag for delineating the second period T2 includes at least data representing the timing when the second period T2 has ended.

[0040] As described above, the robot 10 according to this embodiment includes a CPU 11, which generates a log 133 containing information relating to at least the operation history of the robot 10 during a first period T1 of a predetermined length, at each periodic timing A of the first period T1. Furthermore, if the robot 10 performs special processing that may prevent the generation of the log 133 at periodic timing A, the CPU 11 executes a predetermined process to generate the log 133 for a second period T2 from the previous periodic timing A until before the special processing begins. As a result, even if the log 133 cannot be generated at periodic timing A due to the special processing, the log 133 for the second period T2 from the previous periodic timing A until before the special processing begins can be generated. Therefore, the history immediately preceding the start of the special processing, which could not be recorded conventionally, can also be reflected and recorded in the log 133. Thus, a log 133 that appropriately reflects the history can be generated.

[0041] Furthermore, the predetermined process includes the process of generating log 133 for the second period T2. This allows log 133 for the second period T2 to be generated in a timely manner (at that point) when special processing is initiated.

[0042] Furthermore, when the CPU 11 generates log 133 in the second period T2, it records log time interval information 33 related to the length of the second period T2 in log 133. Log 133 generated at irregular timing B has a shorter log recording period than log 133 generated at regular timing A, so the density of historical information contained in log 133 is lower. In contrast, by recording log time interval information 33 related to the length of the second period T2 in log 133 as described above, it becomes possible to determine the density of information contained in log 133. Therefore, it is possible to analyze the history while taking into account the differences in information density for each log 133. This makes it possible to unify the format of log 133 for any given period while appropriately comparing logs 133 with different log recording times.

[0043] Furthermore, the CPU 11 executes a predetermined process at an irregular timing B, which is different from the regular timing A, and occurs before the special processing begins. This allows the history immediately preceding the start of the special processing to be reflected and recorded in the log 133, even if the special processing is started at any timing other than the regular timing A.

[0044] Furthermore, at the first periodic timing A after the special processing is completed, the CPU 11 generates a log 133 containing information related to the history in the third period T3, which is the period from the irregular timing B to the periodic timing A, excluding the period during which no history was recorded due to the special processing. This allows the history immediately after the completion of the special processing to be reflected and recorded in the log 133. Thus, a log 133 that more appropriately reflects the history can be generated.

[0045] Furthermore, when the CPU 11 generates log 133 at the first periodic timing A after the special processing is completed, it records log time interval information 33 related to the length of the third period T3 in log 133. This makes it possible to determine the density of information contained in log 133.

[0046] Furthermore, if the robot 10 is restarted after special processing, the CPU 11 starts measuring the first period T1 from the moment the restart is completed. This allows for the generation of a log 133 that appropriately reflects the history after the restart.

[0047] Furthermore, special processing includes sending log 133 to smartphone 20 or updating firmware built into robot 10. This allows robot 10 to generate log 133 that more accurately reflects the history even when performing these special processing tasks.

[0048] Furthermore, log 133 includes information relating to at least one of the following: the number or frequency of predetermined actions performed by the robot 10 during the logging period (first period T1, second period T2, or third period T3); the number or frequency of predetermined external stimuli received by the robot 10 during the logging period; the length of time the robot 10 was in a predetermined state during the logging period; and the state of the robot 10 at a predetermined point in time within the logging period. This allows for the generation of a packaged log 133 that summarizes the history of the robot 10 during the logging period into a predetermined number of items. In addition, the format of log 133 can be standardized for any period, regardless of the length of the logging period or the number of events (number of robot 10 actions, external stimuli, etc., to be recorded). This significantly reduces the amount of data in log 133 compared to sequential recording. Moreover, even if the storage capacity of the storage unit 13 is small, the history can be recorded over a long period of time.

[0049] Furthermore, the first period T1 is defined as a length that allows multiple logs 133, each generated in the first period T1, to be stored in the storage unit 13 over a predetermined recording period, based on the amount of data in the log 133 generated at one time and the data capacity of the area in the storage unit 13 that can store the logs 133. This makes it possible to store the logs 133 generated in the first period T1 over a predetermined recording period in the storage unit 13, and to generate logs 133 at the highest possible frequency within the range that satisfies this condition.

[0050] Furthermore, according to the log generation method of this embodiment, the CPU 11 can generate a log 133 that appropriately reflects the history by performing the above operations. In addition, the program 131 of this embodiment causes the CPU 11 to function as a processing means for performing the above operations. This makes it possible to generate a log 133 that appropriately reflects the history.

[0051] It should be noted that the present invention is not limited to the embodiments described above, and various modifications are possible. For example, log transfer mode 50 and FW update mode 60 have been given as examples of special processing that can prevent the generation of log 133, but the invention is not limited to these. The special processing may be any processing that can prevent the generation of log 133 at periodic timing A.

[0052] Furthermore, the configuration of robot 10 is not limited to those exemplified in Figures 1 to 3. For example, it may be a robot modeled after a real living creature such as a human, animal, bird, or fish; a robot modeled after a non-existent creature such as a dinosaur; or a robot modeled after a fictional creature.

[0053] Furthermore, the electronic device is not limited to the robot 10, but may be any device equipped with a processing unit that generates logs of its own device.

[0054] Furthermore, while the above description discloses an example in which the flash memory of the storage unit 13 is used as a computer-readable medium for the program according to the present invention, the invention is not limited to this example. Other computer-readable mediums that can be used include information recording media such as HDDs (Hard Disk Drives), SSDs (Solid State Drives), and CD-ROMs. In addition, a carrier wave can also be used as a medium for providing program data according to the present invention via a communication line.

[0055] Furthermore, it goes without saying that the detailed configuration and detailed operation of each component of the robot 10 and smartphone 20 in the above embodiment can be appropriately modified without departing from the spirit of the present invention.

[0056] Although embodiments of the present invention have been described, the scope of the present invention is not limited to the embodiments described above, but includes the scope of the invention as described in the claims and its equivalents. [Explanation of Symbols]

[0057] 10...Robot (electronic device), 11...CPU (processing unit, processing means), 33...Log time interval information (time information), 50...Log transfer mode (special processing), 60...FW update mode (special processing), 133...Log, A, A1~A5...Regular timing, B...Irregular timing, T1...First period, T2...Second period, T3...Third period

Claims

1. An electronic device equipped with a processing unit, The aforementioned processing unit, Logs containing information relating to at least the operation history of the electronic device during a first period of a predetermined length are generated at regular intervals for each of the first periods. If the electronic device performs special processing that may prevent the generation of the log at the aforementioned periodic timing, it will perform predetermined processing for generating the log during the second period from the previous periodic timing until before the special processing is started. electronic equipment.

2. The predetermined process includes the process of generating the log for the second period, The electronic device according to claim 1.

3. When the processing unit generates the log for the second period, it records time information relating to the length of the second period in the log. The electronic device according to claim 2.

4. The processing unit executes the predetermined processing at an irregular timing different from the regular timing, which is an irregular timing before the special processing is initiated. The electronic device according to claim 1.

5. The processing unit generates the log at the first periodic timing after the completion of the special processing, which includes information relating to the operation history for a third period, excluding the period from the irregular timing to the first periodic timing during which the operation history was not recorded due to the special processing. The electronic device according to claim 4.

6. When the processing unit generates the log at the first periodic timing after the special processing is completed, it records time information relating to the length of the third period in the log. The electronic device according to claim 5.

7. The processing unit, when the electronic device is restarted after the special processing, starts measuring the first period from the time the restart is completed. The electronic device according to claim 1.

8. The special processing includes transmitting the log to an external device or updating the firmware incorporated in the electronic device. The electronic device according to claim 1.

9. The aforementioned log is The number of times or frequency at which the electronic device performed a predetermined operation during the first or second period, The number of times or frequency at which the electronic device receives a predetermined stimulus from the outside during the first or second period, The length of time during the first or second period that the electronic device was in a predetermined state, and The state of the electronic device at a predetermined point in time within the first period or the second period, Information relating to at least one of the following: The electronic device according to claim 1.

10. The processing unit causes the generated log to be stored in the storage unit. The first period is determined to be a length that allows multiple logs, each first period, to be stored in the storage unit over a predetermined recording period, based on the amount of data in the log generated at one time and the data capacity of the area in the storage unit capable of storing the log. The electronic device according to claim 1.

11. A method for generating logs performed by a computer in an electronic device, Logs containing information relating to at least the operation history of the electronic device during a first period of a predetermined length are generated at regular intervals for each of the first periods. If the electronic device performs special processing that may prevent the generation of the log at the aforementioned periodic timing, it will perform predetermined processing for generating the log during the second period from the previous periodic timing until before the special processing is started. Log generation method.

12. Using the computer of an electronic device as a processing tool, The processing means is Logs containing information relating to at least the operation history of the electronic device during a first period of a predetermined length are generated at regular intervals for each of the first periods. If the electronic device performs special processing that may prevent the generation of the log at the aforementioned periodic timing, it will perform predetermined processing for generating the log during the second period from the previous periodic timing until before the special processing is started. program.

Citation Information

Patent Citations

  • Method and device for updating an environmental map used for robot self-position estimation

    JP2024510605A