feat: 重构
This commit is contained in:
parent
144ec6fbf7
commit
0286064415
@ -1,5 +1,5 @@
|
||||
# 页面标题
|
||||
VITE_APP_TITLE = 招商车研AI测评机器人模拟测试平台
|
||||
VITE_APP_TITLE = 招商车研机器人智能测试管理系统
|
||||
|
||||
# 开发环境配置
|
||||
VITE_APP_ENV = 'development'
|
||||
@ -7,13 +7,8 @@ VITE_APP_ENV = 'development'
|
||||
# 招商车研物联网平台/开发环境
|
||||
VITE_APP_BASE_API = '/dev-api'
|
||||
|
||||
VITE_API_URL = http://192.168.0.222:13080
|
||||
VITE_WS_URL = ws://192.168.0.222:13080/ws
|
||||
|
||||
# explanation
|
||||
VITE_API_URL = http://192.168.0.222:14080
|
||||
VITE_WS_URL = ws://192.168.0.222:14080/ws
|
||||
VITE_PORT = 5174
|
||||
VITE_INSPECTION_TYPE = "inspection"
|
||||
VITE_INSPECTION_ARM_DEVICE_ID = "huayan_arm"
|
||||
VITE_INSPECTION_AGV_DEVICE_ID = "src1100"
|
||||
VITE_AUDIO_SERVER_URL = "ws://192.168.0.222:13080/ws/audio"
|
||||
VITE_SPEAKER_DEVICE_ID = "spk1"
|
||||
VITE_MIC_DEVICE_ID = "mic1"
|
||||
VITE_MINIO_URL = "http://192.168.28.10:9000/cmvr-iot/"
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
# 页面标题
|
||||
VITE_APP_TITLE = 智能座舱测评AI机器人
|
||||
VITE_APP_TITLE = 招商车研机器人智能测试管理系统
|
||||
|
||||
# 生产环境配置
|
||||
VITE_APP_ENV = 'production'
|
||||
@ -10,11 +10,8 @@ VITE_APP_BASE_API = '/prod-api'
|
||||
# 是否在打包时开启压缩,支持 gzip 和 brotli
|
||||
VITE_BUILD_COMPRESS = gzip
|
||||
|
||||
#node-red 服务地址
|
||||
VITE_NODE_RED_URL = 'http://10.148.108.59:13080'
|
||||
|
||||
VITE_API_URL = http://192.168.28.10:13080
|
||||
VITE_WS_URL = ws://192.168.0.201:13080/ws
|
||||
|
||||
# explanation
|
||||
VITE_INSPECTION_TYPE = "inspection"
|
||||
VITE_MINIO_URL = "http://192.168.28.10:9000/cmvr-iot/"
|
||||
|
||||
@ -1,13 +1,16 @@
|
||||
# 页面标题
|
||||
VITE_APP_TITLE = 招商车研物联网平台管理系统
|
||||
VITE_APP_TITLE = 招商车研机器人智能测试管理系统
|
||||
|
||||
# 生产环境配置
|
||||
VITE_APP_ENV = 'staging'
|
||||
|
||||
# 招商车研物联网平台管理系统/生产环境
|
||||
# 招商车研物联网平台/测试环境
|
||||
VITE_APP_BASE_API = '/stage-api'
|
||||
|
||||
# 是否在打包时开启压缩,支持 gzip 和 brotli
|
||||
VITE_BUILD_COMPRESS = gzip
|
||||
|
||||
VITE_API_URL = http://10.148.121.100:13080
|
||||
VITE_WS_URL = ws://192.168.0.201:13080/ws
|
||||
VITE_INSPECTION_TYPE = "inspection"
|
||||
VITE_MINIO_URL = "http://192.168.28.10:9000/cmvr-iot/"
|
||||
|
||||
1
.github/FUNDING.yml
vendored
Normal file
1
.github/FUNDING.yml
vendored
Normal file
@ -0,0 +1 @@
|
||||
custom: http://doc.ruoyi.vip/ruoyi-vue/other/donate.html
|
||||
5
.gitignore
vendored
5
.gitignore
vendored
@ -18,9 +18,8 @@ selenium-debug.log
|
||||
*.njsproj
|
||||
*.sln
|
||||
*.local
|
||||
.history
|
||||
|
||||
package-lock.json
|
||||
yarn.lock
|
||||
bin/
|
||||
pnpm-lock.yaml
|
||||
|
||||
.history
|
||||
|
||||
125
README.md
125
README.md
@ -1,35 +1,102 @@
|
||||
# CMVR IoT 管理控制台
|
||||
|
||||
## 前端运行
|
||||
招商车研物联网平台 Vue 3 管理端。项目以 RuoYi-Vue3 3.9.2 为新版基础框架,完整迁移原 `cmvr-iot-ui` 的业务页面、API、机器人模型和运行配置,并连接 `RuoYi-Vue-master` 中的 Spring Boot 4 后端。
|
||||
|
||||
旧前端仅作为迁移来源,不参与本项目构建。
|
||||
|
||||
## 功能范围
|
||||
|
||||
- 系统管理:用户、角色、部门、岗位、菜单、字典、参数、通知和文件。
|
||||
- 系统监控:在线用户、操作日志、登录日志、缓存、服务、Quartz 和 Druid。
|
||||
- 设备管理:设备注册、终端、机器人、相机、机械臂、灵巧手、机器人头部、麦克风、扬声器和电机。
|
||||
- 测试平台:测试项目、任务配置、任务编排、检测项、任务实例和执行流程。
|
||||
- 智能巡检:机器人、地图、点位、任务、执行实例、巡检结果、告警和驾驶舱。
|
||||
- 交互评价:语音交互、触控交互、评价指标、方案、项目和语料。
|
||||
- 智能座舱:车机界面、车辆配置、功能配置、流程编辑和执行评价。
|
||||
- 语料与媒体:语料管理、音频上传、图片预览、视频播放和 WebSocket 实时消息。
|
||||
- 开发工具:代码生成、表单构建和 Knife4j 接口文档。
|
||||
|
||||
## 技术栈
|
||||
|
||||
| 组件 | 版本 |
|
||||
| --- | --- |
|
||||
| Vue | 3.5.26 |
|
||||
| Vite | 6.4.1 |
|
||||
| Element Plus | 2.13.1 |
|
||||
| Pinia | 3.0.4 |
|
||||
| Vue Router | 4.6.4 |
|
||||
| 可视化 | ECharts、Vue Flow、Three.js、Monaco Editor、XGPlayer |
|
||||
|
||||
## 环境要求
|
||||
|
||||
- Node.js 20 LTS
|
||||
- pnpm 10
|
||||
- 后端 `RuoYi-Vue-master/cmvr-iot-admin`
|
||||
|
||||
## 开发运行
|
||||
|
||||
先启动后端,确认 `http://localhost:13080` 可以访问,然后执行:
|
||||
|
||||
```bash
|
||||
# 安装依赖
|
||||
yarn --registry=https://registry.npmmirror.com
|
||||
|
||||
# 启动服务
|
||||
yarn dev
|
||||
|
||||
# 构建测试环境 yarn build:stage
|
||||
# 构建生产环境 yarn build:prod
|
||||
# 前端访问地址 http://localhost:80
|
||||
pnpm install
|
||||
pnpm dev
|
||||
```
|
||||
|
||||
## 内置功能
|
||||
默认地址:
|
||||
|
||||
1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
|
||||
2. 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
|
||||
3. 岗位管理:配置系统用户所属担任职务。
|
||||
4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
|
||||
5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
|
||||
6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
|
||||
7. 参数管理:对系统动态配置常用参数。
|
||||
8. 通知公告:系统通知公告信息发布维护。
|
||||
9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
|
||||
10. 登录日志:系统登录日志记录查询包含登录异常。
|
||||
11. 在线用户:当前系统中活跃用户状态监控。
|
||||
12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
|
||||
13. 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
|
||||
14. 系统接口:根据业务代码自动生成相关的api接口文档。
|
||||
15. 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
|
||||
16. 缓存监控:对系统的缓存信息查询,命令统计等。
|
||||
17. 在线构建器:拖动表单元素生成相应的HTML代码。
|
||||
18. 连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
|
||||
- 前端:`http://localhost:80`
|
||||
- 后端:`http://localhost:13080`
|
||||
- Knife4j:`http://localhost:13080/doc.html`
|
||||
|
||||
开发配置位于 `.env.development`:
|
||||
|
||||
```dotenv
|
||||
VITE_APP_TITLE=招商车研物联网平台管理系统
|
||||
VITE_APP_BASE_API=/dev-api
|
||||
VITE_API_URL=http://localhost:13080
|
||||
VITE_WS_URL=ws://localhost:13080/ws
|
||||
VITE_PORT=80
|
||||
```
|
||||
|
||||
## 构建
|
||||
|
||||
```bash
|
||||
pnpm build:dev
|
||||
pnpm build:stage
|
||||
pnpm build:prod
|
||||
pnpm preview
|
||||
```
|
||||
|
||||
生产构建输出到 `dist`。部署时需要由 Nginx 或网关转发 `/prod-api`,并支持 `/ws` WebSocket、文件上传和媒体请求。
|
||||
|
||||
## 目录说明
|
||||
|
||||
```text
|
||||
public/models 机器人 URDF 和网格模型
|
||||
public/inspection 巡检机械臂模型
|
||||
src/adapters URDF/Xacro 模型适配
|
||||
src/api REST API 封装
|
||||
src/components 公共及业务组件
|
||||
src/router 公共路由和隐藏业务路由
|
||||
src/store Pinia 状态管理
|
||||
src/views/device 设备管理与设备控制
|
||||
src/views/test 测试业务
|
||||
src/views/flow 流程编排
|
||||
src/views/inspection 智能巡检
|
||||
src/views/evaluate 评价管理
|
||||
src/views/vi 语音交互
|
||||
src/views/is 智能座舱
|
||||
src/views/corpusManger 语料管理
|
||||
```
|
||||
|
||||
业务菜单由后端 `/getRouters` 动态返回。数据库菜单中的 `component` 必须与 `src/views` 下的实际页面路径一致,权限字符必须与后端控制器保持一致。
|
||||
|
||||
## 配置说明
|
||||
|
||||
- `.env.development`:本地开发地址。
|
||||
- `.env.staging`:测试环境地址。
|
||||
- `.env.production`:生产环境地址、Node-RED 和 MinIO。
|
||||
- `vite.config.js`:代理、端口、Monaco 和构建分包。
|
||||
- `src/settings.js`:布局、页签和版权配置。
|
||||
|
||||
生产密码、访问密钥和内部网络配置应通过部署环境注入,不要提交新的敏感信息。
|
||||
|
||||
12
bin/build.bat
Normal file
12
bin/build.bat
Normal file
@ -0,0 +1,12 @@
|
||||
@echo off
|
||||
echo.
|
||||
echo [信息] 打包Web工程,生成dist文件。
|
||||
echo.
|
||||
|
||||
%~d0
|
||||
cd %~dp0
|
||||
|
||||
cd ..
|
||||
yarn build:prod
|
||||
|
||||
pause
|
||||
12
bin/package.bat
Normal file
12
bin/package.bat
Normal file
@ -0,0 +1,12 @@
|
||||
@echo off
|
||||
echo.
|
||||
echo [信息] 安装Web工程,生成node_modules文件。
|
||||
echo.
|
||||
|
||||
%~d0
|
||||
cd %~dp0
|
||||
|
||||
cd ..
|
||||
yarn --registry=https://registry.npmmirror.com
|
||||
|
||||
pause
|
||||
12
bin/run-web.bat
Normal file
12
bin/run-web.bat
Normal file
@ -0,0 +1,12 @@
|
||||
@echo off
|
||||
echo.
|
||||
echo [信息] 使用 Vite 命令运行 Web 工程。
|
||||
echo.
|
||||
|
||||
%~d0
|
||||
cd %~dp0
|
||||
|
||||
cd ..
|
||||
yarn dev
|
||||
|
||||
pause
|
||||
@ -7,7 +7,7 @@
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
|
||||
<link rel="icon" href="/favicon.ico">
|
||||
<title>招商车研物联网平台管理系统</title>
|
||||
<title>%VITE_APP_TITLE%</title>
|
||||
<!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
|
||||
<style>
|
||||
html,
|
||||
|
||||
55
package.json
55
package.json
@ -1,33 +1,36 @@
|
||||
{
|
||||
"name": "changan-inspection",
|
||||
"version": "3.8.8",
|
||||
"description": "长安巡检项目",
|
||||
"version": "1.0.0",
|
||||
"description": "招商车研物联网平台管理系统前端",
|
||||
"author": "CMVR",
|
||||
"license": "MIT",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build:dev": "vite build --mode development",
|
||||
"build:prod": "vite build --mode production",
|
||||
"build:staging": "vite build --mode staging --verbose",
|
||||
"build:prod": "vite build",
|
||||
"build:stage": "vite build --mode staging",
|
||||
"build:staging": "vite build --mode staging",
|
||||
"preview": "vite preview"
|
||||
},
|
||||
"dependencies": {
|
||||
"@element-plus/icons-vue": "2.3.1",
|
||||
"@logicflow/core": "^2.0.13",
|
||||
"@logicflow/extension": "^2.0.18",
|
||||
"@cmvr/iot-common": "1.0.0",
|
||||
"@element-plus/icons-vue": "2.3.2",
|
||||
"@vue-flow/background": "^1.3.2",
|
||||
"@vue-flow/controls": "^1.1.3",
|
||||
"@vue-flow/core": "^1.48.2",
|
||||
"@vueup/vue-quill": "1.2.0",
|
||||
"@vueuse/core": "10.11.0",
|
||||
"@vueuse/core": "14.1.0",
|
||||
"ace-builds": "^1.43.0",
|
||||
"autofit.js": "^3.2.8",
|
||||
"axios": "0.28.1",
|
||||
"axios": "1.13.2",
|
||||
"clipboard": "2.0.11",
|
||||
"dayjs": "^1.11.13",
|
||||
"echarts": "5.5.1",
|
||||
"element-plus": "2.9.4",
|
||||
"echarts": "5.6.0",
|
||||
"element-plus": "2.13.1",
|
||||
"file-saver": "2.0.5",
|
||||
"fuse.js": "6.6.2",
|
||||
"js-beautify": "1.14.11",
|
||||
"fuse.js": "7.1.0",
|
||||
"js-beautify": "1.15.4",
|
||||
"js-cookie": "3.0.5",
|
||||
"jsencrypt": "3.3.2",
|
||||
"json-editor-vue": "^0.18.1",
|
||||
@ -36,32 +39,38 @@
|
||||
"monaco-editor": "^0.55.1",
|
||||
"nprogress": "0.2.0",
|
||||
"pako": "^2.1.0",
|
||||
"pinia": "2.1.7",
|
||||
"pnpm": "^10.23.0",
|
||||
"pinia": "3.0.4",
|
||||
"socket.io-client": "^4.8.1",
|
||||
"sockjs-client": "^1.6.1",
|
||||
"sortablejs": "^1.15.6",
|
||||
"splitpanes": "3.1.5",
|
||||
"three": "^0.181.2",
|
||||
"urdf-loader": "^0.12.6",
|
||||
"uuid": "^11.1.0",
|
||||
"vue": "3.4.31",
|
||||
"vue": "3.5.26",
|
||||
"vue-cropper": "1.1.1",
|
||||
"vue-router": "4.4.0",
|
||||
"vue-router": "4.6.4",
|
||||
"vue3-ace-editor": "^2.2.4",
|
||||
"vue3-json-viewer": "2.3.0",
|
||||
"vuedraggable": "4.1.0",
|
||||
"xacro-parser": "^0.3.11",
|
||||
"xgplayer": "^3.0.22"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vitejs/plugin-vue": "5.0.5",
|
||||
"file-loader": "^6.2.0",
|
||||
"sass": "1.77.5",
|
||||
"unplugin-auto-import": "0.17.6",
|
||||
"@vitejs/plugin-vue": "5.2.4",
|
||||
"sass-embedded": "1.97.2",
|
||||
"unplugin-auto-import": "0.18.6",
|
||||
"unplugin-vue-setup-extend-plus": "1.0.1",
|
||||
"vite": "5.3.2",
|
||||
"vite": "6.4.1",
|
||||
"vite-plugin-compression": "0.5.1",
|
||||
"vite-plugin-monaco-editor": "^1.1.0",
|
||||
"vite-plugin-svg-icons": "2.0.1"
|
||||
},
|
||||
"packageManager": "pnpm@9.15.9+sha512.68046141893c66fad01c079231128e9afb89ef87e2691d69e4d40eee228988295fd4682181bae55b58418c3a253bde65a505ec7c5f9403ece5cc3cd37dcf2531"
|
||||
"overrides": {
|
||||
"quill": "2.0.2"
|
||||
},
|
||||
"resolutions": {
|
||||
"quill": "2.0.2"
|
||||
},
|
||||
"packageManager": "pnpm@10.24.0"
|
||||
}
|
||||
|
||||
6000
pnpm-lock.yaml
generated
Normal file
6000
pnpm-lock.yaml
generated
Normal file
File diff suppressed because it is too large
Load Diff
6
pnpm-workspace.yaml
Normal file
6
pnpm-workspace.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
allowBuilds:
|
||||
core-js: true
|
||||
es5-ext: true
|
||||
esbuild: true
|
||||
json-editor-vue: true
|
||||
vue-demi: true
|
||||
660
public/models/dual_arm.urdf
Normal file
660
public/models/dual_arm.urdf
Normal file
@ -0,0 +1,660 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<robot name="dual_arm">
|
||||
<mujoco>
|
||||
<compiler
|
||||
meshdir="meshes"
|
||||
balanceinertia="true"
|
||||
discardvisual="false" />
|
||||
</mujoco>
|
||||
|
||||
|
||||
<link name="base_link">
|
||||
<visual>
|
||||
<origin xyz="0 0 0.6" rpy="0 0 0"/>
|
||||
<geometry>
|
||||
<cylinder radius="0.05" length="1.2"/>
|
||||
</geometry>
|
||||
<material name="gray">
|
||||
<color rgba="0.5 0.5 0.5 1.0"/>
|
||||
</material>
|
||||
</visual>
|
||||
|
||||
<collision>
|
||||
<origin xyz="0 0 0.6" rpy="0 0 0"/>
|
||||
<geometry>
|
||||
<cylinder radius="0.05" length="1.2"/>
|
||||
</geometry>
|
||||
</collision>
|
||||
|
||||
<inertial>
|
||||
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<mass value="25.4469"/>
|
||||
|
||||
<inertia
|
||||
ixx="3.06953"
|
||||
ixy="0.0"
|
||||
ixz="0.0"
|
||||
iyy="3.06953"
|
||||
iyz="0.0"
|
||||
izz="0.03181"/>
|
||||
</inertial>
|
||||
</link>
|
||||
|
||||
<joint name="base_fixed" type="fixed">
|
||||
<origin rpy="0 0 0" xyz="0 0 1.2"/>
|
||||
<parent link="base_link"/>
|
||||
<child link="PELVIS_S"/>
|
||||
</joint>
|
||||
|
||||
<link name="PELVIS_S">
|
||||
<inertial>
|
||||
<origin xyz="3.78529087037144E-05 3.81781425684836E-07 0.0386396273530852" rpy="0 0 0" />
|
||||
<mass value="2.10624590271277" />
|
||||
<inertia
|
||||
ixx="0.00165706865324979"
|
||||
ixy="3.13663044821662E-09"
|
||||
ixz="6.84209533216046E-07"
|
||||
iyy="0.00136736758630241"
|
||||
iyz="-1.01014607878816E-10"
|
||||
izz="0.00168295663089359" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/PELVIS_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.698039215686274 0.698039215686274 0.698039215686274 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/PELVIS_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<link name="L_SHOULDER_P_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00982258725282134 0.0704593083751867 1.15261874861217E-06" rpy="0 0 0" />
|
||||
<mass value="0.880737519698403" />
|
||||
<inertia
|
||||
ixx="0.000583190308378148"
|
||||
ixy="-1.53153074560473E-05"
|
||||
ixz="6.58466471754072E-09"
|
||||
iyy="0.000445532440067177"
|
||||
iyz="6.37001404038516E-09"
|
||||
izz="0.000465648071069952" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_P_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.898039215686275 0.917647058823529 0.929411764705882 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_P_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_SHOULDER_P" type="revolute">
|
||||
<origin xyz="0 0.0945 0.042" rpy="0 0 0" />
|
||||
<parent link="PELVIS_S" />
|
||||
<child link="L_SHOULDER_P_S" />
|
||||
<axis xyz="0 1 0" />
|
||||
<limit lower="-1.57" upper="1.57" effort="120" velocity="3.351" />
|
||||
</joint>
|
||||
|
||||
<link name="L_SHOULDER_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0346025282975857 0.091739327988169 -1.67085072999562E-08" rpy="0 0 0" />
|
||||
<mass value="0.594788424442483" />
|
||||
<inertia
|
||||
ixx="0.000380970396712656"
|
||||
ixy="4.80751844573946E-05"
|
||||
ixz="-1.34913746586865E-11"
|
||||
iyy="0.000320962178597474"
|
||||
iyz="-1.00039763442409E-09"
|
||||
izz="0.000414771047901155" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_SHOULDER_R" type="revolute">
|
||||
<origin xyz="0.035 0.0765 0" rpy="0 0 0" />
|
||||
<parent link="L_SHOULDER_P_S" />
|
||||
<child link="L_SHOULDER_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="-2" upper="2" effort="120" velocity="3.351" />
|
||||
</joint>
|
||||
|
||||
<link name="L_SHOULDER_Y_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00440976862014801 0.0863620459174068 9.50748668682166E-09"
|
||||
rpy="0 0 0" />
|
||||
<mass value="0.563406026626801" />
|
||||
<inertia
|
||||
ixx="0.000327003834287552"
|
||||
ixy="-1.8057438966771E-05"
|
||||
ixz="7.28778136267901E-10"
|
||||
iyy="0.000213830709361531"
|
||||
iyz="1.49273668517817E-10"
|
||||
izz="0.000297341029639189" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_Y_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_Y_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_SHOULDER_Y" type="revolute">
|
||||
<origin xyz="-0.035 0.1475 0" rpy="0 0 0" />
|
||||
<parent link="L_SHOULDER_R_S" />
|
||||
<child link="L_SHOULDER_Y_S" />
|
||||
<axis xyz="0 1 0" />
|
||||
<limit lower="-2.18" upper="0" effort="80" velocity="3.8758" />
|
||||
</joint>
|
||||
|
||||
<link name="L_ELBOW_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0335624237303443 0.0603199964106564 2.99655911639718E-07" rpy="0 0 0" />
|
||||
<mass value="0.393571904406493" />
|
||||
<inertia
|
||||
ixx="0.00017277119386253"
|
||||
ixy="2.34549801867355E-05"
|
||||
ixz="-1.90560556659271E-09"
|
||||
iyy="0.000155340245267897"
|
||||
iyz="8.82493073600007E-09"
|
||||
izz="0.00018104232734159" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_ELBOW_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_ELBOW_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_ELBOW_R" type="revolute">
|
||||
<origin xyz="0.034 0.1025 0" rpy="0 0 0" />
|
||||
<parent link="L_SHOULDER_Y_S" />
|
||||
<child link="L_ELBOW_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="-2.05" upper="0" effort="50" velocity="4.71" />
|
||||
</joint>
|
||||
|
||||
<link name="L_WRIST_P_S">
|
||||
<inertial>
|
||||
<origin xyz="-1.39659173115092E-10 0.0675972604744393 0.019200551565574" rpy="0 0 0" />
|
||||
<mass value="0.442332465815496" />
|
||||
<inertia
|
||||
ixx="0.000476754055455895"
|
||||
ixy="-4.61505824713347E-15"
|
||||
ixz="6.03808112272229E-18"
|
||||
iyy="0.000103466585850499"
|
||||
iyz="-4.88426705501198E-05"
|
||||
izz="0.000482956345754213" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_P_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.698039215686274 0.698039215686274 0.698039215686274 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_P_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_WRIST_P" type="revolute">
|
||||
<origin xyz="-0.034 0.0965 0" rpy="0 0 0" />
|
||||
<parent link="L_ELBOW_R_S" />
|
||||
<child link="L_WRIST_P_S" />
|
||||
<axis xyz="0 1 0" />
|
||||
<limit lower="0" upper="3.14" effort="50" velocity="4.71" />
|
||||
</joint>
|
||||
|
||||
<link name="L_WRIST_Y_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00464135887331864 -5.06426789392833E-10 -0.0341253783666609" rpy="0 0 0" />
|
||||
<mass value="0.23573847772002" />
|
||||
<inertia
|
||||
ixx="5.10686940455785E-05"
|
||||
ixy="7.45706654358429E-16"
|
||||
ixz="6.2619568923368E-06"
|
||||
iyy="6.00636019624519E-05"
|
||||
iyz="1.27989654155383E-16"
|
||||
izz="5.32182903609189E-05" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_Y_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.647058823529412 0.619607843137255 0.588235294117647 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_Y_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_WRIST_Y" type="revolute">
|
||||
<origin xyz="0 0.1525 0.039" rpy="0 0 0" />
|
||||
<parent link="L_WRIST_P_S" />
|
||||
<child link="L_WRIST_Y_S" />
|
||||
<axis xyz="0 0 1" />
|
||||
<limit lower="-0.78" upper="0.78" effort="50" velocity="0.79" />
|
||||
</joint>
|
||||
|
||||
<link name="L_WRIST_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0161477357620243 0.0955046558857351 -0.00499392489444117" rpy="0 0 0" />
|
||||
<mass value="0.504894112043562" />
|
||||
<inertia
|
||||
ixx="0.000186833711781125"
|
||||
ixy="-3.99488705622731E-06"
|
||||
ixz="-1.51920720398336E-06"
|
||||
iyy="0.000179960980467837"
|
||||
iyz="3.6992669535716E-06"
|
||||
izz="0.000280756101568308" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_WRIST_R" type="revolute">
|
||||
<origin xyz="0.0258 0 -0.039" rpy="0 0 0" />
|
||||
<parent link="L_WRIST_Y_S" />
|
||||
<child link="L_WRIST_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="-1.57" upper="0.26" effort="50" velocity="4.71" />
|
||||
</joint>
|
||||
|
||||
<link name="R_SHOULDER_P_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00982258725282141 -0.0704593093873431 -1.15069920925137E-06" rpy="0 0 0" />
|
||||
<mass value="0.880737519698404" />
|
||||
<inertia
|
||||
ixx="0.000583190308378149"
|
||||
ixy="1.53153074560471E-05"
|
||||
ixz="-6.58466471736542E-09"
|
||||
iyy="0.000445532440067178"
|
||||
iyz="6.37001403998779E-09"
|
||||
izz="0.000465648071069953" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_P_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_P_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_SHOULDER_P" type="revolute">
|
||||
<origin xyz="0 -0.0945 0.042" rpy="0 0 0" />
|
||||
<parent link="PELVIS_S" />
|
||||
<child link="R_SHOULDER_P_S" />
|
||||
<axis xyz="0 -1 0" />
|
||||
<limit lower="-3.14" upper="3.14" effort="120" velocity="3.351" />
|
||||
</joint>
|
||||
|
||||
<link name="R_SHOULDER_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0346025282975784 -0.09173932900033 1.86280643132974E-08" rpy="0 0 0" />
|
||||
<mass value="0.59478842444248" />
|
||||
<inertia
|
||||
ixx="0.000380970396712653"
|
||||
ixy="-4.80751844573946E-05"
|
||||
ixz="1.34913746041655E-11"
|
||||
iyy="0.000320962178597472"
|
||||
iyz="-1.00039763417375E-09"
|
||||
izz="0.000414771047901152" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_SHOULDER_R" type="revolute">
|
||||
<origin xyz="0.035 -0.0765 0" rpy="0 0 0" />
|
||||
<parent link="R_SHOULDER_P_S" />
|
||||
<child link="R_SHOULDER_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="-0.78" upper="1.57" effort="120" velocity="3.351" />
|
||||
</joint>
|
||||
|
||||
<link name="R_SHOULDER_Y_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00440976862014946 -0.0863620469295699 -7.58791862676134E-09" rpy="0 0 0" />
|
||||
<mass value="0.563406026626801" />
|
||||
<inertia
|
||||
ixx="0.000327003834287551"
|
||||
ixy="1.80574389667711E-05"
|
||||
ixz="-7.28778136077729E-10"
|
||||
iyy="0.000213830709361532"
|
||||
iyz="1.49273668428957E-10"
|
||||
izz="0.000297341029639189" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_Y_S.STL" />
|
||||
</geometry>
|
||||
<material
|
||||
name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_Y_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_SHOULDER_Y" type="revolute">
|
||||
<origin xyz="-0.035 -0.1475 0" rpy="0 0 0" />
|
||||
<parent link="R_SHOULDER_R_S" />
|
||||
<child link="R_SHOULDER_Y_S" />
|
||||
<axis xyz="0 -1 0" />
|
||||
<limit lower="-3.14" upper="3.14" effort="80" velocity="3.8758" />
|
||||
</joint>
|
||||
|
||||
<link name="R_ELBOW_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0335624237303424 -0.0603199974228191 -2.97736340082455E-07" rpy="0 0 0" />
|
||||
<mass value="0.393571904406492" />
|
||||
<inertia
|
||||
ixx="0.000172771193862529"
|
||||
ixy="-2.34549801867353E-05"
|
||||
ixz="1.90560556668771E-09"
|
||||
iyy="0.000155340245267897"
|
||||
iyz="8.82493073602971E-09"
|
||||
izz="0.00018104232734159" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_ELBOW_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_ELBOW_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_ELBOW_R" type="revolute">
|
||||
<origin xyz="0.034 -0.1025 0" rpy="0 0 0" />
|
||||
<parent link="R_SHOULDER_Y_S" />
|
||||
<child link="R_ELBOW_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="0" upper="2.05" effort="80" velocity="3.8758" />
|
||||
</joint>
|
||||
|
||||
<link name="R_WRIST_P_S">
|
||||
<inertial>
|
||||
<origin xyz="-1.39656577968772E-10 -0.0675972614865965 0.0192005515655728" rpy="0 0 0" />
|
||||
<mass value="0.442332465815497" />
|
||||
<inertia
|
||||
ixx="0.000476754055455896"
|
||||
ixy="-4.61462558956188E-15"
|
||||
ixz="-5.91762926004267E-18"
|
||||
iyy="0.0001034665858505"
|
||||
iyz="4.88426705501212E-05"
|
||||
izz="0.000482956345754214" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_P_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.647058823529412 0.619607843137255 0.588235294117647 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_P_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_WRIST_P" type="revolute">
|
||||
<origin xyz="-0.034 -0.0965 0" rpy="0 0 0" />
|
||||
<parent link="R_ELBOW_R_S" />
|
||||
<child link="R_WRIST_P_S" />
|
||||
<axis xyz="0 -1 0" />
|
||||
<limit lower="-3.14" upper="3.14" effort="50" velocity="4.71" />
|
||||
</joint>
|
||||
|
||||
<link name="R_WRIST_Y_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00464135887330083 -5.06426456325926E-10 -0.0341253783666614" rpy="0 0 0" />
|
||||
<mass value="0.235738477720019" />
|
||||
<inertia
|
||||
ixx="5.1068694045578E-05"
|
||||
ixy="7.45771487459288E-16"
|
||||
ixz="6.26195689233664E-06"
|
||||
iyy="6.00636019624515E-05"
|
||||
iyz="1.27828046342987E-16"
|
||||
izz="5.32182903609188E-05" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_Y_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.647058823529412 0.619607843137255 0.588235294117647 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_Y_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_WRIST_Y" type="revolute">
|
||||
<origin xyz="0 -0.1525 0.039" rpy="0 0 0" />
|
||||
<parent link="R_WRIST_P_S" />
|
||||
<child link="R_WRIST_Y_S" />
|
||||
<axis xyz="0 0 1" />
|
||||
<limit lower="-0.78" upper="0.78" effort="50" velocity="0.79" />
|
||||
</joint>
|
||||
|
||||
<link name="R_WRIST_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0201642233698132 -0.11074968386657 -0.00598955339232021" rpy="0 0 0" />
|
||||
<mass value="0.504366058218534" />
|
||||
<inertia
|
||||
ixx="0.000185559065855467"
|
||||
ixy="5.75889766751509E-06"
|
||||
ixz="2.40683898454438E-06"
|
||||
iyy="0.000131246007872084"
|
||||
iyz="1.60533277040148E-06"
|
||||
izz="0.000271800951396149" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_R_S.STL" />
|
||||
</geometry>
|
||||
<material
|
||||
name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_WRIST_R" type="revolute">
|
||||
<origin xyz="0.03 0 -0.039" rpy="0 0 0" />
|
||||
<parent link="R_WRIST_Y_S" />
|
||||
<child link="R_WRIST_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="-0.26" upper="1.57" effort="50" velocity="4.71" />
|
||||
</joint>
|
||||
|
||||
<link name="R_FINGER_TIP">
|
||||
<inertial>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<mass value="0"/>
|
||||
<inertia ixx="1e-6" ixy="0" ixz="0" iyy="1e-6" iyz="0" izz="1e-6"/>
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<geometry>
|
||||
<sphere radius="0.004"/>
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0 1 1 1"/> <!-- 绿色 -->
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<geometry>
|
||||
<sphere radius="0.005"/>
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_FINGER_TIP_FIXED" type="fixed">
|
||||
<origin xyz="0.00684256 -0.284077 0.00801525" rpy="0 0 0"/>
|
||||
<parent link="R_WRIST_R_S"/>
|
||||
<child link="R_FINGER_TIP"/>
|
||||
<axis xyz="0 0 1"/>
|
||||
</joint>
|
||||
|
||||
<link name="R_CAM">
|
||||
<inertial>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<mass value="0"/>
|
||||
<inertia ixx="1e-6" ixy="0" ixz="0" iyy="1e-6" iyz="0" izz="1e-6"/>
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<geometry>
|
||||
<sphere radius="0.004"/>
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0 1 0 1"/> <!-- 绿色 -->
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<geometry>
|
||||
<sphere radius="0.005"/>
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_CAM_FIXED" type="fixed">
|
||||
<origin xyz="-0.01212 -0.17655 0.07506" rpy="-1.5707963267 0 3.1415926535"/>
|
||||
<parent link="R_WRIST_R_S"/>
|
||||
<child link="R_CAM"/>
|
||||
<axis xyz="0 0 1"/>
|
||||
</joint>
|
||||
|
||||
</robot>
|
||||
281
public/models/left_arm.urdf
Normal file
281
public/models/left_arm.urdf
Normal file
@ -0,0 +1,281 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<robot name="left_arm">
|
||||
<mujoco>
|
||||
<compiler
|
||||
meshdir="meshes"
|
||||
balanceinertia="true"
|
||||
discardvisual="false" />
|
||||
</mujoco>
|
||||
<link name="base_link">
|
||||
<visual>
|
||||
<geometry>
|
||||
<cylinder radius="0.05" length="1.2"/>
|
||||
</geometry>
|
||||
<material name="gray">
|
||||
<color rgba="0.5 0.5 0.5 1.0"/>
|
||||
</material>
|
||||
</visual>
|
||||
|
||||
<collision>
|
||||
<geometry>
|
||||
<cylinder radius="0.05" length="1.2"/>
|
||||
</geometry>
|
||||
</collision>
|
||||
|
||||
<inertial>
|
||||
<mass value="20.0"/>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0"/>
|
||||
</inertial>
|
||||
</link>
|
||||
|
||||
<joint name="base_fixed" type="fixed">
|
||||
<origin rpy="0 0 0.0" xyz="0 0 0.6"/>
|
||||
<parent link="base_link"/>
|
||||
<child link="PELVIS_S"/>
|
||||
<axis xyz="0 0 0"/>
|
||||
</joint>
|
||||
|
||||
<link name="PELVIS_S">
|
||||
<inertial>
|
||||
<origin xyz="3.78529087037144E-05 3.81781425684836E-07 0.0386396273530852" rpy="0 0 0" />
|
||||
<mass value="2.10624590271277" />
|
||||
<inertia ixx="0.00165706865324979" ixy="3.13663044821662E-09" ixz="6.84209533216046E-07" iyy="0.00136736758630241" iyz="-1.01014607878816E-10" izz="0.00168295663089359" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/PELVIS_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.698039215686274 0.698039215686274 0.698039215686274 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/PELVIS_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_SHOULDER_P" type="revolute">
|
||||
<origin xyz="0 0.0945 0.042" rpy="0 0 0" />
|
||||
<parent link="PELVIS_S" />
|
||||
<child link="L_SHOULDER_P_S" />
|
||||
<axis xyz="0 1 0" />
|
||||
<limit lower="-3.14" upper="3.14" effort="100" velocity="3.351" />
|
||||
</joint>
|
||||
|
||||
<link name="L_SHOULDER_P_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00982258725282134 0.0704593083751867 1.15261874861217E-06" rpy="0 0 0" />
|
||||
<mass value="0.880737519698403" />
|
||||
<inertia ixx="0.000583190308378148" ixy="-1.53153074560473E-05" ixz="6.58466471754072E-09" iyy="0.000445532440067177" iyz="6.37001404038516E-09" izz="0.000465648071069952" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_P_S.STL" />
|
||||
</geometry>
|
||||
<material
|
||||
name="">
|
||||
<color rgba="0.898039215686275 0.917647058823529 0.929411764705882 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_P_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_SHOULDER_R" type="revolute">
|
||||
<origin xyz="0.035 0.0765 0" rpy="0 0 0" />
|
||||
<parent link="L_SHOULDER_P_S" />
|
||||
<child link="L_SHOULDER_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="-3.14" upper="3.14" effort="100" velocity="3.351" />
|
||||
</joint>
|
||||
|
||||
<link name="L_SHOULDER_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0346025282975857 0.091739327988169 -1.67085072999562E-08" rpy="0 0 0" />
|
||||
<mass value="0.594788424442483" />
|
||||
<inertia ixx="0.000380970396712656" ixy="4.80751844573946E-05" ixz="-1.34913746586865E-11" iyy="0.000320962178597474" iyz="-1.00039763442409E-09" izz="0.000414771047901155" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_SHOULDER_Y" type="revolute">
|
||||
<origin xyz="-0.035 0.1475 0" rpy="0 0 0" />
|
||||
<parent link="L_SHOULDER_R_S" />
|
||||
<child link="L_SHOULDER_Y_S" />
|
||||
<axis xyz="0 1 0" />
|
||||
<limit lower="-3.14" upper="3.14" effort="49" velocity="3.8758" />
|
||||
</joint>
|
||||
|
||||
<link name="L_SHOULDER_Y_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00440976862014801 0.0863620459174068 9.50748668682166E-09" rpy="0 0 0" />
|
||||
<mass value="0.563406026626801" />
|
||||
<inertia ixx="0.000327003834287552" ixy="-1.8057438966771E-05" ixz="7.28778136267901E-10" iyy="0.000213830709361531" iyz="1.49273668517817E-10" izz="0.000297341029639189" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_Y_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_SHOULDER_Y_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_ELBOW_R" type="revolute">
|
||||
<origin xyz="0.034 0.1025 0" rpy="0 0 0" />
|
||||
<parent link="L_SHOULDER_Y_S" />
|
||||
<child link="L_ELBOW_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="-3.14" upper="3.14" effort="49" velocity="3.8758" />
|
||||
</joint>
|
||||
|
||||
<link name="L_ELBOW_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0335624237303443 0.0603199964106564 2.99655911639718E-07" rpy="0 0 0" />
|
||||
<mass value="0.393571904406493" />
|
||||
<inertia ixx="0.00017277119386253" ixy="2.34549801867355E-05" ixz="-1.90560556659271E-09" iyy="0.000155340245267897" iyz="8.82493073600007E-09" izz="0.00018104232734159" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_ELBOW_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_ELBOW_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_WRIST_P" type="revolute">
|
||||
<origin xyz="-0.034 0.0965 0" rpy="0 0 0" />
|
||||
<parent link="L_ELBOW_R_S" />
|
||||
<child link="L_WRIST_P_S" />
|
||||
<axis xyz="0 1 0" />
|
||||
<limit lower="-3.14" upper="3.14" effort="26" velocity="4.19" />
|
||||
</joint>
|
||||
|
||||
<link name="L_WRIST_P_S">
|
||||
<inertial>
|
||||
<origin xyz="-1.39659173115092E-10 0.0675972604744393 0.019200551565574" rpy="0 0 0" />
|
||||
<mass value="0.442332465815496" />
|
||||
<inertia ixx="0.000476754055455895" ixy="-4.61505824713347E-15" ixz="6.03808112272229E-18" iyy="0.000103466585850499" iyz="-4.88426705501198E-05" izz="0.000482956345754213" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_P_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.698039215686274 0.698039215686274 0.698039215686274 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_P_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_WRIST_Y" type="revolute">
|
||||
<origin xyz="0 0.1525 0.039" rpy="0 0 0" />
|
||||
<parent link="L_WRIST_P_S" />
|
||||
<child link="L_WRIST_Y_S" />
|
||||
<axis xyz="0 0 1" />
|
||||
<limit lower="-3.14" upper="3.14" effort="26" velocity="4.71" />
|
||||
</joint>
|
||||
|
||||
<link name="L_WRIST_Y_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00464135887331864 -5.06426789392833E-10 -0.0341253783666609" rpy="0 0 0" />
|
||||
<mass value="0.23573847772002" />
|
||||
<inertia ixx="5.10686940455785E-05" ixy="7.45706654358429E-16" ixz="6.2619568923368E-06" iyy="6.00636019624519E-05" iyz="1.27989654155383E-16" izz="5.32182903609189E-05" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_Y_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.647058823529412 0.619607843137255 0.588235294117647 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_Y_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="L_WRIST_R" type="revolute">
|
||||
<origin xyz="0.0258 0 -0.039" rpy="0 0 0" />
|
||||
<parent link="L_WRIST_Y_S" />
|
||||
<child link="L_WRIST_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="-3.14" upper="3.14" effort="26" velocity="4.71" />
|
||||
</joint>
|
||||
|
||||
<link name="L_WRIST_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0161477357620243 0.0955046558857351 -0.00499392489444117" rpy="0 0 0" />
|
||||
<mass value="0.504894112043562" />
|
||||
<inertia ixx="0.000186833711781125" ixy="-3.99488705622731E-06" ixz="-1.51920720398336E-06" iyy="0.000179960980467837" iyz="3.6992669535716E-06" izz="0.000280756101568308" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/L_WRIST_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
|
||||
</robot>
|
||||
BIN
public/models/meshes/L_ELBOW_R_S.STL
Normal file
BIN
public/models/meshes/L_ELBOW_R_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/L_SHOULDER_P_S.STL
Normal file
BIN
public/models/meshes/L_SHOULDER_P_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/L_SHOULDER_R_S.STL
Normal file
BIN
public/models/meshes/L_SHOULDER_R_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/L_SHOULDER_Y_S.STL
Normal file
BIN
public/models/meshes/L_SHOULDER_Y_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/L_WRIST_P_S.STL
Normal file
BIN
public/models/meshes/L_WRIST_P_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/L_WRIST_R_S.STL
Normal file
BIN
public/models/meshes/L_WRIST_R_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/L_WRIST_Y_S.STL
Normal file
BIN
public/models/meshes/L_WRIST_Y_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/NECK_P_S.STL
Normal file
BIN
public/models/meshes/NECK_P_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/NECK_R_S.STL
Normal file
BIN
public/models/meshes/NECK_R_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/NECK_Y_S.STL
Normal file
BIN
public/models/meshes/NECK_Y_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/PELVIS_S.STL
Normal file
BIN
public/models/meshes/PELVIS_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/R_ELBOW_R_S.STL
Normal file
BIN
public/models/meshes/R_ELBOW_R_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/R_SHOULDER_P_S.STL
Normal file
BIN
public/models/meshes/R_SHOULDER_P_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/R_SHOULDER_R_S.STL
Normal file
BIN
public/models/meshes/R_SHOULDER_R_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/R_SHOULDER_Y_S.STL
Normal file
BIN
public/models/meshes/R_SHOULDER_Y_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/R_WRIST_P_S.STL
Normal file
BIN
public/models/meshes/R_WRIST_P_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/R_WRIST_R_S.STL
Normal file
BIN
public/models/meshes/R_WRIST_R_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/R_WRIST_Y_S.STL
Normal file
BIN
public/models/meshes/R_WRIST_Y_S.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/base_link.STL
Normal file
BIN
public/models/meshes/base_link.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/index_force_sensor_1.STL
Normal file
BIN
public/models/meshes/index_force_sensor_1.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/index_force_sensor_2.STL
Normal file
BIN
public/models/meshes/index_force_sensor_2.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/index_force_sensor_3.STL
Normal file
BIN
public/models/meshes/index_force_sensor_3.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/little_force_sensor_1.STL
Normal file
BIN
public/models/meshes/little_force_sensor_1.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/little_force_sensor_2.STL
Normal file
BIN
public/models/meshes/little_force_sensor_2.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/little_force_sensor_3.STL
Normal file
BIN
public/models/meshes/little_force_sensor_3.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/middle_force_sensor_1.STL
Normal file
BIN
public/models/meshes/middle_force_sensor_1.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/middle_force_sensor_2.STL
Normal file
BIN
public/models/meshes/middle_force_sensor_2.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/middle_force_sensor_3.STL
Normal file
BIN
public/models/meshes/middle_force_sensor_3.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/palm_force_sensor.STL
Normal file
BIN
public/models/meshes/palm_force_sensor.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_index_1.STL
Normal file
BIN
public/models/meshes/right_index_1.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_index_2.STL
Normal file
BIN
public/models/meshes/right_index_2.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_little_1.STL
Normal file
BIN
public/models/meshes/right_little_1.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_little_2.STL
Normal file
BIN
public/models/meshes/right_little_2.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_middle_1.STL
Normal file
BIN
public/models/meshes/right_middle_1.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_middle_2.STL
Normal file
BIN
public/models/meshes/right_middle_2.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_ring_1.STL
Normal file
BIN
public/models/meshes/right_ring_1.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_ring_2.STL
Normal file
BIN
public/models/meshes/right_ring_2.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_thumb_1.STL
Normal file
BIN
public/models/meshes/right_thumb_1.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_thumb_2.STL
Normal file
BIN
public/models/meshes/right_thumb_2.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_thumb_3.STL
Normal file
BIN
public/models/meshes/right_thumb_3.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/right_thumb_4.STL
Normal file
BIN
public/models/meshes/right_thumb_4.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/ring_force_sensor_1.STL
Normal file
BIN
public/models/meshes/ring_force_sensor_1.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/ring_force_sensor_2.STL
Normal file
BIN
public/models/meshes/ring_force_sensor_2.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/ring_force_sensor_3.STL
Normal file
BIN
public/models/meshes/ring_force_sensor_3.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/thumb_force_sensor_1.STL
Normal file
BIN
public/models/meshes/thumb_force_sensor_1.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/thumb_force_sensor_2.STL
Normal file
BIN
public/models/meshes/thumb_force_sensor_2.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/thumb_force_sensor_3.STL
Normal file
BIN
public/models/meshes/thumb_force_sensor_3.STL
Normal file
Binary file not shown.
BIN
public/models/meshes/thumb_force_sensor_4.STL
Normal file
BIN
public/models/meshes/thumb_force_sensor_4.STL
Normal file
Binary file not shown.
322
public/models/right_arm.urdf
Normal file
322
public/models/right_arm.urdf
Normal file
@ -0,0 +1,322 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<robot name="right_arm">
|
||||
<mujoco>
|
||||
<compiler
|
||||
meshdir="meshes"
|
||||
balanceinertia="true"
|
||||
discardvisual="false" />
|
||||
</mujoco>
|
||||
<link name="PELVIS_S">
|
||||
<inertial>
|
||||
<origin xyz="3.78529e-05 3.81781e-07 0.0386396" rpy="0 0 0"/>
|
||||
<mass value="2.10624590271277"/>
|
||||
<inertia
|
||||
ixx="0.00165706865324979" ixy="3.13663e-09" ixz="6.84210e-07"
|
||||
iyy="0.00136736758630241" iyz="-1.01015e-10" izz="0.00168295663089359"/>
|
||||
</inertial>
|
||||
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<geometry>
|
||||
<mesh filename="meshes/PELVIS_S.STL"/>
|
||||
</geometry>
|
||||
<material name="light_gray">
|
||||
<color rgba="0.698 0.698 0.698 1"/>
|
||||
</material>
|
||||
</visual>
|
||||
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<geometry>
|
||||
<mesh filename="meshes/PELVIS_S.STL"/>
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<link name="R_SHOULDER_P_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00982258725282141 -0.0704593093873431 -1.15069920925137E-06" rpy="0 0 0" />
|
||||
<mass value="0.880737519698404" />
|
||||
<inertia
|
||||
ixx="0.000583190308378149"
|
||||
ixy="1.53153074560471E-05"
|
||||
ixz="-6.58466471736542E-09"
|
||||
iyy="0.000445532440067178"
|
||||
iyz="6.37001403998779E-09"
|
||||
izz="0.000465648071069953" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_P_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin
|
||||
xyz="0 0 0"
|
||||
rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_P_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_SHOULDER_P" type="revolute">
|
||||
<origin xyz="0 -0.0945 0.042" rpy="0 0 0" />
|
||||
<parent link="PELVIS_S" />
|
||||
<child link="R_SHOULDER_P_S" />
|
||||
<axis xyz="0 -1 0" />
|
||||
<limit lower="-1.57" upper="1.57" effort="120" velocity="3.351" />
|
||||
</joint>
|
||||
|
||||
<link name="R_SHOULDER_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0346025282975784 -0.09173932900033 1.86280643132974E-08" rpy="0 0 0" />
|
||||
<mass value="0.59478842444248" />
|
||||
<inertia
|
||||
ixx="0.000380970396712653" ixy="-4.80751844573946E-05" ixz="1.34913746041655E-11"
|
||||
iyy="0.000320962178597472" iyz="-1.00039763417375E-09" izz="0.000414771047901152" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_SHOULDER_R" type="revolute">
|
||||
<origin xyz="0.035 -0.0765 0" rpy="0 0 0" />
|
||||
<parent link="R_SHOULDER_P_S" />
|
||||
<child link="R_SHOULDER_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="-2" upper="2" effort="120" velocity="3.351" />
|
||||
</joint>
|
||||
|
||||
<link name="R_SHOULDER_Y_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00440976862014946 -0.0863620469295699 -7.58791862676134E-09" rpy="0 0 0" />
|
||||
<mass value="0.563406026626801" />
|
||||
<inertia
|
||||
ixx="0.000327003834287551"
|
||||
ixy="1.80574389667711E-05"
|
||||
ixz="-7.28778136077729E-10"
|
||||
iyy="0.000213830709361532"
|
||||
iyz="1.49273668428957E-10"
|
||||
izz="0.000297341029639189" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_Y_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_SHOULDER_Y_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_SHOULDER_Y" type="revolute">
|
||||
<origin xyz="-0.035 -0.1475 0" rpy="0 0 0" />
|
||||
<parent link="R_SHOULDER_R_S" />
|
||||
<child link="R_SHOULDER_Y_S" />
|
||||
<axis xyz="0 -1 0" />
|
||||
<limit lower="0" upper="3.14" effort="80" velocity="3.8758" />
|
||||
</joint>
|
||||
|
||||
<link name="R_ELBOW_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0335624237303424 -0.0603199974228191 -2.97736340082455E-07" rpy="0 0 0" />
|
||||
<mass value="0.393571904406492" />
|
||||
<inertia
|
||||
ixx="0.000172771193862529"
|
||||
ixy="-2.34549801867353E-05"
|
||||
ixz="1.90560556668771E-09"
|
||||
iyy="0.000155340245267897"
|
||||
iyz="8.82493073602971E-09"
|
||||
izz="0.00018104232734159" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_ELBOW_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_ELBOW_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_ELBOW_R" type="revolute">
|
||||
<origin xyz="0.034 -0.1025 0" rpy="0 0 0" />
|
||||
<parent link="R_SHOULDER_Y_S" />
|
||||
<child link="R_ELBOW_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="0" upper="2.18" effort="80" velocity="3.8758" />
|
||||
</joint>
|
||||
|
||||
<link name="R_WRIST_P_S">
|
||||
<inertial>
|
||||
<origin xyz="-1.39656577968772E-10 -0.0675972614865965 0.0192005515655728" rpy="0 0 0" />
|
||||
<mass value="0.442332465815497" />
|
||||
<inertia
|
||||
ixx="0.000476754055455896"
|
||||
ixy="-4.61462558956188E-15"
|
||||
ixz="-5.91762926004267E-18"
|
||||
iyy="0.0001034665858505"
|
||||
iyz="4.88426705501212E-05"
|
||||
izz="0.000482956345754214" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_P_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.647058823529412 0.619607843137255 0.588235294117647 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_P_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_WRIST_P" type="revolute">
|
||||
<origin xyz="-0.034 -0.0965 0" rpy="0 0 0" />
|
||||
<parent link="R_ELBOW_R_S" />
|
||||
<child link="R_WRIST_P_S" />
|
||||
<axis xyz="0 -1 0" />
|
||||
<limit lower="-3.14" upper="0" effort="50" velocity="4.71" />
|
||||
</joint>
|
||||
|
||||
<link name="R_WRIST_Y_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.00464135887330083 -5.06426456325926E-10 -0.0341253783666614" rpy="0 0 0" />
|
||||
<mass value="0.235738477720019" />
|
||||
<inertia
|
||||
ixx="5.1068694045578E-05"
|
||||
ixy="7.45771487459288E-16"
|
||||
ixz="6.26195689233664E-06"
|
||||
iyy="6.00636019624515E-05"
|
||||
iyz="1.27828046342987E-16"
|
||||
izz="5.32182903609188E-05" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_Y_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.647058823529412 0.619607843137255 0.588235294117647 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_Y_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_WRIST_Y" type="revolute">
|
||||
<origin xyz="0 -0.1525 0.039" rpy="0 0 0" />
|
||||
<parent link="R_WRIST_P_S" />
|
||||
<child link="R_WRIST_Y_S" />
|
||||
<axis xyz="0 0 1" />
|
||||
<limit lower="0" upper="0.78" effort="50" velocity="0.79" />
|
||||
</joint>
|
||||
|
||||
<link name="R_WRIST_R_S">
|
||||
<inertial>
|
||||
<origin xyz="-0.0201642233698132 -0.11074968386657 -0.00598955339232021" rpy="0 0 0" />
|
||||
<mass value="0.204366058218534" />
|
||||
<inertia
|
||||
ixx="0.000185559065855467"
|
||||
ixy="5.75889766751509E-06"
|
||||
ixz="2.40683898454438E-06"
|
||||
iyy="0.000131246007872084"
|
||||
iyz="1.60533277040148E-06"
|
||||
izz="0.000271800951396149" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_R_S.STL" />
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0.890196078431372 0.890196078431372 0.913725490196078 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0" />
|
||||
<geometry>
|
||||
<mesh filename="meshes/R_WRIST_R_S.STL" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_WRIST_R" type="revolute">
|
||||
<origin xyz="0.03 0 -0.039" rpy="0 0 0" />
|
||||
<parent link="R_WRIST_Y_S" />
|
||||
<child link="R_WRIST_R_S" />
|
||||
<axis xyz="1 0 0" />
|
||||
<limit lower="-0.26" upper="1.57" effort="50" velocity="4.71" />
|
||||
</joint>
|
||||
|
||||
<link name="R_FINGER_TIP">
|
||||
<inertial>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<mass value="0"/>
|
||||
<inertia ixx="1e-6" ixy="0" ixz="0" iyy="1e-6" iyz="0" izz="1e-6"/>
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<geometry>
|
||||
<sphere radius="0.002"/>
|
||||
</geometry>
|
||||
<material name="">
|
||||
<color rgba="0 1 0 1"/> <!-- 绿色 -->
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin xyz="0 0 0" rpy="0 0 0"/>
|
||||
<geometry>
|
||||
<sphere radius="0.005"/>
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
|
||||
<joint name="R_FINGER_TIP_FIXED" type="fixed">
|
||||
<origin xyz="-0.01212 -0.17655 0.07506" rpy="3.14159 0 -1.5708"/>
|
||||
<parent link="R_WRIST_R_S"/>
|
||||
<child link="R_FINGER_TIP"/>
|
||||
</joint>
|
||||
</robot>
|
||||
46
src/api/corpusManger/corpus.js
Normal file
46
src/api/corpusManger/corpus.js
Normal file
@ -0,0 +1,46 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function addCategory(data) {
|
||||
return request({
|
||||
url: '/tts/corpus/category',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function getCategoryTreeApi() {
|
||||
return request({
|
||||
url: '/tts/corpus/category/tree',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
export function updateCategoryTreeApi(data) {
|
||||
return request({
|
||||
url: '/tts/corpus/category',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteCategory(id) {
|
||||
return request({
|
||||
url: `/tts/corpus/category/${id}`,
|
||||
method: 'delete',
|
||||
})
|
||||
}
|
||||
|
||||
export function getCorpusListApi(params) {
|
||||
return request({
|
||||
url: '/tts/corpus/list',
|
||||
method: 'get',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function getDashboardApi() {
|
||||
return request({
|
||||
url: '/tts/corpus/dashboard/stats',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
69
src/api/corpusManger/speech_synthesis.js
Normal file
69
src/api/corpusManger/speech_synthesis.js
Normal file
@ -0,0 +1,69 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function taskApi(data) {
|
||||
return request({
|
||||
url: '/tts/task',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function taskListApi(params) {
|
||||
return request({
|
||||
url: '/tts/task/list',
|
||||
method: 'get',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function getDashboardApi(params) {
|
||||
return request({
|
||||
url: '/tts/task/dashboard/stats',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
export function downloadWavApi(id) {
|
||||
return request({
|
||||
url: `/tts/task/audio/${id}`,
|
||||
method: 'get',
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteTask(ids) {
|
||||
return request({
|
||||
url: `/tts/task/${ids}`,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
export function regenerateApi(id) {
|
||||
return request({
|
||||
url: `/tts/task/regenerate/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
export function generalizationApi(data) {
|
||||
return request({
|
||||
url: '/tts/task/llm/query',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function batchTaskApi(data) {
|
||||
return request({
|
||||
url: '/tts/task/batch',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function saveTaskApi(data) {
|
||||
return request({
|
||||
url: `/tts/task/save-to-corpus/${data.taskId}/${data.categoryId}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
@ -16,3 +16,11 @@ export function status(data) {
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function clearFault(params) {
|
||||
return request({
|
||||
url: '/api/arm/clearFault',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
9
src/api/device/camera.js
Normal file
9
src/api/device/camera.js
Normal file
@ -0,0 +1,9 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function getRgbStreamUrl(robotId, deviceId) {
|
||||
return request({
|
||||
url: '/api/edge/camera/rgb-stream-url',
|
||||
method: 'get',
|
||||
params: { robotId, deviceId }
|
||||
})
|
||||
}
|
||||
@ -1,45 +0,0 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询设备配置信息列表
|
||||
export function listProfile(query) {
|
||||
return request({
|
||||
url: '/device/profile/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询设备配置信息详细
|
||||
export function getProfile(query) {
|
||||
return request({
|
||||
url: '/device/profile/parameterInfo/',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 新增设备配置信息
|
||||
export function addProfile(data) {
|
||||
return request({
|
||||
url: '/device/profile',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改设备配置信息
|
||||
export function updateProfile(data) {
|
||||
return request({
|
||||
url: '/device/profile',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除设备配置信息
|
||||
export function delProfile(id) {
|
||||
return request({
|
||||
url: '/device/profile/' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
@ -1,146 +0,0 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询设备注册列表
|
||||
export function listRegister(query) {
|
||||
return request({
|
||||
url: '/device/register/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询设备注册详细
|
||||
export function getRegister(id) {
|
||||
return request({
|
||||
url: '/device/register/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增设备注册
|
||||
export function addRegister(data) {
|
||||
return request({
|
||||
url: '/device/register',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改设备注册
|
||||
export function updateRegister(data) {
|
||||
return request({
|
||||
url: '/device/register',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除设备注册
|
||||
export function delRegister(id) {
|
||||
return request({
|
||||
url: '/device/register/' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 设备示教
|
||||
export function deviceTeach(id) {
|
||||
return request({
|
||||
url: '/device/profile/' + id,
|
||||
method: 'get',
|
||||
})
|
||||
}
|
||||
|
||||
// 设备示教参数修改
|
||||
export function deviceUpdateProfile(data) {
|
||||
return request({
|
||||
url: '/device/profile/updateProfile',
|
||||
method: 'put',
|
||||
data: data,
|
||||
})
|
||||
}
|
||||
|
||||
// 新增音色
|
||||
export function createTimbre(data) {
|
||||
return request({
|
||||
url: '/show/tts/create',
|
||||
method: 'post',
|
||||
headers: {
|
||||
'Content-Type': 'multipart/form-data',
|
||||
Authorization: 'eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImFiNmEyY2Y0LWM3MjQtNDgyMy1hM2NiLTk4N2NhZWNmMzZiNCJ9.oq-JVRbQuq_ujQ2V0h2jXC3woHPdMQKhnYJ8ixRm-C6Ez4GqJWyHYgmnkw5dbDyhWGdIUH02uv6XT8UiboHD4g',
|
||||
isToken: false
|
||||
},
|
||||
data: data,
|
||||
})
|
||||
}
|
||||
|
||||
// 获取音色
|
||||
export function getTts() {
|
||||
return request({
|
||||
url: '/show/tts/query',
|
||||
headers: {
|
||||
Authorization: 'eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImFiNmEyY2Y0LWM3MjQtNDgyMy1hM2NiLTk4N2NhZWNmMzZiNCJ9.oq-JVRbQuq_ujQ2V0h2jXC3woHPdMQKhnYJ8ixRm-C6Ez4GqJWyHYgmnkw5dbDyhWGdIUH02uv6XT8UiboHD4g',
|
||||
isToken: false
|
||||
},
|
||||
method: 'get',
|
||||
})
|
||||
}
|
||||
|
||||
// 生产语料
|
||||
export function createCorpus(data) {
|
||||
return request({
|
||||
url: '/show/tts/corpus',
|
||||
headers: {
|
||||
Authorization: 'eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImFiNmEyY2Y0LWM3MjQtNDgyMy1hM2NiLTk4N2NhZWNmMzZiNCJ9.oq-JVRbQuq_ujQ2V0h2jXC3woHPdMQKhnYJ8ixRm-C6Ez4GqJWyHYgmnkw5dbDyhWGdIUH02uv6XT8UiboHD4g',
|
||||
isToken: false
|
||||
},
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function getSynthesize(data, config = {}) {
|
||||
return request({
|
||||
url: '/show/tts/synthesize',
|
||||
headers: {
|
||||
Authorization: 'eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImFiNmEyY2Y0LWM3MjQtNDgyMy1hM2NiLTk4N2NhZWNmMzZiNCJ9.oq-JVRbQuq_ujQ2V0h2jXC3woHPdMQKhnYJ8ixRm-C6Ez4GqJWyHYgmnkw5dbDyhWGdIUH02uv6XT8UiboHD4g',
|
||||
isToken: false
|
||||
},
|
||||
responseType: 'blob',
|
||||
method: 'post',
|
||||
data: data
|
||||
}, {
|
||||
...config
|
||||
})
|
||||
}
|
||||
|
||||
export function createAdvancedCorpus(data) {
|
||||
return request({
|
||||
url: '/show/tts/corpus/advanced',
|
||||
headers: {
|
||||
Authorization: 'eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImFiNmEyY2Y0LWM3MjQtNDgyMy1hM2NiLTk4N2NhZWNmMzZiNCJ9.oq-JVRbQuq_ujQ2V0h2jXC3woHPdMQKhnYJ8ixRm-C6Ez4GqJWyHYgmnkw5dbDyhWGdIUH02uv6XT8UiboHD4g',
|
||||
isToken: false
|
||||
},
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function getAdvancedSynthesize(data, config = {}) {
|
||||
return request({
|
||||
url: '/show/tts/synthesize/advanced',
|
||||
headers: {
|
||||
Authorization: 'eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImFiNmEyY2Y0LWM3MjQtNDgyMy1hM2NiLTk4N2NhZWNmMzZiNCJ9.oq-JVRbQuq_ujQ2V0h2jXC3woHPdMQKhnYJ8ixRm-C6Ez4GqJWyHYgmnkw5dbDyhWGdIUH02uv6XT8UiboHD4g',
|
||||
isToken: false
|
||||
},
|
||||
responseType: 'blob',
|
||||
method: 'post',
|
||||
data: data
|
||||
}, {
|
||||
...config
|
||||
})
|
||||
}
|
||||
|
||||
export const getFlowById = (id) => {
|
||||
return request.get(import.meta.env.VITE_NODE_RED_URL + '/flow/' + id, {})
|
||||
}
|
||||
@ -1,44 +0,0 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询机器人配置列表
|
||||
export function listRobot(query) {
|
||||
return request({
|
||||
url: '/device/robot/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询机器人配置详细
|
||||
export function getRobot(id) {
|
||||
return request({
|
||||
url: '/device/robot/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增机器人配置
|
||||
export function addRobot(data) {
|
||||
return request({
|
||||
url: '/device/robot',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改机器人配置
|
||||
export function updateRobot(data) {
|
||||
return request({
|
||||
url: '/device/robot',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除机器人配置
|
||||
export function delRobot(id) {
|
||||
return request({
|
||||
url: '/device/robot/' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
31
src/api/device/system.js
Normal file
31
src/api/device/system.js
Normal file
@ -0,0 +1,31 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function getSafetyState(robotId) {
|
||||
return request({
|
||||
url: '/api/system/safetyState',
|
||||
method: 'get',
|
||||
params: { robotId },
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 恢复机器人运行状态;payload 与旧 recoverSafetyState 保持一致,便于调用方渐进迁移。
|
||||
*/
|
||||
export function restoreOperationalState(data) {
|
||||
return request({
|
||||
url: '/api/system/restoreOperationalState',
|
||||
method: 'post',
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated 请改用 restoreOperationalState,旧接口仅保留给未迁移调用方。
|
||||
*/
|
||||
export function recoverSafetyState(data) {
|
||||
return request({
|
||||
url: '/api/system/recoverSafetyState',
|
||||
method: 'post',
|
||||
data,
|
||||
})
|
||||
}
|
||||
@ -1,86 +0,0 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询设备终端配置列表
|
||||
export function listTerminal(query) {
|
||||
return request({
|
||||
url: '/device/terminal/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询设备终端配置详细
|
||||
export function getTerminal(id) {
|
||||
return request({
|
||||
url: '/device/terminal/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增设备终端配置
|
||||
export function addTerminal(data) {
|
||||
return request({
|
||||
url: '/device/terminal',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改设备终端配置
|
||||
export function updateTerminal(data) {
|
||||
return request({
|
||||
url: '/device/terminal',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除设备终端配置
|
||||
export function delTerminal(id) {
|
||||
return request({
|
||||
url: '/device/terminal/' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 获取实例信息
|
||||
export function getInstInfo(id) {
|
||||
return request({
|
||||
url: '/test/inst/context/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 暂停任务
|
||||
export function pauseInst(id) {
|
||||
return request({
|
||||
url: `/test/inst/pause/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
// 恢复任务
|
||||
export function resumeInst(id) {
|
||||
return request({
|
||||
url: `/test/inst/resume/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
// 恢复任务
|
||||
export function stopInst(id) {
|
||||
return request({
|
||||
url: `/test/inst/stop/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
export function getFlowParamsApi(taskId) {
|
||||
return request({
|
||||
url: '/test/orchestration',
|
||||
method: 'get',
|
||||
params: {
|
||||
taskId
|
||||
}
|
||||
})
|
||||
}
|
||||
@ -9,6 +9,34 @@ export function flowDeploy(data) {
|
||||
})
|
||||
}
|
||||
|
||||
export function flowSaveDraft(data) {
|
||||
return request({ url: '/flow/draft', method: 'put', data })
|
||||
}
|
||||
|
||||
export function flowVersionList(itemId) {
|
||||
return request({ url: `/flow/versions/${itemId}`, method: 'get' })
|
||||
}
|
||||
|
||||
export function flowVersionDetail(versionId) {
|
||||
return request({ url: `/flow/version/${versionId}`, method: 'get' })
|
||||
}
|
||||
|
||||
export function flowSubFlowOptions(currentItemId) {
|
||||
return request({
|
||||
url: '/flow/subflows',
|
||||
method: 'get',
|
||||
params: { currentItemId }
|
||||
})
|
||||
}
|
||||
|
||||
export function flowRestoreDraft(versionId, data) {
|
||||
return request({ url: `/flow/version/${versionId}/restore-draft`, method: 'post', data })
|
||||
}
|
||||
|
||||
export function flowRollbackVersion(versionId, data) {
|
||||
return request({ url: `/flow/version/${versionId}/rollback`, method: 'post', data })
|
||||
}
|
||||
|
||||
export function flowExecute(data) {
|
||||
return request({
|
||||
url: '/flow/execute',
|
||||
@ -69,3 +97,27 @@ export function getArmStatus(params) {
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function getAgvStatus(params) {
|
||||
return request({
|
||||
url: '/api/agv/getRuntimeState',
|
||||
method: 'get',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function getAgvStations(params) {
|
||||
return request({
|
||||
url: '/api/agv/listStations',
|
||||
method: 'get',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function getArmJointState(params) {
|
||||
return request({
|
||||
url: '/api/arm/getJointState',
|
||||
method: 'get',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
5
src/api/flow/nodeRed.js
Normal file
5
src/api/flow/nodeRed.js
Normal file
@ -0,0 +1,5 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function getNodeRedFlowById(id) {
|
||||
return request.get(`${import.meta.env.VITE_NODE_RED_URL}/flow/${id}`, {})
|
||||
}
|
||||
@ -1,33 +0,0 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
|
||||
export function getMapList(params) {
|
||||
return request({
|
||||
url: '/inspection/map/list',
|
||||
method: 'get',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function addMap(data) {
|
||||
return request({
|
||||
url: '/inspection/map',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function updateMap(data) {
|
||||
return request({
|
||||
url: '/inspection/map',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteMap(id) {
|
||||
return request({
|
||||
url: `/inspection/map/${id}`,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
@ -30,3 +30,10 @@ export function deletePoint(id) {
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
export function copyPoint(id) {
|
||||
return request({
|
||||
url: `/inspection/waypoint/copy/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
@ -1,107 +0,0 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function getRobotList(params) {
|
||||
return request({
|
||||
url: '/inspection/robot/list',
|
||||
method: 'get',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function addRobot(data) {
|
||||
return request({
|
||||
url: '/inspection/robot',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function updateRobot(data) {
|
||||
return request({
|
||||
url: '/inspection/robot',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteRobot(id) {
|
||||
return request({
|
||||
url: `/inspection/robot/${id}`,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取机器人地图
|
||||
* @param {*} robotId
|
||||
* @returns
|
||||
*/
|
||||
export function getMapByRobot(robotId) {
|
||||
return request({
|
||||
url: `/inspection/robot/${robotId}/maps`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取地图JSON数据
|
||||
* @param {*} params
|
||||
* @returns
|
||||
*/
|
||||
export function getMapJson(params) {
|
||||
return request({
|
||||
url: `/inspection/robot/${params.robotId}/download-map`,
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取机器人位置
|
||||
* @param {*} robotId
|
||||
* @returns
|
||||
*/
|
||||
export function getRobotLocation(robotId) {
|
||||
return request({
|
||||
url: `/inspection/robot/${robotId}/location`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取机器人状态
|
||||
* @param {*} robotId
|
||||
* @returns
|
||||
*/
|
||||
export function getRobotStatus(robotId) {
|
||||
return request({
|
||||
url: `/inspection/robot/{robotId}/sync-status`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 机器人运动控制
|
||||
* @param {*} data
|
||||
* @returns
|
||||
*/
|
||||
export function moveRobot(data) {
|
||||
return request({
|
||||
url: '/api/agv/setVelocity',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 机器人停止运动
|
||||
* @param {*} data
|
||||
* @returns
|
||||
*/
|
||||
export function stopRobot(data) {
|
||||
return request({
|
||||
url: '/api/agv/stopVelocityControl',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
@ -38,10 +38,18 @@ export function deleteRunTask(id) {
|
||||
})
|
||||
}
|
||||
|
||||
export function startRunTask(id) {
|
||||
export function startRunTask(id, data) {
|
||||
return request({
|
||||
url: `/inspection/taskInstance/start/${id}`,
|
||||
method: 'put'
|
||||
method: 'put',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function rerunRunTask(id) {
|
||||
return request({
|
||||
url: `/inspection/taskInstance/rerun/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@ -45,3 +45,10 @@ export function bindWaypointsToTask(taskId, waypointIds) {
|
||||
data: waypointIds
|
||||
})
|
||||
}
|
||||
|
||||
export function copyTask(id) {
|
||||
return request({
|
||||
url: `/inspection/task/copy/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
import request from '@/utils/request'
|
||||
import { method } from 'lodash'
|
||||
|
||||
export function addTaskinstance(data) {
|
||||
return request({
|
||||
@ -27,15 +26,23 @@ export function updateTaskinstance(data) {
|
||||
|
||||
export function deleteTaskinstance(ids) {
|
||||
return request({
|
||||
url: `/aima/taskinstance/{ids}`,
|
||||
url: `/aima/taskinstance/${ids}`,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
export function startTaskinstance(id) {
|
||||
export function startTaskinstance(id, data) {
|
||||
return request({
|
||||
url: `/aima/taskinstance/start/${id}`,
|
||||
method: 'put'
|
||||
method: 'put',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function rerunTaskinstance(id) {
|
||||
return request({
|
||||
url: `/aima/taskinstance/rerun/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@ -45,3 +45,10 @@ export function bindTastCase(taskId, ids) {
|
||||
data: ids
|
||||
})
|
||||
}
|
||||
|
||||
export function copyTask(id) {
|
||||
return request({
|
||||
url: `/aima/task/copy/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
@ -30,3 +30,10 @@ export function deleteTestCase(ids) {
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
export function copyTestCase(id) {
|
||||
return request({
|
||||
url: `/aima/testcase/copy/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
@ -39,6 +39,15 @@ export function getInfo() {
|
||||
})
|
||||
}
|
||||
|
||||
// 解锁屏幕
|
||||
export function unlockScreen(password) {
|
||||
return request({
|
||||
url: '/unlockscreen',
|
||||
method: 'post',
|
||||
data: { password }
|
||||
})
|
||||
}
|
||||
|
||||
// 退出方法
|
||||
export function logout() {
|
||||
return request({
|
||||
|
||||
13
src/api/resource/device.js
Normal file
13
src/api/resource/device.js
Normal file
@ -0,0 +1,13 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function listResourceDevices(params) {
|
||||
return request({ url: '/resource/devices', method: 'get', params })
|
||||
}
|
||||
|
||||
export function getResourceDevice(id) {
|
||||
return request({ url: `/resource/devices/${encodeURIComponent(id)}`, method: 'get' })
|
||||
}
|
||||
|
||||
export function updateResourceDevice(id, data) {
|
||||
return request({ url: `/resource/devices/${encodeURIComponent(id)}`, method: 'put', data })
|
||||
}
|
||||
24
src/api/resource/map.js
Normal file
24
src/api/resource/map.js
Normal file
@ -0,0 +1,24 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function listResourceMaps(params) {
|
||||
return request({ url: '/resource/maps', method: 'get', params })
|
||||
}
|
||||
|
||||
export function listRobotMaps(robotId) {
|
||||
return request({
|
||||
url: `/resource/maps/robot/${encodeURIComponent(robotId)}`,
|
||||
method: 'get',
|
||||
})
|
||||
}
|
||||
|
||||
export function addResourceMap(data) {
|
||||
return request({ url: '/resource/maps', method: 'post', data })
|
||||
}
|
||||
|
||||
export function updateResourceMap(data) {
|
||||
return request({ url: '/resource/maps', method: 'put', data })
|
||||
}
|
||||
|
||||
export function deleteResourceMap(ids) {
|
||||
return request({ url: `/resource/maps/${ids}`, method: 'delete' })
|
||||
}
|
||||
77
src/api/resource/robot.js
Normal file
77
src/api/resource/robot.js
Normal file
@ -0,0 +1,77 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function listResourceRobots(params) {
|
||||
return request({ url: '/resource/robots', method: 'get', params })
|
||||
}
|
||||
|
||||
export function getResourceRobot(robotId) {
|
||||
return request({ url: `/resource/robots/${encodeURIComponent(robotId)}`, method: 'get' })
|
||||
}
|
||||
|
||||
export function listRobotDevices(robotId, params = {}) {
|
||||
return request({
|
||||
url: `/resource/robots/${encodeURIComponent(robotId)}/devices`,
|
||||
method: 'get',
|
||||
params,
|
||||
})
|
||||
}
|
||||
|
||||
export const getRobotList = listResourceRobots
|
||||
|
||||
export function addRobot(data) {
|
||||
return request({ url: '/resource/robots', method: 'post', data })
|
||||
}
|
||||
|
||||
export function updateRobot(data) {
|
||||
return request({ url: '/resource/robots', method: 'put', data })
|
||||
}
|
||||
|
||||
export function deleteRobot(id) {
|
||||
return request({ url: `/resource/robots/${id}`, method: 'delete' })
|
||||
}
|
||||
|
||||
export function getRobotDevices(id) {
|
||||
return request({ url: `/resource/robots/id/${id}/devices`, method: 'get' })
|
||||
}
|
||||
|
||||
export function getRobotDevicesByRobotId(robotId, params = {}) {
|
||||
return request({
|
||||
url: `/resource/robots/${encodeURIComponent(robotId)}/devices`,
|
||||
method: 'get',
|
||||
params: { onlineOnly: true, ...params },
|
||||
})
|
||||
}
|
||||
|
||||
export function getMapByRobot(robotRef) {
|
||||
return request({
|
||||
url: `/resource/robots/${encodeURIComponent(robotRef)}/remote-maps`,
|
||||
method: 'get',
|
||||
})
|
||||
}
|
||||
|
||||
export function getMapJson(params) {
|
||||
return request({
|
||||
url: `/resource/robots/${encodeURIComponent(params.robotId)}/download-map`,
|
||||
method: 'get',
|
||||
params,
|
||||
})
|
||||
}
|
||||
|
||||
export function getRobotLocation(robotRef) {
|
||||
return request({
|
||||
url: `/resource/robots/${encodeURIComponent(robotRef)}/location`,
|
||||
method: 'get',
|
||||
})
|
||||
}
|
||||
|
||||
export function getRobotStatus(id) {
|
||||
return request({ url: `/resource/robots/id/${id}`, method: 'get' })
|
||||
}
|
||||
|
||||
export function moveRobot(data) {
|
||||
return request({ url: '/api/agv/setVelocity', method: 'post', data })
|
||||
}
|
||||
|
||||
export function stopRobot(data) {
|
||||
return request({ url: '/api/agv/stopVelocityControl', method: 'post', data })
|
||||
}
|
||||
29
src/api/resource/terminal.js
Normal file
29
src/api/resource/terminal.js
Normal file
@ -0,0 +1,29 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function listResourceTerminals(params) {
|
||||
return request({ url: '/resource/terminals', method: 'get', params })
|
||||
}
|
||||
|
||||
export function addResourceTerminal(data) {
|
||||
return request({ url: '/resource/terminals', method: 'post', data })
|
||||
}
|
||||
|
||||
export function updateResourceTerminal(data) {
|
||||
return request({ url: '/resource/terminals', method: 'put', data })
|
||||
}
|
||||
|
||||
export function getResourceTerminal(id) {
|
||||
return request({ url: `/resource/terminals/${encodeURIComponent(id)}`, method: 'get' })
|
||||
}
|
||||
|
||||
export function deleteResourceTerminals(ids) {
|
||||
return request({ url: `/resource/terminals/${ids}`, method: 'delete' })
|
||||
}
|
||||
|
||||
export function listTerminalRobots(id) {
|
||||
return request({ url: `/resource/terminals/${encodeURIComponent(id)}/robots`, method: 'get' })
|
||||
}
|
||||
|
||||
export function updateTerminalRobots(id, robotIds) {
|
||||
return request({ url: `/resource/terminals/${encodeURIComponent(id)}/robots`, method: 'put', data: robotIds })
|
||||
}
|
||||
@ -43,6 +43,15 @@ export function updateDept(data) {
|
||||
})
|
||||
}
|
||||
|
||||
// 保存部门排序
|
||||
export function updateDeptSort(data) {
|
||||
return request({
|
||||
url: '/system/dept/updateSort',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除部门
|
||||
export function delDept(deptId) {
|
||||
return request({
|
||||
|
||||
@ -51,6 +51,15 @@ export function updateMenu(data) {
|
||||
})
|
||||
}
|
||||
|
||||
// 保存菜单排序
|
||||
export function updateMenuSort(data) {
|
||||
return request({
|
||||
url: '/system/menu/updateSort',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除菜单
|
||||
export function delMenu(menuId) {
|
||||
return request({
|
||||
|
||||
@ -42,3 +42,38 @@ export function delNotice(noticeId) {
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 首页顶部公告列表(带已读状态)
|
||||
export function listNoticeTop() {
|
||||
return request({
|
||||
url: '/system/notice/listTop',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 标记公告已读
|
||||
export function markNoticeRead(noticeId) {
|
||||
return request({
|
||||
url: '/system/notice/markRead',
|
||||
method: 'post',
|
||||
params: { noticeId }
|
||||
})
|
||||
}
|
||||
|
||||
// 批量标记已读
|
||||
export function markNoticeReadAll(ids) {
|
||||
return request({
|
||||
url: '/system/notice/markReadAll',
|
||||
method: 'post',
|
||||
params: { ids }
|
||||
})
|
||||
}
|
||||
|
||||
// 查询公告已读用户列表
|
||||
export function listNoticeReadUsers(query) {
|
||||
return request({
|
||||
url: '/system/notice/readUsers/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
@ -96,7 +96,7 @@ export function updateUserPwd(oldPassword, newPassword) {
|
||||
return request({
|
||||
url: '/system/user/profile/updatePwd',
|
||||
method: 'put',
|
||||
params: data
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@ -26,6 +26,13 @@ export function addConfig(data) {
|
||||
})
|
||||
}
|
||||
|
||||
export function copyConfig(id) {
|
||||
return request({
|
||||
url: '/test/config/copy/' + id,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
// 修改任务流程编排
|
||||
export function updateConfig(data) {
|
||||
return request({
|
||||
|
||||
@ -26,6 +26,13 @@ export function addDetect(data) {
|
||||
})
|
||||
}
|
||||
|
||||
export function copyDetect(id) {
|
||||
return request({
|
||||
url: '/test/detect/copy/' + id,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
// 修改检测项配置
|
||||
export function updateDetect(data) {
|
||||
return request({
|
||||
|
||||
@ -52,6 +52,14 @@ export function listInst(query) {
|
||||
})
|
||||
}
|
||||
|
||||
// 使用历史实例保存的执行参数创建新的任务实例
|
||||
export function rerunInst(id) {
|
||||
return request({
|
||||
url: `/test/inst/rerun/${id}`,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
// 查询任务实例日志
|
||||
export function getInst(query) {
|
||||
return request({
|
||||
@ -62,7 +70,7 @@ export function getInst(query) {
|
||||
}
|
||||
|
||||
// 查询任务实例日志
|
||||
export function getLogicFlow(query) {
|
||||
export function getFlowRuntimeLog(query) {
|
||||
return request({
|
||||
url: '/test/inst/log/query',
|
||||
method: 'get',
|
||||
@ -70,3 +78,15 @@ export function getLogicFlow(query) {
|
||||
})
|
||||
}
|
||||
|
||||
export function pauseInst(id) {
|
||||
return request({ url: `/test/inst/pause/${id}`, method: 'post' })
|
||||
}
|
||||
|
||||
export function resumeInst(id) {
|
||||
return request({ url: `/test/inst/resume/${id}`, method: 'post' })
|
||||
}
|
||||
|
||||
export function stopInst(id) {
|
||||
return request({ url: `/test/inst/stop/${id}`, method: 'post' })
|
||||
}
|
||||
|
||||
|
||||
30
src/api/tts.js
Normal file
30
src/api/tts.js
Normal file
@ -0,0 +1,30 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
const serviceHeaders = {
|
||||
Authorization: 'eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImFiNmEyY2Y0LWM3MjQtNDgyMy1hM2NiLTk4N2NhZWNmMzZiNCJ9.oq-JVRbQuq_ujQ2V0h2jXC3woHPdMQKhnYJ8ixRm-C6Ez4GqJWyHYgmnkw5dbDyhWGdIUH02uv6XT8UiboHD4g',
|
||||
isToken: false,
|
||||
}
|
||||
|
||||
export function createTimbre(data) {
|
||||
return request({ url: '/show/tts/create', method: 'post', headers: { ...serviceHeaders, 'Content-Type': 'multipart/form-data' }, data })
|
||||
}
|
||||
|
||||
export function getTts() {
|
||||
return request({ url: '/show/tts/query', method: 'get', headers: serviceHeaders })
|
||||
}
|
||||
|
||||
export function createCorpus(data) {
|
||||
return request({ url: '/show/tts/corpus', method: 'post', headers: serviceHeaders, data })
|
||||
}
|
||||
|
||||
export function getSynthesize(data, config = {}) {
|
||||
return request({ url: '/show/tts/synthesize', method: 'post', headers: serviceHeaders, responseType: 'blob', data }, config)
|
||||
}
|
||||
|
||||
export function createAdvancedCorpus(data) {
|
||||
return request({ url: '/show/tts/corpus/advanced', method: 'post', headers: serviceHeaders, data })
|
||||
}
|
||||
|
||||
export function getAdvancedSynthesize(data, config = {}) {
|
||||
return request({ url: '/show/tts/synthesize/advanced', method: 'post', headers: serviceHeaders, responseType: 'blob', data }, config)
|
||||
}
|
||||
4
src/assets/icons/svg/add.svg
Normal file
4
src/assets/icons/svg/add.svg
Normal file
@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg t="1783317138800" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="12777" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
|
||||
<path d="M898.004474 894.186428 798.735272 894.186428 798.735272 993.45563C798.735272 1009.90301 785.401891 1023.236391 768.954512 1023.236391 752.507132 1023.236391 739.173751 1009.90301 739.173751 993.45563L739.173751 894.186428 639.904549 894.186428C623.457169 894.186428 610.123788 880.853047 610.123788 864.405667 610.123788 847.958288 623.457169 834.624907 639.904549 834.624907L739.173751 834.624907 739.173751 735.355705C739.173751 718.908325 752.507132 705.574944 768.954512 705.574944 785.401891 705.574944 798.735272 718.908325 798.735272 735.355705L798.735272 834.624907 898.004474 834.624907C914.451854 834.624907 927.785235 847.958288 927.785235 864.405667 927.785235 880.853047 914.451854 894.186428 898.004474 894.186428ZM768.954512 641.049963C752.507132 641.049963 739.173751 627.716582 739.173751 611.269202L739.173751 60.32513 415.012081 60.32513C415.013608 60.452653 415.021626 60.579031 415.021626 60.706935L415.021626 291.316928C415.021626 307.764307 401.688245 321.097688 385.240865 321.097688L155.776286 321.097688 155.776286 836.152125 515.054437 836.152125C531.501817 836.152125 544.835198 849.485506 544.835198 865.932886 544.835198 882.380265 531.501817 895.713647 515.054437 895.713647L125.995526 895.713647C109.548146 895.713647 96.214765 882.380265 96.214765 865.932886L96.214765 242.064131C96.214765 237.412987 97.282291 233.011544 99.18406 229.089647 99.90567 226.826309 101.078574 224.786327 102.737515 223.086151L309.85087 10.837906C310.512919 10.088805 311.210476 9.372158 311.943541 8.693309L314.300802 6.277632C317.094849 3.414097 320.879296 1.89146 325.120764 1.610452 327.381429 1.061417 329.7406 0.763609 332.170022 0.763609L768.954512 0.763609C785.401891 0.763609 798.735272 14.09699 798.735272 30.54437L798.735272 611.269202C798.735272 627.716582 785.401891 641.049963 768.954512 641.049963ZM344.780647 60.32513 155.776286 254.015761 155.776286 261.536167 355.460104 261.536167 355.460104 60.706935C355.460104 60.579031 355.468122 60.452653 355.46965 60.32513L344.780647 60.32513Z" p-id="12778" fill="currentColor"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.3 KiB |
1
src/assets/icons/svg/bell.svg
Normal file
1
src/assets/icons/svg/bell.svg
Normal file
@ -0,0 +1 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1773923748724" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5930" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M512 212l48.8 12c101.6 24.8 176 117.6 176 220.8v254.4l18.4 18.4 24.8 25.6h-536l24.8-25.6 18.4-18.4V444.8c0-103.2 73.6-196.8 176-220.8l48.8-12M512 64c-36.8 0-64 30.4-64 68v30.4C320.8 192 223.2 307.2 223.2 444.8v228.8L136 763.2v44.8h752v-44.8l-87.2-89.6V444.8c0-137.6-97.6-252.8-224.8-283.2v-28.8c0-32-17.6-60.8-48-67.2-5.6-1.6-11.2-1.6-16-1.6z m88 808H424c0 49.6 38.4 88 88 88s88-38.4 88-88z" p-id="5931"></path></svg>
|
||||
|
After Width: | Height: | Size: 750 B |
1
src/assets/icons/svg/consuming.svg
Normal file
1
src/assets/icons/svg/consuming.svg
Normal file
@ -0,0 +1 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1783317313942" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="17054" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M672.881778 502.215111a225.28 225.28 0 0 1-77.141334 50.688A225.450667 225.450667 0 0 1 512 568.888889a225.450667 225.450667 0 0 1-83.740444-15.928889 225.28 225.28 0 0 1-77.141334-50.744889 225.223111 225.223111 0 0 1-50.688-77.141333A225.564444 225.564444 0 0 1 284.444444 341.333333c0-28.672 5.347556-57.116444 15.928889-83.740444 11.605333-29.240889 28.501333-54.954667 50.744889-77.141333a225.28 225.28 0 0 1 77.141334-50.688A225.564444 225.564444 0 0 1 512 113.777778c28.672 0 57.116444 5.347556 83.740444 15.928889 29.240889 11.605333 54.954667 28.501333 77.141334 50.744889 22.186667 22.186667 39.139556 47.900444 50.688 77.141333 10.638222 26.624 16.042667 55.068444 15.985778 83.740444 0 28.672-5.404444 57.116444-15.928889 83.740445a225.28 225.28 0 0 1-50.744889 77.141333z m-50.801778-270.961778a154.168889 154.168889 0 0 0-52.792889-34.702222A154.339556 154.339556 0 0 0 512 185.628444c-19.626667 0-39.082667 3.697778-57.287111 10.922667a154.112 154.112 0 0 0-52.792889 34.702222c-15.075556 15.018667-26.908444 32.995556-34.702222 52.792889-7.224889 18.204444-10.922667 37.660444-10.922667 57.287111 0 19.797333 3.640889 38.912 10.922667 57.287111 7.793778 19.797333 19.626667 37.774222 34.702222 52.792889 15.018667 15.075556 32.995556 26.908444 52.792889 34.702223 18.204444 7.224889 37.660444 10.979556 57.287111 10.922666 19.626667 0 39.082667-3.697778 57.287111-10.922666 19.797333-7.793778 37.774222-19.626667 52.792889-34.702223 15.075556-15.018667 26.908444-32.995556 34.702222-52.792889 7.224889-18.204444 10.922667-37.660444 10.922667-57.287111 0-19.626667-3.697778-39.082667-10.922667-57.287111a153.998222 153.998222 0 0 0-34.702222-52.792889z" p-id="17055" fill="currentColor"></path><path d="M228.750222 616.220444a388.152889 388.152889 0 0 1 122.481778-88.177777 368.64 368.64 0 0 1 134.371556-33.052445 33.678222 33.678222 0 0 1 25.144888 9.671111c6.883556 6.599111 10.979556 15.928889 11.434667 25.770667a38.912 38.912 0 0 1-8.931555 26.851556 34.133333 34.133333 0 0 1-24.177778 12.288 302.819556 302.819556 0 0 0-110.364445 27.192888 318.691556 318.691556 0 0 0-100.579555 72.362667 342.357333 342.357333 0 0 0-68.380445 106.951111 359.992889 359.992889 0 0 0-26.055111 117.703111c-1.024 20.593778-17.578667 36.408889-36.864 35.271111a34.133333 34.133333 0 0 1-24.120889-12.401777 38.912 38.912 0 0 1-8.874666-26.965334 438.385778 438.385778 0 0 1 31.687111-143.246222 416.938667 416.938667 0 0 1 83.228444-130.275555z m426.894222 333.824c-19.342222 0-34.986667-16.725333-34.986666-37.319111v-231.537777c0-20.650667 15.644444-37.319111 34.986666-37.319112 19.342222 0 34.986667 16.668444 34.986667 37.319112v231.537777c0 20.593778-15.644444 37.319111-34.986667 37.319111z m-111.957333-61.610666c-19.342222 0-34.986667-16.725333-34.986667-37.319111V744.675556c0-20.650667 15.644444-37.376 34.986667-37.376 19.342222 0 34.986667 16.725333 34.986667 37.376v106.382222c0 20.650667-15.701333 37.376-34.986667 37.376z m223.971556 0c-19.342222 0-34.986667-16.725333-34.986667-37.319111V744.675556c0-20.650667 15.644444-37.376 34.986667-37.376 19.342222 0 34.986667 16.725333 34.986666 37.376v106.382222c0 20.650667-15.701333 37.376-34.986666 37.376zM967.111111 797.013333c0 20.593778-15.644444 37.319111-34.986667 37.319111h-45.511111c-19.342222 0-34.986667-16.725333-34.986666-37.319111 0-20.650667 15.644444-37.376 34.986666-37.376h45.511111c19.342222 0 34.986667 16.725333 34.986667 37.376z" p-id="17056" fill="currentColor"></path></svg>
|
||||
|
After Width: | Height: | Size: 3.7 KiB |
1
src/assets/icons/svg/enter.svg
Normal file
1
src/assets/icons/svg/enter.svg
Normal file
@ -0,0 +1 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1746590936918" class="icon" viewBox="0 0 1194 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5378" xmlns:xlink="http://www.w3.org/1999/xlink" width="233.203125" height="200"><path d="M1151.9144 325.11999969V89.12a57.04000031 57.04000031 0 0 0-28.8-49.44 58.15999969 58.15999969 0 0 0-57.76000031 0 57.04000031 57.04000031 0 0 0-28.8 49.44v235.99999969c0.24 84.31999969-33.6 152.56000031-94.08 212.00000062-60.07999969 59.83999969-141.84 80.64-227.04 80.4H225.91440031L388.07439969 457.11999969a56.80000031 56.80000031 0 0 0 12.40000031-62.16 57.76000031 57.76000031 0 0 0-94.00000031-18.63999938L48.8744 631.20000031a56.88 56.88 0 0 0 0 80.79999938l264.96 262.56a58.08 58.08 0 0 0 96.55999969-25.59999938 56.80000031 56.80000031 0 0 0-14.95999969-55.2L232.07439969 731.67999969h483.44000062c116.56000031 0 226.15999969-32.08000031 308.64-113.76 82.15999969-80.80000031 128.23999969-178.15999969 127.83999938-292.87999969" p-id="5379"></path></svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user