๐ Hi, I'm Soyun Park
๐ INU Embedded Systems Engineering
๐ง Experienced in Embedded Systems, AI Vision, and IoT, applying real-time sensor fusion to safety and mobility projects.
-
๐ HMGICS ํ์ด๋ ๊ณต์ ๋์งํธ ํธ์ โ Unreal Engine ํ๋ก์ ํธ (2026.06)
๐ Unreal Engine ๊ณต์ฅ ํ๊ฒฝ ๊ตฌ์ฑ / ์ฐจ๋ ํ์ UI ๊ตฌํ โ ์ํธยทํ ยทํ์ด์ด ๊ณต์ ํ๊ฒฝ๊ณผ ๊ณต์ ์ํ ํ์ ๊ธฐ๋ฅ ๊ตฌํ
-
์ญํ : Unreal Engine ๊ณต์ฅ ๋ฐฐ๊ฒฝ ๊ตฌ์ฑ / Blueprint ๊ธฐ๋ฐ ์ฐจ๋ ์ ๋ณด UI ๊ตฌํ
-
๋ด์ฉ: HMGICS์ ์๋์ฐจ ํ์ด๋ ๊ณต์ ์ ์ฐธ๊ณ ํ์ฌ, Unreal Engine ๊ธฐ๋ฐ ์ค๋งํธํฉํ ๋ฆฌ ๋์งํธ ํธ์ ํ๊ฒฝ์ ๊ณต์ฅ ๋ฐฐ๊ฒฝ๊ณผ ์ฐจ๋ ์ ๋ณด ํ์ธ ๊ธฐ๋ฅ์ ๊ตฌํ
- ๊ณต์ฅ ๋ฐฐ๊ฒฝ ๊ตฌ์ฑ: ํ์ด๋ ๊ณต์ ํ๊ฒฝ์ ํํํ๊ธฐ ์ํด ๊ณต์ฅ ์ ์ฒด ๋ฐฐ๊ฒฝ, ๋ฐ๋ฅ, ๋ฒฝ, ์ฒ์ฅ ๋ถ์๊ธฐ ๊ตฌ์ฑ
- ์กฐ๋ช ๊ตฌ์ฑ: ๊ณต์ฅ ๋ด๋ถ๊ฐ ์ค์ ์์ฐ ํ๊ฒฝ์ฒ๋ผ ๋ณด์ด๋๋ก ์กฐ๋ช ๋ฐฐ์น ๋ฐ ๋ฐ๊ธฐ ์กฐ์
- ๊ธฐ๋ฅ ๋ฐ ๊ตฌ์กฐ๋ฌผ ๊ตฌ์ฑ: ๊ณต์ฅ ๊ณต๊ฐ๊ฐ์ ํํํ๊ธฐ ์ํ ๊ธฐ๋ฅ, ํ๋ ์, ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฌผ ๋ฐฐ์น
- ๋ผ์ธ ์๊ฐํ: ์ฐจ๋ ์ด๋ ํ๋ฆ๊ณผ ๊ณต์ฅ ๋์ ์ ๊ตฌ๋ถํ ์ ์๋๋ก ๋ฐ๋ฅ ๋ผ์ธ ๋ฐ ์์ ์ ์ฉ
- ๋จธํฐ๋ฆฌ์ผ ์ ์ฉ: ๋ฐ๋ฅ, ๋ผ์ธ, ๊ณต์ฅ ๊ตฌ์กฐ๋ฌผ์ ๋จธํฐ๋ฆฌ์ผ์ ์ ์ฉํ์ฌ ๊ณต์ฅ ํ๊ฒฝ์ ์๊ฐ์ ์์ฑ๋ ๊ฐ์
- ์ฐจ๋ ์ ๋ณด ํ์ ๊ตฌํ: ์ฐจ๋ ํด๋ฆญ ์ ํ์ฌ ๊ณต์ ์ ๋ณด์ ์ํ๋ฅผ ํ์ธํ ์ ์๋ UI ํ์ ๊ตฌํ
- ๊ณต์ ์ํ ํ์: ์ฐจ๋์ ํ์ฌ ๊ณต์ , ๊ณต์ ์ํ, ์งํ ํํฉ ๋ฑ์ ํ์ ์ฐฝ์ ํ์ํ๋๋ก ๊ตฌ์ฑ
- Blueprint ํ์ฉ: ์ฐจ๋ ํด๋ฆญ ์ด๋ฒคํธ, ์์ ฏ ์์ฑ, UI ํ์ ๋ฐ ์ ๊ฑฐ ํ๋ฆ์ Blueprint๋ก ๊ตฌํ
-
๊ธฐ์ : Unreal Engine, Blueprint, UMG Widget, Level Design, Material, GitHub
-
์ฑ๊ณผ:
- HMGICS ํ์ด๋ ๊ณต์ ์ปจ์ ์ ์ฐธ๊ณ ํ์ฌ Unreal Engine ๊ธฐ๋ฐ ๊ณต์ฅ ๋ฐฐ๊ฒฝ ๊ตฌํ
- ์กฐ๋ช , ๊ธฐ๋ฅ, ๋ฐ๋ฅ ๋ผ์ธ, ๋จธํฐ๋ฆฌ์ผ์ ํ์ฉํด ์ค๋งํธํฉํ ๋ฆฌ ํ๊ฒฝ์ ์๊ฐ์ ์์ฑ๋ ๊ฐ์
- ์ฐจ๋ ํด๋ฆญ ์ ๊ณต์ ์ํฉ๊ณผ ์ํ๋ฅผ ํ์ธํ ์ ์๋ ์ฐจ๋ ์ ๋ณด ํ์ UI ๊ตฌํ
- ๋จ์ ๋ฐฐ๊ฒฝ ์ ์์ ๊ทธ์น์ง ์๊ณ , ์ฐจ๋ ์ํ ์ ๋ณด๋ฅผ ํ์ธํ ์ ์๋ ์ธํฐ๋์ ๊ธฐ๋ฅ๊น์ง ์ฐ๊ฒฐ
-
-
๐ ์ค๋นยทํ๊ฒฝ ํตํฉ ๊ด์ ์์คํ โ SCADA ํ๋ก์ ํธ (2026.05)
๐ Frontend / DB / MQTT ๋ฐ์ดํฐ ์์ง ๋ด๋น โ ๋ก๊ทธ์ธยทํ์๊ฐ์ , ์ฌ์ฉ์ ๊ด๋ฆฌ, ๋น์ ์๋, ๊ณต์ ํ์ด์ง, ์ค๋น ๋ฐ์ดํฐ ์์งยทDB ์ ์ฅ
-
์ญํ : Frontend / DB / MQTT ๋ฐ์ดํฐ ์์ง ๋ด๋น
-
๋ด์ฉ: ์ค๋งํธํฉํ ๋ฆฌ ํ๊ฒฝ์์ ์ค๋นยท๊ณต์ ยทํ๊ฒฝ ๋ฐ์ดํฐ๋ฅผ ํตํฉ ๋ชจ๋ํฐ๋งํ๋ SCADA ๊ธฐ๋ฐ ๊ด์ ์์คํ ๊ฐ๋ฐ
- Frontend ๊ตฌํ: Vue 3 ๊ธฐ๋ฐ ํ๋ฉด ๊ตฌํ ๋ฐ ์ ์ฒด ํ์ด์ง UI ์์ธ์ฑ ๊ฐ์
- ๋ก๊ทธ์ธ / ํ์๊ฐ์ : ์ฌ์ฉ์ ๋ก๊ทธ์ธ, ํ์๊ฐ์ , ์ธ์ฆ ๊ด๋ จ ํ๋ฉด ๊ตฌ์ฑ
- ์ฌ์ฉ์ ๊ด๋ฆฌ: ๊ด๋ฆฌ์ ๊ด์ ์ ์ฌ์ฉ์ ๋ชฉ๋ก ์กฐํ, ๊ณ์ ์ํ ๋ฐ ์ญํ ๊ด๋ฆฌ ํ๋ฉด ๊ตฌํ
- ๋น์ ์๋: ์ค๋น ์ด์ ์ํฉ์ ๋น ๋ฅด๊ฒ ํ์ธํ ์ ์๋ ๋น์ ์๋ UI ๊ตฌ์ฑ
- ๊ณต์ ํ์ด์ง: ๊ณต์ ๋ณ ์ค๋น ์ํ๋ฅผ ํ์ธํ ์ ์๋ ๋ชจ๋ํฐ๋ง ํ๋ฉด ๊ตฌํ
- ๋ฐ์ดํฐ ์์ง: Python์ผ๋ก MQTT ๊ธฐ๋ฐ ์ค๋น ๋ฐ์ดํฐ ๋ฐํ ๊ตฌ์กฐ ๊ตฌ์ถ
- ๋ฐ์ดํฐ ์ฐ๋: Node-RED์์ MQTT ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ณ MySQL DB์ ์ ์ฅํ๋ ํ๋ฆ ๊ตฌํ
- ํ์ : FE ํ์ ์ธํ ๊ฐ์ด๋ ์์ฑ, ๋ธ๋์น ์ ๋ต ๋ฐ PR ๊ธฐ๋ฐ ํ์ ์ฐธ์ฌ
-
๊ธฐ์ : Vue 3, Pinia, Vue Router, Axios, Tailwind CSS, ECharts, Python, MQTT, Node-RED, MySQL, GitHub
-
์ฑ๊ณผ:
- ์ค๋น ๋ฐ์ดํฐ ์์ฑ โ MQTT ์ก์ โ Node-RED ์์ โ DB ์ ์ฅ โ Frontend ์๊ฐํ๋ก ์ด์ด์ง๋ ๋ฐ์ดํฐ ํ๋ฆ ๊ฒฝํ
- ๋ก๊ทธ์ธ, ํ์๊ฐ์ , ์ฌ์ฉ์ ๊ด๋ฆฌ, ๋น์ ์๋, ๊ณต์ ๋ชจ๋ํฐ๋ง ๋ฑ ๊ด์ ์์คํ ์ฃผ์ ํ๋ฉด ๊ตฌํ
- ๋จ์ ํ๋ฉด ๊ตฌํ์ ๋์ด ๋ฐ์ดํฐ ์์งยท์ ์ฅยท์กฐํยท์๊ฐํ ํ๋ฆ์ ํจ๊ป ์ดํดํ๋ฉฐ Frontend ๊ฐ๋ฐ ์งํ
- FE ๊ฐ๋ฐ ํ๊ฒฝ๊ณผ ํ์ ๊ท์น์ ์ ๋ฆฌํ์ฌ ํ ๊ฐ๋ฐ ํจ์จ ๊ฐ์
-
-
๐FE2 ํ๋ก ํธ์๋ ๊ฐ๋ฐ โ ์ฅ๋น ๋ชฉ๋ก, ์๋ฆผ ์ด๋ ฅ, ๋ก๊ทธ์ธ, ์ ๋น ๊ด๋ฆฌ, ์๊ณ๊ฐ ์ค์ , ์ถ์ ๋ถ์ ํ์ด์ง ์ค์ฌ ๊ตฌํ
- ์ญํ : FE2 ํ๋ก ํธ์๋ ๊ฐ๋ฐ
- ๋ด์ฉ: ๋ฐ๋์ฒด/์ค๋งํธํฉํ ๋ฆฌ ํ๊ฒฝ์ AMHS(Automated Material Handling System)์์ ์ฌ์ฉ๋๋ OHT, AGV ๋ฑ ๋ฌผ๋ฅ ์ฅ๋น์ ์ํ๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ ๊ด๋ฆฌํ ์ ์๋ ์น ๊ธฐ๋ฐ ํ๋ก ํธ์๋ ์์คํ
๊ฐ๋ฐ
- ๋ด๋น ํ์ด์ง ๊ตฌํ: ์ฅ๋น ๋ชฉ๋ก(SC-03), ์๋ฆผ ์ด๋ ฅ(SC-04), ๋ก๊ทธ์ธ(SC-05), ์ ๋น ๋ชฉ๋ก(SC-06), ์ ๋น ์์ธ(SC-07), ์๊ณ๊ฐ ์ค์ (SC-08), ์ฅ๋น ์ถ์ ๋ถ์(SC-10) ํ์ด์ง๋ฅผ ๋ด๋นํ์ฌ ์ฌ์ฉ์ ํ๋ฆ์ ๋ง๋ ํ๋ฉด ๊ตฌ์กฐ์ ๊ธฐ๋ฅ ๊ตฌํ
- ์ธ๋ถ ํ๋ฉด ๊ตฌ์ฑ: ์ฅ๋น ์ํ ๋ฐฐ์ง, ํ ์ด๋ธ ๊ธฐ๋ฐ ๋ชฉ๋ก UI, ์๋ฆผ ํ์คํ ๋ฆฌ ํญ, ์ ๋น ์ํ ์ ์ด, ๊ด๋ฆฌ์์ฉ ์๊ณ๊ฐ ์ค์ , ์ถ์ ๋ถ์ ์ฐจํธ ๋ฑ ์ค์ ์ด์ ํ๋ฉด ์ค์ฌ์ผ๋ก ๊ตฌํ
- ๊ณตํต ์ปดํฌ๋ํธ ๋ฐ ๊ตฌ์กฐ ์ค๊ณ: AppLayout, StatusBadge, DataTable, FilterBar, alertStore, authStore, router ๊ตฌ์กฐ๋ฅผ ๋ด๋นํ๋ฉฐ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ UI์ ๊ณตํต ๊ตฌ์กฐ๋ฅผ ์ค๊ณ
- ์ํ๊ด๋ฆฌ ๋ฐ ์ธ์ฆ ์ฒ๋ฆฌ: Pinia๋ฅผ ํ์ฉํด ๋ก๊ทธ์ธ ์ํ, ์ฌ์ฉ์ ์ญํ , ์๋ฆผ ๋ฐ์ดํฐ, ํ๋ฉด ์ํ๋ฅผ ๊ด๋ฆฌํ๊ณ ๋ผ์ฐํธ ๊ฐ๋ ๋ฐ ์ญํ (Role) ๊ธฐ๋ฐ ๋ฉ๋ด ๋ถ๊ธฐ ์ ์ฉ
- ์ค์๊ฐ ์๋ฆผ ๊ธฐ๋ฅ ๊ตฌํ: STOMP + SockJS ๊ธฐ๋ฐ WebSocket ๊ตฌ์กฐ๋ฅผ ์ ์ฉํด ์๋ฒ ์๋ฆผ ํ ํฝ์ ๊ตฌ๋ ํ๊ณ , ์์ ๋ฉ์์ง๋ฅผ alertStore์ Toast UI์ ๋ฐ์ํ์ฌ ๋ฏธํ์ธ ์๋ฆผ ๊ฐ์์ ์ค์๊ฐ ์๋ฆผ ํ์ ๊ตฌํ
- ์ฐจํธ ๋ฐ ๋ฐ์ดํฐ ์๊ฐํ: ECharts๋ฅผ ํ์ฉํด ์ฅ๋น ์ถ์ ๋ถ์, ์ผ์ ๋ฐ์ดํฐ, ํต๊ณ์ฑ ํ๋ฉด์ ์๊ฐํํ๊ณ ๋ฐ์ดํฐ ํ๋ฆ์ ๋ง์ถฐ mock ๊ธฐ๋ฐ ๊ฐ๋ฐ ํ API ์ฐ๋ ๊ตฌ์กฐ๋ก ํ์ฅ
- API ์ฐ๋: Axios์ JWT ์ธํฐ์ ํฐ๋ฅผ ์ ์ฉํด ๋ก๊ทธ์ธ, ์ฅ๋น ์กฐํ, ์๋ฆผ ์ด๋ ฅ, ์ ๋น ๋ฐ์ดํฐ, ์๊ณ๊ฐ ์ค์ ๋ฑ ์ธ์ฆ์ด ํ์ํ ์์ฒญ์ ์ฒ๋ฆฌํ ์ ์๋๋ก ๊ตฌ์ฑ
- ๊ธฐ์ : Vue 3, Vite, Pinia, Vue Router, Axios, ECharts, STOMP, SockJS, CSS Variables, Composable Pattern, Docker, Nginx
- ์ฑ๊ณผ:
- AMHS ์ด์์ ํ์ํ ์ฅ๋น ์กฐํ, ์๋ฆผ ํ์ธ, ์ ๋น ๊ด๋ฆฌ, ๋ถ์ ๊ธฐ๋ฅ์ ์น UI๋ก ๊ตฌํํ๋ฉฐ ์ค๋งํธํฉํ ๋ฆฌ ํ๋ก ํธ์๋ ์ค๋ฌด ํ๋ฆ ๊ฒฝํ
- FE2 ๋ด๋น ํ์ด์ง์ ๊ณตํต ์์์ ํจ๊ป ์ค๊ณยท๊ตฌํํ๋ฉฐ ํ์ด์ง ๊ฐ๋ฐ๋ฟ ์๋๋ผ ๊ตฌ์กฐ ๋ถ๋ฆฌ, ์ํ๊ด๋ฆฌ, ์ค์๊ฐ ์๋ฆผ ์ฐ๋๊น์ง ๊ฒฝํ
-
๐ญ ํ๋์คํ ์๋ฒ ์ค๋งํธํฉํ ๋ฆฌ ๋ถํธ์บ ํ ๋จธ์ ๋น์ ํ๋ก์ ํธ (2026.03)
๐ ๋จธ์ ๋น์ ๊ธฐ๋ฐ ํ๋ก์ ํธ 2์ข : ์ค๋ด AR ๋ค๋น๊ฒ์ด์ ์์คํ / ์ค๋งํธ ํฉํ ๋ฆฌ ๋ฐ์ค ํ์ง ๊ฒ์ฌ ๋ฐ ๋ถ๋ฅ ์์คํ
-
์ญํ :
์ ์ฒด ํ๋ก์ ํธ ๊ธฐํ, ๋ฐ์ดํฐ์ ๊ตฌ์ฑ, ์ด๋ฏธ์ง ๋ถ๋ฅ ๋ชจ๋ธ ์ ์ฉ, ๊ฒฝ๋ก ์๋ด ๋ก์ง ๊ตฌํ, UI/UX ์ค๊ณ ๋ฐ ์์คํ ํตํฉ ๋ด๋น -
๋ด์ฉ:
- ์ค๋ด ๊ณต๊ฐ์์๋ GPS ๊ธฐ๋ฐ ๊ธธ์๋ด๊ฐ ์ด๋ ต๋ค๋ ์ ์ ์ฐฉ์ํ์ฌ, ์นด๋ฉ๋ผ ์ ๋ ฅ ์์์ผ๋ก ํ์ฌ ์์น์ ๋ฐฉํฅ์ ์ธ์ํ๊ณ ๋ชฉ์ ์ง๊น์ง์ ์ด๋ ๋ฐฉํฅ์ ์ค์๊ฐ์ผ๋ก ์๋ดํ๋ ์์คํ ๊ตฌํ
- ๋จ์ํ ์์น๋ฅผ ๋ถ๋ฅํ๋ ๋ฐ ๊ทธ์น์ง ์๊ณ , ์ฌ์ฉ์๊ฐ ์ฆ์ ์ดํดํ ์ ์๋๋ก ์ง์ง / ์ขํ์ / ์ฐํ์ / ํ์ง๊ณผ ๊ฐ์ ํ๋ ์ค์ฌ ๋ช ๋ น์ผ๋ก ๋ณํํ๋ ๋ก์ง ์ค๊ณ
- ๋ชฉ์ ์ง ์ ํ โ ํ์ฌ ํ๋ฉด ์ ๋ ฅ โ ๋ฐฉํฅ ์์ธก โ ๊ฒฝ๋ก ๊ณ์ฐ โ UI ๋ฐ์์ ํ๋ฆ์ผ๋ก ๊ตฌ์ฑํ์ฌ, ๋จธ์ ๋น์ ๊ฒฐ๊ณผ๋ฅผ ์ค์ ์ฌ์ฉ์ ํ๋์ผ๋ก ์ฐ๊ฒฐ
- ์์ฐ ๊ณผ์ ์์ ์ฌ์ฉ์๊ฐ ์ง๊ด์ ์ผ๋ก ๋ฐ์ํ ์ ์๋๋ก ํฐ ๋ฐฉํฅ ํ์, ์๊ฐ์ ํผ๋๋ฐฑ ๋ฑ UI/UX ์์๋ฅผ ํจ๊ป ์ค๊ณ
-
๊ธฐ์ :
- Python
- PyTorch
- OpenCV / NumPy
- Flask / REST API
- HTML / CSS / JavaScript
-
์ฑ๊ณผ:
- ์ค๋ด ์ด๋ฏธ์ง ๊ธฐ๋ฐ์ผ๋ก ํ์ฌ ์์น/๋ฐฉํฅ์ ์ธ์ํ๊ณ ๋ชฉ์ ์ง๊น์ง์ ์ด๋ ๋ฐฉํฅ์ ์๋ดํ๋ AR ๋ค๋น๊ฒ์ด์ ํ๋กํ ํ์ ๊ตฌํ
- ๋จธ์ ๋น์ ๊ฒฐ๊ณผ๋ฅผ ๊ทธ๋๋ก ๋ณด์ฌ์ฃผ๋ ๊ฒ์ด ์๋๋ผ, ์ฌ์ฉ์๊ฐ ๋ฐ๋ก ํ๋ํ ์ ์๋ ๋ช ๋ น์ผ๋ก ๋ณํํ๋ UX ์ค์ฌ ์ค๊ณ ๊ฒฝํ ํ๋ณด
- ์ ๋ ฅโ์ถ๋ก โ๊ฒฝ๋ก ๊ณ์ฐโUI ๋ฐ์๊น์ง ์ด์ด์ง๋ end-to-end ์์คํ ํตํฉ ๊ฒฝํ ์ถ์
-
์ญํ :
์ ์ฒด ์์คํ ๊ธฐํ, ๋น์ ์ถ๋ก ํ๋ฆ ์ค๊ณ, ์ธ์ ๊ธฐ๋ฐ ์ต์ข ํ์ ๋ก์ง ๊ตฌํ, MQTT ํต์ ๊ตฌ์กฐ ์ค๊ณ, ESP32 ๋ชจํฐ/์๋ณด ์ ์ด ๋ฐ ์์ฐ ํตํฉ ๋ด๋น -
๋ด์ฉ:
- ์ ์กฐ ํ์ฅ์์ ๋ฐ์ค ์ธ๊ด์ ์ฐข๊น, ๊ตฌ๋ฉ, ๊ฐ๋ด ์ํ ๋ฑ์ ์ด์ ์ฌ๋ถ๋ฅผ ๋จธ์ ๋น์ ์ผ๋ก ํ๋ณํ๊ณ , ๊ฒฐ๊ณผ์ ๋ฐ๋ผ ์๋ ๋ถ๋ฅ๋๋๋ก ์ค๊ณํ ์ค๋งํธ ํฉํ ๋ฆฌ ์์คํ ๊ตฌํ
- ๋จ์ผ ํ๋ ์ ๊ฒฐ๊ณผ์ ๋ฐ๋ก ์์กดํ์ง ์๊ณ , ๋ฐ์ค๊ฐ ์นด๋ฉ๋ผ ์์ผ์ ๋ค์ด์จ ์๊ฐ๋ถํฐ ๋ฒ์ด๋ ๋๊น์ง๋ฅผ ํ๋์ ๊ฒ์ฌ ์ธ์ (session) ์ผ๋ก ๊ด๋ฆฌํ์ฌ ์ต์ข ์ํ๋ฅผ ํ์
- ํ๋ ์๋ณ ์์ธก๊ฐ์ ๋์ ํด
NORMAL,DEFECTIVE,RECHECK์ํ๋ฅผ ๊ฒฐ์ ํจ์ผ๋ก์จ, ์ผ์์ ์ธ ์ค๊ฒ์ถ์ด๋ ํ๋ค๋ฆผ์ ๊ฐํ ํ์ ๋ก์ง ์ค๊ณ - ์ต์ข ๊ฒ์ฌ ๊ฒฐ๊ณผ๋ฅผ MQTT๋ก ESP32์ ์ ์กํ๊ณ , ESP32๊ฐ ์ด๋ฅผ ๋ฐํ์ผ๋ก ์ปจ๋ฒ ์ด์ด์ ์๋ณด๋ชจํฐ๋ฅผ ์ ์ดํด ์ํ๋ณ๋ก ์๋ ๋ถ๋ฅํ๋๋ก ๊ตฌํ
- ์นด๋ฉ๋ผ โ ๋น์ ์ถ๋ก โ ์ํ ํ๋จ โ MQTT ์ ์ก โ ESP32 ์ ์ด โ ๋ฌผ๋ฆฌ์ ๋ถ๋ฅ๊น์ง ์ด์ด์ง๋ ์ค๋งํธ ํฉํ ๋ฆฌํ end-to-end ํ๋ฆ ๊ตฌ์ฑ
-
๊ธฐ์ :
- Python
- YOLO / PyTorch
- OpenCV / NumPy
- MQTT / PubSubClient
- ESP32 / Arduino IDE / ESP32Servo
- DC Motor / L298N / Servo Motor
-
์ฑ๊ณผ:
- ๋ฐ์ค ํ์ง ๊ฒ์ฌ ๊ฒฐ๊ณผ๋ฅผ ์ค์ ํ๋์จ์ด ์ ์ด์ ์ฐ๊ฒฐํด, ์ ์ / ๋ถ๋ / ์ฌ๊ฒ์ฌ ์๋ ๋ถ๋ฅ ํ๋กํ ํ์ ๊ตฌํ
- ๋จ์ ๊ฒฐํจ ๊ฒ์ถ ๋ชจ๋ธ์ด ์๋๋ผ, AI ํ์ ์ด ์ค์ ๊ณต์ ๋์์ผ๋ก ์ด์ด์ง๋ ์๋ํ ์์คํ ์ ์ค๊ณยท๊ตฌํํ ๊ฒฝํ ํ๋ณด
- ๋น์ , ํต์ , ์๋ฒ ๋๋ ์ ์ด๋ฅผ ํตํฉํด ํ์ฅํ ์ค๋งํธ ํฉํ ๋ฆฌ ์์คํ ๊ด์ ์ ๋ฌธ์ ํด๊ฒฐ ๊ฒฝํ ์ถ์
-
-
๐ ์์จ์ฃผํ ์๋ฎฌ๋ ์ด์ ๋ํ ๊ธ์( 2025.09 ~ 2025.10)
๐ MATLAB/Simulink ๊ธฐ๋ฐ ์์จ์ฃผํ ์๋ฎฌ๋ ์ด์ - ๋ํ์ ๊ธฐํํ ์์จ์ฃผํ๊ฒฝ์ง๋ํ
- ์ญํ : ์์คํ ์ค๊ณ ๋ฐ ์๋ฎฌ๋ ์ด์ ๊ตฌํ
- ๋ด์ฉ:
- RoadRunner + Simulink๋ฅผ ํ์ฉํด ์์จ์ฃผํ ์ฐจ๋์ ์ฐจ์ ์ ์ง, ์ฐจ์ ๋ณ๊ฒฝ, ์ฅ์ ๋ฌผ ํํผ, Cut-in ๋์ ์๋๋ฆฌ์ค๋ฅผ ์๋ฎฌ๋ ์ด์
- Vision Sensor, Radar, LiDAR ๋ฑ ๊ฐ์ ์ผ์๋ฅผ ๊ตฌ์ฑํ๊ณ , PID ์ ์ด ๋ฐ ๊ฒฝ๋ก Planner ๋ก์ง์ ์ค๊ณ
- ๋ค์ํ ์ฃผํ ํ๊ฒฝ(์ง์ , ๊ณก์ , ์ฅ์ ๋ฌผ, ๋๋ฐ ์ํฉ)์์ ์ธ์ ๋ฐ ์ ์ด ์ฑ๋ฅ ๊ฒ์ฆ
- ๊ธฐ์ : MATLAB, Simulink, RoadRunner, Automated Driving Toolbox, Navigation Toolbox
-
๐ Is Not Break Down(2025.07 ~ 2025.09)
๐๋ฉํฐ๋ชจ๋ฌ AI ์์คํ (์์ยท์์ฑยทOBD-II) โ ์ค์๊ฐ ๊ฒฝ๊ณ & ์ด์ ์ ์์ ์ฑ ํ๋ณด
- ์ญํ : ๋ฉ์ธ ๊ฐ๋ฐ์
- ๋ด์ฉ: ์ด์ ์์ ๊ธ๋ฐ์ง ๋ฐ ํ๋ฌ ์ค์กฐ์ ์ํฉ์ ์กฐ๊ธฐ์ ๊ฐ์งํ๋ ๋ฉํฐ๋ชจ๋ฌ AI ๊ธฐ๋ฐ ์์คํ
- ์
๋ ฅ:
- ์ผ๊ตด ํ์ (FER, IMX500) โ ๋๋ยท๋ถ๋ ธ ๊ฐ์ ํ์ง
- ์์ฑ(openSMILE) โ ๊ธด์ฅยท๋นํฉ ๋ฐํ ํจํด ๋ถ์
- ์ฐจ๋ ์ผ์(OBD-II) โ ์๋, RPM, ์ค๋กํ, ๋ธ๋ ์ดํฌ ์ ํธ ์ค์๊ฐ ์์ง
- ๊ตฌ์กฐ:
- Producer-Consumer ์ํคํ ์ฒ ๊ธฐ๋ฐ ๋ฉํฐ์ค๋ ๋ ์ฒ๋ฆฌ
- ์์/์์ฑ/์ผ์ ๋ฐ์ดํฐ๋ฅผ ๋๊ธฐํํ์ฌ ์ตํฉ(Fusion)
- ์ด์ ์ํฉ ๋ฐ์ ์ ์ค์๊ฐ ๊ฒฝ๊ณ ํ๋จ ๋ฐ UI ํ์
- ์
๋ ฅ:
- ๊ธฐ์ : Raspberry Pi 5, TensorFlow Lite (FER ๋ชจ๋ธ), openSMILE, Python ๋ฉํฐ์ค๋ ๋ฉ, OBD-II ์๋ฆฌ์ผ ํต์
- ์ฑ๊ณผ:
- ์ค์๊ฐ ๊ฒฝ๊ณ ์์คํ ๊ตฌํ: UI์ Alert ์์ด์ฝ ์ ํ + ์ด๋ฒคํธ ๋ก๊น
- ์์ ์ฑ ๊ธฐ๋ฅ ์ถ๊ฐ: ์ฟจ๋ค์ด ํ์ด๋จธ, persist_min_frames ๋ก์ง ์ ์ฉ โ ์คํ๋ฅ ๊ฐ์
- ์์: ๋ฉํฐ๋ชจ๋ฌ ๋ฐ์ดํฐ ์ตํฉ(AI + ์ผ์)์ ํตํ ์ด์ ์ ์์ ์ฑ ํ๋ณด ๊ฐ๋ฅ์ฑ ๊ฒ์ฆ
-
๐ ์ด์๊ธฐ์จ ๋์ ๊ฟ๋ฒ ์ค๋งํธ ๊ด๋ฆฌ ๊ธฐ์ ๊ฐ๋ฐ (WCL-INU ์ฐ๊ตฌ์ค) (2025.01 ~ )
๐YOLOv5/v11 ๊ธฐ๋ฐ ๋ฒ ํ์ง/๊ณ์ ๋ชจ๋ธ โ ์ปค์คํ ๋ฐ์ดํฐ์ ์ ์ ๋ฐ ํ์ต ํ์ดํ๋ผ์ธ ๊ตฌ์ถ
- ์ญํ : ๋ฐ์ดํฐ์ ์ ์ ๋ฐ ๋ชจ๋ธ ํ์ต ๋ด๋น
- ๋ด์ฉ: YOLOv5/v8์ ํ์ฉํ ๊ฟ๋ฒ ํ์ง ๋ฐ ๊ณ์ ์ฐ๊ตฌ
- ๊ธฐ์กด ์์์์ ๋ฒ์ ํ์งํ๊ธฐ ์ํด labelImg๋ฅผ ์ฌ์ฉํ ์์ฒ ์ฅ ๋จ์์ ์์์ ๋ผ๋ฒจ๋ง ์งํ
- YOLO ํฌ๋งท(
.txt) ๋ณํ ํ ์ปค์คํ ๋ฐ์ดํฐ์ ๋๋ ํ ๋ฆฌ ๊ตฌ์กฐ(images/train,labels/train๋ฑ) ์ง์ ๊ตฌ์ฑ - ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ: ๋ฒ์ด ์๋ ํ๋ ์์๋ ๋น ๋ผ๋ฒจ ํ์ผ ์์ฑํ์ฌ ๋ชจ๋ธ์ false positive ์ต์ํ
- ํ์ต/๊ฒ์ฆ ํ์ดํ๋ผ์ธ ๊ตฌ์ถ:
train.py์คํ ํ๊ฒฝ ์ธํ , ํ๋ผ๋ฏธํฐ ํ๋, GPU/๊ฐ์ํ๊ฒฝ ๊ด๋ฆฌ
- ๊ธฐ์ : Python, YOLOv5/v8, PyTorch, LabelImg, ๋ฐ์ดํฐ์ ๊ด๋ฆฌ(~/bee/dataset)
- ์ฑ๊ณผ:
- ๋ฒ ํ์ง ์ ํ๋๋ฅผ ๋์ธ ์ปค์คํ YOLO ๋ชจ๋ธ ํ์ต ์งํ ์ค
- ๊ทธ๋ฆผ์ยท๊ฒน์นจ ๋ฑ ์ด๋ ค์ด ์ํฉ์์๋ ์ผ์ ์์ค ์ด์์ ํ์ง ์ฑ๋ฅ ํ๋ณด
- ์ฐ๊ตฌ์ค ๋ด๋ถ์์ ํ์ฉ ๊ฐ๋ฅํ ์คํ์ฉ ๋ฐ์ดํฐ์ ๋ฐ ํ์ต ์ฝ๋๋ฒ ์ด์ค ๊ตฌ์ถ
-
๐ RC์นด ๊ธฐ๋ฐ ํ๋ก์ ํธ (2025.05 ~ 2025.06)
๐ Flask ์คํธ๋ฆฌ๋ฐ + RC ์ ํธ ์์ โ ์์จ์ฃผํ & ์๋ ์ ํ
- ์ญํ : ์์คํ ํตํฉ ๊ฐ๋ฐ
- ๋ด์ฉ:
- Raspberry Pi 5 + Picamera2๋ฅผ ํ์ฉํด RC์นด ์ฃผํ ์์์ Flask ์น ์๋ฒ๋ฅผ ํตํด ์ค์๊ฐ ์คํธ๋ฆฌ๋ฐ
- OpenCV ๊ธฐ๋ฐ ์ฐจ์ ์ธ์ ๋ฃฐ ๋ฒ ์ด์ค ์กฐํฅ ์ ์ด๋ก ๋ผ์ธํธ๋ ์ด์ฑ ์์จ์ฃผํ ๊ตฌํ
- Radiolink AT9 ์กฐ์ข ๊ธฐ & R9DS ์์ ๊ธฐ์์ PWM ์ ํธ๋ฅผ ๋ฐ์, ์๋ ๋ชจ๋๋ก ์ ํ ์ RC ์ ๋ ฅ ์ฐ์ ์ ์ด ๊ฐ๋ฅํ๋๋ก ์ค๊ณ
- Arduino Nano๋ฅผ ์๋ธ ์ปจํธ๋กค๋ฌ๋ก ์ฌ์ฉํด Servo(์กฐํฅ) ๋ฐ ESC(๋ชจํฐ) ์ ์ด๋ฅผ ์์ ํ, Raspberry Pi์ ์๋ฆฌ์ผ ํต์ ์ผ๋ก ํตํฉ
- ๊ธฐ์ : Raspberry Pi 5, Picamera2, Arduino Nano, Python (Flask, OpenCV), PWM ์ ํธ ์ฒ๋ฆฌ
- ์ฑ๊ณผ:
- ์์จ์ฃผํ โ ์๋ ์ ํ ๋ชจ๋๋ฅผ ์ค์๊ฐ์ผ๋ก ์ค์์นญ ๊ฐ๋ฅ
- ๊ธด๊ธ์ฌ์ถ(Emergency Kill Switch) ๊ธฐ๋ฅ์ ๊ตฌํํด ์์ ์ฑ ํ๋ณด
- Flask ๊ธฐ๋ฐ ์น ์ธํฐํ์ด์ค์์ ์ฃผํ ์์์ ํ์ธํ๋ฉด์ ์ ์ด ๊ฐ๋ฅ โ ์๊ฒฉ ๊ด์ ํ๊ฒฝ ์์ฐ ์ฑ๊ณต
- ์ค์ ํ๋์จ์ด(์กฐ์ข ๊ธฐ/์์ ๊ธฐ + RC์นด ํ๋ซํผ)์ ์ํํธ์จ์ด( Flask ์๋ฒ)๋ฅผ ํตํฉํ๋ฉฐ ์๋ฒ ๋๋ ์์คํ ์ ์ฃผ๊ธฐ ๊ฒฝํ
- ์์:
- ๋จ์ ๋ผ์ธํธ๋ ์ด์ฑ์ ๋์ด, ์๋/์์จ ์ฃผํ ํตํฉ ๋ฐ ์์ ๊ธฐ๋ฅ(๊ธด๊ธ์ฌ์ถ) ๊น์ง ๊ตฌํ
- ํ๋ถ ์์ค์์ ์ค์ ์ฐจ๋ ์์คํ ์ HMI(์ฌ๋-๊ธฐ๊ณ ์ธํฐํ์ด์ค) ์ ์ ์ฌํ ๊ตฌ์กฐ๋ฅผ ์ํ RC์นด์ ์ ์ฉํ ์ฌ๋ก
-
๐ฆฝ ํธ๋ค ์๋ ฅ ํจํด ๊ธฐ๋ฐ ๋ฐ์์จ์ฃผํ ๋ณดํ๊ธฐ (2024.09 ~ 2025.05)
๐FSR ์๋ ฅ์ผ์ + ์์ด๋ก์ผ์ + ๋ชจํฐ ์ ์ด โ ๋ฐ์์จ์ฃผํ ๋ณดํ๊ธฐ / ์ฐ์์ ์์, ๋ ผ๋ฌธ 2ํธ ๋ฐํ
- ์ญํ : ์๋ฒ ๋๋ ๊ฐ๋ฐ์
- ๋ด์ฉ: ๋
ธ์ฝ์๋ฅผ ์ํ ๋ณดํ ๋ณด์กฐ๊ธฐ ์ ์
- ์บก์คํค: ํธ๋ค ์๋ ฅ ํจํด ๊ธฐ๋ฐ ๋ฐ์์จ์ฃผํ ๋ณดํ๊ธฐ
- ์ฐฝ์ ์ง์๋จ: ์ฌ์ฉ์ ๋ง์ถคํ ๋ณดํ ๋ณด์กฐ๊ธฐ ์ ์
- ๊ธฐ์ :
- ํ๋์จ์ด: FSR ๋งคํธ๋ฆญ์ค ์๋ ฅ์ผ์(ํธ๋ค ์๋ ฅ ๊ฐ์ง), ์์ด๋ก์ผ์(์ค๋ฅด๋งยท๋ด๋ฆฌ๋ง ํ๋ณ), DC ๋ชจํฐ + ๋๋ผ์ด๋ฒ
- ์ํํธ์จ์ด: ๋ชจํฐ ์ ์ด ์ฝ๋ ๊ตฌํ ๋ฐ ๊ฐ ๋ชจ๋ ํตํฉ(Combine), Raspberry Pi 5 โ Arduino ๊ฐ ์๋ฆฌ์ผ ํต์
- ์์คํ ํตํฉ: ์ผ์ ๋ฐ์ดํฐ โ ์ ์ด ์๊ณ ๋ฆฌ์ฆ ์ ์ฉ โ ๋ณดํ ๋ณด์กฐ๊ธฐ ๊ตฌ๋๊น์ง end-to-end ๊ตฌํ
- ์ฑ๊ณผ:
- ์บก์คํค ๋์์ธ ์์ฑ / ์ฐฝ์ ์ง์๋จ ๋์๋ฆฌ ์ฐ์์ ์์
- ๊ด๋ จ ์ฐ๊ตฌ ์ฑ๊ณผ๋ฅผ ํ์ ๋ ผ๋ฌธ 2ํธ์ผ๋ก ๋ฐํ
-
๐ถ ํ๊ธ ๋ฌธ์ ์ธ์ ์ธ๊ณต์ ๊ฒฝ๋ง (2024.10 ~ 2024.12)
๐115ํด๋์ค ํ๊ธ ๋ฐ์ดํฐ์ ์์ฑ + Forward/Backprop ์ง์ ๊ตฌํ โ AI pipeline ๊ฒฝํ
- ๋ด์ฉ:
- ํ๊ธ ๋ฌธ์ ์ธ์ ๋ฌธ์ ๋ฅผ ์ง์ ๋ค๋ฃจ๊ธฐ ์ํด 64ร64 ํ๋ฐฑ ๋นํธ๋งต ๊ธฐ๋ฐ ํ๊ธ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ์ ์์ฒด ์ ์
- "์ถฉ, ์ฒญ, ๋จ, ๋" ๋ฑ ๋ค์ํ ํ๊ธ ๊ธ์๋ฅผ ๋์์ผ๋ก ํฐํธยทํฝ์ ์์น ๋ณํ์ ๊ฐ๋ฏธํ ๋ฐ์ดํฐ๋ฅผ ๊ฐ 100์ฅ์ฉ ์์ฑํ์ฌ ๋ฐ์ดํฐ ๋ค์์ฑ ํ๋ณด
- ํด๋์ค ์๋ฅผ ํ์ฅํ์ฌ ์ด 115๊ฐ ํด๋์ค(one-hot ์ธ์ฝ๋ฉ ๊ตฌ์กฐ) ๋ก ๋ผ๋ฒจ๋ง, ๋ค์ค ํด๋์ค ๋ถ๋ฅ๊ฐ ๊ฐ๋ฅํ ํํ๋ก ๊ตฌ์ฑ
- ์ ๊ฒฝ๋ง ๊ตฌ์กฐ๋ฅผ ์ง์ ์ค๊ณํ๊ณ , ์์ ํ(Forward Propagation) ์ ์ญ์ ํ(Backpropagation) ์๊ณ ๋ฆฌ์ฆ์ Python๊ณผ C ์ธ์ด๋ก ์ง์ ๊ตฌํ
- ํ์ต๋ฅ , ๋ฐฐ์น ํฌ๊ธฐ, ๋ฐ๋ณต ํ์ ๋ฑ ํ์ดํผํ๋ผ๋ฏธํฐ๋ฅผ ์ง์ ํ๋ํ๋ฉฐ ์ฑ๋ฅ ๋ณํ๋ฅผ ์คํ์ ์ผ๋ก ๋ถ์
- ๊ธฐ์ ์คํ: Python, C ์ธ์ด, Custom Neural Network Implementation, ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ & ์ฆ๊ฐ
- ์ฑ๊ณผ:
- ๋จ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉ์ด ์๋ ์ ์์ค ๊ตฌํ์ ํตํด ์ธ๊ณต์ ๊ฒฝ๋ง์ ์ํ์ /ํ๋ก๊ทธ๋๋ฐ์ ๋์ ์๋ฆฌ๋ฅผ ๊น์ด ์ดํด
- ํ๋ จ ์ ํ๋์ ํ ์คํธ ์ ํ๋๋ฅผ ๋น๊ตํ๋ฉฐ ์ค๋ฒํผํ /๋ฒ์ฉ์ฑ ๋ฌธ์ ๋ฅผ ์ฒด๊ฐ, ๋ฐ์ดํฐ ๋ค์์ฑ(ํฐํธ/์์น ๋ณํ)์ ํ์์ฑ์ ๊ฒ์ฆ
- ์ต์ข ์ ์ผ๋ก ๋จ์ ์ฝ๋ ์ค์ต์ ๋์ด, ๋ฐ์ดํฐ์ ๊ตฌ์ถ โ ๋ชจ๋ธ ํ์ต/ํ๊ฐ โ ํ๊ณ ๋ถ์๊น์ง ์ํํ์ฌ ์ธ๊ณต์ง๋ฅ ๋ชจ๋ธ ๊ฐ๋ฐ ์ฌ์ดํด(AI pipeline) ์ ์จ์ ํ ๊ฒฝํ
- ์์:
- โํ๊ธ ์ธ์โ์ด๋ผ๋ ์ค์ ๊ณผ์ ๋ฅผ ํตํด AI ์ด๋ก ์ ์ค์ต๊ณผ ์ฐ๊ฒฐ
- PyTorch/TensorFlow์ ๊ฐ์ ๊ณ ์์ค ํ๋ ์์ํฌ ์ด์ ๋จ๊ณ์์, ์ ๊ฒฝ๋ง์ ๋ด๋ถ ์๋์ ์ง์ ๊ตฌํํ๋ฉฐ ์๋ฆฌ๋ฅผ ์ฒด๋
- ๋ด์ฉ:
-
๐ก METLAB ์ฐ๊ตฌ ์ฒดํ ํ๋ก๊ทธ๋จ ๋ํ ์ต์ฐ์์ (2024.07 ~ 2024.09)
๐์ฐ๊ตฌ ํ์ฅ -> ESP32-CAM CSI + ์์ ๋ฐ์ดํฐ ์ตํฉ โ ์์จ์ฃผํ์๋์ฐจ ์ ์ฒํ ์ธ์ ์ ํ๋ ๊ฐ์ / ์ด์ฅ์ ์์
- ์ญํ : ์ฐ๊ตฌ ํ์ฅ
- ์ฃผ์ : ์ ์ฒํ ์ํฉ์์ ์์จ์ฃผํ ์ธ์ ์ ํ๋ ๊ฐ์
- ๋ด์ฉ:
- ์์จ์ฃผํ ์ฐจ๋์ด ์ ์ฒํ(๋น, ์๊ฐ, ๋ ๋ฑ) ์ํฉ์์ ์นด๋ฉ๋ผ ๊ธฐ๋ฐ ์ธ์ ์ ํ๋๊ฐ ๊ธ๊ฒฉํ ์ ํ๋๋ ๋ฌธ์ ์ ์ฃผ๋ชฉ
- ESP32-CAM์ ํ์ฉํด ์์ ๋ฐ์ดํฐ์ ๋์์ Wi-Fi CSI(Channel State Information) ์ ํธ๋ฅผ ์์งํ์ฌ, ์๊ฐยท๋ฌด์ ์ฑ๋ ํน์ฑ์ ๊ฒฐํฉํ ๋ฉํฐ๋ชจ๋ฌ ๋ฐ์ดํฐ์ ๊ตฌ์ถ
- ์์ง๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฒ๋ฆฌ(๊ฒฐ์ธก์น ์ ๊ฑฐ, Normalization, ํน์ง ์ ํ) ํ ๋๋คํฌ๋ ์คํธ(Random Forest) ๋ชจ๋ธ์ ์ ์ฉํ์ฌ, ์ ์ฒํ ํ๊ฒฝ์์์ ๊ฐ์ฒด ์ธ์ ์ฑ๋ฅ์ ๋น๊ตยทํ๊ฐ
- ๊ธฐ์ ์คํ: ESP-IDF, ESP-CSI ๋ผ์ด๋ธ๋ฌ๋ฆฌ, Python(pandas, scikit-learn), Random Forest ๋ชจ๋ธ, ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ/๋ถ์
- ์ฑ๊ณผ:
- ๋จ์ผ ์์ ๋ฐ์ดํฐ ๋๋น ๋ฉํฐ๋ชจ๋ฌ ๋ฐ์ดํฐ(์์ + CSI) ๊ธฐ๋ฐ ๋ชจ๋ธ์ด ์๊ฐยท์ฐ์ฒ ์ํฉ์์ ์ธ์ ์ ํ๋๊ฐ ์ ์๋ฏธํ๊ฒ ํฅ์๋จ์ ๊ฒ์ฆ
- ESP32-CAM + Wi-Fi CSI๋ฅผ ๊ฒฐํฉํ ์ ๋น์ฉยท์ ์ ๋ ฅํ ์ผ์ ์ตํฉ ๋ฐฉ์์ ๊ฐ๋ฅ์ฑ์ ํ์ธ
- ์ธ์ฒ๋ํ๊ต ์ ๋ณด๊ธฐ์ ๋ํ ์ฐ๊ตฌ ์ฒดํ ํ๋ ์ด์ฅ์ ์์
-
โ๏ธ STM32 ์ค์๊ฐ ์ ์ด ํ๋ก์ ํธ (2024.05 ~ 2024.06)
๐์ ์ธ์ ์ผ์ยท์๋ณด๋ชจํฐยท7-Segment๋ฅผ ๋ก์ฐ๋ ๋ฒจ ๋ ์ง์คํฐ๋ก ์ ์ด ํฌํจํ ์ค์๊ฐ ๋ฐ์ํ ์ ์ด ์์คํ
-
์ญํ : ์ผ์ ์ ๋ ฅ ์ฒ๋ฆฌ ๋ฐ ์๋ณด๋ชจํฐยท์ธ๊ทธ๋จผํธ ์ ์ด ๋ก์ง ๊ตฌํ ๋ด๋น
-
๋ด์ฉ:
- ์ ์ธ์ (IR) ์ผ์๋ฅผ ํ์ฉํด ๊ณต์ด ํต๊ณผํ๋ ์๊ฐ์ ๊ฐ์ง
- ๊ฐ์ง ์ ํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋ณด๋ชจํฐ๊ฐ ๋์ํด ๊ณต์ ๋จ์ด๋จ๋ฆฌ๋ ๋์ ๊ตฌํ
- ๊ณต์ด ๋จ์ด์ง ๋๋ง๋ค 7-Segment ๋์คํ๋ ์ด๋ฅผ ํตํด ์นด์ดํธ๋ฅผ ์ค์๊ฐ ํ์
- ๋จ์ํ HAL ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํธ์ถ์ด ์๋๋ผ, ๋ ์ง์คํฐ ๋จ์ ์ค์ (ADC, GPIO, Timer, PWM) ์ ํตํด Low-Level ์ ์ด๋ฅผ ์ง์ ๊ตฌํ
- ์ํฌ๋ฆด ๊ตฌ์กฐ๋ฌผ์ ํ์ฉํด ๊ฒฝ์ฌ๋ก ์ ์ ๋ฐ ๊ธฐ์ธ๊ธฐ ์กฐ์ ๊ธฐ๋ฅ ์ถ๊ฐ โ ๋ค์ํ ์คํ ํ๊ฒฝ ๊ตฌ์ถ
-
๊ธฐ์ :
- STM32 ๋ง์ดํฌ๋ก์ปจํธ๋กค๋ฌ (C, CMSIS ๊ธฐ๋ฐ)
- ADC (Analog to Digital Converter) ๋ ์ง์คํฐ ์ง์ ์ ์ด โ IR ์ผ์ ์ ๋ ฅ๊ฐ ์ค์๊ฐ ์ฒ๋ฆฌ
- Timer & PWM ๋ ์ง์คํฐ ํ์ฉ โ ์๋ณด๋ชจํฐ ๊ฐ๋ ์ ์ด (ํ๋์จ์ด ํ์ด๋ฐ ์ ํ๋ ํ๋ณด)
- GPIO Low-Level ์ ์ด โ 7-Segment ์ง์ ๊ตฌ๋
- ์ค์๊ฐ์ฑ ๋ณด์ฅ: ์ธํฐ๋ฝํธ ๊ธฐ๋ฐ ์ด๋ฒคํธ ์ฒ๋ฆฌ, busy-wait ์ง์ โ ์ฆ๊ฐ ๋ฐ์ ๊ตฌํ
- ๋ฐ์ดํฐ์ํธ ๊ธฐ๋ฐ ์ค๊ณ: HAL ์ถ์ํ๊ฐ ์๋ ๋ ์ง์คํฐ ์ฃผ์๋ฅผ ์ง์ ๋งคํํ์ฌ ์์คํ ์ ๋์ ์๋ฆฌ๋ถํฐ ํผํผํ๊ฒ ๊ตฌ์ถ
- ์ํฌ๋ฆด ๊ธฐ๋ฐ ์คํ ํ๋์จ์ด ์ ์
-
์ฑ๊ณผ:
- STM32 ํ๋์จ์ด ๊ตฌ์กฐ์ ๋ฐ์ดํฐ์ํธ๋ฅผ ๊น์ด ์ดํดํ๊ณ , Low-Level ์ ์ด ๋ฅ๋ ฅ ํ๋ณด
- ์ฌ๋ฌ ์ผ์๋ฅผ ๋์์ ๋ค๋ฃจ๋ฉฐ ์๋ฒ ๋๋ ์ค์๊ฐ ์ ์ด ์์คํ ๊ตฌํ ๊ฒฝํ ์ถ์
- ๋จ์ ๊ตฌํ ์์ค์ ๋์ด ํ๋์จ์ด ์ต์ ํ ๋ฐ ์ ๋ขฐ์ฑ ๋์ ๋์์ ๋ฌ์ฑ
-
-
๐ฎ ๊ฐ์ฒด์งํฅ SW ํ๋ก์ ํธ (2023.10 ~ 2023.12)
๐C++ ๊ธฐ๋ฐ์ผ๋ก ๋ฒฝ์น๊ธฐ ๊ฒ์๊ณผ A* Pathfinding ์๊ฐํ๋ฅผ ๊ตฌํ, ์ค์๊ฐ ์ด๋ฒคํธ ์ฒ๋ฆฌ ๋ฐ ์๊ณ ๋ฆฌ์ฆ
- ์ญํ : ๊ฒ์ ๋ก์ง ๋ฐ ๊ธฐ๋ฅ ๊ตฌํ ๋ด๋น
- ๋ด์ฉ:
Paddle,Ball,Bomb,Heart๋ฑ์ ํด๋์ค๋ฅผ ์ง์ ์ค๊ณํ์ฌ ์์, ์ค๋ฒ๋ผ์ด๋ฉ, ์ค๋ฒ๋ก๋ฉ ๊ฐ๋ ์ ์ ์ฉ- ๊ณต ํ๊น, Paddle ์ถฉ๋, ํญํ ์์ดํ , ๋ชฉ์จ ๊ฐ์ ๋ฑ ๋ค์ํ ๊ฒ์ ์ด๋ฒคํธ ๊ตฌํ
- ๊ธฐ์ :
- C++ (๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ: ์์/์ค๋ฒ๋ผ์ด๋ฉ/์ค๋ฒ๋ก๋ฉ)
- SFML Graphics (๊ณต, Paddle, ํญํ, ๋ฐฐ๊ฒฝ ์๊ฐํ)
- SFML Audio (์ถฉ๋, ์์ดํ ํ๋, ๊ฒ์์ค๋ฒ ํจ๊ณผ์)
- ์ฑ๊ณผ:
- ๊ฐ์ฒด์งํฅ ๊ฐ๋ ์ ์ค์ ๊ฒ์ ์ ์์ ์ ์ฉ
- ์ค์๊ฐ ๋ฐ์ํ ๋์์ผ๋ก ์์ฑ๋ ์๋ ๋ฏธ๋๊ฒ์ ์ ์
- ์ญํ : ์๊ณ ๋ฆฌ์ฆ ๋ฐ ์๊ฐํ ๊ตฌํ ๋ด๋น
- ๋ด์ฉ:
- ๋ง์ฐ์ค ์ขํด๋ฆญ์ผ๋ก ๋ชฉ์ ์ง ์ง์ โ ์ฅ์ ๋ฌผ์ ํผํด ์ต๋จ ๊ฒฝ๋ก ํ์
- ์์ง์ด๋ ๋ฒฝ์ด ์์ ๊ฒฝ์ฐ์๋ ์ค์๊ฐ ๊ฒฝ๋ก ์ฌ๊ณ์ฐ
- ๊ฒฝ๋ก ํ์ ๊ณผ์ (Visited, Path)์ ํ๋์ยท๋ ธ๋์ ์ ๋ก ์๊ฐํ
- ๊ธฐ์ :
- C++ (ํด๋์ค ๊ธฐ๋ฐ ์๊ณ ๋ฆฌ์ฆ ๊ตฌํ)
- A* ์๊ณ ๋ฆฌ์ฆ (ํด๋ฆฌ์คํฑ ๊ธฐ๋ฐ ์ต๋จ ๊ฒฝ๋ก ํ์)
- SFML Graphics (๋งต, ์ฅ์ ๋ฌผ, ํ์ ๊ณผ์ , ๊ฒฝ๋ก ์๊ฐํ)
- ์ฑ๊ณผ:
- A* ์๊ณ ๋ฆฌ์ฆ๊ณผ ์ค์๊ฐ ์๊ฐํ๋ฅผ ๊ฒฐํฉํ์ฌ ํ์ ๊ณผ์ ์ ๋์ผ๋ก ํ์ธ ๊ฐ๋ฅ
- ํญ๊ท ์บ๋ฆญํฐ๊ฐ ์ฅ์ ๋ฌผ์ ํผํ๋ฉฐ ๋ชฉ์ ์ง๊น์ง ์ด๋ํ๋ ์ ๋๋ฉ์ด์ ๊ตฌํ
-
๐ ์ค๋งํธ ๋ ์๋ โ INU Maker ๊ฒฝ์ง๋ (Maker Fair, 2022.09~11)
๐์จ์ต๋ยท๊ฑฐ๋ฆฌ์ผ์ + LCD + ์กฐ๋ช ์ ์ด โ ํ์ต ํจ์จ ํฅ์ IoT ๋ ์๋
- ์ญํ : ํ ๊ฐ๋ฐ์ (์๋ฒ ๋๋ ์ํํธ์จ์ด ๊ตฌํ)
- ๋ด์ฉ: ๋
์ ํ๊ฒฝ์ ๊ฐ์ ํ๊ธฐ ์ํด ์ผ์ ๋ฐ ์ ์ด ๊ธฐ๋ฅ์ ํตํฉํ ์ค๋งํธ ๋
์๋ ์ ์
- ์จ์ต๋ ์ผ์(DHT11): ๋ ์ ํ๊ฒฝ์ ์จ์ต๋ ์ธก์ โ ์ ์ ๋ฒ์ ๋ฒ์ด๋๋ฉด LED ์๋ฆผ
- RTC ๋ชจ๋(DS1302): ๋ ์ง/์๊ฐ ํ์ ๋ฐ ํ์ต ํ์ด๋จธ ๊ธฐ๋ฅ ์ ๊ณต
- ๊ฑฐ๋ฆฌ ์ผ์: ์ฌ์ฉ์์ ์ฑ ๊ณผ์ ๊ฑฐ๋ฆฌ ๊ฐ์ง โ ๋๊ณผ ์ฑ ์ฌ์ด ๊ฐ๊ฒฉ ์ ์ง ์ ๋
- LCD ๋์คํ๋ ์ด: ์๊ฐยท๋ ์งยทํ์ด๋จธ ์ํยท์ต๋ ์ ๋ณด๋ฅผ ์ง๊ด์ ์ผ๋ก ํ์
- ์กฐ๋ช ์ ์ด(์คํ ๋ LED): ๋ฒํผ ์ ๋ ฅ์ผ๋ก ๋ฐ๊ธฐ 3๋จ๊ณ ์กฐ์ ๊ฐ๋ฅ (PWM ํ์ฉ)
- ๋ชจ๋ ์ ํ ๊ธฐ๋ฅ: ๋ฒํผ์ ํตํด ํ์ด๋จธ ๋ชจ๋ โ ๋ ์ง ๋ชจ๋ ์ ํ
- ๊ธฐ์ : Arduino, C/C++, ์ผ์ ์ ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ(DHT, Wire, DS1302, LCD I2C), PWM ์ ์ด, ๋์งํธ ์ ์ถ๋ ฅ
- ์ฑ๊ณผ:
- ๋จ์ ์กฐ๋ช ๊ธฐ๊ธฐ๋ฅผ ๋์ด ์ฌ์ฉ์ ํ์ต ํจ์จ ๋ฐ ๊ฑด๊ฐ์ ๊ณ ๋ คํ IoTํ ๋ ์๋ ๊ตฌํ
- ๊ต๋ด Maker ๊ฒฝ์ง๋ํ ์ถํ, ์๋ฒ ๋๋ ์์คํ ์ค๊ณ ๋ฐ ํตํฉ ์ ์ด ๊ฒฝํ ํ๋ณด
-
๐ INU ์ ๋ณด๊ธฐ์ ๋ ์ ์ฉ SNS โ ESC ์๋ชจ์ (ESC Club, 2024.09~2025.01)
๐ํ๋ก ํธ์๋ ํ์ฅ โ UI/UX ์ค๊ณ, React ๊ตฌํ, JWT ์ธ์ฆ, API ํต์ / ๊ณต๋ชจ์ ์ถ์
- ์ญํ : ํ๋ก ํธ์๋ ํ์ฅ
- ๋ด์ฉ: ์ธ์ฒ๋ ์ ๋ณด๊ธฐ์ ๋ํ ์ฌํ์/์กธ์
์์ ์ํ ์ ์ฉ SNS/์ฑ ๊ฐ๋ฐ
- UI/UX ์ค๊ณ: ์ฑ ์ ์ฒด ํ๋ฉด ํ๋ฆ ๋ฐ ์ฌ์ฉ์ ๊ฒฝํ ์ค๊ณ (๋ก๊ทธ์ธ, ํ์๊ฐ์ , ๊ฒ์ํ, ๋๊ธ, ์๋ฆผ ๋ฑ)
- ํ๋ก ํธ์๋ ๊ตฌํ: React ๊ธฐ๋ฐ ํ์ด์ง ์ ์, ๋ฐ์ํ ๋์์ธ ์ ์ฉ
- ์ธ์ฆ ๋ฐ ๋ณด์: JWT ํ ํฐ ๋ฐ๊ธ ๋ฐ ๊ฒ์ฆ ํ๋ฆ์ ํ๋ก ํธ์๋ ๋จ์์ ๊ตฌํ โ ๋ก๊ทธ์ธ/ํ์๊ฐ์ /์ด๋ฉ์ผ ์ธ์ฆ ์ฒ๋ฆฌ
- ๋ฐ์ดํฐ ํต์ : Axios๋ฅผ ํตํ API ์ฐ๋, GET/POST ์์ฒญ ์ฒ๋ฆฌ, ์ฌ์ฉ์ ์ ๋ณด์ ๊ฒ์๊ธ CRUD ๊ธฐ๋ฅ ๊ตฌํ
- ํ ๋ฆฌ๋ฉ: ํ๋ก ํธ์๋ ๊ฐ๋ฐ ํํธ ๋ฆฌ๋ฉ, ์ฝ๋ ๋ฆฌ๋ทฐ ๋ฐ ํ์ ๊ด๋ฆฌ
- ๊ธฐ์ : React, CSS ๋ชจ๋, Axios, JWT ์ธ์ฆ, GitHub ํ์
- ์ฑ๊ณผ:
- ์ ๋ณด๊ธฐ์ ๋ ์ํํธ์จ์ด ๊ณต๋ชจ์ ์ถ์
- ์ค์ ์ฌ์ฉ์ ์ค์ฌ์ UI/UX ์ค๊ณ๋ถํฐ ๊ตฌํ, ๋ณด์(์ธ์ฆ) ์ฒ๋ฆฌ, ๋ฐ์ดํฐ ์ฐ๋๊น์ง ํ๋ก ํธ์๋ ์ ๋ฐ์ ๊ฒฝํ
-
๐ RUN ๊ธฐ๋ก ๊ด๋ฆฌ Web (2024.11~2024.12)
๐Flask + SQLite ๊ธฐ๋ฐ ๋ฌ๋ ๊ธฐ๋ก ์ ์ฅ/์กฐํ โ ์ธ๋ถ API ์ฐ๋ ํ์ฅ
- ์ญํ : ๊ฐ๋ฐ์
- ๋ด์ฉ: ๋ฌ๋ ๊ธฐ๋ก์ ์ ์ฅํ๊ณ ๋ถ๋ฌ์ ํ์ธํ ์ ์๋ ๋ฐ์ดํฐ ์ค์ฌ ์น์ฑ ๊ฐ๋ฐ
- DB ํ์ฉ ์ค์ฌ: SQLite์ ์ ์ฅ๋ ๊ธฐ๋ก ๋ฐ์ดํฐ๋ฅผ Flask๋ฅผ ํตํด ๋ถ๋ฌ์ ์น ํ๋ฉด์ ์ถ๋ ฅ
- ๊ธฐ๋ฅ:
- ๊ฐ์ธ ๊ธฐ๋ก ์ ๋ ฅ โ SQLite DB์ ์ ์ฅ
- ๊ธฐ๋ก ์กฐํ โ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฌ์ ํ ์ด๋ธ ํ์์ผ๋ก ํ์
- API ์ฐ๋: ์ธ๋ถ API๋ฅผ ํตํด ๋ค๋ฅธ ์ฌ์ฉ์๋ค์ ๋ฌ๋ ๊ธฐ๋ก๊น์ง ๋ถ๋ฌ์ ํจ๊ป ์กฐํ ๊ฐ๋ฅ
- ๊ตฌํ ํ๋ฆ: DB ์ฐ๋ + API ํ์ฉ์ ํตํด ๋จ์ ๋ก์ปฌ ๊ธฐ๋ก ๊ด๋ฆฌ์์ ํ์ฅ๋ ๋ฐ์ดํฐ ๊ด๋ฆฌ ๊ตฌ์กฐ ์ค๊ณ
- ๊ธฐ์ : Flask, SQLite, HTML/CSS (๊ธฐ๋ณธ ํ๋ก ํธ์๋ ๊ตฌ์ฑ), API ์ฐ๋
- ์ฑ๊ณผ:
- ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ธ๋ถ API๋ฅผ ๋์์ ํ์ฉํ ์น์ฑ ๊ตฌ์กฐ ๊ฒฝํ
- ํ๋ก ํธ์๋ + DB ์ฐ๋ + ์ธ๋ถ API ์๋ต ์ฒ๋ฆฌ๊น์ง ํฌํจํด ์ค์ตํ ํ์คํ ๊ฐ๋ฐ ๊ณผ์ ์ฒดํ
-
๐ ๋น์นธ๋ง๋จ web (2023.10~2023.12)
๐์ผ์ ์กฐ์จ ์๊ณ ๋ฆฌ์ฆ ๊ฐ๋ฐ โ ๋ชจ์์๊ฐ Top3 ์๋ ์ถ์ฒ / ํ์ฅ์ ์์(์ฐ์์) + ์ฝ์์ค ํฌ์คํฐ ๋ฐํ
- ์ญํ : ์ผ์ ์กฐ์ ์๊ณ ๋ฆฌ์ฆ ๊ฐ๋ฐ
- ๋ด์ฉ: ๋ค์ ์ธ์์ ์๊ฐํ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋์ผ๋ก ๋ชจ์ ์๊ฐ์ ์ฐพ์์ฃผ๋ ์น ์๋น์ค
- ์ฌ์ฉ์ ์๊ฐํ๋ฅผ ๋น๊ตํด ๊ณตํต ๊ฐ๋ฅํ ์๊ฐ๋๋ฅผ ์๋ ํ์
- ์ธ์์ยท์กฐ๊ฑด(ํ์ผ/์ฃผ๋ง, ์ต์ ์๊ฐ ๋ฑ)์ ๋ฐ๋ผ ์ต์ ๋ชจ์ ์๊ฐ Top3๋ฅผ ๋ญํน์ผ๋ก ์ถ์ฒ
- ์๊ณ ๋ฆฌ์ฆ์ ๋จ์ ํฉ์งํฉ/๊ต์งํฉ ๊ณ์ฐ์ด ์๋๋ผ, ์ฐธ์ฌ์จ์ ๊ณ ๋ คํ ๊ฐ์ค์น ๊ธฐ๋ฐ ์ต์ ํ ๋ฐฉ์์ผ๋ก ์ค๊ณ
- ์ฑ๊ณผ:
- ํ๋ก์ ํธ์ ํต์ฌ ๋ก์ง(์๊ฐ ์กฐ์จ)์ ๊ตฌํํ์ฌ ํ์ด ์์ฑ๋ ๋์ ๊ฒฐ๊ณผ๋ฌผ์ ๋ฐํํ ์ ์์์
- ์ธ์ฒ๋ํ๊ต ์ ๋ณด๊ธฐ์ ๋ํ ๊ณต๋ชจ์ ํ์ฅ์ ์์
- ์์ธ ์ฝ์์ค์์ ํฌ์คํฐ ๋ฐํ ์งํ, ์ฐ๊ตฌ ์ฑ๊ณผ๋ฅผ ๋์ธ์ ์ผ๋ก ๊ณต์
