본문으로 이동

매크로 파일 형식

이 섹션에서는 매크로 파일 형식에 대해 보다 상세하게 개괄적으로 설명합니다. .hrpr 저장됨.

파일을 열 때 .hrpr 기록된 내용을 보면, 일련의 헤더 필드 뒤에 시간 단위별로 정리된 거래 내역 데이터가 표시됩니다.

헤더에는 다음 키들이 포함되어 있습니다:

  • FORMAT_VERSION : 파일 형식의 버전을 지정하십시오 .hrpr.
  • PROGRAM_NAME : 파일이 저장된 전체 경로를 입력하십시오. 구분 기호 \ et / 멜랑제, 그리고 // 반복되더라도 파일 해석에는 영향을 미치지 않습니다.
  • DATE : 레코드의 생성 날짜를 입력하십시오.
  • SAMPLE_RATE : 녹음 빈도를 지정하십시오. HARP 는 다음 빈도로 녹음합니다. 초당 100개 샘플 (100 Hz).
  • POSITION_LEADER : 기기 식별 Inverse3 녹음 중에 포지션 리더로 활용되었다.
  • ORIENTATION_LEADER : 기기 식별 VerseGrip ou 루코 촬영 중 방향 안내자로 사용되었습니다.
  • FOLLOWERS : 레코딩에 포함된 추적 장치를 나열합니다. 예를 들어, cg_0 ~을 가리킨다 대조군 0, 괄호 안의 값은 해당 제어 그룹 내에서 추적기의 위치를 나타냅니다.
  • DESCRIPTION : 해당 기록과 관련된 선택적 자유 형식 설명이 포함되어 있습니다.

헤더 다음에는 기록된 거래 데이터가 아래 표에 설명된 형식에 따라 저장됩니다.

챔프의미예시
N#프레임 번호N1
N169
티#유닉스 타임스탬프 형식의 시간(밀리초 단위)t1788878409547
{...}프레임을 포함합니다. 각 추적자 행은 ,로 끝납니다. 파일을 읽으려면 파일에 적어도 하나의 완전한 블록이 포함되어 있어야 합니다.{cg_0::Follower(0): ...
cg_0::Follower(1): ...}
X Y Z미터 단위의 공구 위치 좌표X 0.1183887, Y -0.0375092, Z 0.1076392
rW rX rY rZ쿼터니언 형태의 공구 방향rW 0.1575889 rX -0.160 rY 0.973 rZ -0.051
에프#.#####선형 속도(이동 속도), m/sF0.0010804
F0.0150
파#.#####각속도 (이동 속도), rad/sFa0.2586200
Fa1.0053328
J6[#,#,#,#,#,#]라디안 단위의 각도J6[0.403, 0.157, 1.000, -0.936, 0.214, 0.977]
JV6[#,#,#,#,#,#]관절 가동 범위JV6[0.000 0.000 0.000 0.000 0.000 0.000]

선 해석​

  • X, Y, Z 명령을 명시하는 한 줄은 로봇을 해당 절대 직교 좌표 위치로 이동시킵니다.
  • 어떤 좌표가 omise, 로봇은 해당 축에 대해 현재 값을 유지합니다.
    • 예를 들어, 명령어에서 X가 생략된 경우, 이 명령은 현재 X 위치를 유지한 채 Y 및 Z와 같이 지정된 축만 업데이트합니다.
  • 파일 형식은 의도적으로 유연하게 설계되었습니다. 각 행에는 변경해야 할 축이나 값만 포함될 수 있습니다.
  • 파일을 수정할 때 .hrpr 이미 있는 경우, 다음을 사용하십시오. 다른 이름으로 저장 원본 파일을 보존하고, 수정된 매크로의 별도 버전을 생성하려면.

예시​

서식​

다음 예제는 매크로 파일의 일부를 보여줍니다. .hrpr 헤더 정보와 기록된 동작 샘플을 포함하여 기록된 내용:

(FORMAT_VERSION: 1)
(PROGRAM_NAME: C:\Users\demo\Documents\user\projects\demo\raw//2026-8-14_12-13-19.hrpr)
(DATE: 2026/09/14)
(SAMPLE_RATE: 100)
(POSITION_LEADER: 051D)
(ORIENTATION_LEADER: 1451)
(FOLLOWERS:
cg_0::Follower(0): Mecademic Industrial Robotics SERIAL (arm);
cg_0::Follower(1): Mecademic Industrial Robotics PARALLEL (end_effector);
)
(DESCRIPTION: a story of two machines)
N1 t1789402399210 {
cg_0::Follower(0): X0.1183887 Y0.0375092 Z0.1076392 rW0.1575889 rX-0.160 rY0.973 rZ-0.051 F0.0008606 Fa0.9414008 J6[0.403,0.157,1.000,-0.936,0.214,0.977] JV6[0.000,0.000,0.000,0.000,0.000,0.000] ,
cg_0::Follower(1): J1[4.800] ,
}
...

안전 Z 높이​

이 예제는 하나의 명령어로axe Z 해당 줄에 추가될 수 있습니다 N4 다른 축의 값을 변경하지 않고 로봇을 정확한 Z 위치로 이동시키기 위해.

생략된 축의 값은 유지되므로, 이 단계에서는 Z축만 업데이트됩니다.

N1 t1 {
0: X0.184 Y0.004 Z0.141 rW0.0498 rX-0.032 rY0.998 rZ-0.024 F0.00200 Fa0.005
}
N2 t10 {
0: X0.184 Y0.022 Z0.141 rW0.0498 rX-0.032 rY0.998 rZ-0.024
}
N3 t20 {
0: X0.184 Y0.022 Z-0.052 rW0.049 rX-0.032 rY0.998 rZ-0.024
}
N4 t31 {
0: Z0.600
}
N5 t41 {
0: X-0.005 Y0.022 Z-0.6 rW0.049 rX-0.032 rY0.998 rZ-0.024 F0.00010 Fa0.400
}
N6 t51 {
0: X-0.005 Y-0.054 Z0.000 rW0.049 rX-0.032 rY0.998 rZ-0.024
}

XY 이동​

이 예제는 X 및 Y 명령을 함께 사용하여 로봇을 오직 이 두 축을 따라만 이동시키는 방법을 보여줍니다.

줄바꿈 N5, X축과 Y축의 값만 업데이트됩니다. 생략된 모든 축은 현재 값을 유지합니다.

N1 t1 {
0: X0.184 Y0.004 Z0.141 rW0.0498 rX-0.032 rY0.998 rZ-0.024 F0.00200 Fa0.005
}
N2 t10 {
0: X0.184 Y0.022 Z0.141 rW0.0498 rX-0.032 rY0.998 rZ-0.024
}
N3 t20 {
0: X0.184 Y0.022 Z-0.052 rW0.049 rX-0.032 rY0.998 rZ-0.024
}
N4 t31 {
0: X0.184 Y0.022 Z-0.600 rW0.049 rX-0.032 rY0.998 rZ-0.024 F0.00010 Fa0.400
}
N5 t41 {
0: X-0.005 Y0.022
}
N6 t51 {
0: X-0.005 Y-0.054 Z0.000 rW0.049 rX-0.032 rY0.998 rZ-0.024
}

매크로 최적화​

다음 예제는 변경되어야 할 값만 각 명령에 포함되도록 최적화된 매크로를 보여줍니다.

  • 로봇의 방향은 시퀀스 전체에 걸쳐 변하지 않습니다.
  • 첫 번째 명령은 로봇을 지정된 이송 속도로 목표 최종 자세까지 이동시킵니다.
  • N2 다음만 업데이트됩니다.Y축.
  • N3 et N4 ~만 업데이트하고axe Z.
  • N5 업데이트됨도끼 X 그리고 이송 속도를 조정합니다.
  • N6 다음 두 가지를 동시에 업데이트했습니다.Y축 그리고 l'axe Z.

변하지 않는 값을 생략함으로써 매크로는 더 간결해지고, 읽거나 수정하기가 더 쉬워집니다.

N1 t1 {
0: X0.184 Y0.004 Z0.141 rW0.0498 rX-0.032 rY0.998 rZ-0.024 F0.00200 Fa0.005
}
N2 t10 {
0: Y0.022
}
N3 t20 {
0: Z-0.052
}
N4 t31 {
0: Z-0.600
}
N5 t41 {
0: X-0.005 F0.00010 Fa0.400
}
N6 t51 {
0: Y-0.054 Z0.000
}