Prusa MINI Firmware overview
Main Page
Modules
Classes
Files
File List
File Members
scara.h
Go to the documentation of this file.
1
/**
2
* Marlin 3D Printer Firmware
3
* Copyright (c) 2019 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
4
*
5
* Based on Sprinter and grbl.
6
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
7
*
8
* This program is free software: you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation, either version 3 of the License, or
11
* (at your option) any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
*
21
*/
22
#pragma once
23
24
/**
25
* scara.h - SCARA-specific functions
26
*/
27
28
#include "../core/macros.h"
29
30
extern
float
delta_segments_per_second
;
31
32
// Float constants for SCARA calculations
33
float
constexpr
L1
= SCARA_LINKAGE_1,
L2
= SCARA_LINKAGE_2,
34
L1_2
=
sq
(
float
(
L1
)),
L1_2_2
= 2.0 *
L1_2
,
35
L2_2
=
sq
(
float
(
L2
));
36
37
void
scara_set_axis_is_at_home
(
const
AxisEnum
axis);
38
39
void
inverse_kinematics
(
const
xyz_pos_t
&raw);
40
void
forward_kinematics_SCARA
(
const
float
&
a
,
const
float
&
b
);
41
42
void
scara_report_positions
();
planner.h
XYZval::z
T z
Definition:
types.h:286
delta_segments_per_second
float delta_segments_per_second
L1_2_2
constexpr float L1_2_2
Definition:
scara.h:34
sq
#define sq(x)
Definition:
wiring_constants.h:83
XYZEval::z
T z
Definition:
types.h:383
ATAN2
#define ATAN2(y, x)
Definition:
macros.h:279
L1
constexpr float L1
Definition:
scara.h:33
L2_2
constexpr float L2_2
Definition:
scara.h:35
scara.h
inverse_kinematics
void inverse_kinematics(const xyz_pos_t &raw)
HYPOT2
#define HYPOT2(x, y)
Definition:
macros.h:100
i
uint8_t i
Definition:
screen_test_graph.c:72
L1_2
constexpr float L1_2
Definition:
scara.h:34
delta_segments_per_second
float delta_segments_per_second
AxisEnum
AxisEnum
Definition:
types.h:36
forward_kinematics_SCARA
void forward_kinematics_SCARA(const float &a, const float &b)
motion.h
XYZval::set
FI void set(const T px)
Definition:
types.h:290
RADIANS
#define RADIANS(d)
Definition:
macros.h:98
current_position
xyze_pos_t current_position
Definition:
motion.cpp:102
cartes
xyz_pos_t cartes
Definition:
motion.cpp:152
scara_set_axis_is_at_home
void scara_set_axis_is_at_home(const AxisEnum axis)
LOOP_XYZ
#define LOOP_XYZ(VAR)
Definition:
types.h:60
SERIAL_ECHOLNPAIR
#define SERIAL_ECHOLNPAIR(V...)
Definition:
serial.h:144
XYval
Definition:
types.h:99
createSpeedLookupTable.a
list a
Definition:
createSpeedLookupTable.py:29
scara_report_positions
void scara_report_positions()
SQRT
#define SQRT(x)
Definition:
macros.h:281
XYval::x
T x
Definition:
types.h:185
DEGREES
#define DEGREES(r)
Definition:
macros.h:99
update_software_endstops
void update_software_endstops(const AxisEnum axis)
Definition:
motion.cpp:503
inverse_kinematics
void inverse_kinematics(const xyz_pos_t &raw)
Z_AXIS
Definition:
types.h:39
A_AXIS
Definition:
types.h:37
SERIAL_EOL
#define SERIAL_EOL()
Definition:
serial.h:181
XYval::y
T y
Definition:
types.h:185
XYZval< float >
B_AXIS
Definition:
types.h:38
createSpeedLookupTable.b
list b
Definition:
createSpeedLookupTable.py:30
Z_HOME_POS
#define Z_HOME_POS
Definition:
Conditionals_post.h:179
L2
constexpr float L2
Definition:
scara.h:33
planner
Planner planner
Definition:
planner.cpp:111
Prusa-Firmware-Buddy-Private1
lib
Marlin
Marlin
src
module
scara.h
Generated by
1.8.16