IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0277305
(2006-03-23)
|
등록번호 |
US-7450127
(2008-11-11)
|
발명자
/ 주소 |
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
28 인용 특허 :
128 |
초록
▼
A method of controlling movement of a body at spaced apart instances along a trajectory in a multi-dimensional environment by determining a current position of the body at a current instance, determining an ideal point on the trajectory, determining a vector difference between the current position a
A method of controlling movement of a body at spaced apart instances along a trajectory in a multi-dimensional environment by determining a current position of the body at a current instance, determining an ideal point on the trajectory, determining a vector difference between the current position and the ideal point, and adjusting the body's velocity for a subsequent instance based on the vector difference. The method may be used in motion control systems for computer-controllable machine tools.
대표청구항
▼
What is claimed is: 1. A method of controlling movement of a body through a series of motion commands, for a representative motion command of the series of motion commands the method including the steps of: obtain a motion command having a contour; analyze the geometry of the motion command, includ
What is claimed is: 1. A method of controlling movement of a body through a series of motion commands, for a representative motion command of the series of motion commands the method including the steps of: obtain a motion command having a contour; analyze the geometry of the motion command, including the steps of: determine a stopper location associated with the motion command, the stopper location being spaced apart from an endpoint of the motion command; and determine a vector which represents a stopper plane associated with the motion command; determine a desired velocity and a desired acceleration for the body based on at least the determined stopper plane; and executing the motion command. 2. The method of claim 1, wherein at multiple instances during the execution of the motion command an actual position of the body is provided through feedback. 3. The method of claim 2, wherein each instance of the multiple instances is spaced apart by about 200 μsec. 4. The method of claim 2, at a given one of the multiple instances during execution of the motion command, the actual position of the body is compared to the contour of the motion command to determine a tolerance error. 5. The method of claim 4, wherein the tolerance error is the distance from the actual position to a closest point on the contour. 6. The method of claim 5, further including comparing the tolerance error to a tolerance value associated with the motion command and increasing the desired velocity if the tolerance error is below the tolerance value; and decreasing the desired velocity if the tolerance error is above the tolerance value. 7. The method of claim 2, wherein the motion command is an arc move and the actual position of the body is projected onto a plane defined by the arc move. 8. A method of controlling movement of a body at spaced apart instances along a trajectory in a multi-dimensional environment, including the steps of: determining a current position of the body in the multi-dimensional environment at a current instance; determining an ideal point on the trajectory, the ideal point being a point on the trajectory that is closest to the current position; determining a vector difference between the current position and the ideal point; and adjusting a velocity of the body for a subsequent instance based on the vector difference, wherein the velocity is adjusted based at least on a tangential tracking error of the ideal point and on a distance from the ideal point to an endpoint of the trajectory. 9. The method of claim 8, wherein the body is a CNC machining head and the current position is determined based on feedback information. 10. The method of claim 8, further including the step of determining a tracking error in the normal direction which corresponds to the distance from the current position to the ideal point and wherein the step of adjusting a velocity of the body based on the vector difference includes the steps of: increasing the velocity if the tracking error in the normal direction below a specified value; and decreasing the velocity if the tracking error in the normal direction is above the specified value. 11. The method of claim 8, wherein the trajectory includes a plurality of motion commands, the method including the step of analyzing geometric characteristics of a motion command before executing the motion command. 12. The method of claim 11, wherein the analyzing step includes the steps of determining a stopper plane normal direction and determining a stopper position. 13. The method of claim 12, wherein the stopper position is spaced apart from an endpoint of the trajectory and the velocity of the body is greater than zero at the endpoint of the trajectory. 14. The method of claim 12, wherein the stopper position is an endpoint of the trajectory and the velocity of the body is zero at the endpoint of the trajectory. 15. The method of claim 8, further including the step of adjusting the velocity to compensate for an influence of stick friction on the body. 16. The method of claim 8, further including the step of adjusting the velocity to compensate for an influence of backlash on the body. 17. The method of claim 8, further including the step of providing a plurality of control signals to a servo system which causes movement of the body, the control signals being related to the velocity. 18. The method of claim 8, wherein the velocity is adjusted based at least on a normal tracking error. 19. A method of controlling movement of a body at spaced apart instances along a trajectory in a multi-dimensional environment, including the steps of: determining a current position of the body in the multi-dimensional environment at a current instance; determining an ideal point on the trajectory, the ideal point being a point on the trajectory that is closest to the current position; determining a vector difference between the current position and the ideal point; adjusting a velocity of the body for a subsequent instance based on the vector difference; calculating a first tracking error in a normal direction which corresponds to a distance from the current position to the ideal point; and calculating a second tracking error in a tangential direction which corresponds to a path length that the ideal point lags behind. 20. The method of claim 19, wherein the step of adjusting a velocity of the body for a subsequent instance based on the vector difference is based on both the first tracking error and the second tracking error. 21. The method of claim 20, wherein the first tracking error and the second tracking error are used by feedback controllers. 22. A method of controlling movement of a body at spaced apart instances along a trajectory in a multi-dimensional environment, including the steps of: determining a current position of the body in the multi-dimensional environment at a current instance; determining an ideal point on the trajectory, the ideal point being a point on the trajectory that is closest to the current position; determining a vector difference between the current position and the ideal point; adjusting a velocity of the body for a subsequent instance based on the vector difference, wherein the trajectory is comprised of a series of arcs each of which is tangent to a preceding arc and to a succeeding arc. 23. A method of controlling movement of a body along a trajectory, including the steps of: determining whether a status flag is set to accelerate or decelerate; if the status flag is set to accelerate, then determining a stop distance required for a current state of the body, the current state including position and velocity, and comparing the stop distance required to a second distance between an ideal current position of the body and the ending position; if the second distance is less than the stop distance required, then changing the status flag to decelerate; if the second distance is greater than the stop distance required, then determining a desired acceleration and a desired velocity for the body; and adjusting a velocity of the body based on the desired acceleration and the desired velocity for the body. 24. The method of claim 23, wherein if the status flag is changed to decelerate further including the step of modifying a maximum jerk value associated with the current position of the body. 25. The method of claim 23, wherein the desired acceleration and the desired velocity are based on the modified jerk. 26. The method of claim 23, wherein the stop distance required is a first distance the body would travel from the current position if the body were decelerated from the current velocity to approximately zero velocity at an ending position according to a velocity profile. 27. The method of claim 26, wherein the velocity profile is an S-curve profile. 28. The method of claim 23, wherein the current state of the body further includes acceleration. 29. A method of controlling movement of a body through a series of motion commands, for a representative motion command of the series of motion commands the method including the steps of: obtain a motion command having a contour and an endpoint; determine a stopper location associated with the motion command, the stopper location being spaced apart from the endpoint; generating a speed profile for the motion command which has a zero velocity at the stopper location and passes through the endpoint of the motion command at a desired speed, the desired speed being greater than zero; and executing the motion command. 30. The method of claim 29, wherein the speed profile includes an S-curve.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.