US20060089748A1 - Method and device to generate position profile in motion controller - Google Patents
Method and device to generate position profile in motion controller Download PDFInfo
- Publication number
- US20060089748A1 US20060089748A1 US11/132,347 US13234705A US2006089748A1 US 20060089748 A1 US20060089748 A1 US 20060089748A1 US 13234705 A US13234705 A US 13234705A US 2006089748 A1 US2006089748 A1 US 2006089748A1
- Authority
- US
- United States
- Prior art keywords
- pattern
- filter
- denotes
- acceleration
- deceleration
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000009977 dual effect Effects 0.000 claims abstract description 21
- 230000003213 activating effect Effects 0.000 claims abstract description 13
- 230000001133 acceleration Effects 0.000 claims description 60
- 230000036461 convulsion Effects 0.000 claims description 23
- 230000004913 activation Effects 0.000 claims description 6
- 238000005070 sampling Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 17
- 230000008901 benefit Effects 0.000 description 6
- 230000010354 integration Effects 0.000 description 5
- 101100522111 Oryza sativa subsp. japonica PHT1-11 gene Proteins 0.000 description 4
- 101100522110 Oryza sativa subsp. japonica PHT1-10 gene Proteins 0.000 description 2
- 101100522109 Pinus taeda PT10 gene Proteins 0.000 description 2
- 101100522114 Oryza sativa subsp. japonica PHT1-12 gene Proteins 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical 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/41—Numerical 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 interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
- G05B19/4103—Digital interpolation
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34122—Function, profile generator
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34142—Polynomial
Definitions
- the present general inventive concept relates to a method and device to generate a position profile using lower-order polynomials in a motion controller.
- An industrial articulated robot moves a work subject to a target position by rotating and moving its joints, and includes a servomotor as a drive source for moving each joint.
- a motion controller generates a position profile using an input command and transfers it to a servo controller.
- the servo controller then controls the servomotor according to the position profile to move the work subject to the target position.
- the position profile is used to determine work pattern and time in controlling the servomotor of the articulated robot.
- Methods for generating a position profile in the motion controller are typically based on integration or polynomials.
- the integration-based position profile generation method generates an acceleration/deceleration (acc/dec) pattern by integrating a jerk pattern, and generates a velocity pattern by integrating the acc/dec pattern, and then generates a position profile by integrating the velocity pattern.
- acc/dec acceleration/deceleration
- the polynomial-based position profile generation method typically generates a position profile by selecting a polynomial from seven polynomials P( 0 ) to P( 6 ) for each section of the position profile according to the condition of each section.
- a calculation for generating the position profile is performed for each section.
- the conventional polynomial-based method requires a large number of coefficients for defining polynomials according to initial conditions, so that the calculation of the coefficients according to initial conditions is complicated, and a large amount of real-time calculation is needed.
- the present general inventive concept provides a device to, and method of generating a position profile in a motion controller, which can not only provide an accurate calculation to generate the position profile, but can also reduce the amount of calculations required (i.e., the number of calculations).
- a device to generate a position profile in a motion controller including a pattern coefficient generator to generate pattern and time coefficients of a position pattern, the position pattern being classified by velocity change, a contour generator to generate a pattern polynomial to define a contour of each section of the position pattern using the pattern and time coefficients generated by the pattern coefficient generator, and a dual filter to generate a position profile by selectively activating one of a plurality of filters, which receive the pattern polynomial generated by the contour generator.
- the pattern coefficient generator can compare an initial velocity of the position pattern with a reference velocity and can select one of a plurality of position patterns based on the comparison.
- the contour generator generates a pattern polynomial, which is a 2nd-order function of time, for each of acceleration, constant-velocity, and deceleration sections of the position pattern.
- the device further includes an initial condition calculator to provide an initial condition, required to determine the type of the position pattern, to the pattern coefficient generator.
- the initial condition calculator provides an initial velocity of the position pattern to the pattern coefficient generator.
- the initial condition calculator calculates an initial velocity of the subsequent position pattern, based on a pattern polynomial currently generated by and received from the contour generator so that the current position pattern is continued by the subsequent position pattern.
- the dual filter can include an acceleration filter and a deceleration filter, and the acceleration filter is used to filter a pattern polynomial corresponding to an acceleration section of the position pattern, and the deceleration filter is used to filter a pattern polynomial corresponding to a deceleration section thereof.
- the dual filter may further include a filter selector to select one of the acceleration and deceleration filters according to a 2nd-order coefficient of the pattern coefficients of the position pattern, and a switching portion to activate the one of the acceleration and deceleration filters selected by the filter selector.
- the filter selector selects the acceleration filter if the 2nd-order coefficient is positive, and selects the deceleration filter if the 2nd-order coefficient is negative.
- the dual filter may further include a flip-flop, connected between the filter selector and the switching portion, to maintain the selection of the filter.
- switching timing of one of the acceleration and deceleration filters is shifted in time with respect to switching timing of the other filter, which has a relatively large filter size, in order to prevent a switching error from occurring when the acceleration and deceleration filters are switched.
- y1[n] denotes a filter having a relatively large filter size
- ma denotes the larger of two integer values “na” and “nd”
- d denotes the absolute value of (na ⁇ nd)
- na denotes the integer value of (Tra/Ts)
- nd denotes the integer value of (Trd/Ts)
- Ts denotes sampling time
- Tra denotes the size of the acceleration filter and is expressed by (Acc/Jerk)
- Trd denotes the size of the deceleration filter and is expressed by (Dec/Jerk)
- Jerk denotes the magnitude of jerk
- Acc denotes acceleration
- Dec denotes deceleration.
- y2[n] denotes a filter having a relatively small filter size
- ma denotes the larger of two integer values “na” and “nd”
- mi denotes the larger of the two integer values “na” and “nd”
- d denotes the absolute value of (na ⁇ nd)
- na denotes the integer value of (Tra/Ts)
- nd denotes the integer value of (Trd/Ts)
- Ts denotes sampling time
- Tra denotes the size of the acceleration filter and is expressed by (Acc/Jerk)
- Trd denotes the size of the deceleration filter and is expressed by (Dec/Jerk)
- Jerk denotes the magnitude of jerk
- Acc denotes acceleration
- Dec denotes deceleration.
- the device may further include a motion buffer to temporarily store information produced by both the initial condition calculator and the pattern coefficient generator, and a motion buffer manager to control the motion buffer to store the information.
- a method of generating a position profile in a motion controller including selecting one of a plurality of position patterns produced based on velocity change, generating pattern and time coefficients of the selected position pattern, generating a pattern polynomial to define a contour of each section of the position pattern using the generated pattern and time coefficients, and generating a position profile by selectively activating one of a plurality of filters, which receive the generated pattern polynomial.
- the selection of one of the plurality of position patterns may include comparing an initial velocity of the position pattern with a reference velocity, selecting one of a plurality of position pattern groups based on the comparison, and selecting one of a plurality of position patterns, which belong to the selected position pattern group, according to a given target position.
- the selective activation of one of the plurality of filters may include activating an acceleration filter when receiving a pattern polynomial corresponding to an acceleration section of the position pattern, activating a deceleration filter when receiving a pattern polynomial corresponding to a deceleration section of the position pattern, and maintaining the activation of a previously activated filter when receiving a pattern polynomial corresponding to a constant-velocity section of the position pattern.
- FIG. 1 is a schematic diagram illustrating a conventional integration-based method for generating a position profile
- FIG. 2 is a schematic diagram illustrating a conventional polynomial-based method for generating a position profile
- FIG. 3 is a schematic diagram illustrating a method of generating a position profile from a position pattern according to an embodiment of the present general inventive concept
- FIG. 4 is a block diagram of a position profile generation device in a motion controller according to an embodiment of the present general inventive concept
- FIG. 5A is a diagram illustrating how a position pattern group is selected from a plurality of position pattern groups according to an initial condition provided from a command input unit, according to an embodiment of the present general inventive concept
- FIG. 5B is a diagram illustrating how a position pattern is selected from a first position pattern group according to a target position, according to an embodiment of the present general inventive concept
- FIG. 5C is a diagram illustrating how a position pattern is selected from a second position pattern group according to a target position, according to an embodiment of the present general inventive concept
- FIG. 5D is a diagram illustrating how a position pattern is selected from a third position pattern group according to a target position, according to an embodiment of the present general inventive concept
- FIG. 5E is a diagram illustrating how a position pattern is selected from a fourth position pattern group according to a target position, according to an embodiment of the present general inventive concept
- FIG. 6 is a detailed block diagram of a dual filter according to an embodiment of the present general inventive concept
- FIG. 7 is a diagram illustrating switching timing of acceleration and deceleration filters in the dual filter, according to an embodiment of the present general inventive concept
- FIG. 8A is a diagram illustrating how a position profile produced using a 10th position pattern is updated with a 4th position pattern, according to an embodiment of the present general inventive concept
- FIG. 8A is a diagram illustrating how a position profile produced using a 10th position pattern is updated with a 7th position pattern, according to an embodiment of the present general inventive concept.
- FIG. 9 is a block diagram of a position profile generation device according to another embodiment of the present general inventive concept, which uses a motion buffer to generate a position profile while continually updating it with a plurality of position patterns.
- FIG. 3 is a schematic diagram illustrating how a position profile is generated from a position pattern according to an embodiment of the present general inventive concept
- FIG. 4 is a block diagram of a position profile generation device in a motion controller according to an embodiment of the present general inventive concept.
- the present general inventive concept provides a method of generating a position profile by passing position patterns selected based on initial conditions through a dual filter.
- a position pattern is defined based on velocity change as time passes.
- a position pattern may include, for example, three types of sections that are defined respectively by the following three 2nd-order polynomials: a pattern polynomial P( 1 ) for acceleration sections, a pattern polynomial P( 3 ) for constant-velocity sections, and a pattern polynomial P( 5 ) for deceleration sections.
- P ( 1 ) C 10 +C 11 t+C 12 t 2
- P ( 3 ) C 30 +C 31 t
- P ( 5 ) C 50 +C 51 t+C 52 t 2
- position patterns are divided into three types of sections according to velocity change, which correspond respectively to the three above polynomials.
- the position profile generation method according to the present general inventive concept reduces the degree of polynomials required to define a position profile from 3rd-order polynomials to 2nd-order polynomials, and also reduces the number of polynomials required to define a position profile from 7 to 3, thereby reducing the amount of real-time calculation.
- a dual filter according to an embodiment of the present general inventive concept which produces a position profile from position patterns, includes a deceleration filter that is activated for deceleration sections and an acceleration filter that is activated for acceleration sections.
- a position profile generation device in a motion controller includes an initial condition calculator 100 , a pattern coefficient generator 200 , a contour generator 300 , and a dual filter 400 .
- the initial condition calculator 100 provides an initial velocity V o to the pattern coefficient generator 200 .
- the pattern coefficient generator 200 compares the initial velocity V o with a reference velocity V c received from a command input unit, selects one of a plurality of position patterns based on the comparison, and provides coefficients required to define the selected position pattern to the contour generator 300 .
- the position pattern selection will now be described in detail with reference to FIGS. 5A to 5 E.
- a position pattern group is selected from four position pattern groups, based on an initial condition provided through the command input unit.
- the first position pattern group (Pattern Group 1 ) is selected when the initial velocity V o is greater than the reference velocity V c
- the second position pattern group (Pattern Group 2 ) is selected when the initial velocity V o is greater than 0 and less than or equal to the reference velocity V c
- the third position pattern group (Pattern Group 3 ) is selected when the initial velocity V o is greater than 0
- the fourth position pattern group is selected when the initial velocity V o is zero.
- Each of the first to fourth position pattern groups includes a plurality of position patterns, which will be described in detail assuming that the target position Pt is more than or equal to 0 (Pt ⁇ 0).
- a first position pattern PT 1 is selected when the target position Pt is more than or equal to a first set position Pc 1 (Pt ⁇ Pc 1 ).
- the first position pattern PT 1 has a velocity change form of constant velocity-deceleration-constant velocity-deceleration-constant velocity.
- a second position pattern PT 2 is selected when the target position Pt is less than the first set position Pc 1 (Pt ⁇ Pc 1 ).
- the second position pattern PT 2 has a velocity change form of constant velocity-deceleration-constant velocity-deceleration-constant velocity-acceleration-constant velocity.
- a third position pattern PT 3 is selected when the target position Pt is more than or equal to 0 and less than or equal to the sum (Pc 1 +Pc 2 ) of the first and second set positions Pc 1 and Pc 2 (0 ⁇ Pt ⁇ (Pc 1 +Pc 2 )).
- the third position pattern PT 3 has a velocity change form of constant velocity-deceleration-constant velocity-deceleration-constant velocity-acceleration-constant velocity.
- a fourth position pattern PT 4 is selected when the target position Pt is more than or equal to a third set position Pc 3 (Pt ⁇ Pc 3 ).
- the fourth position pattern PT 4 has a velocity change form of constant velocity-acceleration-constant velocity-deceleration-constant velocity.
- a fifth position pattern PT 5 is selected when the target position Pt is more than a fourth set position Pc 4 and less than the third set position (Pc 4 ⁇ Pt ⁇ Pc 3 ).
- the fifth position pattern PT 5 has a velocity change form of constant velocity-acceleration-constant velocity-deceleration-constant velocity.
- a sixth position pattern PT 6 is selected when the target position Pt is more than or equal to a fifth set position Pc 5 and less than or equal to the fourth set position Pc 4 (Pc 5 ⁇ Pt ⁇ Pc 4 ).
- the sixth position pattern PT 6 has a velocity change form of constant velocity-deceleration-constant velocity.
- a seventh position pattern PT 7 is selected when the target position Pt is more than or equal to 0 and less than the fifth set position Pc 5 (0 ⁇ Pt>Pc 5 ).
- the seventh position pattern PT 7 has a velocity change form of constant velocity-deceleration-constant velocity-deceleration-constant velocity-acceleration-constant velocity.
- an eighth position pattern PT 8 is selected when the target position Pt is more than or equal to the sum (Pc 6 +Pc 7 ) of sixth and seventh set positions Pc 6 and Pc 7 (Pt ⁇ Pc 6 +Pc 7 ).
- the eighth position pattern PT 8 has a velocity change form of constant velocity-acceleration-constant velocity-acceleration-constant velocity-deceleration-constant velocity.
- a ninth position pattern PT 9 is selected when the target position Pt is more than or equal to 0 and less than the sum (Pc 6 +Pc 7 ) of the sixth and seventh set positions Pc 6 and Pc 7 (0 ⁇ Pt ⁇ Pc 6 +Pc 7 ).
- the ninth position pattern PT 9 has a velocity change form of constant velocity-acceleration-constant velocity-acceleration-constant velocity-deceleration-constant velocity.
- a tenth position pattern PT 10 is selected when the target position Pt is more than or equal to an eighth set position (Pt ⁇ Pc 8 ).
- the tenth position pattern PT 10 has a velocity change form of constant velocity-acceleration-constant velocity-deceleration-constant velocity.
- An eleventh position pattern PT 11 is selected when the target position Pt is more than 0 and less than the eighth set position (0 ⁇ Pt ⁇ Pc 8 ).
- the eleventh position pattern PT 11 has a velocity change form of constant velocity-acceleration-constant velocity-deceleration-constant velocity.
- the first to eleventh position patterns PT 1 to PT 11 correspond to target positions Pt more than zero (Pt>0).
- 13th to 23rd position patterns corresponding to target positions Pt less than zero (Pt ⁇ 0), which are not shown, can be obtained by inverting the first to eleventh position patterns PT 1 to PT 11 about the horizontal axis. Accordingly, a total of 23 position patterns can be used in the present general inventive concept.
- the pattern coefficient generator 200 After completing the selection of a position pattern based on the initial condition, the pattern coefficient generator 200 generates pattern coefficients Cxx of the selected position pattern and time coefficients Tx of the sections thereof using a motion command, which contains a target position Pt, a reference velocity V c , a reference acceleration Amax, a reference deceleration Dmax, and a reference jerk Jmax, and provides the generated pattern coefficients Cxx and time coefficients Tx to the contour generator 300 .
- a motion command which contains a target position Pt, a reference velocity V c , a reference acceleration Amax, a reference deceleration Dmax, and a reference jerk Jmax.
- the contour generator 300 generates a pattern polynomial P(t) for each section of the selected position pattern using time variables t and the pattern coefficients Cxx and time coefficients Tx received from the pattern coefficient generator 200 , and provides the generated pattern polynomial P(t) to the dual filter 400 .
- the contour generator 300 generates one of the three types of pattern polynomials according to the type of each section thereof, and provides the generated pattern polynomial to the dual filter 400 .
- pattern polynomials corresponding to the fourth position pattern PT 4 which has a velocity change form of constant velocity-acceleration-constant velocity-deceleration-constant velocity, are “P( 3 )-P( 1 )-P( 3 )-P( 5 )-P( 3 )”, and the corresponding time coefficients are “T( 3 )-T( 1 )-T( 3 )-T( 5 )-T( 3 )”.
- the dual filter 400 receives the pattern polynomial P(t), and generates a position profile Pr(t) by switching to one of a plurality of filters according to a 2nd-order coefficient Cx 2 received from the pattern coefficient generator 200 .
- the dual filter 400 includes an acceleration filter 401 , a deceleration filter 402 , a filter selector 410 , a flip-flop 420 , and a switching portion 430 .
- the pattern polynomial P(t) generated by the contour generator 300 is input to both the acceleration and deceleration filters 401 and 402 , the outputs of which are connected to the switching portion 430 .
- the filter selector 410 receives the 2nd-order coefficient Cx 2 from the pattern coefficient generator 200 , and outputs a filter selection signal to select one of the acceleration and deceleration filters 401 and 402 according to the received 2nd-order coefficient Cx 2 .
- a 2nd-order coefficient Cx 2 having a positive sign (+) indicates an acceleration section
- a 2nd-order coefficient Cx 2 having a negative sign (+) indicates a deceleration section. Therefore, if the 2nd-order coefficient Cx 2 received from the pattern coefficient generator 200 is positive, the filter selector 410 outputs an Acc signal of “1” and a Dec signal of “0” to the flip-flop 420 so that the switching portion 430 is switched to the acceleration filter 401 . If the 2nd-order coefficient Cx 2 is negative, the filter selector 410 outputs an Acc signal of “0” and a Dec signal of “1” to the flip-flop 420 so that the switching portion 430 is switched to the deceleration filter 402 .
- the flip-flop 420 provides a switching signal, corresponding to the filter selection signal received from the filter selector 410 , to the switching portion 430 , and the switching portion 430 is switched to one of the acceleration and deceleration filters 401 and 402 according to the corresponding switching signal.
- FIG. 7 illustrates switching timing of the acceleration and deceleration filters in the dual filter when the filter size Fs 2 of the acceleration filter is less than the filter size Fs 1 of the deceleration filter.
- switching of the acceleration and deceleration filters must be performed such that the switching timing of the acceleration filter 401 is shifted in time with respect to the switching timing of the deceleration filter 402 by a time interval “G” corresponding to a half of the difference between the two filter sizes Fs 1 and Fs 2 .
- a switching error may occur in the procedure of switching the acceleration and deceleration filters, thereby making the positional movement unstable.
- T ra denotes the size of the acceleration filter
- Jerk denotes the magnitude of jerk
- Acc denotes acceleration
- T s sampling time
- na the integer value of (T ra /T s ).
- T s denotes sampling time
- nd denotes the integer value of (T rd /T s ).
- mi max ( na, nd ), (6)
- y 1 [n] corresponds to a filter having a relatively large filter size
- y 2 [n] corresponds to a filter having a relatively small filter size
- the initial condition calculator 100 receives a pattern polynomial P(t) currently output from the contour generator 300 , and calculates an initial velocity V o of the new position pattern as an initial condition thereof, based on velocity, acceleration, and position values of the currently output pattern polynomial P(t) (for example, the last velocity, acceleration, and position values thereof).
- the initial condition calculator 100 provides the calculated initial velocity V o to the pattern coefficient generator 200 , thereby updating the position pattern with the new position pattern.
- the fourth position pattern is continued one second later from the beginning of the position profile, and the resulting position profile “Pos” shows a seamless and smooth position change as shown in FIG. 8A .
- the seventh position pattern is continued one second later from the beginning of the position profile, and the resulting position profile “Pos” shows a seamless and smooth position change as shown in FIG. 8B .
- FIG. 9 is a block diagram of an example position profile generation device according to this embodiment.
- the position profile generation device comprises an initial condition calculator 500 , a pattern coefficient generator 510 , a motion buffer manager 520 , a motion buffer 530 , a contour generator 540 , and a dual filter 550 .
- the motion buffer manager 520 controls the operation of the motion buffer 530 to store pattern coefficients, time coefficients, and an initial condition according to a corresponding command received from a command input unit.
- the motion buffer 530 transfers the initial condition, the pattern coefficients, and the time coefficients, provided from the initial condition calculator 500 and the pattern coefficient generator 510 , to the contour generator 540 after temporarily storing them.
- the contour generator 540 generates and provides a corresponding pattern polynomial to the dual filter 550 .
- the motion buffer manager 520 controls the operation of the motion buffer 530 to temporarily store an initial condition, pattern coefficients, and time coefficients corresponding to the different position pattern, so as to generate a position profile with continuous position patterns.
- the present general inventive concept provides a device to, and method of generating a position profile in a motion controller, which has the following features and advantages.
- Various position patterns are generated according to initial conditions, and a position profile is generated from the various position patterns.
- Filters are designed using filter integers, which are obtained taking into consideration filter sizes, so that switching errors are prevented from occurring due to the difference between the filter sizes, thereby generating a seamless and smooth position profile.
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Control Of Position Or Direction (AREA)
Abstract
Description
- This application claims the benefit of Korean Patent Application No. 2004-85041, filed on Oct. 22, 2004 in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety and by reference.
- 1. Field of the Invention
- The present general inventive concept relates to a method and device to generate a position profile using lower-order polynomials in a motion controller.
- 2. Description of the Related Art
- An industrial articulated robot moves a work subject to a target position by rotating and moving its joints, and includes a servomotor as a drive source for moving each joint.
- A motion controller generates a position profile using an input command and transfers it to a servo controller. The servo controller then controls the servomotor according to the position profile to move the work subject to the target position. The position profile is used to determine work pattern and time in controlling the servomotor of the articulated robot.
- Methods for generating a position profile in the motion controller are typically based on integration or polynomials.
- As shown in
FIG. 1 , the integration-based position profile generation method generates an acceleration/deceleration (acc/dec) pattern by integrating a jerk pattern, and generates a velocity pattern by integrating the acc/dec pattern, and then generates a position profile by integrating the velocity pattern. - It is relatively easy to implement the integration-based method. However, this method requires a large amount of variables to be stored for calculation in the integration procedure. It is also difficult for this method to implement asymmetrical acceleration/deceleration, and calculation errors may occur.
- As shown in
FIG. 2 , the polynomial-based position profile generation method typically generates a position profile by selecting a polynomial from seven polynomials P(0) to P(6) for each section of the position profile according to the condition of each section. Here, a calculation for generating the position profile is performed for each section. For example, seven different types of sections of a position profile may be defined as the following seven 3rd-order polynomials P(0) to P(6) with time variables (ta, a=0, 1, 2, 3) and coefficients (Cxy).
P(0)=C 00 +C 01 t+C 02 t 2 +C 03 t 3
P(1)=C 10 +C 11 t+C 12 t 2
P(2)=C 20 +C 21 t+C 22 t 2 +C 23 t 3
P(3)=C 30 +C 31 t
P(4)=C 40 +C 41 t+C 42 t 2 +C 43 t 3
P(5)=C 50 +C 51 t+C 52 t 2
P(6)=C 60 +C 61 t+C 62 t 2 +C 63 t 3 - However, the conventional polynomial-based method requires a large number of coefficients for defining polynomials according to initial conditions, so that the calculation of the coefficients according to initial conditions is complicated, and a large amount of real-time calculation is needed.
- The present general inventive concept provides a device to, and method of generating a position profile in a motion controller, which can not only provide an accurate calculation to generate the position profile, but can also reduce the amount of calculations required (i.e., the number of calculations).
- Additional aspects and/or advantages of the present general inventive concept will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the general inventive concept.
- The foregoing and/or other aspects and advantages of the present general inventive concept are achieved by providing a device to generate a position profile in a motion controller, the device including a pattern coefficient generator to generate pattern and time coefficients of a position pattern, the position pattern being classified by velocity change, a contour generator to generate a pattern polynomial to define a contour of each section of the position pattern using the pattern and time coefficients generated by the pattern coefficient generator, and a dual filter to generate a position profile by selectively activating one of a plurality of filters, which receive the pattern polynomial generated by the contour generator.
- The pattern coefficient generator can compare an initial velocity of the position pattern with a reference velocity and can select one of a plurality of position patterns based on the comparison.
- The contour generator generates a pattern polynomial, which is a 2nd-order function of time, for each of acceleration, constant-velocity, and deceleration sections of the position pattern.
- The device further includes an initial condition calculator to provide an initial condition, required to determine the type of the position pattern, to the pattern coefficient generator.
- The initial condition calculator provides an initial velocity of the position pattern to the pattern coefficient generator.
- When receiving an update command to update the position profile with a subsequent position pattern, the initial condition calculator calculates an initial velocity of the subsequent position pattern, based on a pattern polynomial currently generated by and received from the contour generator so that the current position pattern is continued by the subsequent position pattern.
- The dual filter can include an acceleration filter and a deceleration filter, and the acceleration filter is used to filter a pattern polynomial corresponding to an acceleration section of the position pattern, and the deceleration filter is used to filter a pattern polynomial corresponding to a deceleration section thereof.
- The dual filter may further include a filter selector to select one of the acceleration and deceleration filters according to a 2nd-order coefficient of the pattern coefficients of the position pattern, and a switching portion to activate the one of the acceleration and deceleration filters selected by the filter selector.
- The filter selector selects the acceleration filter if the 2nd-order coefficient is positive, and selects the deceleration filter if the 2nd-order coefficient is negative.
- The dual filter may further include a flip-flop, connected between the filter selector and the switching portion, to maintain the selection of the filter.
- If the acceleration and deceleration filters have different filter sizes, switching timing of one of the acceleration and deceleration filters, which has a relatively small filter size, is shifted in time with respect to switching timing of the other filter, which has a relatively large filter size, in order to prevent a switching error from occurring when the acceleration and deceleration filters are switched.
- The filter having the relatively large filter size is designed as expressed by the following equation:
- where “y1[n]” denotes a filter having a relatively large filter size, “ma” denotes the larger of two integer values “na” and “nd”, “d” denotes the absolute value of (na−nd), “na” denotes the integer value of (Tra/Ts), “nd” denotes the integer value of (Trd/Ts), “Ts” denotes sampling time, “Tra” denotes the size of the acceleration filter and is expressed by (Acc/Jerk), “Trd” denotes the size of the deceleration filter and is expressed by (Dec/Jerk), “Jerk” denotes the magnitude of jerk, “Acc” denotes acceleration, and “Dec” denotes deceleration.
- The filter having the relatively small filter size is designed as expressed by the following equation:
- where “y2[n]” denotes a filter having a relatively small filter size, “ma” denotes the larger of two integer values “na” and “nd”, “mi” denotes the larger of the two integer values “na” and “nd”, “d” denotes the absolute value of (na−nd), “na” denotes the integer value of (Tra/Ts), “nd” denotes the integer value of (Trd/Ts), “Ts” denotes sampling time, “Tra” denotes the size of the acceleration filter and is expressed by (Acc/Jerk), “Trd” denotes the size of the deceleration filter and is expressed by (Dec/Jerk), “Jerk” denotes the magnitude of jerk, “Acc” denotes acceleration, and “Dec” denotes deceleration.
- The device may further include a motion buffer to temporarily store information produced by both the initial condition calculator and the pattern coefficient generator, and a motion buffer manager to control the motion buffer to store the information.
- The foregoing and/or other aspects and advantages of the present general inventive concept may also be achieved by providing a method of generating a position profile in a motion controller, the method including selecting one of a plurality of position patterns produced based on velocity change, generating pattern and time coefficients of the selected position pattern, generating a pattern polynomial to define a contour of each section of the position pattern using the generated pattern and time coefficients, and generating a position profile by selectively activating one of a plurality of filters, which receive the generated pattern polynomial.
- The selection of one of the plurality of position patterns may include comparing an initial velocity of the position pattern with a reference velocity, selecting one of a plurality of position pattern groups based on the comparison, and selecting one of a plurality of position patterns, which belong to the selected position pattern group, according to a given target position.
- The selective activation of one of the plurality of filters may include activating an acceleration filter when receiving a pattern polynomial corresponding to an acceleration section of the position pattern, activating a deceleration filter when receiving a pattern polynomial corresponding to a deceleration section of the position pattern, and maintaining the activation of a previously activated filter when receiving a pattern polynomial corresponding to a constant-velocity section of the position pattern.
- These and/or other aspects and advantages of the general inventive concept will become apparent and more readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:
-
FIG. 1 is a schematic diagram illustrating a conventional integration-based method for generating a position profile; -
FIG. 2 is a schematic diagram illustrating a conventional polynomial-based method for generating a position profile; -
FIG. 3 is a schematic diagram illustrating a method of generating a position profile from a position pattern according to an embodiment of the present general inventive concept; -
FIG. 4 is a block diagram of a position profile generation device in a motion controller according to an embodiment of the present general inventive concept; -
FIG. 5A is a diagram illustrating how a position pattern group is selected from a plurality of position pattern groups according to an initial condition provided from a command input unit, according to an embodiment of the present general inventive concept; -
FIG. 5B is a diagram illustrating how a position pattern is selected from a first position pattern group according to a target position, according to an embodiment of the present general inventive concept; -
FIG. 5C is a diagram illustrating how a position pattern is selected from a second position pattern group according to a target position, according to an embodiment of the present general inventive concept; -
FIG. 5D is a diagram illustrating how a position pattern is selected from a third position pattern group according to a target position, according to an embodiment of the present general inventive concept; -
FIG. 5E is a diagram illustrating how a position pattern is selected from a fourth position pattern group according to a target position, according to an embodiment of the present general inventive concept; -
FIG. 6 is a detailed block diagram of a dual filter according to an embodiment of the present general inventive concept; -
FIG. 7 is a diagram illustrating switching timing of acceleration and deceleration filters in the dual filter, according to an embodiment of the present general inventive concept; -
FIG. 8A is a diagram illustrating how a position profile produced using a 10th position pattern is updated with a 4th position pattern, according to an embodiment of the present general inventive concept; -
FIG. 8A is a diagram illustrating how a position profile produced using a 10th position pattern is updated with a 7th position pattern, according to an embodiment of the present general inventive concept; and -
FIG. 9 is a block diagram of a position profile generation device according to another embodiment of the present general inventive concept, which uses a motion buffer to generate a position profile while continually updating it with a plurality of position patterns. - Reference will now be made in detail to the embodiments of the present general inventive concept, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. The embodiments are described below to explain the present general inventive concept by referring to the figures.
-
FIG. 3 is a schematic diagram illustrating how a position profile is generated from a position pattern according to an embodiment of the present general inventive concept, andFIG. 4 is a block diagram of a position profile generation device in a motion controller according to an embodiment of the present general inventive concept. - The present general inventive concept provides a method of generating a position profile by passing position patterns selected based on initial conditions through a dual filter. A position pattern is defined based on velocity change as time passes. Specifically, a position pattern may include, for example, three types of sections that are defined respectively by the following three 2nd-order polynomials: a pattern polynomial P(1) for acceleration sections, a pattern polynomial P(3) for constant-velocity sections, and a pattern polynomial P(5) for deceleration sections.
P(1)=C 10 +C 11 t+C 12 t 2
P(3)=C 30 +C 31 t
P(5)=C 50 +C 51 t+C 52 t 2 - That is, according to the present general inventive concept, position patterns are divided into three types of sections according to velocity change, which correspond respectively to the three above polynomials. When compared to the conventional polynomial-based method in which a position profile is divided into seven types of sections according to velocity change, the position profile generation method according to the present general inventive concept reduces the degree of polynomials required to define a position profile from 3rd-order polynomials to 2nd-order polynomials, and also reduces the number of polynomials required to define a position profile from 7 to 3, thereby reducing the amount of real-time calculation.
- A dual filter according to an embodiment of the present general inventive concept, which produces a position profile from position patterns, includes a deceleration filter that is activated for deceleration sections and an acceleration filter that is activated for acceleration sections.
- As shown in
FIG. 4 , a position profile generation device in a motion controller according to the present embodiment includes aninitial condition calculator 100, apattern coefficient generator 200, acontour generator 300, and adual filter 400. - The
initial condition calculator 100 provides an initial velocity Vo to thepattern coefficient generator 200. Thepattern coefficient generator 200 compares the initial velocity Vo with a reference velocity Vc received from a command input unit, selects one of a plurality of position patterns based on the comparison, and provides coefficients required to define the selected position pattern to thecontour generator 300. The position pattern selection will now be described in detail with reference toFIGS. 5A to 5E. - As shown in
FIG. 5A , a position pattern group is selected from four position pattern groups, based on an initial condition provided through the command input unit. The first position pattern group (Pattern Group 1) is selected when the initial velocity Vo is greater than the reference velocity Vc, the second position pattern group (Pattern Group 2) is selected when the initial velocity Vo is greater than 0 and less than or equal to the reference velocity Vc, the third position pattern group (Pattern Group 3) is selected when the initial velocity Vo is greater than 0, and the fourth position pattern group (Pattern Group 4) is selected when the initial velocity Vo is zero. - Each of the first to fourth position pattern groups includes a plurality of position patterns, which will be described in detail assuming that the target position Pt is more than or equal to 0 (Pt≧0).
- As shown in
FIG. 5B , a first position pattern PT1 is selected when the target position Pt is more than or equal to a first set position Pc1 (Pt≧Pc1). The first position pattern PT1 has a velocity change form of constant velocity-deceleration-constant velocity-deceleration-constant velocity. A second position pattern PT2 is selected when the target position Pt is less than the first set position Pc1 (Pt<Pc1). The second position pattern PT2 has a velocity change form of constant velocity-deceleration-constant velocity-deceleration-constant velocity-acceleration-constant velocity. A third position pattern PT3 is selected when the target position Pt is more than or equal to 0 and less than or equal to the sum (Pc1+Pc2) of the first and second set positions Pc1 and Pc2 (0≦Pt≦(Pc1+Pc2)). The third position pattern PT3 has a velocity change form of constant velocity-deceleration-constant velocity-deceleration-constant velocity-acceleration-constant velocity. - As shown in
FIG. 5C , a fourth position pattern PT4 is selected when the target position Pt is more than or equal to a third set position Pc3 (Pt≧Pc3). The fourth position pattern PT4 has a velocity change form of constant velocity-acceleration-constant velocity-deceleration-constant velocity. A fifth position pattern PT5 is selected when the target position Pt is more than a fourth set position Pc4 and less than the third set position (Pc4<Pt<Pc3). The fifth position pattern PT5 has a velocity change form of constant velocity-acceleration-constant velocity-deceleration-constant velocity. A sixth position pattern PT6 is selected when the target position Pt is more than or equal to a fifth set position Pc5 and less than or equal to the fourth set position Pc4 (Pc5≦Pt≦Pc4). The sixth position pattern PT6 has a velocity change form of constant velocity-deceleration-constant velocity. A seventh position pattern PT7 is selected when the target position Pt is more than or equal to 0 and less than the fifth set position Pc5 (0≦Pt>Pc5). The seventh position pattern PT7 has a velocity change form of constant velocity-deceleration-constant velocity-deceleration-constant velocity-acceleration-constant velocity. - As shown in
FIG. 5D , an eighth position pattern PT8 is selected when the target position Pt is more than or equal to the sum (Pc6+Pc7) of sixth and seventh set positions Pc6 and Pc7 (Pt≧Pc6+Pc7). The eighth position pattern PT8 has a velocity change form of constant velocity-acceleration-constant velocity-acceleration-constant velocity-deceleration-constant velocity. A ninth position pattern PT9 is selected when the target position Pt is more than or equal to 0 and less than the sum (Pc6+Pc7) of the sixth and seventh set positions Pc6 and Pc7 (0≦Pt<Pc6+Pc7). The ninth position pattern PT9 has a velocity change form of constant velocity-acceleration-constant velocity-acceleration-constant velocity-deceleration-constant velocity. - As shown in
FIG. 5E , a tenth position pattern PT10 is selected when the target position Pt is more than or equal to an eighth set position (Pt≧Pc8). The tenth position pattern PT10 has a velocity change form of constant velocity-acceleration-constant velocity-deceleration-constant velocity. An eleventh position pattern PT11 is selected when the target position Pt is more than 0 and less than the eighth set position (0<Pt<Pc8). The eleventh position pattern PT11 has a velocity change form of constant velocity-acceleration-constant velocity-deceleration-constant velocity. A twelfth position pattern PT12 indicates that no operation is required (Pt=0). - The first to eleventh position patterns PT1 to PT11 correspond to target positions Pt more than zero (Pt>0). 13th to 23rd position patterns corresponding to target positions Pt less than zero (Pt<0), which are not shown, can be obtained by inverting the first to eleventh position patterns PT1 to PT11 about the horizontal axis. Accordingly, a total of 23 position patterns can be used in the present general inventive concept.
- After completing the selection of a position pattern based on the initial condition, the
pattern coefficient generator 200 generates pattern coefficients Cxx of the selected position pattern and time coefficients Tx of the sections thereof using a motion command, which contains a target position Pt, a reference velocity Vc, a reference acceleration Amax, a reference deceleration Dmax, and a reference jerk Jmax, and provides the generated pattern coefficients Cxx and time coefficients Tx to thecontour generator 300. - The
contour generator 300 generates a pattern polynomial P(t) for each section of the selected position pattern using time variables t and the pattern coefficients Cxx and time coefficients Tx received from thepattern coefficient generator 200, and provides the generated pattern polynomial P(t) to thedual filter 400. In other words, for each section of the selected position pattern, thecontour generator 300 generates one of the three types of pattern polynomials according to the type of each section thereof, and provides the generated pattern polynomial to thedual filter 400. For example, pattern polynomials corresponding to the fourth position pattern PT4, which has a velocity change form of constant velocity-acceleration-constant velocity-deceleration-constant velocity, are “P(3)-P(1)-P(3)-P(5)-P(3)”, and the corresponding time coefficients are “T(3)-T(1)-T(3)-T(5)-T(3)”. - The
dual filter 400 receives the pattern polynomial P(t), and generates a position profile Pr(t) by switching to one of a plurality of filters according to a 2nd-order coefficient Cx2 received from thepattern coefficient generator 200. - In detail, as shown in
FIG. 6 , thedual filter 400 includes anacceleration filter 401, adeceleration filter 402, afilter selector 410, a flip-flop 420, and a switchingportion 430. The pattern polynomial P(t) generated by thecontour generator 300 is input to both the acceleration anddeceleration filters portion 430. Thefilter selector 410 receives the 2nd-order coefficient Cx2 from thepattern coefficient generator 200, and outputs a filter selection signal to select one of the acceleration anddeceleration filters pattern coefficient generator 200 is positive, thefilter selector 410 outputs an Acc signal of “1” and a Dec signal of “0” to the flip-flop 420 so that the switchingportion 430 is switched to theacceleration filter 401. If the 2nd-order coefficient Cx2 is negative, thefilter selector 410 outputs an Acc signal of “0” and a Dec signal of “1” to the flip-flop 420 so that the switchingportion 430 is switched to thedeceleration filter 402. The flip-flop 420 provides a switching signal, corresponding to the filter selection signal received from thefilter selector 410, to the switchingportion 430, and the switchingportion 430 is switched to one of the acceleration anddeceleration filters - The filter sizes of the acceleration and deceleration filters vary depending on acceleration conditions (for example, a reference acceleration value Amax) and deceleration conditions (for example, a reference deceleration value Dmax).
FIG. 7 illustrates switching timing of the acceleration and deceleration filters in the dual filter when the filter size Fs2 of the acceleration filter is less than the filter size Fs1 of the deceleration filter. As shown inFIG. 7 , switching of the acceleration and deceleration filters must be performed such that the switching timing of theacceleration filter 401 is shifted in time with respect to the switching timing of thedeceleration filter 402 by a time interval “G” corresponding to a half of the difference between the two filter sizes Fs1 and Fs2. - If the filter size difference is not taken into consideration, a switching error may occur in the procedure of switching the acceleration and deceleration filters, thereby making the positional movement unstable.
- To prevent the switching error, filter integers are obtained and acceleration and deceleration filters are designed using the filter integers as expressed in
Equations 1 to 9. - where “Tra” denotes the size of the acceleration filter, “Jerk” denotes the magnitude of jerk, and “Acc” denotes acceleration.
- where “Ts” is sampling time, and “na” is the integer value of (Tra/Ts).
- where “Trd” denotes the size of a deceleration filter, and “Jerk” denotes the magnitude of jerk.
- where “Ts” denotes sampling time, and “nd” denotes the integer value of (Trd/Ts).
ma=max(na, nd) (5) - where “ma” denotes the larger of the two integer values “na” and “nd”.
mi=max(na, nd), (6) - where “mi” denotes the larger of the two integer values “na” and “nd”.
d=abs(na−nd) (7) - where “d” denotes the absolute value of (na−nd).
- As expressed by Equations 8 and 9, two filters are obtained using the above filter integers.
- Here, “y1[n]” corresponds to a filter having a relatively large filter size, and “y2[n]” corresponds to a filter having a relatively small filter size.
- If, while a position profile is generated using a position pattern, it is desired to update the position profile with a new position pattern, a corresponding update command is provided from the command input unit to the
initial condition calculator 100. According to the update command, theinitial condition calculator 100 receives a pattern polynomial P(t) currently output from thecontour generator 300, and calculates an initial velocity Vo of the new position pattern as an initial condition thereof, based on velocity, acceleration, and position values of the currently output pattern polynomial P(t) (for example, the last velocity, acceleration, and position values thereof). Theinitial condition calculator 100 provides the calculated initial velocity Vo to thepattern coefficient generator 200, thereby updating the position pattern with the new position pattern. - As one example, when the position profile “Pos” is updated from the tenth position pattern to the fourth position pattern, the fourth position pattern is continued one second later from the beginning of the position profile, and the resulting position profile “Pos” shows a seamless and smooth position change as shown in
FIG. 8A . As another example, when the position profile “Pos” is updated from the tenth position pattern to the seventh position pattern, the seventh position pattern is continued one second later from the beginning of the position profile, and the resulting position profile “Pos” shows a seamless and smooth position change as shown inFIG. 8B . - In another embodiment of the present general inventive concept, a motion buffer is used to generate a position profile while continually updating it with a plurality of position patterns.
FIG. 9 is a block diagram of an example position profile generation device according to this embodiment. - In
FIG. 9 , the position profile generation device comprises aninitial condition calculator 500, apattern coefficient generator 510, amotion buffer manager 520, a motion buffer 530, acontour generator 540, and adual filter 550. Themotion buffer manager 520 controls the operation of the motion buffer 530 to store pattern coefficients, time coefficients, and an initial condition according to a corresponding command received from a command input unit. The motion buffer 530 transfers the initial condition, the pattern coefficients, and the time coefficients, provided from theinitial condition calculator 500 and thepattern coefficient generator 510, to thecontour generator 540 after temporarily storing them. Thecontour generator 540 generates and provides a corresponding pattern polynomial to thedual filter 550. When receiving a command to update the position profile with a different position pattern, themotion buffer manager 520 controls the operation of the motion buffer 530 to temporarily store an initial condition, pattern coefficients, and time coefficients corresponding to the different position pattern, so as to generate a position profile with continuous position patterns. - As is apparent from the above description, the present general inventive concept provides a device to, and method of generating a position profile in a motion controller, which has the following features and advantages.
- Various position patterns are generated according to initial conditions, and a position profile is generated from the various position patterns.
- Lower-order polynomials and a small number of coefficients are used, thereby reducing the amount of calculations (i.e., the number of calculations) required in the procedure to generate the position profile.
- Filters are designed using filter integers, which are obtained taking into consideration filter sizes, so that switching errors are prevented from occurring due to the difference between the filter sizes, thereby generating a seamless and smooth position profile.
- Although a few embodiments of the present general inventive concept have been shown and described, it would be appreciated by those skilled in the art that changes may be made in these embodiments without departing from the principles and spirit of the general inventive concept, the scope of which is defined in the claims and their equivalents.
Claims (21)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040085041A KR100873901B1 (en) | 2004-10-22 | 2004-10-22 | Device and method for generating position profile of motion controller |
KR2004-85041 | 2004-10-22 | ||
KR10-2004-0085041 | 2004-10-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
US20060089748A1 true US20060089748A1 (en) | 2006-04-27 |
US8024061B2 US8024061B2 (en) | 2011-09-20 |
Family
ID=36207141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/132,347 Expired - Fee Related US8024061B2 (en) | 2004-10-22 | 2005-05-19 | Method and device to generate position profile in motion controller |
Country Status (2)
Country | Link |
---|---|
US (1) | US8024061B2 (en) |
KR (1) | KR100873901B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102008029657A1 (en) * | 2008-06-24 | 2009-12-31 | Technische Universität Carolo-Wilhelmina Zu Braunschweig | Position-controlled mechanism and method for controlling mechanisms movable in multiple degrees of freedom of movement |
EP2996003A1 (en) * | 2014-09-11 | 2016-03-16 | Robert Bosch Gmbh | Device and method for moving an object |
WO2021072573A1 (en) * | 2019-10-14 | 2021-04-22 | 深圳市汇顶科技股份有限公司 | Link processing method and device, and storage medium |
CN115674188A (en) * | 2022-09-20 | 2023-02-03 | 南方电网电力科技股份有限公司 | Accurate gentle and agreeable open loop tracking control system of series mechanical arm based on double-circuit filter |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2704923C (en) | 2007-11-09 | 2016-04-05 | Google, Inc. | Activating applications based on accelerometer data |
KR101507708B1 (en) * | 2008-11-04 | 2015-04-08 | 삼성전자주식회사 | Apparatus and method for changing setting information in portable terminal |
KR101324319B1 (en) | 2012-02-10 | 2013-11-01 | 삼성중공업 주식회사 | A method of generating position profile and a device using thereof |
KR101332318B1 (en) * | 2013-06-28 | 2013-11-22 | 한국기계연구원 | Apparatus and method for decreasing vibration of substrate transferring robot with beam shape |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3699317A (en) * | 1970-05-22 | 1972-10-17 | Westinghouse Electric Corp | Sampled data numerical contouring machine controller apparatus and method providable with on line capability for contour cornering deceleration and acceleration |
US4262336A (en) * | 1979-04-27 | 1981-04-14 | Pritchard Eric K | Multi-axis contouring control system |
US4774445A (en) * | 1986-11-20 | 1988-09-27 | Unimation, Inc. | Multiaxis robot control having capability for executing timed moves |
US5025385A (en) * | 1988-04-15 | 1991-06-18 | Froyd Stanley G | Multiple axis motion control system |
US5638267A (en) * | 1994-06-15 | 1997-06-10 | Convolve, Inc. | Method and apparatus for minimizing unwanted dynamics in a physical system |
US20020156541A1 (en) * | 1999-04-16 | 2002-10-24 | Yutkowitz Stephen J. | Method and apparatus for tuning compensation parameters |
US20030195643A1 (en) * | 2002-04-11 | 2003-10-16 | Knirck Jeffrey G. | Method and apparatus for acceleration limiting a position command for motion control |
US20050067995A1 (en) * | 2003-09-30 | 2005-03-31 | Rockwell Automation Technologies, Inc. | Method and system for generating multi-dimensional motion profiles |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05341847A (en) | 1992-06-09 | 1993-12-24 | Fuji Electric Co Ltd | Function generating device for positioning control |
JPH11184530A (en) | 1997-12-25 | 1999-07-09 | Mitsutoyo Corp | Motion controller |
-
2004
- 2004-10-22 KR KR1020040085041A patent/KR100873901B1/en active IP Right Grant
-
2005
- 2005-05-19 US US11/132,347 patent/US8024061B2/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3699317A (en) * | 1970-05-22 | 1972-10-17 | Westinghouse Electric Corp | Sampled data numerical contouring machine controller apparatus and method providable with on line capability for contour cornering deceleration and acceleration |
US4262336A (en) * | 1979-04-27 | 1981-04-14 | Pritchard Eric K | Multi-axis contouring control system |
US4774445A (en) * | 1986-11-20 | 1988-09-27 | Unimation, Inc. | Multiaxis robot control having capability for executing timed moves |
US5025385A (en) * | 1988-04-15 | 1991-06-18 | Froyd Stanley G | Multiple axis motion control system |
US5638267A (en) * | 1994-06-15 | 1997-06-10 | Convolve, Inc. | Method and apparatus for minimizing unwanted dynamics in a physical system |
US20020156541A1 (en) * | 1999-04-16 | 2002-10-24 | Yutkowitz Stephen J. | Method and apparatus for tuning compensation parameters |
US20030195643A1 (en) * | 2002-04-11 | 2003-10-16 | Knirck Jeffrey G. | Method and apparatus for acceleration limiting a position command for motion control |
US20050067995A1 (en) * | 2003-09-30 | 2005-03-31 | Rockwell Automation Technologies, Inc. | Method and system for generating multi-dimensional motion profiles |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102008029657A1 (en) * | 2008-06-24 | 2009-12-31 | Technische Universität Carolo-Wilhelmina Zu Braunschweig | Position-controlled mechanism and method for controlling mechanisms movable in multiple degrees of freedom of movement |
EP2996003A1 (en) * | 2014-09-11 | 2016-03-16 | Robert Bosch Gmbh | Device and method for moving an object |
US10310465B2 (en) | 2014-09-11 | 2019-06-04 | Robert Bosch Gmbh | Device and method for moving an object |
WO2021072573A1 (en) * | 2019-10-14 | 2021-04-22 | 深圳市汇顶科技股份有限公司 | Link processing method and device, and storage medium |
CN115674188A (en) * | 2022-09-20 | 2023-02-03 | 南方电网电力科技股份有限公司 | Accurate gentle and agreeable open loop tracking control system of series mechanical arm based on double-circuit filter |
Also Published As
Publication number | Publication date |
---|---|
KR100873901B1 (en) | 2008-12-15 |
US8024061B2 (en) | 2011-09-20 |
KR20060035514A (en) | 2006-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8024061B2 (en) | Method and device to generate position profile in motion controller | |
JP3485639B2 (en) | Path planning method and system in rectangular coordinate space | |
US20120029699A1 (en) | System and method for robot trajectory generation with continuous accelerations | |
US5988850A (en) | Curve interpolation method for performing velocity control during connecting motion of a robot | |
CN112965443B (en) | High-precision interpolation control method for corner trajectory tracking of cutting bed | |
EP0476381B1 (en) | Route interpolation method for robot | |
US5740327A (en) | Method of and apparatus for robot tip trajectory control | |
US6684131B2 (en) | Device and method for controlling robot | |
JP2000353006A (en) | Numerical controller | |
JPH03245209A (en) | Teaching method and control method for continuous route of robot | |
EP0507980B1 (en) | Velocity-variation minimization control method for robot | |
JPH11282517A (en) | Pulse control method using multiplier and system therefor | |
CN116330286B (en) | Method for inhibiting jitter through dynamic track and attitude planning of industrial robot | |
JPH02144705A (en) | Robot arm control method | |
CN116061195B (en) | Novel industrial mechanical arm motion trail control method | |
JPH04245505A (en) | Speed controlled and numerically controlled feeding speed control method | |
KR19980017860A (en) | Acceleration / deceleration trajectory generation method | |
JPH06182682A (en) | Speed control method for robot | |
JPH0991005A (en) | Track control device | |
KR0160639B1 (en) | Calculation method for robot trajectory planning by ratio calculation | |
JP3279785B2 (en) | Robot control method | |
JPS5890208A (en) | Locus compensating system of ptp control for automatic machine | |
KR930011215B1 (en) | Robot driving system | |
JPH09258813A (en) | Industrial robot | |
JPH0934527A (en) | Command interpolation method for positioning control system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: STANZIONE & KIM, LLP, DISTRICT OF COLUMBIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HA, JUNG IK;REEL/FRAME:016587/0341 Effective date: 20050516 |
|
AS | Assignment |
Owner name: SAMSUNG ELECTRONICS CO., LTD., KOREA, REPUBLIC OF Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED ON REEL 016587, FRAME 0341;ASSIGNOR:HA, JUNG IK;REEL/FRAME:017621/0260 Effective date: 20050516 |
|
ZAAA | Notice of allowance and fees due |
Free format text: ORIGINAL CODE: NOA |
|
ZAAB | Notice of allowance mailed |
Free format text: ORIGINAL CODE: MN/=. |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20230920 |