开源改变世界

到达终点时崩溃 #526

推推 grbl 2年前 (2023-02-05) 214次浏览
关闭
3 个任务中的第 1 个
skorpi08 开了这个issue 2022 年 7 月 14 日 · 18条评论
关闭
3 个任务中的第 1 个

到达终点时崩溃#526

skorpi08 开了这个issue 2022 年 7 月 14 日 · 18条评论

评论

到达终点时崩溃 #526
贡献者
天蝎座08 评论了 2022 年 7 月 14 日  

控制板

MKS 小蜜蜂

董事会供应商的帮助

  • 是的
  • 不适用

机器描述

K40激光

配置文件

# MKS_TinyBee_1_XYZAB.yaml
board: MKS TinyBee V1.0_001
name: K40 Laser with Adapter
meta: (10.07.2022) by Skorpi
stepping:
  engine: I2S_STATIC
  idle_ms: 0
  pulse_us: 4
  dir_delay_us: 1
  disable_delay_us: 0
  segments: 12

axes:
  shared_stepper_disable_pin: NO_PIN
  shared_stepper_reset_pin: NO_PIN

  y:
    steps_per_mm: 157.750
    max_rate_mm_per_min: 12000.000
    acceleration_mm_per_sec2: 300.000
    max_travel_mm: 220.000
    soft_limits: true
    homing:
      cycle: 1
      allow_single_axis: true
      positive_direction: false
      mpos_mm: 0.000
      feed_mm_per_min: 300.000
      seek_mm_per_min: 5000.000
      settle_ms: 500
      seek_scaler: 1.100
      feed_scaler: 1.100

    motor0:
      limit_neg_pin: gpio.32
      hard_limits: false
      pulloff_mm: 2.000
      stepstick:
        step_pin: I2SO.4
        direction_pin: I2SO.5
        disable_pin: I2SO.3

  z:
    steps_per_mm: 157.750
    max_rate_mm_per_min: 12000.000
    acceleration_mm_per_sec2: 500.000
    max_travel_mm: 80.000
    soft_limits: true
    homing:
      cycle: 0
      allow_single_axis: true
      positive_direction: false
      mpos_mm: 0.000
      feed_mm_per_min: 300.000
      seek_mm_per_min: 1000.000
      settle_ms: 500
      seek_scaler: 1.100
      feed_scaler: 1.100

    motor0:
      limit_neg_pin: gpio.22
      hard_limits: false
      pulloff_mm: 1.000
      stepstick:
        step_pin: I2SO.7
        direction_pin: I2SO.8
        disable_pin: I2SO.6

  x:
    steps_per_mm: 157.750
    max_rate_mm_per_min: 18000.000
    acceleration_mm_per_sec2: 1500.000
    max_travel_mm: 325.000
    soft_limits: true
    homing:
      cycle: 2
      allow_single_axis: true
      positive_direction: false
      mpos_mm: 0.000
      feed_mm_per_min: 300.000
      seek_mm_per_min: 5000.000
      settle_ms: 500
      seek_scaler: 1.100
      feed_scaler: 1.100

    motor0:
      limit_neg_pin: gpio.33
      hard_limits: false
      pulloff_mm: 2.000
      stepstick:
        step_pin: I2SO.10
        direction_pin: I2SO.11:low
        disable_pin: I2SO.9

kinematics:
  Cartesian:

i2so:
  bck_pin: gpio.25
  data_pin: gpio.27
  ws_pin: gpio.26

spi:
  miso_pin: gpio.19
  mosi_pin: gpio.23
  sck_pin: gpio.18

sdcard:
  cs_pin: gpio.5
  card_detect_pin: gpio.39

control:
  safety_door_pin: NO_PIN
  reset_pin: NO_PIN
  feed_hold_pin: NO_PIN
  cycle_start_pin: NO_PIN
  macro0_pin: gpio.4:low:pu
  macro1_pin: NO_PIN
  macro2_pin: NO_PIN
  macro3_pin: NO_PIN

coolant:
  flood_pin: NO_PIN
  mist_pin: NO_PIN
  delay_ms: 0

probe:
  pin: NO_PIN
  check_mode_start: true

macros:
  startup_line0: 
  startup_line1: 
  macro0: $SD/Run=lasertest.gcode
  macro1: $SD/Run=home.gcode
  macro2: 
  macro3: 

start:
  must_home: false
  deactivate_parking: false
  check_limits: false

user_outputs:
  analog0_pin: NO_PIN
  analog1_pin: NO_PIN
  analog2_pin: NO_PIN
  analog3_pin: NO_PIN
  analog0_hz: 5000
  analog1_hz: 5000
  analog2_hz: 5000
  analog3_hz: 5000
  digital0_pin: NO_PIN
  digital1_pin: NO_PIN
  digital2_pin: NO_PIN
  digital3_pin: NO_PIN

arc_tolerance_mm: 0.002
junction_deviation_mm: 0.010
verbose_errors: false
report_inches: false
enable_parking_override_control: false
use_line_numbers: false
planner_blocks: 16

Laser:
  pwm_hz: 5000
  output_pin: gpio.13
  enable_pin: I2SO.16
  disable_with_s0: false
  s0_with_disable: true
  tool_num: 0
  speed_map: 0=0.000% 0=12.500% 1700=100.000%

启动消息

[MSG:INFO: Restarting]
[MSG:INFO: WiFi Disconnected]
ets Jun  8 2016 00:22:57

rst:0xc (SW_CPU_RESET),boot:0x1b (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0030,len:1184
load:0x40078000,len:12812
load:0x40080400,len:3032
entry 0x400805e4

[MSG:INFO: FluidNC v3.5.0]
[MSG:INFO: Compiled with ESP32 SDK:v4.4.1-1-gb8050b365e]
[MSG:INFO: Local filesystem type is SPIFFS]
[MSG:INFO: Configuration file:TinyBee_Adapter.yaml]
[MSG:INFO: Machine K40 Laser with Adapter]
[MSG:INFO: Board MKS TinyBee V1.0_001]
[MSG:INFO: I2SO BCK:gpio.25 WS:gpio.26 DATA:gpio.27]
[MSG:INFO: SPI SCK:gpio.18 MOSI:gpio.23 MISO:gpio.19]
[MSG:INFO: SD Card Detect gpio.39]
[MSG:INFO: SD Card cs_pin:gpio.5 detect:gpio.39]
[MSG:INFO: Stepping:I2S_static Pulse:4us Dsbl Delay:0us Dir Delay:1us Idle Delay:0ms]
[MSG:INFO: Axis count 3]
[MSG:INFO: Axis X (0.000,325.000)]
[MSG:INFO:   Motor0]
[MSG:INFO:     stepstick Step:I2SO.10 Dir:I2SO.11:low Disable:I2SO.9]
[MSG:INFO:     Neg Limit gpio.33]
[MSG:INFO: Axis Y (0.000,220.000)]
[MSG:INFO:   Motor0]
[MSG:INFO:     stepstick Step:I2SO.4 Dir:I2SO.5 Disable:I2SO.3]
[MSG:INFO:     Neg Limit gpio.32]
[MSG:INFO: Axis Z (0.000,80.000)]
[MSG:INFO:   Motor0]
[MSG:INFO:     stepstick Step:I2SO.7 Dir:I2SO.8 Disable:I2SO.6]
[MSG:INFO:     Neg Limit gpio.22]
[MSG:INFO: macro0_pin gpio.4:low:pu]
[MSG:INFO: Kinematic system: Cartesian]
[MSG:INFO: Laser Spindle Ena:I2SO.16 Out:gpio.13 Freq:5000Hz Res:13bits Laser mode:On]
[MSG:INFO: Using spindle Laser]
[MSG:INFO: Connecting to STA SSID:Router]
[MSG:INFO: Connecting.]
[MSG:INFO: Connected - IP is 192.168.168.168]
[MSG:INFO: WiFi on]
[MSG:INFO: Start mDNS with hostname:http://fluidnc.local/]
[MSG:INFO: SSDP Started]
[MSG:INFO: HTTP started on port 80]
[MSG:INFO: Telnet started on port 23]

Grbl 3.5 [FluidNC v3.5.0 (wifi) '$' for help]

用户界面软件

网页界面

发生了什么?

在归位到达 Endstop 后,它崩溃了:

Guru Meditation Error:Core 1 panic’ed(CPU1 上的中断 wdt 超时)。

Core 1 register dump:
PC : 0x40081908 PS : 0x00060935 A0 : 0x80081960 A1 : 0x3ffbf1bc
A2 : 0x3ffb62d8 A3 : 0x00000000 A4 : 0x00000001 A5 : 0x3ffb23a0
A6 : 0x00000000 A7 : 0x3ffb60b8 A8 : 0x80081908 A9 : 0x3ffbf19c
A10 : 0x00000004 A11 : 0x00000000 A12 : 0x3ffb23a0 A13 : 0x3ffb2380
A14 : 0x00000000 A15 : 0x3ffcd880 SAR : 0x00000001 EXCCAUSE: 0x00000006
EXCVADDR: 0x00000000 LBEG : 0x400858e1 LEND : 0x400858e9 LCOUNT : 0x00000027
Core 1 was running in ISR context:
EPC1 : 0x40123073 EPC2 : 0x00000000 EPC3 : 0x00000000 EPC4 : 0x00000000

回溯:0x40081905:0x3ffbf1bc |<-损坏

Core 0 register dump:
PC : 0x401ab782 PS : 0x00060b35 A0 : 0x80121c20 A1 : 0x3ffd30f0
A2 : 0x00000000 A3 : 0x80000001 A4 : 0x80091480 A5 : 0x3ffd9f00
A6 : 0x00000003 A7 : 0x00060023 A8 : 0x80121712 A9 : 0x3ffd30c0
A10 : 0x00000000 A11 : 0x80000001 A12 : 0x80091480 A13:0x3ffd9f00
A14:0x00000003 A15:0x00060023 SAR:0x00000014 EXCCAUSE:0x00000006
EXCVADDR:0x00000000 LBEG:0x00000000 LEND:0x000000000000000000000000

回溯:0x401ab77f:0x3ffd30f00x40121c1d:0x3ffd3110 0x4008f550:0x3ffd3130

ELF 文件 SHA256:0000000000000000

重新启动…
ets 2016 年 6 月 8 日 00:22:57

rst:0xc(SW_CPU_RESET),boot:0x1b(SPI_FAST_FLASH_BOOT)
configsip:0,SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
模式:DIO,时钟div 1
负载:0x3fff0030,len:1184
负载:0x40078000,len:12812
负载:0x40080400,len:3032
条目 0x400805e4

[MSG:INFO: FluidNC v3.5.0]
[MSG:INFO: Compiled with ESP32 SDK:v4.4.1-1-gb8050b365e]
[MSG:INFO: 本地文件系统类型为 SPIFFS]
[MSG:INFO: Configuration file:TinyBee_Adapter.yaml ]
[MSG:INFO: Machine K40 Laser with Adapter]
[MSG:INFO: Board MKS TinyBee V1.0_001]
[MSG:INFO: I2SO BCK:gpio.25 WS:gpio.26 DATA:gpio.27]
[MSG:INFO :SPI SCK:gpio.18 MOSI:gpio.23 MISO:gpio.19]
[MSG:INFO:SD卡检测gpio.39]
[MSG:INFO:SD卡cs_pin:gpio.5检测:gpio.39]
[MSG :INFO: Stepping:I2S_static Pulse:4us Dsbl Delay:0us Dir Delay:1us Idle Delay:0ms]
[MSG:INFO: Axis count 3]
[MSG:INFO: Axis X (0.000,325.000)]
[MSG:INFO: Motor0 ] ]
[MSG:INFO: stepstick Step:I2SO.10 Dir:I2SO.11:low Disable:I2SO.9]
[MSG:INFO: Neg Limit gpio.33]

这就是终端中显示的所有内容
**//编辑:

现在得到这个输出:
Guru Meditation Error: Core 1 panic’ed (Double exception)。

Core 1 register dump:
PC : 0x4008e31b PS : 0x00040e36 A0 : 0x00000000 A1 : 0x3ffbf12c
A2 : 0x00000021 A3 : 0x3ffbdd00 A4 : 0x00002180 A5 : 0x4008e0ec
A6 : 0x00000002 A7 : 0xffffff00 A8 : 0x4010d973 A9 : 0x3ffbf21c
A10 : 0x00060035 A11 : 0x00040025 A12 : 0x00000001 A13:0x3ffb2590
A14:0x00000001 A15:0x00000000 SAR:0x0000001f EXCCAUSE:0x00000002
EXCVADDR:0xffffffe0 LBEG:0x4008aebc LEND:0x4008aec7 LCOUNT 00×00:0

回溯:0x4008e318:0x3ffbf12c |<-损坏

Core 0 register dump:
PC : 0x401ab782 PS : 0x00060535 A0 : 0x80121c20 A1 : 0x3ffd30f0
A2 : 0x00000000 A3 : 0x4008a110 A4 : 0x00060520 A5 : 0x3ffd2760
A6 : 0x007bf288 A7 : 0x003fffff A8 : 0x80121712 A9 : 0x3ffd30c0
A10 : 0x00000000 A11 : 0x3ffbf284 A12 : 0x3ffbf284 A13:0x00000000
A14:0x00060520 A15:0x00000000 SAR:0x00000014 EXCCAUSE:0x00000006
EXCVADDR:0x00000000 LBEG:0x00000000 LEND:0x000000000000000000

回溯:0x401ab77f:0x3ffd30f00x40121c1d:0x3ffd3110 0x4008f550:0x3ffd3130

ELF 文件 SHA256:0000000000000000

重新启动…
ets 2016 年 6 月 8 日 00:22:57

rst:0xc(SW_CPU_RESET),boot:0x1b(SPI_FAST_FLASH_BOOT)
configsip:0,SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
模式:DIO,时钟div 1
负载:0x3fff0030,len:1184
负载:0x40078000,len:12812
负载:0x40080400,len:3032
条目 0x400805e4

[MSG:INFO: FluidNC v3.5.0]
[MSG:INFO: Compiled with ESP32 SDK:v4.4.1-1-gb8050b365e]
[MSG:INFO: Local filesystem type is SPIFFS]
[MSG:ERR: Skipping configuration file due to panic ]
[消息:信息:使用默认配置]
[消息:信息:轴:使用默认值]
[消息:信息:机器默认(测试驱动)]
[消息:信息:板无]
[消息:信息:SPI未定义]
[消息:信息:步进:RMT 脉冲:4us Dsbl 延迟:0us 方向延迟:0us 空闲延迟:255ms]
[消息:信息:轴计数 3]
[消息:信息:X 轴(-1000.000,0.000)]
[消息:信息: Y 轴 (-1000.000,0.000)]
[MSG:INFO: Axis Z (-1000.000,0.000)]
[MSG:INFO: 运动系统:笛卡尔]
[MSG:INFO: 使用主轴 NoSpindle]
[MSG:INFO: 连接到 STA SSID:Router]
[MSG:INFO: Connecting.]
[MSG:INFO: Connected – IP is 192.168.168.168]
[MSG:INFO: WiFi on]
[MSG:INFO: Start mDNS with hostname :http://fluidnc.local/%5D
[MSG:INFO: SSDP Started]
[MSG:INFO: HTTP started on port 80]
[MSG:INFO: Telnet started on port 23]

Grbl 3.5 [FluidNC v3.5.0 (wifi) ‘$’ 寻求帮助]
[MSG:INFO: ‘$H’|’$X’ 解锁]**

其他信息

测试固件:
3.4.4 ->ok
3.4.5 ->crash
3.4.9 ->crash
3.5.0-pre4 ->crash
3.5.0 ->crash

到达终点时崩溃 #526

我无法复制这个问题。我调整了您的配置以用于 MKS DLC32 v1.1 – 我拥有的最接近您的设置的板。为此,我必须更改 GPIO 和 I2SO 引脚分配。附上配置文件。然后我安装了 FluidNC v3.5.0,并在 WebUI 中单击了 Home X 按钮。然后我按下并释放连接到 X 限位销的开关,然后在缓慢接近阶段再次按下/释放。它完全按预期工作。我还尝试使用 FluidTerm 的 $HX 和 $message/level=debug 以便我可以观察归位阶段报告。同样,它工作正常。
issue526.yaml.txt
issue526.ss.txt
issue526.hx.txt

我还尝试将 X 归位开关设置为高电平有效 (NC)。有效。

到达终点时崩溃 #526

我猜可能会发生什么。崩溃回溯表明 Core 0 处于引脚中断处理程序中,崩溃是由看门狗超时引起的。如果中断处理程序连续触发,空闲任务没有时间喂看门狗,就会发生这种情况。限位引脚的活动状态 – 高 – 表明限位开关常闭,这意味着当开关处于非活动状态时,限位输入相对不受噪声影响。然后,当在归位期间达到极限时,开关打开,电路的阻抗高得多,因此更容易受到噪声的影响。如果限制电路在开关打开时接收到噪声,则限制中断可能会反复触发,从而使内核因中断而饱和。

检查这一点的一种方法是用一根非常短的电线上的开关替换 X 限制电路。通过手动操作开关测试归位。如果它在该测试中正常工作,则真正的限制电路可能会接收到噪声。

Tinybee 板在其限制输入端有 RC 滤波器,但原理图没有显示元件值,所以我无法判断这些滤波器的效果如何。即使我知道,这张票也没有告诉我们使用了哪些类型的限位开关,它们是如何接线的,可能存在什么样的干扰信号,如何布线可能干扰的线路,不同的电源是如何连接到接地或噪声过滤,问题发生时激光电源是否正在运行……

到达终点时崩溃 #526
贡献者作者

如本网站所示,它具有光学止动器。
http://donsthings.blogspot.com/2016/06/k40-optical-endstops.html?m=1
我可以稍后使用 DLC32 对其进行测试。

到达终点时崩溃 #526
贡献者
阿凡达120 评论了 2022 年 7 月 14 日  

我确认那些光学止动器在 ESP32 输入端产生大量噪声(不仅是在到达止动器时)
在为 ESP32 GRBL 和现在为 FluidNC 设计我自己的电路板之前,一开始我在使用标准屏蔽时遇到了一些困难没有配备 RC 滤波器(主要是误报)
在我的个人设计中,我集成了 RC 滤波器,我没有更多问题

到达终点时崩溃 #526

光学止动器可以由环境光触发。某些类型的照明以高频脉动,可能会导致快速触发。当断续器未就位时,您不会体验到这种效果,因为 LED 使光耦合器持续开启。当遮光器就位时,环境光会漏入并以脉动频率反复触发。
您可以通过在限位开关上放置某种盒子来以某种方式屏蔽限位开关。

到达终点时崩溃 #526
贡献者作者
天蝎座08 评论了 2022 年 7 月 16 日  

到达终点时崩溃 #526

到达终点时崩溃 #526

问题不在于终点站。
我也换了 endstop 和另一个 TinyBee Board,不要帮忙。
我已将 X 轴 limit_neg_pin: gpio.33 更改

limit_neg_pin: gpio.22
并且它有效。

在 Y 轴上,它与 limit_neg_pin 一起工作:gpio.32

正如我已经提到的,它可以在 3.4.4 中使用。

Tinybee 板在其限制输入端有 RC 滤波器,但原理图没有显示元件值,所以我无法判断这些滤波器的效果如何。
这是在 TinyBee 这是在 DLC32
到达终点时崩溃 #526

到达终点时崩溃 #526

到达终点时崩溃 #526

作为参考,这里是 Tinybee 原理图的摘录
到达终点时崩溃 #526

到达终点时崩溃 #526
贡献者作者
天蝎座08 评论了 2022 年 7 月 16 日  

用 DLC32 测试,没问题。

到达终点时崩溃 #526

板:MKS-DLC32 V2.1
名称:带适配器的 K40 激光
元:(10.07.2022) by Skorpi

运动学:
笛卡尔:

步进:
引擎:I2S_STATIC
idle_ms:0
pulse_us:4
dir_delay_us:1
disable_delay_us:0
轴:
shared_stepper_disable_pin:I2SO.0
direction_pin:I2SO.2

y:
steps_per_mm: 473.250
max_rate_mm_per_min: 12000.000
acceleration_mm_per_sec2: 300.000
max_travel_mm:
220.000 soft_limits: true
homing:
cycle: 2
allow_single_axis: true
positive_direction: false
mpos_mm: 0.000
feed_mm_per_min: 300.000
seek_mm_per_min: 5000.000
settle_ms: 500
seek_scaler: 1.100
feed_scaler: 1.100

motor0:
  limit_neg_pin: gpio.34
  hard_limits: false
  pulloff_mm: 2.000
  tmc_2209:
    addr: 1
    r_sense_ohms: 0.110
    run_amps: 1.500
    hold_amps: 0.800
    microsteps: 16
    stallguard: 0
    stallguard_debug: false
    toff_disable: 0
    toff_stealthchop: 5
    toff_coolstep: 3
    run_mode: CoolStep
    homing_mode: CoolStep
    use_enable: false
    step_pin: I2SO.5
    direction_pin: I2SO.6

x:
steps_per_mm: 473.250
max_rate_mm_per_min: 12000.000
acceleration_mm_per_sec2: 300.000
max_travel_mm: 320.000
soft_limits: true
homing:
cycle: 1
allow_single_axis: true
positive_direction: false
mpos_mm: 0.000
feed_mm_per_min: 300.000
seek_mm_per_min: 5000.000
settle_ms: 500
seek_scaler: 1.100
feed_scaler: 1.100

motor0:
  limit_neg_pin: gpio.22
  hard_limits: false
  pulloff_mm: 2.000
  tmc_2209:
    uart:
      txd_pin: gpio.0
      rxd_pin: gpio.4
      baud: 115200
      mode: 8N1
    addr: 2
    r_sense_ohms: 0.110
    run_amps: 1.500
    hold_amps: 0.800
    microsteps: 16
    stallguard: 0
    stallguard_debug: false
    toff_disable: 0
    toff_stealthchop: 5
    toff_coolstep: 3
    run_mode: CoolStep
    homing_mode: CoolStep
    use_enable: false
    step_pin: I2SO.3
    direction_pin: I2SO.4

i2so:
bck_pin: gpio.16
data_pin: gpio.21
ws_pin: gpio.17

spi:
miso_pin: gpio.12
mosi_pin: gpio.13
sck_pin: gpio.14

sdcard:
cs_pin: gpio.15
card_detect_pin: gpio.39

control:
safety_door_pin: NO_PIN
reset_pin: NO_PIN
feed_hold_pin: NO_PIN
cycle_start_pin: NO_PIN
macro0_pin: gpio.33:low:pu
macro1_pin: NO_PIN
macro2_pin: NO_PIN
macro3_pin: NO_PIN

macros:
startup_line0:
startup_line1:
macro0: $SD/Run=lasertest.gcode

喜欢 (0)