Description
ModelBuilder.add_mjcf() does not import actuators using cranksite, slidersite, and cranklength. Such actuators are omitted even though Newton already stores a two-element actuator transmission target, exposes actuator_cranklength, and defines TrnType.SLIDERCRANK.
Expected behavior
Resolve both sites, store them in actuator_trnid, preserve the positive crank length and all ordinary actuator parameters, then export the actuator through MjSpec as mjTRN_SLIDERCRANK.
Validation
Use a minimal slider-crank mechanism and compare the compiled transmission type, crank length, actuator length, and actuator moment against native MuJoCo at a nonzero joint pose. Missing sites and nonpositive crank lengths should produce clear errors.
Description
ModelBuilder.add_mjcf()does not import actuators usingcranksite,slidersite, andcranklength. Such actuators are omitted even though Newton already stores a two-element actuator transmission target, exposesactuator_cranklength, and definesTrnType.SLIDERCRANK.Expected behavior
Resolve both sites, store them in
actuator_trnid, preserve the positive crank length and all ordinary actuator parameters, then export the actuator through MjSpec asmjTRN_SLIDERCRANK.Validation
Use a minimal slider-crank mechanism and compare the compiled transmission type, crank length, actuator length, and actuator moment against native MuJoCo at a nonzero joint pose. Missing sites and nonpositive crank lengths should produce clear errors.