대학원수업2

주제 : 경사면 정속주행 AI전동차

준비물: 자이로센서(기울기측정)가 달린 소형 전동차 (마이크로비트 이용)

미션: 경사도가 계속 바뀌는 오르막길 주행 시 항상 정속주행하도록 모터 출력(토크)을 제어하는 AI 제작

물리영역:

경사각을 세타라 할 때, 차를 뒤로 잡아당시는 힘은 아래 두 힘의 합력이다.

힘1: 중력의 분력 Fg = mgsin세타

힘2: 마찰력 Ff = kmgcos세타 (k:마찰계수)

즉, 전동차가 정속주행하려면 모터 출력은 이 두 힘의 합력 이상이어야 한다.

F = Fg + Ff = mgsin세타 + kmgcos세타

수학영역:

수학에서는 힘 F가 세타에 대한 삼각함수의 일차결합이라는 데 주목한다.

P = a sin세타 + b cos세타

이제 (sin세타, cos세타, 모터출력P) 데이터와 그에 따른 출력 여부(1 or 0) 결과를 모아서, 학습시켜서 경계선 방정식의 파라미터(가중치) a,b를 최적화하자.

z = a sin세타 + b cos세타 – P

# [sin값, cos값, 모터출력, 정답]
data_set = [
    [0.17, 0.98, 20, 0],  # 1번 실험치
    [0.17, 0.98, 40, 1],  # 2번 실험치
    [0.34, 0.94, 40, 0],  # 3번 실험치
    [0.34, 0.94, 60, 1],  # 4번 실험치
    [0.50, 0.87, 50, 0],  # 5번 실험치
    [0.50, 0.87, 80, 1],  # 6번 실험치
]


코멘트

댓글 남기기

Cha's Record에서 더 알아보기

지금 구독하여 계속 읽고 전체 아카이브에 액세스하세요.

계속 읽기