|
@ -634,8 +634,8 @@ static bool send_ok[BUFSIZE]; |
|
|
static inline type pgm_read_any(const type *p) \ |
|
|
static inline type pgm_read_any(const type *p) \ |
|
|
{ return pgm_read_##reader##_near(p); } |
|
|
{ return pgm_read_##reader##_near(p); } |
|
|
|
|
|
|
|
|
DEFINE_PGM_READ_ANY(float, float); |
|
|
DEFINE_PGM_READ_ANY(float, float) |
|
|
DEFINE_PGM_READ_ANY(signed char, byte); |
|
|
DEFINE_PGM_READ_ANY(signed char, byte) |
|
|
|
|
|
|
|
|
#define XYZ_CONSTS_FROM_CONFIG(type, array, CONFIG) \ |
|
|
#define XYZ_CONSTS_FROM_CONFIG(type, array, CONFIG) \ |
|
|
static const PROGMEM type array##_P[XYZ] = \ |
|
|
static const PROGMEM type array##_P[XYZ] = \ |
|
@ -643,12 +643,12 @@ DEFINE_PGM_READ_ANY(signed char, byte); |
|
|
static inline type array(int axis) \ |
|
|
static inline type array(int axis) \ |
|
|
{ return pgm_read_any(&array##_P[axis]); } |
|
|
{ return pgm_read_any(&array##_P[axis]); } |
|
|
|
|
|
|
|
|
XYZ_CONSTS_FROM_CONFIG(float, base_min_pos, MIN_POS); |
|
|
XYZ_CONSTS_FROM_CONFIG(float, base_min_pos, MIN_POS) |
|
|
XYZ_CONSTS_FROM_CONFIG(float, base_max_pos, MAX_POS); |
|
|
XYZ_CONSTS_FROM_CONFIG(float, base_max_pos, MAX_POS) |
|
|
XYZ_CONSTS_FROM_CONFIG(float, base_home_pos, HOME_POS); |
|
|
XYZ_CONSTS_FROM_CONFIG(float, base_home_pos, HOME_POS) |
|
|
XYZ_CONSTS_FROM_CONFIG(float, max_length, MAX_LENGTH); |
|
|
XYZ_CONSTS_FROM_CONFIG(float, max_length, MAX_LENGTH) |
|
|
XYZ_CONSTS_FROM_CONFIG(float, home_bump_mm, HOME_BUMP_MM); |
|
|
XYZ_CONSTS_FROM_CONFIG(float, home_bump_mm, HOME_BUMP_MM) |
|
|
XYZ_CONSTS_FROM_CONFIG(signed char, home_dir, HOME_DIR); |
|
|
XYZ_CONSTS_FROM_CONFIG(signed char, home_dir, HOME_DIR) |
|
|
|
|
|
|
|
|
/**
|
|
|
/**
|
|
|
* *************************************************************************** |
|
|
* *************************************************************************** |
|
@ -8542,7 +8542,7 @@ void ok_to_send() { |
|
|
cartes[X_AXIS] = delta_tower1_x + ex[0] * Xnew + ey[0] * Ynew - ez[0] * Znew; |
|
|
cartes[X_AXIS] = delta_tower1_x + ex[0] * Xnew + ey[0] * Ynew - ez[0] * Znew; |
|
|
cartes[Y_AXIS] = delta_tower1_y + ex[1] * Xnew + ey[1] * Ynew - ez[1] * Znew; |
|
|
cartes[Y_AXIS] = delta_tower1_y + ex[1] * Xnew + ey[1] * Ynew - ez[1] * Znew; |
|
|
cartes[Z_AXIS] = z1 + ex[2] * Xnew + ey[2] * Ynew - ez[2] * Znew; |
|
|
cartes[Z_AXIS] = z1 + ex[2] * Xnew + ey[2] * Ynew - ez[2] * Znew; |
|
|
}; |
|
|
} |
|
|
|
|
|
|
|
|
void forward_kinematics_DELTA(float point[ABC]) { |
|
|
void forward_kinematics_DELTA(float point[ABC]) { |
|
|
forward_kinematics_DELTA(point[A_AXIS], point[B_AXIS], point[C_AXIS]); |
|
|
forward_kinematics_DELTA(point[A_AXIS], point[B_AXIS], point[C_AXIS]); |
|
|