补齐默认 M5 全主轴 source-linked 覆盖

This commit is contained in:
cnc
2026-06-05 22:03:14 +08:00
parent 867bf09c5d
commit 09e2259669
2 changed files with 30 additions and 0 deletions

View File

@@ -224,6 +224,12 @@ INI_FILE_NAME="$multi_spindle_modes_file" CNC_SIM_RS274_VAR="$var_file" \
INI_FILE_NAME="$multi_spindle_modes_file" CNC_SIM_RS274_VAR="$var_file" \
"$build_dir/linuxcnc_rs274_source_dump" tests/gcode/linuxcnc_multi_spindle_all_direction.ngc \
>"$output_dir/cnc_sim_linuxcnc_source_multi_spindle_all_direction.json"
# Source basis: LinuxCNC src/emc/rs274ngc/rs274ngc_pre.cc init reads
# [TRAJ] SPINDLES from INI_FILE_NAME, and interp_convert.cc M5 without a $
# selector stops every configured spindle.
INI_FILE_NAME="$multi_spindle_modes_file" CNC_SIM_RS274_VAR="$var_file" \
"$build_dir/linuxcnc_rs274_source_dump" tests/gcode/linuxcnc_multi_spindle_default_stop.ngc \
>"$output_dir/cnc_sim_linuxcnc_source_multi_spindle_default_stop.json"
CNC_SIM_RS274_VAR="$var_file" \
"$build_dir/linuxcnc_rs274_source_dump" tests/gcode/linuxcnc_spindle_modes.ngc \
>"$output_dir/cnc_sim_linuxcnc_source_spindle_modes.json"
@@ -1861,6 +1867,22 @@ if multi_spindle_all_direction_states != expected_multi_spindle_all_direction_st
f"{multi_spindle_all_direction_states!r}"
)
multi_spindle_default_stop = json.loads((OUTPUT_DIR / "cnc_sim_linuxcnc_source_multi_spindle_default_stop.json").read_text())
multi_spindle_default_stop_states = [
(event["line"], event["tool"], event["spindle"], event["reserved"])
for event in multi_spindle_default_stop
if event["type"] == "set-spindle" and event["line"] == 6
]
expected_multi_spindle_default_stop_states = [
(6, 0, 0, 0),
(6, 1, 0, 0),
]
if multi_spindle_default_stop_states != expected_multi_spindle_default_stop_states:
raise SystemExit(
"unexpected source-linked default M5 all-spindles stop states: "
f"{multi_spindle_default_stop_states!r}"
)
spindle_modes = json.loads((OUTPUT_DIR / "cnc_sim_linuxcnc_source_spindle_modes.json").read_text())
spindle_mode_states = [
(event["line"], event["reserved"], event["feed"], event["tool"])
@@ -3789,6 +3811,7 @@ echo "dumped $output_dir/cnc_sim_linuxcnc_source_rtcp_controls.json"
echo "dumped $output_dir/cnc_sim_linuxcnc_source_spindle_direction.json"
echo "dumped $output_dir/cnc_sim_linuxcnc_source_multi_spindle_direction.json"
echo "dumped $output_dir/cnc_sim_linuxcnc_source_multi_spindle_all_direction.json"
echo "dumped $output_dir/cnc_sim_linuxcnc_source_multi_spindle_default_stop.json"
echo "dumped $output_dir/cnc_sim_linuxcnc_source_spindle_modes.json"
echo "dumped $output_dir/cnc_sim_linuxcnc_source_spindle_orient.json"
echo "dumped $output_dir/cnc_sim_linuxcnc_source_multi_spindle_orient.json"

View File

@@ -0,0 +1,7 @@
G21 G90 G17
(Source basis: LinuxCNC src/emc/rs274ngc/rs274ngc_pre.cc init reads [TRAJ] SPINDLES from INI_FILE_NAME.)
(Source basis: LinuxCNC src/emc/rs274ngc/interp_convert.cc M5 without $ stops all configured spindles.)
S1200 $-1
M3 $-1
M5
M30