3D 출력 전 가상 모델링 기반 사전 검증
1편에서는 8비트 ATmega328P 마이크로컨트롤러 위에서 50Hz 신경망 추론 엔진을 2,412바이트 플래시 메모리에 경량화해 적재한 과정을 다루었다. 하지만 제어 알고리즘이 아무리 가벼워도, 착용자의 신체 치수와 맞지 않는 기구부는 제 기능을 발휘하기 어렵다.
실제 출력과 가공에 들어가기 전에 관절 가동 범위나 인체 간섭 여부를 먼저 확인해야 했다. 불필요한 시행착오를 줄이기 위해 Unity 6000의 ArticulationBody 기반으로 6분절 인체 모델과 보조기 조립체를 1:1 기하학적으로 일치시킨 가상 검증 환경을 먼저 구축했다.


골반(Pelvis), 상체(HAT), 대퇴(Thigh), 하퇴(Shank), 발(Foot) 체인을 구성하고, ScriptableObject(LegAssistConfig)에서 인체 치수와 기구 오프셋을 조정하면 씬 전체가 파라메트릭하게 재배치되도록 했다. 시뮬레이션 수치의 신뢰도를 확인하기 위해 Newton-Euler 역동역학 수식 손계산값과 비교 대조했다.
| 검증 항목 | 해석 및 시뮬레이션 결과 | 검증 기준 및 문헌치 |
|---|---|---|
| 역동역학 해석해 대조 | 20.434 N·m | Newton-Euler 수식 손계산과 소수점 4자리 일치 |
| 전신 무게중심(COM) 높이 | 1.007 m (신장 1.75m 기준 57.5%) | 생체역학 문헌 표준값(55 ~ 57%) 범위 부합 |
| 한발 지지기 무릎 모멘트 | 0.54 N·m/kg | 정상 보행 임상 기준치(0.4 ~ 0.5 N·m/kg)에 수렴 |
| EditMode 자동 단위 테스트 | 30항목 통과 | 안전층 소프트리밋, 슬루레이트, 역동역학 검산 |
가상 조립 환경에서의 간섭 확인 — 허벅지 외측 오프셋 수정
시뮬레이션 환경에서 기구 배치를 확인하던 중 기하학적 간섭 문제를 발견했다. 초기 스케치에서는 프레임 오프셋을 다리 중심축 기준 60mm로 설정해 두었다.
그러나 표준 성인 남성의 대퇴 둘레(520mm)를 원형 단면으로 계산하면 대퇴 반지름이 약 82.8mm에 이른다. 60mm 위치에 수직 파이프를 배치할 경우 허벅지 단면 안쪽으로 약 22.8mm 침범하는 기하학적 간섭이 발생하는 계산이었다.

배선 안정화를 위한 Nano/ESP32 듀얼 소켓 KiCad PCB 설계
브레드보드 배선은 실험실 환경에서는 유효하지만, 실제 착용 시 진동과 움직임으로 인한 접촉 불량 위험이 크다. 안정적인 신호 전달과 착용 편의를 위해 맞춤형 2레이어 KiCad PCB 메인보드(leg_Project_1)를 설계했다.

여기서 핵심 전략은 '핀 호환 듀얼 소켓' 설계였다. 1차 프로토타입은 저전력 기본 동작 검증을 위해 Arduino Nano(ATmega328P)를 장착하지만, 향후 보호자 모니터링 앱과의 BLE 무선 데이터 통신이 필요할 때 보드를 새로 제작하지 않고 ESP32-C3/S3를 그대로 교체 장착할 수 있도록 핀아웃 매핑 회로를 단일 기판에 통합했다.
| 회로 블록 | 채택 부품 및 사양 | 설계 목적 및 안전 대책 |
|---|---|---|
| MCU 소켓 | Arduino Nano / ESP32 핀 호환 헤더 | 8비트 기본 제어 및 BLE 무선 확장 듀얼 지원 |
| 모터 드라이버 | L298N 듀얼 풀 브릿지 모듈 인터페이스 | 12V 구동, 하드웨어 퓨즈 및 150ms 과전류 차단 |
| 각도 센서계 | AS5600 12비트 I2C 자기식 절대 엔코더 | 무릎 회전축에 장착, 전원 인가 즉시 절대 각도 취득 |
| 지면 감지계 | 발꿈치 접지 스위치 / FSR 센서 풀다운 회로 | 발바닥 착지 순간 하드웨어 인터럽트로 입각기 진입 감지 |
원점 복귀 동작 최소화를 위한 AS5600 절대 엔코더 적용
초기에는 모터 축의 인크리멘탈(상대) 엔코더를 검토했으나, 전원을 인가할 때마다 원점(Homing) 확인을 위해 관절을 특정 각도까지 움직여야 하는 한계가 있었다. 보행 보조기 특성상 착용 상태에서 무리한 원점 동작을 수행하는 것은 적절하지 않았다.
이를 개선하기 위해 AS5600 12비트 I2C 자기식 비접촉 절대 엔코더를 무릎 관절 힌지 중심에 직결했다. 네오디뮴 자석의 자계 방향을 비접촉으로 읽어내므로 마모가 적고, 전원 인가 즉시 현재 관절 각도를 측정할 수 있어 별도의 원점 복귀 루틴을 생략할 수 있었다.
주요 하드웨어 자재 구성표 (BOM)
시중에서 쉽게 구할 수 있는 범용 규격품들과 3D 프린팅 파츠를 바탕으로 기구 및 전장 하드웨어 자재 명세서(BOM)를 정리했다.
| 파트 번호 | 품목 및 규격 | 수량 | 선정 사유 및 역할 |
|---|---|---|---|
| 01 | Arduino Nano (ATmega328P 호환 보드) | 1개 | Flash 7.4% 경량 TinyML 회귀 펌웨어 검증 완료 |
| 02 | JGB37-520 DC 엔코더 기어드 모터 (169:1) | 1개 | 스윙 보조용 고감속 메탈 기어박스 (무게 150g) |
| 03 | L298N 듀얼 H-Bridge 모터 드라이버 모듈 | 1개 | 내구성 검증된 범용 모듈, 피크 2A 지원 |
| 04 | AS5600 12비트 자기식 절대 엔코더 + 자석 | 1세트 | 원점 복귀 불필요, 0.088도 고분해능 I2C 각도 센싱 |
| 05 | WH148 B10kΩ 단회전 포텐셔미터 (건측용) | 1개 | 건측 다리 각도 측정용 아날로그 센서 |
| 06 | 발꿈치 접지 스위치 및 풀다운 배선 | 1세트 | 지면 착지 시 기계식 락 발동을 위한 접지 신호 감지 |
| 07 | Ø6mm 카본/알루미늄 튜브 및 3D 관절 파츠 | 1식 | 3D 프린팅 출력물 + 6×4mm 링크 프레임 |
| 08 | 네오프렌 피부 패딩 및 원터치 래칫 버클 | 2세트 | 착용자 피부 마찰 완화 및 버클 체결 구조 |
| 09 | 12V 배터리 케이스, 스위치, 안전 퓨즈 | 1식 | 18650 3S 보호회로 및 하드웨어 전원 차단기 |
| 합계 | SynchroLeg 단측(Single Leg) 하드웨어 구성 부품 | 전체 1식 | 특수 가공품 배제, 오픈소스/규격화 파츠 기반 |
2편 정리 및 모터 출력 검토 과제
가상 시뮬레이션으로 기하 간섭을 수정했고, KiCad로 회로를 그렸으며, 범용 규격 부품 기반의 자재표를 정리했다.
하지만 회로와 기구 파츠를 검토하는 과정에서 모터 출력에 대한 역학적 한계에 부딪혔다. 소형 저와트 모터의 토크만으로는 70kg 체중의 착용자가 한 발로 디딜 때 발생하는 무릎 관절 모멘트를 직접 감당하기 어렵다는 계산 결과 때문이었다.
다음 3편에서는 모터 출력 한계를 보완하기 위해 체중 지지는 기계식 락에 맡기고 모터는 공중 스윙 보조에 집중하는 준능동(Semi-Active) 구조로의 전환, 그리고 착용 편의를 고려해 골반 벨트를 제외하고 대퇴-하퇴 체결로 조정한 과정을 정리한다.