[robot]_algo.json 파일 속성 정의¶
[robot]_algo.json은 로봇 구성 파일입니다. 로봇의 다양한 속성 정보를 기록하고 로봇의 분류, 각 연결봉의 DH 파라미터, 각 관절 운동의 상한 및 하한, 각 관절의 시작 위치 및 회전 방향 등 내용을 결정합니다 . 다음은 [robot]_algo.json 파일의 코드 스니펫입니다.
{
"algo_type": "UR_UR5_Like",
"robot_type": "UR_16E",
"dh": [ A, B, D, G, F, H ],
"shoulder_offset": C,
"elbow_offset": E,
"min_limits": [ J1 min, J2 min, J3 min, J4 min, J5 min, J6 min ],
"max_limits": [ J1 max, J2 max, J3 max, J4 max, J5 max, J6 max ],
"mastering_joints": [ J1, J2, J3, J4, J5, J6 ], # Unnecessary
"axis_flip": "J1J2J3J4J5J6" # Unnecessary
}
파일에 있는 각 속성의 기능과 정의는 아래에 설명되어 있습니다.
- algo_type
- 로봇 구성, Mech-Viz V1.6.0에서 로봇은 13개의 범주로 구분되며, 각 로봇 구성에 대한 자세한 내용은 로봇 구성 페이지를 참조할 수 있습니다.
- robot_type
- 로봇 이름은 로봇 모델 폴더 이름과 일치해야 합니다. 그렇지 않으면 로봇 모델을 찾을 수 없습니다.
- dh
- 로봇의 능동관절의 DH 파라미터.
- minlimits、maxlimits
- minlimits 및 maxlimits는 각각 로봇의 각 축의 최대 및 최소 동작 범위입니다. 현재 FANUC과 Nachi를 제외하고 로봇의 각 축의 정확한 운동 범위는 로봇 제품 매뉴얼에서 얻을 수 있습니다.
힌트
이 속성은 각 관절에 대해 상한과 하한의 두 가지 파라미터로 나뉩니다. 이 속성은 Axis_flip 속성과 관련이 있으며, 경우에 따라 상한 및 하한 파라미터와 부호를 반대로 바꿔야 합니다.
- mastering_joints
- mastering_joints는 로봇의 각 축의 위치가 0도일때의 위치를 결정합니다. 파라미터가 모두 0일 때 로봇의 각 축의 0 위치는 모델링 시 모델의 자세와 일치합니다. 일부 로봇의 경우, 예를 들면 KUKA 전 시리즈 로봇과 같은 J2 및 J3이 0일 때 자세가 Mech-Viz의 기본 자세가 아니므로 J2 및 J3 mastering_joints 파라미터를 그에 따라 조정해야 합니다.
- axis_flip
- axis_flip 속성은 각 축의 회전 방향을 결정하며, 로봇 모델이 완성된 후에는 각 축의 회전 방향이 Mech-Viz 및 로봇 시뮬레이션 소프트웨어와 일치하는지 또는 실제 로봇과 일치하는지 확인해야 합니다. 일치하지 않는 경우 이 파라미터를 조정해야 합니다.
힌트
이 파라미터는 로봇 관절 각도 상한 및 하한 minlimits, maxlimits 및 동적 한계 link3_dynamic_limits, link4_dynamic_limits 파라미터에 영향을 줍니다.
새로 만든 로봇을 사용하는 경우 실제 로봇에서 다음 파라미터를 확인해야 합니다.
- axis_flip
- Mech-Viz와 실제 로봇의 각 축 회전 방향이 일치하는지 비교하여 확인합니다.
- dh(중요)
- 다음 두 가지 방법을 사용하여 Mech-Viz에서 시뮬레이션된 로봇과 실제 로봇의 포즈 데이터가 일치한지 비교합니다.
관절 각도를 동기화하여 TCP 포즈와 비교하기
TCP 포즈를 동기화하여 관절 각도와 비교하기
힌트
실제 로봇의 DH 파라미터가 파라미터 파일의 이론값에 가까울수록 로봇의 정확도가 높아집니다. 일반적으로 1mm 미만의 오차는 허용되는 것으로 간주됩니다.
- mastering_joints
- Mech-Viz에서 시뮬레이션된 로봇의 포즈 데이터가 실제 로봇의 포즈 데이터와 일치하는지 비교하고 확인합니다.
힌트
검사하는 동안 축 1, 4, 6에 특별한 주의를 기울여야 합니다.
- min_limits/max_limit
- Mech-Viz에서 시뮬레이션된 로봇의 포즈 데이터가 실제 로봇의 포즈 데이터와 일치하는지 비교하고 확인합니다.
힌트
소프트 한계는 실제 로봇의 하드 한계보다 크지 않아야 합니다.