AbcToDq0Transform

class AbcToDq0Transform : public vslib::Component

Public Functions

inline  AbcToDq0Transform (std::string_view name, Component &parent, const uint64_t number_points=10 '000)

Creates the AbcToDq0Transform Component.

Parameters:
  • name – Name of the Component

  • parent – Parent of this Component

  • number_points – Number of points for the sine and cosine lookup tables

std::tuple<double, double, double> transform(const double f_a, const double f_b, const double f_c, const double wt, const double offset = 0) noexcept

Performs a-b-c to d-q-0 transform from a three-phase (abc) to a dq0 rotating reference frame. Angular position of the rotating frame is given by input wt. By default, the a-phase to q-axis alignment is assumed but this can be modified with the manual offset parameter.

Parameters:
  • f_a – a-phase value

  • f_b – b-phase value

  • f_c – c-phase value

  • wt – angle (in radians) between q and a

  • offset – Offset angle alignment (in radians): 0 is q alignment, pi/2 for d and a alignment

Returns:

Tuple of d, q, 0 values