Program for setting target value for physical quantity of object to be controlled, information recording medium, control device, and control method
The control device addresses movement reproduction delays in telerobotics by setting target values based on physical quantities and time derivatives with prediction coefficients, ensuring safe and accurate movement reproduction.
Patent Information
- Application Number
- PCT/JP2025/012358
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-04-23
- Filing Date
- 2025-03-27
- Publication Date
- 2025-10-30
AI Technical Summary
Existing telerobotics technologies face delays in accurately reproducing movements, especially in applications like rehabilitation, games, and sports, where instantaneous movement reproduction is desired, and there is a need to ensure movements remain within a safe range to avoid excessive loads or collisions.
A control device that acquires physical quantities and their time derivatives, calculates a sum with a prediction coefficient, and sets upper and lower limits to quickly and safely reproduce movements by setting target values for the controlled object.
The solution reduces time delays and ensures movements are reproduced within a safe range, enhancing accuracy and safety in applications like rehabilitation, games, and sports.
Smart Images

Figure JP2025012358_30102025_PF_FP_ABST
Abstract
Description
Program for setting target value of physical quantity of controlled object, information recording medium, control device, and control method
[0001] The present invention relates to a program, an information recording medium, a control device, and a control method for setting a target value of a physical quantity of a controlled object.
[0002] Traditionally, telerobotics technology has often been used in critical situations such as search and rescue, robotic operations in dangerous environments, and surgical operations, but recently the uses of telerobotics technology have expanded to include rehabilitation, games, sports, and technical training in production sites.
[0003] For example, in order to increase the effectiveness of rehabilitation, a technology has been proposed in which a patient with an injury to one hand or arm can have the movement of the other uninjured hand or arm reproduced on that arm (Patent Document 1).
[0004] International Publication No. 2012 / 176200
[0005] However, with telerobotics technology, the accuracy of the reproduced movements tends to be such that it takes time to reproduce the movements, resulting in delays. Currently proposed technologies result in a time delay of around 200 ms.
[0006] However, in rehabilitation, there is a demand to instantly reproduce the movement of one hand or arm of a patient in the other hand or arm, or conversely, to instantly reproduce the movement of the other hand or arm in one hand or arm.
[0007] In games, sports, technical training, and the like, it is often desirable to have beginners instantly reproduce the movements of an expert, sometimes with the aid of external stimuli.
[0008] In addition, for example, in an application example in which the movement of one finger, hand, or arm is reproduced on the other finger, hand, or arm, it is desirable to ensure that the other finger, hand, or arm does not deviate from a safe range of motion. In other words, it is necessary that the movement does not place an excessive load on the finger, hand, or arm, but it may also be necessary to avoid collision with external obstacles, the floor, pillars, walls, desks, etc.
[0009] The present invention has been made to solve the above-mentioned problems, and relates to a program, an information recording medium, a control device, and a control method for setting a target value of a physical quantity of a controlled object.
[0010] In order to solve the above problem, the control device according to the present invention acquires a physical quantity related to an observation object and a time derivative of the physical quantity related to the observation object, calculates the sum of the acquired physical quantity and the product of the acquired time derivative and a prediction coefficient, and repeats the following process: if the calculated sum exceeds an upper limit value, set the upper limit value; if the calculated sum is less than a lower limit value, set the lower limit value; and if the calculated sum is equal to or greater than the lower limit value and equal to or less than the upper limit value, set the calculated sum as a target value of the physical quantity related to the control object.
[0011] According to the present invention, it is possible to provide a program, an information recording medium, a control device, and a control method for setting a target value of a physical quantity of a control target.
[0012] FIG. 1 is an explanatory diagram showing an overview of control by a control device according to an embodiment of the present invention. FIG. 2 is a graph showing time changes in physical quantities of a control object when a target value for the control object according to this embodiment is changed like a step function. FIG. 3 is an explanatory diagram showing a schematic configuration of a control device according to an embodiment of the present invention. FIG. 4 is a graph showing observed values acquired by a control device according to an embodiment of the present invention, a target value to be set, and a tracked value followed by the control object. FIG. 5 is a flowchart showing the flow of control processing executed by a control device according to an embodiment of the present invention. FIG. 6 is a graph showing experimental results regarding gain in a control device according to an embodiment of the present invention. FIG. 7 is a graph showing experimental results regarding time shift in a control device according to an embodiment of the present invention. FIG. 8 is a graph showing experimental results regarding phase shift in a control device according to an embodiment of the present invention. FIG. 9 is a graph showing experimental results comparing the presence or absence of a safety zone setting in a control device according to an embodiment of the present invention.
[0013] The following describes embodiments of the present invention. Note that these embodiments are for illustrative purposes only and do not limit the scope of the present invention. Therefore, those skilled in the art can adopt embodiments in which each or all of the elements of the present embodiments are replaced with equivalents. Furthermore, elements described in each example can be omitted as appropriate depending on the application. In this way, all embodiments constructed in accordance with the principles of the present invention are included in the scope of the present invention.
[0014] (Concept) Fig. 1 is an explanatory diagram showing an overview of control by a control device according to an embodiment of the present invention. The following description will be made with reference to this diagram.
[0015] The control device according to this embodiment plays a role corresponding to "software control / prediction gain / safety zone" shown in this figure.
[0016] In this diagram, the "observation source motor" is the object of observation. The physical quantity of the object of observation in this embodiment corresponds to the rotation angle of the rotation axis of the "observation source motor," i.e., the "observation angle." The "observation angle" can be changed by the fingers of one of a person's hands and is measured by a sensor attached to the "observation source motor."
[0017] The measured "observation angle" becomes the input to the control device.
[0018] On the other hand, the controlled object controlled by the control device is the combination of "firmware control / PID gain" and "controlled motor" shown in this diagram. The control device gives the controlled object a target value for the physical quantity related to the controlled object, that is, a target value for the rotation angle of the rotating shaft of the "controlled motor."
[0019] The purpose of this embodiment is to reproduce the "rotation angle of the rotation axis of the observed motor" (a physical quantity related to the object to be observed) as quickly as possible and within a safe range to the "rotation angle of the rotation axis of the controlled motor" (a physical quantity related to the object to be controlled), thereby transmitting an action from one human finger to another human finger.
[0020] The control device of this embodiment uses not only the physical quantity of the observation target but also the time derivative of the physical quantity of the observation target. The time derivative may be calculated from the history of the input physical quantity, or, if the observation source motor also has an angular velocity sensor, the output of the angular velocity sensor may be used as the time derivative.
[0021] 2 is a graph showing the time change of the physical quantity of the controlled object when the target value of the controlled object of this embodiment is changed like a step function. The upper graph in this figure shows the case where no tuning of PID gains is performed in firmware control, and shows how the physical quantity of the controlled object ("tracking" in this figure; the same applies hereinafter) increases in accordance with the target value that changes like a step function ("target" in this figure; the same applies hereinafter), overshoots to a value that exceeds the target value, undershoots to a value that is smaller than the target value, and then converges to the target value.
[0022] The middle part of the figure shows the case where the PID gains are tuned to prevent overshooting or undershooting. From the middle part of the figure, it can be seen that in this case, there is a time delay before the physical quantity of the controlled object reaches the target value.
[0023] The bottom part of the figure shows how the target value is increased, and when the physical quantity of the controlled object reaches the target, the target value is lowered, and the physical quantity of the controlled object reaches the target again. The bottom part of the figure shows the highest operating frequency (shortest operating cycle) that the physical quantity of the controlled object can follow when the target value is changed in a rectangular wave shape. In other words, twice the pulse width corresponds to the shortest operating cycle.
[0024] In general, it is rare that the behavior of a controlled object can be completely analyzed in advance. Even if the behavior is measured once, the behavior can change depending on the environment in which the controlled object is placed (temperature, air pressure, power supply voltage, power supply power, etc.), the load placed on the controlled object (the strength with which a human finger presses the controlled motor, the human's habituation, etc.), and the changes over time or aging of the controlled object itself.
[0025] Furthermore, the controlled object is often configured as a single module, acting as a black box. In such cases, it is almost impossible to carry out a thorough analysis.
[0026] This embodiment proposes a technique that can suppress time delays and reproduce safe behavior even in these cases.
[0027] The control device according to this embodiment is typically realized by executing a program on a computer connected to the object to be observed (the angle sensor of the rotation axis of the observed motor) and the object to be controlled (the controlled motor and the firmware control module that controls it).
[0028] A program executed by a computer can be distributed or sold by a server to which the computer is connected for communication, or it can be recorded on a non-transitory information recording medium such as a CD-ROM (Compact Disk Read Only Memory), flash memory, or EEPROM (Electrically Erasable Programmable ROM), and then the information recording medium can be distributed, sold, etc.
[0029] The program is installed on a non-transitory information recording medium such as a hard disk, solid-state drive, flash memory, EEPROM, etc., possessed by the computer. The control device of this embodiment is then realized by the computer. Generally, the computer's CPU (Central Processing Unit) reads the program from the information recording medium into RAM (Random Access Memory) under the management of the computer's OS (Operating System), and then interprets and executes the code contained in the program. However, in an architecture in which the information recording medium can be mapped within a memory space accessible by the CPU, explicit loading of the program into RAM may not be necessary. Various pieces of information required during the execution of the program can be temporarily stored in RAM.
[0030] It should be noted that the control device of this embodiment can be configured using a dedicated electronic circuit rather than a general-purpose computer. In this embodiment, the program can also be used as a resource for generating wiring diagrams, timing charts, and the like for the electronic circuit. In this embodiment, an electronic circuit that meets the specifications defined in the program is configured using an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit), and the electronic circuit functions as a dedicated device that performs the functions defined in the program, thereby realizing the control device 101 of this embodiment.
[0031] For ease of understanding, the following description will be given assuming that the control device is realized by a computer executing a program.
[0032] (Configuration) Fig. 3 is an explanatory diagram showing the general configuration of a control device according to an embodiment of the present invention. The following description will be made with reference to this diagram.
[0033] The control device 101 shown in this figure includes an acquisition unit 102, a calculation unit 103, and a setting unit 104.
[0034] Here, the acquiring unit 102 acquires a physical quantity related to the observation target and a time derivative of the physical quantity related to the observation target. As described above, when only one physical quantity (the angle of the rotation shaft of the observation source motor) is acquired from the sensor that observes the observation target, the acquiring unit 102 only needs to find the time derivative of the physical quantity from the history of the acquired physical quantities.
[0035] On the other hand, the calculation unit 103 calculates the sum of the acquired physical quantity and the product of the acquired time differential and prediction coefficient (prediction gain).
[0036] That is, the calculation unit 103 estimates the physical quantity of the observation target that will be acquired by the acquisition unit 102 at a time point in the future that is the time length indicated by the prediction coefficient from the present. The time length indicated by the prediction coefficient may be set as an appropriate constant in advance, or may be determined based on the history of physical quantities acquired from the observation target or the control target, as will be described later.
[0037] Furthermore, the setting unit 104 sets the upper limit value as the target value of the physical quantity related to the controlled object if the calculated sum exceeds the upper limit value, sets the lower limit value if the calculated sum is less than the lower limit value, and sets the calculated sum to the upper limit value and the lower limit value if the calculated sum is equal to or greater than the lower limit value and less than or equal to the upper limit value. The upper limit value and the lower limit value may be set as appropriate constants in advance, or may be determined based on a history of physical quantities acquired from the observed object, as will be described later.
[0038] The set target value is given to the controlled object (the firmware control module that controls the controlled motor).
[0039] The control device 101 repeatedly executes the processes by the acquisition unit 102, the calculation unit 103, and the setting unit 104. The repetition period can be changed as appropriate depending on the performance of the computer, the performance of the observed object and the controlled object, the application, etc.
[0040] (Upper and Lower Limits of the Safe Zone) The upper and lower limits referred to by the setting unit 104 can be determined based on the history of physical quantities of the observation target that have been acquired in the past.
[0041] For example, the upper limit value can be the maximum value in the history of the physical quantity of the observation target, and the lower limit value can be the minimum value in the history of the physical quantity of the observation target.
[0042] In the example of reproducing a movement from one human finger to another, the safe zone would be within the range of rotation angles previously shown by the original finger.
[0043] The upper limit may be the maximum value in the distribution excluding outliers from the history, and the lower limit may be the minimum value in the distribution.
[0044] In the example of reproducing a movement from one human finger to another, the safe zone would be within the range of "normal" rotation angles that the original finger has previously exhibited.
[0045] The method for removing outliers may be a simple method such as removing a predetermined proportion of the top and bottom values of the distribution (for example, a predetermined percentage of the total), or a statistical method may be used, such as assuming the distribution to be normal, finding the mean m and standard deviation σ, and setting the lower limit to m-2σ and the upper limit to m+2σ (the multiplier 2 for σ can be changed as appropriate).
[0046] (Prediction Coefficient) The simplest way to determine the prediction coefficient is to use a constant determined experimentally. Note that, since the control device 101 according to this embodiment predicts the future and reproduces movement, it is desirable that the prediction coefficient correspond to a value equal to or greater than the time interval from the present to the predicted future. This is because if the prediction coefficient is smaller than the time interval, the prediction will be too weak, making delays more likely to occur. Therefore, using the repetition period of the control device 101 as a guide, the prediction coefficient can be a constant corresponding to the repetition period, such as the value itself equivalent to the period, a value equivalent to twice the period, or a value generally equivalent to N times the period (real number constant N≧1), i.e., a value equivalent to a time longer than the period.
[0047] Note that when the angular units of a physical quantity and its time derivative are different (for example, when the unit of the physical quantity is degrees and the unit of the time derivative is the number of rotations per second (s -1 ) or radians per second (rad / s). The unit of time may also be the repetition period.) The prediction coefficients must be in values and units that allow conversion between these two (for example, 360 degrees = 1 rotation = 2πrad, or conversion based on the ratio of 1 second to the repetition period).
[0048] In addition, a method may be adopted in which the control device 101 also acquires the physical quantity of the controlled object (the rotation angle of the rotation shaft of the operated motor) and uses this to minimize the time delay.
[0049] For example, a prediction coefficient is used to determine the change in the physical quantity of the observed object and the change in the physical quantity of the controlled object over a certain period of time, and an evaluation value is calculated based on these.The prediction coefficient is then slightly changed, and the change in the physical quantity of the observed object and the change in the physical quantity of the controlled object over a certain period of time are again determined, and an evaluation value is calculated based on these.
[0050] These two evaluation values are then compared, and the prediction coefficient that results in the smaller evaluation value is adopted.
[0051] The evaluation value may be the difference between the values of the physical quantity related to the observed object and the physical quantity related to the controlled object at the same time, the time difference between the times when the physical quantity related to the observed object and the physical quantity related to the controlled object become the same value, or a combination of these.
[0052] That is, the above differences are calculated for a certain period of time, and the evaluation value can be the absolute value of the average of the differences, the absolute value of the sum of the differences, the sum of the absolute values of the differences, the sum of the squared differences, the maximum absolute value of the differences, etc.
[0053] In addition, it is also possible to determine the prediction coefficient based on the rate at which the sum calculated by the calculation unit 103 exceeds an upper limit value or falls below a lower limit value.
[0054] This is because it is considered necessary for the predicted value to overshoot or undershoot to some extent in order to enable rapid reproduction.
[0055] That is, the control device 101 updates the prediction coefficients so that the value that is equal to or greater than the lower limit and equal to or less than the upper limit approaches a predetermined ratio in the history of sums calculated in the past.
[0056] For example, in the history of sums calculated in the past, if the values above the lower limit and below the upper limit are more than a specified percentage (e.g., 95 percent), there are too few undershoots and overshoots, meaning the prediction is too weak, so the prediction coefficients should be increased; if they are less, there are too many undershoots and overshoots, meaning the prediction is too strong, so the prediction coefficients should be decreased.
[0057] 5 is a flowchart showing the flow of control processing executed by the control device according to the embodiment of the present invention. The following description will be made with reference to this figure.
[0058] When this process starts, the control device 101 first performs various initializations (step S301), which include setting prediction coefficients, upper limit values, and lower limit values.
[0059] Next, the control device 101 repeats the following process at predetermined intervals (step S302).
[0060] First, the control device 101 acquires a physical quantity related to the observation target from a sensor or the like (step S303).
[0061] Next, the control device 101 acquires the time derivative of the physical quantity related to the observation target from a sensor or the like, or from the history of physical quantities acquired in the past (step S304).
[0062] Furthermore, the control device 101 calculates the sum of the acquired physical quantity and the product of the acquired time differential and the prediction coefficient (step S305).
[0063] Then, the calculated sum is compared with the upper limit and lower limit (step S306).
[0064] If the sum is less than the lower limit (step S306; less than the lower limit), the control device 101 sets the lower limit as the target value of the physical quantity of the controlled object for the control module or the like to be operated (step S307).
[0065] On the other hand, if the sum exceeds the upper limit (step S306; exceeding upper limit), the control device 101 sets the upper limit as the target value of the physical quantity of the controlled object for the control module or the like to be operated (step S308).
[0066] If the sum is between the lower limit and the upper limit (step S306; otherwise), the control device 101 sets the sum as the target value of the physical quantity of the control target for the control module or the like to be operated (step S309).
[0067] Thereafter, as an optional process, the control device 101 may update the upper limit value, the lower limit value, and the prediction coefficients (step S310).
[0068] By repeating this process (step S311), the behavior of the observed object can be reproduced in the controlled object quickly and safely.
[0069] 4 is a graph showing observed values acquired by a control device according to an embodiment of the present invention, target values that are set, and tracked values that are tracked by a controlled object. The following description will be made with reference to this figure.
[0070] The upper part of the figure shows the case where the prediction coefficient is fixed at 0, and the observed value of the physical quantity matches the target value. In this case, a time delay occurs based on the performance of the controlled object.
[0071] The middle part of the figure shows the case where the prediction coefficients are non-zero, but no safety margin is set by the upper and lower limits, i.e., the lower limit is set to -∞ and the upper limit to +∞, and the calculated sum is used as the target value as is. In the example shown in this figure, the time delay is shortened, but overshoot occurs.
[0072] The bottom part of the figure shows the case where the prediction coefficients are non-zero and a safety zone is set by upper and lower limit values, and it can be seen that the time delay can be shortened and no overshoot occurs.
[0073] In the above example, the observation source and the operation destination were assumed to be the left and right fingers of the same user, but the body parts of the observation source and the operation destination can be changed as appropriate, and the users related to the observation source and the operation destination are not limited to the same user.
[0074] When the same user sets the observation source and operation target to the same left and right parts, by using the control device 101 according to this embodiment, the user can be made to feel as if the mirror image movements of the two were occurring simultaneously, and the movement of the operation target is performed within a safe range.
[0075] It is also possible for the observer and the target of the operation to be different users. For example, it is possible to simultaneously reproduce the movement of one user's right hand on both the right and left hands of another user.
[0076] The control device 101 according to this embodiment is also useful in situations where immediate operation is required, such as when operating a robot arm.
[0077] (Experimental Results) The following describes the results of experiments conducted to confirm the performance of this embodiment.
[0078] In this experiment, a Dynamixel XC330-T181-T was used as the servo motor, powered by a 12V power brick, and controlled via a U2D2 interface and a dedicated Python program.
[0079] Data transfer and recording was at 500 Hz with a minimum delay of 2 ms and a maximum delay of 4 ms, with a delay of 2 ms for over 99% of frames and 3 ms for less than 1% of frames.
[0080] In each experiment, two motors were controlled simultaneously by synchronous read / write. Therefore, two experimental conditions could be collected simultaneously. In other words, to obtain four experimental conditions, two experiments were conducted by giving different parameters to each motor.
[0081] No physical load was applied to the motor servo horn.
[0082] The PID control parameters were adjusted by trial and error using Dynamixel Wizard 2.0 software.
[0083] First, the value of the proportional gain (P) was determined so as to realize a high-speed response, and then the value of the differential gain (D) was determined so as to eliminate overshoot.
[0084] In this experiment, the integral gain (I) was not used because the steady-state error was very small.
[0085] Since no physical load is imposed on the XC330 motor, the parameters P=2000 and D=1100 are selected.
[0086] For a step response to a 45° rotation, a response time of less than 100 ms was achieved, which means that the maximum operating frequency is 5 Hz.
[0087] To investigate the frequency response performance, a sine sweep experiment was conducted. Performance tests were conducted at frequencies between 0.5 Hz and 5 Hz in 0.5 Hz increments. For each frequency, a trial consisted of a 10-second sine wave (45° peak-to-peak width) of the selected frequency followed by a 0.5-second pause, followed by a 0.5-second pause. Each trial therefore took 110 seconds.
[0088] The algorithm of this embodiment was run at a rate of 500 Hz so that the motor followed the given sine wave.
[0089] The safe zone was set at the peak-to-peak range of the sine wave (0 degrees and 45 degrees).
[0090] The values of the prediction coefficient (prediction gain) G were set to 0 (no prediction), 0.075, 0.15, and 0.225.
[0091] The two motors were driven simultaneously with different prediction coefficients. The experiment was repeated twice: the first time with G = 0 and G = 0.15, and the second time with G = 0.075 and G = 0.225.
[0092] The data was recorded for each frame in CSV format, with the timestamp, desired sine wave value, position of each motor, and value of the prediction coefficients.
[0093] The gain at each frequency was obtained from 10 seconds of data collected for that frequency and scaled by the peak-to-peak target width (45 degrees, which corresponds to the width of the safe zone) and the peaks and troughs. If the number of detected peaks or troughs was greater than the frequency (or a predefined threshold n), the peaks and troughs in the top n cycles were selected. The average width of the peaks and troughs was then considered the gain for that frequency.
[0094] The time shift for each frequency was obtained from 10 seconds of data for that frequency, plus the preceding and following 0.25 seconds, and cross-correlated with the desired sine wave input. The pause period was determined by first shifting the referenced desired sine wave and collected position data to zero and stabilizing the cross-correlation, i.e., creating a smooth transition with zero padding. The position of the peak cross-correlation value was then converted to a time shift based on the sampling frequency.
[0095] The phase shift at each frequency was calculated by simply multiplying the estimated time shift in Hz by 360 degrees (a full period). For example, a time shift of 20 ms for a frequency of 5 Hz corresponds to 0.1 period, resulting in a phase shift of 36 degrees.
[0096] 6 is a graph showing experimental results for the gain in the control device according to the embodiment of the present invention. As shown in this figure, the gain is well controlled, falling between 0.96 and 1.02 in all cases. When no prediction is performed (prediction coefficient G=0), the gain exceeds 1 at low frequencies, but the degree of this difference decreases as the frequency increases.
[0097] At low frequencies, it was observed that the gain tended to increase as the prediction coefficient G was increased. In this experiment, the desired peak-to-peak width was set to 45 degrees. Since the maximum gain difference was 0.02, the target error was less than 1 degree.
[0098] Figure 7 is a graph showing experimental results for time shift in a control device according to an embodiment of the present invention. As shown in this figure, at G=0, the absolute time shift is relatively stable, and as G increases, the time shift also increases, but the degree of time shift decreases as the frequency increases. At G=0.15, there is a small lead at low frequencies, no lag at mid frequencies, and a small lag at high frequencies.
[0099] Figure 8 shows experimental results for phase shift in a control system according to an embodiment of the present invention. Converting absolute time shifts to phase shifts highlights the strength of predictive control algorithms. While a 20-25 ms delay may seem small, it corresponds to a 45-degree phase shift at 5 Hz, making it perceptible to humans.
[0100] From these results, it can be seen that for the controlled object of this experiment, when G=0.15, the overshoot is less than 2%, and the time shift and phase shift are also relatively small, which is optimal.
[0101] Just to be sure, we decided to compare the results for G=0.15 when a safety zone was set and when it was not set. Figure 9 is a graph showing the results of an experiment comparing the presence and absence of a safety zone in a control device according to an embodiment of the present invention. As shown in this graph, when the safety zone was not set, the overshoot increased as the frequency increased, and at 4.5 Hz, the gain was approximately 1.17. On the other hand, by setting the safety zone, the gain could be kept below 1.02, as shown in this graph and in Figure 6. Thus, this experiment demonstrated the usefulness of setting a safety zone.
[0102] (Summary) As described above, the program according to this embodiment causes a computer to repeatedly execute the following processes: acquire a physical quantity related to an observation object and a time derivative of the physical quantity related to the observation object; calculate the sum of the acquired physical quantity and the product of the acquired time derivative and a prediction coefficient; and set the upper limit value if the calculated sum exceeds an upper limit value; set the lower limit value if the calculated sum is less than a lower limit value; and set the calculated sum to be equal to or greater than the lower limit value and equal to or less than the upper limit value as a target value of the physical quantity related to a control object.
[0103] In addition, in the program according to the present embodiment, the upper limit value and the lower limit value can be configured to be determined based on a history of the physical quantity acquired in the past.
[0104] Furthermore, the program according to the present embodiment can be configured so that the upper limit value is the maximum value in the history, and the lower limit value is the minimum value in the history.
[0105] Furthermore, the program according to this embodiment can be configured so that the upper limit value is the maximum value in a distribution obtained by excluding outliers from the history, and the lower limit value is the minimum value in the distribution.
[0106] Furthermore, the program according to this embodiment can be configured to update the prediction coefficients so as to minimize a difference between the values of the physical quantity related to the observed object and the physical quantity related to the controlled object at the same time point.
[0107] Furthermore, the program according to this embodiment can be configured to update the prediction coefficients so as to minimize the time difference between the time when the physical quantity related to the observed object and the time when the physical quantity related to the controlled object have the same value.
[0108] Furthermore, the program according to this embodiment can be configured to update the prediction coefficients so that, in the history of the sums calculated in the past, the value that is greater than or equal to the lower limit value and less than or equal to the upper limit value approaches a predetermined ratio.
[0109] Furthermore, the program according to this embodiment can be configured to update the prediction coefficients so that if the number of values greater than or equal to the lower limit and less than or equal to the upper limit in the history of the sums calculated in the past is greater than a predetermined ratio, the prediction coefficients are increased, and if the number is less than a predetermined ratio, the prediction coefficients are decreased.
[0110] A non-transitory computer-readable information recording medium according to this embodiment can be configured to record the above program.
[0111] The program can be distributed or sold by recording it on a non-transitory computer-readable information recording medium, or via a transitory transmission medium such as a computer communication network.
[0112] The control device according to this embodiment includes: an acquisition unit that acquires a physical quantity related to an observation object and a time derivative of the physical quantity related to the observation object; a calculation unit that calculates the sum of the acquired physical quantity and the product of the acquired time derivative and a prediction coefficient; and a setting unit that sets the upper limit value if the calculated sum exceeds an upper limit value; sets the lower limit value if the calculated sum is less than a lower limit value; and sets the calculated sum to be equal to or greater than the lower limit value and less than or equal to the upper limit value; and repeats the acquisition by the acquisition unit, the calculation by the calculation unit, and the setting by the setting unit.
[0113] In the control method according to this embodiment, the control device repeats the following steps: acquiring a physical quantity related to an observation object and a time derivative of the physical quantity related to the observation object; calculating the sum of the acquired physical quantity and the product of the acquired time derivative and a prediction coefficient; and setting the upper limit value if the calculated sum exceeds an upper limit value; setting the lower limit value if the calculated sum is less than a lower limit value; and setting the calculated sum to be equal to or greater than the lower limit value and equal to or less than the upper limit value as a target value of the physical quantity related to the control object.
[0114] The present invention allows for various embodiments and modifications without departing from the broad spirit and scope of the present invention. Furthermore, the above-described embodiments are intended to illustrate the present invention and are not intended to limit the scope of the present invention. That is, the scope of the present invention is defined by the claims, not the embodiments. Various modifications made within the scope of the claims and their equivalents are deemed to be within the scope of the present invention. This application claims priority based on patent application No. 2024-069437, filed in Japan on Tuesday, April 23, 2024, and the contents of that basic application are incorporated herein to the extent permitted by the laws and regulations of the designated countries.
[0115] According to the present invention, it is possible to provide a program, an information recording medium, a control device, and a control method for setting a target value of a physical quantity of a control target.
[0116] 101 control device 102 acquisition unit 103 calculation unit 104 setting unit
Claims
1. A program causing a computer to repeatedly execute the following process: acquire a physical quantity related to an observation object and a time derivative of the physical quantity related to the observation object; calculate the sum of the acquired physical quantity and the product of the acquired time derivative and a prediction coefficient; and set the upper limit value if the calculated sum exceeds an upper limit value; set the lower limit value if the calculated sum is less than a lower limit value; and set the calculated sum to be equal to or greater than the lower limit value and equal to or less than the upper limit value as a target value for the physical quantity related to a control object.
2. The program according to claim 1, wherein the upper limit value and the lower limit value are determined based on a history of the physical quantity obtained in the past.
3. The program according to claim 2, wherein the upper limit value is a maximum value in the history, and the lower limit value is a minimum value in the history.
4. The program according to claim 2, wherein the upper limit value is the maximum value in a distribution excluding outliers from the history, and the lower limit value is the minimum value in the distribution.
5. The program according to any one of claims 1 to 4, characterized in that the prediction coefficients are updated so as to minimize the difference between the values of the physical quantity related to the observed object and the physical quantity related to the controlled object at the same time point.
6. The program according to any one of claims 1 to 4, characterized in that the prediction coefficients are updated so as to minimize the time difference at which the physical quantity related to the observed object and the physical quantity related to the controlled object have the same value.
7. A program according to any one of claims 1 to 4, characterized in that the prediction coefficients are updated so that, in the history of the sums calculated in the past, the value that is greater than or equal to the lower limit value and less than or equal to the upper limit value approaches a predetermined ratio.
8. The program according to claim 7, characterized in that the prediction coefficient is updated so that if the number of values greater than the lower limit value and less than the upper limit value in the history of the sums calculated in the past is greater than a predetermined rate, the prediction coefficient is increased, and if the number is less than a predetermined rate, the prediction coefficient is decreased.
9. A non-transitory computer-readable information recording medium having the program according to any one of claims 1 to 4 recorded thereon.
10. A control device comprising: an acquisition unit that acquires a physical quantity related to an observation object and a time derivative of the physical quantity related to the observation object; a calculation unit that calculates the sum of the acquired physical quantity and the product of the acquired time derivative and a prediction coefficient; and a setting unit that sets the upper limit value if the calculated sum exceeds an upper limit value; sets the lower limit value if the calculated sum is less than a lower limit value; and sets the calculated sum to be equal to or greater than the lower limit value and less than or equal to the upper limit value; 11. A control method characterized in that a control device repeats the following steps: a step of acquiring a physical quantity related to an observation object and a time derivative of the physical quantity related to the observation object; a step of calculating the sum of the acquired physical quantity and the product of the acquired time derivative and a prediction coefficient; and a step of setting the upper limit value if the calculated sum exceeds an upper limit value; setting the lower limit value if the calculated sum is less than a lower limit value; and setting the calculated sum to be equal to or greater than the lower limit value and equal to or less than the upper limit value as a target value of the physical quantity related to the control object.
Citation Information
Patent Citations
Control system, record system, information processor and method, program, and recording medium
JP2007276052A
Operation system and operation method
JP2022187925A
Remote control system, remote control method, and remote control program
WO2024013894A1