31
정보제어공학과 Capstone Design 21조 - 1 - Chapter 1 : 연구 배경...............................................................2 1.1. 연구 과제 선정 배경............................................................................................2 1.2. 연구목표...............................................................................................................3 1.3. 추진체계 및 전략.................................................................................................4 1.4. 작품구상...............................................................................................................5 Chapter 2 : 연구 내용...............................................................7 2.1. 연구일정, 연구 수행 방법 및 계획.......................................................................7 2.2. 연구 내용..............................................................................................................9 2.2.1. 모터의 선정 및 기구부 제작.........................................................................9 2.2.2. 센서부 설계...................................................................................................14 2.2.3. 청소모듈 설계................................................................................................16 2.2.4. 윈도우 프로그래밍.........................................................................................18 Chapter 3 : 연구 결과...............................................................19 3.1. 모터부 과제 연구 결과.........................................................................................19 3.2. 센서부 과제 연구 결과.........................................................................................22 3.3. 윈도우 프로그래밍 과제 연구 결과......................................................................24 3.4. 작품 완성 사진.....................................................................................................27 Chapter 4 : 결론.......................................................................28 4.1. 연구비 사용내역...................................................................................................28 4.2. 연구 결과의 응용 및 활용 방안(기대효과)...........................................................29 4.3. 고찰 및 결론........................................................................................................30 [Appendix] A.1. 소스코드(모터부, 센서부, MFC) A.2. 회로도

Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 1 -

목 차Chapter 1 : 연구 배경...............................................................2

1.1. 연구 과제 선정 배경............................................................................................2

1.2. 연구목표...............................................................................................................3

1.3. 추진체계 및 전략.................................................................................................4

1.4. 작품구상...............................................................................................................5

Chapter 2 : 연구 내용...............................................................7

2.1. 연구일정, 연구 수행 방법 및 계획.......................................................................7

2.2. 연구 내용..............................................................................................................9

2.2.1. 모터의 선정 및 기구부 제작.........................................................................9

2.2.2. 센서부 설계...................................................................................................14

2.2.3. 청소모듈 설계................................................................................................16

2.2.4. 윈도우 프로그래밍.........................................................................................18

Chapter 3 : 연구 결과...............................................................19

3.1. 모터부 과제 연구 결과.........................................................................................19

3.2. 센서부 과제 연구 결과.........................................................................................22

3.3. 윈도우 프로그래밍 과제 연구 결과......................................................................24

3.4. 작품 완성 사진.....................................................................................................27

Chapter 4 : 결론.......................................................................28

4.1. 연구비 사용내역...................................................................................................28

4.2. 연구 결과의 응용 및 활용 방안(기대효과)...........................................................29

4.3. 고찰 및 결론........................................................................................................30

[Appendix]

A.1. 소스코드(모터부, 센서부, MFC)

A.2. 회로도

Page 2: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 2 -

1.1. 연구 과제 선정 배경

요즘 현대인들의 집은 잠자는 곳에 불과하다. 점차 급변하는 사회 속에서 치열한 경

쟁을 벌이는 그들에게 집이란 온갖 스트레스에서 벗어나 편히 몸을 뉘일 수 있는 곳으

로 변화하였다.

가정주부라는 단어도 들은 지 오래다. 커리어우먼, 알파걸과 같이 경제적인 활동을

하는 여성이 급증하고 있다. 이에 따라 맞벌이부부도 동반 상승추세이다.

그에 따라 HUBO(휴먼로봇)의 시초로 영화 속에서만 볼 수 있었던 로봇들이 개발되

고, 그 중에서도 집안일의 수고로움을 조금이나마 덜어주는 서비스 로봇이 개발되어 상

품화 되고 있다.

가정용 로봇의 종류

우리는 가정용 로봇의 하나인 청소로봇을 작품 주제로 선정하였다. 현재 청소로봇은

시중에 판매중이다. 그 가격이 천차만별이여서 200만원을 웃도는 제품까지 출시되었

다. 소비자의 경우 소비욕구가 있음에도 성능과 가격에 만족하지 못하는 경우가 많아

수요는 낮은 실정이다.

우리는 서민들에게 부담 없이 다가갈 수 있는 편리하면서도 시장성이 높은 청소로

봇을 개발해 낼 것이다. 또한, KS규격에 맞추어 제작하면서 올해 열리는 청소로봇경진

대회의 참가에 중점을 맞추었다.

이러한 로봇을 제작하기 위해서는 제어, 센서, 통신, Visual C++, 회로설계 등의 능력

을 갖추어야 한다. 그 중에서도 위치 제어 능력과 Visual C++ 능력이 많이 부족했기

때문에 이 두 가지를 중점적으로 학습해야했다.

Page 3: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 3 -

1.2. 연구 목표

이번 캡스톤 설계 과목을 통해서 제작할 청소로봇의 목표와 내용은 다음과 같다.

1.2.1. 최종목표

- 일반 진공청소기처럼 강력한 흡입력으로 청소의 효율을 높인다.

- 바닥, 가구 등에 자국이나 손상을 최소화하여 이동할 수 있도록 한다.

- 무선 통신을 이용해 컴퓨터로 제어가 가능하도록 한다.

1.2.2. 과제 내용

- 센서를 통해 주변공간과 사물의 위치를 파악하여 주행 할 수 있도록 한다.

- 블루투스를 통해 PC와 통신하여, 데이터를 수집하고 연산하는 작업을 실시한다.

- PC가 연산한 값을 통해 다시 구동과 흡입모터를 구동시켜 완벽한 청소를 한다.

- 윈도우프로그램으로 로봇의 주행을 시뮬레이션 한다.

1.2.3. 세부과제별 목표 및 내용

세부과제명 세부과제내용 담당자

기구부 제작

- 청소로봇 몸체 제작 및 설계

- 흡입부 설계

- 흡입모터를 이용한 흡입력 테스트

주:김상규

부:이효정

하드웨어 구성

- 장애물 감지 센서 구성

- 바닥 감지 센서 구성

- 자이로 센서 구성

- 가속도 센서 구성

- 엔코더 및 컨트롤러 회로 구성

주:김병직

부:이효정

소프트웨어 제작- 주행 알고리즘

- 엔코더를 이용한 모터제어 프로그램

주:김병직

부:김상규

센서 조사

하드웨어 시뮬레이션

- PSD 및 엔코더 센서 조사

- 청소로봇 관련 자료 수집

- 윈도우 프로그래밍을 이용한 로봇 시뮬레이션

주:이효정

부:김상규

홈페이지 관리

- 홈페이지 제작 및 관리

- 자료 업데이트

- 인터넷을 통한 기술 자료 검색 및 수집

공통과제

Page 4: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 4 -

1.3. 추진계획 및 전략

1.3.1. 세부과제 연관도

1.3.2. 추진전략 및 방법

각 파트별로 자신이 맡은 분야를 모듈화 시켜 전체적인 하드웨어를 제작하기 전에

연계테스트를 수행한다. 각 파트별 연계테스트의 실행이 무리 없이 이루어지면 하드웨

어를 제작하여 그 위에 각 모듈을 합체하여 탑재한다. 그 후, 구상중인 알고리즘을 바

탕으로 시스템프로그래밍을 하며 Debugging하는 단계로 프로젝트를 진행한다.

Page 5: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 5 -

1.4. 작품구상

우리는 저가의 고성능이면서 실용적인 디자인을 가진 청소로봇을 설계하기로 하였다.

그래서 현제 판매중인 청소로봇을 조사 하였고, 청소로봇의 종류는 가격대에서 저가형,

보급형, 고급형, 등으로 나뉘며 그에 따라 각각의 성능차이를 가졌다.

저가의 고성능 청소로봇을 만들기 위해 장애물감지, 추락방지센서, 맵핑, UI 기능을

가진 로봇을 설계하기 위하여 다시 비슷한 성능을 가진 청소로봇을 조사하였다.

외향디자인은 원형의 청소로봇과 진공청소기의 흡입부가 달린 유선형 청소로봇으로

한울로보틱스의 ‘오토로’와 원형 청소로봇으로 (주)유진로봇의 ‘아이클래보’의 형태가

대표적인 디자인이다.

<오토로>

사용시간 120분

충전시간 180분

모터출력 210W

높이 28cm

지름 46*60cm

무게 14kg

특이기능

최다센서장착,디지털광학센서2개,

자기위치인식,오토맵,중복청소방

지,진공청소물걸레 기능

가격 330만원

사용시간 110분

<아이클래보>

충전시간 150분

모터출력 30W

높이 10cm

지름 35cm

무게 3.9kg

특이기능고무범퍼, 디지털 디스플레이

먼지통 감지센서, 음성안내

가격 60만원

Page 6: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 6 -

초기 디자인 컨셉은 '오토로'로 정했지만 흡입부의 조향에 있어서 하드웨어적 구성의

어려움이 있었고 소프트웨어적으로 흡입부 조향에 따른 청소 구역의 변화와 위치 제어

의 어려움이 예상되었다. 210W의 흡입력은 BLDC모터의 사용으로 가능한데 BLDC모

터 자체가 고가이기 때문에 저가형 청소로봇 컨셉에 맞지 않아 210W급의 흡입력은 포

기 하였다. 또한 자체에 문턱을 잘 넘지 못하는 단점을 가지고 있어 원형의 ‘아이클래

보’ 디자인을 본 떠 기능면에서 보완하여 디자인하기로 하였다.

‘아이클래보’는 원형의 2축, 캐스트를 가진 구조로서 이동과 방향성이 자유롭고 기계

적으로 단순한 구조를 가지고 있다. 하지만 장애물 감지센서로 범퍼센서를 이용하여 청

소 시 다른 물체에 손상을 입힐 수 있고, 흡입력은 30W정도로 고가형 청소로봇에 비

해 낮은 편이다.

따라서 우리가 설계하는 저가형 청소로봇은 좀 더 소형화하고 슬림화하여 구석진 부

분과 가구 밑까지 청소가 가능하게 하고, 60W급의 흡입력을 가지며 장애물 검출센서

는 초음파센서와 PSD센서를 이용하여 다른 물체에 손상을 입히지 않도록 하드웨어를

구성할 것이다. 또 일반가정의 장애물 높이를 1cm라고 가정하고 장애물을 충분히 넘을

수 있도록 구동부를 구성할 것이다. 추락방지센서로 PSD센서를 달아 계단이나 욕실바

닥,등에서 떨어지지 않고 구동할 수 있도록 할 것이다. User interface를 간편하게 하

기 위해 윈도우를 이용한 MFC( Microsoft foundation class )로 만들어 사용자가 컴

퓨터를 통해 무선으로 청소로봇을 제어할 수 있도록 할 것이다. 구동알고리즘을 통해

효율적으로 청소로봇을 구동할 것이다. IRC(Intelligence Robot Contest)까지 위치인식

과 맵핑기술 : SLAM (Simultaneous Localization And Mapping)을 하여 고급형 로봇

에 들어가는 기능을 추가할 것 이다.

Page 7: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 7 -

2.1. 연구일정, 연구 수행 방법 및 계획

2.1.1. 연구일정

총괄과제명 : Cleaning Robot 담당자 : 전원

연구내용추진일정

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

기구부제작

센서모듈 조사 및 제어

모터 제어 연구

윈도우 프로그래밍

시스템 프로그래밍(Debugging)

세부과제명 1 : 기구부 제작 담당자 : 김상규, 김병직

연구내용추진일정

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

기구부 설계

재료 구입

제작 및 하드웨어 Test

각 파트 탑재

세부과제명 2 : 센서 구동 모듈 담당자 : 김병직, 이효정

연구내용추진일정

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

센서의 모듈화

모듈과 MCU와의 Data처리

센싱값 Test

연계 Test

Page 8: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 8 -

세부과제명 3 : 모터 구동 모듈 담당자 : 김병직, 김상규

연구내용추진일정

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Motor Drive 회로제작

PWM을 이용한 모터 구동 Test

엔코더 값 및 방향 Test

연계 Test

세부과제명 4 : 윈도우 프로그래밍 담당자 : 이효정, 김상규

연구내용추진일정

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Bluetooth를 이용한 통신 실험

GUI 작성

입력데이터 처리 및 출력

연계 Test

세부과제명 5 : 시스템 프로그래밍(Debugging) 담당자 : 전원

연구내용추진일정

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

시스템 프로그래밍(Debugging)

2.1.2. 업무분담 내용

구분 김병직 김상규 이효정

역할

분담

내용

청소로봇 몸체 설계

엔코더 및 컨트롤러 회

로 구성

주행 알고리즘

문서 작업 및 홈페이지

관리(공통작업)

청소로봇 몸체 설계

센서 모듈 제어

문서 작업 및 홈페이지

관리(공통작업)

윈도우 프로그래밍을 이

용한 로봇 시뮬레이션

회계 관리

문서 작업 및 홈페이지

관리(공통작업)

Page 9: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 9 -

2.2. 연구내용

2.2.1. 모터의 선정 및 기구부 제작

2.2.1.1. 모터의 선정

(가) IG-30GM with 2channel Encoder

Geared

Motor

감속비

Reduction ratio1/5

12V

정격 토크(kg-cm)

Rated torque0.46

정격 회전수(rpm)

Rated speed1148

- 26 Poles Magnet 26 P/R 유성 기어타입, 1/5의 감속비

- 정격토크 10Kg-cm 순간 허용토크 30Kg-cm

- Drive motor 특성곡선

- Rated torque 110 g-cm, 5950 rpm, current 900 mA 이하

- 7.0 W No load speed 7300 rpm, No load current 150 mA 이하

Page 10: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 10 -

모터 축 기준 1회전 시 26P 2ch 1/5 감속모터 출력 측 샤프트 기준 1회전시 130P

2ch

자기식 엔코더로서 모터의 후면 샤프트에 연결된 마그넷의 회전에 따라 자극이 바뀌

는 것을 이용, ATS177 홀센서 소자가 해당 분해능의 펄스를 보냄. A상과 B상이 90도

(270도) 간격으로 출력이 나오게 됨.

Characteristics SYMBOLTEST

CONDITIONSMin. Typ. Max. Units

Supply Voltage Vcc --- 3.5 5 20 V

Output Rise

Timetr

Vcc=14v;RL=820

Ω;CL=20pF- 0.3 1.5 uS

Output Fall

Timetf

Vcc=14v;RL=820

Ω;CL=20pF- 0.3 1.5 uS

‣ 우리가 제작하는 청소로봇은 단지 고속 주행이 아닌 일정 속도로 청소를 하며 이

동한 거리 제어가 필요함으로 엔코더가 부착된 DC geard motor를 사용하였고, 저가형

청소로봇을 제작하기 위하여 6만원 대의 기어비 1/5인 D&J IG-30GM 모터를 사용하

였다.

입력전원으로 사용될 리튬-폴리머 전지는 11V 1900mAH이고 이 모터는 정격 12V

이며 전부하 상태일 때 1.5A정도를 소모하기에 사용에 무리가 없다고 판단되어 선정하

였다.

선정한 모터의 토크는 정격토크 10Kg-cm, 순간 허용토크 30Kg-cm로 우리가

제작하게 될 하드웨어 무게와 흡입하게 될 먼지나 쓰레기의 무게를 가지고도

충분히 견딜 수 있는 토크를 가지고 있다.

청소로봇의 위치제어에 꼭 필요한 엔코더는 26ppr의 분해능을 가져 이동한 거리를

계산 할 수 있게 하였다.

Page 11: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 11 -

(나) Cyclone Motor (PM2542SH-5019)

Supply Voltage 12V

Supply Current 2.5A

‣ 청소로봇에 들어가는 핵심 부품중 하나인 흡입 모터는 실제 ‘(주) 유진 로봇의 아

이클래보’라는 청소 로봇에 들어가는 흡입 모터로서, 초기에 흡입 모터를 설계 하여 사

용하려고 하였으나 흡입 프로펠러 제작 시 과도한 비용 소모와 흡입력 문제가 예상 되

어 유진 로봇의 로봇사업 개발부를 찾아가 흡입모터를 직접 구매하였다. 30W의 흡입

력을 증가시키기 위해 한 쌍을 구매하였다.

이 흡입 모터는 정격 12V에 2.5A의 전류를 소모하며 30W 정도의 출력을 가졌다.

하지만 전류 소모가 심하여 전원을 11V 1900mA 리튬 폴리머로 MCU와 Drive 모터

와는 별개로 주기로 하였다.

(다) Side Brush Motor (RC260RA-18130)

Model

VOLTAGE NO LOAD

OPERATING 

RANGENOMINIMAL

SPEED CURRENT

r/MIN A

RC260RA

-181304.5 ~ 6 V 4.5V 9800 0.14

‣ Side brush motor는 흡입부가 미치지 못 하는 하드웨어를 보안하기 위하여 보조

로 달리는 모터로서 원형구조의 청소로봇이 사각의 구석진 부분까지 청소해주지 못하

는 부분을 브러쉬로 모아 안쪽 흡입부로 전달해주는 역할을 한다.

이 모터는 큰 토크가 필요하지 않고 주변을 쓸어주는 역할만 하면 됨으로 마부치사

의 RC260RA-18130라는 모델을 선정하였다.

이 모터는 최소 4.5V 레벨로 NOLOAD시 0.14A만을 소모한다. 브러쉬는 탄성이 좋

은 플라스틱 제질로 실제 구동시에도 적은 전류를 소모하였다. Side brush motor의 전

원은 MCU전원인 5V로 PWM 동작 시켰다. 전류 소모가 작고 방향전환이 불필요함으

로 부가의 모터드라이브는 사용하지 않았다.

Page 12: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 12 -

2.2.1.2. 기구부 제작

(가) 구동부 설계

기존의 청소 로봇인 iRobot의 Roomba는 작은 구동 바퀴의 지름으로 인해 가정환경

의 턱을 넘지 못하기도 하며, 얕은 함정에 빠졌을 때 벗어나지 못한다. 한울 로보틱스

의 오토로란 청소 로봇은 Syncro-drive방식으로 Omni-directional 구동이 가능하고

얕은 턱을 넘을 수 있지만 복잡한 장치 구성으로 인하여 가격이 비싸다. 때문에 구동

방식의 종류에 따라 로봇의 움직임과 알고리즘이 달라지기에 복잡한 가정환경에서 효

율적인 청소를 하기 위해서는 로봇을 움직이는 구동부의 설계는 매우 중요하다.

저가격으로 청소 로봇을 구성하면서 효율적인 움직임을 할 수 있는 구동 방식은 기

존 모바일 로봇에서 가장 많이 사용되고 있는 DC 모터를 이용한 차동 구동 방식이다.

또한 로봇의 회전과 전진과 후진의 연속적인 동작에 있어서 안정성을 유지하고 비선형

적인 움직임을 최소화하기 위해 Omni-directional 캐스터를 사용하였다.

구동 바퀴는 일반적인 가정환경의 문턱이나 장애물의 높이를 10mm로 가정하여 청소

로봇이 충분히 넘어갈 수 있도록 지름 100mm(68.243mm이상)으로 선정 하였다.

동력 전달 방식은 기어박스를 제작하여 사용하였다. 기어는 기어비 1/6로 토크를 충

분히 높이면서 PPR을 6배로 높여 780ppr의 분해능으로 좀 더 정확한 거리제어 가 가

능하도록 설계하였다.

<바퀴 지름 선정>

<제작된 동력 전달부>

(나) 흡입부 설계

청소로봇의 흡입부는 적정 용량과 흡입력을 갖추어야 하는데 IRC(Intelligent Robot

Contest) 청소로봇 경진대회의 경기장의 크기는 5 x 5 m의 경기장으로 이물질은 입자

가 작은 곡물류로 골고루 뿌려진다. 따라서 이 곡물류를 쌀알이라고 가정하고 골고루

뿌려졌을 때 종이컵 3컵 정도(약600ml)의 곡물이 뿌려진다고 한다.

Page 13: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 13 -

따라서 600ml이상의 흡입용량과 쌀알정도는 충분히 빨아들일 수 있는 흡입부를 설계

하였다. 또 사용자의 편의를 위해 흡진통은 간편히 탈착이 가능하도록 서랍식으로 설계

하였다. 흡입구는 길이 270mm x 5mm의 형태로 한 번에 넓은 면을 흡입할 수 있도록

설계 하였다

흡진통은 147mm x 164mm x 45mm크기의 서랍형태로 제작하였다. 또한 흡입력이

손실되지 않도록 이음세부분을 실리콘으로 마감처리를 하였다.

설계는 정확성과 편의를 위하여 AutoDesk Inventor 10을 사용하여 CNC작업이 가

능 하도록 하였다. 그 결과 약 0.01mm의 오차를 가지는 흡입부를 설계할 수 있었다.

< 제작된 흡진통 >

(다) 로봇 프레임 설계

청소로봇은 캡스톤 설계와 더불어 IRC(Intelligent Robot Contest)의 청소로봇 경진

대회에 참가하기 위해 제작 하였다. 따라서 청소로봇은 기존의 가정환경과 더불어 IRC

청소로봇경진대회의 하드웨어 사양에 따라 제작하였다. IRC기준에 따르면 하드웨어의

크기에 따른 참가자격의 제약은 없으나, 일반 가정 및 사무실에서 사용할 로봇이라는

점을 감안할 때, 전원(예. 배터리)을 포함한 로봇 본체가 무게 30Kg, 지름 60cm, 높이

50cm 이상을 넘지 않을 것을 권장한다. 따라서 우리는 지름 35Cm 높이 11cm 무게

약 3.5kg정도를 기반으로 설계하였다.

< 청소 로봇의 밑판 설계>

Page 14: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 14 -

2.2.2. 센서부 설계

청소로봇과 장애물 또는 바닥과의 거리를 측정하기 위해서 크게 적외선 센서와 초음

파 센서 두 가지 센서를 테스트 하였다. 적외선 센서 중에서 PSD(Position Sensitive

Device) 센서(GP2Y0A21YK - 이하 장애물 센서, ON2509E - 이하 바닥 센서)를 테

스트 해본 결과 장애물 센서의 경우 10 ~ 80 정도의 범위를 갖고 바닥 센서의 경우

에는 1 미만의 거리를 측정할 수 있었다. 초음파 센서(SRF-04, SRF-05)는 적외선

센서보다 방사각은 크지만 정확성이 더 좋기 때문에 장애물과 벽을 검출하는데 사용하

도록 하였다.

2.2.2.1. 초음파 센서

정밀도가 높은 Laser Range Finder의 경우 지능형 로봇에 많이 사용되고 있으나 고

가격이며 가정환경에서 레이저를 사용하기에 인간에게 좋지 않다. 따라서 쉽게 구성할

수 있는 저가의 센서는 초음파 센서와 적외선 센서 정도가 있다. 하지만 적외선 센서의

경우 외부 광원의 영향이 가장 적은 780nm 정도의 적외선 영역의 광원을 센서로 사용

하더라도 조도가 수시로 변하는 가정환경에서의 사용은 적절하기 못하다.

초음파 센서 초음파 센서의 방사각

청소로봇에 부착된 초음파 센서

Page 15: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 15 -

따라서 Time Of Flight(이하 TOF)방식을 사용하며 가정환경에서 외란이 적외선 센

서에 비해서 상대적으로 적은 초음파 센서를 메인 센서로 채택하여 설계하였다. 하지만

TOF 방식의 특성상 반향의 외란이 존재하고 초음파 센서의 특성상 좌우 ±22.5˚, 총

45˚의 넓은 범위를 측정하기에 신뢰할 수 있는 영역 내에서 초음파 센서 정보의 신뢰

도를 높일 수 있는 설계가 요구되었다. 따라서 신뢰도를 유지하면서 외란을 줄이기

위하여 다른 센서와 연동하여 측정할 수 있도록 센서와 센서의 위치를 45˚로

배치하여 로봇의 전면에 위치하도록 설계하였다.

2.2.2.2. 적외선 센서

적외선 센서는 거리 정보가 아날로그 값으로 읽어 들일 수 있는 GP2Y0A21YK와

ON2509E 두 종류를 사용하였다.

PSD 센서(GP2Y0A21YK, ON2509E)는 초음파 센서보다 가격은 저렴하지만 방사각

이 작기 때문에 직선성을 띄고 있다. 단점이 있다면 모듈의 출력 값이 비선형의 값을

나타내기 때문에 이러한 값을 선형화 시켜주는 별도의 소프트웨어 작업이 필요하다.

PSD_ON2509E GP2Y0A21YK

청소로봇에 부착된 PSD 센서

Page 16: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 16 -

청소 로봇이 벽과의 거리를 감지하여 주행을 하기 위한 센서(GP2Y0A21YK)와 함정

이나 낭떠러지를 감지하기 위한 센서(ON2509E)를 배치하였다.

2.2.3. Controller 설계

움직임이 안정적이고 정확한 구동하기 위해서 마이크로 컨트롤러 사용하여 제작하였

다. ATMEL사의 ATmega128을 이용하여 PSD센서를 ADC값으로 변환하여 거리를 계

산하였고, 초음파 센서는 ATtiny2313을 이용하여 일정 거리 이내로 청소로봇이 장애

물이나 벽에 접근하게 되면 Signal신호를 메인보드로 전송할 수 있도록 모듈화 하였다.

완성된 메인보드(ATmega128)

초음파 센서 모듈(ATtiny2313)

장애물 센서와 바닥 센서를 PORTF(ADC[0:7])를 이용하여 ADC값으로 읽을 수 있

도록 하였다. PSD 센서의 오차를 줄이기 위해 사용한 초음파 센서 모듈의 Singal신호

는 mega128의 외부인터럽트 신호로 입력받아 구동시켰다.

모터의 엔코더 값은 LS7266을 이용해 입력받아 카운트한 후, 데이터를 mega128의

PORTA(AD[0:7])을 통해 받도록 하였다.

Page 17: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 17 -

ATmega128

1011121314151617

3536373839404142

2526272829303132

23456789

5455565758596061

4445464748495051

3334431819

64

62

20

1

24

23

21 5222 53 63

PB0 (SS)PB1 (SCK)PB2 (MOSI)PB3 (MISO)PB4 (OC0)PB5 (OC1A)PB6 (OC1B)PB7 (OC2/OC1C)

PC0 (A8)PC1 (A9)PC2 (A10)PC3 (A11)PC4 (A12)PC5 (A13)PC6 (A14)PC7 (A15)

(SCL/INT0) PD0(SDA/INT1) PD1

(RxD1/INT2) PD2(TxD1/INT3) PD3

(IC1) PD4(XCK1) PD5

(T1) PD6(T2) PD7

(RxD0/PDI) PE0(TxD0/PDO) PE1(XCL0/AIN0) PE2

(OC3A/AIN1) PE3(OC3B/INT4) PE4(OC3C/INT5) PE5

(T3/INT6) PE6(IC3/INT7) PE7

(TDI/ADC7) PF7(TDO/ADC6) PF6(TMS/ADC5) PF5(TCK/ADC4) PF4

(ADC3) PF3(ADC2) PF2(ADC1) PF1(ADC0) PF0

PA7 (AD7)PA6 (AD6)PA5 (AD5)PA4 (AD4)PA3 (AD3)PA2 (AD2)PA1 (AD1)PA0 (AD0)

(WR) PG0(RD) PG1

(ALE) PG2(TOSC2) PG3(TOSC1) PG4

AVCC

AREF

RESET

PEN

XTAL1

XTAL2

VC

CVC

CG

ND

GN

DG

ND

Switch_1

Ultra Sonic_6

PSD_2

Switch_2

EN_5

Ultra Sonic_3

_RXD블루투스

EN_6

Ultra Sonic_5

10uF

R_Motor_Break

LS7266_CS

Ultra Sonic_1

LS7266_WR

PSD_5

EN_3

L_Motor_PWM

30p

R_Motor_Phase

PSD_7PSD_6

PSD_4

PSD_1

RS232C_TXD

Switch_0

EN_7

EN_1 Ultra Sonic_2_TXD블루투스

LS7266_RD

RS232C_RXD

VCC 5V

EN_4

Servo Motor

L_Motor_Phase

Switch_3

VCC 5V

L_Motor_Break

R_Motor_PWM

LS7266_XY

30p

Vacuum Motor

16Mhz

EN_0

10k

PSD_3

PSD_0

Ultra Sonic_4

EN_2

VCC 5V

LS7266_CD

메인보드 회로도(ATmega128)

Page 18: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 18 -

2.2.4. 윈도우 프로그래밍

2.2.4.1. 시리얼 통신이란?

일반적으로 컴퓨터 기기를 접속하는 방법의 하나로, 접속하는 선의 수를 삭감하고,

또한 원거리까지 신호를 보낼 수 있도록 한 방식을 말한다. 이때 신호가 1비트마다 시

리얼(직렬)로 보내지기 때문에 시리얼 통신이라 부른다.

Serial 통신 (직렬 통신)는 데이터들이 동일한 한 개의 통신선을 따라 한 비트, 한

비트 씩 시간의 흐름에 따라 차례로 보내는 통신 인터페이스이다. 대표적인 직렬 인터

페이스는 RS-232C 표준 인터페이스이다. 기본적으로 컴퓨터는 직렬 인터페이스를 위

해서 직렬 포트를 내장하고 있다.

2.2.4.2. 비트 단위 데이터 전송

시리얼통신에서는 1 바이트를 8개의 비트로 분리해서 한번에 1비트씩 통신선로로

전송한다. 수신측에서는 통신선로를 통해 수신한 비트들을 조립해서 1 바이트를 만들어내

야 하는데 이때 1 바이트의 범위를 식별하기위하여 사용하는 것이 스타트 비트와 스톱

비트이다. 일단 스타트 비트를 송신하면, 송신측(계측 장치)에서는 계속해서 데이터비

트를 송신한다. 수신측(PC측) 과 송신측(계측 장치)은,이 데이터 비트수와 BaudRate

의 값을 일치하게 설정할 필요가 있다.

2.2.4.3. 데이터 통신 속도

데이터 전송 속도는 BPS (Bit Per Second) 또는 BaudRate로 나타낸다.

BPS란 1초에 몇 개의 비트가 전해지는가를 말한다. 1200BPS는 1초에 1200개의 비트가

전달되는 것이며, 9600BPS는 1초에 9600개의 비트가 전달된다. 그에 반면 BaudRate는

1초에 몇 개의 신호가 전달되는가를 나타내는 단위이다.

신호와 비트의 대응은 변복조에 관련된 것으로, 고속 통신을 하고자 하는 경우에는

효율과 정확성이 높은 방법을 택하여 통신을 하게 된다.

2.2.4.3. 데이터 통신 속도

패리티 비트란 데이터의 송신 중에 데이터에 어떠한 누락을 체크하는 것이다.

패리티에는 짝수 패리티(Even parity),홀수 패리티(Odd parity),마크 패리티(Mark

Page 19: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 19 -

parity),스페이스 패리티(Space parity),혹은 패리티 없음(None at all)을 선택할 수

있다.

짝수 또는 홀수 패리티를 이용하면 ,각 데이터 바이트 중의 1의 개수를 세고, 보내

진 그 수가 짝수 또는 홀수가 되도록 패리티 비트를 송신한다. 예를 들면,짝수 패리

티를 선택했다면, 데이터 중에 1이 짝수개 있는 경우 패리티 비트는 0로 된다.

MicroSoft Visual Studio 6.0을 사용하여 모터부의 구동과 센서부에서 수신되는 값

에 따라 로봇의 궤적을 시뮬레이션하게 된다.

Page 20: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 20 -

3.1. 모터부 과제 연구 결과

엔코더를 통한 780ppr을 이용하여 모터의 거리제어를 하였다. 모터의 속도제어는

ATmega128을 통하여 fast PWM을 사용하였으며, 시뮬레이션 도중 엔코더의 값과

실제 이동한 거리 오차가 발생하였다. 이를 줄이기 위하여 ATmega128에 PI제어기를

달아 거리값의 오차를 줄일 수 있었다.

모터 드라이브 제어기

모터 구동의 속도 값을 30ms마다 전송 받게 되어 모터를 구동하게 된다. 제어부에

서 속도 레퍼런스가 전송되어 오면 PI제어를 통해 속도 제어를 하게 된다. 모터의 엔

코더를 통해 현제 속도를 측정하여 피드백 시키는 방식으로 구동한다.

_R_Motor_Phase주행

_L_Motor_PWM주행

VCC 12V

A3953SB

12345

7

161514131211109

6

8

/BRAKEREFRCGNDGND

PHASE

VBBOUTBMODE

GNDGND

SENSEOUTA

VBB

VCC

/ENABLE

VCC 12V

1N40

01

30k

1N40

01

1N40

01

VCC 12V

_R_Motor_Break주행

0.5

_L_Motor_Phase주행

47uF

_R_Motor_PWM주행

1N40

01

A3953SB

12345

7

161514131211109

6

8

/BRAKEREFRCGNDGND

PHASE

VBBOUTBMODE

GNDGND

SENSEOUTA

VBB

VCC

/ENABLE

30k

470p

F

VCC 5V

VCC 5V

1N40

01_L_Motor_Break주행

1N40

01

470p

F

1N40

01

0.5

1N40

01

47uF

모터드라이브-A3935B

Page 21: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 21 -

각 구동 모터의 충분한 전류를 공급해 주고, 모터의 방향 제어를 위하여 모터드라이

브 A3935을 사용하여 모터드라이브와 모터의 회로를 구성 하였다.

ATmega128은 QEP가 내부적으로 구성 되어 있지 않아 엔코더 값을 받기위에 엔코

터 카운터 LS7266을 달아 모터의 엔코더값을 8bit의 데이터로 받아 ATmega128에서

이동 거리를 제어하였다.

LS7266_CS

U3

LS7266R

19

20

5

12

4

6789

1011

1718

15

13

16

14

3

12

21

2223

2425

2726

28

XLCNTR/XLOL

XA

D1

YLCNTR/YLOLFCK

D0

D2D3D4D5D6D7

X/YXRCNTR/XABG

CS

C/D

RD

WR

VDD(+5V)

Vss(GND)

XB

XFLG1XFLG2

YBYA

YFLG1YFLG2

YRCNTR/YABG

EN_5R_EN_A

L_EN_A

EN_2EN_3

LS7266_XY

EN_4

L_EN_BLS7266_WR

LS7266_RD

LS7266_CD

EN_1

EN_6

EN_0

VCC 5V

EN_7

R_EN_B

엔코터카운터-LS7266

구동 바퀴는 일반적인 가정 환경의 문턱이나 장애물의 높이를 10mm로 가정하여

청소 로봇이 충분히 넘어갈 수 있도록 지름 100mm(68.243mm이상)으로 선정 하여

제작하였다.

동력 전달 방식은 기어박스를 제작하여 사용하였다. 기어는 기어비 1/6로 토크를

충분히 높이면서 PPR을 6배로 높혀 780ppr의 분해능으로 좀 더 정확한 거리제어 가

가능하도록 제작하였다.

Page 22: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 22 -

3.2. 센서부 과제 연구 결과

청소로봇의 구동 과정에서 일어나는 모든 연산은 MCU(ATmega128)에서 하게 된다.

10ms마다 PSD 센서 값과 초음파 센서 값을 전송받아 연산하여 구동에 명령을 하게

되며, 엔코더 값을 PC로 전송하여 현재의 위치를 X, Y좌표의 형태로 처리해 MFC를

이용하여 위치를 표현할 수 있다.

PSD_3

PSD_Con_6

123

PSD_Con_4

123

VCC +3.3V

PSD_4

PSD_1

PSD_7

PSD_6

PSD_Con_3

123

PSD_5

PSD_Con_2

123

PSD_Con_7

123

PSD_2

PSD_Con_0

123

PSD_0

PSD_Con_1

123

PSD_Con_5

123

회로도 - PSD센서

VCC

GND

ATtiny2313

1

1213141516171819

20

236789

11

54

10RESET

PB0(AIN0)PB1(AIN1)

PB2PB3(OC1)

PB4PB5(MOS1)PB6(MISO)PB7(SCK)

VCC

PD0(RXD)PD1(TXD)PD2(INT0)PD3(INT1)PD4(T0)PD5(T1)PD6(ICP)

XTAL1XTAL2

GND

SCK

뒷면

SRF-05

12345

VCCEPOUTTPINNCGND

RS232C_TXD

뒷면

SRF-04

12345

VCCEPOUTTPINNCGND

초음파 센서

22pF

SRF05_OUT

SRF04_OUT

RS232C_RXD

22pF

SRF04_INMOSI

RS232C_TXD

SCK

16Mhz

RS232C_Con

1234

VCC

Vcc +3.3V

/RST

RS232C_RXDMISO

VCC

dsPIC_ _x초음파센서

PB7

ISP 커넥터

135

246/RST

MOSIGNDReset

PB6

SRF05_IN

VCC

10k

GND

초음파 센서

Vcc +3.3V

MISO

Output SignalSRF04_IN

VCC

PB5

SRF04_OUT

회로도 - 초음파 모듈(SRF-04, SRF-05)

Page 23: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 23 -

PSD 센서 초음파센서 모듈

Page 24: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 24 -

3.3. 윈도우 프로그래밍 과제 연구 결과

Cleaning Robot의 이동 궤적을 MFC에서 시뮬레이션하게 된다. Encoder 값과 각

방향의 초음파 센서, PSD 센서 값으로 인해 현재의 상황과 거리 값들을 전송받아 연

산하여 x, y 좌표값이 시리얼통신을 거쳐 PC로 수신된다. 그리고 해당하는 좌표를 찍

어 시뮬레이션을 보여준다.

그러기 위해서는 Bluetooth통신 모듈인 ESD110으로 시리얼통신을 하기로 했다.

ESD110의 송신부와 수신부는 Baud Rate 9600bps, Data는 8bits, Parity 0bit,

Stop Bits 1로 각 방향의 초음파와 PSD 데이터와 엔코더 값을 시뮬레이션을 담당하

는 PC에 전송하게 된다.

아래는 ESD110에 대한 Specifiction, 핀 사양 그리고 실제 모듈의 사진이다.

전달되는 것이며, 9600BPS는 1초에 9600개의 비트가 전달된다. 그에 반면 BaudRate

는 1초에 몇 개의 신호가 전달되는가를 나타내는 단위이다.

신호와 비트의 대응은 변복조에 관련된 것으로, 고속 통신을 하고자 하는 경우에는

효율과 정확성이 높은 방법을 택하여 통신을 하게 된다.

Radio Frequency Range 2.402~2.480GHz

Frequency Channel 수 79 channels

Transmission Method FHSS(Frequency Hopping Spread Spectrum)

5.4. Modulation Method GFSK(Gaussian-filtered Frequency Shift Keying)

무선 파워 출력 +18dBm

Receiving Sensitivity -88dBm

Power Supply DC3.3V

ESD-110에 대한 RF 정보

Parani-ESD110의 핀 사양

Page 25: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 25 -

Bluetooth module ESD110

Bluetooth의 송신부과 수신부가 연결이 되고 나면 MFC창이 띄운다. 이것이

Cleaning Robot의 궤적을 그리는 부분이다. 먼저 통신 설정을 한다. 알맞은 PORT와

BAUDRATE를 결정하고 Setting 버튼을 누르면 Cleaning Robot 과 통신을 하게 된

다. 통신이 됨과 즉시 Robot이 구동하게 되면 연산되어 수신되는 값들이 Edit창에 실

시간으로 표현된다. 그와 동시에 Locus창안에 청소구간을 고려하여 궤적을 그리게 된

다. 이 때 가장 중요한 정보는 장애물의 위치이며 센서 값을 받아서 눈금 속에 그려주

게 된다. 이 때 장애물 뿐만 아니라 로봇의 현재 위치와 지나온 경로도 함께 그려주어

청소되지 않은 공간을 알 수 있다.

Page 26: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 26 -

최초에 벽을 따라 주행하는 모드에서 청소로봇이 원래 위치로 돌아왔다는 정보를

얻는데 사용되며, 청소한 경로를 파악하여 같은 경로로 다시 가는 등의 비효율적인 부

분을 개선하려 한다. 주행이 끝난 후에는 맵 정보를 이용하여 청소가 되지 않은 부분

을 찾아 목표점으로 잡고, 최적경로를 설정한 뒤 이동을 하여 청소를 마무리하도록 한

다.

Page 27: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 27 -

3.4. 작품 완성 사진

Page 28: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 28 -

4.1 연구비 사용내역

품 목 수 량 단 가 금 액

셕션모터 2 10,000 20,000

929974-40 외 1 13,050 13,050

GP2Y0A21YK 외 1 145,200 145,200

포멕스(아크릴) 1 17,000 17,000

X-TAL 16M (ATS Type) 외 1 30,020 30,020

베어링 4 700 2,800

알루미늄 1 22,000 22,000

1N4001 외 1 5,007 5,007

기어가공 1 60,500 60,500

알루미늄 가공비 1 11000 11,000

샤프트 1 1,500 1,500

알루미늄 커팅비 1 2,000 2,000

바퀴샤프트 1 4,000 4,000

총 합 계 334,077

Page 29: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 29 -

4.2 연구 결과의 응용 및 활용 방안(기대효과)

경제/산업적 효과

- 시중보다 좀 더 저렴한 가격의 청소로봇 탄생

- 인력 비용 절감

- 허리통증 등 여러 가지 건강문제로 인한 병원비 절감

- 주 5일제, 맞벌이 부부, 독신의 증가 등과 같은 사회변화에 따른 잠재시장의

가능성

- 전업주부를 대상으로 한 시장 기형성

과학/기술적 효과

- 가사도우미 로봇의 발판 마련

- 인간명령에 반응하는 정보통신기술의 발전 (홈 네트워크, 유비쿼터스)

Page 30: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 30 -

4.2 고찰 및 결론

구동부의 문제점은 청소로봇 구동중의 작은 크기의 입자가 흡입되지 않는 경우가

발생하는데 이때 바퀴부에 걸려 순간적으로 공회전 상태가 나타나고 이동거리에 오차

가 발생하게 되었다. 구조적으로 바퀴가 원형이 아닌 톱니형태의 원으로 교체하게 된

다면 이러한 문제점을 해결 할 수 있을 것으로 예상된다. 현재 시판 중인 원형 디자인

의 청소로봇의 구동바퀴는 톱니형태의 원으로 출시되고 있다.

흡입부에 있어서 문제점은 흡입모터 출력과 흡입모터의 전원공급에 예상하지 못했

던 문제가 발생하였다. 흡입모터를 한쌍으로 사용하여 기존 청소로봇보다 출력을 높

였으나 흡입구의 면적이 5mm x 270 mm 임에도 불구하고 구동속도가 일정이상 되면

흡입하지 못하고 지나가 버리는 경우가 발생하였다. 또한 한쌍의 흡입모터를 구동하는

데 정상상태에서 2.5A정도를 소모하여 전원공급에 있어 리튬-폴리머 전지를 사용할

경우 흡입모터의 전원을 따로 주었음에도 불구하고 현재 시판 되는 청소로봇보다 구

동시간이 현저하게 줄어들었다. 이를 개선하기위해 흡입모터를 효율이 좋은 BLDC 모

터로 교체하거나 흡입구의 크기를 줄이고 솔브러쉬를 달아 쓸어담는 효과를 내어 흡

입력을 높이는 방안이 제시 되었다.

센서의 위치 선정에 있어서 많은 고민을 하였지만 현제의 센서 개수로는 사각이 존

재한다. 이를 보안하기위해 적은 센서로 더 넓은 범위를 효과적으로 커버하는 센서의

위치선정이 필요하며 센서의 범위를 나누어 바닥 감지 센싱과 장애물 거리센싱을 동

시에 할 수 있는 방법이 제시 되었다.

구동부에 있어 바퀴와 바닥 사이에 발생한 슬립으로 인한 거리 오차발생 해결하기

위해 Gyro센서와 Accelerometer를 이용하여 슬립으로 인한 엔코더의 카운트를 상쇄

하여 오류를 줄이는 방안이 제시되었다.

청소로봇의 맵핑을 시행할 때 엔코더의 데이터를 PC로 전송하는데 있어서 정확한

테스트가 이루어지지 못했다. 이는 차후에 대회를 준비하면서 보완해 나가야 할 과제

중에서 우선순위로 꼽을 수 있다.

또 여러 가지 모드를 선택할 수 있도록 하여 가정에서 사용하는데 발생할 수 있는

유동적인 장애물을 찾아 피해갈 수 있도록 구현해야 할 것이다.

우리의 Cleaning Robot는 MFC 상에서 단순한 좌표 값을 Edit 창에 나타내고 어떠

한 경로도 보여지지 않고 궤적을 그리게 되어있다. 이것은 실제 로봇의 사용자가 로봇

의 궤적만 알 뿐, 전체적인 청소구역에 대한 자세한 내용을 인식하지 못하게 된다. 이

는 User Interface의 기능을 올바르게 하지 못한다고 할 수 있다. 그에 따라 PC에서

제어가 불가능 하므로 로봇을 따라다니며 전원을 조작하여야 한다.

그래서 우리는 이와 같은 문제점을 개선하기 위한 방법을 생각해보았다.

먼저 U.I. 기능을 더 추가시킬 것이다. 방향키를 따로 만들어 PC에서도 제어가 가

능하도록 할 것이다. 로봇을 제어하면서 각각의 센서들이 어떻게 장애물을 센싱하고

있는지에 대한 센서값을 거리로 연산하여 로봇이 오작동이나 가구나 벽면이 긁힘을

방지할 것이다. 또한 로봇의 동작시간을 알려 밧데리 충전까지 감지하도록 할 것이다.

Page 31: Chapter 1 : 연구 배경2 Chapter 2 : 연구 내용7 Chapter 3 : 연구 결과cfs9.tistory.com/upload_control/download.blog?fhandle=... · 2015-01-22 · 정격 회전수(rpm) Rated

정보제어공학과 Capstone Design 21조

- 31 -

로봇의 주행을 모드별로 설정하여 동작할 수 있도록 할 것이다. 이는 사용자의 편

이에 따른 것인데 예를 들어, 청소구역을 전체적으로 청소할 것인지, 지정된 부분만

청소할 것인지 결정할 수 있도록 한다. 또한 속도조절도 가능하게 해 사용자의 여유시

간에 맞출 것이다.

청소로봇의 궤적을 그릴 때, 지금은 청소로봇의 이동만을 표현하고 있다. 그러나

이는 장애물이 어디에 있는지 알 수 없다. 따라서 웹카메라를 설치해 청소로봇의 한번

주행으로 장애물이 있는 위치를 인식하고 그것을 MFC창에 나타내도록 할 것이다. 그

렇게 된다면 사용자가 청소로봇의 위치를 좀 더 정확히 알 수 있을 것이다.

마지막으로 그저 청소로봇의 기능만이 아닌 엔터테이너의 기능도 추가될 것이다.

예로 MP3를 들 수 있을 것이다.