KR0161043B1 - 로보트의 주행제어방법 - Google Patents
로보트의 주행제어방법 Download PDFInfo
- Publication number
- KR0161043B1 KR0161043B1 KR1019940016778A KR19940016778A KR0161043B1 KR 0161043 B1 KR0161043 B1 KR 0161043B1 KR 1019940016778 A KR1019940016778 A KR 1019940016778A KR 19940016778 A KR19940016778 A KR 19940016778A KR 0161043 B1 KR0161043 B1 KR 0161043B1
- Authority
- KR
- South Korea
- Prior art keywords
- robot
- distance
- navigation sensor
- swing
- separation distance
- Prior art date
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
본 발명은 로보트의 주행제어 방법에 관한 것으로, 로보트의 전방에 설치된 네비게이션센서를 소정각도로 스윙시키면서 로보트의 전방 및 측면에 위치하는 장애물 또는 벽면과의 전방 이격거리를 감지하고, 상기 로보트의 좌우측면에 설치된 각 초음파센서를 통해 상기 로보트의 측면에 위치하는 장매물 또는 벽면과의 측면 이격거리를 감지하여 그에 따라 좌우측주행모터를 구동제어하여 주행하는 로보트의 주행제어 방법에 있어서, 상기 네비게이션센서를 통해 감지되는 전방 이격거리와 설정된 소정거리범위를 비교하여 그에 따라 네비게이션센서의 스윙주기를 간헐적스윙 또는 연속스윙으로 선택하는 스윙주기선택스텝과, 상기 스윙주기선택스텝에서 상기 네비게이션센서가 연속스윙으로 선택되면 상기 네비게이션센서를 설정된 소정각도로 연속스윙시키면서 상기 로보트의 전방 이격거리 및 상기 로보트의 전면측으로부터의 측면 이격거리를 감지하고, 상기 각 초음파 센서를 통해 상기 로보트의 좌우후면측으로부터의 측면 이격거리를 감지하는 제1거리감지스텝과, 상기 스윙주기선택스텝에서 상기 네비게이션센서가 간헐 스윙으로 선택되면 설정된 소정시간 주기로 상기 네비게이션센서를 간헐스윙시키면서 상기 로보트의 전방 이격거리 및 상기 로보트의 전면측으로부터의 측면 이격거리를 감지하고, 상기 각 초음파센서를 통해 상기 로보트의 좌우후면측으로부터의 측면 이격거리를 감지하는 제2거리감지스텝 및 상기 제1 및 제2거리 감지스템에서 감지된 각 이격거리에 따라 상기 좌우측주행모터의 구동을 제어하는 상기 로보트을 벽면주행시키는 주행제어스텝으로 이루어져, 로보트의 전방 이격거리에 따라 네비게이션센서가 간헐적 또는 연속적으로 선택구동되어 로보트의 벽면주행시에 전방에 위치하는 장애물 또는 전방측 벽면에 신속정확하게 대처할 수 있을 뿐만 아니라, 네비게이션센서의 간헐적 또는 연속스윙시에 각 센서를 교번적으로 구동시킴으로써, 장애물 또는 벽면에 의해 반사되어 수신되는 반사파들 간의 간섭을 제거하여 로보트와 장애물 또는 벽면과의 이격거리를 정확하게 감지할 수 있도록 한 것이다.
Description
본 발명은 학습된 경로를 주행하면서 작업을 수행하는 자주식 로보트에 관한 것으로, 특히 주행시에 로보트의 전방에 위치한 장애물 또는 벽면을 감지하는 네비게이션센서와, 로보트의 측면에 위치한 장애물 또는 벽면을 감지한느 초음파센서의 구동을 효율적으로 제어하도록 한 로보트의 주행제어 방법에 관한 것이다.
일반적인 로보트의 주행제어 방법은 동일출원인에 의해 대한민국 특허청에 1994년 3월 31일에 선출원된 제94-6852호가 있다.
상기한 자주식로보트는 제1도에 도시한 바와같이, 로보트본체(1:이하, 로보트라 한다)와, 로보트(1)의 전면에 설치되어 초음파를 방사하고 방사된 초음파가 장애물 또는 벽면에 반사되는 반사파를 수신하여 로보트(1)의 전방에 위치하는 장애물유무를 감지함과 동시에, 로보트(1)의 벽면(Ws) 주행시에 로보트(1)의 전면측과 벽면(Ws)간의 이격거리(d1)를 감지하도록 소정각도(바람직하게는, 180°)로 왕복스윙하는 네비게인션 초음파센서(411 : 이하, 네비게이션센서라 한다)와, 로보트(1)의 좌측후면에 설치되어 초음파를 방사하고, 방사된 초음파가 로보트(1)의 좌측에 위치하는 벽면(Ws)에 부딪쳐 반사되는 반사파를 수신하여 로보트(1)의 좌측후면과 벽면(Ws)간의 이격거리(d5)를 감지하도록 고정된 초음파센서(421:이하, 초음파센서라 한다)로 구성된다.
상기와 같이 구성된 자주식로보트의 벽면주행 동작과정을 살펴보면, 로보트(1)의 주행시에 설정된 소정시간(바람직하게는, 5초 정도) 주기로 간헐적으로 소정각도(180°)로 왕복스윙되는 네비게이션센서(411)를 통해 초음파가 방사되고, 방사된 초음파가 로보트(1)의 전방 또는 측면에 위치하는 장애물 또는 벽면(Ws)에 반사되어 다시 네비게이션센서(411)로 수신된다.
여기에서, 180°도는 네비게이션센서(411)가 설치된 로보트(1)의 전방측의 방향을 말하는 것으로, 로보트(1)의 좌측이 0°, 로보트(1)의 정면측이 90°, 로보트(1)의 우측이 180°이다.
한편, 네비게이션센서(411)가 로보트(1)의 좌측(0°)에 위치된 상태에서, 네비게이션센서(411)로부터 방사된 초음파가 벽면(Ws)에 반사되어 그 반사파가 네비게이션센서(411)로 다시 수신됨으로써, 로보트(1)의 전면측과 벽면(Ws)간의 이격거리(d1)가 감지된다.
이 때, 로보트(1)의 좌측후면에 설치된 초음파센서(421)로부터 방사된 초음파가 벽면(Ws)에 반사되어 그 반사파가 초음파센서(421)로 다시 수신됨으로써, 로보트(1)의 좌측후면과 벽면(Ws)간의 이격거리(d5)가 감지된다.
따라서, 네비게이션센서(411)를 통해 감지된 로보트(1)의 전면측과 벽면(Ws)간의 이격거리(d1)와, 초음파센서(421)를 통해 감지된 로보트(1)의 좌측후면과 벽면(Ws)간의 이격거리(d5)에 의해, 로보트(1)와 벽면(Ws)간의 평균이격거리(da) 및 로보트(1)와 벽면(Ws)간의 틀어짐정도(A)가 산출되는데, 이는 하기 수학식 1과 수학식 2에 의해 산출된다.
상기 수학식 1, 2에서 d6은 로보트(1)의 중심선으로부터 로보트(1)의 외벽까지의 거리를 나타낸다.
따라서, 로보트(1)는 상기 수학식 1에 의해 산출된 평균이격거리(da)에 의해 벽면(Ws)으로부터 가까운 위치에 있는지, 멀리 떨어진 위치에 있는지 또는 소정의 이격거리를 유지하고 있는지를 판별하는 한편, 상기 수학식2에 의해 산출된 틀어짐정도(A)에 따라 제1a도에 도시된 바와 같이, 로보트(1)가 벽면(Ws)측으로 주행하고 있는지, 제1b도에 도시된 바와 같이, 로보트(1)가 벽면(Ws)의 반대측으로 주행하고 있는지, 또는 로보트(1)가 벽면(Ws)과 평행하게 주행하고 있는지 판별한다.
그리고, 상기와 같은 판별결과에 따라, 로보트(1)는 좌측주행모터와 우측주행모터를 통해 좌측동력바퀴 또는 우측동력바퀴를 선택적으로 구동시킴으로써, 벽면(Ws)으로부터 소정의 이격거리를 두고 벽면(Ws)과 평행을 유지하면서 벽면을 따라 주행할수 있도록 제어한다.
한편, 로보트(1)의 진행중에 네비게이션센서(411)는 설정된 소정시간(바람직하게는, 5초 정도)주기로 180° 왕복스윙됨으로써, 네비게이션센서(411)를 통해 로보트(1)의 전방 또는 측면에 위치하는 장애물이 감지되고, 이에 따라 로보트(1)는 좌측주행모터와 우측주행모터를 통해 좌측동력바퀴 또는 우측동력바퀴를 선택적으로 구동시킴으로써, 자주적으로 주행하게 된다.
그러나, 상기한 바와 같은 종래의 로보트 주행제어 방법은 로보트의 전방에 위치한 장애물 또는 벽면과의 이격거리에 관계없이 네비게이션센서가 설정된 소정시간(5초 정도)주기로 180° 왕복스윙하면서 로보트의 전방 또는 측면에 위치하는 장애물을 감지하기 때문에, 로보트의 이동 중에 전방에 위치하는 장애물에 대한 대처능력이 떨어질 뿐만 아니라, 네비게이션센서와 초음파센서로부터 각각 방사되어 장애물 또는 벽면에 반사된 반사파들이 서로 간섭을 일으키기 때문에 로보트의 전방 및 측면에 위치하는 장애물과 벽면의 이격거리를 정확하게 감지하기 어려운 문제점이 있다.
따라서, 본 발명은 상기와 같은 종래기술의 문제점을 해결하기 위하여 안출된 것으로, 로보트의 주행시에 로보트의 현재위치와 전방에 위치하는 장애물과의 이격거리에 따라 네비게이션센서를 간헐적 또는 연속적으로 스윙시킴으로써 로보트의 전방에 위치하는 장애물에 대한 대처능력의 향상은 물론, 네비게이션센서의 스윙시에 네비게이션센서와 초음파센서를 교번적으로 구동시켜 장애물 또는 벽면에 반사되는 신호의 간섭을 방지함으로써 반사된 로보트과 장애물 또는 벽면간의 이격거리를 정확하게 감지할 수 있는 로보트의 주행제어 방법을 제공하는데에 그 목적이 있다.
상기 목적을 달성하기 위하여 본 발명에 따른 로보트의 주행제어 방법은, 로보트의 전방에 설치된 네비게이션센서를 소정각도로 스윙시키면서 로보트의 전방 및 측면에 위치하는 장애물 또는 벽면과의 전방 이격거리를 감지하고, 상기 로보트의 좌우측면에 설치된 각 초음파센서를 통해 상기 로보트의 측면에 위치하는 장애물 또는 벽면과의 측면 이격거리를 감지하여 그에 따라 좌우측주행모터를 구동제어하여 주행하는 로보트의 주행제어 방법에 있어서, 상기 네비게이션센서를 통해 감지되는 전방 이격거리와 설정된 소정거리범위를 비교하여 그에 따라 네비게이션센서의 스윙주기를 간헐적스윙 또는 연속스윙으로 선택하는 스윙주기 선택스텝과, 상기 스윙주기선택 스텝에서 상기 네비게이션센서가 연속스윙으로 선택되면 상기 네비게이션센서를 설정된 소정각도로 연속 스윙시키면서 상기 로보트의 전방 이격거리 및 상기 로보트의 전면측으로부터의 측면 이격거리를 감지하고, 상기 각 초음파센서를 통해 상기 로보트의 좌우후면측으로부터의 측면 이격거리를 감지하는 제1거리감지스텝과, 상기 스윙주기선택스텝에서 상기 네비게이션센서가 간헐스윙으로 선택되면 설정된 소정시간 주기로 상기 네비게이션센서를 간헐스윙시키면서 상기 로보트의 전방 이격거리 및 상기 로보트의 전면측으로부터의 측면 이격거리를 감지하고, 상기 각 초음파센서를 통해 상기 로보트의 좌우 후면측으로부터의 측면 이격거리를 감지하는 제2거리감지스텝 및 상기 제1 및 제2거리감지스텝에서 감지된 각 이격거리에 따라 상기 좌우측주행모터의 구동을 제어하여 상기 로보트를 벽면주행시키는 주행제어스텝으로 이루어진 것을 특징으로 한다.
제1도는 종래의 통상적인 로보트이 벽면을 주행하는 것을 설명하기 위한 도면.
제2도는 본 발명에 따른 로보트의 내부구조를 설명하기 위한 도면.
제3도는 본 발명에 따른 로보트의 주행제어 방법을 수행하기 위한 하드웨어의 개략적인 블록구성도.
제4도는 본 발명의 바람직한 실시예에 따라 로보트의 주행을 제어하는 동작과정을 설명하기 위한 플로우챠트.
제5도는 본 발명에 따라 로보트가 벽면을 주행하는 것을 설명하기 위한 도면.
* 도면의 주요부분에 대한 부호의 설명
1 : 로보트 10 : 구동수단
11 : 좌측모터구동부 12 : 우측모터구동부
20 : 주행거리검출수단 21 : 좌측엔코더
22 : 우측엔코더 30 : 방향각검출수단
40 : 장애물감지수단 41 : 네비게이션센서
421, 431 : 초음파센서 50 : 제어수단
60 : 메모리수단
이하, 본 발명의 바람직한 실시예에 대하여 첨부된 도면을 참조하여 상세하게 설명하기로 한다.
제2도는 본 발명에 따른 로보트의 내부구성을 설명하기 위한 도면으로서, 로보트(1)의 전면부에는 초음파를 방사하고, 방사된 초음파가 장애물 또는 벽면에 의해 반사되는 반사파를 수신하여 장애물 또는 벽면과의 이격거리를 감지하는 네이게이션센서(411)가 설치되는데, 이 네이게시션센서(411)는 모터 등의 구동에 의해 소정각도(바람직하게는 180°)로 왕복스윙하면서 로보트(1)의 전방과 ㅌ측면에 위치하는 장애물 또는 벽면과 로보트(1)의 이격거리를 감지한다.
그리고, 로보트(1)의 좌우측후면에는 로보트(1)의 측면에 위치하는 장애물 또는 벽면과 로보트(1)간의 이격거리를 감지하는 초음파센서(421, 431)가 고정설치되어 있고, 로보트(1)의 내부에는 로보트(1)를 전후좌우로 이동시키기 위해 구동력을 발생하는 좌우측주행모터(111, 121)가 설치되어 있다. 한편, 상기 좌우측주행모터(111, 121)에는 좌우측동력바퀴(111a, 121a)가 각각 설치되어 있다.
또한, 로보트(1)의 중앙후면에는 로보트(1)의 주행을 용히하도록 함은 물론, 로보트(1)의 하중을 지지하도록 무동력바퀴(131)가 설치되는데, 이러한 무동력바퀴(131)는 로보트(1)의 주행경로를 용이하게 변경하도록 360°회전이 가능한 것이 바람직하다.
한편, 제3도는 본 발명에 따른 로보트의 주행제어 방법을 수행하기 위한 하드웨어의 개략적인 블록구성도로서, 구동수단(10), 주행거리검출수단(20), 방향각검출수단(30), 장애물감지수단(40), 제어수단(50) 및 메모리수단(60)으로 구성된다.
제3도에 있어서, 구동수단(10)은 로보트(1)의 이동을 제어하는 것으로서, 로보트(1)의 우측으로 이동시키기 위해 좌측주행모터(111)를 구동하는 좌측모터구동부(11)와, 로보트(1)를 좌측으로 이동시키기 위해 우측주행모터(121)를 구동하는 우측모터구동부(12)로 구성된다.
그리고, 주행거리검출수단(20)은 구동수단(10)에 의해 이동되는 로보트(1)의 주행거리를 검출하는 것으로서, 좌측모터구동부(11)의 구동에 의해 회전구동되는 좌측동력바퀴(111a)의 회전수에 상응하는 펄스신호를 발행하여 로보트(1)가 우측으로 이동한 주행거리를 검출하는 좌측엔코더(21)와, 우측모터구동부(12)의 구동에 의해 회전구동되는 우축동력바퀴(121a)의 회전수에 상응하는 펄스신호를 발생하여 로보트(1)가 좌측으로 이동한 주행거리를 검출하는 우측엔코더(22)로 구성된다.
또한, 방향각검출단(30)은 구동수단(10)에 의해 이동되는 로보트(1)의 주행방향변화를 검출하는 것으로서, 로보트(1)의 회전시에 전압레벨의 변화에 따라 로보트(1)의 회전각속도를 감지하여 로보트(1)의 주행방향변화를 검출하는데, 통상적으로 자이로센서 등의 방향각센서가 사용된다.
상기 장애물감지수단(40)은 구동수단(10)에 의해 이동되는 로보트(1)의 전방 및 측면에 위치하는 장애물과 로보트(1)간의 이격거리를 감지하는 것으로서, 로보트(1)의 전방에 위치하는 장애물 또는 벽면과 로보트(1)간의 이격거리를 감지하는 제1장애물감지부(41)와, 로보트(1)의 좌측에 위치하는 장애물 또는 벽면과 로보트(1)간의 이격거리를 감지하는 제2장애물감지부(42)와, 로보트(1)의 우측에 위치하는 장애물 또는 벽면과 로보트(1)간의 이격거리를 감지하는 제3장애물감지부(43)로 구성된다.
여기에서, 제1장애물감지부(41)는 상기한 바 있는 네비게이션센서(411)와, 네비게이션센서(411)를 통해 수신되는 반사파를 설정된 소정레벨로 증폭하는 제1증폭기(412)와, 제1증폭기(412)를 통해 증폭된 신호에 포함되어 있는 노이즈 성분을 필터링하는 제1필터부(413)와, 네비게이션센서(411)로부터 초음파가 방사되도록 50㎐의 구형파를 출력하는 제1센서구동부(414)와, 네비게이션센서(411)를 180°로 왕복스윙시키기 위해 스텝핑모터(416)를 구동하는 스텝핑모터구동부(415)로 구성된다.
그리고, 제2장애물감지부(42)는 로보트(1)의 좌측후면에 설치된 초음파센서(421)와, 초음파센서(421)를 통해 수시된 반사파를 설정된 소정레벨로 증폭하는 제2증폭기(422)와, 제2증폭기(422)를 통해 증폭된 신호에 포함되어 있는 노이즈성분을 필터링하는 제2필터부(423)와, 초음파센서(421)로부터 초음파가 방사되도록 50㎐의 구형파를 출력하는 제2센서구동부(424)로 구성된다.
또한, 제3장애물감지부(43)는 로보트(1)의 우측후면에 설치된 초음파센서(431)와, 초음파센서(431)를 통해 수신된 반사파를 설정된 소정레벨로 증폭하는 제3증폭기(432)와, 제3증폭기(432)를 통해 증폭된 신호에 포함되어 있는 노이즈 성분을 필터링하는 제3필터부(433)와, 초음파센서(431)로부터 초음파가 방사되도록 50㎐의 구형파를 출력하는 제3센서구동부(434)로 구성된다.
제3도에 있어서, 제어수단(50)은 주행거리검출수단(20)에 의해 검출된 로보트(1)의 주행거리와 방향각검출수단(30)에 의해 검출된 로보트(1)의 주행방향을 소정시간 간격으로 입력받아 좌우측주행모터(111, 121)를 구동제어하여 로보트(1)를 주행시키기 위한 제어신호를 발생하는 한편, 네비게이션센서(411)를 통해 감지된 로보트(1)의 전방에 위치한 장애물 또는 벽면과 로보트(1)간의 이격거리와 설정된 소정거리범위(바람직하게는, 40㎝-1m 정도)를 비교하여 그에 따라 네비게이션센서(411)를 간헐적 또는 연속적으로 스윙시키기 위해 스텝핑모터(416)를 구동시키기 위한 제어신호를 발생한다.
여기에서, 제어수단(50) 내에 설정된 소정거리범위(40㎝-1m 정도)에서 상한거리(1m 정도)는 네비게이션센서(411)를 간헐적 또는 연속적으로 스윙시킬것인지를 판단하기 위한 거리이고, 하한거리(40㎝)는 로보트(1)의 전방에 갑작스런 장애물 또는 벽면(Ws)의 출현에 따라 로보트(1)의 방향을 전환시키는 것을 판단하기 위한 거리이다.
또한, 제어수단(50)은 네비게이션센서(411)로부터 방사되는 초음파와, 로보트(1)의 좌우후면측에 설치된 초음파센서(421, 431)로부터 각각 방사된 초음파들이 장애물 또는 벽면에 반사되어 그 반사파들이 서로 간섭을 일으키는 것을 방지하기 위해 각 센서구동부(414, 424, 434)를 교번적으로 구동시키기 위한 제어신호를 발생한다.
그리고, 메모리수단(60)은 제어수단(50)에 내장된 메모리로서, 로보트(1)를 전체적으로 제어하기 위한 프로그램 및 설정된 초기값들을 저장하는 것으로, 버퍼(61)를 통해 메모리의 용량이 확장가능하다.
상기한 바와 같이 구성된 하드웨어를 통해 본 발명에 따른 로보트의 주행제어 방법의 동작과정에 대하여 제2도 내지 제5도를 참조하여 상세하게 설명하기로 한다.
제4도는 본 발명의 바람직한 실시예에 따라 로보트의 주행을 제어하는 동작과정을 설명하기 위한 플로우챠트로서, S는 스텝(Step)을 각각 표시한다.
먼저, 사용자가 로보트(1)의 소정위치에 구비된 동작스위치를 온시키면, 도시생략된 전원수단으로부터 직류전압이 공급되고, 제어수단(50)으로부터의 제어신호에 의해 로보트(1)는 주행작업기능에 맞게 초기화된 다음(스텝 S1), 사용자가 입력한 작동명령에 따라 제어수단(50)으로부터의 제어신호에 의해 구동수단(10)을 통해 좌측주행모터(111)와 우측주행모터(121)가 구동됨으로써, 로보트(1)가 벽면주행을 시작한다(스텝 S2).
이때, 좌측엔코더(21)를 통해 좌측주행모터(111)의 구동에 의해 회전구동되는 좌측동력바퀴(111a)의 회전수에 상응하는 펄스신호가 제어수단(50)으로 입력됨과 동시에, 우측엔코더(22)를 통해 우측주행모터(121)의 구동에 의해 회전구동되는 우축동력바퀴(121a)의 회전수에 상응하는 펄스신호가 제어수단(50)으로 입력되고, 제어수단(50)은 좌우측엔코더(21, 22)으로부터 입력되는 펄스신호에 의해 로보트(1)가 이동한 주행거리를 산출한다.
그리고, 로보트(1)의 주행중에, 방향각검출수단(30)을 통해 좌우축주행모터(111, 121)의 구동에 따른 좌우측동력바퀴(111a, 121a)의 회전각속도가 감지되어 제어수단(50)으로 입력되고, 제어수단(50)은 상기 방향각검출수단(30)을 통해 감지된 회전각속도를 시간에 대해 적분하여 로보트(1)의 주행방향변화를 검출한다.
그 다음, 제어수단(50)은 주행거리검출수단(20)을 통해 산출된 주행거리와 방향각검출수단(30)을 통해 검출된 주행방향변화에 따라 좌우측주행모터(111, 121)를 구동제어하기 위한 제어신호를 발생하고, 제어수단(50)으로부터의 제어신호에 의해 좌우측주행모터(111, 121)를 통해 좌우측동력바퀴(111a, 121b)가 회전 구동됨으로써, 로보트(1)가 정상궤도를 이탈하지 않고, 벽면(Ws)을 따라 목표지점까지 정확하게 주행된다.
한편, 로보트(1)의 주행중에 제어수단(50)으로부터의 제어신호에 의해 스텝핑모터구동부(415)를 통해 스텝핑모터(416)가 구동되어 네비게이션센서(411)는 로보트(1)의 전방측으로 향하게 되고, 이 때 제어수단(50)으로부터의 제어신호에 의해 제1센서구동부(414)로부터 50㎐의 구형파가 출력되어 네비게이션센서(411)로부터 초음파가 방사된다.
그리고, 네비게이션센서(411)로부터 방사된 초음파가 로보트(1)의 전방에 위치한 벽면(Ws)에 반사되어 그 반사파가 네비게이션센서(411)를 통해 수신되고, 제1증폭기(412)를 통해 설정된 소정레벨로 증폭된 다음, 증폭된 신호에 포함되어 있는 노이즈성분이 제1필터부(413)를 통해 필터링되어 제어수단(50)으로 입력된다.
따라서, 제어수단(50)은 제1필터부(413)로부터 입력되는 신호에 의해 로보트(1)의 전방에 위치한 벽면(Ws)과 로보트(1)간의 이격거리(d3)를 산출한 다음(스텝 S3), 산출된 로보트(1)의 전방 이격거리(d3)와 미리 설정된 소정거리범위 중의 상한거리(ds, 네비게이션센서(411)를 간헐적 또는 연속적으로 스윙시킬건지를 판단하기 위한 거리로서, 바람직하게 1m정도임)를 비교한다(스텝 S4).
상기 스텝(S4)에서의 비교결과, 로보트(1)의 전방 이격거리(d3)가 설정된 상한거리(ds=1m 정도)미만이면, 제어수단(50)은 로보트(1)가 전방에 위치한 벽면(Ws)으로부터의 가까운 상태로 판단하고, 로보트(1)의 전방 이격거리(d3)와 미리 설정된 하한거리(dm=40㎝ 정도임)를 비교한다(스텝 S5).
상기 스텝(S5)에서의 비교결과, 로보트(1)의 전방 이격거리(d3)가 설정된 소정거리범위 중의 하한거리(dm)보다 크면, 제어수단(50)은 로보트(1)의 전방에 장애물 또는 벽면(Ws)이 갑자기 나타나지는 않았지만 로보트(1)가 전방에 위치한 벽면(Ws)으로부터 가까운 상태로 판단하여, 네비게이션센서(411)를 연속적으로 스윙시키기 위한 제어신호를 발생하고, 제어수단(50)으로부터의 제어신호에 의해 스텝핑모터구동부(415)를 통해 스텝핑모터(416)가 연속구동되어 네비게이션센서(411)가 연속적으로 180°왕복스윙된다(스텝 S6).
따라서, 네비게이션센서(411)가 연속적으로 왕복스윙되면서 로보트(1)의 전방에 위치한 벽면(Ws)과 로보트(1)간의 이격거리(d3)가 빠르게 감지되어 제어수단(50)으로 입력됨으로써, 제어수단(50)은 전방에 위치하는 벽면(Ws)에 대해 좌우측모터구동부(11, 12)를 신속정확하게 제어할 수 있어, 로보트(1)의 전방에 위치하는 장애물 또는 벽면(Ws)에 대한 대처능력을 향상시킬수 있게 되는 것이다.
한편, 상기 스텝(S6)에서 네비게이션센서(411)가 연속적으로 180° 왕복스윙되는 중에, 제어수단(50)은 네비게이션센서(411)와 로보트(1)의 좌우측후면에 각각 설치된 초음파센서(421, 431)로부터 방사되어 장애물 또는 벽면에 반사되는 반사파들이 서로 간섭을 일으키는 것을 방지하기 위해 초음파를 교번적으로 방사시키기 위한 제어신호를 발생하고, 제어수단(50)으로부터의 제어신호에 의해 제1센서구동부(414), 제2센서구동부(424), 제3센서구동부(434)가 교번적으로 구동된다.
따라서, 네비게이션센서(411)와 로보트(1)의 좌우측후면에 각각 설치된 초음파센서(421, 431)로부터 초음파가 교번적으로 방사됨으로써(스텝 S7, S8, S9, S10), 반사파들 간의 간섭이 발생되지 않으므로, 각 센서(411, 421, 431)로부터 방사되어 장애물 또는 벽면에 반사되는 반사파를 다른 반사파와의 간섭없이 수신할 수 있고, 이에 따라 로보트(1)의 전방과 측면에서 장애물 또는 벽면(Ws)과 로보트(1)의 이격거리(d1, d2, d3, d4)를 정확하게 감지할 수 있는 것이다.
다음에, 제어수단(50)은 연속적으로 스윙되는 네비게이션센서(411)를 통해 감지되는 로보트(1)의 전방 이격거리(d1)와 초음파센서(421)를 통해 감지되는 이격거리(d2)를 이용하여 로보트(1)와 벽면(Ws)간의 평균이격거리(da)를 산출하고(상기 수학식 1참조), 이를 이용하여 제어수단(50)은 좌측주행모터(111) 또는 우축주행모터(121)의 구동을 제어하기 위한 제어신호를 발생한다.
따라서, 제어수단(50)으로부터의 제어신호에 의해 좌측모터구동부(11)와 우측모터구동부(12)를 통해 좌측주행모터(111)와 우측주행모터(121)의 회전구동이 제어되어 좌측동력바퀴(111a) 및 우측동력바퀴(121a)가 회전됨으로써, 로보트(1)가 벽면(Ws)으로부터 평균이격거리(da)를 유지하면서 주행된다.
이 때, 제어수단(50)은 연속적으로 스윙되는 네비게이션센서(411)를 통해 감지되는 이격거리(d1)와 초음파센서(421)를 통해 감지되는 이격거리(d2) 및, 미리 설정된 로보트(1)의 중심선으로부터 로보트(1)의 외벽까지의 거리(d6)를 이용하여 로보트(1)의 정면주행선에서 틀어짐정도(A)를 산출하고(상기 수학식 2 참조), 산출된 틀러짐정도(A)에 따라 좌측주행모터(111) 또는 우측주행모터(121)의 구동을 제어하기 위한 제어신호를 발생한다.
따라서, 제어수단(50)으로부터의 제어신호에 의해 좌측모터구동부(11)와 우측모터구동부(12)를 통해 좌측주행모터(111)와 우측주행모터(121)의 회전구동이 제어되어 좌측동력바퀴(111a) 및 우측동력바퀴(121a)가 회전됨으로써, 로보트(1)는 벽면(Ws)을 따라 정면주행된다(스텝 S11).
그 다음, 제어수단(50)은 로보트(1)가 벽면주행을 완료했는가를 판단하여(스텝 S12), 로보트(1)가 벽면주행을 완료하지 않은 경우 상기 스텝(S3)로 되돌아가 상기 각 스텝(S4 내지 S12)를 반복수행하고, 로보트(1)가 벽면(Ws)주행을 완료한 경우 로보트(1)의 벽면주행을 정지하면서 동작을 완료한다.
한편, 상기 스텝(S4)에서의 비교결과, 네비게이션센서(411)를 통해 감지된 로보트(1)의 전방 이격거리(d3)가 설정된 상한거리(ds=1m 정도) 이상이면, 제어수단(50)은 로보트(1)가 전방에 위치한 벽면(Ws)으로부터 멀리 떨어진 상태로 판단하여 네비게이션센서(411)를 간헐적으로 스윙시키기 위한 제어신호를 발생하고, 제어수단(50)으로부터의 제어신호에 의해 스텝핑모터구동부(415)를 통해 스텝핑모터(416)가 간헐적으로 구동되어 네비게이션센서(411)가 간헐적으로 180°왕복스윙된다.
즉, 제어수단(50)은 시간을 계수하여 계수된 시간과 설정된 소정시간(바람직하게는, 5초 정도)을 비교하고(스텝 S42), 스텝(S42)에서의 비교결과 계수된 시간이 설정된 소정시간(5초 정도)을 초과하면 상기 스텝(S7)로 진행하여 스텝(S8 내지 S12)을 수행한다.
한편, 상기 스텝(S42)에서의 비교결과, 계수된 시간이 설정된 소정시간(5초 정도)을 초과하지 않으면, 제어수단(50)은 벽면주행을 위해 네비게이션센서(411)를 로보트(1)의 좌측으로 고정시키기 위한 제어신호를 발생하고, 제어수단(50)으로부터의 제어신호에 의해 스텝핑모터구동부(415)를 통해 스텝핑모터(416)가 구동되어 네비게이션센서(411)가 로보트(1)의 좌측으로 고정된다.
그 다음, 제어수단(50)으로부터의 제어신호에 의해 제1센서구동부(414)로부터 50㎐의 구형파가 출력되어 로보트(1)의 좌측으로 고정된 네비게이션센서(411)로부터 초음파가 방사되고, 네비게이션센서(411)로부터 방사된 초음파가 로보트(1)의 좌측에 위치한 벽면(Ws)에 반사된 다음, 그 반사파가 네비게이션센서(411)를 통해 수신된다.
그리고, 수신된 반사파가 제1증폭기(412)를 통해 설정된 소정레벨로 증폭된 다음, 증폭된 신호에 포함되어 있는 노이즈성분이 제1필터부(413)를 통해 필터링되어 제어수단(50)으로 입력되고, 제어수단(50)은 제1필터부(413)로부터 입력되는 신호에 의해 로보트(1)의 좌측에 위치한 벽면(Ws)과 로보트(1)의 좌면측간의 이격거리(d1)를 산출한다(스텝 S43).
또한, 제어수단(50)으로부터의 제어신호에 의해 제2센서구동부(424)로부터 50㎐의 구형파가 출력되어 로보트(1)의 좌측후면에 설치된 초음파센서(421)로부터 초음파가 방사되고, 초음파센서(421)로부터 방사된 초음파가 로보트(1)의 좌측에 위치한 벽면(Ws)에 반사된 다음, 그 반사파가 초음파센서(421)를 통해 수신된다.
그 다음, 수신된 반사파가 제2증폭기(422)를 통해 설정된 소정레벨로 증폭된 다음, 증폭된 신호에 포함되어 있는 노이즈성분이 제2필터부(423)를 통해 필터링되어 제어수단(50)으로 입력되고, 제어수단(50)은 제2필터부(423)로부터 입력되는 신호에 의해 로보트(1)의 좌측에 위치한 벽면(Ws)과 로보트(1)의 좌측 후면측 간의 이격거리(d2)를 산출한다(스텝 S44).
또한, 제어수단(50)으로부터의 제어신호에 의해 제3센서구동부(434)로부터 50㎐의 구형파가 출력되어 로보트(1)의 우측후면에 설치된 초음파센서(431)로부터 초음파가 방사되고, 초음파센서(431)로부터 방사된 초음파가 로보트(1)의 우측에 위치한 장애물 또는 벽면에 반사된 다음, 그 반사파가 초음파센서(431)를 통해 수신된다.
그 다음, 수신된 반사파가 제3증폭기(432)를 통해 설정된 소정레벨로 증폭된 다음, 증폭된 신호에 포함되어 있는 노이즈성분이 제3필터부(433)를 통해 필터링되어 제어수단(50)으로 입력되고, 제어수단(50)을 제3필터부(433)로부터 입력되는 신호에 의해 로보트(1)의 우측에 위치한 장애물 또는 벽면과 로보트(1)의 우측후면측 간의 이격거리(d4)를 산출한다.
여기에서, 로보트(1)의 우측후면과 로보트(1)의 우측에 위치한 장애물 또는 벽면 간의 이격거리(d4)는 로보트(1)의 주행중에 로보트(1)의 우측에 위치하는 장애물에 영향을 받아 주행경로를 변경하거나, 또는 로보트(1)가 우측벽면을 따라 주행하는 경우에 로보트(1)의 벽면주행을 제어하기 위한 것이다.
본 발명의 실시예에서는 로보트(1)의 벽면주행에 있어서, 로보트(1)의 좌측에 위치하는 벽면을 따라 주행하는 것에 대하여 주로 설명하고 있지만, 로보트(1)가 우측에 위치한 벽면을 따라 벽면주행하는 동작과정은 로보트(1)가 좌측에 위치한 벽면을 따라 벽면주행하는 동작과정과 실질적으로 동일한 동작과정을 거치므로 중복된 기재를 피하기 위해 생략하기로 한다.
한편, 제어수단(50)은 상기 스텝(S43, S44)에서 산출된 이격거리(d1, d2)에 따라 상기 스텝(S11)로 진행되어 로보트(1)와 벽면(Ws)간의 평균이격러리(da) 및 틀어짐정도(A)를 산출하고, 이를 이용하여 제어수단(50)은 좌측주행모터(111) 또는 우측주행모터(121)의 구동을 제어하기 위한 제어신호를 발생한다.
따라서, 제어수단(50)으로부터의 제어신호에 의해 좌측모터구동부(11)와 우측모터구동부(12)를 통해 좌측주행모터(111)와 우측주행모터(121)의 회전구동이 제어되어 좌측동력바퀴(111a) 및 우측동력바퀴(121a)가 회전됨으로써, 로보트(1)가 벽면(Ws)으로부터 평균이격거리(da)를 유지하면서 정면방향으로 주행된다.
다른 한편, 상기 스텝(S5)에서의 비교결과, 네비게이션센서(411)를 통해 감지된 로보트(1)의 전방 이격거리(d3)가 하한거리(dm) 이하이면, 제어수단(50)은 로보트(1)의 전방측에 장애물이 갑자기 나타나거나 벽면(Ws)이 가까이 있는 것으로 판단하여 로보트(1)의 방향을 전환하기 위한 제어신호를 발생하고, 제어수단(50)으로부터의 제어신호에 의해 좌우측모터구동부(11, 12)를 통해 좌우측주행모터(111, 121)이 선택적으로 구동되어 로보트(1)가 방향전환된 다음 상기 스텝(S12)로 진행된다.
따라서, 본 발명을 이용하면, 로보트의 전방 이격거리에 따라 네비게이션센서가 간헐적 또는 연속적으로 선택구동되어 로보트의 벽면주행시에 전방에 위치하는 장애물 또는 전방측 벽면에 신속정확하게 대처할 수 있을 뿐만 아니라, 네비게이션센서의 간헐적 또는 연속스윙시에 각 센서를 교번적으로 구동시킴으로써, 장애물 또는 벽면에 의해 반사되어 수신되는 반사파들 간의 간섭을 제거하여 로보트과 장애물 또는 벽면과의 이격거리를 정확하게 감지할 수 있는 효과가 있다.
Claims (6)
- 로보트의 전방에 설치된 네비게이션센서를 소정각도로 스윙시키면서 로보트의 전방 및 측면에 위치하는 장애물 또는 벽면과의 전방 이격거리를 감지하고, 상기 로보트의 좌우측면에 설치된 각 초음파센서를 통해 상기 로보트의 측면에 위치하는 장애물 또는 벽면과의 측면 이격거리를 감지하여 그에 따라 좌우측주행 모터를 구동제어하여 주행하는 로보트의 주행제어방법에 있어서, 상기 네비게이션센서를 통해 감지되는 전방 이격거리와 설정된 소정거리 범위를 비교하여 그에 따라 네비게이션센서의 스윙주기를 간헐적스윙 또는 연속스윙으로 선택하는 스윙주기선택스텝과, 상기 스윙주기선택스텝에서 상기 네비게이션센서가 연속스윙으로 선택되면 상기 네비게이션센서를 설정된 소정각도로 연속스윙시키면서 상기 로보트의 전방 이격거리 및 상기 로보트의 전면측으로부터의 측면 이격거리를 감지하고, 상기 각 초음파센서를 통해 상기 로보트의 좌우후면측으로부터의 측면 이격거리를 감지하는 제1거리감지스템과, 상기 스윙주기선택스텝에서 상기 네비게이션센서가 간헐스윙으로 선택되면 설정된 주기로 상기 네비게이션센서를 간헐스윙시키면서 상기 로보트의 전방 이격거리 및 상기 로보트의 전면측으로부터의 측면 이격거리를 감지하고, 상기 각 초음파센서를 통해 상기 로보트의 좌우후면측으로부터의 측면 이격거리를 감지하는 제2거리감지스텝 및, 상기 제1 및 제2거리 감지스텝에서 감지된 각 이격거리에 따라 상기 좌우측주행모터의 구동을 제어하여 상기 로보트을 벽면주행시키는 주행제어스텝으로 이루어진 것을 특징으로 하는 로보트의 주행제어 방법.
- 제1항에 있어서, 상기 스윙주기선택스텝은, 상기 로보트의 전방 이격거리가 상기 설정된 소정거리범위의 상한거리 이상이면 상기 네비게이션센서의 스윙주기의 간헐스윙으로 선택하는 것을 특징으로 하는 로보트의 주행제어 방법.
- 제1항에 있어서, 상기 스윙주기선택스텝은, 상기 로보트의 전방 이격거리가 상기 설정된 소정거리범위 이내이면 상기 네비게이션센서의 스윙주기를 연속스윙으로 선택하는 것을 특징으로 하는 로보트의 주행제어 방법.
- 제1항에 있어서, 상기 스윙주기선택스텝은, 상기 로보트의 전방 이격거리가 상기 설정된 소정거리범위의 하한거리 이하이면 상기 좌우측주행모터를 선택적으로 구동시켜 상기 로보트의 진행방향을 전환시키는 것을 특징으로 하는 로보트의 주행제어 방법.
- 제1항에 있어서, 사익 제1거리감지스텝은, 상기 네비게이션센서와 상기 각 초음파센서를 교번적으로 구동시켜 상기 로보트의 전방 및 측면 이격거리를 각각 감지하는 것을 특징으로 하는 로보트의 주행제어 방법.
- 제1항에 있어서, 상기 제2거리감지스텝은, 상기 네비게이션센서와 상기 각 초음파센서를 교번적으로 구동시켜 상기 로보트의 전방 및 측면 이격거리를 각각 감지하는 것을 특징으로 하는 로보트의 주행제어 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940016778A KR0161043B1 (ko) | 1994-07-12 | 1994-07-12 | 로보트의 주행제어방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940016778A KR0161043B1 (ko) | 1994-07-12 | 1994-07-12 | 로보트의 주행제어방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR960003897A KR960003897A (ko) | 1996-02-23 |
KR0161043B1 true KR0161043B1 (ko) | 1999-01-15 |
Family
ID=19387838
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019940016778A KR0161043B1 (ko) | 1994-07-12 | 1994-07-12 | 로보트의 주행제어방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0161043B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101068091B1 (ko) * | 2009-11-30 | 2011-09-27 | 재단법인대구경북과학기술원 | 모바일 로봇의 장애물 회피를 위한 공간 필터링 방법 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102188797B1 (ko) * | 2018-04-02 | 2020-12-08 | 에브리봇 주식회사 | 로봇 청소기 및 그 제어 방법 |
-
1994
- 1994-07-12 KR KR1019940016778A patent/KR0161043B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101068091B1 (ko) * | 2009-11-30 | 2011-09-27 | 재단법인대구경북과학기술원 | 모바일 로봇의 장애물 회피를 위한 공간 필터링 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR960003897A (ko) | 1996-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5621291A (en) | Drive control method of robotic vacuum cleaner | |
JP3217281B2 (ja) | ロボットの環境認識装置およびその制御方法 | |
KR0156722B1 (ko) | 로보트의 위치인식장치 및 그 제어방법 | |
US5781697A (en) | Method and apparatus for automatic running control of a robot | |
JPH09329416A (ja) | 移動走行車 | |
JPS62154008A (ja) | 自走ロボツトの走行制御方法 | |
KR940007727B1 (ko) | 청소기의 자동 주행 청소방법 | |
KR0161043B1 (ko) | 로보트의 주행제어방법 | |
JP3076648B2 (ja) | 自走式掃除機 | |
JP2004318721A (ja) | 自律走行車 | |
JP2609890B2 (ja) | 自走式作業車 | |
JP3227758B2 (ja) | 移動作業ロボット | |
KR0161027B1 (ko) | 로보트의 자동주행제어장치 및 그 방법 | |
JP3794340B2 (ja) | 全方向移動台車 | |
JP2007122272A (ja) | 移動装置 | |
KR100210061B1 (ko) | 로보트의 위치인식장치 및 그 제어방법 | |
KR100187252B1 (ko) | 로보트의 주행제어장치 및 그 방법 | |
KR20050099189A (ko) | 로봇 청소기의 제어 방법 | |
JP2609891B2 (ja) | 自走式作業車 | |
KR100963755B1 (ko) | 자동청소기의 구속상황 감지 및 대응방법 | |
JPH0379723B2 (ko) | ||
JPS63156203A (ja) | 自立型作業車 | |
JPS6347806A (ja) | 無人走行車輌 | |
JPH06242825A (ja) | 自立走行車 | |
JPS63311512A (ja) | 自走式作業車 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20070727 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |