5. 레고 로봇 프로그래밍
페이지 정보
작성자 관리자 댓글 0건 조회 1,421회 작성일 19-08-02 09:27본문
5. 레고 로봇 프로그래밍
적외선 센서와 컬러 센서를 이용하여 장애물을 감지하면서 이동하는 Driving Robot을 고려해 보겠습니다.
이를 구현하기 위하여 아래와 같은 상태 머신으로 로봇을 운영할 수 있습니다.
최초 프로그램을 실행하면 "Forward" 상태로 천이합니다.
이 상태에서는 로봇의 두 다리에 해당하는 모터를 구동하여 앞으로 전진하도록 하며, 이와 함께 적외선 센서와 컬러 센서를 통하여 장애물을 감지합니다.
만약 장애물이 없으면 "Forward" 상태를 계속 유지하며, 장애물을 감지하면 "Stop" 상태로 천이합니다.
"Stop" 상태에서는 모터를 정지하고, "Detect Obj" 상태로 천이합니다.
"Detect Obj" 상태에서는 로봇을 뒤로 이동시킨 후 센서들을 통하여 취득한 정보를 이용하여 왼쪽 또는 오른쪽으로 회전할지, 또는 270도 회전할지를 판단합니다.
즉, 왼쪽 컬러센서를 통하여 검은색을 감지하면 오른쪽으로 90도 회전하고, 오른쪽 컬러센서를 통하여 검은색을 감지하면 왼쪽으로 90도 회전합니다.
만약 적외선 센서를 통하여 장애물을 감지하면 270도 회전합니다.
이처럼 "Turn Around", "Turn Right", "Turn Left" 상태 중 하나로 천이한 이후에 장애물이 있는지 판단하여 장애물이 없으면 "Forward" 상태로 천이하고, 장애물이 있으면 "Stop" 상태로 천이합니다.
댓글목록
등록된 댓글이 없습니다.