' + 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 += '
본격적인 피지컬 AI 코딩 실습을 시작하기 전에, 하드웨어 구성에 필요한 교구들을 꼼꼼하게 챙겨주시기 바랍니다. 이번 프로젝트는 초등학생부터 고등학생까지 누구나 쉽게 따라 할 수 있도록 직관적인 부품들로 구성되어 있습니다.
준비된 전자 부품들을 서로 연결해 줄 차례입니다. 마이크로비트를 확장보드에 결합한 뒤, 허스키렌즈2를 지정된 핀에 맞게 연결해 줍니다. 핀 연결 시 전원(VCC)과 접지(GND)의 방향이 바뀌지 않도록 각별히 주의해야 센서의 손상을 막을 수 있습니다.

본 실습의 핵심인 자체 학습 객체 분류(Self-Learning Object Classification)란 무엇일까요?
이는 사용자가 복잡한 코드를 작성하거나 방대한 외부 데이터셋을 구축할 필요 없이, 허스키렌즈2 카메라 렌즈 앞에 직접 물체를 보여주는 것만으로 인공지능 모델을 학습시키는 매우 직관적인 머신러닝 방식입니다.
여러 각도에서 물체의 특징을 추출하여 기기에 기억시키면, 이후 해당 물체가 카메라에 포착되었을 때 내장된 AI 알고리즘이 이를 빠르고 정확하게 분석하여 자동으로 인식하고 분류하게 만들어 줍니다.
소프트웨어 코딩을 위해 PC 환경을 세팅하겠습니다. 이번 실습은 블록 코딩과 텍스트 코딩을 모두 지원하는 Mind+ (마인드플러스) V1.8.1 RC3.0 버전을 기준으로 설명합니다.
프로그램을 실행한 후 가장 먼저 해야 할 일은 확장 프로그램을 불러오는 것입니다.
[업로드 모드] 환경설정 창에서 마이크로비트와 허스키렌즈2 장치를 추가한 뒤, 데이터 통신을 위한 Send data to real time mode 확장 명령어를 작업 공간으로 가져옵니다.

이어서 화면 상단의 탭을 눌러 [실시간 모드]로 전환합니다. 실시간 모드에서는 업로드된 데이터를 받아오기 위해 Receive upload mode data 확장 명령어를 블록 꾸러미에서 가져와 배치해 줍니다.
?
환경 보호의 중요성을 깨닫게 해주는 뜻깊은 주제이자, 새학기 교실에서 실생활과 연계하여 가장 유용하게 활용될 수 있는 "쓰레기 종류 인공지능으로 분류하기" 프로젝트를 만들어보겠습니다.
?
우리가 매일 버리는 쓰레기는 올바른 분리수거가 필수입니다. 이번 실습에서는 가장 대표적인 재활용 품목인 “플라스틱”, “캔”, “종이” 세 가지를 선택하여 허스키렌즈2가 똑똑하게 분류하도록 코딩해 보겠습니다.
먼저 [업로드 모드] 창에서 인공지능 빌트인 모델 중 Self-Learning Classifier(자체 학습 분류기)를 선택하여 활성화되도록 블록을 조립합니다.
학습 과정은 다음과 같이 진행합니다:
1. 플라스틱 병을 여러 각도로 보여주며 ID = 1로 학습시킵니다.
2. 음료수 캔을 보여주며 ID = 2로 지정해 학습시킵니다.
3. 구겨진 종이나 박스를 보여주며 ID = 3으로 학습시킵니다.
학습이 완료되면 조건문 블록을 활용합니다. 카메라에 감지된 물체의 ID 값이 1이면 시리얼 포트 메시지 value를 1로 전송하게 설정하고, ID가 2 또는 3일 때도 각각에 맞는 value 값을 전송하도록 논리를 구성합니다. 이렇게 코딩하면 [업로드 모드]에서 카메라가 인식한 데이터 값이 [실시간 모드]의 PC 화면으로 즉각 넘어가게 됩니다.

작성한 [업로드 모드] 코드를 마이크로비트에 다운로드하여 하드웨어 이식을 완료해 주세요. 그 후 프로그램 상단 메뉴에서 [실시간 모드]를 클릭해 화면을 전환합니다.
[실시간 모드]에서는 마이크로비트로부터 전달받은 메시지(value 값)를 분석하는 코드를 작성합니다. value가 1이면 화면에 “플라스틱 입니다”라고 출력하거나 음성으로 말하게 하고, 2이면 “캔 입니다”, 3이면 “종이 입니다”를 말하도록 직관적인 조건 코딩을 완성해 줍니다.
?
모든 논리 블록의 조립이 끝났다면, 아래 사진의 표시된 부분처럼 [실시간 모드] 상단에서 장치 연결 아이콘을 찾아 Connect 버튼을 꼭 눌러주어야 합니다.
?
※핵심 포인트: 코딩을 완료한 후에는 반드시 [실시간 모드]에서 Connect 버튼을 눌러 시리얼 포트 통신을 연결해야만 기기와 PC 간의 데이터가 원활하게 주고받아집니다! 이 단계를 누락하면 결과가 출력되지 않습니다.
자, 이제 모든 준비가 끝났습니다! 코드를 마이크로비트에 완벽히 다운로드한 뒤, 허스키렌즈2의 물리적 메뉴 버튼을 조작하여 Self-Learning Object Classification 기능을 실행해 보세요.
카메라 렌즈 앞에 앞서 학습시켰던 플라스틱, 캔, 종이를 번갈아 비춰봅니다. 여러분이 만든 인공지능이 사물의 특징을 파악하고 즉각적으로 올바른 재활용 품목을 분류하여 화면에 띄우는 신기한 모습을 확인할 수 있습니다.

오늘 함께 실습해 본 셀프러닝 객체분류 기능, 흥미로우셨나요?
단순히 쓰레기를 분류하는 것을 넘어서, 오늘 배운 인공지능 원리와 코딩 로직을 응용하면 인가된 사람만 문을 열어주는 얼굴 인식 스마트 도어락이나, 재활용품을 자동으로 분류해 주는 스마트 IoT 분리수거함 등 완성도 높은 피지컬 AI 프로젝트를 기획할 수 있습니다.
이러한 프로젝트들은 새학기 자유학기제 수업이나 교내 과학 및 코딩 동아리 활동에서 학생들의 창의력을 뽐낼 수 있는 훌륭한 결과물이 될 것입니다. 다음 시간에도 교육 현장에서 바로 적용할 수 있는 더 알차고 재미있는 피지컬 AI 실습 콘텐츠로 돌아오겠습니다. 즐거운 코딩 생활 되세요!
해당 프로젝트에서 활용된 교구 및 상품은 아래에서 확인 가능합니다.
▼