Robot Software Engineer

KIM JONG MYUNG

|

About Me

김 종 명

Robot Software Engineer

Seoul, Republic of Korea
jongbob1918@gmail.com

Education

인하공업전문대학 | 항공기계공학과

애드인에듀 | AI 자율주행 로봇 개발자 과정 9기 수료

Tech Stacks

ROBOTICS
ROS1/2 Nav1/2 Gazebo Isaac Sim
LANGUAGE & FRAMEWORK
Python C++ Git Ubuntu Docker
AI & Vision
PyTorch OpenCV Object Detection Pose Estimation
Collaboration
Jira Confluence Slack

01. JAVIS (도서관/카페 서비스 로봇)

Team 9인 프로젝트
Period 2024.09 - 2024.11
ROS 2 Nav2 State Machine

도서관, 카페 등 복합적이고 좁은 실내 환경에서 단순 주행을 넘어 안내, 서가 정리 등 구체적인 임무를 수행할 수 있는 통합 로봇 시스템 구축을 목표로 개발

Key Features & My Role
DMC Logic
DMC GUI
1. Robot Main Controller 개발

State Machine 기반으로 로봇를 제어하고 예외 상황(배터리, 충돌)을 고려해 설계하여 안정성을 확보하고 Main Controller 전용 GUI 툴을 개발해 로봇 내부 상태를 시각화 및 검증

DMC Logic
DMC GUI
2. 서브시스템 추상화 설계 & Mock 구현

AI, 주행, 암 제어 등 하위 시스템과의 통신 규약을 추상화하여 타 파트의 진척도와 무관하게 개발할 수 있도록 인터페이스를 정의하고 Mock 객체를 구현하여 테스트시 병목현상을 예방

DMC Logic
DMC GUI
3. Navigation 최적화

Navigation Stack 분석을 기반으로 Costmap 파라미터 튜닝 및 다양한 컨트롤러 비교 검증을 수행하여 좁은 통로와 복잡한 서가 공간에서의 주행 성능을 최적화

01. JAVIS - Trouble Shooting

문제점
Collision Issue
좁은 통로 및 복잡한 공간 주행 시

• cost map에서 inflation layer을 높이면 좁은 길 진입 실패 및 Recovery Loop 발생, 낮추면 벽면 충돌 위험 증가

• 직사각형 차동 로봇이 장애물이나 협소한 공간에 있을때 빠져 나오지 못하거나 그로인해 회복동작(Rotate/costmap reset)중 장애물과 빈번한 충돌 발생

문제분석
기구학적 불일치

• NavFn Planner가 로봇의 실제 크기를 무시한 '점 모델' 경로를 생성하여 복잡하거나, 좁은공간 내에서 직사각형 로봇이 경로를 추종하기 힘듬

센서 인지 사각지대

• LiDAR 필터링 범위가 실제 로봇 모델보다 넓게 설정되어, 코앞의 장애물을 노이즈로 판단해 무시해 rotate나 costmap 초기화 시 근접 장애물과 충돌 되는 현상을 확인

제어 알고리즘 제약

• DWB Controller의 단순 속도 샘플링 방식이 복잡한 공간에서 유효한 회피 궤적을 찾지 못하고 주행이 정체되는 한계가 있음

해결방안
Navigation Result
Smac Planner Hybrid 도입

로봇 형상(직사각형)과 회전 반경/후진가능 여부을 반영해 경로를 생성하여 좀더 복잡한공간에서 안정적으로 주행 가능하도록 개선

센서/cost 최적화

LiDAR 필터 범위 재설계 및 코스트맵 가중치 튜닝으로 중앙 주행 유도하면서 좁은 공간도 안정적으로 주행 가능하도록 최적화

MPPI Controller 전환

샘플링 기반 모델 예측 제어를 통해 장애물 밀집 구간에서의 부드러운 속도 조절 및 주행 유연성이 향상됨

02. ROOMIE (호텔 실내 서비스 로봇)

Team 4인 프로젝트
Period 2025.07.07 - 08.13
Role Arm Control, PM
ROS 2 ikpy Visual Servoing JiraPythonEsp32

호텔 객실 배송 서비스와 기존 엘리베이터 연동 API 방식을 사용하지 않고 로봇이 인식/판단하여 물리적으로 버튼을 조작 후 층간 이동하는 시스템을 목표로 개발

Key Features & My Role
IK Logic Flow
로봇 팔 기구학 및 진입 자세 설계

4-DOF 기구적 제약 기반 URDF 모델링 설계, 비주얼 서보잉 시 타겟 시야 확보를 위해 방향 제어 로직을 통합한 IK 연산 구현

Coordinate Transform
비전 기반 3D 포즈 추정 및 정밀 조작

YOLO 기반 2D 픽셀의 3D 공간 좌표 변환 처리, 실시간 오차 보정을 위한 비주얼 서보잉 루프 설계, 하드웨어 유격을 알고리즘으로 보완하는 제어 환경 구축

Jira Board
Sprint List
프로젝트 일정 관리

Jira를 도입하여 각 파트의 개발 진척도를 시각화하고 스프린트 단위로 이슈를 관리

02. ROOMIE - Trouble Shooting

문제점
Vibration Issue
기구적 불안정성 및 제어 지연

• 급격한 가감속 시 로봇 끝단 진동으로 인해 비전 인식 및 타격 정밀도 저하 발생

문제분석
관성 및 기구적 한계

• 저가형 서보모터/프레임의 한계로 인해 정지 순간 관성 충격이 기구부 전체로 전달됨

MCU의 실시간성 문제

• 가속도 프로파일 적용시 MCU의 단일 루프에서 시리얼 통신 대기 시간(Blocking)이 모터 PWM 제어 주기를 침범하여 실시간성 저하

해결방안
Motion Optimization
모션 프로파일 최적화 (S-Curve)

가우시안 오차 함수(erf) 기반 S-Curve를 적용해 가속도 변화를 부드럽게 설계, 잔진동 30% 이상 감소 및 기어 마모 억제

FreeRTOS 기반 작업 분산

Task Pinning을 통해 통신과 제어를 듀얼 코어에 각각 할당, 부하와 관계없이 10ms의 일정한 제어 주기 보장

03. FALCON (항공 운항 AI 안전 서비스)

Team 4인 프로젝트
Period 2025.05.26 - 07.03
Object Detection Object Tracking OpenCV Homography Blender Python

활주로 내 이물질(FOD)과 무단 침입자를 CCTV로 실시간 감지하고 관제사가 즉각 대응할 수 있도록 위험물의 정확한 구역 위치(GPS/Map 좌표)를 제공하는 관제 시스템을 구축

Key Features & My Role
Jira Board
Sprint List
1. 정밀 탐지 및 추적

YOLO v8 커스텀 학습(90%↑) 및 ByteTrack 알고리즘을 적용하여 객체 ID 유지 및 이동 경로 추적 구현

Jira Board
Sprint List
2. 실좌표 변환 시스템

Homography(원근 변환) 기법으로 CCTV의 2D 픽셀 좌표를 실제 지도의 거리 단위(Meter)로 변환하여 구역별 위치 정보 제공

Jira Board
3. 작업자 인가 여부 식별

HSV 색상 분할 기법을 적용하여 형광 조끼 착용 여부를 판단, 인가된 작업자와 침입자를 구분

03. FALCON - Trouble Shooting

문제점
CCTV View
공간 좌표 인지 한계

• CCTV의 2D 픽셀 좌표만으로는 객체의 실제 위치나 어디구역인지 파악 불가

테스트 시 정확도 많이 떨어짐

• 오픈 데이터셋으로 학습시 테스트하는 환경에서 정확도가 떨어짐

문제분석
Solution Result
투영 왜곡(Perspective Bias)

• 카메라 설치 각도에 따른 원근 왜곡으로 인해 이미지 하단과 상단의 실제 거리가 다르게 계산됨

데이터 간겅성 저하

• 활주로 같은 특수한 환경이나 테스트 환경에 맞게 데이터를 생성해야 해당 환경에 맞는 정확도를 달성할 수 있음, 부족한 데이터셋을 Blender와 Unity를 통해 다양한 환경의 데이터를 시간 내에 많은 양을 생성하여 실제 데이터셋이랑 융합해서 학습

해결방안
Solution Result Solution Result
Homography 변환 적용

4개 지점의 ArUco 마커를 기준으로 투영 행렬을 계산하여 픽셀 좌표를 실제 미터(m) 단위로 변환 (오차 ±0.5m 이내)

Blender 합성 데이터 생성

테스트 시 다수 객체 환경에서도 90% 이상의 검출률 달성

04. Visual SLAM Basic (개인 연구)

Type Personal Study
ROS 2 RTAB-Map Sensor FusionGazeboRGB-D Camera2D LiDAR

2D LiDAR 기반 SLAM이 가진 기하학적 정보 의존성(특징점 부족 구간에서의 오차)을 보완하기 위해 시각 정보(Appearance-based)를 활용한 Visual SLAM을 도입. RGB-D 카메라 하드웨어 통합부터 다중 센서 데이터 퓨전을 통한 SLAM 안정성 향상 과정을 실증함.

Key Features & My Role
Jira Board
Sprint List
1. Sensor Fusion & Setup

Orbbec Astra 카메라의 URDF 모델링 및 가우시안 노이즈 모델 적용. 센서 간 정확한 TF(Transform) 트리를 구성하여 LiDAR-Visual-Odom 데이터 간의 이질성 최소화

Jira Board
Sprint List
2. Troubleshooting: Drift

Problem: 특징점 부족 구간에서 Odometry Drift 발생.
Solution: RTAB-Map의 메모리 관리 파라미터와 LiDAR/Visual 가중치를 튜닝하여, 시각적 특징점을 활용한 강인한 Loop Closure 및 최적화 성공