开源改变世界

问题:激光在不应该的时候保持打开状态 #569

推推 grbl 2年前 (2023-02-05) 179次浏览
关闭
3 个任务中的第 1 个
JHarding86 开启了这个问题 2022 年 8 月 17 日 · 18条评论
关闭
3 个任务中的第 1 个

问题:激光在不应该的时候保持打开状态#569

JHarding86 开启了这个问题 2022 年 8 月 17 日 · 18条评论

评论

问题:激光在不应该的时候保持打开状态 #569

控制板

4 轴 TMC2209 CNC 控制器

https://www.tindie.com/products/33366583/4-axis-tmc2209-cnc-controller/

董事会供应商的帮助

  • 是的
  • 不适用

机器描述

这是一种定制的 Co2 激光器。

单步进 x 轴 – StepperOnline
单步进 y 轴(双端 – 杆连接每一端)-> Amazon Link
单步进 z 轴 – StepperOnline

GPIO 用于控制排气扇、空气辅助和水泵的外部高压继电器。这是配置文件中的“冷却剂”gpio。

配置文件

name: "TMC2209 XYZ  Laser"
board: "FluidNC 4X 2209"
meta: 2022-08-09 B. Dring for James Harding 340638

stepping:
  engine: I2S_STATIC
  idle_ms: 255
  dir_delay_us: 1
  pulse_us: 4
  disable_delay_us: 0

axes:
  shared_stepper_disable_pin: NO_PIN
  
  x:
    steps_per_mm: 53.33
    max_rate_mm_per_min: 18000
    acceleration_mm_per_sec2: 600
    max_travel_mm: 750
    homing:
      cycle: 1
      mpos_mm: 0
      positive_direction: false
      seek_mm_per_min: 3000
      feed_mm_per_min: 240
    
    motor0:
      limit_neg_pin: gpio.36:high:pu
      limit_pos_pin: NO_PIN
      limit_all_pin: NO_PIN
      pulloff_mm: 5
      tmc_2209:
        uart:
          txd_pin: gpio.16
          rxd_pin: gpio.4
          rts_pin: NO_PIN
          cts_pin: NO_PIN
          baud: 115200
          mode: 8N1

        addr: 0
        r_sense_ohms: 0.110
        run_amps: 2.0
        hold_amps: 0.500
        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
        direction_pin: i2so.1
        step_pin: i2so.2
        disable_pin: i2so.0

  y:
    steps_per_mm: 53.33
    max_rate_mm_per_min: 18000
    acceleration_mm_per_sec2: 600
    max_travel_mm: 410
    homing:
      cycle: 1
      mpos_mm: 0
      positive_direction: false
      seek_mm_per_min: 3000
      feed_mm_per_min: 240

    motor0:
      limit_neg_pin: gpio.39:high:pu
      limit_pos_pin: NO_PIN
      limit_all_pin: NO_PIN
      pulloff_mm: 5
      tmc_2209:
        addr: 1
        r_sense_ohms: 0.110
        run_amps: 1.800
        hold_amps: 0.500
        microsteps: 16
        stallguard: 0
        stallguard_debug: false
        toff_disable: 0
        toff_stealthchop: 5
        toff_coolstep: 3
        run_mode: StealthChop
        homing_mode: StealthChop
        use_enable: false
        direction_pin: i2so.4
        step_pin: i2so.5
        disable_pin: i2so.7

  z:
    steps_per_mm: 400
    max_rate_mm_per_min: 200
    acceleration_mm_per_sec2: 25
    max_travel_mm: 200
    homing:
      cycle: 2
      mpos_mm: 0
      positive_direction: false
      seek_mm_per_min: 200
      feed_mm_per_min: 100
    
    motor0:
      limit_neg_pin: gpio.34:high:pu
      limit_pos_pin: NO_PIN
      limit_all_pin: NO_PIN
      pulloff_mm: 6
      tmc_2209:
        addr: 2
        r_sense_ohms: 0.110
        run_amps: 2.000
        hold_amps: 0.500
        microsteps: 16
        stallguard: 0
        stallguard_debug: false
        toff_disable: 0
        toff_stealthchop: 5
        toff_coolstep: 3
        run_mode: StealthChop
        homing_mode: StealthChop
        use_enable: false
        direction_pin: i2so.9
        step_pin: i2so.10
        disable_pin: i2so.8

spi:
  miso_pin: gpio.19
  mosi_pin: gpio.23
  sck_pin: gpio.18
  
i2so:
  bck_pin: gpio.22
  data_pin: gpio.21
  ws_pin: gpio.17

sdcard:
  cs_pin: gpio.5
  card_detect_pin: NO_PIN

coolant:
  flood_pin: gpio.25
  delay_ms: 1000

Laser:
  pwm_hz: 5000
  output_pin: gpio.26
  enable_pin: NO_PIN
  disable_with_s0: false
  s0_with_disable: true
  tool_num: 0
  speed_map: 0=5% 255=100.000%

启动消息

[MSG:INFO: FluidNC v3.4.4]
[MSG:INFO: Compiled with ESP32 SDK:v3.3.5-1-g85c43024c]
[MSG:INFO: Configuration file:4x_2209_laser.yaml]
[MSG:WARN: gpio.36 does not support :pu attribute]
[MSG:WARN: gpio.39 does not support :pu attribute]
[MSG:WARN: gpio.34 does not support :pu attribute]
[MSG:INFO: Machine TMC2209 XYZ  Laser]
[MSG:INFO: Board FluidNC 4X 2209]
[MSG:INFO: I2SO BCK:gpio.22 WS:gpio.17 DATA:gpio.21]
[MSG:INFO: SPI SCK:gpio.18 MOSI:gpio.23 MISO:gpio.19]
[MSG:INFO: SD Card cs_pin:gpio.5 detect:NO_PIN]
[MSG:INFO: Stepping:I2S_static Pulse:4us Dsbl Delay:0us Dir Delay:1us Idle Delay:255ms]
[MSG:INFO: Axis count 3]
[MSG:INFO: Axis X (0.000,750.000)]
[MSG:INFO:   Motor0]
[MSG:INFO: Trinamic Stepper Uart Tx:gpio.16 Rx:gpio.4 RTS:NO_PIN Baud:115200]
[MSG:INFO:     tmc_2209 Step:I2SO.2 Dir:I2SO.1 Disable:I2SO.0 Addr:0 R:0.110]
[MSG:INFO:     Neg Limit gpio.36]
[MSG:INFO: Axis Y (0.000,410.000)]
[MSG:INFO:   Motor0]
[MSG:INFO:     tmc_2209 Step:I2SO.5 Dir:I2SO.4 Disable:I2SO.7 Addr:1 R:0.110]
[MSG:INFO:     Neg Limit gpio.39]
[MSG:INFO: Axis Z (0.000,200.000)]
[MSG:INFO:   Motor0]
[MSG:INFO:     tmc_2209 Step:I2SO.10 Dir:I2SO.9 Disable:I2SO.8 Addr:2 R:0.110]
[MSG:INFO:     Neg Limit gpio.34]
[MSG:INFO: X Axis driver test passed]
[MSG:INFO: Y Axis driver test passed]
[MSG:INFO: Z Axis driver test passed]
[MSG:INFO: Kinematic system: Cartesian]
[MSG:INFO: Laser Spindle Ena:NO_PIN Out:gpio.26 Freq:5000Hz Res:13bits Laser mode:On]
[MSG:INFO: Using spindle Laser]
[MSG:INFO: Flood coolant gpio.25]
[MSG:INFO: WiFi is disabled]
Grbl 3.4 [FluidNC v3.4.4 (wifi) '$' for help]
[MSG:INFO: '$H'|'$X' to unlock]

用户界面软件

光刻

发生了什么?

看起来好像有时激光在应该关闭的时候没有关闭。

问题:激光在不应该的时候保持打开状态 #569

其他信息

没有反应

问题:激光在不应该的时候保持打开状态 #569

控制器和激光器之间的电路是什么?ESP32 是否有可能试图说“激光关闭”但信号未通过?

问题:激光在不应该的时候保持打开状态 #569

您是直接从 Lightburn 发送还是从 SD 卡运行?

问题:激光在不应该的时候保持打开状态 #569
作者

我在 3.5.1 上烧了至少 20 个不同的项目,但没有遇到这个问题。我不认为消息正在丢失,总是有机会丢失或干扰。

我正在使用 LightBurn 发送 Goode。SD 卡未安装,它在配置文件中以防万一我需要它(听起来我可能需要它)。

问题:激光在不应该的时候保持打开状态 #569

提醒我您在使用 3.5.1 时遇到了什么问题。这个问题会随着 wifi 关闭而消失吗?

问题:激光在不应该的时候保持打开状态 #569
作者

它从 I2S_STREAM 与 I2S_STATIC 开始。进行到加速度和速度设置。
问题:激光在不应该的时候保持打开状态 #569

我以为我已经通过我的一个设计解决了这个问题,所以我开始激光处理不同的设计,同样的问题开始浮出水面。到了这样的地步,我的加速度和速度值太低了,以至于我确定它们不可能是问题所在。3.5.1 通常表现得很奇怪,但我坚持了下来。然后我开始看到报告不一致,最终在最新版本上使用 3.4.4 的标签。

我尝试了 3.4.4,大多数一切似乎都很好,除了我必须有 $Wifi/Mode=Off 才能比几个 Gcode 命令更进一步。解决了这个问题,发现现在激光有时不会关闭,似乎是随机的,因为我已经完成了一些完全相同的 gcode 文件,并且这个问题突然出现在不同的位置。

问题:激光在不应该的时候保持打开状态 #569
作者

有趣的是,我只是改变了 LightBurn 所说的S Value Max。它设置为 1000,我将其更改为 255,因为 FluidNC 配置文件有一个“速度图”,我相信它是 FluidNC 激光模式下的激光功率。

感觉这可能是问题所在……我想我应该将其改回 1000,看看这个问题是否继续发生。

问题:激光在不应该的时候保持打开状态 #569
所有者

传统上,255 是 Grbl 使用的数字,但 ESP32 PWM 分辨率可以更高。

我已经使用 1000 个 LaserGrbl 没有问题。

问题:激光在不应该的时候保持打开状态 #569
作者

那么速度图究竟是如何工作的呢?我最多可以映射 1000 个值吗?

问题:激光在不应该的时候保持打开状态 #569
所有者
培养 评论了 2022 年 8 月 17 日  

它将一个值映射到一个百分比。百分比是主轴的满刻度。在你的情况下……

[MSG:INFO: Laser Spindle Ena:NO_PIN Out:gpio.26 Freq:5000Hz Res:13bits Laser mode:On]

…满刻度为 13 位,但它可以将任何值映射到该刻度。

问题:激光在不应该的时候保持打开状态 #569
所有者

映射任何小于 8,191 的东西都是在浪费 13 位的分辨率,但实际上激光真的可以以百分之一的分数进行不同的雕刻吗?

流式 gcode 中的额外数字可能更浪费。

问题:激光在不应该的时候保持打开状态 #569
作者

所以我将速度图设置为:
0=0% 1000=100%

当我以 7%(svalue = 70)发射激光时,它会打开激光。当我以 6%(svalue 60)发射激光时,它没有打开。

我的新速度图应该是什么?

问题:激光在不应该的时候保持打开状态 #569
所有者

我假设 PWM 是正确的,但你的激光器在打开之前有一个阈值。直流主轴可以以相同的方式工作。让它旋转需要一点力量。

您将不得不研究此 wiki 页面并进行调整,但这可能对您有用。

 speed_map: 0=0% 0=7% 1000=100%

基本上 0 到 1000 的 S 值将被线性化为 7% 到 100%

问题:激光在不应该的时候保持打开状态 #569

问题:激光在不应该的时候保持打开状态 #569
所有者

在 6% 时,您是否仍然看到控制器上的 LED 发出一点点光?

问题:激光在不应该的时候保持打开状态 #569
作者

是的,在 6% 时,输出模块上的 LED 仍然亮着。但是,激光不会在木头上留下痕迹。

问题:激光在不应该的时候保持打开状态 #569
所有者

这就是整个意图。0%-100% 并不总是与您得到的相符。

问题:激光在不应该的时候保持打开状态 #569
作者

对,那是速度图的要点吗?这就像针对您的特定设置的校准。

问题:激光在不应该的时候保持打开状态 #569
作者

现在工作。谢谢。