[go: up one dir, main page]

WO2018131778A1 - Procédé permettant de générer un profil de mouvement en utilisant une courbe en s et dispositif informatique - Google Patents

Procédé permettant de générer un profil de mouvement en utilisant une courbe en s et dispositif informatique Download PDF

Info

Publication number
WO2018131778A1
WO2018131778A1 PCT/KR2017/012030 KR2017012030W WO2018131778A1 WO 2018131778 A1 WO2018131778 A1 WO 2018131778A1 KR 2017012030 W KR2017012030 W KR 2017012030W WO 2018131778 A1 WO2018131778 A1 WO 2018131778A1
Authority
WO
WIPO (PCT)
Prior art keywords
time
section
maximum
acceleration
motion
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/KR2017/012030
Other languages
English (en)
Korean (ko)
Inventor
배상진
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hanwha Vision Co Ltd
Original Assignee
Hanwha Techwin Co Ltd
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 Hanwha Techwin Co Ltd filed Critical Hanwha Techwin Co Ltd
Priority to CN201780064913.1A priority Critical patent/CN110023856B/zh
Publication of WO2018131778A1 publication Critical patent/WO2018131778A1/fr
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P31/00Arrangements for regulating or controlling electric motors not provided for in groups H02P1/00 - H02P5/00, H02P7/00 or H02P21/00 - H02P29/00
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34095Look ahead segment calculation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35585Motion command profile
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40395Compose movement with primitive movement segments from database

Definitions

  • the present embodiment relates to a method for generating a motion profile using an S-curve and a computing device therefor.
  • Incoming motor control mounted on the robot's joints uses an S-curve velocity profile that limits the trapezoidal or jerk values as a reference signal to generate point to point motion. Since the movement time and the moving pattern of the robot are determined by the generated profile, it is important to generate a profile for high speed low vibration motion.
  • Embodiments of the present invention provide a method of generating a motion profile having any limited jerk value, generating an asymmetric speed profile with any constant as the initial and ending speeds, and superimposing two or more motions.
  • Motion profile generation method using the S-curve under one or more constraints, calculating the time of each of the acceleration section, the maximum acceleration section, the maximum speed section, the deceleration section and the maximum deceleration section; Generating a motion profile by applying the calculated time and jerk to a polynomial defined for each section; And generating an overlapping motion profile in which two or more motion profiles, the final velocity of the previous motion as the initial velocity of the next motion, are continuous.
  • the initial speed and the final speed may be any constant.
  • the calculating of time may include calculating time of each section by a corresponding polynomial according to a comparison result with a moving distance to a target position, a first threshold distance, and a second threshold distance longer than the first threshold distance. can do.
  • the time of each interval is calculated by the polynomial of
  • Ta may be a time of the maximum acceleration section
  • Tv may be a time of the maximum speed section
  • Td may be a time of the maximum deceleration section
  • Tja may be a time of the acceleration section
  • Tjd may be a time of the deceleration section.
  • the time of each interval is calculated by the polynomial of
  • Ta may be a time of the maximum acceleration section
  • Td may be a time of the maximum deceleration section
  • Tja may be a time of the acceleration section
  • Tjd may be a time of the deceleration section.
  • the time of each interval is calculated by the polynomial of
  • Ta is the time of the maximum acceleration section
  • Tv is the time of the maximum speed section
  • Td is the time of the maximum deceleration section
  • Tja is the time of the acceleration section
  • Tjd is the time of the deceleration section
  • Tja satisfying the maximum acceleration in Tja may be Tja *
  • Tjd satisfying the maximum deceleration in Tjd may be Tjd *.
  • the one or more constraints may include a first constraint (C1), which is an equivalent constraint of a starting position and an ending position, a second constraint (C2), which is a constraint that the value of velocity does not cross zero, and a jerk at any point in time, It may include a third constraint (C3) is a constraint that the acceleration, the speed is within any limit value.
  • the time calculating step may include calculating a time of each section by a nonlinear program technique for finding a solution that minimizes an objective function using the time of each section as a parameter.
  • the pre-processing unit for calculating the time of each of the acceleration section, the maximum acceleration section, the maximum speed section, the deceleration section and the maximum deceleration section; And generating a motion profile by applying the calculated time and jerk to a polynomial defined for each section, and generating a superimposed motion profile in which two or more motion profiles in which the final velocity of the previous motion is the initial velocity of the next motion are generated. It includes;
  • the initial speed and the final speed may be any constant.
  • the preprocessor may calculate the time of each section by a corresponding polynomial according to a comparison result of the movement distance to the target position, the first critical distance, and the second critical distance longer than the first critical distance.
  • the preprocessing unit if the movement distance is less than the first critical distance,
  • Ta may be a time of the maximum acceleration section
  • Tv may be a time of the maximum speed section
  • Td may be a time of the maximum deceleration section
  • Tja may be a time of the acceleration section
  • Tjd may be a time of the deceleration section.
  • the preprocessing unit if the movement distance is between the first critical distance and the second critical distance,
  • Ta may be a time of the maximum acceleration section
  • Td may be a time of the maximum deceleration section
  • Tja may be a time of the acceleration section
  • Tjd may be a time of the deceleration section.
  • the preprocessing unit if the movement distance is greater than the second critical distance,
  • Ta is the time of the maximum acceleration section
  • Tv is the time of the maximum speed section
  • Td is the time of the maximum deceleration section
  • Tja is the time of the acceleration section
  • Tjd is the time of the deceleration section
  • Tja satisfying the maximum acceleration in Tja may be Tja *
  • Tjd satisfying the maximum deceleration in Tjd may be Tjd *.
  • the one or more constraints may include a first constraint (C1), which is an equivalent constraint of a starting position and an ending position, a second constraint (C2), which is a constraint that the value of velocity does not cross zero, and a jerk at any point in time, It may include a third constraint (C3) is a constraint that the acceleration, the speed is within any limit value.
  • the preprocessing unit may calculate the time of each section by a nonlinear program technique for finding a solution that minimizes the objective function using the time of each section as a parameter.
  • a motion profile capable of moving to an optimal time while satisfying a constraint condition may be generated.
  • FIG. 1 illustrates a computing device for generating a motion profile according to an embodiment of the present invention.
  • FIG. 2 is an example of a position profile (a), a velocity profile (b) and an acceleration profile (c) generated according to one embodiment of the invention.
  • 3 is an example of generating a motion profile by calculating the time for each section by comparing the critical distance and the target position according to an embodiment of the present invention.
  • FIG. 4 is an example in which a motion profile is generated by calculating time for each section by nonlinear programming according to an embodiment of the present invention.
  • 5 and 6 are flowcharts schematically illustrating a method of generating a motion profile according to an embodiment of the present invention.
  • Motion profile generation method using the S-curve under one or more constraints, calculating the time of each of the acceleration section, the maximum acceleration section, the maximum speed section, the deceleration section and the maximum deceleration section; Generating a motion profile by applying the calculated time and jerk to a polynomial defined for each section; And generating an overlapping motion profile in which two or more motion profiles, the final velocity of the previous motion as the initial velocity of the next motion, are continuous.
  • FIG. 1 illustrates a computing device for generating a motion profile according to an embodiment of the present invention.
  • the computing device 10 may generate a motion profile for controlling a motor or the like.
  • Computing device 10 may be implemented in various numbers of hardware or / and software configurations that perform particular functions.
  • computing device 10 may refer to a data processing device embedded in hardware that has physically structured circuitry to perform functions represented by code or instructions contained within a program.
  • the computing device 10 may include a preprocessor 20 and a profile generator 40.
  • the computing device 10 may be connected to the display 60 and the input device 80 by wire or wirelessly.
  • the preprocessor 20 may calculate an optimal time for each section of the motion profile. A detailed description of the time calculation method for each section will be described later.
  • the optimum time may be a minimum time that minimizes the moving distance of the section.
  • the profile generator 40 may generate a motion profile using a polynomial defined for each section.
  • the motion profile may include a position profile, a velocity profile and an acceleration profile.
  • the profile generator 40 may calculate the acceleration, speed, and position of each section by applying time and jerk to the polynomial defined in each section. In one embodiment, the profile generator 40 may calculate the acceleration by integrating the jerk, calculate the speed by integrating the acceleration, and calculate the position by integrating the speed.
  • the profile generator 40 may generate an overlapping motion profile connecting two or more motions.
  • the profile generator 40 sets the final speed Vf of the previous motion to the initial speed Vi of the next motion in order to generate the overlapping motion profile.
  • the final speed Vf and the initial speed Vi can be any constant.
  • the constant may contain zero.
  • Embodiments of the present invention can generate a motion profile including constraints that limit the initial and end speeds to arbitrary constants, and can reduce operation time and increase productivity by superimposing two motion profiles without stationary motion.
  • the display 60 may be connected to the computing device 10 by wire or wirelessly, and may process an image output from the computing device 10 to provide to the user.
  • the display 50 may include a liquid crystal display panel (LCD), an organic light emitting display panel (OLED), an electrophoretic display panel (EPD), or the like.
  • the display 60 may be provided in the form of a touch screen to receive an input through a user's touch and operate as a user input interface.
  • the input device 80 is connected to the computing device 10 by wire or wirelessly to generate input data for controlling the computing device 10.
  • the input device 80 may include a key pad, a dome switch, a touch pad, a mouse, a remote controller, a jog wheel, a jog switch, and the like.
  • FIG. 2 is an example of a position profile (a), a velocity profile (b) and an acceleration profile (c) generated according to one embodiment of the invention.
  • the motion profile according to an embodiment of the present invention may include an acceleration step for accelerating from an initial initial speed to a maximum speed, a constant velocity step following the acceleration step, and a deceleration step for decelerating to a final speed in succession with the constant speed step.
  • an acceleration step for accelerating from an initial initial speed to a maximum speed
  • a constant velocity step following the acceleration step for accelerating from an initial initial speed to a maximum speed
  • a deceleration step for decelerating to a final speed in succession with the constant speed step.
  • All sections from the start to the end of the motion profile can be divided into seven sections, T0 to T7.
  • the sections T0 to T3 correspond to the acceleration stage
  • the sections T3 to T4 correspond to the constant speed stage
  • the sections T4 to T7 correspond to the deceleration stage.
  • the acceleration stage may be divided into an acceleration section including a T0 to T1 and a T2 to T3 section and a maximum acceleration section, which is a T1 to T2 section operating at the maximum acceleration.
  • the constant speed step may include a maximum speed section that is a T3 to T4 section operating at constant speed at the maximum speed.
  • the deceleration step may be divided into a deceleration section including a T4 to T5 and a T6 to T7 section and a maximum deceleration section that is a T5 to T6 section that operates at the maximum deceleration.
  • the initial velocity v (T0) and final velocity v (T7) can be non-zero values.
  • the initial velocity and slope of the acceleration section in the velocity profile b may be different from the final velocity and slope of the deceleration section, so that an asymmetric S-curve velocity profile can be generated.
  • Constraints for calculating the time of the motion profile according to an embodiment of the present invention are as follows.
  • Constraints C1 are equality constraints of the starting position and the ending position.
  • the starting position is the origin (0) and the ending position is the target position (Pf). Since the moving distance is from the origin to the target position, the target position becomes the moving distance.
  • the initial velocity Vi at the starting position and the final velocity Vf at the ending position may each be any constant. Any constant may contain zero.
  • the acceleration at the start and end positions is zero.
  • Constraint C2 is a constraint that the velocity value does not cross over velocity zero. That is, in each of the acceleration section and the deceleration section, the speed does not change from a negative value to a positive value or from a positive value to a negative value, and has a negative value or a positive value.
  • Constraints C3 are constraints that jerk (j, jerk), acceleration (a), and speed (v) are within arbitrary limits at any time point T0? T?
  • the jerk is equal to or less than the first jerk limit value Ja and the acceleration is equal to or less than the maximum acceleration Am.
  • the jerk is below the second limit value Jd and the deceleration is below the maximum deceleration Dm.
  • the speed is below the maximum speed (Vm).
  • the first jerk limit value Ja and the second jerk limit value Jd may be determined by the following equations (1) and (2), respectively.
  • is a constant set by the user and may indicate a smoothness of the motion profile, and may be set to a value greater than 0 and less than or equal to 1.
  • can generate an S-curve velocity profile in which the time between the acceleration and deceleration sections is asymmetric.
  • the first jerk limit value Ja may be calculated by the maximum acceleration Am, the maximum speed Vm, the final speed Vf, and ⁇ a.
  • the second jerk limit value Jd may be calculated by the maximum deceleration Dm, the maximum speed Vm, the final speed Vf, and ⁇ d.
  • the motion profile generation method according to the embodiment of the present invention is classified into three cases of short distance, medium distance, and long distance according to the movement distance. Separate.
  • the shorter distance has shorter travel distance (Pf), ) And speed ( ) Is characterized by not reaching the maximum acceleration (Am), the maximum deceleration (Dm), the maximum speed (Vm).
  • the moving distance Pf of the intermediate distance is the acceleration ( ) Reaches maximum acceleration (Am) and maximum deceleration (Dm), but speed ( ) Does not reach the maximum speed (Vm).
  • the long distance travel distance (Pf) is long enough that the acceleration ( ) And speed ( ) Is characterized by reaching the maximum acceleration Am, the maximum deceleration Dm, and the maximum speed Vm.
  • the preprocessor 20 compares the moving distance (ie, the target position Pf) with the first threshold value Pshort and the second threshold value Pmedium, and corresponds to the movement distance Pf among the short distance, the medium distance, and the long distance.
  • the time for each section can be calculated using a polynomial defined according to the case.
  • the preprocessing unit 20 may calculate the first threshold value Pshort and the second threshold value Pmedium by the following equations (3) and (4), respectively.
  • the moving distance Pf satisfies the condition of the following equation (5), that is, if the moving distance Pf is less than or equal to the first threshold value Pshort (Pf ⁇ Pshort), the moving distance Pf ) Can be determined to belong to a short distance.
  • the preprocessor 20 may calculate time for each section as shown in Equation (6).
  • Ta is the time in the T1 ⁇ T2 section
  • Tv is the time in the T3 ⁇ T4 section
  • Td is the time in the T5 ⁇ T6 section
  • Tja is the time in each of the T0 ⁇ T1 and T2 ⁇ T3 section
  • Tjd is T4 ⁇ T5 and T6 Time of each of the ⁇ T7 section is shown.
  • T1 to T2, T3 to T4, and T5 to T6 sections are omitted, and the times of the T0 to T1 and T2 to T3 sections (Tja) and the T4 to T5 sections and the T6 to T7 sections, respectively.
  • Tjd can be calculated using the numerical solution of nonlinear equations.
  • Tja and Tjd may be calculated as a solution by applying Newton's Method to equations f1 and f2. Since the numerical solution of the nonlinear equation and the Newton method are used for obtaining a solution, a detailed description thereof will be omitted.
  • the moving distance Pf satisfies equation (7), that is, if the moving distance Pf is between the first threshold value Pshort and the second threshold value (Pshort ⁇ Pf ⁇ Pmedium), It may be determined that the movement distance Pf belongs to the intermediate distance.
  • the preprocessor 20 may calculate time for each section as shown in Equation (8).
  • the sections T3 to T4 are omitted, and the time to accelerate to the slope of the first jerk limit value Ja in the sections T0 to T1 and T2 to T3 respectively to reach the maximum acceleration Am is calculated.
  • the time to reach the maximum deceleration Dm by accelerating with the slope of the second jerk limit value Jd in the intervals T ⁇ T5 and T6 ⁇ T7 is calculated.
  • the area of the jerk during the sections T0 to T1 and the period T2 to T3 is equal to the maximum acceleration (Am), respectively, and the areas of the jerk for the sections T4 to T5 and T6 to T7 are the maximum deceleration (Dm) and same.
  • C3 Tja to Tja * satisfying Am
  • Tjd satisfying Dm is expressed as Tjd *.
  • the time in each of the T1 to T2 sections and the T5 to T6 sections can be calculated using the numerical solution of the nonlinear equation.
  • Ta and Td can be calculated as a solution by applying Newton's Method to equations f1 and f2.
  • the preprocessor 20 determines that the moving distance Pf belongs to the long distance. Can be.
  • the preprocessor 20 may calculate time for each section as shown in Equation (10).
  • the acceleration phase includes a section that accelerates and accelerates to the maximum acceleration and a maximum acceleration
  • the deceleration section includes a section that decelerates with the maximum deceleration and a section that decelerates with the maximum deceleration.
  • the time for accelerating with the slope of the first jerk limit value Ja and reaching the maximum acceleration Am in each of the T0 to T1 sections and the T2 to T3 sections is calculated, and the T4 to T5 sections are calculated.
  • a time for accelerating with the slope of the second jerk limit value Jd in the period T6 to T7 to reach the maximum deceleration Dm is calculated.
  • the area of the jerk during the sections T0 to T1 and the period T2 to T3 is equal to the maximum acceleration (Am), respectively, and the areas of the jerk for the sections T4 to T5 and T6 to T7 are the maximum deceleration (Dm) and same.
  • C3 Tja to Tja * satisfying Am
  • Tjd satisfying Dm is expressed as Tjd *.
  • the acceleration area is equal to the maximum speed during the time T0 to T3 of the acceleration phase and the time T4 to T7 of the deceleration phase.
  • Td that satisfies is expressed as Td *.
  • the preprocessing unit 20 may determine the threshold distance, compare it with the movement distance according to the target position, and calculate the optimum time for each section by the polynomial corresponding to the case determined according to the comparison result.
  • the preprocessor 20 may calculate the optimal time for each section using a nonlinear programming technique.
  • the nonlinear programming technique uses a constrained optimization technique such as (11). Since the nonlinear programming technique using the limited optimization technique is well known, a detailed description thereof will be omitted.
  • the objective function f (Tn) for minimizing time uses integral time-squared as shown in Eq. (12).
  • An inequality constraint h (Tn) is a condition that is within an arbitrary limit value such as C3, and an equality constraint g (Tn) is a condition indicating that the g function is zero at the end of each time period, as in C1.
  • the summer condition (l) of the optimization variable is 0, and the summer condition (u) is calculated when the above-mentioned moving distance is long.
  • the preprocessor 20 may calculate the optimal time for each section by finding a solution that minimizes a predetermined objective function under a predetermined constraint.
  • 3 is an example of generating a motion profile by calculating the time for each section by comparing the critical distance and the target position according to an embodiment of the present invention.
  • 4 is an example in which a motion profile is generated by calculating time for each section by nonlinear programming according to an embodiment of the present invention.
  • 3 and 4 are motion profiles for any initial and final velocity other than zero.
  • (a) is a position profile
  • (b) is a velocity profile
  • (c) is an acceleration profile. Referring to FIGS. 3 and 4, it can be seen that the motion profiles of the two methods yield similar results.
  • FIG. 5 is a flowchart schematically illustrating a motion profile generation method according to an embodiment of the present invention.
  • the method of generating a motion profile according to an embodiment of the present invention may be performed by the computing device 10 shown in FIG. 1.
  • the computing device 10 shown in FIG. 1 In the following, detailed descriptions of contents overlapping with those described above will be omitted.
  • the computing device 10 may receive a constraint for generating a motion profile according to an embodiment of the present invention (S31).
  • the computing device 10 may receive a predetermined constraint condition according to a method of calculating an optimal time.
  • the computing device 10 may calculate the optimal time for each section of the motion profile under the constraint condition (S33).
  • the computing device 10 may calculate an optimal time for each section by a polynomial corresponding to a case determined according to a result of comparing the critical distance and the moving distance.
  • the computing device 10 may calculate the optimal time for each section using a nonlinear programming technique.
  • the computing device 10 may generate a motion profile based on the optimal time and jerk of each section (S35).
  • the computing device 10 calculates the acceleration a (t) by integrating the jerks j (t) of each section, and calculates the speed v (t) by integrating the acceleration a (t).
  • the velocity v (t) may be integrated to calculate the position p (t).
  • the computing device 10 may generate an overlapping motion profile that overlaps two or more motion profiles.
  • the computing device 10 may set the final speed Vf of the previous motion to the initial speed Vi of the next motion to generate an overlapping motion profile.
  • 6 is a flowchart schematically illustrating a method of calculating an optimum time for each section of FIG. 5.
  • 6 illustrates an example of calculating an optimum time for each section by a polynomial corresponding to a case determined according to a comparison result of a critical distance and a moving distance.
  • the computing device 10 may receive the constraints C1 to C3 for generating the motion profile according to an embodiment of the present invention and calculate the optimal time for each section of the motion profile under the constraint. have.
  • Constraint C1 is an equivalent constraint between the starting position and the ending position.
  • Constraint C2 is a constraint that the velocity value does not cross velocity zero.
  • Constraints C3 are constraints that jerk j, acceleration a, and speed v are within arbitrary limit values Ja, Jd, Am, Dm, Vm at any time point T0 ⁇ t ⁇ T7.
  • the computing device 10 may calculate the limit value Ja of the jerk in the acceleration section and the limit value Jd of the jerk in the deceleration section by equations (1) and (2) (S331).
  • the computing device 10 calculates the first threshold value Pshort and the second threshold value Pmedium as shown in equations (3) and (4), and sets the target position Pf as the first threshold value Pshort and It may be compared with a second threshold value (Pmedium) (S332, S334).
  • the computing device 10 determines that the movement distance Pf from the origin to the target position belongs to a short distance, and the nonlinearity of Equation (6) is determined.
  • the time for each section may be calculated using a numerical solution of the equation (S333).
  • the section may include an acceleration section, a maximum acceleration section, a maximum speed section, a deceleration section and a maximum deceleration section.
  • the computing device 10 indicates that the movement distance Pf from the origin to the target position belongs to the intermediate distance.
  • the time for each section may be calculated using the numerical solution of the nonlinear equation (8) (S335).
  • the computing device 10 determines that the movement distance Pf from the origin to the target position belongs to a long distance, as shown in Equation (10).
  • the time for each section may be calculated (S336).
  • the computing device 10 determines the time of the sections T0 to T1 and T2 to T3 by the time Tja of the acceleration section, and determines the time of the sections of T1 to T2 by the time of the maximum acceleration section Ta,
  • the time of the T3 to T4 section is determined by the time Tv of the speed section
  • the time of the T4 to T5 and T6 to T7 sections is determined by the time Tjd of the deceleration section
  • the time Td of the maximum deceleration section By the time of the section T5 ⁇ T6 can be determined (S337).
  • the computing device 10 may generate a motion profile and an overlapping motion profile based on the optimal time and jerk of each section, as shown in FIG. 5.
  • FIG. 7 is an example of an overlapping motion profile superimposing two motion profiles according to an embodiment of the present invention.
  • (a) is a position profile
  • (b) is a velocity profile
  • (c) is an acceleration profile.
  • the final speed when motion 1 ends is a non-zero value
  • motion 2 subsequent to motion 1 sets the final speed of motion 1 as the initial speed. Therefore, motion 1 decelerates to a final speed of zero, and motion 2 does not need to accelerate from zero, thereby reducing the time.
  • the exemplary embodiment of the present invention sets the final speed Vf of the previous motion to the initial speed Vi of the next motion, thereby reducing the operation time by overlapping two or more successive motion profiles without stopping, thereby optimizing time. Can be moved to increase productivity.
  • the final velocity Vf and the initial velocity Vi of the motion profile may be set to any constant other than zero, so that the final velocity Vf does not need to be decelerated to zero. Can be reduced.
  • the embodiment of the present invention can have a value different from the initial speed and the slope of the acceleration section and the final speed and the slope of the deceleration section to generate an asymmetric S-curve profile, and thus is effective for vibration reduction even in motion overlapping. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Power Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

La présente invention porte, dans un mode de réalisation, sur un procédé permettant de générer un profil de mouvement en utilisant une courbe en S, et sur un dispositif informatique associé. Un procédé permettant de générer un profil de mouvement en utilisant une courbe en S selon un mode de réalisation de la présente invention comprend les étapes consistant : selon une ou plusieurs restrictions, à calculer un temps de chacune d'une section d'accélération, d'une section d'accélération maximale, d'une section de vitesse maximale, d'une section de décélération et d'une section de décélération maximale ; à appliquer le temps calculé et une saccade à un polynôme défini pour chaque section pour générer un profil de mouvement ; et à générer un profil de mouvement superposé ayant au moins deux profils de mouvement consécutifs dans lesquels une vitesse finale d'un mouvement précédent est une vitesse initiale d'un mouvement ultérieur.
PCT/KR2017/012030 2017-01-10 2017-10-27 Procédé permettant de générer un profil de mouvement en utilisant une courbe en s et dispositif informatique Ceased WO2018131778A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201780064913.1A CN110023856B (zh) 2017-01-10 2017-10-27 通过使用s型曲线生成运动轮廓的方法及计算装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2017-0003404 2017-01-10
KR1020170003404A KR102799733B1 (ko) 2017-01-10 2017-01-10 S-커브를 이용한 모션 프로파일 생성 방법 및 컴퓨팅 장치

Publications (1)

Publication Number Publication Date
WO2018131778A1 true WO2018131778A1 (fr) 2018-07-19

Family

ID=62840210

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2017/012030 Ceased WO2018131778A1 (fr) 2017-01-10 2017-10-27 Procédé permettant de générer un profil de mouvement en utilisant une courbe en s et dispositif informatique

Country Status (3)

Country Link
KR (1) KR102799733B1 (fr)
CN (1) CN110023856B (fr)
WO (1) WO2018131778A1 (fr)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115070762A (zh) * 2022-06-17 2022-09-20 电子科技大学 一种高速分拣机器人的非对称s型速度曲线规划方法
CN115542732A (zh) * 2022-09-15 2022-12-30 中国北方车辆研究所 一种伺服运动控制系统加减速轨迹规划方法及装置
WO2023226302A1 (fr) * 2022-05-23 2023-11-30 以诺康医疗科技(苏州)有限公司 Procédé et appareil de planification de trajectoire de mouvement basés sur un profil de vitesse de courbe s

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110450166B (zh) * 2019-08-22 2022-10-14 上海新时达机器人有限公司 基于s形曲线机器人过渡轨迹规划的拐角加速度优化方法及装置
CN113156891B (zh) * 2021-04-26 2023-02-17 北京航空航天大学 一种基于弓高误差限制和加加速度连续的进给率规划方法
CN113253772B (zh) * 2021-07-02 2021-10-12 武汉市正弦电气技术有限公司 一种基于误差预估及补偿的伺服定位系统及方法
KR102525150B1 (ko) * 2021-08-05 2023-04-27 한국생산기술연구원 파라볼릭 모션 프로파일 생성 장치 및 그 방법
CN114131613B (zh) * 2021-12-21 2023-05-26 伯朗特机器人股份有限公司 一种基于s曲线的点动操作控制方法
CN114578809A (zh) * 2022-01-13 2022-06-03 达闼机器人股份有限公司 可移动设备的速度控制方法、装置及可移动设备
KR102553301B1 (ko) * 2022-01-17 2023-07-10 김종은 저크를 일정하게 유지하는 모터의 모션 제어 장치
KR102750075B1 (ko) * 2022-04-25 2025-01-02 한국로봇융합연구원 키네틱 디스플레이 장치의 모션 경로 생성 장치 및 방법
KR20250030750A (ko) * 2023-08-25 2025-03-05 알에스오토메이션주식회사 모션 프로파일 블렌딩 장치
KR102652609B1 (ko) 2023-12-20 2024-04-01 한국건설기술연구원 과적단속구간에서 비정상 가감속 형태로 주행하는 과적혐의차량의 식별을 위한 화물차량의 속도 프로파일 산출방법 및 산출장치
CN119002394B (zh) * 2024-10-26 2025-01-07 海德盟数控技术(深圳)有限公司 数控机床的控制方法、数控机床及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1719631A1 (fr) * 2005-05-03 2006-11-08 Xerox Corporation Profile de vitesse pour moteur pas à pas avec S courbe dynamique
US20070038314A1 (en) * 2005-08-10 2007-02-15 Tsung-Hsin Cheng Motion command reshaping method with analog input for position s curve
US20110307096A1 (en) * 2007-07-31 2011-12-15 Rockwell Automation Technologies, Inc. blending algorithm for trajectory planning
US20130307459A1 (en) * 2012-05-18 2013-11-21 Linestream Technologies Motion profile generator
KR20140139388A (ko) * 2013-05-27 2014-12-05 한국과학기술원 잔류진동을 강인하게 저감하기 위한 최적 s-커브 모션 프로파일 설계 방법

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6216058B1 (en) * 1999-05-28 2001-04-10 Brooks Automation, Inc. System of trajectory planning for robotic manipulators based on pre-defined time-optimum trajectory shapes
KR100408821B1 (ko) * 2002-01-08 2003-12-06 학교법인 포항공과대학교 고속 가동을 위한 수치 제어장치 및 방법
KR100819654B1 (ko) 2006-07-28 2008-04-04 호서대학교 산학협력단 비대칭 에스 커브를 이용한 모터 제어 방법
US7919940B2 (en) * 2007-10-21 2011-04-05 Ge Intelligent Platforms, Inc. System and method for jerk limited trajectory planning for a path planner
KR100933969B1 (ko) * 2007-11-16 2009-12-28 전자부품연구원 모션 제어 장치 및 방법
US8710777B2 (en) * 2012-04-20 2014-04-29 Linestream Technologies Method for automatically estimating inertia in a mechanical system
CN106168790B (zh) * 2016-02-29 2020-08-18 华南理工大学 一种在线改变目标速度和位置的s形加减速控制方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1719631A1 (fr) * 2005-05-03 2006-11-08 Xerox Corporation Profile de vitesse pour moteur pas à pas avec S courbe dynamique
US20070038314A1 (en) * 2005-08-10 2007-02-15 Tsung-Hsin Cheng Motion command reshaping method with analog input for position s curve
US20110307096A1 (en) * 2007-07-31 2011-12-15 Rockwell Automation Technologies, Inc. blending algorithm for trajectory planning
US20130307459A1 (en) * 2012-05-18 2013-11-21 Linestream Technologies Motion profile generator
KR20140139388A (ko) * 2013-05-27 2014-12-05 한국과학기술원 잔류진동을 강인하게 저감하기 위한 최적 s-커브 모션 프로파일 설계 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023226302A1 (fr) * 2022-05-23 2023-11-30 以诺康医疗科技(苏州)有限公司 Procédé et appareil de planification de trajectoire de mouvement basés sur un profil de vitesse de courbe s
CN115070762A (zh) * 2022-06-17 2022-09-20 电子科技大学 一种高速分拣机器人的非对称s型速度曲线规划方法
CN115542732A (zh) * 2022-09-15 2022-12-30 中国北方车辆研究所 一种伺服运动控制系统加减速轨迹规划方法及装置

Also Published As

Publication number Publication date
KR102799733B1 (ko) 2025-04-25
CN110023856B (zh) 2022-12-13
CN110023856A (zh) 2019-07-16
KR20180082115A (ko) 2018-07-18

Similar Documents

Publication Publication Date Title
WO2018131778A1 (fr) Procédé permettant de générer un profil de mouvement en utilisant une courbe en s et dispositif informatique
WO2019164237A1 (fr) Procédé et dispositif pour réaliser un calcul d'apprentissage profond à l'aide d'un réseau systolique
WO2015030302A1 (fr) Dispositif d'affichage et procédé de configuration d'informations de groupe
WO2021091022A1 (fr) Système d'apprentissage automatique et procédé de fonctionnement pour système d'apprentissage automatique
WO2017022893A1 (fr) Système et procédé de commande de robot redondant pour améliorer la rigidité dans un espace de travail, et support d'enregistrement ayant un programme lisible par ordinateur pour exécuter le procédé
WO2018147599A1 (fr) Dispositif électronique et procédé d'aide à la conduite d'un véhicule
WO2022191448A1 (fr) Système de commande pour robot articulé souple
WO2013065955A1 (fr) Dispositif et procédé pour commander un mouvement de tissage en temps réel
WO2016029875A1 (fr) Procédé et système de traitement en coordonnées pour pièce à usiner et procédé et appareil de commande en coordonnées
WO2023042965A1 (fr) Procédé de génération d'informations de topologie de route et système associé
Ameri et al. Noniterative positive constrained control of cable-driven parallel robots
WO2022085958A1 (fr) Dispositif électronique et son procédé de fonctionnement
WO2025110344A1 (fr) Observateur de perturbation de force/accélération d'espace de travail et robot comprenant celui-ci
US7818087B2 (en) Method and control device for guiding the movement of a movable machine element of a machine
WO2020153628A1 (fr) Robot et son procédé de commande
WO2019066143A1 (fr) Procédé de codage de dispositif de commande de robot, programme et dispositif de commande de robot
WO2021040179A1 (fr) Robot et son procédé de commande
EP3544860A1 (fr) Procédé d'actionnement de véhicule et appareil d'actionnement de véhicule
WO2023191374A1 (fr) Dispositif d'intelligence artificielle permettant de reconnaître une image de formule structurale, et procédé associé
WO2021045246A1 (fr) Appareil et procédé de fourniture d'une fonction étendue à un véhicule
WO2022220407A1 (fr) Système et procédé de commande de climatisation à intelligence artificielle utilisant un procédé d'interpolation
WO2017052060A1 (fr) Système de commande de dispositif en temps réel ayant une architecture hiérarchique et système de commande de robot en temps réel utilisant celui-ci
WO2022045677A1 (fr) Robot et procédé de commande pour robot
WO2017122958A1 (fr) Procédé de commande de réplication d'engin de chantier, et système de réplication
WO2019151555A1 (fr) Procédé de détection d'objet et système robotisé

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: 17891092

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17891092

Country of ref document: EP

Kind code of ref document: A1