Method and system for generating multi-dimensional motion profiles
AssigneeRockwell Automation Technologies, Inc.
InventorsJuergen Weinhofer, Jatin Bhatt, William Schwarz
Life of this patent
Estimating the term…
Abstract
A motion control system comprises control logic and a programming interface. The programming interface is configured to permit a user to specify a plurality of non-tangential path segments, and the control logic is configured to generate a plurality of additional connecting path segments substantially extending between and connecting the non-tangential path segments. The motion control system is configured to generate control signals to control operation of a plurality of motors to drive movement of a controlled element along a path defined by the non-tangential path segments and the additional connecting path segments.
Claims26
A motion control system comprising control logic and a programming interface, the programming interface being configured to permit a user to specify a plurality of non-tangential path segments, and the control logic being configured to generate a plurality of additional transitioning path segments substantially extending between the non-tangential path segments, and wherein the control logic is configured to generate control signals to control operation of a plurality of motion axes to drive movement of a controlled element along a path defined by the non-tangential path segments and the additional transitioning path segments.
A control method for controlling movement of a controlled element in a multi-dimensional coordinate system, the multi-dimensional coordinate system being defined by at least first and second motion axes of a motion control system, comprising:
- controlling movement of a controlled element along a first user-specified path segment, the first user-specified path segment being specified in one or more instructions in a user program;
- controlling movement of the controlled element along a transition path segment, the transition path segment transitioning movement of the controlled element from a first trajectory along the first user-specified path segment to a second trajectory along a second user-specified path segment, the first and second trajectories having different orientations in the multi-dimensional coordinate system, and the transition path segment being generated by control logic and not being user-specified;
- and
- controlling movement of the controlled element along the second user-specified path segment, the second user-specified path segment being specified by the one or more instructions in the user program.
A motion control system for controlling movement of a controlled element, the movement of the controlled element being driven by first and second motors, comprising:
- a first interpolator, the first interpolator generating a first set of position commands to control operation of the first and second motors, the first set of position commands being configured to control movement of the controlled element in a direction that is tangential to a trajectory of the controlled element throughout movement of the controlled element;
- and
- a second interpolator, the second interpolator generating a second set of position commands to control operation of the first and second motors, the second set of position commands being configured to control movement of the controlled element in a direction that is non-tangential to the trajectory of the controlled element throughout movement of the controlled element.
A motion control system for controlling three-dimensional movement of a controlled element, the movement of the controlled element being driven by first, second, and third motors, comprising:
- a first interpolator, the first interpolator generating a first set of position commands to control operation of the first, second, and third motors, the first set of position commands being configured to control movement of the controlled element in a direction of a first vector;
- and
- a second interpolator, the second interpolator generating a second set of position commands to control operation of the first, second, and third motors, the second set of position commands being configured to control movement of the controlled element in a direction of a second vector;
- a third interpolator, the third interpolator generating a third set of set of position commands to control operation of the first, second, and third motors, the third set of position commands being configured to control movement of the controlled element in a direction of a third vector;
- and
- coordinate transformation logic, the coordinate transformation logic being configured to transform the first, second and third sets of source system position commands from a source coordinate system defined by a trajectory of the controlled element to a target coordinate system defined by first, second, and third motion axes;
- wherein one of the first, second, and third vectors is tangential to a trajectory of the controlled element throughout movement of the controlled element, and wherein the remaining ones of the first, second, and third vectors are normal to the trajectory of the controlled element and normal to each other throughout movement of the controlled element.
A system for controlling a first motor and a second motor, the first motor defining a first motion axis and the second motor defining a second motion axis;
- the system comprising motion control logic configured to control the first motor and the second motor in accordance with a user program, wherein the motion control logic provides a plurality of instructions configured for use in the user program, the plurality of instructions including an instruction that permits a move to be specified in terms of a multi-dimensional coordinate system that includes the first motion axis and the second motion axis.
A programming interface for a motion control system, the programming interface including a multi-axis move instruction which allows a user to specify a move in multiple dimensions of a three dimensional source coordinate system, the multi-axis move instruction including one or more fields which permit the user to define a multi-dimensional path segment in the three-dimensional source coordinates system, and wherein the programming interface further includes coordinate transformation logic configured to transform move parameters generated in accordance with the move instruction into a target coordinate system, the target coordinate system being defined at least in part by first, second, and third motion axes.
An industrial control system comprising:
- a plurality of input devices;
- a plurality of output devices;
- a communication network;
- a plurality of motors;
- a plurality of microprocessor-based controllers, the plurality of controllers being coupled to each other by way of the communication network, the plurality of controllers being coupled to respective ones of the plurality of input devices and the plurality of output devices, the plurality of controllers being configured to control the plurality of output devices based on input status information from the plurality of input devices, the plurality of microprocessor-based controllers including control logic to control the plurality of motors, and the plurality of controllers being configured to be programmed with a user program;
- and
- a programming interface, the programming interface being configured to permit a user to generate the user program, the programming interface being configured to permit a user to specify a plurality of non-tangential path segments;
- and
- wherein the control logic is configured to generate a plurality of additional transitioning path segments substantially extending between the non-tangential path segments, and wherein the control logic is configured to generate control signals to control operation of motion axes to drive movement of a controlled element along a path defined by the non-tangential path segments and the additional transitioning path segments.
Dependencies are inferred from the claim text.