먼저 입력 오류를 고치고 물성을 비교한다
상자가 미끄러지거나 서랍이 진동할 때 마찰이나 감쇠부터 크게 바꾸고 싶어질 수 있다. 그러나 M25.01의 단위/질량 입력, M25.02의 축/한계·루트, M25.03의 collider/필터가 틀리면 물성을 바꾸어 우연히 비슷한 영상을 만들 수 있다. 모양이 비슷해진 것과 물리 모델이 맞아진 것은 다르다.
보정(calibration)은 정해진 관측과 모델의 차이를 줄이도록 매개변수를 정하고, 새 조건에서도 그 설명이 유지되는지 확인하는 과정이다. 먼저 어떤 관측이 어떤 계수에 정보를 주는지 나눈다. 목표·초기조건·단위·측정/제어 주기·엔진/버전·physics step·충돌/재질·소스 지문을 고정하고 기준/후보를 비교한다. 이번 자료는 실제 실험 결과가 아닌 교육용 합성 관측이다.
강성·감쇠가 만드는 힘을 단위로 읽는다
수평으로만 움직이는 질량m의 직선 force drive를 생각한다. 다른 수평 힘과 마찰이 없고 목표 속도v*=0일 때 위치오차 e=x*−x와 현재 속도v를 이용한다.
x는 m, v는 m/s, F는 N, a는 m/s²다. 강성(stiffness) k는 위치오차를 힘으로 바꾸며 N/m, 감쇠(damping) c는 속도 차이를 힘으로 바꾸며 N·s/m다. 이 예에서 양의 속도는 목표 쪽으로 접근하는 방향이므로 −cv가 힘을 줄인다. v가 음수라면 같은 감쇠항의 부호도 달라진다. 무조건 감쇠를 일정한 반대 방향 힘으로 넣지 않는다.
OpenUSD DriveAPI는 force와 acceleration 형태를 구분한다. 가속도 드라이브의 계수를 위 N 단위 force 식에 그대로 복사하지 않는다. 회전 드라이브도 토크·관성 및 degree/radian 규약을 갖는다. 여기서는 m/kg/s의 직선 force 모형만 계산하며 특정 솔버의 적분/제약 처리 전체를 재현하지 않는다.
이 식의 k/c는 관절 구동 법칙의 계수다. 두 표면이 눌리며 반발하는 접촉 모델의 stiffness/damping와는 적용 대상·단위/규약을 따로 확인한다. 이름이 같다는 이유로 한쪽 값을 다른 쪽에 복사하지 않는다.
힘 제한이±2N이라면 계산한 Fraw=5N이 그대로 적용되지 않고 현재 계약에서 F=2N으로 제한된다. m=2kg이면 가속도는1m/s²다. 제한을 무시한2.5m/s² 예측으로 관측과 비교하면 질량이나 강성을 잘못 추정할 수 있다. 실제 드라이브의 힘/토크 제한과 모드·적용값을 먼저 기록한다.
m·k·c에 정보를 주는 관측을 나눈다
아래는 같은 질량을 사용하되 조건을 분리한 합성 관측이다. 드라이브 표의 A/B는 순간 상태이고 정적 평형을 뜻하지 않는다. 같은 시각의 오차/속도·드라이브 힘을 주며 포화/다른 수평 힘/마찰은 없다.
| 자료 | 조건과 제공 관측 | 계산할 값 |
|---|---|---|
| M | drive를 끈 독립 시험, 알려진 순힘2N·가속도1m/s² | m=F/a=2kg |
| A | e=0.02m, v=0, v*=0, F=2N | k=2/0.02=100N/m |
| B | e=0.02m, v=0.05m/s, v*=0, F=1N | 1=2−0.05c이므로 c=20N·s/m |
속도가0인 순간이라고 순힘도0인 것은 아니다. A의 힘2N은 그 직후 속도가 변할 수 있음을 뜻한다. 정적 평형과 순간 속도0을 혼동하지 않는다. M도 무게가 아니라 수평 순힘을 사용한다.
만약 위치 응답만 있고 힘/질량 근거가 없으면 여러 m/k/c 조합이 비슷한 응답을 만들 수 있다. 이것이 식별 가능성 문제다. 독립 질량 근거·다른 속도/오차·힘 관측 같은 추가 정보 없이 “감쇠20을 찾아냈다”고 단정하지 않는다. 한 곡선에 맞춘 숫자와 실제 물성의 추정 근거를 구분한다.
정지 마찰은 항상 최대값으로 작용하지 않는다
이제 드라이브 없는 별도 수평 접촉 시험을 본다. 법선력 Fn=20N, 정지마찰계수 μs=0.5, 운동마찰계수 μk=0.3의 단순 Coulomb 근사를 제공한다. 회전/구름·다른 수평 힘은 제외한다. 법선력은 두 표면이 수직 방향으로 누르는 힘이며 현재 가정에서 일정하다.
정지 마찰의 크기는 필요에 따라 최대 μsFn=10N까지다. 외부에서8N으로 밀고 이미 정지한 상태를 유지할 수 있는 조건이면 마찰은8N으로 균형을 이룬다. 무조건10N이 작용해 역방향으로 가속한다고 계산하면 틀리다. 이 활동의 정지 유지 가능 경계는10N까지이며, 실제 전이/솔버 허용오차는 별도 확인한다.
이미 양의 방향으로 미끄러지는 동안 같은 표면의 운동 마찰은6N이다. 외력8N이면 순힘2N, 질량2kg의 가속도는 양의1m/s²다. “외력이 같으니 정지/미끄럼 상태의 결과도 같다”는 답은 상태 차이를 빠뜨린 것이다. 실제 재질은 두 표면의 결합 규칙과 관측 조건을 확인해야 한다.
접촉의 반발·접촉 offset·compliance와 관절 drive의 k/c도 같은 조절 손잡이가 아니다. Isaac Sim Physics Fundamentals는 접촉 offset과 재질/결합 설정을 구분한다. offset을 바꾸어 접촉 생성 시점·제약 수가 달라진 것을 마찰이나 물체 크기 개선으로 보고하지 않는다. 다른 백엔드에 같은 수치를 그대로 이식하지 않는다.
보정에 쓰지 않은 조건으로 다시 평가한다
A/B로 정한 k=100,c=20과 독립 m=2를 고정하고, 보정에 쓰지 않은 H를 확인한다. H는 e=0.03m, v=0.10m/s, v*=0인 같은 비포화/무마찰 순간 조건이다. 예측은 F=3−2=1N, a=1/2=0.5m/s²다. 제공 관측은 F=1.04N, a=0.52m/s²다.
사전 통과 조건은 |힘 오차|≤0.10N이고 |가속도 오차|≤0.05m/s²를 모두 만족하는 것이다. 이번 힘 오차0.04N·가속도 오차0.02m/s²는 통과한다. 경계값과 같은 오차도 포함한다. 이 숫자는 교육용 허용오차이며 모든 로봇·엔진의 합격 기준이 아니다.
H의 결과를 본 뒤 H에 맞춰 k/c를 다시 조절하면 H는 더 이상 미사용 검증 조건이 아니다. 보정 자료와 최종 평가 자료를 구분하고 추가 평가 조건을 확보한다. 실패 행을 삭제하거나 좋은 회차만 고르는 방법도 허용하지 않는다. M31.04의 반복·분모/회귀 점검과 같은 원칙이다.
한 번에 무엇을 바꿨는지 남긴다
질량·감쇠·마찰·step을 동시에 바꾸어 그림만 좋아졌다면 어떤 원인이 개선됐는지 알기 어렵다. 먼저 단위/형상·필터·드라이브 모드/포화·관측 시각을 확인하고, 근거 있는 질량을 고정한 뒤 분리 시험과 새 조건을 비교한다. 가정이 틀리면 더 복잡한 모델이나 추가 관측이 필요하다.
physics step이나 솔버 설정도 결과에 영향을 줄 수 있다. 렌더 FPS가 높다는 이유로 물리 갱신 간격이 작거나 접촉이 정확하다고 보고하지 않는다. step을 바꾼 시험은 별도 조건으로 남기고 원래 고정조건의 결과를 대체하지 않는다. 강성을 높이면 항상 정확해지거나 감쇠를 높이면 항상 더 빨라지는 것도 아니다. 힘 제한·응답 속도/오버슈트·수치적 조건을 함께 관찰한다.
기존 2.6 접촉 역학과 2.9 튜닝 절차를 보충 자료로 쓴다. 다음 M25.05에서는 이렇게 조건과 지문을 관리한 장면에서 합성 데이터를 만들 때 랜덤화·라벨·분할을 어떻게 남길지 확장한다.