Control device and control method
The control device and method address the delay issue in input shaping control by adjusting commands in sections that satisfy constraints, ensuring compliance and reducing delay time to enhance throughput.
Patent Information
- Application Number
- JP2024079247
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-15
- Publication Date
- 2025-11-28
AI Technical Summary
Existing input shaping control methods cause delays and deviations from optimal design under constraint conditions due to the delay time introduced by input shaping control, leading to reduced throughput.
A control device and method that includes an input shaping control unit to reduce vibrations and a command correction unit to adjust the command in sections that satisfy constraint conditions, dividing the trajectory into multiple sections and correcting the command to shorten the delay time without violating the constraints.
The solution effectively reduces delay time caused by input shaping control while maintaining compliance with constraint conditions, thereby enhancing throughput without deviating from optimal design.
Smart Images

Figure 2025173627000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a control device and a control method for controlling the drive of a moving object so as to move it along a trajectory in response to a command. [Background technology]
[0002] There are known control devices or control methods that drive and control a moving object so that it moves along a trajectory in response to a command. For example, Patent Document 1 discloses such a control method, which generates an input to a system that minimizes undesirable dynamic characteristics.
[0003] The method of the patent document 1 includes determining an impulse sequence that eliminates vibrations at the natural frequencies of a dynamic system and superimposing the impulse sequence with an arbitrary command input. The method of the patent document 1 is suitable for shaping an arbitrary command input to a dynamic system so as to reduce vibrations at its end points. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent No. 3015396 Summary of the Invention [Problem to be solved by the invention]
[0005] In the method of Patent Document 1, vibrations caused by an impulse input are cancelled by applying a second impulse input half a cycle after the first vibration. This type of control method is known as input shaping control.
[0006] In the input shaping control, an input command is delayed by half a cycle of the vibration frequency, so applying the input shaping control can cause problems such as a decrease in throughput due to the delay time and deviation from the optimal design under constraint conditions.
[0007] To address this issue, it is conceivable to correct the command after the input shaping control, but this is not preferable because it affects the vibration reduction effect achieved by the input shaping control.
[0008] Therefore, there is a need for control that shortens the delay time caused by input shaping control so as not to deviate from the constraints.
[0009] An object of the present invention is to provide a control device or control method that reduces the delay time caused by input shaping control so as not to deviate from constraint conditions. [Means for solving the problem]
[0010] A control device according to one embodiment of the present invention is a device that drives and controls a moving object based on a command, and includes: an input shaping control unit that performs input shaping control on the command to reduce vibrations generated when the moving object moves; and a command correction unit that corrects the command in at least one section that satisfies a constraint condition for moving the moving object, among multiple sections obtained by dividing a trajectory that the moving object follows when driven and controlled based on an input shaping control command obtained by the input shaping control unit, so as to shorten at least a portion of a delay time in an input shaping trajectory that the moving object follows when driven and controlled based on the input shaping control command. (First Configuration)
[0011] In the above-described configuration, in order to reduce the delay time in the input shaping trajectory of the moving object, the command is corrected in at least one section that satisfies the constraint conditions among multiple sections obtained by dividing the trajectory when the moving object moves based on the command, thereby making it possible to reduce the delay time caused by the input shaping control without deviating from the constraint conditions.
[0012] In other words, even if the constraints are not satisfied in part of the input shaping trajectory of the moving object, by dividing the trajectory into multiple sections as described above and correcting the command in at least one section that satisfies the constraints, it is possible to shorten the delay time caused by input shaping control while still satisfying the constraints.
[0013] Therefore, it is possible to realize a control device that reduces the delay time caused by input shaping control so as not to deviate from the constraint conditions.
[0014] In the first configuration, the command correction unit adjusts the allocation of at least a portion of the delay time for at least one section among the plurality of sections that satisfies the constraint condition, and corrects the command so as to shorten the allocated and adjusted time (second configuration).
[0015] This allows the allocation of at least a portion of the delay time generated by input shaping control to be adjusted in at least some of the sections obtained by dividing the trajectory of the moving object that satisfy the constraint conditions, thereby more effectively shortening the delay time without deviating from the constraint conditions.
[0016] Therefore, it is possible to realize a control device that reduces the delay time caused by input shaping control so as not to deviate from the constraint conditions.
[0017] In the first configuration, the command correction unit corrects the command in the first correction to the command so as to shorten at least a portion of the delay time in all sections of the trajectory of the moving object, and if the input shaping trajectory of the moving object, which is drive-controlled based on the input shaping control command obtained by the input shaping control unit using the corrected command, does not satisfy the constraint condition, divides the trajectory of the moving object into multiple sections depending on whether the constraint condition is satisfied, and corrects the command so as to shorten a portion of the delay time in sections among the multiple divided sections that satisfy the constraint condition (third configuration).
[0018] As a result, the first command correction is made to shorten the delay time for the entire section of the trajectory of the moving object, and the subsequent command corrections are made to shorten part of the delay time for sections of the trajectory that satisfy the constraints, thereby making it possible to shorten the delay time more effectively without violating the constraints.
[0019] Therefore, it is possible to realize a control device that reduces the delay time caused by input shaping control so as not to deviate from the constraint conditions.
[0020] In the first configuration, the command correction unit repeatedly divides the input shaping trajectory of the moving object into sections depending on whether the input shaping trajectory satisfies the constraint conditions, and corrects the command so as to shorten part of the delay time in the sections that satisfy the constraint conditions, until the total time shortened reaches the delay time (fourth configuration).
[0021] As a result, the division of at least a portion of the trajectory of the moving object into sections and the correction of commands in sections that satisfy the constraints are repeated until the total time saved reaches the delay time caused by the input shaping control.
[0022] Therefore, it is possible to realize a control device that reduces the delay time caused by input shaping control so as not to deviate from the constraint conditions.
[0023] A control method according to one embodiment of the present invention is a method for driving and controlling a moving object in response to a command, the control method comprising: an input shaping control step of performing input shaping control on the command so as to reduce vibrations generated when the moving object moves; and a command correction step of correcting the command in at least one section that satisfies a constraint condition for moving the moving object, among a plurality of sections obtained by dividing a trajectory that the moving object follows when driven and controlled based on an input shaping control command obtained by the input shaping control step, so as to shorten at least a part of a delay time in an input shaping trajectory that the moving object follows when driven and controlled based on the input shaping control command moves (first method).
[0024] In the above-described method, the delay time in the input shaping trajectory of the moving object is shortened by correcting the command in at least one section that satisfies the constraint conditions among multiple sections obtained by dividing the trajectory when the moving object moves based on the command, thereby making it possible to shorten the delay time caused by input shaping control without deviating from the constraint conditions.
[0025] In other words, even if the constraints are not satisfied in part of the input shaping trajectory of the moving object, by dividing the trajectory into multiple sections as described above and correcting the command in at least one section that satisfies the constraints, it is possible to shorten the delay time caused by input shaping control while still satisfying the constraints.
[0026] Therefore, a control method can be realized that shortens the delay time caused by input shaping control so as not to deviate from the constraint conditions. [Effects of the Invention]
[0027] A control device according to one embodiment of the present invention comprises an input shaping control unit that performs input shaping control in response to a command so as to reduce vibrations that occur when the moving object moves, and a command correction unit that corrects the command in at least one section that satisfies constraint conditions among multiple sections obtained by dividing the trajectory of the moving object based on the command, so as to shorten the delay time in the input shaping trajectory of the moving object that is drive-controlled based on the input shaping control command obtained by the input shaping control unit.
[0028] A control method according to one embodiment of the present invention includes an input shaping control step of performing input shaping control on a command so as to reduce vibrations that occur when a moving object moves, and a command correction step of correcting the command in at least one section that satisfies constraint conditions among multiple sections obtained by dividing the trajectory of the moving object based on the command, so as to shorten at least a portion of the delay time in the input shaping trajectory of the moving object that is drive-controlled based on the input shaping control command obtained by the input shaping control step.
[0029] As a result, the command can be corrected to shorten the delay time caused by the input shaping control while satisfying the constraints, thereby realizing a control device or control method that shortens the delay time caused by the input shaping control without violating the constraints. [Brief explanation of the drawings]
[0030] [Figure 1] FIG. 1 is a functional block diagram showing a schematic configuration of a control device according to the first embodiment. [Figure 2] FIG. 2 is a diagram schematically showing a trajectory based on an original command and a trajectory based on a command after input shaping control. [Figure 3A] FIG. 3A is a diagram showing an example of a trajectory when a command is corrected using equation (1) so as to reduce the delay time. [Figure 3B] FIG. 3B is a diagram showing an example of a trajectory when the command is corrected by equation (2) so as to shorten the delay time. [Figure 4] FIG. 4 is a flowchart showing an outline of a correction method for shortening the delay time caused by input shaping control for a command. [Figure 5] FIG. 5 is a functional block diagram showing a schematic configuration of a control device according to the second embodiment. [Figure 6] FIG. 6 is a diagram schematically illustrating an example of the relationship between each trajectory and constraint conditions. [Figure 7] FIG. 7 is a flowchart showing an outline of a correction method for shortening a delay time that occurs due to input shaping control for a command. [Figure 8] FIG. 8 is a functional block diagram showing a schematic configuration of a control device according to the third embodiment. [Figure 9] FIG. 9 is a flowchart showing an outline of a correction method for shortening a delay time that occurs due to input shaping control for a command. [Figure 10] FIG. 10 is a functional block diagram showing a schematic configuration of a control device according to the fourth embodiment. [Figure 11] FIG. 11 is a flowchart showing an outline of a correction method for shortening a delay time that occurs due to input shaping control for a command. [Figure 12] FIG. 12 is a flowchart showing a method for adjusting the shortened time in a section that does not satisfy the constraint conditions. DETAILED DESCRIPTION OF THE INVENTION
[0031] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be described in detail below with reference to the accompanying drawings. In the drawings, the same or corresponding parts are designated by the same reference numerals and the description thereof will not be repeated.
[0032] [Embodiment 1] FIG. 1 is a functional block diagram showing a schematic configuration of a control device 1 according to a first embodiment of the present invention. The control device 1 controls the drive of a moving object M, such as the arm of an articulated robot, based on a command. The control device 1 performs input shaping control in response to the command and reduces delay time caused by the input shaping control. The control device 1 may be realized by, for example, a computing device such as a computer or a server, or by a device having a dedicated circuit formed therein.
[0033] The command is a command for driving and controlling the moving object M so that the moving object M moves along a predetermined trajectory. The command includes a position command or a speed command. The command is a command signal input to the control device 1.
[0034] The control device 1 controls the drive of the moving object M based on the command, thereby moving the moving object M. The control device 1 performs input shaping control on the command, and corrects the command so as to shorten the delay time caused by the input shaping control.
[0035] More specifically, the control device 1 includes an input shaping control unit 10 and a command correction unit 20.
[0036] The input shaping control unit 10 performs input shaping control on the command. Input shaping control is a well-known method, as disclosed in, for example, Japanese Patent No. 3015396, and therefore detailed description will be omitted. However, the input shaping control cancels vibrations generated by an impulse input by adding a second impulse input half a cycle after the vibration. However, since the input shaping control delays the command by half a cycle of the vibration frequency, problems arise in that the delay reduces throughput and deviates from the optimal design under constraint conditions.
[0037] The trajectory based on the original command and the trajectory based on the command after input shaping control (input shaping control command) are shown in Figure 2. As shown in Figure 2, the completion time Zb based on the command after input shaping control has a delay of ΔT from the completion time Za based on the original command.
[0038] The command correction unit 20 corrects the command so as to shorten the delay time ΔT that occurs due to the input shaping control of the command by the input shaping control unit 10.
[0039] Fig. 3A is a diagram showing an example of a trajectory when a command is corrected using equation (1) to shorten the delay time. In Fig. 3A, by correcting the delay time ΔT that occurs in the position command due to input shaping control using the following equation (1), the delay time can be shortened relative to the trajectory (thin dashed line) based on the original position command, as shown by the thick solid line. r´(t)=r(t)+C(t) C(t)=t / (T-ΔT)×Δp (1)
[0040] Here, t is an arbitrary time. r(t) is the trajectory based on the original position command. r'(t) is the trajectory based on the corrected position command. T is the operation time from the start time to the completion time based on the original position command. Δp is the difference between the target position at an arbitrary time and the target position at the time before that time that you want to shorten.
[0041] FIG. 3B shows an example of a trajectory when the command is corrected using equation (2) to shorten the delay time. In FIG. 3B, by correcting the delay time ΔT that occurs in the position command due to input shaping control using the following equation (2), the delay time can be shortened relative to the trajectory (thin dashed line) based on the original position command, as shown by the thick solid line. Note that equation (2) takes linear interpolation into account because the command update period is a discrete system. Equation (3) is a theoretical equation. r´(t)=r([t´])×Ts +{r([t´]×Ts+Ts)-r([t´]×Ts)}×t´mod1) (2) Here, t´=t×T / (T-ΔT) / Ts r´(t)=r(t×T / (T-ΔT)) (3)
[0042] Here, Ts is the command period. [ ] is the Gauss symbol. In the example shown in FIG. 3B, the position command is corrected taking linear interpolation into consideration, but the position command may also be corrected by interpolating using an arbitrary polynomial.
[0043] The command corrector 20 corrects the original command so as to shorten at least a part of the delay time ΔT in at least a part of the trajectory (hereinafter referred to as the input shaping trajectory) that the moving object M describes when it moves in accordance with the command obtained by the input shaping control (input shaping control command). For example, when the trajectory is divided into a plurality of sections, the command corrector 20 corrects the original command so as to shorten at least a part of the delay time ΔT in at least one section.
[0044] The command corrector 20 includes a calculator 21, a trajectory generator 22, a section divider 23, and a constraint condition determiner 24.
[0045] The calculation unit 21 calculates the frequency and damping rate of the vibration of the moving object M, and also calculates the delay time ΔT. That is, the calculation unit 21 calculates a value required to correct the command so as to shorten the delay time ΔT generated by the input shaping control. The frequency and damping rate are used to calculate the delay time ΔT.
[0046] The trajectory generation unit 22 calculates a trajectory when the moving object M is moved, and generates a trajectory graph or a relational expression, etc., as shown in Figures 2 and 3 (hereinafter simply referred to as trajectory generation). Specifically, the trajectory generation unit 22 generates a trajectory according to the command, and also generates a trajectory (input shaping trajectory) according to a command obtained by performing input shaping control on the command. The trajectory generation unit 22 also generates a trajectory (corrected trajectory) according to a command obtained by correcting the command (corrected command, described later).
[0047] The section dividing unit 23 divides the trajectory of the moving object M into sections for correcting the command. The section dividing unit 23 divides the trajectory into a plurality of sections so as to exclude sections of the trajectory that do not satisfy constraint conditions determined by the constraint condition determining unit 24, which will be described later. Note that if there is no section of the trajectory that does not satisfy constraint conditions determined by the constraint condition determining unit 24, the section dividing unit 23 does not divide the trajectory.
[0048] The trajectory generating unit 22 allocates a part of the delay time ΔT to the sections divided by the section dividing unit 23. For example, the trajectory generating unit 22 allocates a time to be reduced (hereinafter referred to as a reduced time) to each section so that the sum of the times allocated to each section becomes the delay time ΔT. The trajectory generating unit 22 generates a correction command for the command so as to reduce each section by the reduced time.
[0049] The trajectory generation unit 22 generates a trajectory after correction (hereinafter referred to as a corrected trajectory) based on the correction command corresponding to the shortened time allocated to each section. The corrected trajectory generated by the trajectory generation unit 22 is subjected to input shaping control by the input shaping control unit 10. The trajectory generation unit 22 generates a trajectory (hereinafter referred to as an input shaping trajectory) based on data after input shaping control.
[0050] The constraint condition determination unit 24 determines whether the input shaping trajectory satisfies the constraint conditions. The constraint conditions include, for example, the speed, acceleration, torque, rotation angle of the moving object, and the maximum speed of the driving source (such as a motor). If the input shaping trajectory does not satisfy the constraint conditions, the constraint condition determination unit 24 generates and outputs a reset command. When the reset command is output, the interval division unit 23 re-divides the intervals, and the trajectory generation unit 22 resets the shortened times for those intervals to generate a corrected trajectory.
[0051] FIG. 4 is a flowchart showing an outline of a correction method for shortening the delay time ΔT caused by input shaping control for the command, by the control device 1 having the above-described configuration.
[0052] 4 starts (START), first, in step SA1, the calculation unit 21 calculates the frequency and damping rate of vibration. In the subsequent step SA2, the calculation unit 21 uses the calculated frequency etc. to calculate the delay time ΔT due to input shaping control.
[0053] In step SA3, the trajectory generating unit 22 generates a trajectory when moving the moving object M, and the section dividing unit 23 divides the trajectory into sections for correcting the command. Note that the section dividing unit 23 may divide the trajectory into predetermined sections at first, or may not divide it into multiple sections.
[0054] In step SA3, the trajectory generating unit 22 generates a correction command to shorten the time corresponding to the section for which the command is to be corrected. The shortened time is preferably set so that the total time in the section is equal to the delay time ΔT.
[0055] In the next step SA4, the trajectory generation unit 22 generates a corrected trajectory based on the correction command. The input shaping control unit 10 performs input shaping control on the corrected trajectory. The trajectory generation unit 22 generates an input shaping trajectory based on data after the input shaping control.
[0056] In step SA5, the constraint condition determination unit 24 determines whether the input shaping trajectory satisfies the constraint conditions. If the input shaping trajectory satisfies the constraint conditions (YES in step SA5), this flow ends (END). On the other hand, if the input shaping trajectory does not satisfy the constraint conditions (NO in step SA5), the process returns to step SA3, where the interval division unit 23 resets the interval for correcting the command, and the trajectory generation unit 22 resets the shortened time in the interval.
[0057] Here, step SA4 corresponds to the input shaping control step, and step SA3 corresponds to the command correction step.
[0058] The control device 1 of this embodiment is a device that drives and controls a moving object M based on a command. The control device 1 includes an input shaping control unit 10 that performs input shaping control on the command so as to reduce vibrations that occur when the moving object M moves, and a command correction unit 20 that corrects the command in at least one section that satisfies constraints for moving the moving object M out of multiple sections obtained by dividing a trajectory that the moving object M traces when it moves based on the input shaping control command obtained by the input shaping control unit 10, so as to shorten at least a part of the delay time in the input shaping trajectory that the moving object M traces when it moves, the input shaping control command being obtained by the input shaping control unit 10.
[0059] Furthermore, the control method according to this embodiment is a method for controlling the drive of a moving object M based on a command. The control method includes an input shaping control step SA4 for performing input shaping control on the command so as to reduce vibrations occurring when the moving object M moves, and a command correction step SA3 for correcting the command in at least one section that satisfies constraints for moving the moving object M among a plurality of sections obtained by dividing a trajectory that the moving object M follows when it moves based on the command, so as to shorten at least a part of a delay time in an input shaping trajectory that the moving object M follows when it moves, the input shaping control command being obtained in the input shaping control step SA4.
[0060] In the above-described configuration, the delay time ΔT in the trajectory of the moving object M, which is drive-controlled based on the input shaping control command obtained by the input shaping control unit 10, is shortened by correcting the command in at least one section that satisfies the constraint conditions among the multiple sections obtained by dividing the trajectory of the moving object M, thereby making it possible to shorten the delay time caused by the input shaping control without deviating from the constraint conditions.
[0061] In other words, even if the constraint conditions are not satisfied in part of the input shaping trajectory of the moving object M, by dividing the trajectory into multiple sections as described above and correcting the command in at least one section that satisfies the constraint conditions, it is possible to shorten the delay time caused by input shaping control while still satisfying the constraint conditions.
[0062] Therefore, it is possible to realize a control device 1 or a control method that reduces the delay time caused by input shaping control so as not to deviate from the constraint conditions.
[0063] [Embodiment 2] 5 is a functional block diagram showing a schematic configuration of a control device 100 according to the second embodiment. The control device 100 differs from the control device 1 of the first embodiment in that the control device 100 gradually corrects the delay time ΔT in response to a command. In the following, the same components as those in the first embodiment are denoted by the same reference numerals and their description will be omitted, and only the parts that differ from the first embodiment will be described.
[0064] The control device 100 includes an input shaping control unit 10 and a command correction unit 120. The command correction unit 120 corrects a command to shorten a portion of the delay time ΔT generated by input shaping control as a shortening time, thereby generating a corrected trajectory, and determines whether the input shaping trajectory obtained from the corrected trajectory satisfies the constraint conditions. If the constraint conditions are not satisfied, the command correction unit 120 divides the trajectory of the moving object M into sections that satisfy the constraint conditions and sections that do not, and corrects a command to shorten the shortening time in the sections that satisfy the constraint conditions, thereby generating a corrected trajectory. The command correction unit 120 repeats the above process until the total shortening time becomes equal to the delay time ΔT or until there are no more sections that can be corrected.
[0065] More specifically, the command corrector 120 includes a calculator 21, a trajectory generator 122, an interval divider 123, and a constraint condition determiner 24.
[0066] The trajectory generator 122 generates a corrected trajectory by correcting a command so as to shorten a part of the delay time ΔT generated by the input shaping control as a shortening time. The shortening time is, for example, 1 / N of the delay time ΔT. The shortening time does not have to be a value obtained by equally dividing the delay time ΔT, as long as it is a part of the delay time ΔT.
[0067] Even when section division is performed by the section division unit 123 described later, the trajectory generation unit 122 allocates the shortened time to the divided sections, corrects the command so that the allocated amount of time is also shortened, and generates a corrected trajectory.
[0068] The corrected trajectory generated by the trajectory generation unit 122 is subjected to input shaping control by the input shaping control unit 10, as in the first embodiment. The trajectory generation unit 122 generates an input shaping trajectory based on data after input shaping control.
[0069] The section dividing unit 123 divides a section in which the command is to be corrected in the trajectory of the moving object M. The section dividing unit 123 divides at least a part of the trajectory (the section to be corrected) into a section determined by a constraint condition determining unit 24 (described later) to satisfy a constraint condition and a section determined to not satisfy the constraint condition. The section dividing unit 123 may further divide the section determined to satisfy the constraint condition into a plurality of sections.
[0070] The constraint condition determination unit 24 generates and outputs a reset command when the input shaping trajectory generated by the trajectory generation unit 122 does not satisfy the constraint condition. When the reset command is output, the section division unit 123 divides the section to be corrected in the trajectory of the moving object M into a section that satisfies the constraint condition and a section that does not satisfy the constraint condition.
[0071] The trajectory generation unit 122 calculates the reduction time allocated to the section that satisfies the constraint condition (hereinafter referred to as the allocated reduction time) by multiplying the reduction time (e.g., ΔT / N) by the ratio of the time of the section that satisfies the constraint condition to the entire time of the trajectory. The trajectory generation unit 122 corrects the command so as to reduce the delay time by the allocated reduction time in the section that satisfies the constraint condition, thereby generating a corrected trajectory.
[0072] The trajectory generation unit 122 adjusts the allocated reduction time according to the time of each section in the sections that satisfy the constraints so that the total time to be reduced becomes the reduced time (for example, ΔT / N). The trajectory generation unit 122 corrects the command to reduce the delay time by the adjusted allocated reduction time, thereby generating a corrected trajectory. Note that, as described above, determining the allocated reduction time and adjusting the allocated reduction time corresponds to adjusting the allocation of at least a portion of the delay time ΔT.
[0073] Fig. 7 is a flowchart showing an outline of a correction method for shortening the delay time ΔT generated by input shaping control for the command by the control device 100 having the above configuration. Fig. 6 is a diagram showing a schematic example of the relationship between each trajectory and constraint conditions.
[0074] 7 starts (START), in steps SB1 and SB2, the calculation unit 21 calculates the delay time ΔT due to input shaping control using the vibration frequency, etc., as in embodiment 1. Steps SB1 and SB2 are the same as steps SA1 and SA2 in embodiment 1.
[0075] In the next step SB3, as shown in Fig. 6(a), the trajectory generation unit 122 generates a corrected trajectory with ΔT / N as the shortened time. N is an arbitrary number. The shortened time for one correction in response to a command is determined by N.
[0076] In step SB4, the input shaping control unit 10 performs input shaping control on the corrected trajectory. As shown in Fig. 6(b), the trajectory generation unit 122 generates an input shaping trajectory based on the data after the input shaping control.
[0077] In the next step SB5, the constraint condition determination unit 24 determines whether the input shaping trajectory satisfies the constraint conditions. In Fig. 6, the values of the constraint conditions are schematically shown below the trajectory, and the upper limit of the constraint conditions is schematically represented as L.
[0078] Steps SB4 and SB5 are the same as steps SA4 and SA5 in the first embodiment.
[0079] If the input shaping trajectory satisfies the constraints (YES in step SB5), proceed to step SB6 to determine whether the total shortened time is equal to or greater than the delay time ΔT. On the other hand, if the input shaping trajectory does not satisfy the constraints (NO in step SB5), proceed to step SB7 and subsequent steps. In the example shown in FIG. 6(b), the constraints exceed the upper limit value L.
[0080] If it is determined in step SB6 that the total time reduction is equal to or greater than the delay time ΔT (YES in step SB6), this flow ends (END). On the other hand, if it is determined that the total time reduction is not equal to or greater than the delay time ΔT (NO in step SB6), the flow proceeds to step SB10, which will be described later.
[0081] In step SB7, the constraint condition determination unit 24 determines whether the constraint conditions are not satisfied in the entire section of the input shaping trajectory. If it is determined that the constraint conditions are not satisfied in the entire section (YES in step SB7), the command cannot be corrected due to the constraint conditions, and this flow is ended (END).
[0082] On the other hand, if it is determined that at least a portion of the input shaping trajectory satisfies the constraint (NO in step SB7), the process proceeds to step SB8, where the section dividing unit 123 divides the immediately preceding pre-correction trajectory into sections that satisfy the constraint and sections that do not. In the following step SB9, the trajectory generating unit 122 generates a corrected trajectory by multiplying ΔT / N by the ratio of the time of the satisfying section to the entire time of the trajectory (hereinafter referred to as the section ratio) for the section that satisfies the constraint, as the shortened time.
[0083] Figure 6(c) shows an example of dividing the immediately preceding pre-correction trajectory into a section that satisfies the constraint and a section that does not. Figure 6(c) shows the constraint value when the input shaping trajectory does not satisfy the constraint with a dashed line. In Figure 6(c), the section of the immediately preceding pre-correction trajectory that corresponds to the section of the input shaping trajectory that does not satisfy the constraint is designated II. The sections of the immediately preceding pre-correction trajectory that correspond to the section of the input shaping trajectory that satisfies the constraint are designated I and III.
[0084] The trajectory generation unit 122 generates a corrected trajectory by multiplying ΔT / N by the ratio of the section as the shortened time in sections I and III. In section II, no correction for shortening the command time is performed.
[0085] Then, in step SB10, the trajectory generation unit 122 allocates the missing time (remaining time) to each section that satisfies the constraint conditions in proportion to the time of each section, so that the shortened time for the entire section that satisfies the constraint conditions becomes ΔT / N, thereby generating a corrected trajectory.
[0086] An example of the corrected trajectory generated in step SB10 is shown in Fig. 6(d). In the example shown in Fig. 6(d), the time to be reduced in section II is distributed to sections I and III in proportion to the times of these sections so that the total time reduction for sections I and III is ΔT / N. This determines the time to be reduced for sections I and III. The trajectory generation unit 122 corrects the command so as to reduce the time by the determined amount, thereby generating a corrected trajectory.
[0087] In the following step SB11, the input shaping control unit 10 performs input shaping control on the corrected trajectory. The trajectory generation unit 122 generates an input shaping trajectory based on the data after the input shaping control, as shown in Fig. 6(e).
[0088] In step SB12, the constraint condition determination unit 24 determines whether the input shaping trajectory satisfies the constraint conditions. If the input shaping trajectory satisfies the constraint conditions (YES in step SB12), the process proceeds to step SB6, where it is determined whether the total shortened time is equal to or greater than the delay time ΔT. In the example shown in FIG. 6(e), the input shaping trajectory satisfies the constraint conditions. On the other hand, if the input shaping trajectory does not satisfy the constraint conditions (NO in step SB12), the process proceeds to step SB13.
[0089] In step SB13, it is determined whether the entire section of the corrected trajectory does not satisfy the constraint conditions. If it is determined that the entire section of the corrected trajectory does not satisfy the constraint conditions (YES in step SB13), the command cannot be corrected due to the constraint conditions, so this flow is ended (END).
[0090] On the other hand, if it is determined that at least a part of the section of the corrected trajectory satisfies the constraint condition (NO in step SB13), the process proceeds to step SB8, where the section dividing unit 123 divides the section to be corrected in the corrected trajectory into a section that satisfies the constraint condition and a section that does not. After that, the flow is the same as that from step SB9 onwards.
[0091] The correction process, an example of which is shown in FIG. 6, is performed according to the above-described flow until the total shortened time is equal to or greater than the delay time ΔT or until it is determined that the entire section of the corrected trajectory does not satisfy the constraint conditions.
[0092] Here, steps SB4 and SB11 correspond to the input shaping control step, and steps SB3, SB9, and SB10 correspond to the command correction step.
[0093] With the configuration of this embodiment, the amount of correction for the command can be maximized within the range that satisfies the constraints. Therefore, the delay time ΔT can be further reduced. Furthermore, when ΔT / N is the reduction time, the balance between the reduction time of the delay time ΔT and the calculation processing time can be easily adjusted by setting the value of N.
[0094] In this embodiment, the command correction unit 120 adjusts the allocation of at least a portion of the delay time ΔT for at least some of the multiple sections that satisfy the constraint conditions, and corrects the command so as to shorten the allocated and adjusted time.
[0095] This allows the allocation of at least a portion of the delay time ΔT generated by input shaping control to be adjusted in at least some of the sections obtained by dividing the trajectory of the moving object M that satisfy the constraint conditions, thereby more effectively shortening the delay time ΔT without violating the constraint conditions.
[0096] Therefore, it is possible to realize a control device 100 that reduces the delay time ΔT that occurs due to input shaping control so as not to deviate from the constraint conditions.
[0097] In this embodiment, the command correction unit 120 corrects the command in the first correction to shorten at least a portion of the delay time ΔT in all sections of the trajectory of the moving object M, and if the input shaping trajectory of the moving object M, which is driven and controlled based on the input shaping control command obtained by the input shaping control unit 10 using the corrected command, does not satisfy the constraint condition, divides the trajectory of the moving object M into multiple sections depending on whether the constraint condition is satisfied, and corrects the command so as to shorten a portion of the delay time in sections among the multiple divided sections that satisfy the constraint condition.
[0098] As a result, the first position command correction is performed so as to shorten part of the delay time ΔT for all sections of the trajectory of the moving object M, and subsequent command corrections are performed so as to shorten part of the delay time ΔT for sections of the trajectory that satisfy the constraints. Therefore, the delay time ΔT can be shortened more effectively without departing from the constraints.
[0099] In this embodiment, the command correction unit 120 repeatedly divides the input shaping trajectory of the moving object M into sections depending on whether the input shaping trajectory satisfies the constraint conditions, and corrects the command so as to shorten part of the delay time ΔT in the sections that satisfy the constraint conditions, until the total shortened time reaches the delay time ΔT.
[0100] As a result, the division of sections in at least a part of the trajectory of the moving object M and the correction of commands in sections that satisfy the constraints are repeated until the total time saved reaches the delay time ΔT caused by the input shaping control.
[0101] Therefore, it is possible to realize a control device 100 that reduces the delay time ΔT that occurs due to input shaping control so as not to deviate from the constraint conditions.
[0102] [Embodiment 3] 8 is a functional block diagram showing the schematic configuration of a control device 200 according to the third embodiment. The control device 200 differs from the control device 100 according to the second embodiment in that, without dividing the trajectory into sections, the control device 200 performs a correction to shorten the delay time ΔT in response to a command, and then performs a time-shortening correction in sections where the input shaping trajectory satisfies the constraints. In the following, the same components as those in the second embodiment are denoted by the same reference numerals and their description will be omitted, and only the parts that differ from the second embodiment will be described.
[0103] The control device 200 includes an input shaping control unit 10 and a command correction unit 220. The command correction unit 220 corrects a command to shorten a delay time ΔT caused by input shaping control, generates a corrected trajectory, and determines whether the input shaping trajectory obtained from the corrected trajectory satisfies the constraint conditions. If the constraint conditions are not satisfied, the command correction unit 220 divides the trajectory of the moving object M into a section that satisfies the constraint conditions and a section that does not, sets a shortening time in the satisfying section so that the delay time becomes ΔT, and corrects the command according to the shortening time to generate the corrected trajectory. The command correction unit 220 repeats the above process until the input shaping trajectory obtained using the corrected trajectory satisfies the constraint conditions or until there are no more sections in the corrected trajectory that can be corrected.
[0104] More specifically, the command corrector 220 includes a calculator 21, a trajectory generator 222, an interval divider 223, and a constraint condition determiner 24.
[0105] The trajectory generator 222 corrects the command so as to reduce the delay time ΔT caused by the input shaping control, and generates a corrected trajectory.
[0106] Even when section division is performed by the section division unit 223 described later, the trajectory generation unit 222 allocates a portion of the delay time ΔT to the divided section, corrects the command so as to shorten the allocated amount of time, and generates a corrected trajectory.
[0107] The corrected trajectory generated by the trajectory generation unit 222 is subjected to input shaping control by the input shaping control unit 10, as in the first embodiment. The trajectory generation unit 222 generates an input shaping trajectory based on data after input shaping control.
[0108] The section dividing unit 223 divides the trajectory of the moving object M into sections for correcting the command. The section dividing unit 223 divides the trajectory into sections that satisfy constraint conditions and sections that do not satisfy constraint conditions determined by the constraint condition determining unit 24, which will be described later. The section dividing unit 223 may divide the satisfying section into a plurality of sections.
[0109] The constraint condition determination unit 24 generates and outputs a reset command when the input shaping trajectory generated by the trajectory generation unit 222 does not satisfy the constraint condition. When the reset command is output, the section division unit 223 divides the trajectory of the moving object M into a section that satisfies the constraint condition and a section that does not satisfy the constraint condition.
[0110] The trajectory generation unit 222 calculates the reduction time allocated to the section that satisfies the constraint condition (hereinafter referred to as the allocated reduction time) by multiplying the delay time ΔT by the ratio of the time of the section that satisfies the constraint condition to the entire time of the trajectory. The trajectory generation unit 222 corrects the command so as to reduce the delay time by the allocated reduction time in the section that satisfies the constraint condition, and generates a corrected trajectory.
[0111] The trajectory generation unit 222 adjusts the allocated reduction time according to the time of each section in the sections that satisfy the constraints so that the total time to be reduced becomes the delay time ΔT. The trajectory generation unit 222 corrects the command to reduce the delay time ΔT by the adjusted allocated reduction time, thereby generating a corrected trajectory. Note that, as described above, determining the allocated reduction time and adjusting the allocated reduction time corresponds to adjusting the allocation of at least a portion of the delay time ΔT.
[0112] FIG. 9 is a flowchart showing an outline of a correction method for shortening the delay time caused by input shaping control of the command by the control device 200 having the above-described configuration.
[0113] 9 starts (START), in steps SC1 and SC2, the calculation unit 21 calculates the delay time ΔT due to input shaping control using the vibration frequency, etc., as in embodiments 1 and 2. Steps SC1 and SC2 are the same as steps SA1 and SA2 in embodiment 1.
[0114] In the following step SC3, the trajectory generating unit 222 generates a corrected trajectory with ΔT as the shortened time.
[0115] In step SC4, the input shaping control unit 10 performs input shaping control on the corrected trajectory. The trajectory generation unit 222 generates an input shaping trajectory based on the data after the input shaping control.
[0116] In the following step SC5, the constraint condition determining unit 24 determines whether the input shaping trajectory satisfies the constraint conditions.
[0117] Steps SC4 and SC5 are the same as steps SA4 and SA5 in the first embodiment.
[0118] If the input shaping trajectory satisfies the constraints (YES in step SC5), this flow ends (END). On the other hand, if the input shaping trajectory does not satisfy the constraints (NO in step SC5), the flow proceeds to step SC6 and subsequent steps.
[0119] In step SC6, it is determined whether the constraints are not satisfied over the entire section of the input shaping trajectory. If it is determined that the constraints are not satisfied over the entire section of the input shaping trajectory (YES in step SC6), the command cannot be corrected due to the constraints, so this flow is ended (END). Step SC6 is the same as step SB7 in embodiment 2.
[0120] On the other hand, if it is determined that at least a portion of the section of the input shaping trajectory satisfies the constraint condition (NO in step SC6), the process proceeds to step SC7, where the section dividing unit 223 divides the immediately preceding pre-correction trajectory into sections that satisfy the constraint condition and sections that do not. Step SC7 is the same as step SB8 in embodiment 2. In the subsequent step SC8, the trajectory generating unit 222 generates a corrected trajectory by multiplying ΔT by the ratio of the time of the satisfying section to the entire time of the trajectory (hereinafter referred to as the section ratio) for the section that satisfies the constraint condition, as the shortened time.
[0121] Then, in step SC9, the trajectory generation unit 222 allocates the missing time (remaining time) to each section that satisfies the constraint conditions in proportion to the length of each section so that the shortened time for the entire section that satisfies the constraint conditions is ΔT, and generates a corrected trajectory by setting it as the shortened time for each section.
[0122] In the following step SC10, the input shaping control unit 10 performs input shaping control on the corrected trajectory. The trajectory generation unit 222 generates an input shaping trajectory based on the data after the input shaping control. Step SC10 is the same as step SB11 in the second embodiment.
[0123] In step SC11, the constraint condition determination unit 24 determines whether the input shaping trajectory satisfies the constraint conditions. If the input shaping trajectory satisfies the constraint conditions (YES in step SC11), this flow ends (END). On the other hand, if the input shaping trajectory does not satisfy the constraint conditions (NO in step SC11), the flow proceeds to step SC12.
[0124] In step SC12, it is determined whether the entire section of the corrected trajectory does not satisfy the constraint conditions. If it is determined that the entire section of the corrected trajectory does not satisfy the constraint conditions (YES in step SC12), the command cannot be corrected due to the constraint conditions, so this flow is ended (END).
[0125] On the other hand, if it is determined that at least a part of the section of the corrected trajectory satisfies the constraint condition (NO in step SC12), the process proceeds to step SC7, where the section dividing unit 223 divides the corrected trajectory into sections that satisfy the constraint condition and sections that do not. After that, the flow is the same as that from step SC8 onwards.
[0126] Steps SC11 and SC12 are the same as steps SB12 and SB13 in the second embodiment.
[0127] Here, steps SC4 and SC10 correspond to the input shaping control step, and steps SC3, SC8 and SC9 correspond to the command correction step.
[0128] In this embodiment, the command correction unit 220 also adjusts the allocation of at least a portion of the delay time for at least some of the multiple sections that satisfy the constraint conditions, and corrects the command so as to shorten the allocated and adjusted time.
[0129] The configuration of this embodiment does not require the setting of initial conditions for correction, etc. Therefore, the command can be easily corrected to shorten the delay time ΔT caused by the input shaping control. Therefore, the delay time ΔT caused by the input shaping control can be easily shortened without violating the constraints.
[0130] [Embodiment 4] 10 is a functional block diagram showing the schematic configuration of a control device 300 according to the fourth embodiment. The control device 300 differs from the control device 100 according to the second embodiment in that it divides the trajectory into equal intervals, into sections that satisfy constraint conditions and sections that do not, and adjusts the time reduction in the sections that do not satisfy the constraint conditions. In the following, the same components as those in the second embodiment are denoted by the same reference numerals and their description is omitted, and only the parts that differ from the second embodiment will be described.
[0131] The control device 300 includes an input shaping control unit 10 and a command corrector 320. The command corrector 320 corrects commands for each equally spaced section of the trajectory of the moving object M to reduce the delay time ΔT caused by input shaping control, generates a corrected trajectory, and determines whether the input shaping trajectory obtained from the corrected trajectory satisfies the constraint conditions. If the constraint conditions are not satisfied, the command corrector 320 divides each section into sections that satisfy the constraint conditions and sections that do not. Furthermore, the command corrector 320 adjusts the shortening time for the sections that do not satisfy the constraint conditions so that the constraint conditions are satisfied, while for the sections that satisfy the constraint conditions, the command corrector 320 sets a shortening time proportional to the section time so that the shortening time for the entire trajectory becomes the delay time ΔT. The command corrector 320 then generates a corrected trajectory based on the shortening time. The command corrector 320 repeats the above process until the input shaping trajectory obtained using the corrected trajectory satisfies the constraints or until there is no longer any section in the corrected trajectory that can be corrected.
[0132] More specifically, the command corrector 320 includes a calculator 21, a trajectory generator 322, an interval divider 323, and a constraint condition determiner 24.
[0133] The trajectory generation unit 322 divides the trajectory of the moving object M into a plurality of sections (for example, N in this embodiment) at equal intervals, corrects the command for each section so that the delay time ΔT generated by the input shaping control is reduced to ΔT / N, which is the reduction time divided by the number N of the plurality of sections, and generates a corrected trajectory.
[0134] Even when section division is performed by the section division unit 323 described later, the trajectory generation unit 322 allocates the shortened time to the divided sections, corrects the command so as to shorten the delay time by the allocated amount, and generates a corrected trajectory.
[0135] The corrected trajectory generated by the trajectory generation unit 322 is subjected to input shaping control by the input shaping control unit 10, as in the first embodiment. The trajectory generation unit 322 generates an input shaping trajectory based on data after input shaping control.
[0136] The section dividing unit 323 divides the trajectory of the moving object M into a plurality of sections. The section dividing unit 323 divides the sections into sections that satisfy the constraint conditions and sections that do not satisfy the constraint conditions by the constraint condition determination unit 24 described later. The section dividing unit 323 may divide the section that satisfies the constraint conditions into a plurality of sections. The section dividing unit 323 may divide the section that does not satisfy the constraint conditions into a plurality of sections.
[0137] The constraint condition determination unit 24 generates and outputs a reset command when the input shaping trajectory generated by the trajectory generation unit 322 does not satisfy the constraint condition. When the reset command is output, the section division unit 323 divides the section into a section that satisfies the constraint condition and a section that does not satisfy the constraint condition.
[0138] For sections that do not satisfy the constraints, the trajectory generation unit 322 reduces the shortened time until the constraints are satisfied, while for sections that satisfy the constraints, the shortened time is proportional to the time of each section so that the delay time becomes ΔT over the entire trajectory.The trajectory generation unit 322 then corrects the commands to shorten those sections by the shortened time, thereby generating a corrected trajectory.
[0139] FIG. 11 is a flowchart showing an outline of a correction method for shortening the delay time ΔT caused by input shaping control for the command, by the control device 300 having the above-described configuration.
[0140] 11 starts (START), in steps SD1 and SD2, the calculation unit 21 calculates the delay time ΔT due to input shaping control using the vibration frequency, etc., as in embodiments 1 to 3. Steps SD1 and SD2 are the same as steps SA1 and SA2 in embodiment 1.
[0141] In the next step SD3, the trajectory generation unit 322 divides the trajectory of the moving object M at equal intervals, and generates a corrected trajectory by setting ΔT / N as the shortened time in each divided section.
[0142] In step SD4, the input shaping control unit 10 performs input shaping control on the corrected trajectory. The trajectory generation unit 322 generates an input shaping trajectory based on the data after the input shaping control.
[0143] In the following step SD5, the constraint condition determination unit 24 determines whether the input shaping trajectory satisfies the constraint conditions.
[0144] Steps SD4 and SD5 are the same as steps SA4 and SA5 in the first embodiment.
[0145] If the input shaping trajectory satisfies the constraints (YES in step SD5), this flow ends (END). On the other hand, if the input shaping trajectory does not satisfy the constraints (NO in step SD5), the flow proceeds to step SD6 and subsequent steps.
[0146] In step SD6, it is determined whether the constraints are not satisfied over the entire section of the input shaping trajectory. If it is determined that the constraints are not satisfied over the entire section of the input shaping trajectory (YES in step SD6), the command cannot be corrected due to the constraints, so this flow is ended (END). Step SD6 is the same as step SB7 in embodiment 2.
[0147] On the other hand, if it is determined that at least some sections of the input shaping trajectory satisfy the constraints (NO in step SD6), the process proceeds to step SD7, where the section dividing unit 323 divides each section of the corrected trajectory into sections that satisfy the constraints and sections that do not. In the following step SD8, the trajectory generating unit 322 multiplies ΔT / N by the ratio of the time of each section to the time of the section (hereinafter referred to as the section ratio) for the sections that satisfy the constraints and the sections that do not satisfy the constraints, and determines the obtained time as the shortened time.
[0148] Then, in step SD9, the trajectory generation unit 322 adjusts the shortened time for the sections that do not satisfy the constraints. This adjustment of the shortened time will be described later. In the following step SD10, the trajectory generation unit 322 generates a corrected trajectory by allocating the missing time (remaining time) for the sections that satisfy the constraints in proportion to the time of each section so that the overall shortened time of the trajectory becomes ΔT.
[0149] In the following step SD11, the input shaping control unit 10 performs input shaping control on the corrected trajectory. The trajectory generation unit 322 generates an input shaping trajectory based on the data after the input shaping control. Step SD11 is the same as step SB11 in the second embodiment.
[0150] In step SD12, the constraint condition determination unit 24 determines whether the input shaping trajectory satisfies the constraint conditions. If the input shaping trajectory satisfies the constraint conditions (YES in step SD12), this flow ends (END). On the other hand, if the input shaping trajectory does not satisfy the constraint conditions (NO in step SD12), the flow proceeds to step SD13.
[0151] In step SD13, it is determined whether the entire section of the corrected trajectory does not satisfy the constraints. If it is determined that the entire section of the corrected trajectory does not satisfy the constraints (YES in step SD13), the command cannot be corrected due to the constraints, so this flow is ended (END).
[0152] On the other hand, if it is determined that at least a part of the corrected trajectory satisfies the constraint condition (NO in step SD13), the process proceeds to step SD7, where the section dividing unit 323 divides the corrected trajectory into sections that satisfy the constraint condition and sections that do not. After that, the process is the same as the flow from step SD8 onwards.
[0153] Step SD12 is the same as step SB12 in the second embodiment.
[0154] Here, steps SD4 and SD11 correspond to input shaping control steps, and steps SD3, SD9 and SD10 correspond to command correction steps.
[0155] (Time reduction adjustment for sections that do not satisfy constraints) Next, the shortened time adjustment in step SD9 of the above flow will be described with reference to FIG.
[0156] 12 starts, first, in step D1, the trajectory generation unit 322 sets the sections that do not satisfy the constraint conditions to section 1, section 2, ..., section n in chronological order. In the following step D2, the trajectory generation unit 322 sets k, which indicates the number of the section that does not satisfy the constraint conditions, to 1. In step D3, the trajectory generation unit 322 reduces the shortened time by ΔT / Q in section k that does not satisfy the constraint conditions, to generate a corrected trajectory. Q is a constant that specifies the amount by which the shortened time is reduced, and is set as appropriate.
[0157] In the following step D4, the input shaping control unit 10 performs input shaping control on the corrected trajectory. The trajectory generation unit 322 generates an input shaping trajectory based on the data after the input shaping control.
[0158] Then, in step D5, it is determined whether the input shaping trajectory satisfies the constraint in section k. If it is determined that the input shaping trajectory satisfies the constraint in section k (YES in step D5), the process proceeds to step D6, where it is determined whether k=n. On the other hand, if it is determined that the input shaping trajectory does not satisfy the constraint in section k (NO in step D5), the process returns to step D3, where the trajectory generator 322 further reduces the shortened time by ΔT / Q to generate a corrected trajectory.
[0159] If it is determined in step D6 that k=n (YES in step D6), the shortened time adjustment flow shown in Fig. 12 ends, and the process proceeds to step SD10 shown in Fig. 11. On the other hand, if it is determined that k=n is not true (NO in step D6), the process proceeds to step D7, in which k is incremented by 1 (moving to the next section), and the shortened time for that section is reduced by ΔT / Q in step D3, thereby generating a corrected trajectory.
[0160] As a result, even in sections of the track where the constraint conditions are not satisfied, the delay time ΔT can be reduced by changing the reduction time to a time that satisfies the constraint conditions, thereby further reducing the delay time ΔT.
[0161] (Other embodiments) Although the embodiments of the present invention have been described above, the above-described embodiments are merely examples for carrying out the present invention. Therefore, the present invention is not limited to the above-described embodiments, and it is possible to appropriately modify the above-described embodiments within the scope of the spirit of the present invention.
[0162] In each of the above embodiments, the moving object M that is the control object of the control devices 1, 100, 200, and 300 is, for example, the arm of an articulated robot. However, the moving object may be any device that moves based on a command.
[0163] In each of the above embodiments, the delay time is a time equivalent to a half cycle of the vibration generated by the input shaping control, but the delay time may be a time other than a half cycle of the vibration.
[0164] In each of the above embodiments, the command correction is repeated until the input shaping trajectory satisfies the constraints, etc. However, the number of interval divisions may be determined, and the command correction may be repeated until that number is reached.
[0165] In the first embodiment, the command correction unit 20 corrects the delay time ΔT caused by the input shaping control for the command using equation (1). However, the command correction unit may correct the delay time for the command using any correction equation that results in a target correction amount at the command completion time.
[0166] In addition to the above-described embodiments, an evaluation function may be created based on each constraint condition, and the allocation of the time reduction may be determined by weighting the evaluation function. For example, the allocation of the time reduction may be determined as follows:
[0167] First, the ratio of the current value to the threshold value of each constraint is summed to create an evaluation function weighted by each constraint. The total value of the evaluation function is calculated for each section of the trajectory of the moving object, and the time reduction is allocated to each section so that the time reduction is greater in sections with a smaller total value, thereby generating a corrected trajectory. If the input shaping trajectory obtained from the corrected trajectory does not satisfy the constraint, the weight for the unsatisfied condition in the evaluation function is increased to generate a corrected trajectory.
[0168] In the first embodiment, the position command is corrected using equation (1) or equation (2), but the speed command can also be corrected using equation (1) or equation (2) in the same manner as the position command. When correcting the speed command, the correction is made to shorten the time required to reach the target speed. [Industrial Applicability]
[0169] The present invention can be used in a control device that controls the drive to move a moving object based on a command. [Explanation of symbols]
[0170] 1, 100, 200, 300 control device 10 Input shaping control section 20, 120, 220, 320 Command correction section 21 Arithmetic section 22, 122, 222, 322 Trajectory generation part 23, 123, 223, 323 Section division 24 Constraint condition determination section M Moving target
Claims
1. A control device that controls drive to move a moving object based on a command, an input shaping control unit that performs input shaping control in response to the command so as to reduce vibrations that occur when the moving object moves; a command correction unit that corrects the command in at least one section that satisfies a constraint condition when moving the moving object among a plurality of sections obtained by dividing a trajectory that the moving object traces when driven and controlled based on the input shaping control command obtained by the input shaping control unit traces when the moving object moves; and having Control device.
2. 2. The control device according to claim 1, the command correction unit adjusts the allocation of at least a part of the delay time to at least one section among the plurality of sections that satisfies the constraint condition, and corrects the command so as to shorten the allocated and adjusted time. Control device.
3. 2. The control device according to claim 1, The command correction unit In a first correction to the command, the command is corrected so as to shorten at least a part of the delay time in all sections of the trajectory of the moving object; If the input shaping trajectory of the moving object that is drive-controlled based on the input shaping control command obtained by the input shaping control unit using the corrected command does not satisfy the constraint condition, divide the trajectory of the moving object into a plurality of sections depending on whether the constraint condition is satisfied; correcting the command so as to shorten a part of the delay time in a section among the divided sections that satisfies the constraint condition; Control device.
4. 2. The control device according to claim 1, the command correction unit repeatedly divides the input shaping trajectory of the moving object into sections depending on whether the input shaping trajectory satisfies the constraint condition, and corrects the command so as to shorten part of the delay time in the sections that satisfy the constraint condition, until the total time that has been shortened reaches the delay time. Control device.
5. A control method for controlling a moving object to move in response to a command, comprising: an input shaping control step of performing input shaping control on the command so as to reduce vibrations generated when the moving object moves; a command correction step of correcting the command in at least one section that satisfies a constraint condition when moving the moving object among a plurality of sections obtained by dividing a trajectory that the moving object describes when driven and controlled based on the input shaping control command obtained by the input shaping control step describes when moving the moving object, so as to shorten at least a part of a delay time in an input shaping trajectory that the moving object describes when driven and controlled based on the input shaping control command obtained by the input shaping control step describes; having Control method.
Citation Information
Patent Citations
Shaping command input to minimize unwanted dynamics
JP3015396B2