开源改变世界!!

寻的问题 #627

推推 grbl 2年前 (2023-01-30) 81次浏览
关闭
Mboss32 开启了这个问题 2020 年 10 月 6 日 · 15条评论
关闭

寻的问题#627

Mboss32 开启了这个问题 2020 年 10 月 6 日 · 15条评论

注释

寻的问题 #627

大家好,

我在尝试使用 CNCjs 回家时遇到错误。发出“$H”命令的主主页按钮触发“错误:18”。单轴归位按钮 (G28.2) 命令触发“错误:20(不支持的命令)”。类似地,WebUI 中的 $H 将导致“错误:18”,但 $HX 等单轴变体将正常执行。

我看到 Homing cycle 设置已从 Config.h 文件中提取出来,但我似乎可以在 settings.h 或 settings.cpp 中找到它们,有什么建议吗?

您使用的是什么版本的固件?使用 2020 年 10 月 6 日的最新提交

问题是否可重复?是的

寻的问题 #627 Mboss32 添加了 漏洞 有些东西不工作标签 2020 年 10 月 6 日
寻的问题 #627
bDuthieDev 评论了 2020 年 10 月 6 日  

我自己遇到了同样的问题。这是我的修复:
$Homing/Cycle5=
$Homing/Cycle4=
$Homing/Cycle3=
$Homing/Cycle2=Y
$Homing/Cycle1=X
$Homing/Cycle0=Z

寻的问题 #627
作者

谢谢@bDuthieDev!你添加到什么文件?

寻的问题 #627

只需从控制台输入即可。使用 $S 查看所有当前设置。

寻的问题 #627
所有者

我们正在尽可能地慢慢移动运行时设置,以减少编译的需要。我们支持所有传统的 $$ 菜单数字设置和更新的文本基本设置样式。您可以通过发送 $S 查看所有新设置。

这是很多设置,但如果你可以过滤它。发送 $cycle 以查看其中包含单词 cycle 的任何设置。请小心避免使用 $X 等现有命令。

此外,要查找错误代码的说明,请发送 $E 以查看所有错误代码或发送 $E=18 以查看特定编号。

寻的问题 #627
所有者

您可以一次归位多个轴。传统归巢可能是。

$Homing/Cycle0=Z
$Homing/Cycle1=XY

有关设置的更多信息,请参见此处…

https://github.com/bdring/Grbl_Esp32/wiki/Settings

寻的问题 #627
作者

谢谢!有没有办法将这些添加到 defaults.h 设置中,以便它们在 RST 命令后重新加载?

寻的问题 #627
所有者

是的,

它们是位掩码。最易读的方法是这样的。

#define DEFAULT_HOMING_CYCLE_0 位(Z_AXIS)
#define DEFAULT_HOMING_CYCLE_0(位(X_AXIS)|位(Y_AXIS))

寻的问题 #627
作者

感谢巴特的建议!

不幸的是,我已经在我的机器文件和 defaults.h 中尝试了上述方法,但它不起作用。默认值不会在编译/上传或 RST 命令后加载。

我还尝试了 6_pack_stepstick_XYZ_v1.h 示例中的这种方法(在机器文件中很高兴)。

#ifdef HOMING_CYCLE_0
#undef HOMING_CYCLE_0
#endif
#define HOMING_CYCLE_0 位(Z_AXIS) // Z 在前

#ifdef HOMING_CYCLE_1
#undef HOMING_CYCLE_1
#endif
#define HOMING_CYCLE_1 (位(X_AXIS)|位(Y_AXIS))

这些方法似乎都不起作用,每次测试后设置仍然空白。

寻的问题 #627
所有者

您能否在此处粘贴完整的机器定义文件。我将在控制器上进行测试。

寻的问题 #627
作者
老板32 评论了 2020 年 10 月 7 日  

当然 – 它是 SPI_daisychain,只有几个模组。谢谢!

#define MACHINE_NAME "SPI_DAISY_4X_xyyz"

#ifdef N_AXIS
        #undef N_AXIS
#endif
#define N_AXIS 3 // can be 3 or 4. (if 3 install bypass jumper next to the A driver)

#define TRINAMIC_DAISY_CHAIN

#define TRINAMIC_RUN_MODE           TrinamicMode :: CoolStep
#define TRINAMIC_HOMING_MODE        TrinamicMode :: CoolStep

#ifdef HOMING_CYCLE_0
    #undef HOMING_CYCLE_0
#endif
#define HOMING_CYCLE_0 bit(Z_AXIS) // Z first

#ifdef HOMING_CYCLE_1
    #undef HOMING_CYCLE_1
#endif
#define HOMING_CYCLE_1 (bit(X_AXIS)|bit(Y_AXIS))

// Use SPI enable instead of the enable pin
// The hardware enable pin is tied to ground
#define USE_TRINAMIC_ENABLE

#define DEFAULT_HOMING_SQUARED_AXES 0

// Y motor connects to the 1st driver
#define X_TRINAMIC_DRIVER       2130        // Which Driver Type?
#define X_RSENSE                TMC2130_RSENSE_DEFAULT
#define X_STEP_PIN              GPIO_NUM_12
#define X_DIRECTION_PIN         GPIO_NUM_14
#define X_CS_PIN                GPIO_NUM_17  // Daisy Chain, all share same CS pin

// Y motor connects to the 2nd driver
#define Y_TRINAMIC_DRIVER       2130        // Which Driver Type?
#define Y_RSENSE                TMC2130_RSENSE_DEFAULT
#define Y_STEP_PIN              GPIO_NUM_27
#define Y_DIRECTION_PIN         GPIO_NUM_26
#define Y_CS_PIN                X_CS_PIN  // Daisy Chain, all share same CS pin

// Y2 motor connects to the 2nd driver
#define Y2_TRINAMIC_DRIVER       2130        // Which Driver Type?
#define Y2_RSENSE                TMC2130_RSENSE_DEFAULT
#define Y2_STEP_PIN              GPIO_NUM_15  // Z on schem
#define Y2_DIRECTION_PIN         GPIO_NUM_2   // Z on schem
#define Y2_CS_PIN                X_CS_PIN  // Daisy Chain, all share same CS pin

// Z Axis motor connects to the 4th driver
#define Z_TRINAMIC_DRIVER       2130        // Which Driver Type?
#define Z_RSENSE                TMC2130_RSENSE_DEFAULT
#define Z_STEP_PIN              GPIO_NUM_33 // A on schem
#define Z_DIRECTION_PIN         GPIO_NUM_32 // A on schem
#define Z_CS_PIN                X_CS_PIN  // Daisy Chain, all share same CS pin

// Mist is a 3.3V output
// Turn on with M7 and off with M9
#define COOLANT_MIST_PIN        GPIO_NUM_21

#define SPINDLE_TYPE            SpindleType::PWM
#define SPINDLE_OUTPUT_PIN         GPIO_NUM_25
#define SPINDLE_ENABLE_PIN      GPIO_NUM_4

// Relay operation
// Install Jumper near relay
// For spindle Use max RPM of 1
// For PWM remove jumper and set MAX RPM to something higher ($30 setting)
// Interlock jumper along top edge needs to be installed for both versions
#define DEFAULT_SPINDLE_RPM_MAX     12000 // Should be 1 for relay operation

#define PROBE_PIN               GPIO_NUM_22

#define X_LIMIT_PIN             GPIO_NUM_36
#define Y_LIMIT_PIN             GPIO_NUM_39
#define Z_LIMIT_PIN             GPIO_NUM_34 
寻的问题 #627
所有者

现在不在我的电脑上,但改变这个

#ifdef HOMING_CYCLE_0
    #undef HOMING_CYCLE_0
#endif
#define HOMING_CYCLE_0 bit(Z_AXIS) // Z first

#ifdef HOMING_CYCLE_1
    #undef HOMING_CYCLE_1
#endif
#define HOMING_CYCLE_1 (bit(X_AXIS)|bit(Y_AXIS))

对此

#define DEFAULT_HOMING_CYCLE_0 bit(Z_AXIS)
#define DEFAULT_HOMING_CYCLE_1 (bit(X_AXIS) | bit(Y_AXIS))
寻的问题 #627
作者

使用建议的编辑没有乐趣

#define DEFAULT_HOMING_CYCLE_0 位(Z_AXIS)
#define DEFAULT_HOMING_CYCLE_1(位(X_AXIS)|位(Y_AXIS))

它就像 $Homing/Cycle 设置变量没有从#defines 中分配,我一直在代码中寻找它,但还没有找到正确的部分。

寻的问题 #627
所有者

很抱歉,该功能是本周全新的,并且仍在 devt 分支中。我希望尽快将其与主分支合并,但您现在可以使用它来解决您的问题。

寻的问题 #627
所有者

与主要合并….关闭