增强新威电池测试系统 OSS 上传功能 / Enhanced Neware Battery Test System OSS Upload (#196)

* feat: neware-oss-upload-enhancement

* feat(neware): enhance OSS upload with metadata and workflow handles
This commit is contained in:
Xie Qiming
2025-12-23 18:41:15 +08:00
committed by GitHub
parent 5fec753fb9
commit 2ffeb49acb
5 changed files with 3199 additions and 66 deletions

View File

@@ -1,73 +1,40 @@
neware_battery_test_system:
category:
- neware_battery_test_system
- neware
- battery_test
class:
action_value_mappings:
auto-post_init:
debug_resource_names:
feedback: {}
goal: {}
goal_default:
ros_node: null
goal_default: {}
handles: {}
placeholder_keys: {}
result: {}
result:
return_info: return_info
success: success
schema:
description: ''
description: 调试方法:显示所有资源的实际名称
properties:
feedback: {}
goal:
properties: {}
required: []
type: object
result:
properties:
ros_node:
return_info:
description: 资源调试信息
type: string
success:
description: 是否成功
type: boolean
required:
- ros_node
- return_info
- success
type: object
result: {}
required:
- goal
title: post_init参数
type: object
type: UniLabJsonCommand
auto-print_status_summary:
feedback: {}
goal: {}
goal_default: {}
handles: {}
placeholder_keys: {}
result: {}
schema:
description: ''
properties:
feedback: {}
goal:
properties: {}
required: []
type: object
result: {}
required:
- goal
title: print_status_summary参数
type: object
type: UniLabJsonCommand
auto-test_connection:
feedback: {}
goal: {}
goal_default: {}
handles: {}
placeholder_keys: {}
result: {}
schema:
description: ''
properties:
feedback: {}
goal:
properties: {}
required: []
type: object
result: {}
required:
- goal
title: test_connection参数
type: object
type: UniLabJsonCommand
export_status_json:
@@ -145,29 +112,32 @@ neware_battery_test_system:
goal:
plate_num: plate_num
goal_default:
plate_num: 1
plate_num: null
handles: {}
result:
plate_data: plate_data
return_info: return_info
success: success
schema:
description: 获取指定盘(1或2)的电池状态信息
description: 获取指定盘或所有盘的状态信息
properties:
feedback: {}
goal:
properties:
plate_num:
description: 盘号 (1 或 2)
description: 盘号 (1 或 2)如果为null则返回所有盘的状态
maximum: 2
minimum: 1
type: integer
required:
- plate_num
required: []
type: object
result:
properties:
plate_data:
description: 盘状态数据(单盘或所有盘)
type: object
return_info:
description: 盘状态信息JSON格式
description: 操作结果信息
type: string
success:
description: 查询是否成功
@@ -175,6 +145,7 @@ neware_battery_test_system:
required:
- return_info
- success
- plate_data
type: object
required:
- goal
@@ -219,7 +190,9 @@ neware_battery_test_system:
goal_default:
string: ''
handles: {}
result: {}
result:
return_info: return_info
success: success
schema:
description: ''
properties:
@@ -252,6 +225,56 @@ neware_battery_test_system:
title: StrSingleInput
type: object
type: StrSingleInput
submit_from_csv:
feedback: {}
goal:
csv_path: string
output_dir: string
goal_default:
csv_path: ''
output_dir: .
handles: {}
result:
return_info: return_info
submitted_count: submitted_count
success: success
schema:
description: 从CSV文件批量提交Neware测试任务
properties:
feedback: {}
goal:
properties:
csv_path:
description: 输入CSV文件的绝对路径
type: string
output_dir:
description: 输出目录用于存储XML和备份文件默认当前目录
type: string
required:
- csv_path
type: object
result:
properties:
return_info:
description: 执行结果详细信息
type: string
submitted_count:
description: 成功提交的任务数量
type: integer
success:
description: 是否成功
type: boolean
total_count:
description: CSV文件中的总行数
type: integer
required:
- return_info
- success
type: object
required:
- goal
type: object
type: UniLabJsonCommand
test_connection_action:
feedback: {}
goal: {}
@@ -284,30 +307,135 @@ neware_battery_test_system:
- goal
type: object
type: UniLabJsonCommand
module: unilabos.devices.battery.neware_battery_test_system:NewareBatteryTestSystem
upload_backup_to_oss:
feedback: {}
goal:
backup_dir: backup_dir
file_pattern: file_pattern
oss_prefix: oss_prefix
goal_default:
backup_dir: null
file_pattern: '*'
oss_prefix: null
handles:
output:
- data_key: uploaded_files
data_source: executor
data_type: array
handler_key: uploaded_files
io_type: sink
label: Uploaded Files (with standard flow info)
result:
failed_files: failed_files
return_info: return_info
success: success
total_count: total_count
uploaded_count: uploaded_count
schema:
description: 上传备份文件到阿里云OSS
properties:
feedback: {}
goal:
properties:
backup_dir:
description: 备份目录路径默认使用最近一次submit_from_csv的backup_dir
type: string
file_pattern:
default: '*'
description: 文件通配符模式,例如 *.csv 或 Battery_*.nda
type: string
oss_prefix:
description: OSS对象路径前缀默认使用self.oss_prefix
type: string
required: []
type: object
result:
properties:
failed_files:
description: 上传失败的文件名列表
items:
type: string
type: array
return_info:
description: 上传操作结果信息
type: string
success:
description: 上传是否成功
type: boolean
total_count:
description: 总文件数
type: integer
uploaded_count:
description: 成功上传的文件数
type: integer
uploaded_files:
description: 成功上传的文件详情列表
items:
properties:
Battery_Code:
description: 电池编码
type: string
Electrolyte_Code:
description: 电解液编码
type: string
filename:
description: 文件名
type: string
url:
description: OSS下载链接
type: string
required:
- filename
- url
- Battery_Code
- Electrolyte_Code
type: object
type: array
required:
- return_info
- success
- uploaded_count
- total_count
- failed_files
- uploaded_files
type: object
required:
- goal
type: object
type: UniLabJsonCommand
module: unilabos.devices.neware_battery_test_system.neware_battery_test_system:NewareBatteryTestSystem
status_types:
channel_status: dict
connection_info: dict
device_summary: dict
plate_status: dict
status: str
total_channels: int
type: python
config_info: []
description: 新威电池测试系统驱动,支持720个通道的电池测试状态监控和数据导出。通过TCP通信实现远程控制包含完整的物料管理系统,支持2盘电池状态映射和监控
description: 新威电池测试系统驱动,提供720个通道的电池测试状态监控、物料管理和CSV批量提交功能。支持TCP通信实现远程控制包含完整的物料管理系统2盘电池状态映射以及从CSV文件批量提交测试任务的能力
handles: []
icon: ''
init_param_schema:
config:
properties:
devtype:
default: '27'
type: string
ip:
default: 127.0.0.1
type: string
machine_id:
default: 1
type: integer
oss_prefix:
default: neware_backup
description: OSS对象路径前缀
type: string
oss_upload_enabled:
default: false
description: 是否启用OSS上传功能
type: boolean
port:
default: 502
type: integer
size_x:
default: 500.0
@@ -319,6 +447,7 @@ neware_battery_test_system:
default: 2000.0
type: number
timeout:
default: 20
type: integer
required: []
type: object
@@ -330,8 +459,6 @@ neware_battery_test_system:
type: object
device_summary:
type: object
plate_status:
type: object
status:
type: string
total_channels:
@@ -341,7 +468,6 @@ neware_battery_test_system:
- channel_status
- connection_info
- total_channels
- plate_status
- device_summary
type: object
version: 1.0.0