' + re_word; if(data.autoList[i].PROD_NAME != ''){ html += ' '+data.autoList[i].PROD_NAME+''; } html += '
' html += '' + comma(Math.floor(data.autoList[i].PROD_PRICES)) + ' 원'; html += '' + re_word + '
'; html += '' + comma(Math.floor(data.resultList[i].prod_priceS)) + ' 원'; html += ''+data.catgStep1List[i].split('@@')[1]+'
'; html += '
안녕하세요!
요즘 코딩 교육의 트렌드는 단순한 문법 암기를 넘어, 소프트웨어와 하드웨어를 융합하여 실생활의 문제를 직접 해결해 보는 스마트 시티(Smart City) 프로젝트로 발전하고 있습니다. 방과 후 코딩 교실이나 메이커 스페이스에서 학생들에게 가장 인기 있는 주제 역시 우리 주변의 인프라를 똑똑하게 바꾸는 기술입니다.
오늘은 강력한 무선 통신 모듈을 내장한 메인보드인 ESP32 기반의 스마트 교통 에듀 키트를 활용하여, 초보자부터 고등학생까지 누구나 완성할 수 있는 '안전 지킴이 스마트 횡단보도(Smart Crossing)' 만들기 프로젝트를 상세히 소개해 드리겠습니다.
횡단보도는 보행자가 자동차로부터 안전하게 도로를 건널 수 있도록 만들어진 필수적인 교통 공간입니다. 하지만 최근 스마트폰을 보며 길을 걷는 이른바 '스몸비(스마트폰+좀비)' 보행자로 인해 전방의 신호등을 제대로 인지하지 못하고 발생하는 교통사고가 급증하고 있습니다.
이러한 치명적인 사회 문제를 해결하기 위해 등장한 것이 바로 '스마트 횡단보도'입니다. 첨단 IoT 기술을 활용하여 바닥 LED 신호등을 설치하고, 보행자 음성 알림 시스템을 구축하며, 물리적인 자동차 차단기와 버튼 반응형 신호 체계를 도입하여 보행자의 안전을 획기적으로 높여주는 미래형 교통 시스템입니다.

이번 프로젝트는 ESP32 스마트 교통 에듀 키트를 기반으로 제작됩니다. 실습에 사용되는 주요 부품의 구성과 전자 회로도는 다음과 같습니다.

메인 컨트롤러인 ESP32 보드를 중심으로 신호등 모듈, 서보모터(차단기용), 바닥형 LED 스트립(네오픽셀), 부저(알림음), 그리고 보행자 호출용 푸시 버튼이 촘촘하게 구성됩니다.

회로 연결 주의사항: 서보모터와 바닥형 컬러 LED는 전류 소모가 크므로 핀(Pin) 번호를 정확하게 매칭해야 오작동을 방지할 수 있습니다. 위 회로도를 꼼꼼히 참고하여 배선을 완료해 주세요.
첫 번째로 구현할 기능은 가장 기본이 되는 자동차용 신호등과 물리적 차단기입니다.
신호등은 초록불 → 노란불 → 빨간불 순서로 일정 시간마다 자동으로 변경되도록 알고리즘을 짭니다. 이와 동시에 서보모터를 이용해 빨간불일 때는 차단기가 내려가고, 초록불일 때는 차단기가 올라가도록 제어합니다. 이 과정을 코딩하면서 학생들은 순차 제어, 시간 지연(Delay), 변수 활용, 모터의 각도 제어라는 코딩의 아주 기초적이고 중요한 개념들을 자연스럽게 습득하게 됩니다.

최근 실제 어린이 보호구역이나 도심 교차로에서 흔히 볼 수 있는 '바닥형 보행 신호등'도 완벽하게 구현할 수 있습니다. 긴 바닥 LED 스트립 모듈을 활용하여 자동차 신호와 반대로 작동하게 만듭니다.
보행자 대기 시에는 바닥에 빨간색 빛을 내어 "대기하세요"를 시각적으로 강렬하게 전달하고, 보행 신호가 떨어지면 초록색 빛이 길을 안내하듯 켜집니다. 특히 스마트폰을 보느라 시선이 아래를 향해 있는 사람들에게 아주 효과적인 안전장치입니다.
여기에 청각적인 요소를 더해줍니다. 초록불이 켜졌는데도 인지하지 못하는 경우를 대비하여 부저(Buzzer) 모듈을 이용해 보행 시작 알림음이 출력되도록 프로그래밍합니다. 시각과 청각이 결합된 훨씬 현실적인 스마트 교통 시스템이 완성됩니다.
이번 실습에서 학생들이 가장 흥미로워하는 인터랙티브(상호작용) 기능입니다. 인적이 드문 도로나 야간 시간대에는 항상 신호등을 바꾸는 것이 비효율적일 수 있습니다.
따라서, 보행자가 횡단보도를 건너고 싶을 때 전봇대에 설치된 버튼을 누르면 그 즉시 시스템이 반응하여 자동차 신호가 빨간색으로 변경되고, 보행자 초록불이 점등되며 차단기가 열리는 시스템을 구축합니다. 센서의 '입력(Input)'이 메인루프에 개입하여 '출력(Output)'을 완전히 바꾸는 조건문과 인터럽트(Interrupt)의 원리를 배울 수 있습니다.
전체 로직을 효율적으로 관리하기 위해 기능별로 함수(Function)를 나누어 블록 코딩을 진행합니다.
(1) 차단기 열고 닫는 함수
서보모터를 이용해 차단기를 열고 닫습니다. 차단기가 쾅 하고 닫히지 않고 실제 차단기처럼 부드럽고 천천히 움직일 수 있도록, 반복문을 사용하여 서보모터 각도를 1도씩 미세하게 움직이도록 딜레이를 주어 코딩해 줍니다.

(2) 보행자 신호등 및 부저 함수
바닥에 설치된 컬러 LED(네오픽셀)의 색깔을 빨간색과 초록색으로 한 칸씩 순차적으로 켜지게 만드는 함수를 생성합니다. 그리고 초록색 LED가 모두 켜진 직후에는 부저가 "삐- 삐-" 하고 울리도록 소리 출력 블록을 추가해 줍니다.


(3) 메인 코드 (무한 반복 루프)
마지막으로 가장 중요한 시스템의 두뇌인 메인 루프입니다. 무한 반복되는 메인 코드 내에서 보행자가 버튼을 누르거나, 자동차 초록불이 유지된 지 10초의 시간이 다 되었는지를 조건문으로 끊임없이 확인합니다. 조건이 충족되면 앞서 만들어둔 차단기 제어 함수와 보행자 신호 함수를 호출하여 실행합니다.

이번 스마트 횡단보도 프로젝트는 단순히 화면 속에서 캐릭터를 움직이는 코딩을 넘어, 우리가 직면한 실제 사회 문제를 기술로 해결하는 경험을 제공해 주는 아주 훌륭한 융합 교육 콘텐츠입니다.
ESP32 보드와 다양한 센서, 액추에이터를 활용하면서 학생들의 컴퓨팅 사고력(CT)은 물론 문제 해결 능력과 IoT 시스템의 전반적인 이해도까지 폭발적으로 키울 수 있습니다. 다가오는 스마트 시티 시대! 여러분의 교실에서 학생들이 직접 “미래형 횡단보도”를 설계하고 만들어보는 건 어떨까요?