Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
 
 
 
 

1072 rindas
35 KiB

  1. {
  2. "taskCode": "TASK-VIRTUAL-005",
  3. "sourceCommit": "ba747df",
  4. "sourceAuthor": "yaozijun",
  5. "sourceDate": "2026-09-03",
  6. "scope": "原始静态演示定义,未经正式训练发布",
  7. "definition": {
  8. "schema": "digital-workshop-training-project",
  9. "version": 1,
  10. "id": "front-pump-rescue-operation-v1",
  11. "projectId": "front-pump-rescue-operation-v1",
  12. "name": "架桥车前泵故障互救处置训练(虚拟仿真)",
  13. "status": "published",
  14. "trainingMode": "virtual",
  15. "resources": {
  16. "models": [
  17. {
  18. "id": "front-pump-step-vehicle",
  19. "modelId": "front-pump-step-vehicle",
  20. "name": "架桥车前泵互救操作整车模型",
  21. "baseModelName": "架桥车前泵互救操作整车模型",
  22. "sourceName": "步骤模型.glb",
  23. "resourceUrl": "/models/步骤模型.glb",
  24. "assetKey": "",
  25. "mimeType": "model/gltf-binary",
  26. "sizeBytes": 32195288,
  27. "revision": 1,
  28. "materialPreset": null,
  29. "parts": [
  30. {
  31. "editorId": "",
  32. "interactionId": "front-pump-hydraulic-pump",
  33. "nodeName": "1液压泵",
  34. "sourceNodeName": "1液压泵",
  35. "nodePath": "",
  36. "name": "液压泵",
  37. "capabilities": [
  38. "select",
  39. "inspect"
  40. ],
  41. "visible": true
  42. },
  43. {
  44. "editorId": "",
  45. "interactionId": "front-pump-power-take-off",
  46. "nodeName": "2取力器",
  47. "sourceNodeName": "2取力器",
  48. "nodePath": "",
  49. "name": "取力器",
  50. "capabilities": [
  51. "select",
  52. "inspect"
  53. ],
  54. "visible": true
  55. },
  56. {
  57. "editorId": "",
  58. "interactionId": "front-pump-pto-switch",
  59. "nodeName": "2取力器开关",
  60. "sourceNodeName": "2取力器开关",
  61. "nodePath": "",
  62. "name": "取力器开关",
  63. "capabilities": [
  64. "select",
  65. "inspect",
  66. "mechanism"
  67. ],
  68. "visible": true
  69. },
  70. {
  71. "editorId": "",
  72. "interactionId": "front-pump-ball-valve-switch",
  73. "nodeName": "3球阀开关",
  74. "sourceNodeName": "3球阀开关",
  75. "nodePath": "",
  76. "name": "球阀开关",
  77. "capabilities": [
  78. "select",
  79. "inspect",
  80. "mechanism"
  81. ],
  82. "visible": true
  83. },
  84. {
  85. "editorId": "",
  86. "interactionId": "front-pump-aux-control-box",
  87. "nodeName": "5辅助控制盒",
  88. "sourceNodeName": "5辅助控制盒",
  89. "nodePath": "",
  90. "name": "辅助控制盒",
  91. "capabilities": [
  92. "select",
  93. "inspect"
  94. ],
  95. "visible": true
  96. },
  97. {
  98. "editorId": "",
  99. "interactionId": "front-pump-aux-control-box-cover",
  100. "nodeName": "5辅助控制盒盖",
  101. "sourceNodeName": "5辅助控制盒盖",
  102. "nodePath": "",
  103. "name": "辅助控制盒盖",
  104. "capabilities": [
  105. "select",
  106. "inspect",
  107. "mechanism"
  108. ],
  109. "visible": true
  110. },
  111. {
  112. "editorId": "",
  113. "interactionId": "front-pump-rescue-switch",
  114. "nodeName": "5互救开关",
  115. "sourceNodeName": "5互救开关",
  116. "nodePath": "",
  117. "name": "互救开关",
  118. "capabilities": [
  119. "select",
  120. "inspect",
  121. "mechanism"
  122. ],
  123. "visible": true
  124. }
  125. ]
  126. }
  127. ],
  128. "animations": []
  129. },
  130. "task": {
  131. "id": "TR-FRONT-PUMP-RESCUE-001",
  132. "code": "TR-FRONT-PUMP-RESCUE-001",
  133. "title": "架桥车前泵故障互救处置训练(虚拟仿真)",
  134. "categoryId": "minor-repair",
  135. "difficulty": "标准",
  136. "level": "标准",
  137. "duration": 10,
  138. "description": "前泵损坏的情况下如何操作。",
  139. "image": "/models/step-model-front-pump-thumb.png",
  140. "equipment": "架桥车",
  141. "skills": [
  142. "液压泵故障识别",
  143. "取力器断开与联通",
  144. "球阀开启",
  145. "互救开关操作"
  146. ]
  147. },
  148. "scenario": {
  149. "id": "front-pump-rescue-scenario",
  150. "publishedSceneId": "SCENE-FRONT-PUMP-RESCUE-01",
  151. "publishedSceneVersion": "1.0",
  152. "baseVisualKey": "front-pump-rescue",
  153. "visualKey": "front-pump-rescue",
  154. "environmentName": "架桥车互救操作训练场",
  155. "sceneLayout": "架桥车整车操作位",
  156. "equipmentState": "前泵故障 · 待执行互救处置",
  157. "tools": [],
  158. "faults": [],
  159. "environment": {
  160. "type": "outdoor",
  161. "mode": "builtin",
  162. "sourceName": "内置架桥车互救操作训练场",
  163. "resourceUrl": "",
  164. "sizeBytes": 0,
  165. "lastModified": 0,
  166. "embeddedDataUrl": ""
  167. },
  168. "sceneResource": {
  169. "sceneId": "SCENE-FRONT-PUMP-RESCUE-01",
  170. "version": "1.0",
  171. "sourceKind": "published",
  172. "status": "已发布",
  173. "name": "架桥车前泵故障互救处置训练场景",
  174. "presetId": "outdoor-1",
  175. "type": "outdoor",
  176. "objectCount": 2,
  177. "objects": [
  178. {
  179. "id": "front-pump-training-yard",
  180. "sceneId": "front-pump-training-yard",
  181. "interactionId": "scene:front-pump-training-yard",
  182. "type": "imported",
  183. "name": "野外山地训练场",
  184. "semantic": "场景地形",
  185. "assetRole": "environment",
  186. "operable": false,
  187. "visible": true,
  188. "modelId": "front-pump-field-terrain",
  189. "modelEditorAssetId": "front-pump-field-terrain",
  190. "modelEditorModelId": "front-pump-field-terrain",
  191. "modelEditorRevision": 1,
  192. "modelOverrides": {},
  193. "materialPreset": null,
  194. "sourceName": "地形.glb",
  195. "resourceUrl": "/models/地形.glb",
  196. "assetKey": "",
  197. "mimeType": "model/gltf-binary",
  198. "sizeBytes": 10726472,
  199. "fitToScene": true,
  200. "fitSize": 140,
  201. "groundLevelY": 0,
  202. "position": [
  203. 0,
  204. 0,
  205. 0
  206. ],
  207. "rotation": [
  208. 0,
  209. 0,
  210. 0
  211. ],
  212. "scale": [
  213. 1,
  214. 1,
  215. 1
  216. ]
  217. },
  218. {
  219. "id": "front-pump-rescue-vehicle",
  220. "sceneId": "front-pump-rescue-vehicle",
  221. "interactionId": "scene:front-pump-rescue-vehicle",
  222. "type": "imported",
  223. "name": "架桥车前泵互救操作整车模型",
  224. "semantic": "实训装备",
  225. "assetRole": "training-content",
  226. "operable": true,
  227. "visible": true,
  228. "capabilities": [
  229. "select",
  230. "inspect"
  231. ],
  232. "modelId": "front-pump-step-vehicle",
  233. "modelEditorAssetId": "front-pump-step-vehicle",
  234. "modelEditorModelId": "front-pump-step-vehicle",
  235. "modelEditorRevision": 1,
  236. "modelOverrides": {},
  237. "materialPreset": null,
  238. "modelPartTargets": [
  239. {
  240. "interactionId": "front-pump-hydraulic-pump",
  241. "sourceNodeName": "1液压泵",
  242. "name": "液压泵",
  243. "capabilities": [
  244. "select",
  245. "inspect"
  246. ],
  247. "sceneId": "front-pump-rescue-vehicle",
  248. "operable": true,
  249. "visible": true
  250. },
  251. {
  252. "interactionId": "front-pump-power-take-off",
  253. "sourceNodeName": "2取力器",
  254. "name": "取力器",
  255. "capabilities": [
  256. "select",
  257. "inspect"
  258. ],
  259. "sceneId": "front-pump-rescue-vehicle",
  260. "operable": true,
  261. "visible": true
  262. },
  263. {
  264. "interactionId": "front-pump-pto-switch",
  265. "sourceNodeName": "2取力器开关",
  266. "name": "取力器开关",
  267. "capabilities": [
  268. "select",
  269. "inspect",
  270. "mechanism"
  271. ],
  272. "sceneId": "front-pump-rescue-vehicle",
  273. "operable": true,
  274. "visible": true
  275. },
  276. {
  277. "interactionId": "front-pump-ball-valve-switch",
  278. "sourceNodeName": "3球阀开关",
  279. "name": "球阀开关",
  280. "capabilities": [
  281. "select",
  282. "inspect",
  283. "mechanism"
  284. ],
  285. "sceneId": "front-pump-rescue-vehicle",
  286. "operable": true,
  287. "visible": true
  288. },
  289. {
  290. "interactionId": "front-pump-aux-control-box",
  291. "sourceNodeName": "5辅助控制盒",
  292. "name": "辅助控制盒",
  293. "capabilities": [
  294. "select",
  295. "inspect"
  296. ],
  297. "sceneId": "front-pump-rescue-vehicle",
  298. "operable": true,
  299. "visible": true
  300. },
  301. {
  302. "interactionId": "front-pump-aux-control-box-cover",
  303. "sourceNodeName": "5辅助控制盒盖",
  304. "name": "辅助控制盒盖",
  305. "capabilities": [
  306. "select",
  307. "inspect",
  308. "mechanism"
  309. ],
  310. "pivotEdge": {
  311. "space": "world",
  312. "axis": [
  313. 0,
  314. 1,
  315. 0
  316. ],
  317. "edge": "nearest-vertical-edge"
  318. },
  319. "sceneId": "front-pump-rescue-vehicle",
  320. "operable": true,
  321. "visible": true
  322. },
  323. {
  324. "interactionId": "front-pump-rescue-switch",
  325. "sourceNodeName": "5互救开关",
  326. "name": "互救开关",
  327. "capabilities": [
  328. "select",
  329. "inspect",
  330. "mechanism"
  331. ],
  332. "sceneId": "front-pump-rescue-vehicle",
  333. "operable": true,
  334. "visible": true
  335. }
  336. ],
  337. "sourceName": "步骤模型.glb",
  338. "resourceUrl": "/models/步骤模型.glb",
  339. "assetKey": "",
  340. "mimeType": "model/gltf-binary",
  341. "sizeBytes": 32195288,
  342. "fitToScene": true,
  343. "fitSize": 8,
  344. "position": [
  345. 0,
  346. 0,
  347. 0
  348. ],
  349. "rotation": [
  350. 0,
  351. 0,
  352. 0
  353. ],
  354. "scale": [
  355. 1,
  356. 1,
  357. 1
  358. ]
  359. }
  360. ],
  361. "snapshot": {
  362. "schema": "edit3dv4.scene",
  363. "version": "1.0",
  364. "name": "架桥车前泵故障互救处置训练场景",
  365. "presetId": "outdoor-1",
  366. "type": "outdoor",
  367. "environment": {
  368. "presetId": "outdoor-1",
  369. "type": "outdoor"
  370. },
  371. "rendering": {
  372. "background": 11062241,
  373. "fog": {
  374. "color": 11062241,
  375. "near": 70,
  376. "far": 240
  377. },
  378. "toneMappingExposure": 1.05,
  379. "environment": {
  380. "type": "room",
  381. "sigma": 0.04
  382. },
  383. "camera": {
  384. "fov": 45,
  385. "near": 0.1,
  386. "far": 800,
  387. "position": [
  388. 10.6,
  389. 6.4,
  390. 13.2
  391. ],
  392. "target": [
  393. 0,
  394. 1.9,
  395. 0
  396. ]
  397. }
  398. },
  399. "objects": [
  400. {
  401. "id": "front-pump-training-yard",
  402. "sceneId": "front-pump-training-yard",
  403. "interactionId": "scene:front-pump-training-yard",
  404. "type": "imported",
  405. "name": "野外山地训练场",
  406. "semantic": "场景地形",
  407. "assetRole": "environment",
  408. "operable": false,
  409. "visible": true,
  410. "modelId": "front-pump-field-terrain",
  411. "modelEditorAssetId": "front-pump-field-terrain",
  412. "modelEditorModelId": "front-pump-field-terrain",
  413. "modelEditorRevision": 1,
  414. "modelOverrides": {},
  415. "materialPreset": null,
  416. "sourceName": "地形.glb",
  417. "resourceUrl": "/models/地形.glb",
  418. "assetKey": "",
  419. "mimeType": "model/gltf-binary",
  420. "sizeBytes": 10726472,
  421. "fitToScene": true,
  422. "fitSize": 140,
  423. "groundLevelY": 0,
  424. "position": [
  425. 0,
  426. 0,
  427. 0
  428. ],
  429. "rotation": [
  430. 0,
  431. 0,
  432. 0
  433. ],
  434. "scale": [
  435. 1,
  436. 1,
  437. 1
  438. ]
  439. },
  440. {
  441. "id": "front-pump-rescue-vehicle",
  442. "sceneId": "front-pump-rescue-vehicle",
  443. "interactionId": "scene:front-pump-rescue-vehicle",
  444. "type": "imported",
  445. "name": "架桥车前泵互救操作整车模型",
  446. "semantic": "实训装备",
  447. "assetRole": "training-content",
  448. "operable": true,
  449. "visible": true,
  450. "capabilities": [
  451. "select",
  452. "inspect"
  453. ],
  454. "modelId": "front-pump-step-vehicle",
  455. "modelEditorAssetId": "front-pump-step-vehicle",
  456. "modelEditorModelId": "front-pump-step-vehicle",
  457. "modelEditorRevision": 1,
  458. "modelOverrides": {},
  459. "materialPreset": null,
  460. "modelPartTargets": [
  461. {
  462. "interactionId": "front-pump-hydraulic-pump",
  463. "sourceNodeName": "1液压泵",
  464. "name": "液压泵",
  465. "capabilities": [
  466. "select",
  467. "inspect"
  468. ],
  469. "sceneId": "front-pump-rescue-vehicle",
  470. "operable": true,
  471. "visible": true
  472. },
  473. {
  474. "interactionId": "front-pump-power-take-off",
  475. "sourceNodeName": "2取力器",
  476. "name": "取力器",
  477. "capabilities": [
  478. "select",
  479. "inspect"
  480. ],
  481. "sceneId": "front-pump-rescue-vehicle",
  482. "operable": true,
  483. "visible": true
  484. },
  485. {
  486. "interactionId": "front-pump-pto-switch",
  487. "sourceNodeName": "2取力器开关",
  488. "name": "取力器开关",
  489. "capabilities": [
  490. "select",
  491. "inspect",
  492. "mechanism"
  493. ],
  494. "sceneId": "front-pump-rescue-vehicle",
  495. "operable": true,
  496. "visible": true
  497. },
  498. {
  499. "interactionId": "front-pump-ball-valve-switch",
  500. "sourceNodeName": "3球阀开关",
  501. "name": "球阀开关",
  502. "capabilities": [
  503. "select",
  504. "inspect",
  505. "mechanism"
  506. ],
  507. "sceneId": "front-pump-rescue-vehicle",
  508. "operable": true,
  509. "visible": true
  510. },
  511. {
  512. "interactionId": "front-pump-aux-control-box",
  513. "sourceNodeName": "5辅助控制盒",
  514. "name": "辅助控制盒",
  515. "capabilities": [
  516. "select",
  517. "inspect"
  518. ],
  519. "sceneId": "front-pump-rescue-vehicle",
  520. "operable": true,
  521. "visible": true
  522. },
  523. {
  524. "interactionId": "front-pump-aux-control-box-cover",
  525. "sourceNodeName": "5辅助控制盒盖",
  526. "name": "辅助控制盒盖",
  527. "capabilities": [
  528. "select",
  529. "inspect",
  530. "mechanism"
  531. ],
  532. "pivotEdge": {
  533. "space": "world",
  534. "axis": [
  535. 0,
  536. 1,
  537. 0
  538. ],
  539. "edge": "nearest-vertical-edge"
  540. },
  541. "sceneId": "front-pump-rescue-vehicle",
  542. "operable": true,
  543. "visible": true
  544. },
  545. {
  546. "interactionId": "front-pump-rescue-switch",
  547. "sourceNodeName": "5互救开关",
  548. "name": "互救开关",
  549. "capabilities": [
  550. "select",
  551. "inspect",
  552. "mechanism"
  553. ],
  554. "sceneId": "front-pump-rescue-vehicle",
  555. "operable": true,
  556. "visible": true
  557. }
  558. ],
  559. "sourceName": "步骤模型.glb",
  560. "resourceUrl": "/models/步骤模型.glb",
  561. "assetKey": "",
  562. "mimeType": "model/gltf-binary",
  563. "sizeBytes": 32195288,
  564. "fitToScene": true,
  565. "fitSize": 8,
  566. "position": [
  567. 0,
  568. 0,
  569. 0
  570. ],
  571. "rotation": [
  572. 0,
  573. 0,
  574. 0
  575. ],
  576. "scale": [
  577. 1,
  578. 1,
  579. 1
  580. ]
  581. }
  582. ]
  583. },
  584. "assetReferences": [
  585. {
  586. "resourceUrl": "/models/步骤模型.glb",
  587. "sourceName": "步骤模型.glb",
  588. "sizeBytes": 32195288,
  589. "mimeType": "model/gltf-binary",
  590. "assetRole": "training-content"
  591. }
  592. ]
  593. },
  594. "accent": "#2d86d8",
  595. "background": 11062241,
  596. "fog": 11062241,
  597. "ground": 7110499,
  598. "camera": {
  599. "position": [
  600. 10.6,
  601. 6.4,
  602. 13.2
  603. ],
  604. "target": [
  605. 0,
  606. 1.9,
  607. 0
  608. ]
  609. },
  610. "retainStoredParts": true,
  611. "sceneTags": [
  612. "真实整车步骤模型",
  613. "前泵故障互救",
  614. "机构顺序操作"
  615. ],
  616. "sensorFeeds": []
  617. },
  618. "tools": [],
  619. "faults": [],
  620. "steps": [
  621. {
  622. "id": "front-pump-step-01",
  623. "code": "FRONT-PUMP-STEP-01",
  624. "stepCode": "FRONT-PUMP-STEP-01",
  625. "actionCode": "IDENTIFY_FAILED_HYDRAULIC_PUMP",
  626. "number": 1,
  627. "title": "根据故障现象确定是哪一个液压泵发生故障",
  628. "targetId": "front-pump-hydraulic-pump",
  629. "targetName": "液压泵",
  630. "targetRef": {
  631. "sceneId": "front-pump-rescue-vehicle",
  632. "sceneObjectId": "front-pump-rescue-vehicle",
  633. "interactionId": "front-pump-hydraulic-pump",
  634. "sourceNodeName": "1液压泵",
  635. "capabilities": [
  636. "select",
  637. "inspect"
  638. ],
  639. "visible": true
  640. },
  641. "mode": "inspect",
  642. "interaction": "mechanism-operation",
  643. "instruction": "根据故障现象确定是哪一个液压泵发生故障(注:模型_1液压泵标记出来。例如显红色)",
  644. "guidance": "根据故障现象确定是哪一个液压泵发生故障(注:模型_1液压泵标记出来。例如显红色)",
  645. "warning": "",
  646. "destination": "液压泵",
  647. "success": "根据故障现象确定是哪一个液压泵发生故障",
  648. "cameraPolicy": "exterior",
  649. "action": {
  650. "kind": "mechanism-operation",
  651. "targetId": "front-pump-hydraulic-pump",
  652. "mode": "inspect",
  653. "durationMs": 900,
  654. "tolerance": 0,
  655. "requiresPlacement": false,
  656. "cameraPolicy": "exterior",
  657. "mechanism": {
  658. "type": "identify",
  659. "axisSpace": "world",
  660. "highlightColor": "#e53935",
  661. "steps": [
  662. {
  663. "targetId": "front-pump-hydraulic-pump",
  664. "axis": [
  665. 0,
  666. 1,
  667. 0
  668. ],
  669. "toleranceDegrees": 6,
  670. "directionHint": "点击并确认发生故障的液压泵"
  671. }
  672. ]
  673. }
  674. },
  675. "toolId": "",
  676. "targetNodeId": "front-pump-hydraulic-pump",
  677. "targetNodeName": "1液压泵",
  678. "measurement": "",
  679. "audio": {
  680. "narrationSource": "offline",
  681. "narrationText": "根据故障现象确定是哪一个液压泵发生故障(注:模型_1液压泵标记出来。例如显红色)",
  682. "narrationUrl": "",
  683. "safetyText": "",
  684. "safetyUrl": "",
  685. "successCue": "ui",
  686. "errorCue": "collision-error"
  687. },
  688. "faultIds": [],
  689. "assessment": {
  690. "weight": 20,
  691. "requiredDimensions": [
  692. "action",
  693. "sequence"
  694. ],
  695. "passPolicy": "all-required"
  696. }
  697. },
  698. {
  699. "id": "front-pump-step-02",
  700. "code": "FRONT-PUMP-STEP-02",
  701. "stepCode": "FRONT-PUMP-STEP-02",
  702. "actionCode": "DISENGAGE_POWER_TAKE_OFF",
  703. "number": 2,
  704. "title": "断开架桥车取力器",
  705. "targetId": "front-pump-pto-switch",
  706. "targetName": "取力器开关",
  707. "targetRef": {
  708. "sceneId": "front-pump-rescue-vehicle",
  709. "sceneObjectId": "front-pump-rescue-vehicle",
  710. "interactionId": "front-pump-pto-switch",
  711. "sourceNodeName": "2取力器开关",
  712. "capabilities": [
  713. "select",
  714. "inspect",
  715. "mechanism"
  716. ],
  717. "visible": true
  718. },
  719. "mode": "inspect",
  720. "interaction": "mechanism-operation",
  721. "instruction": "断开架桥车取力器。(注:显示模型2取力器和2取力器开关,摇动模型2取力器开关。特别说明这个这边是早上随手补的不准确,车外看就行,不要拉近)",
  722. "guidance": "断开架桥车取力器。(注:显示模型2取力器和2取力器开关,摇动模型2取力器开关。特别说明这个这边是早上随手补的不准确,车外看就行,不要拉近)",
  723. "warning": "",
  724. "destination": "取力器开关",
  725. "success": "断开架桥车取力器",
  726. "cameraPolicy": "exterior",
  727. "action": {
  728. "kind": "mechanism-operation",
  729. "targetId": "front-pump-pto-switch",
  730. "mode": "inspect",
  731. "durationMs": 900,
  732. "tolerance": 0,
  733. "requiresPlacement": false,
  734. "cameraPolicy": "exterior",
  735. "mechanism": {
  736. "type": "rotate",
  737. "axisSpace": "world",
  738. "visualTargetIds": [
  739. "front-pump-power-take-off"
  740. ],
  741. "steps": [
  742. {
  743. "targetId": "front-pump-pto-switch",
  744. "axis": [
  745. 1,
  746. 0,
  747. 0
  748. ],
  749. "deltaDegrees": -30,
  750. "toleranceDegrees": 6,
  751. "directionHint": "向断开方向摇动"
  752. }
  753. ]
  754. }
  755. },
  756. "toolId": "",
  757. "targetNodeId": "front-pump-pto-switch",
  758. "targetNodeName": "2取力器开关",
  759. "measurement": "",
  760. "audio": {
  761. "narrationSource": "offline",
  762. "narrationText": "断开架桥车取力器。(注:显示模型2取力器和2取力器开关,摇动模型2取力器开关。特别说明这个这边是早上随手补的不准确,车外看就行,不要拉近)",
  763. "narrationUrl": "",
  764. "safetyText": "",
  765. "safetyUrl": "",
  766. "successCue": "ui",
  767. "errorCue": "collision-error"
  768. },
  769. "faultIds": [],
  770. "assessment": {
  771. "weight": 20,
  772. "requiredDimensions": [
  773. "action",
  774. "sequence"
  775. ],
  776. "passPolicy": "all-required"
  777. }
  778. },
  779. {
  780. "id": "front-pump-step-03",
  781. "code": "FRONT-PUMP-STEP-03",
  782. "stepCode": "FRONT-PUMP-STEP-03",
  783. "actionCode": "OPEN_RESCUE_BALL_VALVE",
  784. "number": 3,
  785. "title": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开",
  786. "targetId": "front-pump-ball-valve-switch",
  787. "targetName": "球阀开关",
  788. "targetRef": {
  789. "sceneId": "front-pump-rescue-vehicle",
  790. "sceneObjectId": "front-pump-rescue-vehicle",
  791. "interactionId": "front-pump-ball-valve-switch",
  792. "sourceNodeName": "3球阀开关",
  793. "capabilities": [
  794. "select",
  795. "inspect",
  796. "mechanism"
  797. ],
  798. "visible": true
  799. },
  800. "mode": "inspect",
  801. "interaction": "mechanism-operation",
  802. "instruction": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开。(注;把模型3球阀开关由垂直与官道方向旋转至平行于管道方向)",
  803. "guidance": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开。(注;把模型3球阀开关由垂直与官道方向旋转至平行于管道方向)",
  804. "warning": "",
  805. "destination": "球阀开关",
  806. "success": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开",
  807. "cameraPolicy": "focus",
  808. "action": {
  809. "kind": "mechanism-operation",
  810. "targetId": "front-pump-ball-valve-switch",
  811. "mode": "inspect",
  812. "durationMs": 900,
  813. "tolerance": 0,
  814. "requiresPlacement": false,
  815. "cameraPolicy": "focus",
  816. "mechanism": {
  817. "type": "rotate",
  818. "axisSpace": "world",
  819. "steps": [
  820. {
  821. "targetId": "front-pump-ball-valve-switch",
  822. "axis": [
  823. 0,
  824. 1,
  825. 0
  826. ],
  827. "deltaDegrees": 90,
  828. "toleranceDegrees": 8,
  829. "directionHint": "由垂直与官道方向旋转至平行于管道方向"
  830. }
  831. ]
  832. }
  833. },
  834. "toolId": "",
  835. "targetNodeId": "front-pump-ball-valve-switch",
  836. "targetNodeName": "3球阀开关",
  837. "measurement": "",
  838. "audio": {
  839. "narrationSource": "offline",
  840. "narrationText": "将架桥车备胎斜上方链接两个红色滤油器的球阀打开。(注;把模型3球阀开关由垂直与官道方向旋转至平行于管道方向)",
  841. "narrationUrl": "",
  842. "safetyText": "",
  843. "safetyUrl": "",
  844. "successCue": "ui",
  845. "errorCue": "collision-error"
  846. },
  847. "faultIds": [],
  848. "assessment": {
  849. "weight": 20,
  850. "requiredDimensions": [
  851. "action",
  852. "sequence"
  853. ],
  854. "passPolicy": "all-required"
  855. }
  856. },
  857. {
  858. "id": "front-pump-step-04",
  859. "code": "FRONT-PUMP-STEP-04",
  860. "stepCode": "FRONT-PUMP-STEP-04",
  861. "actionCode": "REENGAGE_POWER_TAKE_OFF",
  862. "number": 4,
  863. "title": "重新联通取力器",
  864. "targetId": "front-pump-pto-switch",
  865. "targetName": "取力器开关",
  866. "targetRef": {
  867. "sceneId": "front-pump-rescue-vehicle",
  868. "sceneObjectId": "front-pump-rescue-vehicle",
  869. "interactionId": "front-pump-pto-switch",
  870. "sourceNodeName": "2取力器开关",
  871. "capabilities": [
  872. "select",
  873. "inspect",
  874. "mechanism"
  875. ],
  876. "visible": true
  877. },
  878. "mode": "inspect",
  879. "interaction": "mechanism-operation",
  880. "instruction": "重新联通取力器(注:把步骤2的2取力器开关摇回去:还是不要拉近)",
  881. "guidance": "重新联通取力器(注:把步骤2的2取力器开关摇回去:还是不要拉近)",
  882. "warning": "",
  883. "destination": "取力器开关",
  884. "success": "重新联通取力器",
  885. "cameraPolicy": "exterior",
  886. "action": {
  887. "kind": "mechanism-operation",
  888. "targetId": "front-pump-pto-switch",
  889. "mode": "inspect",
  890. "durationMs": 900,
  891. "tolerance": 0,
  892. "requiresPlacement": false,
  893. "cameraPolicy": "exterior",
  894. "mechanism": {
  895. "type": "rotate",
  896. "axisSpace": "world",
  897. "visualTargetIds": [
  898. "front-pump-power-take-off"
  899. ],
  900. "steps": [
  901. {
  902. "targetId": "front-pump-pto-switch",
  903. "axis": [
  904. 1,
  905. 0,
  906. 0
  907. ],
  908. "deltaDegrees": 30,
  909. "toleranceDegrees": 6,
  910. "directionHint": "按步骤2的相反方向摇回去"
  911. }
  912. ]
  913. }
  914. },
  915. "toolId": "",
  916. "targetNodeId": "front-pump-pto-switch",
  917. "targetNodeName": "2取力器开关",
  918. "measurement": "",
  919. "audio": {
  920. "narrationSource": "offline",
  921. "narrationText": "重新联通取力器(注:把步骤2的2取力器开关摇回去:还是不要拉近)",
  922. "narrationUrl": "",
  923. "safetyText": "",
  924. "safetyUrl": "",
  925. "successCue": "ui",
  926. "errorCue": "collision-error"
  927. },
  928. "faultIds": [],
  929. "assessment": {
  930. "weight": 20,
  931. "requiredDimensions": [
  932. "action",
  933. "sequence"
  934. ],
  935. "passPolicy": "all-required"
  936. }
  937. },
  938. {
  939. "id": "front-pump-step-05",
  940. "code": "FRONT-PUMP-STEP-05",
  941. "stepCode": "FRONT-PUMP-STEP-05",
  942. "actionCode": "ENABLE_AUXILIARY_RESCUE_SWITCH",
  943. "number": 5,
  944. "title": "打开辅助控制盒内的“互救”开关",
  945. "targetId": "front-pump-aux-control-box-cover",
  946. "targetName": "辅助控制盒盖",
  947. "targetRef": {
  948. "sceneId": "front-pump-rescue-vehicle",
  949. "sceneObjectId": "front-pump-rescue-vehicle",
  950. "interactionId": "front-pump-aux-control-box-cover",
  951. "sourceNodeName": "5辅助控制盒盖",
  952. "capabilities": [
  953. "select",
  954. "inspect",
  955. "mechanism"
  956. ],
  957. "visible": true
  958. },
  959. "mode": "inspect",
  960. "interaction": "mechanism-operation",
  961. "instruction": "打开辅助控制盒内的“互救”开关(注:打开5辅助控制盒盖在5辅助控制盒面板上,把5互救开关往上搬)",
  962. "guidance": "打开辅助控制盒内的“互救”开关(注:打开5辅助控制盒盖在5辅助控制盒面板上,把5互救开关往上搬)",
  963. "warning": "",
  964. "destination": "辅助控制盒盖",
  965. "success": "打开辅助控制盒内的“互救”开关",
  966. "cameraPolicy": "focus",
  967. "action": {
  968. "kind": "mechanism-operation",
  969. "targetId": "front-pump-aux-control-box-cover",
  970. "mode": "inspect",
  971. "durationMs": 1600,
  972. "tolerance": 0,
  973. "requiresPlacement": false,
  974. "cameraPolicy": "focus",
  975. "mechanism": {
  976. "type": "sequence",
  977. "axisSpace": "world",
  978. "visualTargetIds": [
  979. "front-pump-aux-control-box"
  980. ],
  981. "steps": [
  982. {
  983. "targetId": "front-pump-aux-control-box-cover",
  984. "axis": [
  985. 0,
  986. 1,
  987. 0
  988. ],
  989. "deltaDegrees": 100,
  990. "toleranceDegrees": 8,
  991. "directionHint": "沿控制盒盖边缘铰链打开",
  992. "pivotEdge": {
  993. "space": "world",
  994. "axis": [
  995. 0,
  996. 1,
  997. 0
  998. ],
  999. "edge": "nearest-vertical-edge"
  1000. }
  1001. },
  1002. {
  1003. "targetId": "front-pump-rescue-switch",
  1004. "axis": [
  1005. 0,
  1006. 0,
  1007. 1
  1008. ],
  1009. "deltaDegrees": 30,
  1010. "toleranceDegrees": 6,
  1011. "directionHint": "往上搬"
  1012. }
  1013. ]
  1014. }
  1015. },
  1016. "toolId": "",
  1017. "targetNodeId": "front-pump-aux-control-box-cover",
  1018. "targetNodeName": "5辅助控制盒盖",
  1019. "measurement": "",
  1020. "audio": {
  1021. "narrationSource": "offline",
  1022. "narrationText": "打开辅助控制盒内的“互救”开关(注:打开5辅助控制盒盖在5辅助控制盒面板上,把5互救开关往上搬)",
  1023. "narrationUrl": "",
  1024. "safetyText": "",
  1025. "safetyUrl": "",
  1026. "successCue": "ui",
  1027. "errorCue": "collision-error"
  1028. },
  1029. "faultIds": [],
  1030. "assessment": {
  1031. "weight": 20,
  1032. "requiredDimensions": [
  1033. "action",
  1034. "sequence"
  1035. ],
  1036. "passPolicy": "all-required"
  1037. }
  1038. }
  1039. ],
  1040. "executionPlan": {
  1041. "schema": "digital-workshop.training-execution-plan",
  1042. "version": 1,
  1043. "entryNodeId": "front-pump-step-01",
  1044. "traversalOrder": [
  1045. "front-pump-step-01",
  1046. "front-pump-step-02",
  1047. "front-pump-step-03",
  1048. "front-pump-step-04",
  1049. "front-pump-step-05"
  1050. ]
  1051. },
  1052. "assessment": {
  1053. "passScore": 80,
  1054. "maxScore": 100,
  1055. "totalScore": 100,
  1056. "scoringMode": "weighted-rules",
  1057. "allowRetry": true,
  1058. "recordProcess": true
  1059. },
  1060. "runtime": {
  1061. "startMode": "practice",
  1062. "offline": true,
  1063. "teacherEnabled": true,
  1064. "teacherVoiceEnabled": true,
  1065. "actionSoundEnabled": true,
  1066. "showStepPanel": true,
  1067. "showProgress": true,
  1068. "allowReplay": true,
  1069. "language": "zh-CN"
  1070. }
  1071. }
  1072. }