Motion.PVT
Executes a PVT motion. PVT stands for "Position, Velocity, Time." A user must specify the position, velocity, and time values for a given motion at multiple points.
The position and velocity for a PVT move are continuous. However, the acceleration and jerk values are not continuous. The jerk maintains a constant value between PVT points, but is discontinuous at the PVT points. Therefore, the acceleration is continuous between PVT points, but it also may be discontinuous at PVT points. For more information about PVT profiles, please see PT and PVT Path Motion.
Version History
Introduced in MPX 2.0.
Result
Void
Arguments
Overload 1
|
Argument |
Type |
Description |
position |
Array of Double |
|
velocity |
Array of Double |
|
deltaTime |
Array of Double |
|
|
Overload 2
|
Argument |
Type |
Description |
position |
Array of Double |
|
velocity |
Array of Double |
|
deltaTime |
Array of Double |
|
emptyCount |
Int32 |
|
|
Overload 3
|
Argument |
Type |
Description |
position |
Array of Double |
|
velocity |
Array of Double |
|
deltaTime |
Array of Double |
|
attributes |
Mpx.MoveAttribute |
|
|
Overload 4
|
Argument |
Type |
Description |
position |
Array of Double |
|
velocity |
Array of Double |
|
deltaTime |
Array of Double |
|
emptyCount |
Int32 |
|
attributes |
Mpx.MoveAttribute |
|
|
Overload 5
|
Argument |
Type |
Description |
position |
2-D Array of Double |
|
velocity |
2-D Array of Double |
|
deltaTime |
Array of Double |
|
|
Overload 6
|
Argument |
Type |
Description |
position |
2-D Array of Double |
|
velocity |
2-D Array of Double |
|
deltaTime |
Array of Double |
|
emptyCount |
Int32 |
|
|
Overload 7
|
Argument |
Type |
Description |
position |
2-D Array of Double |
|
velocity |
2-D Array of Double |
|
deltaTime |
Array of Double |
|
attributes |
Mpx.MoveAttribute |
|
|
Overload 8
|
Argument |
Type |
Description |
position |
2-D Array of Double |
|
velocity |
2-D Array of Double |
|
deltaTime |
Array of Double |
|
emptyCount |
Int32 |
|
attributes |
Mpx.MoveAttribute |
|
|
Common Exceptions
|
Error |
Occurs when... |
Argument |
An invalid argument is specified. |
|
Visual Basic
Syntax
Sub PVT(position As Double(), velocity As Double(), deltaTime As Double())
Sub PVT(position As Double(), velocity As Double(), deltaTime As Double(), emptyCount As Int32)
Sub PVT(position As Double(), velocity As Double(), deltaTime As Double(), attributes As Mpx.MoveAttribute)
Sub PVT(position As Double(), velocity As Double(), deltaTime As Double(), emptyCount As Int32, attributes As Mpx.MoveAttribute)
Sub PVT(position As Double(,), velocity As Double(,), deltaTime As Double())
Sub PVT(position As Double(,), velocity As Double(,), deltaTime As Double(), emptyCount As Int32)
Sub PVT(position As Double(,), velocity As Double(,), deltaTime As Double(), attributes As Mpx.MoveAttribute)
Sub PVT(position As Double(,), velocity As Double(,), deltaTime As Double(), emptyCount As Int32, attributes As Mpx.MoveAttribute)
Sample Code
|
' Overload 1
Dim pos() As Double = New Double() { 1000.0, 2000.0 }
Dim velocity() As Double = New Double() { 1000.0, 1000.0 }
Dim deltaTime() As Double = New Double() { 1.0, 2.0 }
' pos velocity deltaTime
controller.Motion(0).PVT(pos, velocity, deltaTime)
' Overload 2
Dim pos() As Double = New Double() { 1000.0, 2000.0 }
Dim velocity() As Double = New Double() { 1000.0, 1000.0 }
Dim deltaTime() As Double = New Double() { 1.0, 2.0 }
Dim emptyCount As Int32 = 0
' pos velocity deltaTime emptyCount
controller.Motion(0).PVT(pos, velocity, deltaTime, emptyCount)
' Overload 3
Dim pos() As Double = New Double() { 1000.0, 2000.0 }
Dim velocity() As Double = New Double() { 1000.0, 1000.0 }
Dim deltaTime() As Double = New Double() { 1.0, 2.0 }
' pos velocity deltaTime MoveAttr
controller.Motion(0).PVT(pos, velocity, deltaTime, Mpx.MoveAttribute.Id)
' Overload 4
Dim pos() As Double = New Double() { 1000.0, 2000.0 }
Dim velocity() As Double = New Double() { 1000.0, 1000.0 }
Dim deltaTime() As Double = New Double() { 1.0, 2.0 }
Dim emptyCount As Int32 = 0
' pos velocity deltaTime emptyCount MoveAttr
controller.Motion(0).PVT(pos, velocity, deltaTime, emptyCount, Mpx.MoveAttribute.Id)
' Overload 5
Dim pos(,) As Double = New Double(,) { { 1000.0, 2000.0 }, { 1500.0, 2500.0 } }
Dim velocity(,) As Double = New Double(,) { { 1000.0, 1000.0 }, { 1500.0, 1250.0 } }
Dim deltaTime() As Double = New Double() { 1.0, 2.0 }
' pos velocity deltaTime
controller.Motion(0).PVT(pos, velocity, deltaTime)
' Overload 6
Dim pos(,) As Double = New Double(,) { { 1000.0, 2000.0 }, { 1500, 2500 } }
Dim velocity(,) As Double = New Double(,) { { 1000.0, 1000.0 }, { 1500.0, 1250.0 } }
Dim deltaTime() As Double = New Double() { 1.0, 2.0 }
Dim emptyCount As Int32 = 0
' pos velocity deltaTime emptyCount
controller.Motion(0).PVT(pos, velocity, deltaTime, emptyCount)
' Overload 7
Dim pos(,) As Double = New Double(,) { { 1000.0, 2000.0 }, { 1500, 2500 } }
Dim velocity(,) As Double = New Double(,) { { 1000.0, 1000.0 }, { 1500.0, 1250.0 } }
Dim deltaTime() As Double = New Double() { 1.0, 2.0 }
' pos velocity deltaTime MoveAttr
controller.Motion(0).PVT(pos, velocity, deltaTime, Mpx.MoveAttribute.Id)
' Overload 8
Dim pos(,) As Double = New Double(,) { { 1000.0, 2000.0 }, { 1500, 2500 } }
Dim velocity(,) As Double = New Double(,) { { 1000.0, 1000.0 }, { 1500.0, 1250.0 } }
Dim deltaTime() As Double = New Double() { 1.0, 2.0 }
Dim emptyCount As Int32 = 0
' pos velocity deltaTime emptyCount MoveAttr
controller.Motion(0).PVT(pos, velocity, deltaTime, emptyCount, Mpx.MoveAttribute.Id) |
Sample Application
C#
Syntax
void PVT(double[] position, double[] velocity, double[] deltaTime);
void PVT(double[] position, double[] velocity, double[] deltaTime, int emptyCount);
void PVT(double[] position, double[] velocity, double[] deltaTime, Mpx.MoveAttribute attributes);
void PVT(double[] position, double[] velocity, double[] deltaTime, int emptyCount, Mpx.MoveAttribute attributes);
void PVT(double[,] position, double[,] velocity, double[] deltaTime);
void PVT(double[,] position, double[,] velocity, double[] deltaTime, int emptyCount);
void PVT(double[,] position, double[,] velocity, double[] deltaTime, Mpx.MoveAttribute attributes);
void PVT(double[,] position, double[,] velocity, double[] deltaTime, int emptyCount, Mpx.MoveAttribute attributes);
Sample Code
|
// Overload 1
double[] pos = new double[] { 1000.0, 2000.0 };
double[] velocity = new double[] { 1000.0, 1000.0 };
double[] deltaTime = new double[] { 1.0, 2.0 };
// pos velocity deltaTime
controller.Motion[0].PVT(pos, velocity, deltaTime);
// Overload 2
double[] pos = new double[] { 1000.0, 2000.0 };
double[] velocity = new double[] { 1000.0, 1000.0 };
double[] deltaTime = new double[] { 1.0, 2.0 };
int emptyCount = 0;
// pos velocity deltaTime emptyCount
controller.Motion[0].PVT(pos, velocity, deltaTime, emptyCount);
// Overload 3
double[] pos = new double[] { 1000.0, 2000.0 };
double[] velocity = new double[] { 1000.0, 1000.0 };
double[] deltaTime = new double[] { 1.0, 2.0 };
// pos velocity deltaTime MoveAttr
controller.Motion[0].PVT(pos, velocity, deltaTime, Mpx.MoveAttribute.Id);
// Overload 4
double[] pos = new double[] { 1000.0, 2000.0 };
double[] velocity = new double[] { 1000.0, 1000.0 };
double[] deltaTime = new double[] { 1.0, 2.0 };
int emptyCount = 0;
// pos velocity deltaTime emptyCount MoveAttr
controller.Motion[0].PVT(pos, velocity, deltaTime, emptyCount, Mpx.MoveAttribute.Id);
// Overload 5
double[,] pos = new double[,] { { 1000.0, 2000.0 }, { 1500.0, 2500.0 } };
double[,] velocity = new double[,] { { 1000.0, 1000.0 }, { 1500.0, 1250.0 } };
double[] deltaTime = new double[] { 1.0, 2.0 };
// pos velocity deltaTime
controller.Motion[0].PVT(pos, velocity, deltaTime);
// Overload 6
double[,] pos = new double[,] { { 1000.0, 2000.0 }, { 1500, 2500 } };
double[,] velocity = new double[,] { { 1000.0, 1000.0 }, { 1500.0, 1250.0 } };
double[] deltaTime = new double[] { 1.0, 2.0 };
int emptyCount = 0;
// pos velocity deltaTime emptyCount
controller.Motion[0].PVT(pos, velocity, deltaTime, emptyCount);
// Overload 7
double[,] pos = new double[,] { { 1000.0, 2000.0 }, { 1500, 2500 } };
double[,] velocity = new double[,] { { 1000.0, 1000.0 }, { 1500.0, 1250.0 } };
double[] deltaTime = new double[] { 1.0, 2.0 };
// pos velocity deltaTime MoveAttr
controller.Motion[0].PVT(pos, velocity, deltaTime, Mpx.MoveAttribute.Id);
// Overload 8
double[,] pos = new double[,] { { 1000.0, 2000.0 }, { 1500, 2500 } };
double[,] velocity = new double[,] { { 1000.0, 1000.0 }, { 1500.0, 1250.0 } };
double[] deltaTime = new double[] { 1.0, 2.0 };
int emptyCount = 0;
// pos velocity deltaTime emptyCount MoveAttr
controller.Motion[0].PVT(pos, velocity, deltaTime, emptyCount, Mpx.MoveAttribute.Id);
|
See Also
PVTF
PTF
PT
Bessel
Spline
BSpline
BSpline2
MoveAttr
Axis Object
PositionScale
|