You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

1676 regels
52 KiB

  1. {
  2. "schema": "digital-workshop-training-project",
  3. "version": 1,
  4. "id": "458",
  5. "name": "005 液压泵应急切换(编排验证)",
  6. "status": "draft",
  7. "trainingMode": "virtual",
  8. "modeConfig": {
  9. "renderMode": "三维实时仿真",
  10. "interactionMode": "三维操作、动画引导与规则自动判定",
  11. "assistance": "演示、训练与模拟考试"
  12. },
  13. "resources": {
  14. "models": [],
  15. "animations": []
  16. },
  17. "task": {
  18. "id": "TR-FRONT-PUMP-RESCUE-001",
  19. "code": "BRIDGE-005-AUTHORING-PILOT",
  20. "title": "005 液压泵应急切换(编排验证)",
  21. "categoryId": "minor-repair",
  22. "category": "小修",
  23. "level": "标准",
  24. "duration": 10,
  25. "description": "前泵损坏的情况下如何操作。",
  26. "image": "/models/step-model-front-pump-thumb.png",
  27. "skills": [
  28. "液压泵故障识别",
  29. "取力器断开与联通",
  30. "球阀开启",
  31. "互救开关操作"
  32. ]
  33. },
  34. "scenario": {
  35. "id": "hydraulic-fault-scenario",
  36. "publishedSceneId": "457@551",
  37. "publishedSceneVersion": "7",
  38. "sceneResource": {
  39. "sceneId": "457@551",
  40. "sourceProjectId": "457",
  41. "sourceVersionId": "551",
  42. "version": "7",
  43. "sourceKind": "published",
  44. "status": "已发布",
  45. "publishedAt": "2026-09-17T14:33:41.000Z",
  46. "objectCount": 2,
  47. "snapshot": {
  48. "schema": "edit3dv4.scene",
  49. "version": "7",
  50. "presetId": "terrain-1",
  51. "name": "005 液压泵应急切换(编排验证)",
  52. "type": "outdoor",
  53. "rendering": {
  54. "schema": "edit3dv4.scene-rendering",
  55. "version": "1.0",
  56. "background": 11062241,
  57. "fog": {
  58. "color": 11062241,
  59. "near": 34,
  60. "far": 88
  61. },
  62. "toneMappingExposure": 1.05,
  63. "environment": {
  64. "type": "room",
  65. "sigma": 0.04
  66. },
  67. "camera": {
  68. "fov": 45,
  69. "near": 0.05,
  70. "far": 800,
  71. "position": [
  72. 7.138234886169582,
  73. 3.695554761077557,
  74. 7.955160424286649
  75. ],
  76. "target": [
  77. 2.220446049250313e-16,
  78. 0.9835682527980127,
  79. 0
  80. ]
  81. },
  82. "lights": {
  83. "hemisphere": {
  84. "skyColor": 15594743,
  85. "groundColor": 6910582,
  86. "intensity": 1.45
  87. },
  88. "directional": {
  89. "color": 16777215,
  90. "intensity": 2,
  91. "position": [
  92. 12,
  93. 18,
  94. 10
  95. ],
  96. "castShadow": true,
  97. "shadowMapSize": 2048,
  98. "shadowBounds": 82
  99. }
  100. }
  101. },
  102. "environment": {
  103. "schema": "edit3dv4.scene-environment",
  104. "version": "1.0",
  105. "presetId": "terrain-1",
  106. "type": "outdoor",
  107. "floorOnly": false,
  108. "useModelFloor": true
  109. },
  110. "objects": [
  111. {
  112. "sceneId": "front-pump-training-yard",
  113. "type": "imported",
  114. "name": "野外山地训练场",
  115. "deviceId": "front-pump-training-yard",
  116. "modelId": "front-pump-field-terrain",
  117. "semantic": "环境地形",
  118. "assetRole": "environment",
  119. "builtinAssetId": "front-pump-field-terrain",
  120. "modelEditorAssetId": "",
  121. "modelEditorModelId": "",
  122. "modelEditorRevision": 0,
  123. "modelOverrides": {},
  124. "materialPreset": null,
  125. "modelPartTargets": [],
  126. "partOverrides": {},
  127. "interactionId": "scene:front-pump-training-yard",
  128. "operable": false,
  129. "capabilities": [
  130. "select",
  131. "inspect"
  132. ],
  133. "sourceNodeName": "",
  134. "splitGroupId": "",
  135. "visible": true,
  136. "position": [
  137. -3.1597256741842212,
  138. 10.30528511389146,
  139. -40.10715876774236
  140. ],
  141. "rotation": [
  142. 0,
  143. 0,
  144. 0
  145. ],
  146. "scale": [
  147. 1.7159231079037875,
  148. 1.7159231079037875,
  149. 1.7159231079037875
  150. ],
  151. "assetKey": "",
  152. "resourceUrl": "/models/terrain-005-20260917.glb",
  153. "sourceName": "terrain-005-20260917.glb",
  154. "sizeBytes": 0,
  155. "mimeType": "model/gltf-binary",
  156. "enclosureMode": "",
  157. "assetCode": "PILOT-TERRAIN-005",
  158. "sourceAssetId": ""
  159. },
  160. {
  161. "sceneId": "front-pump-rescue-vehicle",
  162. "type": "imported",
  163. "name": "架桥车前泵互救操作整车模型",
  164. "deviceId": "front-pump-rescue-vehicle",
  165. "modelId": "front-pump-step-vehicle",
  166. "semantic": "实训装备",
  167. "assetRole": "equipment",
  168. "builtinAssetId": "front-pump-step-vehicle",
  169. "modelEditorAssetId": "bridge-erector-0916",
  170. "modelEditorModelId": "front-pump-step-vehicle",
  171. "modelEditorRevision": 2,
  172. "modelOverrides": {},
  173. "materialPreset": null,
  174. "modelPartTargets": [
  175. {
  176. "sceneId": "front-pump-hydraulic-pump",
  177. "interactionId": "front-pump-hydraulic-pump",
  178. "sourceInteractionId": "front-pump-hydraulic-pump",
  179. "editorId": "bridge-0916-node-92",
  180. "nodePath": "0/46/0",
  181. "sourceNodeName": "1_24柱塞泵3_05前泵3_08新泵",
  182. "name": "液压泵",
  183. "operable": true,
  184. "capabilities": [
  185. "select",
  186. "inspect"
  187. ],
  188. "visible": true,
  189. "sceneDeleted": false
  190. },
  191. {
  192. "sceneId": "front-pump-power-take-off",
  193. "interactionId": "front-pump-power-take-off",
  194. "sourceInteractionId": "front-pump-power-take-off",
  195. "editorId": "bridge-0916-node-80",
  196. "nodePath": "0/40/0",
  197. "sourceNodeName": "1_25取力器",
  198. "name": "取力器",
  199. "operable": true,
  200. "capabilities": [
  201. "select",
  202. "inspect"
  203. ],
  204. "visible": true,
  205. "sceneDeleted": false
  206. },
  207. {
  208. "sceneId": "front-pump-pto-switch",
  209. "interactionId": "front-pump-pto-switch",
  210. "sourceInteractionId": "front-pump-pto-switch",
  211. "editorId": "bridge-0916-node-82",
  212. "nodePath": "0/41/0",
  213. "sourceNodeName": "1_25和1_27和2_03和2_08取力器开关",
  214. "name": "取力器开关",
  215. "operable": true,
  216. "capabilities": [
  217. "select",
  218. "inspect",
  219. "mechanism"
  220. ],
  221. "visible": true,
  222. "sceneDeleted": false
  223. },
  224. {
  225. "sceneId": "front-pump-ball-valve-switch",
  226. "interactionId": "front-pump-ball-valve-switch",
  227. "sourceInteractionId": "front-pump-ball-valve-switch",
  228. "editorId": "bridge-0916-node-96",
  229. "nodePath": "0/48/0",
  230. "sourceNodeName": "1_26球阀开关",
  231. "name": "球阀开关",
  232. "operable": true,
  233. "capabilities": [
  234. "select",
  235. "inspect",
  236. "mechanism"
  237. ],
  238. "visible": true,
  239. "sceneDeleted": false
  240. },
  241. {
  242. "sceneId": "front-pump-aux-control-box",
  243. "interactionId": "front-pump-aux-control-box",
  244. "sourceInteractionId": "front-pump-aux-control-box",
  245. "editorId": "bridge-0916-node-84",
  246. "nodePath": "0/42/0",
  247. "sourceNodeName": "1_28辅助控制盒内",
  248. "name": "辅助控制盒",
  249. "operable": true,
  250. "capabilities": [
  251. "select",
  252. "inspect"
  253. ],
  254. "visible": true,
  255. "sceneDeleted": false
  256. },
  257. {
  258. "sceneId": "front-pump-aux-control-box-cover",
  259. "interactionId": "front-pump-aux-control-box-cover",
  260. "sourceInteractionId": "front-pump-aux-control-box-cover",
  261. "editorId": "bridge-0916-node-78",
  262. "nodePath": "0/39/0",
  263. "sourceNodeName": "1_28辅助控制盒盖",
  264. "name": "辅助控制盒盖",
  265. "operable": true,
  266. "capabilities": [
  267. "select",
  268. "inspect",
  269. "mechanism"
  270. ],
  271. "visible": true,
  272. "sceneDeleted": false
  273. },
  274. {
  275. "sceneId": "front-pump-rescue-switch",
  276. "interactionId": "front-pump-rescue-switch",
  277. "sourceInteractionId": "front-pump-rescue-switch",
  278. "editorId": "bridge-0916-node-86",
  279. "nodePath": "0/43/0",
  280. "sourceNodeName": "1_28和2_06互救开关",
  281. "name": "互救开关",
  282. "operable": true,
  283. "capabilities": [
  284. "select",
  285. "inspect",
  286. "mechanism"
  287. ],
  288. "visible": true,
  289. "sceneDeleted": false
  290. }
  291. ],
  292. "partOverrides": {
  293. "front-pump-hydraulic-pump": {
  294. "sceneId": "front-pump-hydraulic-pump",
  295. "interactionId": "front-pump-hydraulic-pump",
  296. "sourceInteractionId": "front-pump-hydraulic-pump",
  297. "editorId": "bridge-0916-node-92",
  298. "nodePath": "0/46/0",
  299. "sourceNodeName": "1_24柱塞泵3_05前泵3_08新泵",
  300. "name": "液压泵",
  301. "position": [
  302. 0,
  303. 0,
  304. 0
  305. ],
  306. "rotation": [
  307. 0,
  308. 0,
  309. 0
  310. ],
  311. "scale": [
  312. 0.01,
  313. 0.01,
  314. 0.01
  315. ],
  316. "visible": true,
  317. "sceneDeleted": false,
  318. "operable": true,
  319. "capabilities": [
  320. "select",
  321. "inspect"
  322. ]
  323. },
  324. "front-pump-power-take-off": {
  325. "sceneId": "front-pump-power-take-off",
  326. "interactionId": "front-pump-power-take-off",
  327. "sourceInteractionId": "front-pump-power-take-off",
  328. "editorId": "bridge-0916-node-80",
  329. "nodePath": "0/40/0",
  330. "sourceNodeName": "1_25取力器",
  331. "name": "取力器",
  332. "position": [
  333. 0,
  334. 0,
  335. 0
  336. ],
  337. "rotation": [
  338. 0,
  339. 0,
  340. 0
  341. ],
  342. "scale": [
  343. 0.01,
  344. 0.01,
  345. 0.01
  346. ],
  347. "visible": true,
  348. "sceneDeleted": false,
  349. "operable": true,
  350. "capabilities": [
  351. "select",
  352. "inspect"
  353. ]
  354. },
  355. "front-pump-pto-switch": {
  356. "sceneId": "front-pump-pto-switch",
  357. "interactionId": "front-pump-pto-switch",
  358. "sourceInteractionId": "front-pump-pto-switch",
  359. "editorId": "bridge-0916-node-82",
  360. "nodePath": "0/41/0",
  361. "sourceNodeName": "1_25和1_27和2_03和2_08取力器开关",
  362. "name": "取力器开关",
  363. "position": [
  364. 0,
  365. 0,
  366. 0
  367. ],
  368. "rotation": [
  369. 0,
  370. 0,
  371. 0
  372. ],
  373. "scale": [
  374. 0.01,
  375. 0.01,
  376. 0.01
  377. ],
  378. "visible": true,
  379. "sceneDeleted": false,
  380. "operable": true,
  381. "capabilities": [
  382. "select",
  383. "inspect",
  384. "mechanism"
  385. ]
  386. },
  387. "front-pump-ball-valve-switch": {
  388. "sceneId": "front-pump-ball-valve-switch",
  389. "interactionId": "front-pump-ball-valve-switch",
  390. "sourceInteractionId": "front-pump-ball-valve-switch",
  391. "editorId": "bridge-0916-node-96",
  392. "nodePath": "0/48/0",
  393. "sourceNodeName": "1_26球阀开关",
  394. "name": "球阀开关",
  395. "position": [
  396. 0,
  397. 0,
  398. 0
  399. ],
  400. "rotation": [
  401. 0,
  402. 0,
  403. 0
  404. ],
  405. "scale": [
  406. 0.01,
  407. 0.01,
  408. 0.01
  409. ],
  410. "visible": true,
  411. "sceneDeleted": false,
  412. "operable": true,
  413. "capabilities": [
  414. "select",
  415. "inspect",
  416. "mechanism"
  417. ]
  418. },
  419. "front-pump-aux-control-box": {
  420. "sceneId": "front-pump-aux-control-box",
  421. "interactionId": "front-pump-aux-control-box",
  422. "sourceInteractionId": "front-pump-aux-control-box",
  423. "editorId": "bridge-0916-node-84",
  424. "nodePath": "0/42/0",
  425. "sourceNodeName": "1_28辅助控制盒内",
  426. "name": "辅助控制盒",
  427. "position": [
  428. 0,
  429. 0,
  430. 0
  431. ],
  432. "rotation": [
  433. 0,
  434. 0,
  435. 0
  436. ],
  437. "scale": [
  438. 0.01,
  439. 0.01,
  440. 0.01
  441. ],
  442. "visible": true,
  443. "sceneDeleted": false,
  444. "operable": true,
  445. "capabilities": [
  446. "select",
  447. "inspect"
  448. ]
  449. },
  450. "front-pump-aux-control-box-cover": {
  451. "sceneId": "front-pump-aux-control-box-cover",
  452. "interactionId": "front-pump-aux-control-box-cover",
  453. "sourceInteractionId": "front-pump-aux-control-box-cover",
  454. "editorId": "bridge-0916-node-78",
  455. "nodePath": "0/39/0",
  456. "sourceNodeName": "1_28辅助控制盒盖",
  457. "name": "辅助控制盒盖",
  458. "position": [
  459. 0,
  460. 0,
  461. 0
  462. ],
  463. "rotation": [
  464. 0,
  465. 0,
  466. 0
  467. ],
  468. "scale": [
  469. 0.01,
  470. 0.01,
  471. 0.01
  472. ],
  473. "visible": true,
  474. "sceneDeleted": false,
  475. "operable": true,
  476. "capabilities": [
  477. "select",
  478. "inspect",
  479. "mechanism"
  480. ]
  481. },
  482. "front-pump-rescue-switch": {
  483. "sceneId": "front-pump-rescue-switch",
  484. "interactionId": "front-pump-rescue-switch",
  485. "sourceInteractionId": "front-pump-rescue-switch",
  486. "editorId": "bridge-0916-node-86",
  487. "nodePath": "0/43/0",
  488. "sourceNodeName": "1_28和2_06互救开关",
  489. "name": "互救开关",
  490. "position": [
  491. 0,
  492. 0,
  493. 0
  494. ],
  495. "rotation": [
  496. 0,
  497. 0,
  498. 0
  499. ],
  500. "scale": [
  501. 0.01,
  502. 0.01,
  503. 0.01
  504. ],
  505. "visible": true,
  506. "sceneDeleted": false,
  507. "operable": true,
  508. "capabilities": [
  509. "select",
  510. "inspect",
  511. "mechanism"
  512. ]
  513. }
  514. },
  515. "interactionId": "scene:front-pump-rescue-vehicle",
  516. "operable": false,
  517. "capabilities": [
  518. "select",
  519. "inspect"
  520. ],
  521. "sourceNodeName": "Group",
  522. "splitGroupId": "",
  523. "visible": true,
  524. "position": [
  525. 1.5698558846140135e-16,
  526. 0.00012730681329620186,
  527. 0.13180482636746585
  528. ],
  529. "rotation": [
  530. 3.0865583248298285e-17,
  531. -3.96331642134641e-33,
  532. -2.568113739801058e-16
  533. ],
  534. "scale": [
  535. 0.9715696607300419,
  536. 0.9715696607300419,
  537. 0.9715696607300419
  538. ],
  539. "assetKey": "",
  540. "resourceUrl": "/models/bridge-erector-20260916.glb",
  541. "sourceName": "0916架桥车.glb",
  542. "sizeBytes": 37160920,
  543. "mimeType": "model/gltf-binary",
  544. "enclosureMode": "",
  545. "assetCode": "PILOT-VEHICLE-0916",
  546. "sourceAssetId": ""
  547. }
  548. ]
  549. },
  550. "assetReferences": [
  551. {
  552. "assetKey": "",
  553. "resourceUrl": "/models/terrain-005-20260917.glb",
  554. "sourceName": "terrain-005-20260917.glb",
  555. "sizeBytes": 0,
  556. "mimeType": "model/gltf-binary",
  557. "assetRole": "environment",
  558. "builtinAssetId": "front-pump-field-terrain"
  559. },
  560. {
  561. "assetKey": "",
  562. "resourceUrl": "/models/bridge-erector-20260916.glb",
  563. "sourceName": "0916架桥车.glb",
  564. "sizeBytes": 37160920,
  565. "mimeType": "model/gltf-binary",
  566. "assetRole": "equipment",
  567. "builtinAssetId": "front-pump-step-vehicle"
  568. }
  569. ]
  570. },
  571. "baseVisualKey": "diagnostic-bay",
  572. "environmentName": "005 液压泵应急切换(编排验证)",
  573. "sceneLayout": "2 个场景对象 · 设备与物模型绑定已继承",
  574. "equipmentState": "压力不足 · 内泄待定位",
  575. "environment": {
  576. "type": "outdoor",
  577. "mode": "external",
  578. "sourceName": "005 液压泵应急切换(编排验证) · 场景发布包",
  579. "resourceUrl": "/models/terrain-005-20260917.glb",
  580. "assetKey": "",
  581. "mimeType": "model/gltf-binary",
  582. "sizeBytes": 0,
  583. "lastModified": 0,
  584. "embeddedDataUrl": ""
  585. },
  586. "accent": "#e98a2f",
  587. "background": 12178915,
  588. "fog": 12178915,
  589. "ground": 6450803,
  590. "camera": {
  591. "position": [
  592. 9.6,
  593. 6.2,
  594. 12.3
  595. ],
  596. "target": [
  597. -0.25,
  598. 2.45,
  599. 0
  600. ]
  601. },
  602. "retainStoredParts": false,
  603. "visibleParts": [
  604. "front-pump-hydraulic-pump",
  605. "front-pump-pto-switch",
  606. "front-pump-ball-valve-switch",
  607. "front-pump-aux-control-box-cover"
  608. ],
  609. "operableParts": [
  610. "front-pump-hydraulic-pump",
  611. "front-pump-pto-switch",
  612. "front-pump-ball-valve-switch",
  613. "front-pump-aux-control-box-cover"
  614. ],
  615. "sceneTags": [],
  616. "sensorFeeds": [
  617. {
  618. "id": "STATE",
  619. "label": "装备状态",
  620. "value": "就绪",
  621. "unit": "",
  622. "state": "ok"
  623. },
  624. {
  625. "id": "STEP",
  626. "label": "流程节点",
  627. "value": "1 / 8",
  628. "unit": "",
  629. "state": "ready"
  630. },
  631. {
  632. "id": "RULE",
  633. "label": "规则判定",
  634. "value": "等待操作",
  635. "unit": "",
  636. "state": "ready"
  637. }
  638. ]
  639. },
  640. "tools": [
  641. {
  642. "id": "pressure-gauge",
  643. "name": "数字压力表",
  644. "purpose": "卸压确认与压力复测",
  645. "thumbnailKey": "pressure-gauge",
  646. "modelKind": "pressure-gauge",
  647. "defaultScale": 1
  648. },
  649. {
  650. "id": "leak-detector",
  651. "name": "泄漏检测灯",
  652. "purpose": "油管与密封外泄检查",
  653. "thumbnailKey": "leak-detector",
  654. "modelKind": "leak-detector",
  655. "defaultScale": 1
  656. },
  657. {
  658. "id": "leakage-tester",
  659. "name": "内泄保压仪",
  660. "purpose": "压力衰减诊断",
  661. "thumbnailKey": "leakage-tester",
  662. "modelKind": "leakage-tester",
  663. "defaultScale": 1
  664. },
  665. {
  666. "id": "hose-wrench",
  667. "name": "油管扳手",
  668. "purpose": "接头拆装",
  669. "thumbnailKey": "hose-wrench",
  670. "modelKind": "hose-wrench",
  671. "defaultScale": 1
  672. },
  673. {
  674. "id": "pin-puller",
  675. "name": "液压拔销器",
  676. "purpose": "销轴同轴分离",
  677. "thumbnailKey": "pin-puller",
  678. "modelKind": "pin-puller",
  679. "defaultScale": 1
  680. },
  681. {
  682. "id": "lifting-sling",
  683. "name": "起吊带与平衡梁",
  684. "purpose": "液压缸总成吊运",
  685. "thumbnailKey": "lifting-sling",
  686. "modelKind": "lifting-sling",
  687. "defaultScale": 1
  688. },
  689. {
  690. "id": "seal-kit",
  691. "name": "密封拆装工具",
  692. "purpose": "密封组件更换",
  693. "thumbnailKey": "seal-kit",
  694. "modelKind": "seal-kit",
  695. "defaultScale": 1
  696. },
  697. {
  698. "id": "torque-wrench",
  699. "name": "数字扭矩扳手",
  700. "purpose": "规范力矩紧固",
  701. "thumbnailKey": "torque-wrench",
  702. "modelKind": "torque-wrench",
  703. "defaultScale": 1
  704. },
  705. {
  706. "id": "checklist-terminal",
  707. "name": "数字点检终端",
  708. "purpose": "路线签到与清单确认",
  709. "thumbnailKey": "checklist-terminal",
  710. "modelKind": "checklist-terminal",
  711. "defaultScale": 1
  712. },
  713. {
  714. "id": "feeler-gauge",
  715. "name": "间隙规",
  716. "purpose": "销轴配合间隙测量",
  717. "thumbnailKey": "feeler-gauge",
  718. "modelKind": "feeler-gauge",
  719. "defaultScale": 1
  720. },
  721. {
  722. "id": "lock-tool",
  723. "name": "锁止件拆装钳",
  724. "purpose": "解除与恢复锁止件",
  725. "thumbnailKey": "lock-tool",
  726. "modelKind": "lock-tool",
  727. "defaultScale": 1
  728. },
  729. {
  730. "id": "alignment-tool",
  731. "name": "同轴装配导向器",
  732. "purpose": "反向复装校准",
  733. "thumbnailKey": "alignment-tool",
  734. "modelKind": "alignment-tool",
  735. "defaultScale": 1
  736. }
  737. ],
  738. "faults": [],
  739. "steps": [
  740. {
  741. "id": "front-pump-step-01",
  742. "stepCode": "front-pump-step-01",
  743. "actionCode": "COMPLETE_FRONT-PUMP-STEP-01",
  744. "cameraPolicy": "exterior",
  745. "physicalEventRule": {},
  746. "allowedPositions": [],
  747. "number": 1,
  748. "title": "根据故障现象确定是哪一个液压泵发生故障",
  749. "summary": "根据故障现象确定是哪一个液压泵发生故障(注:模型_1液压泵标记出来。例如显红色)",
  750. "targetId": "front-pump-hydraulic-pump",
  751. "targetName": "液压泵",
  752. "targetRef": {
  753. "sceneId": "front-pump-rescue-vehicle",
  754. "sceneObjectId": "front-pump-rescue-vehicle",
  755. "interactionId": "front-pump-hydraulic-pump",
  756. "sourceInteractionId": "front-pump-hydraulic-pump",
  757. "editorId": "bridge-0916-node-92",
  758. "nodePath": "0/46/0",
  759. "sourceNodeName": "1_24柱塞泵3_05前泵3_08新泵",
  760. "capabilities": [
  761. "select",
  762. "inspect"
  763. ],
  764. "visible": true
  765. },
  766. "mode": "inspect",
  767. "interaction": "rule-check",
  768. "instruction": "根据故障现象确定是哪一个液压泵发生故障(注:模型_1液压泵标记出来。例如显红色)",
  769. "guidance": "根据故障现象确定是哪一个液压泵发生故障(注:模型_1液压泵标记出来。例如显红色)",
  770. "warning": "",
  771. "destination": "液压泵",
  772. "success": "根据故障现象确定是哪一个液压泵发生故障",
  773. "action": {
  774. "kind": "mechanism-operation",
  775. "targetId": "front-pump-hydraulic-pump",
  776. "mode": "inspect",
  777. "durationMs": 900,
  778. "tolerance": 0,
  779. "requiresPlacement": false,
  780. "cameraPolicy": "exterior",
  781. "mechanism": {
  782. "type": "identify",
  783. "axisSpace": "world",
  784. "highlightColor": "#e53935",
  785. "steps": [
  786. {
  787. "targetId": "front-pump-hydraulic-pump",
  788. "axis": [
  789. 0,
  790. 1,
  791. 0
  792. ],
  793. "toleranceDegrees": 6,
  794. "directionHint": "点击并确认发生故障的液压泵"
  795. }
  796. ]
  797. }
  798. },
  799. "toolId": "",
  800. "toolRequirements": [],
  801. "targetNodeId": "front-pump-hydraulic-pump",
  802. "targetNodeName": "1_24柱塞泵3_05前泵3_08新泵",
  803. "toolPlacement": {
  804. "placed": false,
  805. "position": [
  806. -3.2,
  807. 0.18,
  808. 1.8
  809. ],
  810. "rotation": [
  811. 0,
  812. 0,
  813. 0
  814. ],
  815. "scale": 1,
  816. "attachedTargetId": "",
  817. "pose": "tray"
  818. },
  819. "safetyRules": [
  820. {
  821. "id": "ppeConfirmed",
  822. "label": "个人防护用品齐全",
  823. "required": true
  824. },
  825. {
  826. "id": "routeAuthorized",
  827. "label": "作业路线已授权",
  828. "required": true
  829. }
  830. ],
  831. "audio": {
  832. "narrationSource": "offline",
  833. "offlineSource": "upload",
  834. "offlineMediaType": "video",
  835. "offlineFileName": "",
  836. "offlineAssetKey": "training-narration-4418",
  837. "offlineMimeType": "",
  838. "offlineSizeBytes": 0,
  839. "narrationText": "第1步,确定故障液压泵。根据故障现象确定发生故障的液压泵。",
  840. "narrationAssetCode": "PILOT-005-1-AUDIO",
  841. "narrationVideoAssetCode": "PILOT-005-1-VIDEO",
  842. "safetyAssetCode": "",
  843. "narrationUrl": "asset://training-narration-4418",
  844. "safetyText": "安全提示:请按规定顺序操作并远离危险区域。",
  845. "safetyUrl": "",
  846. "successCue": "ui",
  847. "errorCue": "collision-error",
  848. "digitalHuman": {
  849. "enabled": false,
  850. "mode": "video",
  851. "videoSource": "upload",
  852. "videoId": "",
  853. "appId": "",
  854. "videoUrl": "",
  855. "videoFileName": "",
  856. "folderId": "equipment-hydraulic-fault",
  857. "folderPath": "装备维修 / 液压系统 / 故障排查",
  858. "videoName": "",
  859. "avatarId": "",
  860. "avatarName": "",
  861. "backgroundImage": "",
  862. "backgroundName": "",
  863. "audioUrl": "",
  864. "audioName": "",
  865. "voiceId": "",
  866. "voiceName": "",
  867. "scriptText": "",
  868. "generatedVideoId": "",
  869. "generatedVideoUrl": "",
  870. "generatedAt": "",
  871. "generationStatus": "generated"
  872. }
  873. },
  874. "animationBinding": null,
  875. "faultIds": [],
  876. "assessment": {
  877. "weight": 20,
  878. "requiredDimensions": [
  879. "action",
  880. "sequence"
  881. ],
  882. "passPolicy": "all-required"
  883. }
  884. },
  885. {
  886. "id": "front-pump-step-02",
  887. "stepCode": "front-pump-step-02",
  888. "actionCode": "COMPLETE_FRONT-PUMP-STEP-02",
  889. "cameraPolicy": "exterior",
  890. "physicalEventRule": {},
  891. "allowedPositions": [],
  892. "number": 2,
  893. "title": "断开架桥车取力器",
  894. "summary": "断开架桥车取力器。(注:显示模型2取力器和2取力器开关,摇动模型2取力器开关。特别说明这个这边是早上随手补的不准确,车外看就行,不要拉近)",
  895. "targetId": "front-pump-pto-switch",
  896. "targetName": "取力器开关",
  897. "targetRef": {
  898. "sceneId": "front-pump-rescue-vehicle",
  899. "sceneObjectId": "front-pump-rescue-vehicle",
  900. "interactionId": "front-pump-pto-switch",
  901. "sourceInteractionId": "front-pump-pto-switch",
  902. "editorId": "bridge-0916-node-82",
  903. "nodePath": "0/41/0",
  904. "sourceNodeName": "1_25和1_27和2_03和2_08取力器开关",
  905. "capabilities": [
  906. "select",
  907. "inspect",
  908. "mechanism"
  909. ],
  910. "visible": true
  911. },
  912. "mode": "inspect",
  913. "interaction": "rule-check",
  914. "instruction": "断开架桥车取力器。(注:显示模型2取力器和2取力器开关,摇动模型2取力器开关。特别说明这个这边是早上随手补的不准确,车外看就行,不要拉近)",
  915. "guidance": "断开架桥车取力器。(注:显示模型2取力器和2取力器开关,摇动模型2取力器开关。特别说明这个这边是早上随手补的不准确,车外看就行,不要拉近)",
  916. "warning": "",
  917. "destination": "取力器开关",
  918. "success": "断开架桥车取力器",
  919. "action": {
  920. "kind": "mechanism-operation",
  921. "targetId": "front-pump-pto-switch",
  922. "mode": "inspect",
  923. "durationMs": 900,
  924. "tolerance": 0,
  925. "requiresPlacement": false,
  926. "cameraPolicy": "exterior",
  927. "mechanism": {
  928. "type": "rotate",
  929. "axisSpace": "world",
  930. "visualTargetIds": [
  931. "front-pump-power-take-off"
  932. ],
  933. "steps": [
  934. {
  935. "targetId": "front-pump-pto-switch",
  936. "axis": [
  937. 1,
  938. 0,
  939. 0
  940. ],
  941. "deltaDegrees": -30,
  942. "toleranceDegrees": 6,
  943. "directionHint": "向断开方向摇动"
  944. }
  945. ]
  946. }
  947. },
  948. "toolId": "",
  949. "toolRequirements": [],
  950. "targetNodeId": "front-pump-pto-switch",
  951. "targetNodeName": "1_25和1_27和2_03和2_08取力器开关",
  952. "toolPlacement": {
  953. "placed": false,
  954. "position": [
  955. -3.2,
  956. 0.18,
  957. 1.8
  958. ],
  959. "rotation": [
  960. 0,
  961. 0,
  962. 0
  963. ],
  964. "scale": 1,
  965. "attachedTargetId": "",
  966. "pose": "tray"
  967. },
  968. "safetyRules": [
  969. {
  970. "id": "ppeConfirmed",
  971. "label": "个人防护用品齐全",
  972. "required": true
  973. },
  974. {
  975. "id": "routeAuthorized",
  976. "label": "作业路线已授权",
  977. "required": true
  978. }
  979. ],
  980. "audio": {
  981. "narrationSource": "offline",
  982. "offlineSource": "upload",
  983. "offlineMediaType": "video",
  984. "offlineFileName": "",
  985. "offlineAssetKey": "training-narration-4420",
  986. "offlineMimeType": "",
  987. "offlineSizeBytes": 0,
  988. "narrationText": "第2步,断开架桥车取力器。将架桥车取力器断开。",
  989. "narrationAssetCode": "PILOT-005-2-AUDIO",
  990. "narrationVideoAssetCode": "PILOT-005-2-VIDEO",
  991. "safetyAssetCode": "",
  992. "narrationUrl": "asset://training-narration-4420",
  993. "safetyText": "安全提示:请确认压力归零并可靠支承后再进行拆卸。",
  994. "safetyUrl": "",
  995. "successCue": "ui",
  996. "errorCue": "collision-error",
  997. "digitalHuman": {
  998. "enabled": false,
  999. "mode": "video",
  1000. "videoSource": "upload",
  1001. "videoId": "",
  1002. "appId": "",
  1003. "videoUrl": "",
  1004. "videoFileName": "",
  1005. "folderId": "equipment-hydraulic-fault",
  1006. "folderPath": "装备维修 / 液压系统 / 故障排查",
  1007. "videoName": "",
  1008. "avatarId": "",
  1009. "avatarName": "",
  1010. "backgroundImage": "",
  1011. "backgroundName": "",
  1012. "audioUrl": "",
  1013. "audioName": "",
  1014. "voiceId": "",
  1015. "voiceName": "",
  1016. "scriptText": "",
  1017. "generatedVideoId": "",
  1018. "generatedVideoUrl": "",
  1019. "generatedAt": "",
  1020. "generationStatus": "generated"
  1021. }
  1022. },
  1023. "animationBinding": null,
  1024. "faultIds": [],
  1025. "assessment": {
  1026. "weight": 20,
  1027. "requiredDimensions": [
  1028. "action",
  1029. "sequence"
  1030. ],
  1031. "passPolicy": "all-required"
  1032. }
  1033. },
  1034. {
  1035. "id": "front-pump-step-03",
  1036. "stepCode": "front-pump-step-03",
  1037. "actionCode": "COMPLETE_FRONT-PUMP-STEP-03",
  1038. "cameraPolicy": "focus",
  1039. "physicalEventRule": {},
  1040. "allowedPositions": [],
  1041. "number": 3,
  1042. "title": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开",
  1043. "summary": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开。(注;把模型3球阀开关由垂直与官道方向旋转至平行于管道方向)",
  1044. "targetId": "front-pump-ball-valve-switch",
  1045. "targetName": "球阀开关",
  1046. "targetRef": {
  1047. "sceneId": "front-pump-rescue-vehicle",
  1048. "sceneObjectId": "front-pump-rescue-vehicle",
  1049. "interactionId": "front-pump-ball-valve-switch",
  1050. "sourceInteractionId": "front-pump-ball-valve-switch",
  1051. "editorId": "bridge-0916-node-96",
  1052. "nodePath": "0/48/0",
  1053. "sourceNodeName": "1_26球阀开关",
  1054. "capabilities": [
  1055. "select",
  1056. "inspect",
  1057. "mechanism"
  1058. ],
  1059. "visible": true
  1060. },
  1061. "mode": "inspect",
  1062. "interaction": "rule-check",
  1063. "instruction": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开。(注;把模型3球阀开关由垂直与官道方向旋转至平行于管道方向)",
  1064. "guidance": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开。(注;把模型3球阀开关由垂直与官道方向旋转至平行于管道方向)",
  1065. "warning": "",
  1066. "destination": "球阀开关",
  1067. "success": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开",
  1068. "action": {
  1069. "kind": "mechanism-operation",
  1070. "targetId": "front-pump-ball-valve-switch",
  1071. "mode": "inspect",
  1072. "durationMs": 900,
  1073. "tolerance": 0,
  1074. "requiresPlacement": false,
  1075. "cameraPolicy": "focus",
  1076. "mechanism": {
  1077. "type": "rotate",
  1078. "axisSpace": "world",
  1079. "steps": [
  1080. {
  1081. "targetId": "front-pump-ball-valve-switch",
  1082. "axis": [
  1083. 0,
  1084. 1,
  1085. 0
  1086. ],
  1087. "deltaDegrees": 90,
  1088. "toleranceDegrees": 8,
  1089. "directionHint": "由垂直与官道方向旋转至平行于管道方向"
  1090. }
  1091. ]
  1092. }
  1093. },
  1094. "toolId": "",
  1095. "toolRequirements": [],
  1096. "targetNodeId": "front-pump-ball-valve-switch",
  1097. "targetNodeName": "1_26球阀开关",
  1098. "toolPlacement": {
  1099. "placed": false,
  1100. "position": [
  1101. -3.2,
  1102. 0.18,
  1103. 1.8
  1104. ],
  1105. "rotation": [
  1106. 0,
  1107. 0,
  1108. 0
  1109. ],
  1110. "scale": 1,
  1111. "attachedTargetId": "",
  1112. "pose": "tray"
  1113. },
  1114. "safetyRules": [
  1115. {
  1116. "id": "ppeConfirmed",
  1117. "label": "个人防护用品齐全",
  1118. "required": true
  1119. },
  1120. {
  1121. "id": "routeAuthorized",
  1122. "label": "作业路线已授权",
  1123. "required": true
  1124. }
  1125. ],
  1126. "audio": {
  1127. "narrationSource": "offline",
  1128. "offlineSource": "upload",
  1129. "offlineMediaType": "video",
  1130. "offlineFileName": "",
  1131. "offlineAssetKey": "training-narration-4422",
  1132. "offlineMimeType": "",
  1133. "offlineSizeBytes": 0,
  1134. "narrationText": "第3步,打开互救球阀。打开备胎上方两个红色滤油器之间的连通球阀,手柄由垂直管道转为平行管道。",
  1135. "narrationAssetCode": "PILOT-005-3-AUDIO",
  1136. "narrationVideoAssetCode": "PILOT-005-3-VIDEO",
  1137. "safetyAssetCode": "",
  1138. "narrationUrl": "asset://training-narration-4422",
  1139. "safetyText": "安全提示:请按规定顺序操作并远离危险区域。",
  1140. "safetyUrl": "",
  1141. "successCue": "ui",
  1142. "errorCue": "collision-error",
  1143. "digitalHuman": {
  1144. "enabled": false,
  1145. "mode": "video",
  1146. "videoSource": "upload",
  1147. "videoId": "",
  1148. "appId": "",
  1149. "videoUrl": "",
  1150. "videoFileName": "",
  1151. "folderId": "equipment-hydraulic-fault",
  1152. "folderPath": "装备维修 / 液压系统 / 故障排查",
  1153. "videoName": "",
  1154. "avatarId": "",
  1155. "avatarName": "",
  1156. "backgroundImage": "",
  1157. "backgroundName": "",
  1158. "audioUrl": "",
  1159. "audioName": "",
  1160. "voiceId": "",
  1161. "voiceName": "",
  1162. "scriptText": "",
  1163. "generatedVideoId": "",
  1164. "generatedVideoUrl": "",
  1165. "generatedAt": "",
  1166. "generationStatus": "generated"
  1167. }
  1168. },
  1169. "animationBinding": null,
  1170. "faultIds": [],
  1171. "assessment": {
  1172. "weight": 20,
  1173. "requiredDimensions": [
  1174. "action",
  1175. "sequence"
  1176. ],
  1177. "passPolicy": "all-required"
  1178. }
  1179. },
  1180. {
  1181. "id": "front-pump-step-04",
  1182. "stepCode": "front-pump-step-04",
  1183. "actionCode": "COMPLETE_FRONT-PUMP-STEP-04",
  1184. "cameraPolicy": "exterior",
  1185. "physicalEventRule": {},
  1186. "allowedPositions": [],
  1187. "number": 4,
  1188. "title": "重新联通取力器",
  1189. "summary": "重新联通取力器(注:把步骤2的2取力器开关摇回去:还是不要拉近)",
  1190. "targetId": "front-pump-pto-switch",
  1191. "targetName": "取力器开关",
  1192. "targetRef": {
  1193. "sceneId": "front-pump-rescue-vehicle",
  1194. "sceneObjectId": "front-pump-rescue-vehicle",
  1195. "interactionId": "front-pump-pto-switch",
  1196. "sourceInteractionId": "front-pump-pto-switch",
  1197. "editorId": "bridge-0916-node-82",
  1198. "nodePath": "0/41/0",
  1199. "sourceNodeName": "1_25和1_27和2_03和2_08取力器开关",
  1200. "capabilities": [
  1201. "select",
  1202. "inspect",
  1203. "mechanism"
  1204. ],
  1205. "visible": true
  1206. },
  1207. "mode": "inspect",
  1208. "interaction": "rule-check",
  1209. "instruction": "重新联通取力器(注:把步骤2的2取力器开关摇回去:还是不要拉近)",
  1210. "guidance": "重新联通取力器(注:把步骤2的2取力器开关摇回去:还是不要拉近)",
  1211. "warning": "",
  1212. "destination": "取力器开关",
  1213. "success": "重新联通取力器",
  1214. "action": {
  1215. "kind": "mechanism-operation",
  1216. "targetId": "front-pump-pto-switch",
  1217. "mode": "inspect",
  1218. "durationMs": 900,
  1219. "tolerance": 0,
  1220. "requiresPlacement": false,
  1221. "cameraPolicy": "exterior",
  1222. "mechanism": {
  1223. "type": "rotate",
  1224. "axisSpace": "world",
  1225. "visualTargetIds": [
  1226. "front-pump-power-take-off"
  1227. ],
  1228. "steps": [
  1229. {
  1230. "targetId": "front-pump-pto-switch",
  1231. "axis": [
  1232. 1,
  1233. 0,
  1234. 0
  1235. ],
  1236. "deltaDegrees": 30,
  1237. "toleranceDegrees": 6,
  1238. "directionHint": "按步骤2的相反方向摇回去"
  1239. }
  1240. ]
  1241. }
  1242. },
  1243. "toolId": "",
  1244. "toolRequirements": [],
  1245. "targetNodeId": "front-pump-pto-switch",
  1246. "targetNodeName": "1_25和1_27和2_03和2_08取力器开关",
  1247. "toolPlacement": {
  1248. "placed": false,
  1249. "position": [
  1250. -3.2,
  1251. 0.18,
  1252. 1.8
  1253. ],
  1254. "rotation": [
  1255. 0,
  1256. 0,
  1257. 0
  1258. ],
  1259. "scale": 1,
  1260. "attachedTargetId": "",
  1261. "pose": "tray"
  1262. },
  1263. "safetyRules": [
  1264. {
  1265. "id": "ppeConfirmed",
  1266. "label": "个人防护用品齐全",
  1267. "required": true
  1268. },
  1269. {
  1270. "id": "routeAuthorized",
  1271. "label": "作业路线已授权",
  1272. "required": true
  1273. }
  1274. ],
  1275. "audio": {
  1276. "narrationSource": "offline",
  1277. "offlineSource": "upload",
  1278. "offlineMediaType": "video",
  1279. "offlineFileName": "",
  1280. "offlineAssetKey": "training-narration-4424",
  1281. "offlineMimeType": "",
  1282. "offlineSizeBytes": 0,
  1283. "narrationText": "第4步,重新接通取力器。将架桥车取力器重新接通。",
  1284. "narrationAssetCode": "PILOT-005-4-AUDIO",
  1285. "narrationVideoAssetCode": "PILOT-005-4-VIDEO",
  1286. "safetyAssetCode": "",
  1287. "narrationUrl": "asset://training-narration-4424",
  1288. "safetyText": "安全提示:请按规定顺序操作并远离危险区域。",
  1289. "safetyUrl": "",
  1290. "successCue": "ui",
  1291. "errorCue": "collision-error",
  1292. "digitalHuman": {
  1293. "enabled": false,
  1294. "mode": "video",
  1295. "videoSource": "upload",
  1296. "videoId": "",
  1297. "appId": "",
  1298. "videoUrl": "",
  1299. "videoFileName": "",
  1300. "folderId": "equipment-hydraulic-fault",
  1301. "folderPath": "装备维修 / 液压系统 / 故障排查",
  1302. "videoName": "",
  1303. "avatarId": "",
  1304. "avatarName": "",
  1305. "backgroundImage": "",
  1306. "backgroundName": "",
  1307. "audioUrl": "",
  1308. "audioName": "",
  1309. "voiceId": "",
  1310. "voiceName": "",
  1311. "scriptText": "",
  1312. "generatedVideoId": "",
  1313. "generatedVideoUrl": "",
  1314. "generatedAt": "",
  1315. "generationStatus": "generated"
  1316. }
  1317. },
  1318. "animationBinding": null,
  1319. "faultIds": [],
  1320. "assessment": {
  1321. "weight": 20,
  1322. "requiredDimensions": [
  1323. "action",
  1324. "sequence"
  1325. ],
  1326. "passPolicy": "all-required"
  1327. }
  1328. },
  1329. {
  1330. "id": "front-pump-step-05",
  1331. "stepCode": "front-pump-step-05",
  1332. "actionCode": "COMPLETE_FRONT-PUMP-STEP-05",
  1333. "cameraPolicy": "focus",
  1334. "physicalEventRule": {},
  1335. "allowedPositions": [],
  1336. "number": 5,
  1337. "title": "打开辅助控制盒内的“互救”开关",
  1338. "summary": "打开辅助控制盒内的“互救”开关(注:打开5辅助控制盒盖在5辅助控制盒面板上,把5互救开关往上搬)",
  1339. "targetId": "front-pump-aux-control-box-cover",
  1340. "targetName": "辅助控制盒盖",
  1341. "targetRef": {
  1342. "sceneId": "front-pump-rescue-vehicle",
  1343. "sceneObjectId": "front-pump-rescue-vehicle",
  1344. "interactionId": "front-pump-aux-control-box-cover",
  1345. "sourceInteractionId": "front-pump-aux-control-box-cover",
  1346. "editorId": "bridge-0916-node-78",
  1347. "nodePath": "0/39/0",
  1348. "sourceNodeName": "1_28辅助控制盒盖",
  1349. "capabilities": [
  1350. "select",
  1351. "inspect",
  1352. "mechanism"
  1353. ],
  1354. "visible": true
  1355. },
  1356. "mode": "inspect",
  1357. "interaction": "rule-check",
  1358. "instruction": "打开辅助控制盒内的“互救”开关(注:打开5辅助控制盒盖在5辅助控制盒面板上,把5互救开关往上搬)",
  1359. "guidance": "打开辅助控制盒内的“互救”开关(注:打开5辅助控制盒盖在5辅助控制盒面板上,把5互救开关往上搬)",
  1360. "warning": "",
  1361. "destination": "辅助控制盒盖",
  1362. "success": "打开辅助控制盒内的“互救”开关",
  1363. "action": {
  1364. "kind": "mechanism-operation",
  1365. "targetId": "front-pump-aux-control-box-cover",
  1366. "mode": "inspect",
  1367. "durationMs": 1600,
  1368. "tolerance": 0,
  1369. "requiresPlacement": false,
  1370. "cameraPolicy": "focus",
  1371. "mechanism": {
  1372. "type": "sequence",
  1373. "axisSpace": "world",
  1374. "visualTargetIds": [
  1375. "front-pump-aux-control-box"
  1376. ],
  1377. "steps": [
  1378. {
  1379. "targetId": "front-pump-aux-control-box-cover",
  1380. "axis": [
  1381. 0,
  1382. 1,
  1383. 0
  1384. ],
  1385. "deltaDegrees": 100,
  1386. "toleranceDegrees": 8,
  1387. "directionHint": "沿控制盒盖边缘铰链打开",
  1388. "pivotEdge": {
  1389. "space": "world",
  1390. "axis": [
  1391. 0,
  1392. 1,
  1393. 0
  1394. ],
  1395. "edge": "nearest-vertical-edge"
  1396. }
  1397. },
  1398. {
  1399. "targetId": "front-pump-rescue-switch",
  1400. "axis": [
  1401. 0,
  1402. 0,
  1403. 1
  1404. ],
  1405. "deltaDegrees": 30,
  1406. "toleranceDegrees": 6,
  1407. "directionHint": "往上搬"
  1408. }
  1409. ]
  1410. }
  1411. },
  1412. "toolId": "",
  1413. "toolRequirements": [],
  1414. "targetNodeId": "front-pump-aux-control-box-cover",
  1415. "targetNodeName": "1_28辅助控制盒盖",
  1416. "toolPlacement": {
  1417. "placed": false,
  1418. "position": [
  1419. -3.2,
  1420. 0.18,
  1421. 1.8
  1422. ],
  1423. "rotation": [
  1424. 0,
  1425. 0,
  1426. 0
  1427. ],
  1428. "scale": 1,
  1429. "attachedTargetId": "",
  1430. "pose": "tray"
  1431. },
  1432. "safetyRules": [
  1433. {
  1434. "id": "ppeConfirmed",
  1435. "label": "个人防护用品齐全",
  1436. "required": true
  1437. },
  1438. {
  1439. "id": "routeAuthorized",
  1440. "label": "作业路线已授权",
  1441. "required": true
  1442. }
  1443. ],
  1444. "audio": {
  1445. "narrationSource": "offline",
  1446. "offlineSource": "upload",
  1447. "offlineMediaType": "video",
  1448. "offlineFileName": "",
  1449. "offlineAssetKey": "training-narration-4426",
  1450. "offlineMimeType": "",
  1451. "offlineSizeBytes": 0,
  1452. "narrationText": "第5步,打开辅助控制盒互救开关。打开辅助控制盒盖,再打开互救开关,进入单泵作业状态。",
  1453. "narrationAssetCode": "PILOT-005-5-AUDIO",
  1454. "narrationVideoAssetCode": "PILOT-005-5-VIDEO",
  1455. "safetyAssetCode": "",
  1456. "narrationUrl": "asset://training-narration-4426",
  1457. "safetyText": "安全提示:请确认压力归零并可靠支承后再进行拆卸。",
  1458. "safetyUrl": "",
  1459. "successCue": "ui",
  1460. "errorCue": "collision-error",
  1461. "digitalHuman": {
  1462. "enabled": false,
  1463. "mode": "video",
  1464. "videoSource": "upload",
  1465. "videoId": "",
  1466. "appId": "",
  1467. "videoUrl": "",
  1468. "videoFileName": "",
  1469. "folderId": "equipment-hydraulic-fault",
  1470. "folderPath": "装备维修 / 液压系统 / 故障排查",
  1471. "videoName": "",
  1472. "avatarId": "",
  1473. "avatarName": "",
  1474. "backgroundImage": "",
  1475. "backgroundName": "",
  1476. "audioUrl": "",
  1477. "audioName": "",
  1478. "voiceId": "",
  1479. "voiceName": "",
  1480. "scriptText": "",
  1481. "generatedVideoId": "",
  1482. "generatedVideoUrl": "",
  1483. "generatedAt": "",
  1484. "generationStatus": "generated"
  1485. }
  1486. },
  1487. "animationBinding": null,
  1488. "faultIds": [],
  1489. "assessment": {
  1490. "weight": 20,
  1491. "requiredDimensions": [
  1492. "action",
  1493. "sequence"
  1494. ],
  1495. "passPolicy": "all-required"
  1496. }
  1497. }
  1498. ],
  1499. "authoring": {
  1500. "schema": "digital-workshop.training-authoring",
  1501. "version": 1,
  1502. "nodes": [
  1503. {
  1504. "id": "flow-start",
  1505. "type": "start",
  1506. "title": "训练开始",
  1507. "x": 32,
  1508. "y": 120,
  1509. "config": {}
  1510. },
  1511. {
  1512. "id": "step-node:front-pump-step-01",
  1513. "type": "step",
  1514. "title": "根据故障现象确定是哪一个液压泵发生故障",
  1515. "stepId": "front-pump-step-01",
  1516. "x": 240,
  1517. "y": 120,
  1518. "config": {}
  1519. },
  1520. {
  1521. "id": "step-node:front-pump-step-02",
  1522. "type": "step",
  1523. "title": "断开架桥车取力器",
  1524. "stepId": "front-pump-step-02",
  1525. "x": 500,
  1526. "y": 120,
  1527. "config": {}
  1528. },
  1529. {
  1530. "id": "step-node:front-pump-step-03",
  1531. "type": "step",
  1532. "title": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开",
  1533. "stepId": "front-pump-step-03",
  1534. "x": 760,
  1535. "y": 120,
  1536. "config": {}
  1537. },
  1538. {
  1539. "id": "step-node:front-pump-step-04",
  1540. "type": "step",
  1541. "title": "重新联通取力器",
  1542. "stepId": "front-pump-step-04",
  1543. "x": 240,
  1544. "y": 270,
  1545. "config": {}
  1546. },
  1547. {
  1548. "id": "step-node:front-pump-step-05",
  1549. "type": "step",
  1550. "title": "打开辅助控制盒内的“互救”开关",
  1551. "stepId": "front-pump-step-05",
  1552. "x": 500,
  1553. "y": 270,
  1554. "config": {}
  1555. },
  1556. {
  1557. "id": "flow-end",
  1558. "type": "end",
  1559. "title": "训练结束",
  1560. "x": 760,
  1561. "y": 270,
  1562. "config": {}
  1563. }
  1564. ],
  1565. "edges": [
  1566. {
  1567. "id": "edge:flow-start:step-node:front-pump-step-01",
  1568. "from": "flow-start",
  1569. "to": "step-node:front-pump-step-01",
  1570. "label": "",
  1571. "kind": "base-sequence"
  1572. },
  1573. {
  1574. "id": "edge:step-node:front-pump-step-01:step-node:front-pump-step-02",
  1575. "from": "step-node:front-pump-step-01",
  1576. "to": "step-node:front-pump-step-02",
  1577. "label": "",
  1578. "kind": "base-sequence"
  1579. },
  1580. {
  1581. "id": "edge:step-node:front-pump-step-02:step-node:front-pump-step-03",
  1582. "from": "step-node:front-pump-step-02",
  1583. "to": "step-node:front-pump-step-03",
  1584. "label": "",
  1585. "kind": "base-sequence"
  1586. },
  1587. {
  1588. "id": "edge:step-node:front-pump-step-03:step-node:front-pump-step-04",
  1589. "from": "step-node:front-pump-step-03",
  1590. "to": "step-node:front-pump-step-04",
  1591. "label": "",
  1592. "kind": "base-sequence"
  1593. },
  1594. {
  1595. "id": "edge:step-node:front-pump-step-04:step-node:front-pump-step-05",
  1596. "from": "step-node:front-pump-step-04",
  1597. "to": "step-node:front-pump-step-05",
  1598. "label": "",
  1599. "kind": "base-sequence"
  1600. },
  1601. {
  1602. "id": "edge:step-node:front-pump-step-05:flow-end",
  1603. "from": "step-node:front-pump-step-05",
  1604. "to": "flow-end",
  1605. "label": "",
  1606. "kind": "base-sequence"
  1607. }
  1608. ],
  1609. "timeline": {
  1610. "currentTime": 0,
  1611. "tracks": {
  1612. "front-pump-step-01": {
  1613. "duration": 8,
  1614. "action": "mechanism-operation",
  1615. "camera": "跟随目标",
  1616. "audio": "asset://training-narration-4418",
  1617. "animationAssetId": "",
  1618. "animationName": ""
  1619. },
  1620. "front-pump-step-02": {
  1621. "duration": 8,
  1622. "action": "mechanism-operation",
  1623. "camera": "跟随目标",
  1624. "audio": "asset://training-narration-4420",
  1625. "animationAssetId": "",
  1626. "animationName": ""
  1627. },
  1628. "front-pump-step-03": {
  1629. "duration": 8,
  1630. "action": "mechanism-operation",
  1631. "camera": "跟随目标",
  1632. "audio": "asset://training-narration-4422",
  1633. "animationAssetId": "",
  1634. "animationName": ""
  1635. },
  1636. "front-pump-step-04": {
  1637. "duration": 8,
  1638. "action": "mechanism-operation",
  1639. "camera": "跟随目标",
  1640. "audio": "asset://training-narration-4424",
  1641. "animationAssetId": "",
  1642. "animationName": ""
  1643. },
  1644. "front-pump-step-05": {
  1645. "duration": 8,
  1646. "action": "mechanism-operation",
  1647. "camera": "跟随目标",
  1648. "audio": "asset://training-narration-4426",
  1649. "animationAssetId": "",
  1650. "animationName": ""
  1651. }
  1652. }
  1653. },
  1654. "updatedAt": "2026-09-17T14:33:45.403Z"
  1655. },
  1656. "assessment": {
  1657. "passScore": 80,
  1658. "maxScore": 100,
  1659. "scoringMode": "weighted-rules",
  1660. "allowRetry": true,
  1661. "recordProcess": true
  1662. },
  1663. "runtime": {
  1664. "startMode": "practice",
  1665. "teacherEnabled": true,
  1666. "teacherVoiceEnabled": true,
  1667. "actionSoundEnabled": true,
  1668. "showStepPanel": true,
  1669. "showProgress": true,
  1670. "allowReplay": true,
  1671. "language": "zh-CN"
  1672. },
  1673. "createdAt": "2026-09-16T13:50:27.000Z",
  1674. "updatedAt": "2026-09-17T14:33:43.867Z",
  1675. "publishedAt": ""
  1676. }