Appearance
焊接工艺
焊接的相关通讯协议主要包含焊接装备、电流电压、焊接参数、摆焊参数、焊接IO端口、多层多道焊接、相贯线,关于焊接工艺的详细介绍请参考焊接工艺手册。
1. 焊接装备
焊接装备设置包含基础功能、微调整、防碰撞、再启动/再启弧和其他模块。
1.1 上位机设置焊接装备
命令字: 0x8300
说明:焊接过程中,通过发生断弧、防碰撞、切模式停止等方式断弧时,此功能可在断弧处接着焊接。自动再启动、半自动再启动时要确保断弧处和回退目标位置之间没有障碍物。
basic_functions(基础功能)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| arc_detection_time | double | 电弧检测时间 | [0,5]s |
| arc_depletion_detection_time | double | 电弧耗尽检测时间 | [0,5]s |
| arc_detection_ensure_time | double | 电弧检测确认时间 | [0,5]s |
| pre_give_gas_time | double | 提前送气时间 | [0,5]s |
| close_time | double | 关气时间(负数为提前关气,正数为延后关气) | [-5,5]s |
| weld_interruption_detection | bool | 焊接中断检测 | true:中断检测;false:不中断检测 |
| arc_fly | bool | 飞行起弧 | true:飞行起弧;false:不飞行起弧 |
| air_close_mode | int | 关气方式 | 0: 延迟关气,1: 提前关气 |
micro_adjustment(微调整)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| single_adjustment_current | double | 焊接电流单次调整量 | [0,1000]A |
| single_adjustment_voltage | double | 焊接电压单次调整量 | [-1000,1000]V |
restart(再启动/再起弧)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| restart_times | int | 再启动次数 | [0,1000] |
| restart_distance | double | 再启动距离 | [0,100]mm |
| restart_speed | double | 再启动速度 | [0,100]mm/s |
| re_arc_times | int | 再起弧次数 | [1,1000] |
| restart_enable | bool | 再启动使能 | - |
| re_arc_enable | bool | 再起弧使能 | - |
| restart_mode | int | 再启动模式 | - |
antiCollision(防碰撞)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| enable | bool | 防碰撞使能 | true: 开启;false:关闭 |
| inputPort | int | 防碰撞IO端口 | - |
| inputValue | int | 防碰撞出发电平 | 0/1 |
| stopTime | double | 防碰撞快速停止时间 | [50,200]s |
| outputPort | int | 防碰撞状态输出端口 | - |
| outputValue | int | 防碰撞状态输出电平 | 0/1 |
| shieldFlag | bool | 屏蔽防碰撞 | true: 开启;false:关闭 |
| shieldTime | double | 屏蔽时间 | [0,1000000]s |
other(其他)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| break_back_time | double | 断弧回抽时间 | [0,5]s |
| weld_finish_time | double | 焊接完成回抽时间 | [0,5]s |
| break_back_enable | bool | 断弧回抽使能 | true: 开启;false:关闭 |
| weld_finish_function | bool | 焊接完成回抽功能 | true: 开启;false:关闭 |
| simulation_set_zero | bool | 灭弧模拟量置零功能 | true: 开启;false:关闭 |
| collisionButtonFlag.error_enable_switch | bool | 错误使能开关 | - |
示例:
json
{
"basic_functions": {
"arc_detection_time": 1.1,
"arc_depletion_detection_time": 1.1,
"arc_detection_ensure_time": 1.1,
"pre_give_gas_time": 1.1,
"close_time": 1.1,
"weld_interruption_detection": true,
"arc_fly": true,
"air_close_mode": 0
},
"micro_adjustment": {
"single_adjustment_current": 1.1,
"single_adjustment_voltage": 1.1
},
"restart": {
"restart_times": 1,
"restart_distance": 1.1,
"restart_speed": 1.1,
"re_arc_times": 1,
"restart_enable": true,
"re_arc_enable": true,
"restart_mode": 1
},
"antiCollision": {
"enable": false,
"inputPort": 0,
"inputValue": 1,
"stopTime": 60,
"outputPort": 0,
"outputValue": 1,
"shieldFlag": false,
"shieldTime": 30
},
"other": {
"break_back_time": 1.1,
"weld_finish_time": 1.1,
"break_back_enable": true,
"weld_finish_function": true,
"simulation_set_zero": true
},
"collisionButtonFlag": {
"error_enable_switch": true
}
}1.2 上位机查询焊接装备
命令字: 0x8301
说明:拖拽点动模式切换开关
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
json
{
"robot": 1
}1.3 控制器回复焊接装备
命令字: 0x8302
返回参数同"上位机设置焊接装备",参见上方表格及示例。
2. 电流电压
2.1 电流电压匹配设置
命令字: 0x8310
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
current_control(电流控制)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| set_current | double[] | 设置电流 | [0,10]A |
| actual_current | double[] | 实际电流 | [0,999]A |
voltage_control(电压控制)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| set_voltage | double[] | 设置电压 | [0,10]V |
| actual_voltage | double[] | 实际电压 | [0,999]V |
json
{
"current_control": {
"set_current": [1, 2, 3, 4, 5, 6, 7, 8],
"actual_current": [1, 2, 3, 4, 5, 6, 7, 8]
},
"voltage_control": {
"set_voltage": [1, 2, 3, 4, 5, 6, 7, 8],
"actual_voltage": [1, 2, 3, 4, 5, 6, 7, 8]
},
"robot": 1
}2.2 上位机查询电压电流匹配
命令字: 0x8311
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
json
{
"robot": 1
}2.3 控制器回复电流电压匹配
命令字: 0x8312
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
| set_current | int[] | 设置电流 | [0,10]A |
| actual_current | int[] | 实际电流 | [0,999]A |
| set_voltage | int[] | 设置电压 | [0,10]V |
| actual_voltage | int[] | 实际电压 | [0,999]V |
| AO_setcurrent | int | 电流输出端口 | - |
| AO_setvoltage | int | 电压输出端口 | - |
json
{
"current_control": {
"set_current": [1, 2, 3, 4, 5, 6, 7, 8],
"actual_current": [1, 2, 3, 4, 5, 6, 7, 8]
},
"voltage_control": {
"set_voltage": [1, 2, 3, 4, 5, 6, 7, 8],
"actual_voltage": [1, 2, 3, 4, 5, 6, 7, 8]
},
"IO": {
"AO_setcurrent": 0,
"AO_setvoltage": 0
},
"robot": 1
}2.4 上位机设置电流电压匹配参数实际值
命令字: 0x8313
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| type | int | 参数类型(电压1=0, 电压2=1, 电流1=2, 电流2=3) | [0,3] |
| value | double | 参数值 | [0,999]A/V |
| robot | int | 机器人号 | [1,4] |
json
{
"type": 0,
"value": 4.13,
"robot": 1
}2.5 控制器返回设置是否成功
命令字: 0x8314
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| result | int | 设置结果(1:成功,0:失败) | - |
| robot | int | 当前机器人 | [1,4] |
json
{
"result": 1,
"robot": 1
}2.6 开始进行电流电压匹配
命令字: 0x8315
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| start | bool | 是否开始进行匹配 | true:开始, false:结束 |
| robot | int | 当前机器人 | [1,4] |
json
{
"start": true,
"robot": 1
}2.7 手动操作电流电压设置
命令字: 0x8316
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
| type | int | 选择设置电流/电压 | 1:设置电流,2:设置电压 |
| value | double | 值 | - |
json
{
"robot": 1,
"type": 1,
"value": 1
}3. 焊接参数
3.1 上位机设置焊接参数
命令字: 0x8320
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| num | int | 工艺号(从1开始,可设置1-99个) | [1,99] |
| notes | string | 注释 | - |
| robot | int | 当前机器人 | [1,4] |
arcoff_parameters(收弧参数)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| arcoff_use_param | bool | 是否使用收弧参数 | true:使用;false:不使用 |
| arcoff_voltage | double | 收弧电压 | [-1000,1000]V |
| arcoff_current | double | 收弧电流 | [0,1000]A |
| arcoff_time | double | 收弧时间 | [0,5]s |
| ramp_time | double | 渐变时间 | [0,100000]ms |
| ramp_enable | bool | 渐变使能 | - |
| ramp_mode | int | 收弧渐变方式 | 0:时间渐变 |
weld_parameters(焊接参数)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| weld_current | double | 焊接电流 | [0,1000]A |
| weld_voltage | double | 焊接电压 | [-1000,1000]V |
arcon_parameters(起弧参数)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| arcon_use_param | bool | 是否使用起弧参数 | true:使用;false:不使用 |
| arcon_current | double | 起弧电流 | [0,1000]A |
| arcon_voltage | double | 起弧电压 | [-1000,1000]V |
| arcon_time | double | 起弧时间 | [0,5]s |
| arcon_ramp_time | double | 渐变时间 | [0,1000000]ms |
| arcon_ramp_enable | bool | 起弧渐变使能 | - |
| arcon_ramp_mode | int | 起弧渐变方式 | 0:时间渐变 |
json
{
"num": 1,
"notes": "示例",
"arcoff_parameters": {
"arcoff_use_param": true,
"arcoff_voltage": 1.1,
"arcoff_current": 1.1,
"arcoff_time": 1.1,
"ramp_time": 1.1,
"ramp_enable": true,
"ramp_mode": 1
},
"weld_parameters": {
"weld_current": 1.1,
"weld_voltage": 1.1
},
"arcon_parameters": {
"arcon_use_param": true,
"arcon_current": 1.1,
"arcon_voltage": 1.1,
"arcon_time": 1.1,
"arcon_ramp_time": 1.1,
"arcon_ramp_enable": true,
"arcon_ramp_mode": 1
}
}3.2 上位机查询焊接参数
命令字: 0x8321
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| num | int | 工艺号(从1开始) | [1,99] |
| robot | int | 当前机器人 | [1,4] |
json
{
"num": 1,
"robot": 1
}3.3 控制器回复焊接参数
命令字: 0x8322
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| num | int | 参数序号(从1开始) | - |
| notes | string | 注释 | - |
| robot | int | 当前机器人 | [1,4] |
arcoff_parameters(收弧参数)
| 参数名 | 类型 | 说明 |
|---|---|---|
| arcoff_voltage | double | 收弧电压 |
| arcoff_current | double | 收弧电流 |
| arcoff_time | double | 收弧时间 |
| arcon_ramp_time | double | 渐变时间 |
| arcon_ramp_distance | double | 渐变距离 |
| arcon_ramp_enable | bool | 渐变使能 |
| arcon_ramp_mode | int | 收弧渐变方式(0:时间渐变,1:距离渐变) |
weld_parameters(焊接参数)
| 参数名 | 类型 | 说明 |
|---|---|---|
| weld_current | double | 焊接电流 |
| weld_voltage | double | 焊接电压 |
| weld_velocity | double | 焊接速度 |
arcon_parameters(起弧参数)
| 参数名 | 类型 | 说明 |
|---|---|---|
| arcon_current | double | 起弧电流 |
| arcon_voltage | double | 起弧电压 |
| arcon_time | double | 起弧时间 |
| arcon_ramp_time | double | 渐变时间 |
| arcon_ramp_distance | double | 渐变距离 |
| arcon_ramp_enable | bool | 起弧渐变使能 |
| arcon_ramp_mode | int | 起弧渐变方式(0:时间渐变,1:距离渐变) |
anti_adhesion_parameters(防粘丝参数)
| 参数名 | 类型 | 说明 |
|---|---|---|
| anti_adhesion_enable | bool | 防粘丝使能 |
| anti_adhesion_times | int | 防粘丝次数 |
| anti_adhesion_v | double | 防粘丝电压 |
| anti_adhesion_i | double | 防粘丝电流 |
| anti_adhesion_time | double | 防粘丝时间 |
json
{
"num": 1,
"notes": "示例",
"arcoff_parameters": {
"arcoff_voltage": 1.1,
"arcoff_current": 1.1,
"arcoff_time": 1.1,
"arcon_ramp_time": 1.1,
"arcon_ramp_distance": 1.1,
"arcon_ramp_enable": true,
"arcon_ramp_mode": 1
},
"weld_parameters": {
"weld_current": 1.1,
"weld_voltage": 1.1,
"weld_velocity": 0.0
},
"arcon_parameters": {
"arcon_current": 1.1,
"arcon_voltage": 1.1,
"arcon_time": 1.1,
"arcon_ramp_time": 1.1,
"arcon_ramp_distance": 1.1,
"arcon_ramp_enable": true,
"arcon_ramp_mode": 0
},
"anti_adhesion_parameters": {
"anti_adhesion_enable": true,
"anti_adhesion_times": 1,
"anti_adhesion_v": 1.1,
"anti_adhesion_i": 1.1,
"anti_adhesion_time": 1.1
}
}4. 摆焊参数
inexbot摆焊支持七种摆动方式:正弦摆、Z字摆、圆形摆、外部轴定点摆、L型摆、三角摆、8字摆。摆动频率、摆动幅度、起始方向、水平偏角、竖直偏角等参数可调。
4.1 上位机发送设置摆焊参数
命令字: 0x8330
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| num | int | 摆焊文件序号(从1开始) | [1,99] |
| note | string | 注释 | - |
| robot | int | 当前机器人 | [1,4] |
parameter(摆焊参数)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| weaving_type | int | 摆动类型 | [0,6],0:正弦,1:Z字形,2:圆形摆,3:外部轴定点摆,4:L型摆,5:三角摆,6:8字摆 |
| weaving_freq | int | 摆动频率 | (0,20]Hz |
| weaving_ampli | int | 摆动幅度 | (0,50]mm |
| isMove | int | 是否移动/停留 | 0:停留,1:移动 |
| right_standing_time | int | 右停留时间(选择Z字形摆、外部轴定点摆、L型摆、三角摆时需要设置) | [0,15] |
| left_standing_time | int | 左停留时间(选择Z字形摆、外部轴定点摆、L型摆、三角摆时需要设置) | [0,15] |
| init_direction | int | 起始方向 | 0:+1,1:-1 |
| horizontal_angle | int | 水平偏角 | [-180,180] |
| vertical_angle | int | 竖直偏角 | [-180,180] |
| left_angle | int | 左仰角(选择L型摆、三角摆时需要设置) | [0,90] |
| right_angle | int | 右仰角(选择L型摆、三角摆时需要设置) | [0,90] |
json
{
"num": 1,
"parameter": {
"note": "示例",
"weaving_type": 0,
"weaving_freq": 20,
"weaving_ampli": 50,
"isMove": 0,
"right_standing_time": 15,
"left_standing_time": 15,
"init_direction": 1,
"horizontal_angle": 180,
"vertical_angle": 180,
"left_angle": 90,
"right_angle": 90
},
"robot": 1
}4.2 上位机查询摆焊参数
命令字: 0x8331
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
| num | int | 摆焊文件序号 | [1,99] |
json
{
"robot": 1,
"num": 1
}4.3 控制器返回摆焊参数
命令字: 0x8332
返回参数同"上位机设置摆焊参数",参见上方表格及示例。
5. 焊接IO
inexbot控制系统通过数字化IO端口实现焊接工艺的精确控制,配合模拟信号接口完成焊接参数的闭环管理。
5.1 上位机设置焊接IO接口
命令字: 0x8340
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
Din(数字输入,端口号从1开始,0表示无)
| 参数名 | 类型 | 说明 |
|---|---|---|
| arc_success | int | 起弧成功 |
| seek_success | int | 寻位成功 |
| weld_enable | int | 远程焊接使能 |
| wire_feed | int | 点动送丝 |
| return_wire | int | 退丝 |
| remote_gastest | int | 气体检测 |
Dout(数字输出,端口号从1开始,0表示无)
| 参数名 | 类型 | 说明 |
|---|---|---|
| arc_signal | int | 起弧成功信号 |
| wire_feed | int | 点动送丝信号 |
| wire_feed_back | int | 反向送丝信号 |
| gas_detection | int | 气体检测信号 |
| positioning_mode | int | 寻位模式 |
| weld_enable | bool | 焊接使能 |
Ain(模拟输入,端口号从1开始,0表示无)
| 参数名 | 类型 | 说明 |
|---|---|---|
| electric | int | 焊接电流 |
| voltage | int | 焊接电压 |
Aout(模拟输出,端口号从1开始,0表示无)
| 参数名 | 类型 | 说明 |
|---|---|---|
| given_electric_current | int | 给定电流信号 |
| given_setvoltage | int | 给定电压信号 |
json
{
"Din": {
"arc_success": 0,
"seek_success": 0,
"weld_enable": 0,
"wire_feed": 0,
"return_wire": 0,
"remote_gastest": 0
},
"Dout": {
"arc_signal": 0,
"wire_feed": 0,
"wire_feed_back": 0,
"gas_detection": 0,
"positioning_mode": 0,
"weld_enable": true
},
"Ain": {
"electric": 0,
"voltage": 0
},
"Aout": {
"given_electric_current": 0,
"given_setvoltage": 0
},
"robot": 1
}5.2 上位机查询焊接IO接口
命令字: 0x8341
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
json
{
"robot": 1
}5.3 控制器回复焊接IO接口
命令字: 0x8342
返回参数同"上位机设置焊接IO接口",参见上方表格及示例。
6. 查询焊接状态
6.1 上位机查询焊接状态
命令字: 0x8350
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 机器人 | [1,4] |
json
{
"robot": 1
}6.2 控制器返回焊接状态
命令字: 0x8351
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 机器人 | [1,4] |
antiCollision(防碰撞)
| 参数名 | 类型 | 说明 |
|---|---|---|
| shieldFlag | bool | 是否屏蔽防碰撞 |
焊接状态
| 参数名 | 类型 | 说明 | 取值 |
|---|---|---|---|
| weldEnabled | bool | 焊接使能 | - |
| spotWeldEnabled | bool | 点焊 | - |
| feedWire | bool | 送丝 | - |
| aspiration | bool | 送气 | - |
| returnWire | bool | 退丝 | - |
| pistolSwitch | int | 焊枪开关状态 | 0表示低(红),1表示高(绿),-1表示无(灰) |
| arcingSuccess | int | 引弧成功 | 同上 |
| handWireFeed | int | 手动送丝 | 同上 |
| weldCurrent | double | 焊接电流 | - |
| weldVoltage | double | 焊接电压 | - |
| weldRunTime | double | 焊接时间 | - |
| weldRunDutyRatio | double | 焊接占空比 | - |
json
{
"antiCollision": {
"shieldFlag": true
},
"weldEnabled": true,
"spotWeldEnabled": true,
"feedWire": true,
"aspiration": true,
"returnWire": true,
"pistolSwitch": 0,
"arcingSuccess": 1,
"handWireFeed": -1,
"weldCurrent": 1.0,
"weldVoltage": 2.0,
"weldRunTime": 3.3,
"weldRunDutyRatio": 4.4,
"robot": 1
}7. 点焊参数
7.1 上位机设置点焊参数
命令字: 0x8352
说明:用户可以通过此命令手动设置点焊参数,包含:电焊电流、点焊电压、点焊最大时间。
| 参数名 | 类型 | 说明 |
|---|---|---|
| spotWeldCurrent | double | 点焊电流 |
| spotWeldVoltage | double | 点焊电压 |
| spotWeldMaxTime | double | 点焊最大时间 |
| robot | int | 机器人号(取值范围[1,4]) |
json
{
"spotWeldCurrent": 0,
"spotWeldVoltage": 0,
"spotWeldMaxTime": 0,
"robot": 1
}8. 焊机模式
8.1 上位机设置焊机模式
命令字: 0x8360
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| type | int | 焊机模式 | 1:焊接使能,2:手动起弧,3:手动点焊,4:送丝,5:退丝,6:送气,7:故障复位 |
| value | int | 是否开启对应的模式 | 1:开启,0:关闭 |
| robot | int | 当前机器人 | [1,4] |
json
{
"type": 1,
"value": 0,
"robot": 1
}8.2 上位机查询焊机模式
命令字: 0x8361
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
json
{
"robot": 1
}8.3 控制器返回焊机模式
命令字: 0x8362
| 参数名 | 类型 | 说明 |
|---|---|---|
| weldEnabled | bool | 焊接使能 |
| spotWeldEnabled | bool | 点焊使能 |
| spotWeldCurrent | double | 点焊电流 |
| spotWeldVoltage | double | 点焊电压 |
| spotWeldMaxTime | double | 点焊最大时间 |
| newCurrent | double | 设置电流 |
| newVoltage | double | 设置电压 |
| feedWire | bool | 送丝 |
| returnWire | bool | 退丝 |
| aspiration | bool | 送气 |
| robot | int | 当前机器人(取值范围[1,4]) |
json
{
"weldEnabled": true,
"spotWeldEnabled": true,
"spotWeldCurrent": 33.3,
"spotWeldVoltage": -20.2,
"spotWeldMaxTime": 0.5,
"newCurrent": 33.3,
"newVoltage": -20.2,
"feedWire": true,
"returnWire": true,
"aspiration": true,
"robot": 1
}8.4 焊接微调整
命令字: 0x8363
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| name | string | 焊接电流/电压 | - |
| robot | int | 当前机器人 | [1,4] |
| type | int | 操作类型 | 0:给定值增加,1:给定值减小,2:保存 |
json
{
"name": "weld_current",
"robot": 1,
"type": 0
}8.5 上位机查询焊接微调整结果
命令字: 0x8364
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
json
{
"robot": 1
}8.6 控制器返回查询结果
命令字: 0x8365
| 参数名 | 类型 | 说明 |
|---|---|---|
| robot | int | 当前机器人 |
weav(摆焊参数)
| 参数名 | 类型 | 说明 |
|---|---|---|
| left_stay_time | double[] | 左停留时间 |
| right_stay_time | double[] | 右停留时间 |
| swing_amplitude | double[] | 摆焊振幅 |
| swing_frequency | double[] | 摆焊频率 |
weld(焊接参数)
| 参数名 | 类型 | 说明 |
|---|---|---|
| weld_current | double[] | 焊接电流 |
| weld_voltage | double[] | 焊接电压 |
json
{
"robot": 1,
"weav": {
"left_stay_time": [0.0, 1.0],
"right_stay_time": [0.0, 1.0],
"swing_amplitude": [0.0, 1.0],
"swing_frequency": [0.0, 1.0]
},
"weld": {
"weld_current": [0.0, 1.0],
"weld_voltage": [0.0, 1.0]
}
}9. 焊机设置
9.1 上位机设置焊机
命令字: 0x8370
说明:用户可以通过以下命令字设置焊机。
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| controlMode | int | 控制模式 | 0:模拟控制,1:数字控制 |
| monufactor | string | 焊机厂家 | 纳博特、麦格米特、深威智能、奥太、美佳尼克、瑞凌、肯倍IF15、EWM、福尼斯 |
| weldingMode | int | 焊机工作模式 | 0:分别,1:一元化 |
| commMode | string | 通讯方式 | CAN、ModBus RTU、Modbus TCP |
| slaveIP | string | 从站IP(通讯方式为Modbus TCP时需要设置) | - |
| slaveid | int | 从站ID(通讯方式为ModBus RTU时需要设置) | - |
| port | int | 端口号(通讯方式为ModBus RTU、Modbus TCP时需要设置) | (0,65535] |
| baudRate | int | 波特率(通讯方式为ModBus RTU时需要设置) | - |
| identifiedWelder | string | 已识别焊机 | - |
| CANPort | string | CAN通讯下的端口(通讯方式为CAN时需要设置) | - |
| CANPortSum | int | CAN通讯下的端口数量 | - |
| welderNumber | int | 焊机编号 | - |
| monufactorList | string[] | 可选择的焊机厂家清单 | 纳博特、麦格米特、深威智能、奥太、美佳尼克、瑞凌、肯倍IF15、EWM、福尼斯、和宗 |
| weldingvoltageCurve | int[] | 焊接电压曲线 | - |
RILAND(瑞凌焊机参数)
| 参数名 | 类型 | 说明 |
|---|---|---|
| materialWireDiameterGasSelect | int | 材料/丝径/气体选择 |
json
{
"welder": [
{
"controlMode": 0,
"monufactor": "麦格米特",
"weldingMode": 0,
"commMode": "CAN",
"slaveIP": "192.168.1.14",
"slaveid": 1,
"port": 2,
"baudRate": 38400,
"identifiedWelder": "麦格米特1",
"CANPort": 1,
"CANPortSum": 0,
"welderNumber": 1,
"monufactorList": ["纳博特","麦格米特","深威智能","奥太","美佳尼克","瑞凌","肯倍IF15","EWM","福尼斯","和宗"],
"weldingvoltageCurve": [0],
"RILAND": {
"materialWireDiameterGasSelect": 1
}
}
]
}9.2 上位机查询焊机选择
命令字: 0x8371
9.3 控制器回复焊机选择
命令字: 0x8372
返回参数同"上位机设置焊机",参见上方表格及示例。
9.4 焊机通讯状态查询
命令字: 0x8373
9.5 控制器返回焊机通讯状态
命令字: 0x8374
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| welder[].status | int | 焊机通讯状态 | 0:未通讯,1:已通讯 |
json
{
"welder": [
{
"status": 0
}
]
}9.6 上位机查询焊接参数、摆焊参数中的注释
命令字: 0x8380
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| finishinit | bool | 控制器初始化完成标志 | true:完成,false:未完成 |
| robot | int | 当前机器人 | [1,4] |
json
{
"finishinit": true,
"robot": 1
}9.7 控制器返回查询结果
命令字: 0x8381
| 参数名 | 类型 | 说明 |
|---|---|---|
| weldNotes | string[] | 焊接参数注释 |
| weavParameterNotes | string[] | 摆焊参数注释 |
| robot | int | 当前机器人 |
json
{
"robot": 1,
"weldNotes": ["112", "223", "", ""],
"weavParameterNotes": ["112", "223", "", ""]
}10. 多层多道焊
10.1 多层多道焊接参数设置
命令字: 0x8390
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| num | int | 工艺号 | [1,999] |
| robot | int | 当前机器人 | [1,4] |
| sum | int | 焊道总数 | [1,999] |
multipass(多层多道参数)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| note | string | 注释 | - |
| weld_bead_num | int | 焊道数 | [1,99] |
json
{
"multipass": [
{
"note": "",
"weld_bead_num": 6
}
],
"num": 1,
"robot": 1,
"sum": 100
}10.2 上位机查询多层多道焊道参数
命令字: 0x8391
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| num | int | 工艺号 | [1,999] |
| robot | int | 当前机器人 | [1,4] |
json
{
"num": 1,
"robot": 1
}10.3 控制器回复多层多道焊道参数
命令字: 0x8392
返回参数同"多层多道焊接参数设置",参见上方表格及示例。
10.4 上位机设置多层多道焊道配置
命令字: 0x8393
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| num | int | 工艺号 | [1,999] |
| robot | int | 当前机器人 | [1,4] |
weld_bead(焊道配置)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| head_indent | double | 头部缩进 | [-1000,1000]mm |
| head_multi_indent | bool | 头部倍数缩进使能 | - |
| left_right_offset | double | 左右偏移 | [-1000,1000]mm |
| push_angle | double | 推角 | [-180,180] |
| tail_indent | double | 尾部缩进 | [-1000,1000]mm |
| tail_multi_indent | bool | 尾部倍数缩进使能 | - |
| tilt_angle | double | 倾斜角 | [-180,180] |
| up_down_offset | double | 高低偏移 | [-1000,1000]mm |
| weld_dir | int | 焊接方向 | 0:+1,1:-1 |
json
{
"num": 1,
"robot": 1,
"weld_bead": [
{
"head_indent": 0.0,
"head_multi_indent": false,
"left_right_offset": 0.0,
"push_angle": 0.0,
"tail_indent": 0.0,
"tail_multi_indent": false,
"tilt_angle": 0.0,
"up_down_offset": 0.0,
"weld_dir": 0
}
]
}10.5 上位机查询多层多道焊道配置
命令字: 0x8394
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| num | int | 工艺号 | [1,999] |
| robot | int | 当前机器人 | [1,4] |
json
{
"num": 1,
"robot": 1
}10.6 控制器回复多层多道焊道配置
命令字: 0x8395
返回参数同"上位机设置多层多道焊道配置",参见上方表格及示例。
10.7 多层多焊道参数清空
命令字: 0x8396
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| num | int | 工艺号 | [1,999] |
| robot | int | 当前机器人 | [1,4] |
json
{
"num": 1,
"robot": 1
}10.8 多层多焊道参数复制
命令字: 0x8397
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| num_source | int | 复制的工艺号 | - |
| num_target | int | 复制到的工艺号 | - |
| robot | int | 当前机器人 | [1,4] |
json
{
"num_source": 1,
"num_target": 2,
"robot": 1
}10.9 多层多焊道参数增加
命令字: 0x8398
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 当前机器人 | [1,4] |
json
{
"robot": 1
}11. 焊缝数据库
11.1 储存数据到焊缝数据库
命令字: 0x83A0
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 机器人号 | [1,4] |
| weld_type | string | 焊缝类型 | - |
| fillet_weld_leg_1 | double | 左焊脚高 | - |
| fillet_weld_leg_2 | double | 右焊脚高 | - |
| fillet_weld_leg_angle | double | 两条焊脚夹角 | [-180,180] |
| weld_parameter_mode | string | 焊机工作模式 | "一元化"或"分别" |
| welding_current | double | 焊接电流 | - |
| welding_voltage | double | 焊接电压 | - |
| welding_speed | double | 焊接速度 | - |
| weld_bead_layer | int | 焊道总层数 | [1,99] |
| weld_bead_number | int | 焊道总道数 | [1,99] |
weld_bead(焊道参数)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| left_right_offset | double | 第i道焊缝左右偏移 | [-1000,1000] |
| up_down_offset | double | 第i道焊缝高低偏移 | [-1000,1000] |
json
{
"robot": 1,
"weld_type": "V缝",
"fillet_weld_leg_1": 10,
"fillet_weld_leg_2": 10,
"fillet_weld_leg_angle": 90,
"weld_parameter_mode": "一元化",
"welding_current": 160,
"welding_voltage": 23,
"welding_speed": 6,
"weld_bead_layer": 4,
"weld_bead_number": 10,
"weld_bead": [
{
"left_right_offset": 0.0,
"up_down_offset": 0.0
}
]
}11.2 匹配焊缝数据库中的数据
命令字: 0x83A1
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 机器人号 | [1,4] |
| weld_type | string | 焊缝类型 | - |
| fillet_weld_leg_1 | double | 左焊脚高 | - |
| fillet_weld_leg_2 | double | 右焊脚高 | - |
| fillet_weld_leg_angle | double | 两条焊脚夹角 | [-180,180] |
| weld_parameter_mode | string | 焊机工作模式 | "一元化"或"分别" |
| welding_current | double | 焊接电流 | - |
| welding_voltage | double | 焊接电压 | - |
| welding_speed | double | 焊接速度 | - |
json
{
"robot": 1,
"weld_type": "V缝",
"fillet_weld_leg_1": 10,
"fillet_weld_leg_2": 10,
"fillet_weld_leg_angle": 90,
"weld_parameter_mode": "一元化",
"welding_current": 160,
"welding_voltage": 23,
"welding_speed": 6
}11.3 控制器回复数据库匹配结果
命令字: 0x83A2
说明:回复数据库中匹配项的焊道总层数、总道数及每一层焊道数。
| 参数名 | 类型 | 说明 |
|---|---|---|
| weld_database | array | 匹配数据库 |
| total_layer | int | 第i项匹配项存在的焊道总层数 |
| total_bead | int | 第i项匹配项存在的焊道总道数 |
| layer | array | 焊道层信息 |
| number | int | 第i项匹配项存在的第k层焊道数 |
json
{
"weld_database": [
{
"total_layer": 4,
"total_bead": 10,
"layer": [
{
"number": 1
}
]
}
]
}12. 相贯线
12.1 坐标标定设置
命令字: 0x83B0
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| workPieceNum | int | 工艺号 | [1,3] |
json
{
"workPieceNum": 1
}12.2 上位机查询坐标标定
命令字: 0x83B1
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| workPieceNum | int | 工艺号 | [1,3] |
| pointNum | int | 标定点(共需要6个标定点) | [0,5] |
json
{
"workPieceNum": 1,
"pointNum": 0
}12.3 控制器回复坐标标定
命令字: 0x83B2
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| workPieceNum | int | 工艺号 | [1,3] |
| pointNum | int | 标定点(共需要6个标定点) | [0,5] |
| pos | double[] | 该标定点的坐标(X,Y,Z,A,B,C) | - |
json
{
"workPieceNum": 1,
"pointNum": 0,
"pos": [0, 0, 0, 0, 0, 0]
}12.4 回复相贯线设置计算结果
命令字: 0x83B3
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| result | bool | 是否有计算结果 | true:有,false:没有 |
| workPieceNum | int | 工艺号 | [1,3] |
cylinderIntersectLineParam(相贯线参数)
| 参数名 | 类型 | 说明 |
|---|---|---|
| R | double | 下圆柱半径 |
| r | double | 上圆柱半径 |
| e | double | 中心轴距 |
| alpha | double | 中心轴夹角 |
WorkPieceCoord
| 参数名 | 类型 | 说明 |
|---|---|---|
| - | double[] | X,Y,Z,A,B,C值 |
json
{
"result": true,
"workPieceNum": 1,
"cylinderIntersectLineParam": {
"R": 0,
"r": 0,
"e": 0,
"alpha": 0
},
"WorkPieceCoord": [0, 0, 0, 0, 0, 0]
}12.5 相贯线工件参数设置
命令字: 0x83B4
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| workPieceNum | int | 工艺号 | [1,3] |
cylinderIntersectLineParam(相贯线参数)
| 参数名 | 类型 | 说明 |
|---|---|---|
| R | double | 下圆柱半径 |
| r | double | 上圆柱半径 |
| e | double | 中心轴距 |
| alpha | double | 中心轴夹角 |
WorkPieceCoord
| 参数名 | 类型 | 说明 |
|---|---|---|
| - | double[] | X,Y,Z,A,B,C值 |
json
{
"workPieceNum": 1,
"cylinderIntersectLineParam": {
"R": 0,
"r": 0,
"e": 0,
"alpha": 0
},
"WorkPieceCoord": [0, 0, 0, 0, 0, 0]
}12.6 上位机查询相贯线工件参数
命令字: 0x83B5
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| workPieceNum | int | 工艺号 | [1,3] |
json
{
"workPieceNum": 1
}12.7 控制器回复相贯线工件参数
命令字: 0x83B6
返回参数同"相贯线工件参数设置",参见上方表格及示例。
12.8 相贯线焊枪参数设置
命令字: 0x83B7
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| workPieceNum | int | 工艺号 | [1,3] |
WeldingGunParam(焊枪参数)
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| alpha | double | - | [-60,60] |
| beta | double | - | [-60,60] |
| gama | double | - | [-180,180] |
| pos_hf_hq | double[] | 第三个量必须大于0 | - |
| startAngle | double | - | [-180,180] |
| totalAngle | double | - | [0,360] |
json
{
"workPieceNum": 1,
"WeldingGunParam": {
"alpha": 0,
"beta": 0,
"gama": 0,
"pos_hf_hq": [0, 0, 10]
},
"startAngle": 0,
"totalAngle": 360
}12.9 上位机查询相贯线焊枪参数
命令字: 0x83B8
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| workPieceNum | int | 工艺号 | [1,3] |
json
{
"workPieceNum": 1
}12.10 控制器回复相贯线焊枪参数
命令字: 0x83B9
返回参数同"相贯线焊枪参数设置",参见上方表格及示例。
12.11 上位机设置有无变位机
命令字: 0x83BA
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| workPieceNum | int | 工艺号 | [1,3] |
| withSyncPosFlag | int | 是否有无变位机 | 0:无变位机,1:有变位机 |
json
{
"workPieceNum": 1,
"withSyncPosFlag": 1
}12.12 上位机查询有无变位机
命令字: 0x83BB
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| workPieceNum | int | 工艺号 | [1,3] |
json
{
"workPieceNum": 1
}12.13 控制器回复有无变位机
命令字: 0x83BC
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| workPieceNum | int | 工艺号 | [1,3] |
| withSyncPosFlag | int | 是否有无变位机 | 0:无变位机,1:有变位机 |
json
{
"workPieceNum": 1,
"withSyncPosFlag": 1
}