评论
是否可以查看报警触发时实时报告中限位引脚显示的状态? <空闲|MPos:-102.550,-26.450,0.000|Bf:35,1024|FS:0,0| Pn:P > |
Pn: 始终与归零的轴相同。 |
我假设只有 388-389 行用于拉断失败,因为另一个检查是针对我没有启用的平方模式? |
您是否启用了硬限制?如果是这样,请尝试禁用 – 可能是限制中断在归位期间未按应有的方式禁用。仅供参考,我几天前更改了启用/禁用限制中断的代码,您使用的是最新版本吗? |
我终于找到了问题所在,当使用 RP2040 驱动程序时,硬限制始终处于启用状态,我已如下更改 limitsEnable 函数来解决。
|
谢谢,现在已修复 – 加上另一个在更改设置时影响硬限制的错误。 |
不确定您所做的更改是否真的能解决问题。 据我所知,在归位期间禁用硬限制中断的唯一方法是,当功能输入“on”时 on = on && settings.limits.flags.hard_enabled; 需要 on=on && !homing; |
如果限位开关和原位开关是分开的,该 |
好的,现在说得通了,阅读源代码时不是很明显,但现在已经在 HAL 结构文档中看到了。谢谢。 |
你好,我希望你能对此有所了解。
我在 Pico 板上遇到问题。归位序列发出警报 8。
归位过程的所有部分似乎都在工作,但并不是在一个完整的归位周期中一起工作。似乎有什么东西在触及极限和能够拉下开关之间设置了警报。
我认为这是某种配置问题,请参阅下面的驱动程序图。
以下是事件的顺序。
第一个序列是在归位开始时未按下限位开关
第二个序列在归位开始时按下限制
非常感谢,
西蒙
/*
my_machine_map.h – RP2040 ARM 处理器的驱动程序代码
*/
#if TRINAMIC_ENABLE
#error 不支持 Trinamic 插件!
#万一
#if N_ABC_MOTORS > 0
#error “不支持轴配置!”
#万一
//定义步进脉冲输出引脚。
#define STEP_PINS_BASE 6 // PIO 使用的 N_AXIS 连续引脚数
//定义步进方向输出引脚。
#define DIRECTION_PORT GPIO_OUTPUT
#define X_DIRECTION_PIN 10
#define Y_DIRECTION_PIN 11
#define Z_DIRECTION_PIN 12
#define DIRECTION_OUTMODE GPIO_MAP
// 定义步进驱动器启用/禁用输出引脚。
#define STEPPERS_ENABLE_PORT GPIO_OUTPUT
#define STEPPERS_ENABLE_PIN 14
#define STEPPERS_ENABLE_MASK STEPPERS_ENABLE_BIT
//定义归位/硬限位开关输入引脚。当前配置为共享 X 和 Z 限制引脚。
#define limit_port gpio_in
#define x_limit_pin 2
#define y_limit_pin 3
#define z_limit_pin 4
#define x_limit_bit(1 << x_limit_pin
)|Z_LIMIT_BIT) #define LIMIT_INMODE GPIO_MAP
//定义联动轴或A轴步进脉冲和步进方向输出引脚。
//#if N_ABC_MOTORS > 0
//#define M3_AVAILABLE
//#define M3_STEP_PIN 3
//#define M3_DIRECTION_PIN (Z_DIRECTION_PIN + 1)
//#define M3_LIMIT_PIN (Z_LIMIT_PIN + 1)
//#endif
//定义主轴使能和主轴方向输出引脚。
//#define SPINDLE_ENABLE_PORT GPIO_OUTPUT
//#define SPINDLE_ENABLE_PIN 16
//#define SPINDLE_DIRECTION_PORT GPIO_OUTPUT
//#define SPINDLE_DIRECTION_PIN 17
//定义主轴PWM输出引脚。
#define SPINDLE_PWM_PORT GPIO_OUTPUT
#define SPINDLE_PWM_PIN 22
#define SPINDLE_PWM_BIT (1<<SPINDLE_PWM_PIN)
//定义洪水和喷雾冷却剂启用输出引脚。
//#define COOLANT_FLOOD_PORT GPIO_OUTPUT
//#define COOLANT_FLOOD_PIN 26
//#define COOLANT_MIST_PORT GPIO_OUTPUT
//#define COOLANT_MIST_PIN 27
//#define COOLANT_OUTMODE GPIO_MAP
// 定义用户控制(循环启动、复位、进给保持)输入引脚。
#define RESET_PIN 18
#define FEED_HOLD_PIN 19
#define CYCLE_START_PIN 20
#if SAFETY_DOOR_ENABLE
#define SAFETY_DOOR_PIN 21
#endif
#define CONTROL_INMODE GPIO_MAP
//定义探头开关输入引脚。
#define PROBE_PIN 0
//#if KEYPAD_ENABLE
//#define KEYPAD_STROBE_PIN 1
//#endif