项目

一般

简介

任务支持 #2610 » config.yaml

孙乃宇, 2026-09-20 16:59

 
board: MKS DLC32 (Single Axis)
name: LO-TTA-03
stepping:
engine: I2S_STATIC
idle_ms: 255
pulse_us: 4
dir_delay_us: 0
disable_delay_us: 0
segments: 12

axes:
shared_stepper_disable_pin: i2so.0
shared_stepper_reset_pin: NO_PIN
x:
steps_per_mm: 3200
# ★ 900 mm/min = **15 mm/s = 15 转/s = 900 RPM**(导程 1mm ⇒ 1 rev/s = 1 mm/s)。
# —— 与平台侧「位置模式时的最大速度」maxValue = **15**(mm/s) 精确对齐(15 × 60 = 900)。
# 【上限依据】SERVO42C 手册**脉冲口上限 60 kHz** ÷ 3200 步/mm = 18.75 mm/s = 1125 mm/min
# ⇒ MStep=16 下的**物理天花板 = 1125 mm/min**(DLC32 的 I2S 上限 125 kHz 不是瓶颈;
# pulse_us:4 ⇒ 4µs高+4µs低=8µs=125kHz 自洽)。
# 本值 900 = 48 kHz ≈ **80%**,留 20% 余量。
# ★ **不要设 >1125**:DLC32 会真发 100+ kHz、42C 收不全 ⇒ 丢步 / 闭环下 err 飙 17.99。
# ★ 商家说的 2000 RPM = 33.3 mm/s 需 106.7 kHz,**超 60 kHz 近一倍 ⇒ 做不到**。
# 真要 2000 RPM 只能把 42C 的 MStep 16→4(⇒ 本文件 steps_per_mm 改 800)+ 重做空载 CAL。
# ★ 第二道门槛是**加速度**(见下一条):v_peak = √(Acc × 行程),
# Acc 平台上限 15 ⇒ **要真正跑到 15 mm/s 至少需要 15mm 行程**,短行程到不了。
# 沿革:60(=1mm/s,会把一切都钳到 1) → 600(=10mm/s) → 1000 → **900(本次)**。
max_rate_mm_per_min: 900.0
# ⚠ 这个值只是"上电初值",**永远不影响实际运动**:
# DLL 每次下发运动前都执行 $axes/X/acceleration_mm_per_sec2=<平台「加减速度」>,
# 覆盖它(FluidNCDeviceOperator.cpp:309-311)。
# ⇒ 想改加速度要改**平台侧**,且看该指令的 ishide:
# · ishide=0(如「相对定位运动(自定义参数)」)→ 改**指令面板里的「加减速度」输入框**
# · ishide=1(如「相对定位运动(默认参数)」/回零/预设)→ 改**全局参数区「加减速度」**
# 两处上限都是 15 mm/s²。改本文件 100% 无效。
acceleration_mm_per_sec2: 100.0
max_travel_mm: 1000.0
soft_limits: false
motor0:
stepstick:
step_pin: i2so.1
direction_pin: i2so.2
start:
must_home: false
check_limits: true
arc_tolerance_mm: 0.002
junction_deviation_mm: 0.01
verbose_errors: true
report_inches: false
use_line_numbers: false
planner_blocks: 16

i2so:
bck_pin: gpio.16
data_pin: gpio.21
ws_pin: gpio.17
(1-1/3)