본문으로 건너뛰기

Teachable Machine을 활용한 FSR 센서 프로젝트

개요

Google의 Teachable Machine을 사용하여 FSR 센서 데이터를 학습시키고, 제스처나 압력 패턴을 인식하는 AI 모델을 만들 수 있습니다.

Teachable Machine 3단계 프로세스

Teachable Machine 3 Steps

Teachable Machine은 다음 3단계로 작동합니다:

  1. 수집 (Gather): 훈련 데이터 수집
  2. 학습 (Train): 모델 훈련
  3. 내보내기 (Export): 모델 활용

훈련 옵션 설정

Teachable Machine Training Options

주요 설정 항목

  • Epochs: 학습 반복 횟수
  • Batch Size: 한 번에 처리할 데이터 크기
  • Learning Rate: 학습 속도 조절

FSR 센서와 연동하기

1. 데이터 수집

FSR 센서에서 다양한 압력 패턴 데이터를 수집합니다:

// Arduino 코드 예제
int fsrPin = A0;
int fsrReading;

void setup() {
Serial.begin(9600);
}

void loop() {
fsrReading = analogRead(fsrPin);
Serial.println(fsrReading);
delay(100); // 100ms 간격으로 데이터 수집
}

2. 클래스 정의

압력 패턴에 따른 클래스를 정의합니다:

클래스압력 범위용도
없음0-100터치 없음
약함100-400가벼운 터치
중간400-700일반 누름
강함700-1023강한 압력

3. 모델 학습

  1. Teachable Machine 웹사이트 접속
  2. "New Project" → "Standard image model" 선택
  3. 각 클래스별로 샘플 수집
  4. "Train Model" 클릭
  5. 학습 완료 후 테스트

4. 모델 내보내기 및 활용

학습된 모델을 다양한 형식으로 내보낼 수 있습니다:

// 웹 브라우저에서 실행
const URL = "https://teachablemachine.withgoogle.com/models/YOUR_MODEL/";
const model = await tmImage.load(URL + "model.json", URL + "metadata.json");

활용 예제

1. 자세 인식 방석

FSR 센서 매트릭스를 사용하여 앉은 자세를 분류:

  • 바른 자세
  • 구부정한 자세
  • 한쪽으로 기운 자세

2. 보행 패턴 분석

신발 깔창에 FSR 센서를 부착하여:

  • 정상 보행
  • 절뚝거림
  • 뛰기/걷기 구분

3. 악력 측정 및 재활

손가락별 압력을 측정하여:

  • 악력 수준 평가
  • 재활 진행도 추적
  • 운동 패턴 인식

주의사항

주의
  • 충분한 양의 학습 데이터 확보 필요 (클래스당 최소 100개 이상)
  • 센서 노이즈 제거를 위한 필터링 적용
  • 실제 환경과 유사한 조건에서 데이터 수집

추가 리소스