开源改变世界!!

Z轴归位无响应 #999

推推 grbl 1年前 (2023-01-28) 196次浏览
关闭
armature81 打开了这个问题 2020 年 5 月 12 日 · 35条评论
关闭

Z轴归位无响应#999

armature81 打开了这个问题 2020 年 5 月 12 日 · 35条评论

注释

Z轴归位无响应 #999

嗨,大家好。
我有 DIY 激光数控机床
,我正在使用 arduino Uno 和 CNC shield 以及 GRBL 1.1h 和 Lasergrbl 软件。

问题是 Z 轴归位没有响应
只有 y 和 x 移动到归位,因为 z 轴没有移动。
如果慢跑甚至运行 gcode 文件,我工作的 Z 轴。

限位开关 NC、硬接线和限位销在我测试的所有轴上都工作正常。

我检查了 config.h 草图,但没有发现任何问题,如下所示:

#define HOMING_CYCLE_0 (1<<Z_AXIS) // 要求:首先移动 Z 以清除工作区。
#define HOMING_CYCLE_1 ((1<<X_AXIS)|(1<<Y_AXIS)) // 可选:然后同时移动 X、Y。
// #define HOMING_CYCLE_2 // 可选:取消注释并添加轴掩码以启用

// 注意:以下是为 2 轴机器设置归位的两个示例。
// #define HOMING_CYCLE_0 ((1<<X_AXIS)|(1<<Y_AXIS)) // 与 COREXY 不兼容:在一个周期内同时归位 XY。

// #define HOMING_CYCLE_0 (1<<X_AXIS) // COREXY 兼容:第一个家 X
// #define HOMING_CYCLE_1 (1<<Y_AXIS) // COREXY 兼容:然后家 Y

// 在机器最初点动到限位开关后执行的归位循环数。
// 这有助于防止超调并提高可重复性。这个值应该是 1 或
// 更大。
#define N_HOMING_LOCATE_CYCLE 1 // 整数 (1-128)

//启用单轴归位命令。$HX、$HY 和 $HZ 用于 X、Y 和 Z 轴归位。完整的归位
// 循环仍由 $H 命令调用。默认情况下禁用。它仅用于解决
// 需要在两轴和三轴机器之间切换的用户。这实际上是非常罕见的。
// 如果你有两轴机器,不要使用这个。相反,只需更改两轴的归位周期。
// #define HOMING_SINGLE_AXIS_COMMANDS // 默认禁用。取消注释以启用。

// 归位后,Grbl 默认将整个机器空间设置为负空间,这是典型的
// 对于专业 CNC 机器,无论限位开关位于何处。取消注释此
//定义以强制 Grbl 始终将机器原点设置在归位位置,尽管切换方向。
// #define HOMING_FORCE_SET_ORIGIN // 取消注释以启用。

所以请任何人提供帮助或想法

Z轴归位无响应 #999

如果你有 Z 点动箭头显示,你真的可以上下点动 Z 吗?
Z轴归位无响应 #999

Z轴归位无响应 #999
作者

是的,我有,我可以上下慢跑,我也可以运行 gcode 文件,z 轴上下移动
只有归位没有响应

Z轴归位无响应 #999

行。你有任何其他旧的 Grbl 安装吗?它可能使用了错误的 config.h 文件,并且 Z 轴归位被注释掉了。

Z轴归位无响应 #999
作者

我在删除旧的时下载了新的 GRbl 1.1h

Z轴归位无响应 #999
施瓦兹07 评论了 2020 年 5 月 12 日  

在 GRBL 1.1 中,Spindle_Enable Pin 和 Z_Axis_Limit Pin 已切换为添加 PWM 支持。您只需将激光/主轴插入 Z 轴限位开关引脚,并将限位开关插入 CNC 防护罩上的 Spindle_enable 引脚

Z轴归位无响应 #999
贡献者

愚蠢的问题,但是你在编辑 config.h 文件后编译并上传代码到你的 arduino 了吗?
此外,确保HOMING_CYCLE_0 该文件中没有更多启用/定义的实例。

Z轴归位无响应 #999
作者

在 GRBL 1.1 中,Spindle_Enable Pin 和 Z_Axis_Limit Pin 已切换为添加 PWM 支持。您只需将激光/主轴插入 Z 轴限位开关引脚,并将限位开关插入 CNC 防护罩上的 Spindle_enable 引脚

是的,我按照 z 限制引脚切换的 pwm 进行操作

Z轴归位无响应 #999
作者
电枢81 评论了 2020 年 5 月 12 日  

愚蠢的问题,但是你在编辑 config.h 文件后编译并上传代码到你的 arduino 了吗?
此外,确保HOMING_CYCLE_0 该文件中没有更多启用/定义的实例。

是的,我确实上传了并且启用了归位周期 0

Z轴归位无响应 #999
作者

Z轴归位无响应 #999

$0 步进脉冲时间 10
1美元 步骤空闲延迟 25
$2 步进脉冲反转 0
3美元 步进方向反转 6个
4美元 反转步使能引脚 0
5美元 反转限位销 1个
6美元 反转探针 0
10 美元 状态报告选项 1个
$11 结偏差 0.010
$12 电弧公差 0.002
$13 以英寸为单位报告 0
20美元 软限制使能 0
$21 硬限制启用 1个
$22 归位周期使能 1个
$23 归位方向反转 7
$24 归位定位进给率 500.000
25美元 归位搜索寻道率 2000.000
$26 归位开关去抖延迟 250
$27 归位开关拉断距离 5.000
30美元 最高主轴转速 256
$31 最低主轴转速 0
$32 激光模式使能 1个
100 美元 X轴行程分辨率 160.000
$101 Y轴行程分辨率 160.000
$102 Z轴行程分辨率 708.000
$110 X轴最大速率 5000.000
$111 Y轴最大速率 5000.000
$112 Z轴最大速率 1000.000
$120 X轴加速度 3000.000
$121 Y轴加速度 3000.000
$122 Z轴加速度 500.000
$130 X轴最大行程 500.000
$131 Y轴最大行程 500.000
$132 Z轴最大行程 75.000

/*
config.h –
Grbl 的编译时配置部分

版权所有 (c) 2012-2016 Sungeun K. Jeon for Gnea Research LLC
版权所有 (c) 2009-2011 Simen Svale Skogsrud

Grbl 是免费软件:您可以根据自由软件基金会
发布的 GNU 通用公共许可证条款重新分发和/或修改它,许可证
版本 3,或
(由您选择)任何更新版本。

Grbl 的分发是希望它有用,
但不提供任何保证;
甚至没有针对特定用途的适销性或适用性的默示保证。有关详细信息,请参阅
GNU 通用公共许可证。

您应该
随 Grbl 一起收到 GNU 通用公共许可证的副本。如果没有,请参阅http://www.gnu.org/licenses/
*/

// 此文件包含 Grbl 内部系统的编译时配置。在大多数情况下,
// 用户不需要直接修改这些,但它们是出于特定需要,即
// 性能调整或针对非典型机器进行调整。

// 重要提示:此处的任何更改都需要完全重新编译源代码才能传播它们。

#ifndef config_h
#define config_h
#include “grbl.h” // 用于 Arduino IDE 兼容性。

// 定义 CPU 引脚映射和默认设置。
// 注意:OEM 可以避免维护/更新 defaults.h 和 cpu_map.h 文件的需要,并且只使用
// 一个配置文件,方法是将其特定的默认值和引脚映射放在该文件的底部。
// 如果这样做,只需注释掉这两个定义并查看下面的说明。
#define DEFAULTS_GENERIC
#define CPU_MAP_ATMEGA328P // Arduino Uno CPU

// 串口波特率
// #define BAUD_RATE 230400
#define BAUD_RATE 115200

// 定义实时命令特殊字符。这些字符是直接从
// 串行读取数据流中“挑选出来”的,不会传递给 grbl 行执行解析器。选择
不存在且不得存在于流式 g 代码程序中的字符。
// 如果每个用户设置可用,则可以使用 ASCII 控制字符。此外,扩展的 ASCII 代码 (>127),从来
不在 // g 代码程序中,可能会被选择用于接口程序。
// 注意:如果更改,请手动更新 report.c 中的帮助消息。

#define CMD_RESET 0x18 // ctrl-x。
#define CMD_STATUS_REPORT ‘?’
#define CMD_CYCLE_START ‘~’
#define CMD_FEED_HOLD ‘!’

// 注意:所有覆盖实时命令必须在扩展的 ASCII 字符集中,从
字符值 128 (0x80) 开始到 255 (0xFF)。如果实时命令的正常集,
//例如状态报告、进给保持、复位和循环启动,被移动到扩展集
//空间,serial.c 的 RX ISR 将需要修改以适应变化。
// #define CMD_RESET 0x80 /​​/
#define CMD_STATUS_REPORT 0x81
// #define CMD_CYCLE_START 0x82
// #define CMD_FEED_HOLD 0x83
#define CMD_SAFETY_DOOR 0x84
#define CMD_JOG_CANCEL 0x85
#define CMD_DEBUG_REPORT 0x86 // 只有当调试报告启用时, ‘ 牙套。
#define CMD_FEED_OVR_RESET 0x90 // 将进给覆盖值恢复为 100%。
#define CMD_FEED_OVR_COARSE_PLUS 0x91
#define CMD_FEED_OVR_COARSE_MINUS 0x92
#define CMD_FEED_OVR_FINE_PLUS 0x93
#define CMD_FEED_OVR_FINE_MINUS 0x94
#define CMD_RAPID_OVR_RESET 0x95 // 将快速覆盖值恢复为 100%。
#define CMD_RAPID_OVR_MEDIUM 0x96
#define CMD_RAPID_OVR_LOW 0x97
// #define CMD_RAPID_OVR_EXTRA_LOW 0x98 //不支持
#define CMD_SPINDLE_OVR_RESET 0x99 // 将主轴覆盖值恢复为 100%。
#define CMD_SPINDLE_OVR_COARSE_PLUS 0x9A
#define CMD_SPINDLE_OVR_COARSE_MINUS 0x9B
#define CMD_SPINDLE_OVR_FINE_PLUS 0x9C
#define CMD_SPINDLE_OVR_FINE_MINUS 0x9D
#define CMD_SPINDLE_OVR_STOP 0x9E
#define CMD_COOLANT_FLOOD_OVR_TOGGLE 0xA0
#define CMD_COOLANT_MIST_OVR_TOGGLE 0xA1

// 如果启用归位,归位初始化锁定在上电时将 Grbl 设置为警报状态。这会强制
// 用户在执行任何其他操作之前执行归位循环(或覆盖锁定)。//这
主要是提醒用户回家的安全功能,因为 Grbl 不知道位置。
//#define HOMING_INIT_LOCK // 注释禁用

// 使用位掩码定义归位循环模式。归位循环首先执行搜索模式
// 以快速接合限位开关,然后是较慢的定位模式,并以短暂的
// 拉动动作结束以脱离限位开关。以下 HOMING_CYCLE_x 定义
按 // 从后缀 0 开始的顺序执行,并仅完成指定轴的归位例程。如果
//定义中省略了一个轴,它不会回家,系统也不会更新它的位置。
// 这意味着这允许使用非标准笛卡尔机器的用户,例如车床(x 然后 z,
// 没有 y),根据他们的需要配置归位循环行为。
// 注意:归位循环旨在允许共享限制引脚,如果轴不在同一个
// 循环中,但这需要在 cpu_map.h 文件中更改一些引脚设置。例如,默认归位
//循环可以与 X 或 Y 限制引脚共享 Z 限制引脚,因为它们处于不同的循环中。
// 通过共享一个引脚,可以释放宝贵的 IO 引脚用于其他目的。理论上,所有轴限制引脚
// 可以减少到一个引脚,如果所有轴都以单独的周期归位,反之亦然,所有三个轴
// 在单独的引脚上,但在一个周期内归位。另外,需要注意的是,硬限制的功能
//不会受到引脚共享的影响。
// 注意:为传统的 3 轴数控机床设置默认值。Z 轴首先清除,然后是 X 和 Y。
#define HOMING_CYCLE_0 (1<<Z_AXIS) // 要求:首先移动 Z 以清除工作区。
#define HOMING_CYCLE_1 ((1<<X_AXIS)|(1<<Y_AXIS)) // 可选:然后同时移动 X、Y。
// #define HOMING_CYCLE_2 // 可选:取消注释并添加轴掩码以启用

// 注意:以下是为 2 轴机器设置归位的两个示例。
// #define HOMING_CYCLE_0 ((1<<X_AXIS)|(1<<Y_AXIS)) // 与 COREXY 不兼容:在一个周期内同时归位 XY。

// #define HOMING_CYCLE_0 (1<<X_AXIS) // COREXY 兼容:第一个家 X
// #define HOMING_CYCLE_1 (1<<Y_AXIS) // COREXY 兼容:然后家 Y

// 在机器最初点动到限位开关后执行的归位循环数。
// 这有助于防止超调并提高可重复性。这个值应该是 1 或
// 更大。
#define N_HOMING_LOCATE_CYCLE 1 // 整数 (1-128)

//启用单轴归位命令。$HX、$HY 和 $HZ 用于 X、Y 和 Z 轴归位。完整的归位
// 循环仍由 $H 命令调用。默认情况下禁用。它仅用于解决
// 需要在两轴和三轴机器之间切换的用户。这实际上是非常罕见的。
// 如果你有两轴机器,不要使用这个。相反,只需更改两轴的归位周期。
// #define HOMING_SINGLE_AXIS_COMMANDS // 默认禁用。取消注释以启用。

// 归位后,Grbl 默认将整个机器空间设置为负空间,这是典型的
// 对于专业 CNC 机器,无论限位开关位于何处。取消注释此
//定义以强制 Grbl 始终将机器原点设置在归位位置,尽管切换方向。
#define HOMING_FORCE_SET_ORIGIN // 取消注释以启用。

// Grbl 在启动时执行的块数。这些块存储在 EEPROM 中,其中大小
// 和地址在 settings.h 中定义。使用当前设置,最多可以
// 存储和执行 2 个启动块。这些启动块通常用于
根据用户偏好设置 g 代码 // 解析器状态。
#define N_STARTUP_LINE 2 // 整数 (1-2)

// Grbl 为某些值类型打印的浮动小数点数。这些设置
// 由 CNC 机器中的现实和常见观察值确定。例如,位置
// 值不能小于 0.001 毫米或 0.0001 英寸,因为机器在物理上不能比
// 更精确。因此,可能不需要更改这些,但如果需要,可以在此处更改。
// 注意:必须是从 0 到 ~4 的整数值。超过 4 个可能会出现舍入误差。
#define N_DECIMAL_COORDVALUE_INCH 4 // 以英寸为单位的坐标或位置值
#define N_DECIMAL_COORDVALUE_MM 3 // 以毫米为单位的坐标或位置值
#define N_DECIMAL_RATEVALUE_INCH 1 // 以英寸/分钟为单位的速率或速度值
#define N_DECIMAL_RATEVALUE_MM 0 // 以毫米/分钟为单位的速率或速度值
#define N_DECIMAL_SETTINGVALUE 3 // 浮点设置值的小数
#define N_DECIMAL_RPMVALUE 0 // RPM 值以每分钟转数表示。

// 如果您的机器有两个平行连接到一个轴的限位开关,您将需要启用
// 此功能。由于这两个开关共享一个引脚,Grbl 无法判断
// 启用了哪个。此选项仅影响归位,如果使用限位,Grbl 将
// 发出警报并强制用户手动断开限位开关。否则,如果
每个轴都有一个 // 限位开关,请不要启用此选项。通过保持禁用状态,您可以
在限位开关上执行 // 归位循环,而不必将机器从其上移开。
// #define LIMITS_TWO_SWITCHES_ON_AXES

// 允许 GRBL 跟踪和报告 gcode 行号。启用这意味着计划缓冲区
// 从 16 增加到 15,以便为 plan_block_t 结构中的附加行号数据腾出空间
// #define USE_LINE_NUMBERS // 默认情况下禁用。取消注释以启用。

// 探测周期成功后,此选项通过自动生成的消息立即提供探测坐标的反馈。如果禁用,用户仍然可以
通过 Grbl ‘$#’ 打印参数访问最后一个探针 // 坐标。
#define MESSAGE_PROBE_COORDINATES // 默认启用。评论禁用。

// 通过 Arduino Uno 上的喷雾冷却剂 g 代码命令 M7 启用第二个冷却剂控制引脚
// 模拟引脚 4。仅当您需要第二个冷却剂控制引脚时才使用此选项。
// 注意:无论如何,模拟引脚 3 上的 M8 溢流冷却剂控制引脚仍将起作用。
// #define ENABLE_M7 // 默认禁用。取消注释以启用。

// 此选项使进给保持输入充当安全门开关。安全门在触发时
// 立即强制暂停进给,然后安全地使机器断电。恢复被阻止,直到
// 安全门重新接合。到时,Grbl 将重新启动机器,然后继续
//之前的刀具路径,就好像什么都没发生过一样。
// #define ENABLE_SAFETY_DOOR_INPUT_PIN // 默认禁用。取消注释以启用。

// 在安全门开关被切换和恢复后,此设置设置了开机延迟
// 在恢复主轴和冷却剂与恢复循环之间。
#define SAFETY_DOOR_SPINDLE_DELAY 4.0 // 浮动(秒)
#define SAFETY_DOOR_COOLANT_DELAY 1.0 // 浮动(秒)

// 启用 CoreXY 运动学。仅与 CoreXY 机器一起使用。
// 重要提示:如果启用归位,则必须将上面的归位循环#defines 重新配置为
// #define HOMING_CYCLE_0 (1<<X_AXIS) 和#define HOMING_CYCLE_1 (1<<Y_AXIS)
// 注意:此配置选项会改变运动X 和 Y 轴的操作原理
// 定义在 ( http://corexy.com/theory.html )。假设电机的定位和接线与
//描述的完全一致,否则,运动可能会朝奇怪的方向移动。Grbl 要求 CoreXY A 和 B 电机
//内部每毫米步数相同。
// #define COREXY // 默认禁用。取消注释以启用。

//根据掩码反转控制命令引脚的引脚逻辑。这实质上意味着您可以
在指定的引脚上使用 // 常闭开关,而不是默认的常开开关。
// 注意:顶部选项将屏蔽和反转所有控制引脚。底部选项是
// 仅反转两个控制引脚、安全门和复位的示例。有关其他位定义,请参见 cpu_map.h。
// #define INVERT_CONTROL_PIN_MASK CONTROL_MASK // 默认禁用。取消注释以禁用。
// #define INVERT_CONTROL_PIN_MASK ((1<<CONTROL_SAFETY_DOOR_BIT)|(1<<CONTROL_RESET_BIT)) // 默认禁用。

// 根据以下掩码反转选择限制引脚状态。这会影响所有限制引脚功能,
//例如硬限制和归位。但是,这与总体反转限制设置不同。
//此构建选项将仅反转此处定义的限制引脚,然后反转限制设置
//将应用于所有这些。当用户
在他们的机器上安装了一组混合的限位销时,这很有用 // 常开(NO)和常闭(NC)开关。
// 注意:请不要使用它,除非你有需要它的情况。
// #define INVERT_LIMIT_PIN_MASK ((1<<X_LIMIT_BIT)|(1<<Y_LIMIT_BIT)) // 默认禁用。取消注释以启用。

// 将主轴使能引脚从低电平禁用/高电平启用反转为低电平启用/高电平禁用。有用
// 对于一些预制的电子板。
// 注意:如果启用 VARIABLE_SPINDLE(默认),则此选项无效,因为 PWM 输出和
// 主轴启用组合到一个引脚。如果您需要此选项和主轴速度 PWM,
//取消注释下面的配置选项 USE_SPINDLE_DIR_AS_ENABLE_PIN。
// #define INVERT_SPINDLE_ENABLE_PIN // 默认禁用。取消注释以启用。

// 将选定的冷却剂针脚从低禁用/高启用反转为低启用/高禁用。有用
// 对于一些预制的电子板。
// #define INVERT_COOLANT_FLOOD_PIN // 默认禁用。取消注释以启用。
// #define INVERT_COOLANT_MIST_PIN // 默认禁用。注意:在 config.h 中启用 M7 喷雾冷却剂

// 当 Grbl 电源循环或使用 Arduino 重置按钮硬重置时,Grbl 默认启动时没有警报
。这是为了让新用户尽可能简单地开始使用 Grbl。当归位
// 启用并且用户安装了限位开关时,Grbl 将在警报状态下启动以指示
// Grbl 不知道其位置并在继续之前强制用户回家。此选项强制
// Grbl 始终初始化为 ALARM 状态,无论是否归位。此选项更适合
// 喜欢这种电源循环行为的 OEM 和 LinuxCNC 用户。
// #define FORCE_INITIALIZATION_ALARM // 默认禁用。取消注释以启用。

// 在上电或重置时,Grbl 将检查限位开关状态以确保它们
在初始化之前不处于活动状态。如果它检测到问题并且启用了硬限制设置,Grbl 将
// 简单地向用户发送消息以检查限制并进入警报状态,而不是闲置。Grbl
// 不会抛出警报消息。
#define CHECK_LIMITS_AT_INIT

// ———————————————- ————————————–
// 高级配置选项:

// 启用用于调试目的的代码。不用于一般用途,并且始终处于不断变化之中。
// #define DEBUG // 取消注释以启用。默认禁用。

// 配置快速、进给和主轴倍率设置。这些值定义了最大和最小
// 允许的覆盖值以及每个接收到的命令的粗略和精细增量。请
// 注意每个定义后的描述中的允许值。
#define DEFAULT_FEED_OVERRIDE 100 // 100%。不要更改此值。
#define MAX_FEED_RATE_OVERRIDE 200 // 编程进给率的百分比 (100-255)。通常为 120% 或 200%
#define MIN_FEED_RATE_OVERRIDE 10 // 编程进给率的百分比 (1-100)。通常为 50% 或 1%
#define FEED_OVERRIDE_COARSE_INCREMENT 10 // (1-99)。通常为 10%。
#define FEED_OVERRIDE_FINE_INCREMENT 1 // (1-99)。通常为 1%。

#define DEFAULT_RAPID_OVERRIDE 100 // 100%。不要更改此值。
#define RAPID_OVERRIDE_MEDIUM 50 // 快速百分比 (1-99)。通常为 50%。
#define RAPID_OVERRIDE_LOW 25 // 快速百分比 (1-99)。通常为 25%。
// #define RAPID_OVERRIDE_EXTRA_LOW 5 //不支持快速百分比 (1-99)。通常为 5%。

#define DEFAULT_SPINDLE_SPEED_OVERRIDE 100 // 100%。不要更改此值。
#define MAX_SPINDLE_SPEED_OVERRIDE 200 // 编程主轴速度的百分比 (100-255)。通常为 200%。
#define MIN_SPINDLE_SPEED_OVERRIDE 10 // 编程主轴速度的百分比 (1-100)。通常为 10%。
#define SPINDLE_OVERRIDE_COARSE_INCREMENT 10 // (1-99)。通常为 10%。
#define SPINDLE_OVERRIDE_FINE_INCREMENT 1 // (1-99)。通常为 1%。

// 当执行 M2 或 M30 程序结束命令时,大多数 g 代码状态将恢复为默认值。
// 此编译时选项包括将进给、快速和主轴速度覆盖值恢复为
程序结束时的默认值。
#define RESTORE_OVERRIDES_AFTER_PROGRAM_END // 默认启用。评论禁用。

// Grbl v1.1 的状态报告更改,之后还删除了禁用/启用大多数数据的能力
// 来自报告的字段。这给 GUI 开发人员带来了问题,他们不得不管理多个场景
// 和配置。新报告样式的提高效率允许所有数据字段
// 被发送而没有潜在的性能问题。
// 注意:下面的选项仅在特殊
情况需要时提供禁用某些数据字段的方法,但请注意 GUI 可能依赖于此数据。如果禁用,它可能不兼容。
#define REPORT_FIELD_BUFFER_STATE // 默认启用。评论禁用。
#define REPORT_FIELD_PIN_STATE // 默认启用。评论禁用。
#define REPORT_FIELD_CURRENT_FEED_SPEED // 默认启用。评论禁用。
#define REPORT_FIELD_WORK_COORD_OFFSET // 默认启用。评论禁用。
#define REPORT_FIELD_OVERRIDES // 默认启用。评论禁用。
#define REPORT_FIELD_LINE_NUMBERS // 默认启用。评论禁用。

// 一些状态报告数据对于实时来说不是必需的,只是间歇性的,因为值不
// 经常改变。
以下宏配置在刷新关联数据并将其包含在状态报告中之前需要调用多少次状态报告。但是,如果其中一个值
// 发生变化,Grbl 会自动将此数据包含在下一个状态报告中,而不管当时的
// 计数是多少。这有助于减少与高频报告
// 和主动流式传输相关的通信开销。还有一个繁忙和空闲的刷新计数,它设置 Grbl
在它不做任何重要的事情时更频繁地发送 // 刷新。有了好的 GUI,这些数据就不需要了
// 经常刷新,大约几秒钟。
// 注意:WCO 刷新必须为 2 或更大。OVR 刷新必须为 1 或更大。
#define REPORT_OVR_REFRESH_BUSY_COUNT 20 // (1-255)
#define REPORT_OVR_REFRESH_IDLE_COUNT 10 // (1-255) 必须小于或等于忙碌计数
#define REPORT_WCO_REFRESH_BUSY_COUNT 30 // (2-255)
#define REPORT_WCO_REFRESH_IDLE_COUNT 1 // (1-255) 2-255) 必须小于或等于忙计数

// 加速管理子系统的时间分辨率。较高的数字提供更平滑的
// 加速,在以非常高的进给率运行的机器上尤其明显,但可能会对
// 性能产生负面影响。此参数的正确值取决于机器,因此建议
// 仅根据需要将其设置得尽可能高。近似成功值的范围很广,从 50 到 200 或更多。
// 注意:更改此值还会更改步段缓冲区中某个段的执行时间。
// 当增加这个值时,这会在段缓冲区中存储更少的总时间,反之亦然。确保
// 增加/减少步段缓冲区以解决这些变化。
#define ACCELERATION_TICKS_PER_SECOND 100

// Adaptive Multi-Axis Step Smoothing (AMASS) is an advanced feature that does what its name implies,
// smoothing the stepping of multi-axis motions. This feature smooths motion particularly at low step
// frequencies below 10kHz, where the aliasing between axes of multi-axis motions can cause audible
// noise and shake your machine. At even lower step frequencies, AMASS adapts and provides even better
// step smoothing. See stepper.c for more details on the AMASS system works.
#define ADAPTIVE_MULTI_AXIS_STEP_SMOOTHING // Default enabled. Comment to disable.

// Sets the maximum step rate allowed to be written as a Grbl setting. This option enables an error
// check in the settings module to prevent settings values that will exceed this limitation. The maximum
// step rate is strictly limited by the CPU speed and will change if something other than an AVR running
// at 16MHz is used.
// NOTE: For now disabled, will enable if flash space permits.
// #define MAX_STEP_RATE_HZ 30000 // Hz

// By default, Grbl sets all input pins to normal-high operation with their internal pull-up resistors
// enabled. This simplifies the wiring for users by requiring only a switch connected to ground,
// although its recommended that users take the extra step of wiring in low-pass filter to reduce
// electrical noise detected by the pin. If the user inverts the pin in Grbl settings, this just flips
// which high or low reading indicates an active signal. In normal operation, this means the user
// needs to connect a normal-open switch, but if inverted, this means the user should connect a
// normal-closed switch.
// The following options disable the internal pull-up resistors, sets the pins to a normal-low
// operation, and switches must be now connect to Vcc instead of ground. This also flips the meaning

喜欢 (0)