开源改变世界

问题:轴只会以正点动移动,负点动不会移动 #489

推推 grbl 2年前 (2023-02-05) 281次浏览
关闭
3 个任务中的第 1 个
Erin-Rose 打开了这个问题 2022 年 6 月 13 日 · 17条评论
关闭
3 个任务中的第 1 个

问题:轴只会以正点动移动,负点动不会移动#489

Erin-Rose 打开了这个问题 2022 年 6 月 13 日 · 17条评论

评论

问题:轴只会以正点动移动,负点动不会移动 #489
艾琳-罗斯 评论了 2022 年 6 月 13 日  

控制板

MKS 小蜜蜂

董事会供应商的帮助

  • 是的
  • 不适用

机器描述

3040 CNC,带 3 个(已知使用旧控制板)TB6600 驱动器和 3 个 nema 23。
没有连接止动开关。
主轴未连接。

使能引脚在配置文件中共享和配置。

配置文件

board: MKS TinyBee V1.0_001
name: 3040CNC
meta: (01.02.2022) by Skorpi

kinematics:
  Cartesian:

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

axes:
  shared_stepper_disable_pin: I2SO.0
  x:
    # 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: 0
      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.1
        direction_pin: I2SO.2

  y:
    # 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
      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

  z:
    # 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
      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

#  a:
#    # E0
#    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: 1
#      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.35
#      hard_limits: false
#      pulloff_mm: 2.000
#      stepstick:
#        step_pin: I2SO.10
#        direction_pin: I2SO.11:low
#        disable_pin: I2SO.9

#  b:
#    # E1
#    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
#      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.2
#      hard_limits: false
#      pulloff_mm: 1.000
#      stepstick:
#        step_pin: I2SO.13
#        direction_pin: I2SO.14
#        disable_pin: I2SO.12

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: NO_PIN

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

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

coolant:
  flood_pin: NO_PIN
  mist_pin: NO_PIN
  delay_ms: 0

#probe:
#  pin: gpio.2
#  check_mode_start: true

Laser:
  pwm_hz: 5000
  # EXP1 BTN_ENC
  output_pin: gpio.13
  # FAN1
  enable_pin: I2SO.16
  disable_with_s0: false
  s0_with_disable: false
  tool_num: 0
  speed_map: 0=0.000% 0=12.500% 1700=100.000%
# 135=0mA 270=5mA 400=10mA 700=16mA
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

start:
  must_home: false

 # USB  TX0(1)  RX0(3)
 # J3-> TX2(17) RX2(16)
 # J1-> I2SO.23 I2SO.22
 # TH1(36)        TH2(34)        THB(39)
 # HE0(I2SO.17)   HE1(I2SO.18)   HBED(I2SO.16)
 # FAN1(I2SO.19)  FAN2(I2SO.20)
 #                   EXP1                                   EXP2
 #(BEEPER) I2SO.21 | 1  2 | 13 (BTN_ENC)    (SPI MISO) 19 | 1  2 | 18 (SPI SCK)
 #    (LCD_EN)  21 | 3  4 |  4 (LCD_RS)      (BTN_EN1) 14 | 3  4 |  5 (SPI CS)
 #    (LCD_D4)   0 | 5  6   16 (LCD_D5)      (BTN_EN2) 12 | 5  6   23 (SPI MOSI)
 #    (LCD_D6)  15 | 7  8 | 17 (LCD_D7)      (SPI_DET) 34 | 7  8 | RESET
 #             GND | 9 10 | 5V                        GND | 9 10 | 3.3V

启动消息

[MSG:INFO: FluidNC v3.4.3]
[MSG:INFO: Compiled with ESP32 SDK:v3.3.5-1-g85c43024c]
[MSG:INFO: Configuration file:MKS_TinyBee_1_XYZAB.yaml]
[MSG:INFO: Machine 3040CNC]
[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 cs_pin:gpio.5 detect:NO_PIN]
[MSG:INFO: Stepping:I2S_static Pulse:4us Dsbl Delay:0us Dir Delay:1us Idle Delay:0ms]
[MSG:INFO: Axis count 3]
[MSG:INFO: Shared stepper disable I2SO.0]
[MSG:INFO: Axis X (0.000,325.000)]
[MSG:INFO:   Motor0]
[MSG:INFO:     stepstick Step:I2SO.1 Dir:I2SO.2 Disable:NO_PIN]
[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:NO_PIN]
[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:NO_PIN]
[MSG:INFO:     Neg Limit gpio.22]
[MSG:INFO: Macro 0 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:PhaseSCADANetwork3R1N]
[MSG:INFO: Connecting.]
[MSG:INFO: Connecting..]
[MSG:INFO: Connected - IP is 192.168.1.189]
[MSG:INFO: WiFi on]
[MSG:INFO: Start mDNS with hostname:http://TinyBeanCNC.local/]
[MSG:INFO: SSDP Started]
[MSG:INFO: HTTP started on port 80]
[MSG:INFO: Telnet started on port 23]

用户界面软件

网页界面

发生了什么?

我为任何轴发送一个正点动命令($J=G91 X50 F1000),这有效并且轴移动正确。
我为任何轴发送负点动命令($J=G91 X-50 F1000),我在终端中恢复正常,并且虚拟坐标更新但电机不移动并且步进驱动器没有获得步进脉冲。

其他信息

<Idle|MPos:0.000,0.000,0.000|FS:0,0|Pn:YZ>
$J=G91 X50 F1000
ok
<Jog|MPos:29.794,0.000,0.000|FS:1000,0|Pn:YZ>
<Idle|MPos:49.997,0.000,0.000|FS:0,0|Pn:YZ|Ov:100,100,100>
<Idle|MPos:49.997,0.000,0.000|FS:0,0|Pn:YZ>
$J=G91 X-50 F1000
ok
<Jog|MPos:37.236,0.000,0.000|FS:1000,0|Pn:YZ>
<Idle|MPos:0.000,0.000,0.000|FS:0,0|Pn:YZ>
?
<Idle|MPos:0.000,0.000,0.000|FS:0,0|Pn:YZ>
问题:轴只会以正点动移动,负点动不会移动 #489
所有者

看起来您的限位开关始终处于活动状态。我们需要先弄清楚。

这里有一些有用的信息

https://github.com/bdring/FluidNC/wiki/Help-with-Switch-Problems

问题:轴只会以正点动移动,负点动不会移动 #489

我目前没有连接限制,在配置中禁用限制开关的正确方法是什么?
抱歉,如果它在 wiki 中,我已经看过但似乎无法找到它。

删除限制引脚定义似乎确实有效,但我不确定这是否是正确的做法?

问题:轴只会以正点动移动,负点动不会移动 #489

将 limit_pin: 值设置为 NO_PIN

问题:轴只会以正点动移动,负点动不会移动 #489
所有者

最简单的方法可能是暂时在开关连接器上连接一个跳线。这样你就可以准备稍后再去了。

问题:轴只会以正点动移动,负点动不会移动 #489
所有者

我看到你启用了软限制。您需要非常精明才能在没有开关和归位的情况下使用软限制。将这些更改为 false,直到您解决此问题。

问题:轴只会以正点动移动,负点动不会移动 #489
作者
艾琳-罗斯 评论了 2022 年 6 月 14 日  

谢谢,我已经在我所有的末端止动销上添加了跳线——它们现在似乎不再被触发
我也按照建议禁用了软限制,我当前的配置文件如下:

board: MKS TinyBee V1.0_001
name: 3040CNC
meta: (01.02.2022) by Skorpi

kinematics:
  Cartesian:

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

axes:
  shared_stepper_disable_pin: I2SO.0
  x:
    # 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: false
    homing:
      cycle: 0
      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.1
        direction_pin: I2SO.2

  y:
    # 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: false
    homing:
      cycle: 1
      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

  z:
    # 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: false
    homing:
      cycle: 0
      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

#  a:
#    # E0
#    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: 1
#      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.35
#      hard_limits: false
#      pulloff_mm: 2.000
#      stepstick:
#        step_pin: I2SO.10
#        direction_pin: I2SO.11:low
#        disable_pin: I2SO.9

#  b:
#    # E1
#    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
#      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.2
#      hard_limits: false
#      pulloff_mm: 1.000
#      stepstick:
#        step_pin: I2SO.13
#        direction_pin: I2SO.14
#        disable_pin: I2SO.12

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: NO_PIN

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

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

coolant:
  flood_pin: NO_PIN
  mist_pin: NO_PIN
  delay_ms: 0

#probe:
#  pin: gpio.2
#  check_mode_start: true

Laser:
  pwm_hz: 5000
  # EXP1 BTN_ENC
  output_pin: gpio.13
  # FAN1
  enable_pin: I2SO.16
  disable_with_s0: false
  s0_with_disable: false
  tool_num: 0
  speed_map: 0=0.000% 0=12.500% 1700=100.000%
# 135=0mA 270=5mA 400=10mA 700=16mA
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

start:
  must_home: false

 # USB  TX0(1)  RX0(3)
 # J3-> TX2(17) RX2(16)
 # J1-> I2SO.23 I2SO.22
 # TH1(36)        TH2(34)        THB(39)
 # HE0(I2SO.17)   HE1(I2SO.18)   HBED(I2SO.16)
 # FAN1(I2SO.19)  FAN2(I2SO.20)
 #                   EXP1                                   EXP2
 #(BEEPER) I2SO.21 | 1  2 | 13 (BTN_ENC)    (SPI MISO) 19 | 1  2 | 18 (SPI SCK)
 #    (LCD_EN)  21 | 3  4 |  4 (LCD_RS)      (BTN_EN1) 14 | 3  4 |  5 (SPI CS)
 #    (LCD_D4)   0 | 5  6   16 (LCD_D5)      (BTN_EN2) 12 | 5  6   23 (SPI MOSI)
 #    (LCD_D6)  15 | 7  8 | 17 (LCD_D7)      (SPI_DET) 34 | 7  8 | RESET
 #             GND | 9 10 | 5V                        GND | 9 10 | 3.3V
问题:轴只会以正点动移动,负点动不会移动 #489
所有者

跑步是固定的吗?

看来你最近的慢跑还不错。我认为您之前试图慢跑到 0 以下并触发了软限制。

<Idle|MPos:0.000,0.000,0.000|FS:0,0|Pn:YZ>
$J=G91 X50 F1000
ok
<Jog|MPos:29.794,0.000,0.000|FS:1000,0|Pn:YZ>
<Idle|MPos:49.997,0.000,0.000|FS:0,0|Pn:YZ|Ov:100,100,100>
<Idle|MPos:49.997,0.000,0.000|FS:0,0|Pn:YZ>
$J=G91 X-50 F1000
ok
<Jog|MPos:37.236,0.000,0.000|FS:1000,0|Pn:YZ>
<Idle|MPos:0.000,0.000,0.000|FS:0,0|Pn:YZ>
?
<Idle|MPos:0.000,0.000,0.000|FS:0,0|Pn:YZ>
问题:轴只会以正点动移动,负点动不会移动 #489

不,没有变化 :(
那些看起来有效的慢跑(从 x50 到 0)没有产生任何实际步数,即使终端中的虚拟坐标更新了,驱动程序也没有收到任何脉冲

问题:轴只会以正点动移动,负点动不会移动 #489
所有者

我认为你的引脚是错误的。我认为他们应该是 X

        step_pin: I2SO.1
        direction_pin: I2SO.2
        disable_pin: I2SO.0

请参阅此示例配置

https://github.com/bdring/FluidNC/blob/main/example_configs/MKS_TinyBee_1_XYZAB.yaml

以及此处的原理图。

https://github.com/makerbase-mks/MKS-TinyBee/blob/main/hardware/MKS%20TinyBee%20V1.0_001/MKS%20TinyBee%20V1.0_001%20SCH.pdf

问题:轴只会以正点动移动,负点动不会移动 #489

为了简单起见,我将所有禁用引脚连接到 i2so 0,我将尝试将其更改回默认值,即为每个电机指定禁用引脚,看看这是否会使 x 正常工作。

问题:轴只会以正点动移动,负点动不会移动 #489
所有者

专注于X轴即可,省去调试时间。

也将 idle_ms: 0 更改为 idle_ms: 255

这将使电机始终处于启用状态。然后尝试慢跑。如果电机不动,至少要看看它是否保持启用状态(锁定)。

问题:轴只会以正点动移动,负点动不会移动 #489

无论 idle_ms 是 0 还是 255,电机似乎都在不断启用?
在空闲毫秒为 255 时,我得到完全相同的向前慢跑而不是向后慢跑的行为(仔细检查我没有试图超过 0)

问题:轴只会以正点动移动,负点动不会移动 #489
所有者

能发一张接线照片吗?只要 X 就可以了。你有驱动程序手册的链接吗?

问题:轴只会以正点动移动,负点动不会移动 #489

当然,我只是将 x 轴与我的织机分开单独连接,这样更容易看到发生了什么。

问题:轴只会以正点动移动,负点动不会移动 #489
作者
艾琳-罗斯 评论了 2022 年 6 月 14 日  

在自己连接 x 轴之后,问题似乎已经消失了……
我完全不知道织机中的错误连接如何导致电机响应一个方向而不是另一个方向的步骤,而启用引脚似乎上班。

真的很抱歉因为我自己的接线错误而浪费您的时间,我只是不知道这可能是接线松动的故障模式!
我会增加这个月的赞助,因为您没有启用一次性捐赠,感谢您制作了如此出色的软件!!

我会为将来遇到同样问题的任何人提供我当前工作线路的照片: 无论如何未来:
问题:轴只会以正点动移动,负点动不会移动 #489

问题:轴只会以正点动移动,负点动不会移动 #489

问题:轴只会以正点动移动,负点动不会移动 #489
所有者

不用担心。

这对我们来说是一个非常陌生的设置。我们对 Tinybee 一无所知,那些 TB6600 模块给人们带来了麻烦。它们很便宜,我们认为它们错过了一些信号。有些人对他们没有问题。

无论如何,最好坚持使用标准布线设置。