You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.0 KiB
C++
33 lines
1.0 KiB
C++
#pragma once
|
|
|
|
#include <vector>
|
|
|
|
using stPointPosition = struct _stPointPosition
|
|
{
|
|
// axis position for each point (number of position MUST match number of axis)
|
|
std::vector<double> vecAxisPosition;
|
|
//
|
|
unsigned long ulDwell{ 0 }; // dwell time in ms
|
|
};
|
|
|
|
using stAxSpeed = struct _stAxSpeed
|
|
{
|
|
double dStartSpeed{ 0. }; // axis start speed
|
|
double dMaxSpeed{ 0. }; // axis max speed
|
|
double dEndSpeed{ 0. }; // axis end speed
|
|
// reserved
|
|
double dSCurve{ 0.5 }; // s-curve
|
|
double dAcc{ 0. }; // axis acceleration
|
|
double dDec{ 0. }; // axis deceleration
|
|
};
|
|
|
|
using stMotionPath = struct _stMotionPath
|
|
{
|
|
// point path
|
|
std::vector<int> vecAxisId; // list of axis id
|
|
std::vector<stPointPosition> vecPointPath; // list of axis position for each point
|
|
// speed profile
|
|
stAxSpeed AxSpeed; // speed for each axis
|
|
int nId{}; // Point Table Id for ECAT
|
|
bool bUseAbsolutePos{}; // true: absolute position, false: relative position (default)
|
|
}; |