Так оно и было.
Подключил концевики и всё заработало (не понятно только какая тут может быть связь?).
Технический форум по робототехнике.
#ifndef COREXY
float delta_mm[4];
delta_mm[X_AXIS] = (-target[X_AXIS]+position[X_AXIS])/axis_steps_per_unit[X_AXIS];
delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS];
#else
float delta_mm[6];
delta_mm[X_HEAD] = (-target[X_AXIS]+position[X_AXIS])/axis_steps_per_unit[X_AXIS];
delta_mm[Y_HEAD] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS];
delta_mm[X_AXIS] = ((-target[X_AXIS]-position[X_AXIS]) + (-target[Y_AXIS]+position[Y_AXIS]))/axis_steps_per_unit[X_AXIS];
delta_mm[Y_AXIS] = ((target[X_AXIS]-position[X_AXIS]) - (target[Y_AXIS]-position[Y_AXIS]))/axis_steps_per_unit[Y_AXIS];
#ifndef COREXY
float delta_mm[4];
delta_mm[X_AXIS] = (-target[X_AXIS]+position[X_AXIS])/axis_steps_per_unit[X_AXIS];
delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS];
#else
float delta_mm[6];
delta_mm[X_HEAD] = (-target[X_AXIS]+position[X_AXIS])/axis_steps_per_unit[X_AXIS];
delta_mm[Y_HEAD] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS];
delta_mm[X_AXIS] = ((-target[X_AXIS]-position[X_AXIS]) + (-target[Y_AXIS]+position[Y_AXIS]))/axis_steps_per_unit[X_AXIS];
delta_mm[Y_AXIS] = ((target[X_AXIS]-position[X_AXIS]) - (target[Y_AXIS]-position[Y_AXIS]))/axis_steps_per_unit[Y_AXIS];
fix писал(а):все заработало но скорость упала до 10%
setar писал(а):ну уж
просто это нужно глубоко в прошивке делать