-
-
Notifications
You must be signed in to change notification settings - Fork 19.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Kinematic and SCARA patches #4859
Kinematic and SCARA patches #4859
Conversation
return HYPOT2(dx, dy) <= sq(DELTA_PRINTABLE_RADIUS); | ||
bool good; | ||
#if IS_SCARA | ||
#if MIDDLE_DEAD_ZONE_R > 0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In example_configurations/SCARA/Configuration.h
, this became MIDDLE_DEAD_ZONE
.
#if IS_SCARA | ||
#if MIDDLE_DEAD_ZONE_R > 0 | ||
const float R2 = HYPOT2(dx - SCARA_OFFSET_X, dy - SCARA_OFFSET_Y); | ||
good = (R2 >= sq(float(MIDDLE_DEAD_ZONE_R))) && (R2 <= sq(L1 + L2)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same as above.
#define SCARA_LINKAGE_2 150 //mm | ||
|
||
// SCARA tower offset (position of Tower relative to bed zero position) | ||
// This needs to be reasonably accurate as it defines the printbed position in the SCARA space. | ||
#define SCARA_OFFSET_X 100 //mm | ||
#define SCARA_OFFSET_Y -56 //mm | ||
|
||
// Radius around the center where the arm cannot reach | ||
#define MIDDLE_DEAD_ZONE 0 //mm |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In Marlin_main.cpp
, this became MIDDLE_DEAD_ZONE_R
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MIDDLE_DEAD_ZONE_R
is better. Fixed!
#define SCARA_LINKAGE_2 150 //mm | ||
|
||
// SCARA tower offset (position of Tower relative to bed zero position) | ||
// This needs to be reasonably accurate as it defines the printbed position in the SCARA space. | ||
#define SCARA_OFFSET_X 100 //mm | ||
#define SCARA_OFFSET_Y -56 //mm | ||
|
||
// Radius around the center where the arm cannot reach | ||
#define MIDDLE_DEAD_ZONE 0 //mm | ||
|
||
#define THETA_HOMING_OFFSET 0 //calculatated from Calibration Guide and command M360 / M114 see picture in http://reprap.harleystudio.co.za/?page_id=1073 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Where are THETA_HOMING_OFFSET
and PSI_HOMING_OFFSET
used in?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess these are placeholders for some future plans never realized.
This PR consists of work done in support of MakerArm SCARA that applies generally to Marlin. See individual commits for changes. This PR may be broken up into smaller parts, but posting ahead of time to put it through thorough Travis CI tests.
The main change here is a more universal application of Non-linear Bed Leveling, moving the previous "
adjust_delta
" functionality into thePlanner
class. In the near future thebed_level_grid
and supporting functions will also be localized in thePlanner
class. This is an important consolidation.Other changes include:
SCARA
withMORGAN_SCARA
to differentiate with other SCARA machinesSCARA
support in more functions