继续完成 web-rtcp-5axis-sim-plan

结论:完成 LinuxCNC kinematics WASM ABI 覆盖,并将 web-rtcp-5axis-sim-plan 的 RTCP frame/boundary adapter 接到 xyzac-trt kinematics SDK;Node、build、browser smoke 验证通过。
This commit is contained in:
2026-06-21 16:44:29 +08:00
parent a6eda3fbff
commit 626bcfe8e3
101 changed files with 101586 additions and 770 deletions

View File

@@ -118,6 +118,9 @@ import {
createVirtualHalWasmBridgeSnapshot,
executeVirtualHalCommand,
executeVirtualHalcmd,
createLinuxCncKinematicsSdk,
linuxCncKinematicsWasmFile,
supportedLinuxCncKinematicsModules,
readVirtualHalPin,
stepVirtualHalMotion,
stepVirtualHalMotionController,
@@ -221,6 +224,27 @@ import {
LinuxCNC `inifile.cc` and exposes `getString()` plus `getBool()`. Boolean
conversion is performed by vendored LinuxCNC `iniFindBool()`.
`createLinuxCncKinematicsSdk()` wraps standalone kinematics WASM modules built
from vendored LinuxCNC `src/emc/kinematics` sources and exposes:
- `type()`
- `switchable()`
- `switchKinematics(switchkinsType)`
- `forward(joints, { seedPose })`
- `inverse(pose, jointCount, { seedJoints })`
- `runProbe()`
The current standalone kinematics WASM modules are `trivkins`, `5axiskins`,
`xyzac-trt`, `xyzbc-trt`, `corexy`, `rotate`, `rose`, `max`, `lineardelta`,
`rotarydelta`, `scorbot`, `tripod`, `scara`, `puma`, `genser`, `genhex`, and
`pentakins`. Use `supportedLinuxCncKinematicsModules()` to list supported
module IDs and `linuxCncKinematicsWasmFile(moduleId)` to resolve the generated
WASM filename. The optional seed buffers mirror LinuxCNC's in/out kinematics
function contracts for iterative algorithms such as generic serial and
hexapod/pentapod kinematics. The SDK only manages memory and calls the
exported C ABI; forward/inverse math remains in vendored LinuxCNC kinematics
source.
`createLinuxCncInterpSdk()` wraps the interpreter-core module built from
vendored LinuxCNC RS274NGC sources and exposes: