ROBOT ENGINEERING NOTES

로봇과 AMR의
전장 설계부터 인증까지

회로 실무, 산업자동화, Functional Safety, ISO 규격과 로봇 인증을 실제 설계 관점에서 정리합니다.

회로 실무 AMR / AGV Functional Safety ISO 13849 EMC / CE
AMR ENGINEERING GUIDE →

【로봇 설계 실무】 로봇 모터 선정 방법 | 토크, 속도, 동역학 시뮬레이션으로 Motor Sizing

 

 

 

【Safety 기능안전】 AMR Functional Safety는 어떻게 설계할까? | STO, Brake, Recovery 실무

【통신 실무】 CAN_H와 CAN_L 전압은 몇 V가 정상일까? | CAN 신호 측정 방법【로봇-AMR 실무】 페라이트 코어 선정 방법 | EMC 시험, 주파수, 임피던스, 케이블 직경 비교로봇의 EMC 시험을 진행하다 보

terrypack.tistory.com

 

【통신 실무】 PLC 통신 공부는 무엇부터? Ethernet, RS-485, Modbus, PROFINET 학습 순서

INDUSTRIAL COMMUNICATION PLC 통신 공부는, 프로토콜보다 Network 기초부터 시작하는 편이 빠르다Ethernet, IP, TCP, RS-485, Modbus, PROFINET을 어떤 순서로 이해해야 실제 설비 Troubleshooting까지 연결되는지 정리한

terrypack.tistory.com

ROBOT MOTOR SIZING
로봇 모터는 W와 RPM부터 고르는 것이 아니라, 필요한 Motion에서 역으로 선정해야 한다.

실제 델타로봇을 설계하면서 Workspace와 Trajectory를 먼저 정하고, Kinematics와 Dynamics Simulation으로 Motor Torque, Speed, Power를 확인했던 과정을 실무 기준으로 정리한다.

로봇을 처음 설계할 때 모터 선정은 생각보다 자주 거꾸로 시작한다. 쇼핑몰이나 Catalog에서 100W, 200W Motor를 먼저 고른 뒤 "이 정도면 되겠지"라고 생각하고 기구를 맞추는 방식이다.

실제로 로봇을 만들어보면 이 방식은 위험하다. 같은 100W Motor라도 Gear Ratio, Link Length, Payload, Acceleration, Trajectory에 따라 필요한 Torque와 Speed가 완전히 달라진다.

필자가 델타로봇을 설계했을 때는 반대로 접근했다. 먼저 필요한 작업영역을 정하고, 그 작업영역을 만족하는 Link Geometry를 정한 다음, 실제 Trajectory에서 각 Joint가 요구하는 Torque와 Speed를 Simulation으로 계산해 Motor를 선정했다.

모터 선정의 핵심 순서
Motor Catalog → Robot Design이 아니라,
작업 요구사항 → Kinematics → Trajectory → Dynamics → Torque/Speed → Motor
순서로 접근하는 것이 안정적이다.

1. 모터 선정 전에 로봇이 해야 할 일을 숫자로 정한다

첫 단계는 Motor가 아니라 Requirement다. 당시 프로젝트에서는 End-effector가 필요한 영역을 약 100 mm x 100 mm x 20 mm로 정의했다.

이 값이 중요한 이유는 작업영역이 Link Length와 Joint Angle을 결정하고, Joint Motion이 다시 Motor Speed와 Torque에 영향을 주기 때문이다.

먼저 정의할 항목 왜 필요한가 Motor Sizing에 미치는 영향
Workspace End-effector가 도달해야 할 공간 Link Length와 Joint Range 결정
Payload 실제로 움직여야 할 질량 정적 Torque와 Inertia 증가
Cycle Time 한 동작을 얼마나 빨리 해야 하는가 Speed와 Acceleration 결정
Trajectory Point-to-Point인지 연속경로인지 Peak Torque와 Speed Pattern 변화
Accuracy 최종 위치 허용오차 Gear, Encoder, Backlash 요구조건 변화

2. Workspace를 정했으면 Kinematics로 기구 크기를 정한다

당시 델타로봇에서는 필요한 Workspace가 실제 가동범위 안에 들어오는지 먼저 Kinematics로 확인했다. Base와 End-effector 크기, 첫 번째 Link와 평행사변형 Link Length를 조정해 필요한 영역을 확보했다.

즉 "모터가 충분히 세면 어디든 갈 수 있다"가 아니다. 기구적으로 도달할 수 없는 위치는 Motor Torque를 아무리 높여도 해결되지 않는다.

Motor Sizing 전에 먼저 끝내야 하는 Geometry 검토
01Target XYZ필요 작업영역
02Link GeometryBase, Arm Length
03Inverse KinematicsJoint Angle 계산
04Joint Range기구 제한 확인
05Singularity불안정 영역 제외
06Workspace목표영역 확보

3. Torque는 Payload만으로 계산하면 부족하다

Robot Joint Torque에는 단순히 Payload 무게만 들어가는 것이 아니다. 중력, Link 자체의 질량, 가속에 필요한 Inertia Torque, 기구 Geometry가 모두 영향을 준다.

로봇 동역학은 일반적으로 다음 구조로 표현할 수 있다.

Robot Dynamics의 대표적인 형태
τ = M(q)q¨ + C(q,q˙)q˙ + G(q)

쉽게 풀면 첫 항은 "가속시키는 데 필요한 힘", 두 번째는 "움직이면서 생기는 동적 영향", 세 번째는 "중력을 버티는 힘"이라고 이해하면 된다.

당시에는 델타로봇의 Closed-chain 구조를 단순화해 Dynamics Model을 만들고 Matlab에서 Trajectory를 따라가며 Joint Torque를 계산했다.

정적인 Torque 계산만으로 끝내면 안 된다.
로봇이 정지해 있을 때 필요한 Torque보다 빠르게 가감속할 때 필요한 Peak Torque가 훨씬 커질 수 있다. 특히 Pick-and-Place처럼 Cycle Time이 짧은 장비에서는 Acceleration이 Motor Size를 결정하는 경우가 많다.

4. 실제로는 Trajectory를 넣고 Motor Speed와 Torque를 봤다

당시 Simulation에서는 Circle과 Butterfly 형태의 Trajectory를 사용했다. 단순히 한 위치를 유지하는 것이 아니라 실제 End-effector가 움직일 경로를 넣고 Joint Angle, Angular Velocity, Angular Acceleration을 계산했다.

그 결과 시간에 따른 Motor Speed, Torque, Power Graph를 만들 수 있었고, 필요한 Torque 수준을 기준으로 Motor 후보를 좁혔다.

STEP 01Trajectory

실제 동작경로를 만든다.

STEP 02Kinematics

Joint Angle로 변환한다.

STEP 03Dynamics

필요 Joint Torque를 구한다.

STEP 04Speed

Joint 최대속도를 확인한다.

STEP 05Motor

Torque-Speed 조건으로 선정한다.

5. Motor는 Torque와 Speed를 동시에 만족해야 한다

Motor Catalog에서 Torque만 만족하는 제품을 고르면 안 된다. 그 Torque를 필요한 Speed에서 낼 수 있는지 같이 봐야 한다.

회전계의 Mechanical Power
P = T × ω
ω = 2π × RPM / 60

예를 들어 큰 Torque가 필요하더라도 Speed가 낮다면 Gear Reduction으로 해결할 수 있다. 반대로 End-effector를 빠르게 움직여야 한다면 Gear Ratio를 너무 크게 잡았을 때 Motor는 충분히 돌지만 Output Speed가 부족해진다.

항목 너무 작으면 너무 크게 잡으면
Motor Torque 가속 불가, Stall 가능 크기, 비용, 관성 증가
Motor Speed Cycle Time 부족 불필요한 고속 정격
Gear Ratio Output Torque 부족 Speed 감소, Backlash 영향 증가 가능
Motor Inertia Load 대응 부족 가능 가감속 응답 저하

6. 정격 Torque와 Peak Torque는 따로 본다

실무적으로는 평균 또는 연속적인 Load를 담당하는 Continuous Torque와 가속구간에서 순간적으로 필요한 Peak Torque를 분리해서 보는 것이 좋다.

Simulation Graph에서 한 순간의 최대값만 보고 Motor를 크게 잡으면 과설계가 될 수 있고, 평균값만 보면 가속 순간에 Driver Current Limit에 걸릴 수 있다.

실무에서 보는 두 질문
① 이 Motor가 반복운전에서 열적으로 버틸 수 있는가?
② 가속 순간의 Peak Torque를 Driver Current Limit 안에서 낼 수 있는가?

7. Gearbox를 사용하면 Motor 쪽 요구조건은 어떻게 바뀔까?

이상적인 Gearbox를 단순화하면 Output Torque는 Gear Ratio에 비례해 증가하고 Output Speed는 반대로 감소한다.

T_out ≈ T_motor × G × η
ω_out ≈ ω_motor / G

여기서 G는 Reduction Ratio, η는 Gear Efficiency다. 하지만 실제 로봇에서는 Gear Ratio를 크게 하면 Backlash, Friction, Reflected Inertia와 Efficiency까지 같이 봐야 한다.

실제 프로젝트에서도 Gear Backlash가 Position Accuracy에 직접 영향을 줬기 때문에 Motor Sizing과 Gear Selection을 완전히 분리해서 생각할 수 없었다.

8. Motor를 고른 뒤 Driver도 다시 확인한다

Motor가 10A를 필요로 하는데 Driver가 5A까지만 낼 수 있다면 Motor Spec은 의미가 없다. Battery 또는 SMPS, Motor Driver, Cable, Connector까지 같은 Current Path로 봐야 한다.

Motor와 함께 확인할 Driver 항목
  • Continuous Current와 Peak Current
  • Supply Voltage Range
  • PWM Frequency
  • Current Limit과 Overcurrent Protection
  • Regenerative Energy 처리방법
  • Thermal Derating
  • Motor Inductance와 Driver 요구조건

9. Simulation 값 그대로 Motor를 고르면 안 되는 이유

Dynamics Model은 실제 Hardware를 완벽히 표현하지 못한다. Cable Drag, Bearing Friction, 조립오차, Gear Efficiency, Payload 편차 같은 요소가 빠질 수 있다.

그래서 Simulation은 정확한 Part Number를 자동으로 결정하는 도구라기보다 필요한 Torque-Speed 영역을 좁히는 도구로 보는 것이 좋다.

Margin은 일률적으로 2배라고 외우지 않는다.
필요 Margin은 Model Accuracy, Duty Cycle, Cooling, Payload Variation과 Safety Factor에 따라 달라진다. 계산 결과에 적절한 여유를 두되 최종적으로는 실제 Current, Temperature와 Motion Profile을 측정해 검증해야 한다.

10. 실제 제작에서는 반드시 Current와 Temperature를 다시 본다

Simulation에서는 Torque가 직접 계산되지만 실제 장비에서는 Motor Shaft Torque를 항상 쉽게 측정할 수 있는 것은 아니다. DC Motor에서는 Current가 Torque와 연결되므로 실제 운전 Current를 측정하는 것이 유용하다.

T ≈ Kt × I

그래서 Prototype 단계에서는 정상운전 Current, 가속 Peak Current, Stall 근처 Current를 기록하고 Motor와 Driver Temperature를 같이 확인하는 편이 좋다.

11. 내가 다시 로봇 Motor를 선정한다면 이 순서로 한다

Robot Motor Sizing Checklist
  • Workspace와 Payload부터 숫자로 정의한다.
  • Cycle Time과 최대 Velocity, Acceleration을 정한다.
  • Kinematics로 Joint Range와 Speed를 계산한다.
  • Dynamics로 시간에 따른 Joint Torque를 계산한다.
  • Continuous Torque와 Peak Torque를 분리한다.
  • Torque-Speed Curve에서 실제 운전점을 확인한다.
  • Gear Ratio와 Gear Efficiency, Backlash를 같이 검토한다.
  • Driver Current와 Supply Power가 Motor 요구조건을 만족하는지 확인한다.
  • Prototype에서 Current와 Temperature를 실제로 측정한다.
  • 최종 판단은 End-effector의 Cycle Time과 Accuracy로 한다.

12. 해당 프로젝트의 핵심

KEY 01Motor는 마지막에 고른다

먼저 작업영역과 Motion을 정의해야 Motor가 해야 할 일이 결정된다.

KEY 02Peak와 Average를 분리한다

가속 순간과 반복운전의 열적 요구조건은 서로 다르다.

KEY 03Gearbox도 Control System의 일부다

Torque만 키우는 부품이 아니라 Speed와 Backlash까지 바꾼다.

KEY 04Simulation 뒤에는 반드시 실측이 필요하다

실제 Current, Temperature와 End-effector 성능으로 계산을 검증해야 한다.

마무리

로봇 Motor 선정은 "몇 W짜리 Motor가 필요한가?"라는 질문으로 시작하면 어렵다. 대신 "이 Robot이 어떤 경로를 얼마의 시간 안에 움직여야 하는가?"부터 시작하면 설계가 훨씬 명확해진다.

실제 델타로봇 프로젝트에서도 Workspace를 정의하고 Kinematics와 Dynamics를 거쳐 Motor Speed, Torque, Power를 계산한 뒤 Motor를 선정했다. 이 과정 덕분에 Motor 선정 근거를 단순 감각이 아니라 Motion Requirement로 설명할 수 있었다.

반응형
LIST