프로젝트 소개
자율주행 알고리즘이 비·눈·터널·과속방지턱·전방 차량 등 다양한 도로 상황에서 어떻게 거동하는지 가상 환경에서 시험할 수 있는 시뮬레이터. 주행 중 발생하는 위험 이벤트(시점·위치·종류)를 자동 감지해 CSV 로그로 저장한다.
자율주행 차량은 실제 도로에서 평탄한 환경뿐 아니라 악천후, 터널, 과속방지턱, 다른 차량 등 다양한 코너 케이스와 마주친다. 그 상황을 실제 도로에서 시험하는 것은 어렵고 위험하다. 가상 환경에서 자율주행이 그런 상황에 어떻게 반응하는지 관찰하고, 위험한 순간을 자동으로 기록해 알고리즘 개선의 근거 데이터로 쓸 수 있게 만드는 것이 이 프로젝트의 목적이다.
시연 영상
https://youtu.be/--cXV_QR-jk?si=J8VSycW34EQcGLSe
자율주행 위험구간 분석 시뮬레이터
YouTube에서 마음에 드는 동영상과 음악을 감상하고, 직접 만든 콘텐츠를 업로드하여 친구, 가족뿐 아니라 전 세계 사람들과 콘텐츠를 공유할 수 있습니다.
www.youtube.com
깃 링크
https://github.com/NBcampUnrealTrack/8th-Team24-CH3-Project.git
기술 스택과 협업 환경
언리얼 엔진 5, C++로 구현
디지털 트윈 팀 프로젝트(5인)
만든 기간: 4주
팀 안에서 역할을 나눠 진행했다.
도로·환경 시각 구성, 차량 폰과 물리, 위험 감지·자율주행 에이전트 로직, 데이터 로깅
그중 자율주행 에이전트 로직과 위험 감지를 담당했다
시스템 전체 구조
ARoadActor (스플라인 경로 + 메시)
↑ 참조
USplineFollowerComponent (자율주행 + CTE 노출)
↑ FindComponentByClass
UHazardDetectorComponent (위험 감지 + Broadcast)
↓ OnHazardDetected
[데이터 로거 / UI 등 구독자]
도로(ARoadActor)가 경로와 메시를 제공하고, 자율주행(USplineFollowerComponent)이 그 경로를 따라 차량을 운전하면서 횡오차(CrossTrackError) 같은 정보를 외부에 노출한다. 위험 감지(UHazardDetectorComponent)는 그 자율주행 정보와 차량 상태를 보고 위험을 판정해 델리게이트로 방송한다. 로깅·UI는 그 방송을 구독해 받기만 하면 된다. 서로 직접 호출하지 않고 방송·구독으로 연결되어, 한 시스템을 바꿔도 다른 시스템이 영향받지 않는다.
자율주행 차량이 다양한 환경에서 거동하는 것을 확인했고, 주행 중 발생한 위험 이벤트가 CSV 로그로 자동 기록되는 것을 확인했다. 데이터 로거는 다른 팀원이 담당했으며, 내가 만든 위험 감지 컴포넌트의 OnHazardDetected 델리게이트를 구독하는 형태로 연결되었다.
구현한 기능들
자율주행 위험구간 분석 시뮬레이터 카테고리 안에 자세히 적어뒀다
'프로젝트 > 자율주행 위험구간 분석 시뮬레이터' 카테고리의 다른 글
| [트러블슈팅] 과속방지턱 감지 - Lateral 필터·검색 거리·시간 압축 (0) | 2026.05.25 |
|---|---|
| 전방 감지 기반 속도 조절 시스템 (과속방지턱과 NPC 차량) (0) | 2026.05.22 |
| [트러블슈팅] 캐싱·결합·잘못 짚은 변수·가중 지수 (0) | 2026.05.19 |
| 주행 위험 감지 시스템 로직 구성 (0) | 2026.05.19 |
| [트러블슈팅] 터널과 날씨 시스템의 충돌 (0) | 2026.05.19 |
