WO2023013168A1 - Control device, control method, and program - Google Patents

Control device, control method, and program Download PDF

Info

Publication number
WO2023013168A1
WO2023013168A1 PCT/JP2022/015553 JP2022015553W WO2023013168A1 WO 2023013168 A1 WO2023013168 A1 WO 2023013168A1 JP 2022015553 W JP2022015553 W JP 2022015553W WO 2023013168 A1 WO2023013168 A1 WO 2023013168A1
Authority
WO
WIPO (PCT)
Prior art keywords
speed
robot
time
acceleration
ratio
Prior art date
Application number
PCT/JP2022/015553
Other languages
French (fr)
Japanese (ja)
Inventor
庸弘 原田
裕貴 ▲高▼▲崎▼
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Publication of WO2023013168A1 publication Critical patent/WO2023013168A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements

Definitions

  • the present disclosure relates to a control device, control method and program.
  • Patent Document 1 discloses a command generation device that calculates a position command based on an input machine performance index and a damping conditional expression and outputs the calculated position command to a servo driver. is disclosed.
  • Patent Literature 1 relates to generation of a position command to be output to a servo driver, and is difficult to apply to multi-axis robots.
  • the present disclosure has been made in view of the above problems, and its purpose is to provide a control device, control method, and program capable of suppressing vibration of an object supported by a robot having multiple axes.
  • a control device controls a robot that has multiple axes and supports an object in a cantilever manner.
  • the control device includes a generation unit that generates a motion command that defines the motion of the robot, and a robot control unit that controls the robot so that an object linearly moves according to input information including the motion command.
  • the generator receives an input of a first parameter that defines the resonance cycle of the object, and generates an operation command so that the sum of the jerk time and constant acceleration time in linear movement of the object is a natural number multiple of the resonance cycle.
  • the vibration generated at the point where the jerk changes is canceled by the vibration generated at the point shifted by N times the resonance period.
  • vibration of the workpiece 300 can be suppressed when the workpiece 300 supported in a cantilever shape is linearly moved by the robot 200 having a plurality of axes.
  • the motion command includes a second parameter that indicates the ratio to the maximum synthetic acceleration of the robot.
  • the generation unit accelerates from a zero speed state to the maximum synthetic acceleration and acquires the standard time required to reach the speed limit. Further, the generator calculates a first ratio of the reciprocal of the natural number multiple of the resonance period to the reciprocal of the standard time, and determines the value of the second parameter based on the first ratio.
  • the inventors of the present invention have found that when the robot is controlled using the second parameter, the ratio of the reciprocal of the sum of the jerk time and constant acceleration time to the reciprocal of the standard time matches the value of the second parameter. rice field. Therefore, according to the above disclosure, it is possible to generate an operation command so that the sum of the jerk time and constant acceleration time in linear movement of the object is a natural number multiple of the resonance period.
  • the input information includes the second ratio.
  • the robot controller operates the robot at a speed obtained by multiplying the speed determined according to the motion command by the second ratio.
  • the second parameter indicates the value obtained by dividing the first ratio by the second ratio.
  • the motion command is generated so that the sum of the jerk time and constant acceleration time in the linear movement of the object is a natural number multiple of the resonance period. be able to.
  • the motion command includes a third parameter for defining the maximum velocity of the object in linear movement.
  • the generation unit further receives an input of the moving distance of the object and the first speed, and divides the moving distance by the sum of the natural number times the resonance period and the jerk time to obtain the second speed and the first speed. compare.
  • the generator generates a third parameter defining the second speed as a maximum speed in response to the second speed being less than the first speed, and a third parameter in response to the second speed being greater than the first speed.
  • a third parameter is generated that defines 1 speed as the maximum speed.
  • the generator may be implemented by defining instructions in the form of function blocks.
  • a control method for controlling a robot having a plurality of axes and supporting an object in a cantilever manner includes generating a motion command that defines motion of the robot; and controlling the robot to linearly move the object according to the input information.
  • the step of generating includes the step of receiving input of parameters defining the resonance cycle of the object, and the step of generating the motion command so that the sum of the jerk time and constant acceleration time in linear movement of the object is a natural number multiple of the resonance cycle. and including.
  • the program causes the computer to execute the above control method. According to these disclosures as well, vibration of the work 300 can be suppressed when the work 300 supported in a cantilever shape is linearly moved by the robot 200 having a plurality of axes.
  • vibration of an object supported by a robot having multiple axes can be suppressed.
  • FIG. 4 is a diagram showing an example of profiles of synthetic velocity and synthetic acceleration of a robot
  • FIG. 5 is a diagram showing an example of a profile (S-curve profile) of the synthetic velocity and synthetic acceleration of the robot when the jerk time is set
  • FIG. 4 is a diagram showing temporal changes in jerk (jerk) corresponding to the S-curve profile shown in FIG. 3
  • It is a schematic diagram which shows the hardware constitutions of a control apparatus.
  • FIG. 4 is a diagram showing an example of profiles of synthetic velocity and synthetic acceleration of a robot
  • FIG. 5 is a diagram showing an example of a profile (S-curve profile) of the synthetic velocity and synthetic acceleration of the robot when the jerk time is set
  • FIG. 4 is a diagram showing temporal changes in jerk (jerk) corresponding to the S-curve profile shown in FIG. 3
  • It is a schematic diagram which shows the hardware constitutions of a control
  • FIG. 10 is a diagram showing an example of temporal change in composite speed when the speed adjustment ratio is changed; 4 is a flowchart showing the flow of processing by the control device; FIG. 9 is a flow chart showing an example of a flow of a subroutine of step S100 of FIG. 8.
  • FIG. 10 is a diagram showing variables calculated in step S2 of FIG. 9;
  • FIG. FIG. 8 is a diagram showing a speed profile with the value of variable H calculated in step S2 as the maximum value of the composite speed and a speed profile with the value of the left side of Equation (4) as the maximum value of the composite speed;
  • FIG. 10 is a diagram showing a vibration waveform of a workpiece when using the control device according to the reference embodiment;
  • FIG. 5 is a diagram showing vibration waveforms of a workpiece when using the control device according to the present embodiment;
  • FIG. 1 is a diagram illustrating an example of a system to which a control device according to an embodiment is applied.
  • a system 1 shown in FIG. 1 is installed, for example, in a production line.
  • the system 1 includes a control device 100 and a robot 200.
  • FIG. 1 is a diagram illustrating an example of a system to which a control device according to an embodiment is applied.
  • a system 1 shown in FIG. 1 is installed, for example, in a production line.
  • the system 1 includes a control device 100 and a robot 200.
  • FIG. 1 is a diagram illustrating an example of a system to which a control device according to an embodiment is applied.
  • the system 1 shown in FIG. 1 is installed, for example, in a production line.
  • the system 1 includes a control device 100 and a robot 200.
  • FIG. 1 is a diagram illustrating an example of a system to which a control device according to an embodiment is applied.
  • the system 1 shown in FIG. 1 is installed, for example, in a
  • the robot 200 is a multi-axis robot having multiple axes 201 and an end effector 202 .
  • robot 200 is a vertical articulated robot.
  • An end effector 202 of the robot 200 supports the workpiece 300 like a cantilever beam.
  • Work 300 is, for example, a shaft.
  • the control device 100 controls the robot 200.
  • the workpiece 300 which is a shaft
  • the workpiece 300 is likely to vibrate. If the workpiece 300 vibrates after it is moved, it is necessary to wait until the vibration falls within the allowable range. As a result, the tact time becomes longer.
  • the control device 100 controls the robot 200 so as to suppress the vibration of the workpiece 300 in order to shorten the tact time.
  • the control device 100 includes an action command generation unit 10 that generates an action command that defines the action of the robot, a robot control unit 12 that controls the robot 200 so that the workpiece 300 moves linearly according to input information including the action command, Prepare.
  • the robot 200 In order to linearly move the workpiece 300, the robot 200 performs a linear interpolation operation so that the trajectory of the end effector 202 becomes a straight line. Since the trajectory of the end effector 202 is one-dimensional, the synthetic velocity and synthetic acceleration of the multiple axes 201 of the robot 200 are also one-dimensionally expressed.
  • FIG. 2 is a diagram showing an example of the profile of the synthetic velocity and synthetic acceleration of the robot.
  • FIG. 2 shows a profile when the robot 200 exhibits its maximum capability.
  • line 20 indicates the time change of the synthesized velocity
  • line 21 indicates the time change of the synthesized acceleration.
  • the workpiece 300 accelerates during acceleration time T10, performs uniform motion during constant velocity time T11, and decelerates during deceleration time T12.
  • a line 20 shown in FIG. 2 indicates a trapezoid. That is, FIG. 2 shows a so-called trapezoidal velocity profile.
  • the travel time can be minimized.
  • the acceleration changes abruptly at the start and end of acceleration/deceleration.
  • the robot 200 receives an impact due to a sudden change in acceleration.
  • a time jerk time is set during which the acceleration is changed continuously.
  • FIG. 3 is a diagram showing an example of the profile (S-curve profile) of the synthetic velocity and synthetic acceleration of the robot when the jerk time is set.
  • line 20 indicates the time change of the synthesized velocity
  • line 21 indicates the time change of the synthesized acceleration.
  • jerk time T1 constant acceleration time T2, jerk time T3, constant velocity time T4, jerk time T5, constant acceleration time T6, and jerk time T7 are set in this order.
  • the acceleration monotonically increases from 0 to the maximum acceleration.
  • the acceleration is maintained at the maximum acceleration.
  • the acceleration monotonously decreases from the maximum acceleration to zero.
  • the acceleration is maintained at 0 during the constant velocity time T4.
  • the acceleration monotonically decreases from 0 to the minimum acceleration (negative).
  • the acceleration is maintained at the minimum acceleration.
  • the acceleration monotonically increases from the minimum acceleration to 0.
  • the jerk times T1, T3, T5 and T7 have the same length.
  • Uniform acceleration times T2 and T6 have the same length.
  • the motion command generation unit 10 receives an input of a parameter (typically a resonance frequency) that defines the resonance period of the workpiece 300, and the sum of the jerk time T1 and the uniform acceleration time T2 in the linear movement of the workpiece 300 is the resonance period N
  • a parameter typically a resonance frequency
  • An operation command is generated so as to double (N is a natural number). Vibration of the workpiece 300 is suppressed by generating an operation command so that the sum of the jerk time T1 and the constant acceleration time T2 is N times the resonance period.
  • FIG. 4 is a diagram showing temporal changes in jerk (jerk) corresponding to the S-curve profile shown in FIG.
  • line 22 indicates the change in jerk over time.
  • the jerk changes at eight timings. That is, the jerk includes the start time t0 and end time t1 of the jerk time T1, the start time t2 and end time t3 of the jerk time T3, the start time t4 and end time t5 of the jerk time T5, and the start time t6 and end time of the jerk time T7. It changes at time t7.
  • the change in jerk at time t0 is in the positive direction
  • the change in jerk at time t2 is in the negative direction.
  • the time from time t0 to time t2, that is, the sum of the jerk time T1 and the constant acceleration time T2 is N times the resonance period. Therefore, the vibration generated at time t0 is canceled by the anti-phase vibration generated at time t2 after N times the resonance period.
  • the vibration generated at time t1 is canceled by the anti-phase vibration generated at time t3 after N times the resonance period.
  • the vibration generated at time t4 is canceled by the anti-phase vibration generated at time t6 after N times the resonance period.
  • the vibration generated at time t5 is canceled by the anti-phase vibration generated at time t7 after N times the resonance period. In this way, vibrations occurring at each of all points where the jerk changes are canceled by vibrations occurring at points shifted by N times the resonance period. Therefore, vibration of the workpiece 300 is suppressed.
  • vibration of the work 300 can be suppressed when the work 300 supported in a cantilever shape by the robot 200 having a plurality of axes is linearly moved.
  • FIG. 5 is a schematic diagram showing the hardware configuration of the control device.
  • control device 100 includes field network controller 102 , control processing circuitry 104 and input interface 106 .
  • the field network controller 102 exchanges data with an external device such as a PLC (Programmable Logic Controller) via the field network.
  • PLC Programmable Logic Controller
  • control processing circuit 104 executes arithmetic processing necessary to drive the robot 200 .
  • control processing circuitry 104 includes processor 110 , main memory 112 , storage 114 , and interface circuitry 116 .
  • the processor 110 executes control operations for driving the robot 200 .
  • the main memory 112 is composed of, for example, a volatile storage device such as a DRAM (Dynamic Random Access Memory) or an SRAM (Static Random Access Memory).
  • the storage 114 is composed of, for example, a non-volatile storage device such as an SSD (Solid State Drive) or HDD (Hard Disk Drive).
  • a control program 120 for realizing control for driving the robot 200 is stored in the storage 114 .
  • the control program 120 includes commands for executing control operations related to the operation of the robot 200 and commands related to interfaces with the robot 200 .
  • the control program 120 may contain one or more function blocks (FB).
  • a function block is a block having input/output variables, and is executed by being read and instantiated at specified timing.
  • a control program 120 shown in FIG. 5 includes a damping control function block 122 and a linear interpolation function block 124 . Note that the control program 120 may be installed from a recording medium such as a memory card, a distribution server, or the like.
  • Interface circuit 116 exchanges data with robot 200 .
  • the input interface 106 mediates data transmission between the control processing circuit 104 and an input device 400 such as a keyboard, mouse, touch panel, dedicated console, or the like. That is, input interface 106 accepts information given by the user operating input device 400 .
  • FIG. 6 is a schematic diagram showing the functional configuration of the control device.
  • the control device 100 includes an action command generator 10, a robot controller 12, and a profile selector .
  • the motion command generation unit 10, the robot control unit 12, and the profile selection unit 14 are realized by executing the control program 120 by the processor 110 (see FIG. 5). More specifically, the motion command generator 10 and the robot controller 12 are implemented by the processor 110 executing a damping control function block 122 and a linear interpolation function block 124, respectively.
  • the control device 100 uses, as input variables, the resonance frequency (Hz) of the work 300, the movement distance (mm) of the work 300, and the maximum speed (mm/s) of the work 300 desired by the user (hereinafter referred to as "input speed”). ), speed adjustment ratio (%), jerk time (ms), adjustment constant (natural number), and robot specific parameters.
  • the movement distance of the workpiece 300 is the distance from the current position of the tip of the robot 200 to the target position. Controller 100 receives these input variables from field network or input device 400 .
  • the resonance frequency of the workpiece 300 is measured in advance.
  • the resonance frequency of the work 300 is measured by analyzing an image obtained by imaging the work 300 when the robot 200 is operated.
  • the resonance frequency of the workpiece 300 may be measured by visually confirming the vibration of the workpiece 300 when the robot 200 is operated.
  • the resonance frequency of workpiece 300 may be measured using a sensor.
  • the speed adjustment ratio is used to adjust the synthetic speed of the robot 200 (that is, the speed of the workpiece 300). Adjustment constants (natural numbers) are used as multiples of the resonance period.
  • FIG. 7 is a diagram showing an example of temporal changes in composite speed when the speed adjustment ratio is changed.
  • line 25 indicates the time change of the synthetic speed of robot 200 when the adjustment ratio is 100%.
  • a line 26 indicates the time change of the synthetic speed of the robot 200 when the speed adjustment ratio is 50%.
  • the speed when the speed adjustment ratio is set to 50% is adjusted to 50% of the speed when the speed adjustment ratio is set to 100%. Therefore, acceleration time T20 and deceleration time T22 when the speed adjustment ratio is set to 50% are twice the acceleration time T10 and deceleration time T12 when the speed adjustment ratio is set to 100%.
  • acceleration time T10 and deceleration time T12 are inversely proportional to the speed adjustment ratio.
  • the robot-specific parameters include standard time (ms), speed limit (mm/s) and limit ratio (%).
  • the speed limit is a composite speed when the robot 200 operates at its maximum capacity, and is a value unique to the robot 200.
  • the limit ratio is the upper limit value of the ratio (hereinafter referred to as "acceleration adjustment ratio") used for adjusting the synthetic acceleration of the robot 200 (that is, the acceleration of the workpiece 300), and is a value unique to the robot 200.
  • the acceleration adjustment ratio is a ratio to the synthetic acceleration (maximum synthetic acceleration) when the robot operates at its maximum capacity. Specifically, the acceleration adjustment ratio indicates the ratio to the first reference acceleration (positive) when the robot operates at its maximum capability during acceleration, and indicates the ratio to the second reference acceleration (negative) during deceleration. .
  • the value of the first reference acceleration matches the absolute value of the maximum synthesized acceleration.
  • the absolute value of the second reference acceleration is the same as the value of the first reference acceleration.
  • the standard time is the acceleration/deceleration time when the jerk time is 0 ms. That is, the standard time is the time required to accelerate from the zero speed state to the first reference acceleration (that is, the maximum synthetic acceleration) and reach the speed limit.
  • the standard time is a unique value for the robot 200, eg 180ms. With a jerk time of 0 ms, the velocity profile is represented by line 20 in FIG. Therefore, the standard time corresponds to acceleration time T10 (or deceleration time T12) in FIG.
  • the profile selection unit 14 receives input of the jerk time.
  • the profile selection unit 14 selects one S-curve speed profile corresponding to the input jerk time from among a plurality of speed profiles that the robot control unit 12 can accept.
  • the profile selection unit 14 outputs variables indicating the selected speed profile to the robot control unit 12 .
  • the multiple speed profiles have S-curves as shown in FIG. 3 and have different jerk times. Therefore, the profile selection unit 14 may select the speed profile having the input jerk time from among the plurality of speed profiles.
  • the jerk times T1, T3, T5, and T7 have the same length
  • the constant acceleration times T2 and T6 have the same length. have a length.
  • the robot control unit 12 receives the current position and target position of the tip of the robot 200, speed adjustment ratio, speed profile, maximum combined speed and acceleration adjustment ratio, and controls the robot 200 so that the workpiece 300 moves linearly.
  • the maximum combined speed indicates the maximum value of the combined speed of the robot 200 when the speed adjustment ratio is 100%.
  • the robot control unit 12 corrects the speed profile according to the movement distance, speed adjustment ratio, maximum combined speed, and acceleration adjustment ratio.
  • the robot control unit 12 corrects the speed of the constant speed time T4 (see FIG. 3) in the speed profile to the maximum combined speed.
  • the robot control unit 12 modifies the acceleration of the uniform acceleration time T2 (see FIG. 3) in the velocity profile to a value obtained by multiplying the first reference acceleration (positive) by the acceleration adjustment ratio. Similarly, the robot control unit 12 corrects the acceleration at constant acceleration time T6 (see FIG. 3) in the velocity profile to a value obtained by multiplying the second reference acceleration (negative) by the acceleration adjustment ratio. At this time, the robot control unit 12 also corrects the lengths of constant acceleration times T2 and T6 so that the speeds at the end of acceleration and the start of deceleration match the speed of constant speed time T4.
  • the robot control unit 12 calculates a linear distance (that is, movement distance) connecting the current position of the tip of the robot 200 and the target position.
  • the robot control unit 12 corrects the length of the constant velocity time T4 so that the integrated value of the velocity profile matches the movement distance.
  • the robot control unit 12 corrects the speed at each time of the speed profile in accordance with the speed adjustment ratio, and adjusts the jerk time T1, uniform acceleration time T2, jerk time T3, uniform velocity time T4, jerk time T5, uniform acceleration Modify the length of time T6 and jerk time T7.
  • the robot control unit 12 generates command values for each axis of the robot 200 and outputs the generated command values to the robot 200 so that a composite speed according to the speed profile corrected in this way is output.
  • the speed adjustment ratio, the maximum composite speed, and the acceleration adjustment ratio received by the robot control unit 12 are parameters that make it easy for the user to imagine the time change of the linear movement of the workpiece 300 . Therefore, a reference form is conceivable in which the robot control unit 12 directly acquires the speed adjustment ratio, the maximum combined speed, and the acceleration adjustment ratio from the input device 400 . Accordingly, the user can linearly move the workpiece 300 with a desired time change by appropriately adjusting the values of these parameters.
  • the user may input the maximum speed of the workpiece 300 when linearly moving the workpiece 300 in the shortest time as the maximum composite speed.
  • the user can adjust the speed of the workpiece 300 by adjusting the value of the speed adjustment ratio.
  • the user can adjust the acceleration time and deceleration time by adjusting the acceleration adjustment ratio.
  • the speed adjustment ratio, maximum combined speed, and acceleration adjustment ratio do not directly define parameters related to damping of workpiece 300 (for example, the sum of jerk time and uniform acceleration time).
  • the user determines how to adjust the speed adjustment ratio, the maximum combined speed, and the acceleration adjustment ratio to determine the conditions for suppressing the vibration of the workpiece 300 (for example, the sum of the jerk time and the constant acceleration time is a natural number of the resonance period). I do not know whether the condition that the Therefore, in the reference form in which the robot control unit 12 directly acquires the speed adjustment ratio, the maximum combined speed, and the acceleration adjustment ratio from the input device 400, it is difficult to suppress vibration when the work 300 is linearly moved.
  • control device 100 is characterized by including the operation command generation unit 10 .
  • the motion command generation unit 10 receives the resonance frequency, movement distance, input speed, speed adjustment ratio, jerk time, adjustment constant, and robot-specific parameters, and generates motion commands.
  • the generated motion command is input to the robot controller 12 .
  • the motion command includes the maximum combined speed and acceleration adjustment ratio.
  • the motion command generator 10 generates a motion command so that the sum of the jerk time and constant acceleration time in the linear movement of the workpiece 300 is a natural number multiple of the resonance period. A method of generating an operation command will be described later.
  • FIG. 8 is a flow chart showing the flow of processing by the control device.
  • processor 110 uses the input variables to generate a motion command (step S100).
  • processor 110 controls robot 200 so that workpiece 300 linearly moves according to the generated input information including the motion command (step S200).
  • Input information includes speed adjustment ratio and jerk time.
  • processor 110 selects a velocity profile that depends on the jerk time.
  • Processor 110 controls robot 200 so that workpiece 300 moves linearly using the selected speed profile, speed adjustment ratio, and motion command (maximum combined speed and acceleration adjustment ratio).
  • FIG. 9 is a flow chart showing an example of the subroutine flow of step S100 of FIG.
  • Processor 110 receives an input variable (step S1).
  • Input variables include the following variables AN.
  • Variable A moving distance (mm)
  • Variable B input speed (mm/s)
  • Variable C speed adjustment ratio (%)
  • Variable D jerk time (ms)
  • Variable E resonance frequency (Hz)
  • Variable F adjustment constant
  • Variable G standard time (ms)
  • Variable M speed limit (mm/s)
  • Variable N limit ratio (%).
  • Processor 110 then calculates variables H, I, and J according to the following equations (1) to (3) (step S2).
  • H B ⁇ C/100 Formula (1)
  • I 1000 ⁇ E ⁇ F Formula (2)
  • J I+D Equation (3).
  • FIG. 10 is a diagram showing variables calculated in step S2 of FIG.
  • variable H indicates the maximum composite speed of robot 200 when workpiece 300 is linearly moved.
  • the value of variable H is calculated by multiplying the input speed by the speed adjustment ratio.
  • a variable I indicates a time that is an adjustment constant (natural number) times the resonance period of the workpiece 300 .
  • the motion command is generated so that the sum of the jerk time and the constant acceleration time is an adjustment constant (natural number) times the resonance period (see FIG. 3). Therefore, the sum of the jerk time and constant acceleration time matches the value of variable I.
  • the variable J indicates the sum of the adjustment constant (natural number) times the resonance period of the workpiece 300 and the jerk time. When an operation command is generated such that the sum of the jerk time and the constant acceleration time is an adjustment constant (natural number) times the resonance period, the variable J indicates the acceleration time.
  • processor 110 determines whether B ⁇ M is satisfied (step S3). If YES in step S3, ie the input speed is less than the speed limit, processor 110 determines that a value for variable B is available and executes the next step S4.
  • step S4 the processor 110 determines whether D ⁇ I is satisfied. As shown in FIG. 10, D ⁇ I must be satisfied in order for the sum of the jerk time and constant acceleration time to match the resonance period times the adjustment constant (natural number). Therefore, if YES in step S4, the processor 110 determines that the values of the variables D and I are available, and executes the next step S5.
  • step S5 the processor 110 determines whether the following equation (4) is satisfied. A ⁇ J ⁇ 1000 ⁇ H Equation (4).
  • FIG. 11 is a diagram showing a speed profile in which the value of the variable H calculated in step S2 is the maximum value of the synthetic speed, and a speed profile in which the value of the left side of Equation (4) is the maximum value of the synthetic speed.
  • line 20a shows the velocity profile when the value of variable H calculated in step S2 is the maximum value of the combined velocity and the constant velocity time is zero.
  • a line 20b indicates a velocity profile when the value of the left side of the equation (4) is the maximum value of the combined velocity and the constant velocity time is zero.
  • Line 21 shows the acceleration profile corresponding to the velocity profile shown by line 20b.
  • the acceleration time is the longest when the constant velocity time is 0.
  • step S5 When formula (4) is satisfied (YES in step S5), the acceleration time of the velocity profile indicated by line 20a is shorter than the acceleration time of the velocity profile indicated by line 20b, as shown in FIG. A line 20b shows the velocity profile when the sum of the jerk time and the constant acceleration time coincides with the resonance period times the adjustment constant (natural number). Therefore, when the formula (4) is satisfied, in the velocity profile in which the value of the variable H calculated in step S2 is the maximum value of the combined velocity, the sum of the jerk time and the constant acceleration time is the adjustment constant (natural number ) times shorter. That is, when the equation (4) is satisfied, the motion command cannot be generated so that the sum of the jerk time and the constant acceleration time is the adjustment constant (natural number) times the resonance period. Therefore, if YES in step S5, processor 110 replaces the value of variable H with the calculated value of A ⁇ J ⁇ 1000 (step S6). After that, the processor 110 executes step S7.
  • step S5 the acceleration time of the speed profile indicated by line 20a is greater than or equal to the acceleration time of the speed profile indicated by line 20b.
  • the processor 110 executes the next step S7 without changing the value of the variable H.
  • step S7 processor 110 calculates variable L according to the following equation (5).
  • L 100 ⁇ H ⁇ C Equation (5).
  • the processor 110 calculates a variable K according to Equation (6) below.
  • K (100 ⁇ G) ⁇ (1000 ⁇ E ⁇ F) ⁇ (100 ⁇ C) Formula (6) That is, the processor 110 calculates the ratio of the reciprocal of the natural number multiple of the resonance period to the reciprocal of the standard time ((100 ⁇ G)/(1000/E ⁇ F)), and calculates the value of the variable K based on the ratio. decide. Specifically, processor 110 calculates the value of variable K by dividing the ratio by the speed adjustment ratio.
  • step S9 the processor 110 determines whether K ⁇ N is satisfied. If K ⁇ N is satisfied (YES in step S9), processor 110 determines that variable K calculated in step S8 can be used, and executes step S10.
  • step S10 the processor 110 outputs variables L and K as the maximum combined speed and acceleration adjustment ratio, respectively.
  • processor 110 returns the process to step S200 of FIG.
  • the maximum composite speed represented by the variable L indicates the maximum value of the composite speed of the robot 200 at a speed adjustment ratio of 100%.
  • the maximum speed in linear movement of the workpiece 300 is represented by the product of the maximum combined speed and the input speed adjustment ratio. Therefore, the variable L (maximum composite speed) is a parameter that defines the maximum speed of linear movement of the workpiece 300 .
  • processor 110 outputs A Create a variable L that defines the speed represented by ⁇ J ⁇ 1000 as the maximum speed in linear motion.
  • processor 110 converts the speed represented by the product of variables B and C into a straight line. Create a variable L that defines the maximum speed in movement.
  • processor 110 If NO in any of steps S3, S4, and S9, processor 110 generates an error code and outputs the generated error code (step S11). After step S10, processor 110 terminates the process.
  • the processor 110 operating as the robot control unit 12 controls the robot 200 so that the workpiece 300 moves linearly using the variables L and K received as the maximum combined speed and acceleration adjustment ratio.
  • the processor 110 modifies the speed of the constant speed time T4 (see FIG. 3) in the speed profile to the value of the variable L (maximum composite speed).
  • Processor 110 modifies the acceleration at each of uniform acceleration times T2 and T6 in the velocity profile according to the value of variable K (acceleration adjustment ratio).
  • processor 110 also corrects the lengths of constant acceleration times T2 and T6 so that the speeds at the end of acceleration and the start of deceleration match the speed of constant speed time T4.
  • processor 110 modifies the length of constant velocity time T4 so that the integrated value of the velocity profile matches the movement distance.
  • the processor 110 corrects the speed at each time of the speed profile according to the speed adjustment ratio, and jerk time T1, constant acceleration time T2, jerk time T3, constant speed time T4, jerk time T5, constant acceleration time T6. , and the length of the jerk time T7.
  • the inventors have found that "the ratio of the reciprocal of the sum of the jerk time and the constant acceleration time to the reciprocal of the standard time matches the acceleration adjustment ratio.” Also, as shown in FIG. 7, the acceleration time and deceleration time are inversely proportional to the speed adjustment ratio. Therefore, in the speed profile modified according to the acceleration adjustment ratio and the speed adjustment ratio, the sum of the jerk time and the acceleration time is represented by the following equation (7).
  • the robot 200 is controlled. Thereby, the vibration of the workpiece 300 is suppressed.
  • FIG. 12 is a diagram showing vibration waveforms of a workpiece when using the control device according to the reference embodiment.
  • FIG. 13 is a diagram showing vibration waveforms of a workpiece when using the control device according to the present embodiment.
  • control device according to the reference embodiment differs from the control device 100 in that it does not include the operation command generation unit 10 .
  • an acceleration adjustment ratio of 100% was input to the robot control unit 12, and an input speed was input as the maximum combined speed.
  • the tip of the workpiece 300 vibrated with an amplitude of approximately 1.0 mm.
  • the vibration convergence time was 6 seconds or longer.
  • the tip of the workpiece 300 vibrated with an amplitude of approximately 0.35 mm.
  • the oscillation convergence time was 0.5 seconds. Vibration of the workpiece 300 is thus suppressed by using the control device 100 according to the present embodiment.
  • the end effector 202 itself may vibrate.
  • the user may input the resonant frequency of the end effector 202 or the overall resonant frequency of the end effector 202 and the workpiece 300 into the control device 100 .
  • the generator (10, 110) receives an input of a first parameter defining a resonance period of the object (300, 202), and calculates the sum of the jerk time and constant acceleration time in the linear movement of the object (300, 202). is a natural number multiple of the resonance period.
  • the motion command includes a second parameter indicating a ratio to the maximum synthetic acceleration of the robot (200);
  • the generating unit (10, 110) Accelerate from a state of zero speed to the maximum synthetic acceleration, acquire the standard time to reach the speed limit, calculating a first ratio of the reciprocal of the natural number multiple of the resonance period to the reciprocal of the standard time;
  • Composition 3 the input information includes a second ratio;
  • the robot control unit (12, 110) operates the robot (200) at a speed obtained by multiplying the speed determined according to the operation command by the second ratio, 3.
  • Composition 4 said motion command includes a third parameter for defining a maximum velocity of said object (300, 202) in said linear movement;
  • the generating unit (10, 110) further receiving an input of a moving distance of the object (300, 202) and a first speed; comparing the first speed with a second speed obtained by dividing the movement distance by the sum of the natural number times the resonance period and the jerk time; responsive to the second velocity being less than the first velocity, generating the third parameter defining the second velocity as the maximum velocity; 4.
  • the controller (100) of any of the arrangements 1-3 responsive to the second speed being greater than the first speed, generating the third parameter defining the first speed as the maximum speed. .
  • composition 5 The control device (100) according to any one of configurations 1 to 4, wherein the generator (10, 110) is implemented by defining an instruction in the form of a function block (122).
  • Composition 6 A control method for controlling a robot (200) having a plurality of axes (201) and supporting objects (300, 202) in a cantilever manner, comprising: generating a motion command that defines the motion of the robot (200); and controlling the robot so that the object (300, 202) moves linearly according to the input information including the operation command;
  • the generating step includes: receiving input of parameters defining a resonance period of said object (300, 202); and generating the operation command so that the sum of the jerk time and constant acceleration time in the linear movement of the object (300, 202) is a natural number multiple of the resonance period.
  • Composition 7 A program (120) for causing a computer (100, 110) to execute the control method according to configuration 6.

Abstract

This control device controls a robot that has a plurality of axes and supports an object in a cantilever manner. The control device comprises: a generation unit that generates a motion command that defines the motion of the robot; and a robot control unit that controls the robot such that the object linearly moves, in accordance with input information including the motion command. The generation unit receives an input of a first parameter that defines the resonance cycle of the object, and generates a motion command such that the sum of the jerk time and constant acceleration time in linear movement of the object is a natural number multiple of the resonance cycle. This reduces the vibration of the object supported by the robot having the plurality of axes.

Description

制御装置、制御方法およびプログラムControl device, control method and program
 本開示は、制御装置、制御方法およびプログラムに関する。 The present disclosure relates to a control device, control method and program.
 近年、機械の固有振動数による振動を励起しない条件を満たすことで、機械に生じる振動を抑える制振技術が開発されている。例えば、特開2017-84288号公報(特許文献1)は、入力された機械性能指標と制振条件式とに基づいて位置指令を算出し、算出した位置指令をサーボドライバに出力する指令生成装置を開示している。 In recent years, damping technology has been developed that suppresses the vibrations that occur in machines by satisfying conditions that do not excite vibrations due to the machine's natural frequency. For example, Japanese Patent Laying-Open No. 2017-84288 (Patent Document 1) discloses a command generation device that calculates a position command based on an input machine performance index and a damping conditional expression and outputs the calculated position command to a servo driver. is disclosed.
特開2017-84288号公報JP 2017-84288 A
 振動を抑えるためには、多軸ロボットの先端の速度、加速度およびジャーク(加加速度)の制御が重要となる。一般に、複数の軸を有する多軸ロボットを制御する制御装置では、これら3つのパラメータを含む動作プロファイルを詳細に指定できない。そのため、多軸ロボットに支持される物体に振動が発生しやすく、多軸ロボットにおける制振技術の開発が望まれている。特許文献1に記載の技術は、サーボドライバへ出力される位置指令の生成に関するものであり、多軸ロボットへ適用することが困難である。  In order to suppress vibration, it is important to control the speed, acceleration and jerk (jerk) of the tip of the multi-axis robot. In general, a control device for controlling a multi-axis robot having multiple axes cannot specify a motion profile including these three parameters in detail. Therefore, the object supported by the multi-axis robot is likely to vibrate, and the development of vibration control technology for the multi-axis robot is desired. The technique described in Patent Literature 1 relates to generation of a position command to be output to a servo driver, and is difficult to apply to multi-axis robots.
 本開示は、上記の問題に鑑みてなされたものであり、その目的は、複数の軸を有するロボットに支持される物体の振動を抑制できる制御装置、制御方法およびプログラムを提供することである。 The present disclosure has been made in view of the above problems, and its purpose is to provide a control device, control method, and program capable of suppressing vibration of an object supported by a robot having multiple axes.
 本開示の一例によれば、制御装置は、複数の軸を有し、片持ち梁状に物体を支持するロボットを制御する。制御装置は、ロボットの動作を規定する動作指令を生成する生成部と、動作指令を含む入力情報に従って、物体が直線移動するようにロボットを制御するロボット制御部と、を備える。生成部は、物体の共振周期を定義付ける第1パラメータの入力を受け、物体の直線移動におけるジャーク時間と等加速度時間との和が共振周期の自然数倍となるように動作指令を生成する。 According to an example of the present disclosure, a control device controls a robot that has multiple axes and supports an object in a cantilever manner. The control device includes a generation unit that generates a motion command that defines the motion of the robot, and a robot control unit that controls the robot so that an object linearly moves according to input information including the motion command. The generator receives an input of a first parameter that defines the resonance cycle of the object, and generates an operation command so that the sum of the jerk time and constant acceleration time in linear movement of the object is a natural number multiple of the resonance cycle.
 この開示によれば、ジャークが変化するポイントにおいて発生する振動は、共振周期のN倍だけずれたポイントにおいて発生する振動によって相殺される。これにより、複数の軸を有するロボット200によって片持ち梁状に支持されたワーク300を直線移動させるときに、ワーク300の振動を抑制できる。 According to this disclosure, the vibration generated at the point where the jerk changes is canceled by the vibration generated at the point shifted by N times the resonance period. Thereby, vibration of the workpiece 300 can be suppressed when the workpiece 300 supported in a cantilever shape is linearly moved by the robot 200 having a plurality of axes.
 上述の開示において、動作指令は、ロボットの最大合成加速度に対する比率を示す第2パラメータを含む。生成部は、速度0の状態から最大合成加速度で加速し、制限速度に到達するまでの標準時間を取得する。さらに、生成部は、標準時間の逆数に対する共振周期の自然数倍の逆数の第1比率を算出し、第1比率に基づいて第2パラメータの値を決定する。 In the above disclosure, the motion command includes a second parameter that indicates the ratio to the maximum synthetic acceleration of the robot. The generation unit accelerates from a zero speed state to the maximum synthetic acceleration and acquires the standard time required to reach the speed limit. Further, the generator calculates a first ratio of the reciprocal of the natural number multiple of the resonance period to the reciprocal of the standard time, and determines the value of the second parameter based on the first ratio.
 本発明者らは、第2パラメータを用いてロボットを制御する際に、標準時間の逆数に対するジャーク時間と等加速度時間との和の逆数の比率が第2パラメータの値と一致するという知見を得た。そのため、上記の開示によれば、物体の直線移動におけるジャーク時間と等加速度時間との和が共振周期の自然数倍となるように動作指令を生成することができる。 The inventors of the present invention have found that when the robot is controlled using the second parameter, the ratio of the reciprocal of the sum of the jerk time and constant acceleration time to the reciprocal of the standard time matches the value of the second parameter. rice field. Therefore, according to the above disclosure, it is possible to generate an operation command so that the sum of the jerk time and constant acceleration time in linear movement of the object is a natural number multiple of the resonance period.
 上述の開示において、入力情報は、第2比率を含む。ロボット制御部は、動作指令に従って決定される速度に第2比率を乗算することにより得られる速度でロボットを動作させる。第2パラメータは、第1比率を第2比率によって除算することにより得られる値を示す。 In the above disclosure, the input information includes the second ratio. The robot controller operates the robot at a speed obtained by multiplying the speed determined according to the motion command by the second ratio. The second parameter indicates the value obtained by dividing the first ratio by the second ratio.
 この開示によれば、速度を調整するための第2比率を考慮して、物体の直線移動におけるジャーク時間と等加速度時間との和が共振周期の自然数倍となるように動作指令を生成することができる。 According to this disclosure, considering the second ratio for adjusting the speed, the motion command is generated so that the sum of the jerk time and constant acceleration time in the linear movement of the object is a natural number multiple of the resonance period. be able to.
 上述の開示において、動作指令は、直線移動における物体の最大速度を定義付けるための第3パラメータを含む。生成部は、物体の移動距離と、第1速度との入力をさらに受け、共振周期の自然数倍とジャーク時間との和によって移動距離を除算することにより得られる第2速度と第1速度とを比較する。生成部は、第2速度が第1速度よりも小さいことに応じて、第2速度を最大速度として定義付ける第3パラメータを生成し、第2速度が第1速度よりも大きいことに応じて、第1速度を最大速度として定義付ける第3パラメータを生成する。 In the above disclosure, the motion command includes a third parameter for defining the maximum velocity of the object in linear movement. The generation unit further receives an input of the moving distance of the object and the first speed, and divides the moving distance by the sum of the natural number times the resonance period and the jerk time to obtain the second speed and the first speed. compare. The generator generates a third parameter defining the second speed as a maximum speed in response to the second speed being less than the first speed, and a third parameter in response to the second speed being greater than the first speed. A third parameter is generated that defines 1 speed as the maximum speed.
 後述するように、第2速度が第1速度よりも小さい場合、第1速度を最大速度として定義付ける第3パラメータを生成すると、ジャーク時間と等加速度時間との和を共振周期の自然数倍と一致させることができない。上記の開示によれば、第2速度が第1速度よりも小さいことに応じて、第2速度を最大速度として定義付ける第3パラメータを生成する。これにより、物体の直線移動におけるジャーク時間と等加速度時間との和が共振周期の自然数倍となるように動作指令を生成することができる。 As will be described later, when the second velocity is smaller than the first velocity, generating a third parameter that defines the first velocity as the maximum velocity will cause the sum of the jerk time and constant acceleration time to match the natural number times the resonance period. I can't let you. According to the above disclosure, responsive to the second velocity being less than the first velocity, generating a third parameter defining the second velocity as the maximum velocity. As a result, an operation command can be generated so that the sum of the jerk time and constant acceleration time in the linear movement of the object is a natural number multiple of the resonance period.
 上述の開示において、生成部は、ファンクションブロックの形で命令が規定されることにより実現されてもよい。 In the above disclosure, the generator may be implemented by defining instructions in the form of function blocks.
 本開示の一例によれば、複数の軸を有し、片持ち梁状に物体を支持するロボットを制御する制御方法は、ロボットの動作を規定する動作指令を生成するステップと、動作指令を含む入力情報に従って、物体が直線移動するようにロボットを制御するステップと、を備える。生成するステップは、物体の共振周期を定義付けるパラメータの入力を受けるステップと、物体の直線移動におけるジャーク時間と等加速度時間との和が共振周期の自然数倍となるように動作指令を生成するステップと、を含む。 According to an example of the present disclosure, a control method for controlling a robot having a plurality of axes and supporting an object in a cantilever manner includes generating a motion command that defines motion of the robot; and controlling the robot to linearly move the object according to the input information. The step of generating includes the step of receiving input of parameters defining the resonance cycle of the object, and the step of generating the motion command so that the sum of the jerk time and constant acceleration time in linear movement of the object is a natural number multiple of the resonance cycle. and including.
 本開示の一例によれば、プログラムは、上記の制御方法をコンピュータに実行させる。これらの開示によっても、複数の軸を有するロボット200によって片持ち梁状に支持されたワーク300を直線移動させるときに、ワーク300の振動を抑制できる。 According to one example of the present disclosure, the program causes the computer to execute the above control method. According to these disclosures as well, vibration of the work 300 can be suppressed when the work 300 supported in a cantilever shape is linearly moved by the robot 200 having a plurality of axes.
 本開示によれば、複数の軸を有するロボットに支持される物体の振動を抑制できる。 According to the present disclosure, vibration of an object supported by a robot having multiple axes can be suppressed.
実施の形態に係る制御装置が適用されるシステムの一例を示す図である。It is a figure which shows an example of the system in which the control apparatus which concerns on embodiment is applied. ロボットの合成速度および合成加速度のプロファイルの一例を示す図である。FIG. 4 is a diagram showing an example of profiles of synthetic velocity and synthetic acceleration of a robot; ジャーク時間が設定されたときのロボットの合成速度および合成加速度のプロファイル(S字カーブプロファイル)の一例を示す図である。FIG. 5 is a diagram showing an example of a profile (S-curve profile) of the synthetic velocity and synthetic acceleration of the robot when the jerk time is set; 図3に示すS字カーブプロファイルに対応するジャーク(加加速度)の時間変化を示す図である。FIG. 4 is a diagram showing temporal changes in jerk (jerk) corresponding to the S-curve profile shown in FIG. 3; 制御装置のハードウェア構成を示す模式図である。It is a schematic diagram which shows the hardware constitutions of a control apparatus. 制御装置の機能構成を示す模式図である。It is a schematic diagram which shows the functional structure of a control apparatus. 速度調整比率を変更したときの合成速度の時間変化の一例を示す図である。FIG. 10 is a diagram showing an example of temporal change in composite speed when the speed adjustment ratio is changed; 制御装置の処理の流れを示すフローチャートである。4 is a flowchart showing the flow of processing by the control device; 図8のステップS100のサブルーチンの流れの一例を示すフローチャートである。FIG. 9 is a flow chart showing an example of a flow of a subroutine of step S100 of FIG. 8. FIG. 図9のステップS2によって算出される変数を示す図である。FIG. 10 is a diagram showing variables calculated in step S2 of FIG. 9; FIG. ステップS2で計算された変数Hの値を合成速度の最大値とする速度プロファイルと、式(4)の左辺の値を合成速度の最大値とする速度プロファイルとを示す図である。FIG. 8 is a diagram showing a speed profile with the value of variable H calculated in step S2 as the maximum value of the composite speed and a speed profile with the value of the left side of Equation (4) as the maximum value of the composite speed; 参考形態に係る制御装置を用いたときのワークの振動波形を示す図である。FIG. 10 is a diagram showing a vibration waveform of a workpiece when using the control device according to the reference embodiment; 本実施の形態に係る制御装置を用いたときのワークの振動波形を示す図である。FIG. 5 is a diagram showing vibration waveforms of a workpiece when using the control device according to the present embodiment;
 本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。以下で説明される各変形例は、適宜選択的に組み合わされてもよい。 Embodiments of the present invention will be described in detail with reference to the drawings. The same or corresponding parts in the drawings are denoted by the same reference numerals, and the description thereof will not be repeated. Each modified example described below may be selectively combined as appropriate.
 §1 適用例
 本実施の形態にかかる制御装置の概略について説明する。図1は、実施の形態に係る制御装置が適用されるシステムの一例を示す図である。図1に示すシステム1は、例えば生産ラインに設置される。図1に示されるように、システム1は、制御装置100と、ロボット200と、を備える。
§1 Application Example An outline of the control device according to the present embodiment will be described. FIG. 1 is a diagram illustrating an example of a system to which a control device according to an embodiment is applied. A system 1 shown in FIG. 1 is installed, for example, in a production line. As shown in FIG. 1, the system 1 includes a control device 100 and a robot 200. As shown in FIG.
 ロボット200は、複数の軸201と、エンドエフェクタ202と、を有する多軸ロボットである。例えば、ロボット200は垂直多関節ロボットである。ロボット200のエンドエフェクタ202は、片持ち梁状にワーク300を支持する。ワーク300は、例えばシャフトである。 The robot 200 is a multi-axis robot having multiple axes 201 and an end effector 202 . For example, robot 200 is a vertical articulated robot. An end effector 202 of the robot 200 supports the workpiece 300 like a cantilever beam. Work 300 is, for example, a shaft.
 制御装置100は、ロボット200を制御する。シャフトであるワーク300を軸方向に交差する方向に直線移動させる場合、ワーク300に振動が発生しやすい。ワーク300を移動させた後にワーク300に振動が発生していると、振動が許容範囲内に収まるまで待機する必要が生じる。その結果、タクトタイムが長くなる。制御装置100は、タクトタイムを短縮するために、ワーク300の振動を抑えるようにロボット200を制御する。 The control device 100 controls the robot 200. When the workpiece 300, which is a shaft, is linearly moved in a direction crossing the axial direction, the workpiece 300 is likely to vibrate. If the workpiece 300 vibrates after it is moved, it is necessary to wait until the vibration falls within the allowable range. As a result, the tact time becomes longer. The control device 100 controls the robot 200 so as to suppress the vibration of the workpiece 300 in order to shorten the tact time.
 制御装置100は、ロボットの動作を規定する動作指令を生成する動作指令生成部10と、動作指令を含む入力情報に従って、ワーク300が直線移動するようにロボット200を制御するロボット制御部12と、を備える。 The control device 100 includes an action command generation unit 10 that generates an action command that defines the action of the robot, a robot control unit 12 that controls the robot 200 so that the workpiece 300 moves linearly according to input information including the action command, Prepare.
 ワーク300を直線移動させるために、ロボット200は、エンドエフェクタ202の軌跡が直線となるように直線補間動作を行なう。エンドエフェクタ202の軌跡が1次元となるため、ロボット200の複数の軸201の合成速度および合成加速度も1次元で表現される。 In order to linearly move the workpiece 300, the robot 200 performs a linear interpolation operation so that the trajectory of the end effector 202 becomes a straight line. Since the trajectory of the end effector 202 is one-dimensional, the synthetic velocity and synthetic acceleration of the multiple axes 201 of the robot 200 are also one-dimensionally expressed.
 図2は、ロボットの合成速度および合成加速度のプロファイルの一例を示す図である。図2には、ロボット200が最大能力を発揮したときのプロファイルが示される。図2において、線20は合成速度の時間変化を示し、線21は合成加速度の時間変化を示す。ワーク300は、加速時間T10において加速し、等速度時間T11において等速運動し、減速時間T12において減速する。 FIG. 2 is a diagram showing an example of the profile of the synthetic velocity and synthetic acceleration of the robot. FIG. 2 shows a profile when the robot 200 exhibits its maximum capability. In FIG. 2, line 20 indicates the time change of the synthesized velocity, and line 21 indicates the time change of the synthesized acceleration. The workpiece 300 accelerates during acceleration time T10, performs uniform motion during constant velocity time T11, and decelerates during deceleration time T12.
 図2に示す線20は、台形を示す。すなわち、図2には、いわゆる台形速度プロファイルが示される。台形速度プロファイルを用いることにより、移動時間を最短にできる。しかしながら、加減速の開始時および終了時に加速度が急激に変化する。ロボット200は、加速度の急激な変化による衝撃を受ける。このような衝撃を緩和させる目的のため、加速度を連続的に変化させる時間(ジャーク時間)が設定される。 A line 20 shown in FIG. 2 indicates a trapezoid. That is, FIG. 2 shows a so-called trapezoidal velocity profile. By using a trapezoidal velocity profile, the travel time can be minimized. However, the acceleration changes abruptly at the start and end of acceleration/deceleration. The robot 200 receives an impact due to a sudden change in acceleration. For the purpose of mitigating such impact, a time (jerk time) is set during which the acceleration is changed continuously.
 図3は、ジャーク時間が設定されたときのロボットの合成速度および合成加速度のプロファイル(S字カーブプロファイル)の一例を示す図である。図3においても、線20は合成速度の時間変化を示し、線21は合成加速度の時間変化を示す。S字カーブプロファイルでは、ジャーク時間T1、等加速度時間T2、ジャーク時間T3、等速度時間T4、ジャーク時間T5、等加速度時間T6、およびジャーク時間T7がこの順に設定される。 FIG. 3 is a diagram showing an example of the profile (S-curve profile) of the synthetic velocity and synthetic acceleration of the robot when the jerk time is set. In FIG. 3 as well, line 20 indicates the time change of the synthesized velocity, and line 21 indicates the time change of the synthesized acceleration. In the S-curve profile, jerk time T1, constant acceleration time T2, jerk time T3, constant velocity time T4, jerk time T5, constant acceleration time T6, and jerk time T7 are set in this order.
 ジャーク時間T1では、加速度が0から最大加速度まで単調に増大する。等加速度時間T2では、加速度が最大加速度に維持される。ジャーク時間T3では、加速度が最大加速度から0まで単調に減少する。等速度時間T4では、加速度が0に維持される。ジャーク時間T5では、加速度が0から最小加速度(負)まで単調に減少する。等加速度時間T6では、加速度が最小加速度に維持される。ジャーク時間T7では、加速度が最小加速度から0に単調に増大する。  In the jerk time T1, the acceleration monotonically increases from 0 to the maximum acceleration. During the constant acceleration time T2, the acceleration is maintained at the maximum acceleration. During the jerk time T3, the acceleration monotonously decreases from the maximum acceleration to zero. The acceleration is maintained at 0 during the constant velocity time T4. At the jerk time T5, the acceleration monotonically decreases from 0 to the minimum acceleration (negative). During uniform acceleration time T6, the acceleration is maintained at the minimum acceleration. At the jerk time T7, the acceleration monotonically increases from the minimum acceleration to 0.
 ジャーク時間T1,T3,T5,T7は、同じ長さを有する。等加速度時間T2,T6は、同じ長さを有する。 The jerk times T1, T3, T5 and T7 have the same length. Uniform acceleration times T2 and T6 have the same length.
 動作指令生成部10は、ワーク300の共振周期を定義付けるパラメータ(典型的には共振周波数)の入力を受け、ワーク300の直線移動におけるジャーク時間T1と等加速度時間T2との和が共振周期のN倍(Nは自然数)となるように動作指令を生成する。ジャーク時間T1と等加速度時間T2との和が共振周期のN倍となるように動作指令が生成されることにより、ワーク300の振動が抑制される。そのメカニズムについて図4を参照しながら説明する。 The motion command generation unit 10 receives an input of a parameter (typically a resonance frequency) that defines the resonance period of the workpiece 300, and the sum of the jerk time T1 and the uniform acceleration time T2 in the linear movement of the workpiece 300 is the resonance period N An operation command is generated so as to double (N is a natural number). Vibration of the workpiece 300 is suppressed by generating an operation command so that the sum of the jerk time T1 and the constant acceleration time T2 is N times the resonance period. The mechanism will be described with reference to FIG.
 図4は、図3に示すS字カーブプロファイルに対応するジャーク(加加速度)の時間変化を示す図である。図4において、線22はジャークの時間変化を示す。図4に示されるように、ジャークは、8つのタイミングにおいて変化する。すなわち、ジャークは、ジャーク時間T1の開始時刻t0および終了時刻t1、ジャーク時間T3の開始時刻t2および終了時刻t3、ジャーク時間T5の開始時刻t4および終了時刻t5、ジャーク時間T7の開始時刻t6および終了時刻t7において変化する。 FIG. 4 is a diagram showing temporal changes in jerk (jerk) corresponding to the S-curve profile shown in FIG. In FIG. 4, line 22 indicates the change in jerk over time. As shown in FIG. 4, the jerk changes at eight timings. That is, the jerk includes the start time t0 and end time t1 of the jerk time T1, the start time t2 and end time t3 of the jerk time T3, the start time t4 and end time t5 of the jerk time T5, and the start time t6 and end time of the jerk time T7. It changes at time t7.
 時刻t0のジャークの変化は正方向であり、時刻t2のジャークの変化は負方向である。そして、時刻t0から時刻t2までの時間、すなわち、ジャーク時間T1と等加速度時間T2との和は、共振周期のN倍である。そのため、時刻t0において発生した振動は、共振周期のN倍の後の時刻t2において発生する逆位相の振動によって相殺される。同様に、時刻t1において発生した振動は、共振周期のN倍の後の時刻t3において発生する逆位相の振動によって相殺される。時刻t4において発生した振動は、共振周期のN倍の後の時刻t6において発生する逆位相の振動によって相殺される。時刻t5において発生した振動は、共振周期のN倍の後の時刻t7において発生する逆位相の振動によって相殺される。このように、ジャークが変化する全てのポイントの各々において発生する振動は、共振周期のN倍だけずれたポイントにおいて発生する振動によって相殺される。したがって、ワーク300の振動が抑制される。 The change in jerk at time t0 is in the positive direction, and the change in jerk at time t2 is in the negative direction. The time from time t0 to time t2, that is, the sum of the jerk time T1 and the constant acceleration time T2 is N times the resonance period. Therefore, the vibration generated at time t0 is canceled by the anti-phase vibration generated at time t2 after N times the resonance period. Similarly, the vibration generated at time t1 is canceled by the anti-phase vibration generated at time t3 after N times the resonance period. The vibration generated at time t4 is canceled by the anti-phase vibration generated at time t6 after N times the resonance period. The vibration generated at time t5 is canceled by the anti-phase vibration generated at time t7 after N times the resonance period. In this way, vibrations occurring at each of all points where the jerk changes are canceled by vibrations occurring at points shifted by N times the resonance period. Therefore, vibration of the workpiece 300 is suppressed.
 このように、本実施の形態に係る制御装置100によれば、複数の軸を有するロボット200によって片持ち梁状に支持されたワーク300を直線移動させるときに、ワーク300の振動を抑制できる。 Thus, according to the control device 100 according to the present embodiment, vibration of the work 300 can be suppressed when the work 300 supported in a cantilever shape by the robot 200 having a plurality of axes is linearly moved.
 §2 具体例
 <制御装置のハードウェア構成>
 図5は、制御装置のハードウェア構成を示す模式図である。図5に示されるように、制御装置100は、フィールドネットワークコントローラ102と、制御処理回路104と、入力インターフェイス106と、を含む。
§2 Specific example <Hardware configuration of control device>
FIG. 5 is a schematic diagram showing the hardware configuration of the control device. As shown in FIG. 5 , control device 100 includes field network controller 102 , control processing circuitry 104 and input interface 106 .
 フィールドネットワークコントローラ102は、フィールドネットワークを介して、例えばPLC(Programmable Logic Controller)などの外部装置との間でデータをやり取りする。 The field network controller 102 exchanges data with an external device such as a PLC (Programmable Logic Controller) via the field network.
 制御処理回路104は、ロボット200を駆動するために必要な演算処理を実行する。一例として、制御処理回路104は、プロセッサ110と、メインメモリ112と、ストレージ114と、インターフェイス回路116とを含む。 The control processing circuit 104 executes arithmetic processing necessary to drive the robot 200 . As an example, control processing circuitry 104 includes processor 110 , main memory 112 , storage 114 , and interface circuitry 116 .
 プロセッサ110は、ロボット200を駆動するための制御演算を実行する。メインメモリ112は、例えば、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などの揮発性記憶装置などで構成される。ストレージ114は、例えば、SSD(Solid State Drive)やHDD(Hard Disk Drive)などの不揮発性記憶装置などで構成される。 The processor 110 executes control operations for driving the robot 200 . The main memory 112 is composed of, for example, a volatile storage device such as a DRAM (Dynamic Random Access Memory) or an SRAM (Static Random Access Memory). The storage 114 is composed of, for example, a non-volatile storage device such as an SSD (Solid State Drive) or HDD (Hard Disk Drive).
 ストレージ114には、ロボット200を駆動するための制御を実現するための制御プログラム120が格納される。制御プログラム120は、ロボット200の動作に係る制御演算を実行する命令、および、ロボット200との間のインターフェイスに係る命令を含む。制御プログラム120は、1以上のファンクションブロック(FB)を含んでもよい。ファンクションブロックは、入出力変数を有するブロックであり、指定されたタイミングで読み出されてインスタンス化されることで実行される。図5に示す制御プログラム120は、制振制御ファンクションブロック122と、直線補間ファンクションブロック124と、を含む。なお、制御プログラム120は、メモリカードなどの記録媒体、配信サーバなどからインストールされてもよい。 A control program 120 for realizing control for driving the robot 200 is stored in the storage 114 . The control program 120 includes commands for executing control operations related to the operation of the robot 200 and commands related to interfaces with the robot 200 . The control program 120 may contain one or more function blocks (FB). A function block is a block having input/output variables, and is executed by being read and instantiated at specified timing. A control program 120 shown in FIG. 5 includes a damping control function block 122 and a linear interpolation function block 124 . Note that the control program 120 may be installed from a recording medium such as a memory card, a distribution server, or the like.
 インターフェイス回路116は、ロボット200との間でデータをやり取りする。
 入力インターフェイス106は、制御処理回路104とキーボード、マウス、タッチパネル、専用コンソールなどの入力デバイス400との間のデータ伝送を仲介する。すなわち、入力インターフェイス106は、ユーザが入力デバイス400を操作することで与えられる情報を受け付ける。
Interface circuit 116 exchanges data with robot 200 .
The input interface 106 mediates data transmission between the control processing circuit 104 and an input device 400 such as a keyboard, mouse, touch panel, dedicated console, or the like. That is, input interface 106 accepts information given by the user operating input device 400 .
 <制御装置の機能構成>
 図6は、制御装置の機能構成を示す模式図である。図6に示されるように、制御装置100は、動作指令生成部10と、ロボット制御部12と、プロファイル選択部14とを含む。動作指令生成部10、ロボット制御部12およびプロファイル選択部14は、プロセッサ110(図5参照)が制御プログラム120を実行することにより実現される。より具体的には、動作指令生成部10およびロボット制御部12は、プロセッサ110が制振制御ファンクションブロック122および直線補間ファンクションブロック124を実行することによりそれぞれ実現される。
<Functional configuration of control device>
FIG. 6 is a schematic diagram showing the functional configuration of the control device. As shown in FIG. 6, the control device 100 includes an action command generator 10, a robot controller 12, and a profile selector . The motion command generation unit 10, the robot control unit 12, and the profile selection unit 14 are realized by executing the control program 120 by the processor 110 (see FIG. 5). More specifically, the motion command generator 10 and the robot controller 12 are implemented by the processor 110 executing a damping control function block 122 and a linear interpolation function block 124, respectively.
 制御装置100は、入力変数として、ワーク300の共振周波数(Hz)、ワーク300の移動距離(mm)、ユーザ所望のワーク300の最大速度(mm/s)(以下、「入力速度」と称する。)、速度調整比率(%)、ジャーク時間(ms)、調整定数(自然数)、およびロボット固有パラメータを受ける。ワーク300の移動距離は、ロボット200の先端の現在位置から目標位置までの距離である。制御装置100は、これらの入力変数をフィールドネットワークまたは入力デバイス400から受ける。 The control device 100 uses, as input variables, the resonance frequency (Hz) of the work 300, the movement distance (mm) of the work 300, and the maximum speed (mm/s) of the work 300 desired by the user (hereinafter referred to as "input speed"). ), speed adjustment ratio (%), jerk time (ms), adjustment constant (natural number), and robot specific parameters. The movement distance of the workpiece 300 is the distance from the current position of the tip of the robot 200 to the target position. Controller 100 receives these input variables from field network or input device 400 .
 ワーク300の共振周波数は、予め計測される。例えば、ロボット200を動作させたときのワーク300を撮像することにより得られる映像を解析することにより、ワーク300の共振周波数が計測される。あるいは、ロボット200を動作させたときのワーク300の振動を目視で確認することにより、ワーク300の共振周波数が計測されてもよい。あるいは、センサを用いて、ワーク300の共振周波数が計測されてもよい。 The resonance frequency of the workpiece 300 is measured in advance. For example, the resonance frequency of the work 300 is measured by analyzing an image obtained by imaging the work 300 when the robot 200 is operated. Alternatively, the resonance frequency of the workpiece 300 may be measured by visually confirming the vibration of the workpiece 300 when the robot 200 is operated. Alternatively, the resonance frequency of workpiece 300 may be measured using a sensor.
 速度調整比率は、ロボット200の合成速度(つまり、ワーク300の速度)の調整のために使用される。調整定数(自然数)は、共振周期の倍数として使用される。 The speed adjustment ratio is used to adjust the synthetic speed of the robot 200 (that is, the speed of the workpiece 300). Adjustment constants (natural numbers) are used as multiples of the resonance period.
 図7は、速度調整比率を変更したときの合成速度の時間変化の一例を示す図である。図7において、線25は、調整比率100%のときの、ロボット200の合成速度の時間変化を示す。線26は、速度調整比率50%のときの、ロボット200の合成速度の時間変化を示す。図7に示されるように、速度調整比率50%に設定されたときの速度は、速度調整比率100%に設定されたときの速度の50%に調整される。そのため、速度調整比率50%に設定されたときの加速時間T20および減速時間T22はそれぞれ、速度調整比率100%に設定されたときの加速時間T10および減速時間T12の2倍である。このように、加速時間T10および減速時間T12は、速度調整比率に反比例する。 FIG. 7 is a diagram showing an example of temporal changes in composite speed when the speed adjustment ratio is changed. In FIG. 7, line 25 indicates the time change of the synthetic speed of robot 200 when the adjustment ratio is 100%. A line 26 indicates the time change of the synthetic speed of the robot 200 when the speed adjustment ratio is 50%. As shown in FIG. 7, the speed when the speed adjustment ratio is set to 50% is adjusted to 50% of the speed when the speed adjustment ratio is set to 100%. Therefore, acceleration time T20 and deceleration time T22 when the speed adjustment ratio is set to 50% are twice the acceleration time T10 and deceleration time T12 when the speed adjustment ratio is set to 100%. Thus, acceleration time T10 and deceleration time T12 are inversely proportional to the speed adjustment ratio.
 ロボット固有パラメータは、標準時間(ms)、制限速度(mm/s)および制限比率(%)を含む。 The robot-specific parameters include standard time (ms), speed limit (mm/s) and limit ratio (%).
 制限速度は、ロボット200が最大能力で動作したときの合成速度であり、ロボット200に固有の値である。 The speed limit is a composite speed when the robot 200 operates at its maximum capacity, and is a value unique to the robot 200.
 制限比率は、ロボット200の合成加速度(つまり、ワーク300の加速度)の調整のために使用される比率(以下、「加速度調整比率」と称する。)の上限値であり、ロボット200に固有の値である。加速度調整比率は、ロボットが最大能力で動作したときの合成加速度(最大合成加速度)に対する比率である。具体的には、加速度調整比率は、加速時において、ロボットが最大能力で動作したときの第1基準加速度(正)に対する比率を示し、減速時において、第2基準加速度(負)に対する比率を示す。第1基準加速度の値は、最大合成加速度の絶対値と一致する。第2基準加速度の絶対値は、第1基準加速度の値と同じである。 The limit ratio is the upper limit value of the ratio (hereinafter referred to as "acceleration adjustment ratio") used for adjusting the synthetic acceleration of the robot 200 (that is, the acceleration of the workpiece 300), and is a value unique to the robot 200. is. The acceleration adjustment ratio is a ratio to the synthetic acceleration (maximum synthetic acceleration) when the robot operates at its maximum capacity. Specifically, the acceleration adjustment ratio indicates the ratio to the first reference acceleration (positive) when the robot operates at its maximum capability during acceleration, and indicates the ratio to the second reference acceleration (negative) during deceleration. . The value of the first reference acceleration matches the absolute value of the maximum synthesized acceleration. The absolute value of the second reference acceleration is the same as the value of the first reference acceleration.
 標準時間は、ジャーク時間が0msであるときの加減速の時間である。すなわち、標準時間は、速度0の状態から、第1基準加速度(すなわち、最大合成加速度)で加速し、制限速度に到達するまでの時間である。標準時間は、ロボット200に固有の値であり、例えば180msである。ジャーク時間が0msである場合、速度プロファイルは、図2の線20によって表される。そのため、標準時間は、図2の加速時間T10(または減速時間T12)に相当する。 The standard time is the acceleration/deceleration time when the jerk time is 0 ms. That is, the standard time is the time required to accelerate from the zero speed state to the first reference acceleration (that is, the maximum synthetic acceleration) and reach the speed limit. The standard time is a unique value for the robot 200, eg 180ms. With a jerk time of 0 ms, the velocity profile is represented by line 20 in FIG. Therefore, the standard time corresponds to acceleration time T10 (or deceleration time T12) in FIG.
 図6に示されるように、プロファイル選択部14は、ジャーク時間の入力を受ける。プロファイル選択部14は、ロボット制御部12が受け付け可能な複数の速度プロファイルの中から、入力されたジャーク時間に応じた1つのS字カーブ速度プロファイルを選択する。プロファイル選択部14は、選択した速度プロファイルを示す変数をロボット制御部12に出力する。複数の速度プロファイルは、図3に示されるようなS字カーブを有し、互いに異なるジャーク時間を有する。そのため、プロファイル選択部14は、複数の速度プロファイルの中から、入力されたジャーク時間を有する速度プロファイルを選択すればよい。 As shown in FIG. 6, the profile selection unit 14 receives input of the jerk time. The profile selection unit 14 selects one S-curve speed profile corresponding to the input jerk time from among a plurality of speed profiles that the robot control unit 12 can accept. The profile selection unit 14 outputs variables indicating the selected speed profile to the robot control unit 12 . The multiple speed profiles have S-curves as shown in FIG. 3 and have different jerk times. Therefore, the profile selection unit 14 may select the speed profile having the input jerk time from among the plurality of speed profiles.
 なお、ロボット制御部12が受け付け可能な複数の速度プロファイルの各々において、ジャーク時間T1,T3,T5,T7(図3参照)は、同じ長さを有し、等加速度時間T2,T6は、同じ長さを有する。 In each of the plurality of speed profiles that the robot control unit 12 can accept, the jerk times T1, T3, T5, and T7 (see FIG. 3) have the same length, and the constant acceleration times T2 and T6 have the same length. have a length.
 ロボット制御部12は、ロボット200の先端の現在位置および目標位置、速度調整比率、速度プロファイル、最大合成速度および加速度調整比率を受け、ワーク300が直線移動するようにロボット200を制御する。最大合成速度は、速度調整比率100%におけるロボット200の合成速度の最大値を示す。 The robot control unit 12 receives the current position and target position of the tip of the robot 200, speed adjustment ratio, speed profile, maximum combined speed and acceleration adjustment ratio, and controls the robot 200 so that the workpiece 300 moves linearly. The maximum combined speed indicates the maximum value of the combined speed of the robot 200 when the speed adjustment ratio is 100%.
 ロボット制御部12は、移動距離、速度調整比率、最大合成速度および加速度調整比率に応じて、速度プロファイルを修正する。 The robot control unit 12 corrects the speed profile according to the movement distance, speed adjustment ratio, maximum combined speed, and acceleration adjustment ratio.
 具体的には、ロボット制御部12は、速度プロファイルにおける等速度時間T4(図3参照)の速度を、最大合成速度に修正する。 Specifically, the robot control unit 12 corrects the speed of the constant speed time T4 (see FIG. 3) in the speed profile to the maximum combined speed.
 次に、ロボット制御部12は、速度プロファイルにおける等加速度時間T2(図3参照)の加速度を、第1基準加速度(正)に加速度調整比率を乗じた値に修正する。同様に、ロボット制御部12は、速度プロファイルにおける等加速度時間T6(図3参照)の加速度を、第2基準加速度(負)に加速度調整比率を乗じた値に修正する。このとき、ロボット制御部12は、加速終了時および減速開始時の速度が等速度時間T4の速度と一致するように、等加速度時間T2,T6の長さも修正する。 Next, the robot control unit 12 modifies the acceleration of the uniform acceleration time T2 (see FIG. 3) in the velocity profile to a value obtained by multiplying the first reference acceleration (positive) by the acceleration adjustment ratio. Similarly, the robot control unit 12 corrects the acceleration at constant acceleration time T6 (see FIG. 3) in the velocity profile to a value obtained by multiplying the second reference acceleration (negative) by the acceleration adjustment ratio. At this time, the robot control unit 12 also corrects the lengths of constant acceleration times T2 and T6 so that the speeds at the end of acceleration and the start of deceleration match the speed of constant speed time T4.
 次に、ロボット制御部12は、ロボット200の先端の現在位置と目標位置とを結ぶ直線距離(すなわち移動距離)を演算する。ロボット制御部12は、速度プロファイルの積分値が移動距離と一致するように、等速度時間T4の長さを修正する。 Next, the robot control unit 12 calculates a linear distance (that is, movement distance) connecting the current position of the tip of the robot 200 and the target position. The robot control unit 12 corrects the length of the constant velocity time T4 so that the integrated value of the velocity profile matches the movement distance.
 最後に、ロボット制御部12は、速度調整比率に従って、速度プロファイルの各時刻の速度を修正するとともに、ジャーク時間T1、等加速度時間T2、ジャーク時間T3、等速度時間T4、ジャーク時間T5、等加速度時間T6、およびジャーク時間T7の長さを修正する。 Finally, the robot control unit 12 corrects the speed at each time of the speed profile in accordance with the speed adjustment ratio, and adjusts the jerk time T1, uniform acceleration time T2, jerk time T3, uniform velocity time T4, jerk time T5, uniform acceleration Modify the length of time T6 and jerk time T7.
 ロボット制御部12は、このようにして修正された速度プロファイルに従った合成速度が出力されるように、ロボット200の各軸の指令値を生成し、生成した指令値をロボット200に出力する。 The robot control unit 12 generates command values for each axis of the robot 200 and outputs the generated command values to the robot 200 so that a composite speed according to the speed profile corrected in this way is output.
 ロボット制御部12が受ける速度調整比率、最大合成速度および加速度調整比率は、ユーザにとって、ワーク300の直線移動の時間変化をイメージしやすいパラメータである。そのため、ロボット制御部12が速度調整比率、最大合成速度および加速度調整比率を入力デバイス400から直接取得する参考形態が考えられる。これにより、ユーザは、これらのパラメータの値を適宜調整することにより、所望の時間変化でワーク300を直線移動させることができる。 The speed adjustment ratio, the maximum composite speed, and the acceleration adjustment ratio received by the robot control unit 12 are parameters that make it easy for the user to imagine the time change of the linear movement of the workpiece 300 . Therefore, a reference form is conceivable in which the robot control unit 12 directly acquires the speed adjustment ratio, the maximum combined speed, and the acceleration adjustment ratio from the input device 400 . Accordingly, the user can linearly move the workpiece 300 with a desired time change by appropriately adjusting the values of these parameters.
 システム1が生産ラインに設置される場合、通常、ワーク300をできるだけ短時間が移動させることが好ましい。そのため、ユーザは、最短時間でワーク300を直線移動させるときのワーク300の最大速度を最大合成速度として入力すればよい。ただし、最短時間でワーク300を直線移動させた場合、何らかの不具合が生じる可能性がある。このような場合、ユーザは、速度調整比率の値を調整することにより、ワーク300の速度を調整できる。あるいは、ユーザは、加速度調整比率を調整することにより、加速時間および減速時間を調整できる。 When the system 1 is installed in a production line, it is usually preferable to move the work 300 in as short a time as possible. Therefore, the user may input the maximum speed of the workpiece 300 when linearly moving the workpiece 300 in the shortest time as the maximum composite speed. However, if the work 300 is linearly moved in the shortest time, some problem may occur. In such a case, the user can adjust the speed of the workpiece 300 by adjusting the value of the speed adjustment ratio. Alternatively, the user can adjust the acceleration time and deceleration time by adjusting the acceleration adjustment ratio.
 しかしながら、速度調整比率、最大合成速度および加速度調整比率は、ワーク300の制振に関わるパラメータ(例えばジャーク時間と等加速度時間との和)を直接定義するものではない。また、ユーザは、速度調整比率、最大合成速度および加速度調整比率をどのように調整すれば、ワーク300の振動を抑制する条件(例えば、ジャーク時間と等加速度時間との和が共振周期の自然数倍と一致するという条件)を満たすかについて把握していない。そのため、ロボット制御部12が速度調整比率、最大合成速度および加速度調整比率を入力デバイス400から直接取得する参考形態では、ワーク300を直線移動させるときの振動を抑制することが困難である。 However, the speed adjustment ratio, maximum combined speed, and acceleration adjustment ratio do not directly define parameters related to damping of workpiece 300 (for example, the sum of jerk time and uniform acceleration time). In addition, the user determines how to adjust the speed adjustment ratio, the maximum combined speed, and the acceleration adjustment ratio to determine the conditions for suppressing the vibration of the workpiece 300 (for example, the sum of the jerk time and the constant acceleration time is a natural number of the resonance period). I do not know whether the condition that the Therefore, in the reference form in which the robot control unit 12 directly acquires the speed adjustment ratio, the maximum combined speed, and the acceleration adjustment ratio from the input device 400, it is difficult to suppress vibration when the work 300 is linearly moved.
 そのため、本実施の形態に係る制御装置100は、動作指令生成部10を備えることを特徴とする。 Therefore, the control device 100 according to the present embodiment is characterized by including the operation command generation unit 10 .
 動作指令生成部10は、共振周波数、移動距離、入力速度、速度調整比率、ジャーク時間、調整定数、およびロボット固有パラメータを受け、動作指令を生成する。生成された動作指令は、ロボット制御部12に入力される。動作指令は、最大合成速度と加速度調整比率とを含む。 The motion command generation unit 10 receives the resonance frequency, movement distance, input speed, speed adjustment ratio, jerk time, adjustment constant, and robot-specific parameters, and generates motion commands. The generated motion command is input to the robot controller 12 . The motion command includes the maximum combined speed and acceleration adjustment ratio.
 本発明者は、加速度調整比率とロボット200の合成速度のプロファイルとを比較検証した結果、標準時間の逆数に対するジャーク時間と等加速度時間との和の逆数の比率が加速度調整比率と一致するという知見を得た。動作指令生成部10は、当該知見に基づいて、ワーク300の直線移動におけるジャーク時間と等加速度時間との和が共振周期の自然数倍となるように動作指令を生成する。動作指令の生成方法については後述する。 As a result of comparing and verifying the acceleration adjustment ratio and the profile of the synthetic speed of the robot 200, the present inventor found that the ratio of the reciprocal of the sum of the jerk time and constant acceleration time to the reciprocal of the standard time matches the acceleration adjustment ratio. got Based on this knowledge, the motion command generator 10 generates a motion command so that the sum of the jerk time and constant acceleration time in the linear movement of the workpiece 300 is a natural number multiple of the resonance period. A method of generating an operation command will be described later.
 <制御装置の処理の流れ>
 図8は、制御装置の処理の流れを示すフローチャートである。図8に示されるように、プロセッサ110は、入力変数を用いて、動作指令を生成する(ステップS100)。次に、プロセッサ110は、生成された動作指令を含む入力情報に従って、ワーク300が直線移動するようにロボット200を制御する(ステップS200)。入力情報には、速度調整比率およびジャーク時間が含まれる。上述したように、プロセッサ110は、ジャーク時間に応じた速度プロファイルを選択する。プロセッサ110は、選択した速度プロファイルと、速度調整比率と、動作指令(最大合成速度および加速度調整比率)とを用いて、ワーク300が直線移動するようにロボット200を制御する。
<Processing flow of the control device>
FIG. 8 is a flow chart showing the flow of processing by the control device. As shown in FIG. 8, processor 110 uses the input variables to generate a motion command (step S100). Next, processor 110 controls robot 200 so that workpiece 300 linearly moves according to the generated input information including the motion command (step S200). Input information includes speed adjustment ratio and jerk time. As noted above, processor 110 selects a velocity profile that depends on the jerk time. Processor 110 controls robot 200 so that workpiece 300 moves linearly using the selected speed profile, speed adjustment ratio, and motion command (maximum combined speed and acceleration adjustment ratio).
 <動作指令の生成方法>
 図9~図11を参照して、動作指令の生成方法について説明する。図9は、図8のステップS100のサブルーチンの流れの一例を示すフローチャートである。
<How to generate motion commands>
A method of generating an operation command will be described with reference to FIGS. 9 to 11. FIG. FIG. 9 is a flow chart showing an example of the subroutine flow of step S100 of FIG.
 プロセッサ110は、入力変数を受け付ける(ステップS1)。入力変数には、以下の変数A~Nが含まれる。
変数A:移動距離(mm)、
変数B:入力速度(mm/s)、
変数C:速度調整比率(%)、
変数D:ジャーク時間(ms)、
変数E:共振周波数(Hz)、
変数F:調整定数、
変数G:標準時間(ms)、
変数M:制限速度(mm/s)、
変数N:制限比率(%)。
Processor 110 receives an input variable (step S1). Input variables include the following variables AN.
Variable A: moving distance (mm),
Variable B: input speed (mm/s),
Variable C: speed adjustment ratio (%),
Variable D: jerk time (ms),
Variable E: resonance frequency (Hz),
Variable F: adjustment constant,
Variable G: standard time (ms),
Variable M: speed limit (mm/s),
Variable N: limit ratio (%).
 次に、プロセッサ110は、以下の式(1)~(3)に従って、変数H,I,Jをそれぞれ算出する(ステップS2)。
H=B×C÷100 式(1)
I=1000÷E×F 式(2)
J=I+D 式(3)。
Processor 110 then calculates variables H, I, and J according to the following equations (1) to (3) (step S2).
H=B×C/100 Formula (1)
I=1000÷E×F Formula (2)
J=I+D Equation (3).
 図10は、図9のステップS2によって算出される変数を示す図である。図10に示されるように、変数Hは、ワーク300を直線移動させるときのロボット200の合成速度の最大値を示す。ステップS2において、入力速度に速度調整比率を乗じることにより、変数Hの値が算出される。変数Iは、ワーク300の共振周期の調整定数(自然数)倍の時間を示す。本実施の形態では、ジャーク時間と等加速度時間との和が共振周期の調整定数(自然数)倍となるように動作指令が生成される(図3参照)。そのため、ジャーク時間と等加速度時間との和は、変数Iの値を一致する。変数Jは、ワーク300の共振周期の調整定数(自然数)倍とジャーク時間との和を示す。ジャーク時間と等加速度時間との和が共振周期の調整定数(自然数)倍となるように動作指令が生成される場合、変数Jは、加速時間を示す。 FIG. 10 is a diagram showing variables calculated in step S2 of FIG. As shown in FIG. 10, variable H indicates the maximum composite speed of robot 200 when workpiece 300 is linearly moved. In step S2, the value of variable H is calculated by multiplying the input speed by the speed adjustment ratio. A variable I indicates a time that is an adjustment constant (natural number) times the resonance period of the workpiece 300 . In the present embodiment, the motion command is generated so that the sum of the jerk time and the constant acceleration time is an adjustment constant (natural number) times the resonance period (see FIG. 3). Therefore, the sum of the jerk time and constant acceleration time matches the value of variable I. The variable J indicates the sum of the adjustment constant (natural number) times the resonance period of the workpiece 300 and the jerk time. When an operation command is generated such that the sum of the jerk time and the constant acceleration time is an adjustment constant (natural number) times the resonance period, the variable J indicates the acceleration time.
 次に、プロセッサ110は、B<Mが満たされるか否かを判断する(ステップS3)。ステップS3でYESの場合、すなわち、入力速度が制限速度未満である場合、プロセッサ110は、変数Bの値を利用可能であると判断し、次のステップS4を実行する。 Next, processor 110 determines whether B<M is satisfied (step S3). If YES in step S3, ie the input speed is less than the speed limit, processor 110 determines that a value for variable B is available and executes the next step S4.
 ステップS4において、プロセッサ110は、D<Iが満たされるか否かを判断する。図10に示されるように、ジャーク時間と等加速度時間との和が共振周期の調整定数(自然数)倍と一致するためには、D<Iが満たされる必要がある。そのため、ステップS4でYESの場合、プロセッサ110は、変数D,Iの値を利用可能であると判断し、次のステップS5を実行する。 At step S4, the processor 110 determines whether D<I is satisfied. As shown in FIG. 10, D<I must be satisfied in order for the sum of the jerk time and constant acceleration time to match the resonance period times the adjustment constant (natural number). Therefore, if YES in step S4, the processor 110 determines that the values of the variables D and I are available, and executes the next step S5.
 ステップS5において、プロセッサ110は、以下の式(4)が満たされるか否かを判断する。
A÷J×1000<H 式(4)。
At step S5, the processor 110 determines whether the following equation (4) is satisfied.
A÷J×1000<H Equation (4).
 図11は、ステップS2で計算された変数Hの値を合成速度の最大値とする速度プロファイルと、式(4)の左辺の値を合成速度の最大値とする速度プロファイルとを示す図である。図11において、線20aは、ステップS2で計算された変数Hの値を合成速度の最大値とし、等速度時間を0としたときの速度プロファイルを示す。線20bは、式(4)の左辺の値を合成速度の最大値とし、等速度時間を0としたときの速度プロファイルを示す。線21は、線20bによって示される速度プロファイルに対応する加速度プロファイルを示す。 FIG. 11 is a diagram showing a speed profile in which the value of the variable H calculated in step S2 is the maximum value of the synthetic speed, and a speed profile in which the value of the left side of Equation (4) is the maximum value of the synthetic speed. . In FIG. 11, line 20a shows the velocity profile when the value of variable H calculated in step S2 is the maximum value of the combined velocity and the constant velocity time is zero. A line 20b indicates a velocity profile when the value of the left side of the equation (4) is the maximum value of the combined velocity and the constant velocity time is zero. Line 21 shows the acceleration profile corresponding to the velocity profile shown by line 20b.
 加速時間と減速時間とが同じ条件下において同じ移動距離だけ直線移動する場合、等速度時間が0であるときに、加速時間が最も長くなる。 When the acceleration time and deceleration time are the same and the same movement distance is linearly moved, the acceleration time is the longest when the constant velocity time is 0.
 式(4)が満たされる場合(ステップS5でYES)、図11に示されるように、線20aによって示される速度プロファイルの加速時間は、線20bによって示される速度プロファイルの加速時間よりも短い。線20bは、ジャーク時間と等加速度時間との和が共振周期の調整定数(自然数)倍と一致するときの速度プロファイルを示す。そのため、式(4)が満たされる場合、ステップS2で計算された変数Hの値を合成速度の最大値とする速度プロファイルでは、ジャーク時間と等加速度時間との和が共振周期の調整定数(自然数)倍よりも短くなる。すなわち、式(4)が満たされる場合、ジャーク時間と等加速度時間との和が共振周期の調整定数(自然数)倍となるように動作指令を生成できない。したがって、ステップS5でYESの場合、プロセッサ110は、変数Hの値をA÷J×1000の計算値に置き換える(ステップS6)。その後、プロセッサ110は、ステップS7を実行する。 When formula (4) is satisfied (YES in step S5), the acceleration time of the velocity profile indicated by line 20a is shorter than the acceleration time of the velocity profile indicated by line 20b, as shown in FIG. A line 20b shows the velocity profile when the sum of the jerk time and the constant acceleration time coincides with the resonance period times the adjustment constant (natural number). Therefore, when the formula (4) is satisfied, in the velocity profile in which the value of the variable H calculated in step S2 is the maximum value of the combined velocity, the sum of the jerk time and the constant acceleration time is the adjustment constant (natural number ) times shorter. That is, when the equation (4) is satisfied, the motion command cannot be generated so that the sum of the jerk time and the constant acceleration time is the adjustment constant (natural number) times the resonance period. Therefore, if YES in step S5, processor 110 replaces the value of variable H with the calculated value of A÷J×1000 (step S6). After that, the processor 110 executes step S7.
 一方、式(4)が満たされない場合(ステップS5でNO)、線20aによって示される速度プロファイルの加速時間は、線20bによって示される速度プロファイルの加速時間以上となる。この場合、ステップS2で計算された変数Hの値を合成速度の最大値としても、等速度時間を調整することにより、ジャーク時間と等加速度時間との和を共振周期の調整定数(自然数)倍と一致させることができる。そのため、ステップS5でNOの場合、プロセッサ110は、変数Hの値を変更することなく、次のステップS7を実行する。 On the other hand, if equation (4) is not satisfied (NO in step S5), the acceleration time of the speed profile indicated by line 20a is greater than or equal to the acceleration time of the speed profile indicated by line 20b. In this case, even if the value of the variable H calculated in step S2 is the maximum value of the combined speed, the sum of the jerk time and the constant acceleration time is multiplied by the adjustment constant (natural number) of the resonance cycle by adjusting the constant speed time. can be matched with Therefore, in the case of NO in step S5, the processor 110 executes the next step S7 without changing the value of the variable H.
 ステップS7において、プロセッサ110は、以下の式(5)に従って、変数Lを算出する。
L=100×H÷C 式(5)。
In step S7, processor 110 calculates variable L according to the following equation (5).
L=100×H÷C Equation (5).
 次のステップS8において、プロセッサ110は、以下の式(6)に従って、変数Kを算出する。
K=(100×G)÷(1000÷E×F)×(100÷C) 式(6)
すなわち、プロセッサ110は、標準時間の逆数に対する共振周期の自然数倍の逆数の比率((100×G)÷(1000÷E×F))を算出し、当該比率に基づいて変数Kの値を決定する。具体的には、プロセッサ110は、当該比率を速度調整比率によって除算することにより、変数Kの値を算出する。
At the next step S8, the processor 110 calculates a variable K according to Equation (6) below.
K=(100×G)÷(1000÷E×F)×(100÷C) Formula (6)
That is, the processor 110 calculates the ratio of the reciprocal of the natural number multiple of the resonance period to the reciprocal of the standard time ((100×G)/(1000/E×F)), and calculates the value of the variable K based on the ratio. decide. Specifically, processor 110 calculates the value of variable K by dividing the ratio by the speed adjustment ratio.
 次のステップS9において、プロセッサ110は、K<Nを満たすか否かを判断する。K<Nを満たす場合(ステップS9でYES)、プロセッサ110は、ステップS8において算出された変数Kを利用可能と判断し、ステップS10を実行する。 At the next step S9, the processor 110 determines whether K<N is satisfied. If K<N is satisfied (YES in step S9), processor 110 determines that variable K calculated in step S8 can be used, and executes step S10.
 ステップS10において、プロセッサ110は、最大合成速度および加速度調整比率として、変数L,Kをそれぞれ出力する。ステップS10の後、プロセッサ110は、処理を図8のステップS200に戻す。 At step S10, the processor 110 outputs variables L and K as the maximum combined speed and acceleration adjustment ratio, respectively. After step S10, processor 110 returns the process to step S200 of FIG.
 変数Lによって表される最大合成速度は、速度調整比率100%におけるロボット200の合成速度の最大値を示す。ワーク300の直線移動における最大速度は、最大合成速度と入力された速度調整比率との積で表される。そのため、変数L(最大合成速度)は、ワーク300の直線移動における最大速度を定義付けるパラメータである。上述したように、式(4)が満たされる場合、すなわち、A÷J×1000によって表される速度が変数Bと変数Cとの積で表される速度よりも小さい場合、プロセッサ110は、A÷J×1000によって表される速度を直線移動における最大速度として定義付ける変数Lを生成する。一方、A÷J×1000によって表される速度が変数Bと変数Cとの積で表される速度よりも大きい場合、プロセッサ110は、変数Bと変数Cとの積で表される速度を直線移動における最大速度として定義付ける変数Lを生成する。 The maximum composite speed represented by the variable L indicates the maximum value of the composite speed of the robot 200 at a speed adjustment ratio of 100%. The maximum speed in linear movement of the workpiece 300 is represented by the product of the maximum combined speed and the input speed adjustment ratio. Therefore, the variable L (maximum composite speed) is a parameter that defines the maximum speed of linear movement of the workpiece 300 . As described above, if equation (4) is satisfied, i.e., if the speed represented by A÷J×1000 is less than the speed represented by the product of variables B and C, processor 110 outputs A Create a variable L that defines the speed represented by ÷J×1000 as the maximum speed in linear motion. On the other hand, if the speed represented by A÷J×1000 is greater than the speed represented by the product of variables B and C, then processor 110 converts the speed represented by the product of variables B and C into a straight line. Create a variable L that defines the maximum speed in movement.
 ステップS3,S4,S9のいずれかにおいてNOの場合、プロセッサ110は、エラーコードを生成し、生成したエラーコードを出力する(ステップS11)。ステップS10の後、プロセッサ110は、処理を終了する。 If NO in any of steps S3, S4, and S9, processor 110 generates an error code and outputs the generated error code (step S11). After step S10, processor 110 terminates the process.
 ロボット制御部12として動作するプロセッサ110は、最大合成速度および加速度調整比率としてそれぞれ受けた変数L,Kを用いて、ワーク300が直線移動するようにロボット200を制御する。 The processor 110 operating as the robot control unit 12 controls the robot 200 so that the workpiece 300 moves linearly using the variables L and K received as the maximum combined speed and acceleration adjustment ratio.
 具体的には、プロセッサ110は、速度プロファイルにおける等速度時間T4(図3参照)の速度を、変数L(最大合成速度)の値に修正する。次に、プロセッサ110は、変数K(加速度調整比率)の値に応じて、速度プロファイルにおける等加速度時間T2,T6の各々の加速度を修正する。このとき、プロセッサ110は、加速終了時および減速開始時の速度が等速度時間T4の速度と一致するように、等加速度時間T2,T6の長さも修正する。次に、プロセッサ110は、速度プロファイルの積分値が移動距離と一致するように、等速度時間T4の長さを修正する。最後に、プロセッサ110は、速度調整比率に従って、速度プロファイルの各時刻の速度を修正するとともに、ジャーク時間T1、等加速度時間T2、ジャーク時間T3、等速度時間T4、ジャーク時間T5、等加速度時間T6、およびジャーク時間T7の長さを修正する。 Specifically, the processor 110 modifies the speed of the constant speed time T4 (see FIG. 3) in the speed profile to the value of the variable L (maximum composite speed). Processor 110 then modifies the acceleration at each of uniform acceleration times T2 and T6 in the velocity profile according to the value of variable K (acceleration adjustment ratio). At this time, processor 110 also corrects the lengths of constant acceleration times T2 and T6 so that the speeds at the end of acceleration and the start of deceleration match the speed of constant speed time T4. Next, processor 110 modifies the length of constant velocity time T4 so that the integrated value of the velocity profile matches the movement distance. Finally, the processor 110 corrects the speed at each time of the speed profile according to the speed adjustment ratio, and jerk time T1, constant acceleration time T2, jerk time T3, constant speed time T4, jerk time T5, constant acceleration time T6. , and the length of the jerk time T7.
 上述したように、本発明者は、「標準時間の逆数に対するジャーク時間と等加速度時間との和の逆数の比率が加速度調整比率と一致する」という知見を得た。また、図7に示されるように、加速時間および減速時間は、速度調整比率に反比例する。そのため、加速度調整比率および速度調整比率に従って修正された速度プロファイルにおいて、ジャーク時間と加速度時間との和は、以下の式(7)で表される。
ジャーク時間と加速度時間との和=G÷(K÷100)×(100÷C) 式(7)
式(7)のKに式(6)を代入することにより、ジャーク時間と加速度時間との和は、(1000÷E×F)、つまり、共振周期[ms]の調整定数(自然数)倍となる。
As described above, the inventors have found that "the ratio of the reciprocal of the sum of the jerk time and the constant acceleration time to the reciprocal of the standard time matches the acceleration adjustment ratio." Also, as shown in FIG. 7, the acceleration time and deceleration time are inversely proportional to the speed adjustment ratio. Therefore, in the speed profile modified according to the acceleration adjustment ratio and the speed adjustment ratio, the sum of the jerk time and the acceleration time is represented by the following equation (7).
Sum of jerk time and acceleration time = G/(K/100) x (100/C) Equation (7)
By substituting equation (6) for K in equation (7), the sum of the jerk time and the acceleration time is (1000÷E×F), that is, the resonance period [ms] multiplied by the adjustment constant (natural number). Become.
 このように、最大合成速度および加速度調整比率として変数L,Kをそれぞれ受けることにより、ジャーク時間と等加速度時間との和がワーク300の共振周期の調整定数(自然数)倍と一致する速度プロファイルに従って、ロボット200が制御される。これにより、ワーク300の振動が抑制される。 In this way, by receiving the variables L and K as the maximum combined speed and the acceleration adjustment ratio, respectively, the sum of the jerk time and the uniform acceleration time follows the speed profile that matches the adjustment constant (natural number) times the resonance period of the workpiece 300. , the robot 200 is controlled. Thereby, the vibration of the workpiece 300 is suppressed.
 <振動の抑制効果>
 本実施の形態に係る制御装置100によるワーク300の振動の抑制効果を確認した。図12は、参考形態に係る制御装置を用いたときのワークの振動波形を示す図である。図13は、本実施の形態に係る制御装置を用いたときのワークの振動波形を示す図である。
<Effect of suppressing vibration>
The effect of suppressing the vibration of the workpiece 300 by the control device 100 according to the present embodiment was confirmed. FIG. 12 is a diagram showing vibration waveforms of a workpiece when using the control device according to the reference embodiment. FIG. 13 is a diagram showing vibration waveforms of a workpiece when using the control device according to the present embodiment.
 図12および図13には、共振周波数31.05Hzを有する、直径0.55mmの針金をワーク300として用いたときの振動波形が示される。なお、参考形態に係る制御装置は、制御装置100と比較して、動作指令生成部10を備えない点で相違する。参考形態に係る制御装置において、ロボット制御部12には、加速度調整比率100%を入力するとともに、最大合成速度として入力速度を入力した。 12 and 13 show vibration waveforms when a wire having a resonance frequency of 31.05 Hz and a diameter of 0.55 mm is used as the workpiece 300. FIG. Note that the control device according to the reference embodiment differs from the control device 100 in that it does not include the operation command generation unit 10 . In the control device according to the reference embodiment, an acceleration adjustment ratio of 100% was input to the robot control unit 12, and an input speed was input as the maximum combined speed.
 図12に示されるように、参考形態に係る制御装置によってロボット200を制御した場合、ワーク300の先端は、振幅約1.0mmで振動した。振動の収束時間は、6秒以上であった。これに対し、本実施の形態に係る制御装置100によってロボット200を制御した場合、ワーク300の先端は、振幅約0.35mmで振動した。振動の収束時間は、0.5秒であった。このように、本実施の形態に係る制御装置100を用いることにより、ワーク300の振動が抑制される。 As shown in FIG. 12, when the robot 200 was controlled by the control device according to the reference embodiment, the tip of the workpiece 300 vibrated with an amplitude of approximately 1.0 mm. The vibration convergence time was 6 seconds or longer. In contrast, when the robot 200 was controlled by the control device 100 according to the present embodiment, the tip of the workpiece 300 vibrated with an amplitude of approximately 0.35 mm. The oscillation convergence time was 0.5 seconds. Vibration of the workpiece 300 is thus suppressed by using the control device 100 according to the present embodiment.
 <変形例>
 ロボット200の本体がエンドエフェクタ202を片持ち梁状に支持する場合、エンドエフェクタ202自体が振動する可能性がある。この場合、ユーザは、エンドエフェクタ202の共振周波数、または、エンドエフェクタ202およびワーク300の全体の共振周波数を制御装置100に入力すればよい。
<Modification>
If the body of the robot 200 supports the end effector 202 in a cantilevered manner, the end effector 202 itself may vibrate. In this case, the user may input the resonant frequency of the end effector 202 or the overall resonant frequency of the end effector 202 and the workpiece 300 into the control device 100 .
 §3 付記
 以上のように、本実施の形態は以下のような開示を含む。
§3 Supplementary Note As described above, the present embodiment includes the following disclosures.
 (構成1)
 複数の軸(201)を有し、片持ち梁状に物体(300,202)を支持するロボット(200)を制御する制御装置(100)であって、
 前記ロボット(200)の動作を規定する動作指令を生成する生成部(10,110)と、
 前記動作指令を含む入力情報に従って、前記物体(300,202)が直線移動するように前記ロボット(200)を制御するロボット制御部(12,110)と、を備え、
 前記生成部(10,110)は、前記物体(300,202)の共振周期を定義付ける第1パラメータの入力を受け、前記物体(300,202)の直線移動におけるジャーク時間と等加速度時間との和が前記共振周期の自然数倍となるように前記動作指令を生成する、制御装置(100)。
(Configuration 1)
A control device (100) for controlling a robot (200) having a plurality of axes (201) and supporting objects (300, 202) in a cantilever manner,
a generator (10, 110) for generating a motion command that defines the motion of the robot (200);
a robot control unit (12, 110) that controls the robot (200) so that the object (300, 202) linearly moves according to input information including the operation command;
The generator (10, 110) receives an input of a first parameter defining a resonance period of the object (300, 202), and calculates the sum of the jerk time and constant acceleration time in the linear movement of the object (300, 202). is a natural number multiple of the resonance period.
 (構成2)
 前記動作指令は、前記ロボット(200)の最大合成加速度に対する比率を示す第2パラメータを含み、
 前記生成部(10,110)は、
  速度0の状態から前記最大合成加速度で加速し、制限速度に到達するまでの標準時間を取得し、
  前記標準時間の逆数に対する前記共振周期の自然数倍の逆数の第1比率を算出し、
  前記第1比率に基づいて前記第2パラメータの値を決定する、構成1に記載の制御装置(100)。
(Configuration 2)
the motion command includes a second parameter indicating a ratio to the maximum synthetic acceleration of the robot (200);
The generating unit (10, 110)
Accelerate from a state of zero speed to the maximum synthetic acceleration, acquire the standard time to reach the speed limit,
calculating a first ratio of the reciprocal of the natural number multiple of the resonance period to the reciprocal of the standard time;
The controller (100) of arrangement 1, wherein the value of said second parameter is determined based on said first ratio.
 (構成3)
 前記入力情報は、第2比率を含み、
 前記ロボット制御部(12,110)は、前記動作指令に従って決定される速度に前記第2比率を乗算することにより得られる速度で前記ロボット(200)を動作させ、
 前記第2パラメータは、前記第1比率を前記第2比率によって除算することにより得られる値を示す、構成2に記載の制御装置(100)。
(Composition 3)
the input information includes a second ratio;
The robot control unit (12, 110) operates the robot (200) at a speed obtained by multiplying the speed determined according to the operation command by the second ratio,
3. The controller (100) of configuration 2, wherein said second parameter represents a value obtained by dividing said first ratio by said second ratio.
 (構成4)
 前記動作指令は、前記直線移動における前記物体(300,202)の最大速度を定義付けるための第3パラメータを含み、
 前記生成部(10,110)は、
  前記物体(300,202)の移動距離と、第1速度との入力をさらに受け、
  前記共振周期の自然数倍と前記ジャーク時間との和によって前記移動距離を除算することにより得られる第2速度と前記第1速度とを比較し、
  前記第2速度が前記第1速度よりも小さいことに応じて、前記第2速度を前記最大速度として定義付ける前記第3パラメータを生成し、
  前記第2速度が前記第1速度よりも大きいことに応じて、前記第1速度を前記最大速度として定義付ける前記第3パラメータを生成する、構成1から3のいずれかに記載の制御装置(100)。
(Composition 4)
said motion command includes a third parameter for defining a maximum velocity of said object (300, 202) in said linear movement;
The generating unit (10, 110)
further receiving an input of a moving distance of the object (300, 202) and a first speed;
comparing the first speed with a second speed obtained by dividing the movement distance by the sum of the natural number times the resonance period and the jerk time;
responsive to the second velocity being less than the first velocity, generating the third parameter defining the second velocity as the maximum velocity;
4. The controller (100) of any of the arrangements 1-3, responsive to the second speed being greater than the first speed, generating the third parameter defining the first speed as the maximum speed. .
 (構成5)
 前記生成部(10,110)は、ファンクションブロック(122)の形で命令が規定されることにより実現される、構成1から4のいずれかに記載の制御装置(100)。
(Composition 5)
5. The control device (100) according to any one of configurations 1 to 4, wherein the generator (10, 110) is implemented by defining an instruction in the form of a function block (122).
 (構成6)
 複数の軸(201)を有し、片持ち梁状に物体(300,202)を支持するロボット(200)を制御する制御方法であって、
 前記ロボット(200)の動作を規定する動作指令を生成するステップと、
 前記動作指令を含む入力情報に従って、前記物体(300,202)が直線移動するように前記ロボットを制御するステップと、を備え、
 前記生成するステップは、
  前記物体(300,202)の共振周期を定義付けるパラメータの入力を受けるステップと、
  前記物体(300,202)の直線移動におけるジャーク時間と等加速度時間との和が前記共振周期の自然数倍となるように前記動作指令を生成するステップと、を含む、制御方法。
(Composition 6)
A control method for controlling a robot (200) having a plurality of axes (201) and supporting objects (300, 202) in a cantilever manner, comprising:
generating a motion command that defines the motion of the robot (200);
and controlling the robot so that the object (300, 202) moves linearly according to the input information including the operation command;
The generating step includes:
receiving input of parameters defining a resonance period of said object (300, 202);
and generating the operation command so that the sum of the jerk time and constant acceleration time in the linear movement of the object (300, 202) is a natural number multiple of the resonance period.
 (構成7)
 構成6に記載の制御方法をコンピュータ(100,110)に実行させる、プログラム(120)。
(Composition 7)
A program (120) for causing a computer (100, 110) to execute the control method according to configuration 6.
 本発明の実施の形態について説明したが、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 Although the embodiment of the present invention has been described, it should be considered that the embodiment disclosed this time is illustrative in all respects and not restrictive. The scope of the present invention is indicated by the claims, and is intended to include all changes within the meaning and range of equivalents to the claims.
 1 システム、10 動作指令生成部、12 ロボット制御部、14 プロファイル生成部、100 制御装置、102 フィールドネットワークコントローラ、104 制御処理回路、106 入力インターフェイス、110 プロセッサ、112 メインメモリ、114 ストレージ、116 インターフェイス回路、120 制御プログラム、122 制振制御ファンクションブロック、124 直線補間ファンクションブロック、200 ロボット、201 軸、202 エンドエフェクタ、300 ワーク、400 入力デバイス。 1 system, 10 motion command generator, 12 robot controller, 14 profile generator, 100 controller, 102 field network controller, 104 control processing circuit, 106 input interface, 110 processor, 112 main memory, 114 storage, 116 interface circuit , 120 control program, 122 damping control function block, 124 linear interpolation function block, 200 robot, 201 axis, 202 end effector, 300 workpiece, 400 input device.

Claims (7)

  1.  複数の軸を有し、片持ち梁状に物体を支持するロボットを制御する制御装置であって、
     前記ロボットの動作を規定する動作指令を生成する生成部と、
     前記動作指令を含む入力情報に従って、前記物体が直線移動するように前記ロボットを制御するロボット制御部と、を備え、
     前記生成部は、前記物体の共振周期を定義付ける第1パラメータの入力を受け、前記物体の直線移動におけるジャーク時間と等加速度時間との和が前記共振周期の自然数倍となるように前記動作指令を生成する、制御装置。
    A control device for controlling a robot having a plurality of axes and supporting an object in a cantilever manner,
    a generation unit that generates a motion command that defines the motion of the robot;
    a robot control unit that controls the robot so that the object moves linearly according to input information including the operation command;
    The generator receives an input of a first parameter that defines a resonance period of the object, and generates the operation command so that the sum of the jerk time and constant acceleration time in linear movement of the object is a natural number multiple of the resonance period. A control device that generates
  2.  前記動作指令は、前記ロボットの最大合成加速度に対する比率を示す第2パラメータを含み、
     前記生成部は、
      速度0の状態から前記最大合成加速度で加速し、制限速度に到達するまでの標準時間を取得し、
      前記標準時間の逆数に対する前記共振周期の自然数倍の逆数の第1比率を算出し、
      前記第1比率に基づいて前記第2パラメータの値を決定する、請求項1に記載の制御装置。
    The motion command includes a second parameter indicating a ratio to the maximum synthetic acceleration of the robot,
    The generating unit
    Accelerate from a state of zero speed to the maximum synthetic acceleration, acquire the standard time to reach the speed limit,
    calculating a first ratio of the reciprocal of the natural number multiple of the resonance period to the reciprocal of the standard time;
    2. The controller of claim 1, wherein the value of said second parameter is determined based on said first ratio.
  3.  前記入力情報は、第2比率を含み、
     前記ロボット制御部は、前記動作指令に従って決定される速度に前記第2比率を乗算することにより得られる速度で前記ロボットを動作させ、
     前記第2パラメータは、前記第1比率を前記第2比率によって除算することにより得られる値を示す、請求項2に記載の制御装置。
    the input information includes a second ratio;
    The robot control unit operates the robot at a speed obtained by multiplying the speed determined according to the operation command by the second ratio,
    3. The control device according to claim 2, wherein said second parameter indicates a value obtained by dividing said first ratio by said second ratio.
  4.  前記動作指令は、前記直線移動における前記物体の最大速度を定義付けるための第3パラメータを含み、
     前記生成部は、
      前記物体の移動距離と、第1速度との入力をさらに受け、
      前記共振周期の自然数倍と前記ジャーク時間との和によって前記移動距離を除算することにより得られる第2速度と前記第1速度とを比較し、
      前記第2速度が前記第1速度よりも小さいことに応じて、前記第2速度を前記最大速度として定義付ける前記第3パラメータを生成し、
      前記第2速度が前記第1速度よりも大きいことに応じて、前記第1速度を前記最大速度として定義付ける前記第3パラメータを生成する、請求項1から3のいずれか1項に記載の制御装置。
    said motion command includes a third parameter for defining a maximum velocity of said object in said linear movement;
    The generating unit
    further receiving an input of a moving distance of the object and a first speed;
    comparing the first speed with a second speed obtained by dividing the movement distance by the sum of the natural number times the resonance period and the jerk time;
    responsive to the second velocity being less than the first velocity, generating the third parameter defining the second velocity as the maximum velocity;
    4. A controller as claimed in any one of the preceding claims, responsive to the second speed being greater than the first speed to generate the third parameter defining the first speed as the maximum speed. .
  5.  前記生成部は、ファンクションブロックの形で命令が規定されることにより実現される、請求項1から4のいずれか1項に記載の制御装置。 The control device according to any one of claims 1 to 4, wherein the generator is implemented by defining commands in the form of function blocks.
  6.  複数の軸を有し、片持ち梁状に物体を支持するロボットを制御する制御方法であって、
     前記ロボットの動作を規定する動作指令を生成するステップと、
     前記動作指令を含む入力情報に従って、前記物体が直線移動するように前記ロボットを制御するステップと、を備え、
     前記生成するステップは、
      前記物体の共振周期を定義付けるパラメータの入力を受けるステップと、
      前記物体の直線移動におけるジャーク時間と等加速度時間との和が前記共振周期の自然数倍となるように前記動作指令を生成するステップと、を含む、制御方法。
    A control method for controlling a robot having a plurality of axes and supporting an object in a cantilever manner, comprising:
    generating a motion command that defines the motion of the robot;
    and controlling the robot so that the object moves linearly according to the input information including the operation command;
    The generating step includes:
    receiving input of parameters defining a resonance period of the object;
    and generating the operation command so that the sum of the jerk time and constant acceleration time in the linear movement of the object is a natural number multiple of the resonance period.
  7.  請求項6に記載の制御方法をコンピュータに実行させる、プログラム。 A program that causes a computer to execute the control method according to claim 6.
PCT/JP2022/015553 2021-08-02 2022-03-29 Control device, control method, and program WO2023013168A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021126488A JP2023021555A (en) 2021-08-02 2021-08-02 Control device, control method and program
JP2021-126488 2021-08-02

Publications (1)

Publication Number Publication Date
WO2023013168A1 true WO2023013168A1 (en) 2023-02-09

Family

ID=85155675

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/015553 WO2023013168A1 (en) 2021-08-02 2022-03-29 Control device, control method, and program

Country Status (2)

Country Link
JP (1) JP2023021555A (en)
WO (1) WO2023013168A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116871775A (en) * 2023-09-08 2023-10-13 惠生(南通)重工有限公司 Welding robot system for cross ground rail type 3D grid frame structure

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5638267A (en) * 1994-06-15 1997-06-10 Convolve, Inc. Method and apparatus for minimizing unwanted dynamics in a physical system
JPH09251955A (en) * 1996-01-08 1997-09-22 Canon Inc Method and apparatus for exposure and device manufacturing method
JPH11312643A (en) * 1998-03-05 1999-11-09 Nikon Corp Stage device, method for controlling stage, and device and method for exposure
JP2000047723A (en) * 1998-07-04 2000-02-18 Samsung Electronics Co Ltd Method and device for input shape filtering using digital convolution

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5638267A (en) * 1994-06-15 1997-06-10 Convolve, Inc. Method and apparatus for minimizing unwanted dynamics in a physical system
JPH09251955A (en) * 1996-01-08 1997-09-22 Canon Inc Method and apparatus for exposure and device manufacturing method
JPH11312643A (en) * 1998-03-05 1999-11-09 Nikon Corp Stage device, method for controlling stage, and device and method for exposure
JP2000047723A (en) * 1998-07-04 2000-02-18 Samsung Electronics Co Ltd Method and device for input shape filtering using digital convolution

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116871775A (en) * 2023-09-08 2023-10-13 惠生(南通)重工有限公司 Welding robot system for cross ground rail type 3D grid frame structure
CN116871775B (en) * 2023-09-08 2023-11-14 惠生(南通)重工有限公司 Welding robot system for cross ground rail type 3D grid frame structure

Also Published As

Publication number Publication date
JP2023021555A (en) 2023-02-14

Similar Documents

Publication Publication Date Title
JP5968572B1 (en) Control parameter adjustment device
JP4541218B2 (en) Command generator
JP5781241B1 (en) Numerical controller
JP2001296912A (en) Motor velocity/acceleration decision method, acceleration/deceleration generation method, acceleration/deceleration control method, acceleration/ deceleration controller and motor controller
JP2004314137A (en) Laser beam machining robot
WO2023013168A1 (en) Control device, control method, and program
WO2021048959A1 (en) Numerical control device, numerical control method, and machine learning device
JP2007094936A (en) Numerical value controller
CN111745621B (en) Robot control device, robot control method, and robot system
JP3135738B2 (en) Numerical control unit
WO1994019732A1 (en) Device for reducing oscillations of a robot
JPH06114762A (en) Vibration damping control method
CN113852321B (en) Instruction generating device and instruction generating method
WO2009141006A1 (en) A method and a system for controlling an industrial robot in accordance with a set of motion control parameters
JP2001188605A (en) Method for interpolating curve
CN111331577B (en) Robot control device and control method
JPH10143249A (en) Control system, acceleration pattern setting method, and parameter setting method therefor
JP6647477B1 (en) Numerical control device and machine learning device
JP2012137990A (en) Numerical control unit, movement control method, movement control program, and storage medium
JP2000163114A (en) Intra-interpolation curve acceleration and deceleration processing method
JP7119748B2 (en) Model predictive controller, control method of model predictive controller, information processing program, and recording medium
JP5381806B2 (en) Numerical control device for machine tool, numerical control method for machine tool, and numerical control program for machine tool
WO2024070054A1 (en) Control parameter adjustment device and control parameter adjustment method
JP2004094649A (en) Positioning control device
JP4840987B2 (en) Positioning control device for equipment related to electronic component mounting

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22852597

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE