비전프로세스
설정비전매개변수
0x4101 VISION_PARAMETER_SET
{
"cameraType": "customize",
"robot": 1,
"vision": {
"protocol": {
"addDataInitialPara": "GD001",
"addDataNum": 5,
"angleUnit": 0,
"endMark": "$",
"failFlag": "NG",
"frameHeader": "@",
"hasTCS": true,
"hasUCS": false,
"separator": ",",
"singleTarget": false,
"successFlag": "OK",
"timeOut": 30,
"type": 1
},
"socket": {
"IP": "192.168.1.120",
"camera_data_type": 0,
"portNum": 1,
"portOne": 5050,
"portTwo": 0,
"server": true
},
"trigger": {
"IOPort": 0,
"duration": 1000,
"intervals": 35,
"triggerMode": 2,
"triggerOnce": true,
"triggerStr": "TRG"
},
"userCoordNum": 2
},
"visionNum": 0
}매개변수 설명:
| 매개변수分클래스 | 매개변수이름 | 유형 | 설명 |
|---|---|---|---|
| cameraType | - | string | 카메라유형,기본값"customize" |
| robot | - | int | 로봇 번호 |
| vision.protocol | addDataInitialPara | string | 附추가데이터起시작변수 |
| vision.protocol | addDataNum | int | 附추가데이터번째수 |
| vision.protocol | angleUnit | int | 0: 角도;1: 弧도 |
| vision.protocol | endMark | string | 종료符 |
| vision.protocol | failFlag | string | 실패전송标志符 |
| vision.protocol | frameHeader | string | 帧头 |
| vision.protocol | hasTCS | bool | 수신좌표계 도구 |
| vision.protocol | hasUCS | bool | 수신좌표계 사용자 |
| vision.protocol | separator | string | 分割符 |
| vision.protocol | singleTarget | bool | 单대상활성화 |
| vision.protocol | successFlag | string | 성공전송标志符 |
| vision.protocol | timeOut | int | 타임아웃일 때사이 |
| vision.protocol | type | int | 0: 2D, 1: 2D+高도, 2: 3D |
| vision.socket | IP | string | 카메라IP |
| vision.socket | camera_data_type | int | 0: 로봇좌표, 1: 像素좌표 |
| vision.socket | portNum | int | 포트수 |
| vision.socket | portOne | int | 포트1 |
| vision.socket | portTwo | int | 포트2 |
| vision.socket | server | bool | true: 服务端, false: 클라이언트 |
| vision.trigger | IOPort | int | 触전송방식 绑설정IO포트 |
| vision.trigger | duration | int | 持续일 때사이 |
| vision.trigger | intervals | int | 触전송주기 |
| vision.trigger | triggerMode | int | 1: IO, 2: Ethernet |
| vision.trigger | triggerOnce | bool | true: 单회, false: 多회 |
| vision.trigger | triggerStr | string | 触전송문자열 |
| vision | userCoordNum | int | 手眼캘리브레이션사용자좌표계 |
| - | visionNum | int | 프로세스번호,부터0시작 |
조회비전매개변수
0x4102 VISION_PARAMETER_INQUIRE
{
"robot": 1,
"visionNum": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호,부터0시작 |
반환조회비전매개변수결과
0x4103 VISION_PARAMETER_RESPOND
{
"cameraList": {
"currentName": "customize",
"listNum": 0
},
"protocol": {
"addDataInitialPara": "GD002",
"addDataNum": 4,
"angleUnit": 1,
"endMark": "*",
"failFlag": "N",
"frameHeader": "#",
"hasTCS": true,
"hasUCS": true,
"separator": ".",
"singleTarget": true,
"successFlag": "OK",
"timeOut": 31,
"type": 2
},
"socket": {
"IP": "192.168.1.14",
"camera_data_type": 1,
"portNum": 2,
"portOne": 5052,
"portTwo": 5051,
"server": false
},
"trigger": {
"IOPort": 2,
"duration": 100,
"intervals": 35,
"triggerMode": 2,
"triggerOnce": false,
"triggerStr": "TG"
},
"userCoordNum": 100
}반환매개변수 설명:
| 매개변수分클래스 | 매개변수이름 | 유형 | 설명 |
|---|---|---|---|
| cameraList | currentName | string | 현재카메라이름 |
| cameraList | listNum | int | 기본값구성 |
| protocol | (同설정) | - | 协议매개변수,자세히方 |
| socket | (同설정) | - | Socket매개변수,자세히方 |
| trigger | (同설정) | - | 触전송매개변수,자세히方 |
| - | userCoordNum | int | 사용자좌표계编번호 |
비전위치매개변수설정
0x4104 VISION_POS_PARAMETER_SET
{
"position": {
"angleDirection": 1,
"cameraPoint": [0.0, 0.0, 100.0, 0.0, 0.0, 0.0],
"datumPoint": [0.0, 0.0, 0.0, 3.140, 0.0, 0.0, 0.0],
"excursion": {
"Xexcursion": 1.0,
"Yexcursion": 2.0,
"Zexcursion": 3.0,
"angle": 4.0
},
"recvPointsType": 0,
"scale": 1.0
},
"robot": 1,
"visionNum": 0
}매개변수 설명:
| 매개변수分클래스 | 매개변수이름 | 유형 | 설명 |
|---|---|---|---|
| position | angleDirection | int | 角도방향,1또는-1 |
| position | cameraPoint | array | 제1비트X값을,제二비트Y값을,제三비트高도,제四비트角도。 若매개변수유형예2D와/과2D+H,则저장4元배열[x,y,H,angle]。 若이(가)3D,则저장6元배열[x,y,z,a,b,c]。 |
| position | datumPoint | array | 基准포인트x,y,z,a,b,c |
| position.excursion | Xexcursion | float | X방향偏이동 |
| position.excursion | Yexcursion | float | Y방향偏이동 |
| position.excursion | Zexcursion | float | Z방향偏이동 |
| position.excursion | angle | float | 角도偏이동 |
| position | recvPointsType | int | 연결受위치유형:0: 포인트,1: 궤적 |
| position | scale | float | 比例系수 |
| - | robot | int | 로봇 번호 |
| - | visionNum | int | 프로세스번호,부터0시작 |
비전위치매개변수조회
0x4105 VISION_POS_PARAMETER_INQUIRE
{
"robot": 1,
"visionNum": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호,부터0시작 |
반환0x4105조회결과
0x4106 VISION_POS_PARAMETER_RESPOND
同:0x4104
조회비전조정테스트포인트열테이블
0x4107 VISION_DEBUGGING_POS_INQUIRE
{
"robot": 1,
"visionNum": 1,
"conveyorNum": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호,부터0시작 |
| conveyorNum | int | 컨베이어프로세스번호,부터1시작 |
반환비전조정테스트포인트열테이블
0x4108 VISION_DEBUGGING_POS_RESPOND
{
"robot": 1,
"visionNum": 1,
"originPos": [
{"X": 0.0, "Y": 0.0, "Z": 0.0, "angle": 0.0},
{"X": 0.0, "Y": 0.0, "Z": 0.0, "angle": 0.0},
{"X": 0.0, "Y": 0.0, "Z": 0.0, "angle": 0.0}
],
"currentPos": [
{"X": 0.0, "Y": 0.0, "Z": 0.0, "angle": 0.0},
{"X": 0.0, "Y": 0.0, "Z": 0.0, "angle": 0.0},
{"X": 0.0, "Y": 0.0, "Z": 0.0, "angle": 0.0}
]
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호,부터0시작 |
| originPos | array | 原시작위치열테이블 |
| currentPos | array | 현재위치열테이블 |
비우기비전조정테스트포인트열테이블
0x4109 VISION_DEBUGGING_POS_CLEAR
{
"robot": 1,
"visionNum": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호,부터0시작 |
拍照
0x410A VISION_DEBUGGING_TAKE_PICTURE
拍照이전필요전원 켜기
{
"robot": 1,
"visionNum": 0
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
계산偏이동
0x410B VISION_DEBUGGING_CALCULATE
반환0x4108
{
"robot": 1,
"visionNum": 0,
"conveyorNum": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
| conveyorNum | int | 컨베이어프로세스번호 |
모션至해당포인트
0x410C VISION_DEBUGGING_POS_MOVE
{
"robot": 1,
"visionNum": 1,
"type": 1,
"posNum": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
| type | int | 0: 테스트拍照포인트,1: 위치조정테스트포인트,2: 抓가져오기자세基准포인트 |
| posNum | int | 포인트编번호,1-20 |
캘리브레이션抓가져오기자세
0x4110 VISION_GESTURE_CALIBRATION_SET
캘리브레이션뒤,필요사용하여0x4104재갱신쓰기
{
"robot": 1,
"visionNum": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
반환캘리브레이션결과
0x4111 VISION_GESTURE_CALIBRATION_RESPOND
{
"datumPoint": [0, 0, 0, 0, 0, 0],
"datumPointDeg": [0, 0, 0, 0, 0, 0]
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| datumPoint | array | 基准포인트弧도생성 |
| datumPointDeg | array | 基准포인트角도생성 |
해제抓가져오기자세캘리브레이션
0x4116 VISION_GESTURE_CALIBRATION_CLEAR
비우기뒤,필요사용하여0x4104재갱신쓰기
{
"robot": 1,
"visionNum": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
테스트拍照
0x4112 VISION_TRY_TAKE_PICTURE
{
"visionNum": 1,
"robot": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| visionNum | int | 프로세스번호 |
| robot | int | 로봇 번호 |
반환拍照결과
0x4113 VISION_TAKE_PICTURE_RESPOND
{
"cameraData": "",
"cameraPoint": [0, 0, 0, 0, 0, 0]
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| cameraData | string | 카메라데이터 |
| cameraPoint | array | 카메라포인트。3D카메라6번째값,아니오则4번째 |
비전IP매개변수조회
0x4114 VISION_IPPARAM_INQUIRE
{
"visionNum": 1,
"robot": 1,
"server": true
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| visionNum | int | 프로세스번호 |
| robot | int | 로봇 번호 |
| server | bool | true: 服务端, false: 클라이언트 |
반환0x4114조회결과
0x4115 VISION_IPPARAM_RESPOND
{
"visionNum": 1,
"robot": 1,
"server": true,
"IP": "192.168.1.120"
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| visionNum | int | 프로세스번호 |
| robot | int | 로봇 번호 |
| server | bool | true: 服务端, false: 클라이언트 |
| IP | string | IP주소 |
비전캘리브레이션매개변수설정
0x4117 VISION_CALIBRATION_PARAM_SET
{
"robot": 1,
"visionNum": 1,
"calibration": {
"point_num": 9,
"calibrated": false,
"point": [
{
"pixel_pos": [1, 2, 3, 4, 5, 6, 7],
"robot_pos": [1, 2, 3, 4, 5, 6, 7]
},
{
"pixel_pos": [1, 2, 3, 4, 5, 6, 7],
"robot_pos": [1, 2, 3, 4, 5, 6, 7]
}
]
}
}매개변수 설명:
| 매개변수分클래스 | 매개변수이름 | 유형 | 설명 |
|---|---|---|---|
| - | robot | int | 로봇 번호 |
| - | visionNum | int | 프로세스번호 |
| calibration | point_num | int | 캘리브레이션포인트번째수 |
| calibration | calibrated | bool | 여부완료캘리브레이션 |
| calibration.point | pixel_pos | array | 像素좌표 |
| calibration.point | robot_pos | array | 로봇좌표 |
비전캘리브레이션매개변수조회
0x4118 VISION_CALIBRATION_PARAM_INQUIRE
{
"robot": 1,
"visionNum": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
반환0x4118조회결과
0x4119 VISION_CALIBRATION_PARAM_RESPOND
{
"calibration": {
"calibrated": false,
"point": [
{
"pixel_pos": [0, 0, 0, 0, 0, 0, 0],
"pixel_pos_deg": [0, 0, 0, 0, 0, 0, 0],
"robot_pos": [0, 0, 0, 0, 0, 0, 0],
"robot_pos_deg": [0, 0, 0, 0, 0, 0, 0]
}
],
"point_num": 6
},
"robot": 1,
"visionNum": 0
}반환매개변수 설명:
| 매개변수分클래스 | 매개변수이름 | 유형 | 설명 |
|---|---|---|---|
| calibration | calibrated | bool | 여부완료캘리브레이션 |
| calibration | point_num | int | 캘리브레이션포인트번째수 |
| calibration.point | pixel_pos | array | 像素좌표弧도 |
| calibration.point | pixel_pos_deg | array | 像素좌표角도 |
| calibration.point | robot_pos | array | 로봇좌표弧도 |
| calibration.point | robot_pos_deg | array | 로봇좌표角도 |
| - | robot | int | 로봇 번호 |
| - | visionNum | int | 프로세스번호 |
캘리브레이션해당포인트
0x411A VISION_CALIBRATION_MARK_POINT
{
"robot": 1,
"visionNum": 1,
"point_num": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
| point_num | int | 캘리브레이션포인트编번호 |
반환응답캘리브레이션해당포인트데이터
0x411B VISION_CALIBRATION_MARK_RESPOND
{
"robot": 1,
"visionNum": 0,
"point_num": 1,
"pixel_pos": [1, 2, 3, 4, 5, 6, 7],
"robot_pos": [1, 2, 3, 4, 5, 6, 7],
"pixel_pos_deg": [1, 2, 3, 40, 50, 60, 7],
"robot_pos_deg": [1, 2, 3, 40, 50, 60, 7]
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 비전프로세스번호 |
| point_num | int | 캘리브레이션포인트编번호 |
| pixel_pos | array | 像素좌표 |
| robot_pos | array | 로봇좌표 |
| pixel_pos_deg | array | 像素좌표角도생성 |
| robot_pos_deg | array | 로봇좌표角도생성 |
모션해당포인트
0x411C VISION_CALIBRATION_MOVE_TO_POINT
{
"robot": 1,
"visionNum": 1,
"point_num": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
| point_num | int | 캘리브레이션포인트编번호 |
해제해당포인트데이터
0x411D VISION_CALIBRATION_REMOVE_POINT
{
"robot": 1,
"visionNum": 1,
"point_num": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
| point_num | int | 캘리브레이션포인트编번호 |
自이동캘리브레이션실행계산
0x411E VISION_CALIBRATION_AUTO_RUN_AND_CALCULATION
{
"robot": 1,
"visionNum": 1,
"caculate_type": 0
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
| caculate_type | int | 0: 眼에서手 |
自이동캘리브레이션:반환像素좌표
0x4120 VISION_CALIBRATION_CAMERA_DATA_RESPOND
{
"robot": 1,
"visionNum": 1,
"point_num": 1,
"pixel_pos": [1, 2, 3, 4, 5, 6, 7],
"pixel_pos_deg": [1, 2, 3, 40, 50, 60, 7]
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
| point_num | int | 포인트번호 |
| pixel_pos | array | 像素좌표 |
| pixel_pos_deg | array | 像素좌표角도생성 |
캘리브레이션계산결과
0x4121 VISION_CALIBRATION_CALC_RESPOND
{
"robot": 1,
"visionNum": 1,
"result": false
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
| result | bool | true: 성공, false: 오류 |
가져오기消自이동캘리브레이션
0x4122 VISION_CALIBRATION_CANCEL_CALCULATION
{
"robot": 1,
"visionNum": 1
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
설정비전범위
0x3F04 VISION_RANGE_SET
{
"robot": 1,
"visionNum": 0,
"visionRange": {
"maxX": "0",
"maxY": "1.1",
"maxZ": "222",
"minX": "0.003",
"minY": "0",
"minZ": "0"
}
}매개변수 설명:
| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호,1~4 |
| visionNum | int | 프로세스번호,0~8 |
| visionRange.maxX | string | X최대값을,미설정则이(가)空문자열"" |
| visionRange.maxY | string | Y최대값을 |
| visionRange.maxZ | string | Z최대값을 |
| visionRange.minX | string | X최소값을 |
| visionRange.minY | string | Y최소값을 |
| visionRange.minZ | string | Z최소값을 |
조회비전범위
0x3F05 VISION_RANGE_INQUIRE
{
"robot": 1,
"visionNum": 0
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| visionNum | int | 프로세스번호 |
반환조회비전범위결과
0x3F06 VISION_RANGE_RESPOND
{
"maxX": "",
"maxY": "1.1",
"maxZ": "222",
"minX": "0.003",
"minY": "0",
"minZ": "0"
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| maxX | string | X최대값을,미설정则이(가)空문자열"" |
| maxY | string | Y최대값을 |
| maxZ | string | Z최대값을 |
| minX | string | X최소값을 |
| minY | string | Y최소값을 |
| minZ | string | Z최소값을 |
위치캘리브레이션协议
0x4128 VISION_RANGE_CALIBRATION_POS_INQUIRE
{
"robotid": 1,
"craftid": 0
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robotid | int | 로봇 번호,1~4 |
| craftid | int | 프로세스번호,0~99 |
回복원0x4128
0x4129 VISION_RANGE_CALIBRATION_POS_RESPOND
{
"robotid": 1,
"craftid": 0,
"pos": [0, 0, 0, 0, 0, 0, 0]
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robotid | int | 로봇 번호 |
| craftid | int | 프로세스번호 |
| pos | array | 현재위치 |
#########################以2207버전없음해당기능#############################
캘리브레이션결과저장
저장自이동캘리브레이션제2종류유형캘리브레이션도구결과
0x4123 VISION_CALIBRATION_SAVE_RESULT
{
"robot": 1,
"tool_num": 1,
"tool_hand": [0, 0, 0, 0, 0, 0]
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| tool_num | int | 도구编번호 |
| tool_hand | array | 도구데이터 |
手眼캘리브레이션:에 따라socket데이터계산변환矩阵
0x4124 VISION_CALIBRATION_CALCULATE_BY_SOCKET_DATA
{
"robot": 1,
"vision_num": 1,
"calculation_type": 0,
"base_robot_pos": [0, 0, 0, 0, 0, 0],
"mark_pos": [
{
"robot_pos": [0, 0, 0, 0, 0, 0],
"camera_pos": [0, 0, 0, 0, 0, 0]
}
]
}매개변수 설명:
| 매개변수分클래스 | 매개변수이름 | 유형 | 설명 |
|---|---|---|---|
| - | robot | int | 로봇 번호 |
| - | vision_num | int | 프로세스번호,부터0시작 |
| - | calculation_type | int | 0: 眼에서手아님변경자세手眼캘리브레이션 1: 眼에서手변경자세手眼캘리브레이션 2: 眼에서手이외手眼캘리브레이션 |
| - | base_robot_pos | array | 직교좌표 |
| mark_pos | robot_pos | array | 직교좌표 |
| mark_pos | camera_pos | array | 카메라좌표 |
비전캘리브레이션결과응답
0x4125 VISION_CALIBRATION_CALCULATE_BY_SOCKET_DATA_RESPOND
{
"robot": 1,
"vision_num": 1,
"result": true,
"matrix": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
}| 매개변수이름 | 유형 | 설명 |
|---|---|---|
| robot | int | 로봇 번호 |
| vision_num | int | 프로세스번호,부터0시작 |
| result | bool | true: 성공, false: 오류 |
| matrix | array | 변환矩阵 |