김승기
(Seung-Gi Kim)
1
이용찬
(Yong-Chan Lee)
2
안성수
(Sung-Su Ahn)
3
이연정
(Yun-Jung Lee)
4†
-
(
Korea Orthopedics
&
Rehabilitation Engineering Center
)
-
(School of EE, Kyungpook National University)
-
(
Daegu Mechatronics
&
Materials Institute
)
-
(
School of Electronics Engineering, Kyungpook National University, Korea
)
Copyright © The Korean Institute of Electrical Engineers(KIEE)
Key words
Autonomous feeding robot, Ultrasonic sensor, Object classification, Support vector machine
1. 서론
최근 들어 국내 한우 사육 농가는 20마리 미만의 소규모에서 100마리 이상을 사육하는 대규모 농가로 변하는 추세이며, 농촌 인구의 고령화와
어렵고 힘든 축사 작업의 기피 현상으로 인해 인력 부족이 극심한 상황이다
(1)
. 이를 해결하기 위한 방편으로 사람의 작업을 대신하는 축사 자동화 시스템이 증가하고 있고, 그중 소의 사료 급이 작업은 사람에 의존하는 비중이
높아 다양한 자동 사료 급이 시스템들이 개발되어 왔다
(2-4)
.
기존의 사료 급이 시스템들은 컨베이어 등을 이용한 고정형
(5-7)
, 차량을 이용한 수동형
(8-10)
, 이동로봇형
(11,12)
으로 나뉜다. 본 논문에서는 설치 변경과 초기 비용이 고정형에 비해 적고, 작업자를 대체할 수 있는 면에서 수동 차량형보다 우수하여 최근 활발히
연구되고 있는 이동로봇형에 대해 논하고자 한다. 한편, 본 연구진은 유도선 상을 움직이는 AGV(Automated Guided Vehicle) 형식을
취해 임의의 경로 이동로봇에 비해 저가이고 운영 면에서 신뢰성과 안전성이 높고, 로드셀 센서를 이용한 사료 배출 속도 조절이 용이한 자동 사료 급이
로봇 1차 버전을 개발한 바 있다
(13)
.
본 논문은 새롭게 개발된 자동 사료 급이 로봇 2차 버전(2장 참조)을 소개하고 기존 이동로봇형 사료 급이 시스템에서 많이 다루어지지 않은 초음파
센서 기반의 장애물 분류(인식) 방법에 대해 중점을 두어 논하고자 한다. 이동 로봇의 주행 안전성을 확보하기 위해 장애물 인식에 사용되는 비접촉식
센서들로는 적외선 센서, 카메라, 레이저 센서, 초음파 센서 등이 있다. 이 중 초음파 센서는 비교적 인터페이스 하드웨어 및 소프트웨어 구성이 용이하고
가격이 저렴하며 넓은 각도의 수 m 이내 장애물 인식이 가능하여 이동로봇에 널리 채용되고 있다
(14-16)
.
본 연구의 사료 급이 로봇에도 비접촉식 장애물 인식용으로 로봇 정면과 측면에 초음파 센서를 장착하였다. 로봇이 유도선을 따라 움직여야하므로 유도선을
이탈하며 장애물을 회피하는 것은 고려하지 않고, 장애물이 감지되면 저속 이동 또는 정지하도록 한다. 그러나 초음파 센서는 빔 폭(감지 각도 110°)이
넓은 특성으로 인해 사료 급이 중 축사 구조물이나 먹이를 먹는 소가 측면 센서에 감지될 수 있다. 이러한 경우 사료를 급이 할 때는 급이 구역의 거리가
가까운 펜스, 벽과 같은 축사의 고정 구조물이 감지되더라도 정지 없이 지속적으로 작업을 수행해야 하며, 사람이나 소가 감지될 경우는 주의해서 주행하다가
최소 거리(30cm) 이내에 감지되면 정지하여야 한다. 이와 같은 사료 급이 로봇의 안전하고 효율적인 운행을 위해 초음파 센서 신호처리를 통한 장애물의
종류를 인식하는 시스템이 필요하다.
기존에 초음파 에코 신호를 이용한 물체 인식에 대한 많은 연구가 진행되어 왔다. 기존의 초음파 물체 인식 시스템에는 물체마다 측정된 초음파 에코
신호 envelope의 진폭(Amplitude)
(17-19)
을 비교하거나 여러 개의 센서를 사용하여 각 센서로 들어오는 수신 신호의 시간 차
(20,21)
를 이용하여 물체를 구분하는 경우로 크게 나누어 볼 수 있다. 이들 기존 연구들에서는 물체를 판단하기 위한 파라미터가 적어 구분할 수 있는 물체가
제한적이고, 실시간으로 움직이는 물체들을 구분할 수가 없는 단점이 있어 축사에서 고려되어야 할 고정 장애물(펜스, 벽)과 이동 장애물(사람, 소)을
구분하기에는 한계가 있다.
본 논문에서는 물체마다 측정된 초음파 에코 신호 envelope의 기울기와 진폭을 바탕으로 한 특징 파라미터 4가지를 이용하여 물체를 구분하는
시스템을 제안한다. 우선 개발된 자동 사료 급이 로봇 시스템에 대해 2장에서 소개하고, 3장에서는 로봇에 부착된 초음파 센서의 배치, 하드웨어 시스템,
초음파 에코 신호의 디지털 변환 및 envelope 검출 순으로 설명한다. 그리고 물체 분류를 위한 특징 파라미터 선택 및 측정 방법에 대해 기술한다.
4장에서는 물체별 특징 파라미터 측정 실험을 바탕으로 데이터 분류를 통해 물체 분류가 가능함을 검증한다. 마지막 장에서는 결론을 맺는다.
2. 자동 사료 급이 로봇 시스템
2.1 자동 사료 급이 로봇의 운영 과정
자동 사료 급이 로봇은 국내의 대규모 현대식 축사를 대상으로 개발되었다. 대규모 현대식 축사는 그림 1과 같이 중앙 통로를 기준으로 양쪽에
5m(가로)×10m(세로) 크기의
연속적으로
배치된
셀에서 소가 사육되며, 사료는 축사 앞부분 약 0.7m 정도의 구역에 배출된다. 축사 바닥의 유도선에 흐르는 전류에 의해 전자기적으로 유도되는
전압을 로봇 하부에 장착된 2개의
센서로
측정하여
로봇과 유도선 간의 편차를 보정하며 로봇은 유도선을 따라 이동한다. 각 측정 셀의 시작 위치에 부착된 RFID 태그를 인식하여 각 셀마다
설정된 사료의 양에 따라 사료를 공급하고
마지막
셀에
공급을 완료하면 반대편 셀로 이동하여 동일한 방법으로 사료를 배출하게 된다.
또한, 로봇에 부착된 초음파 센서를 통해 최대 1.5m 내의 물체를 감지하여 정지 또는 서행하고, 사료 및 배터리가 부족할 경우 출발지로 복귀하여
사료를 보충하거나 배터리를 충전한 후
작업
중이던 셀로 돌아가 작업을 재개하도록 설계되었다.
사료 급이 운영 과정에 맞게 소 400마리를 사육하는 축사에 실제 적용하여 로봇의 동작을 확인하였다(그림 1 2 참조).
그림 1 자동 사료 급이 로봇의 운영 과정
Fig. 1 Operational process of autonomous feeding robot
그림 2 개발된 자동 사료 급이 로봇
Fig. 2 Developed autonomous feeding robot
2.2 자동 사료 급이 로봇의 기구부
사료 급이 로봇의 상부는 호퍼, 스크루 컨베이어, 컨베이어 벨트와 벨트 조절기, 하부는 로드셀과 AGV로 구성된다. 호퍼에는 소에게 공급할
사료를 저장하고 스크루 컨베이어는 저장된
사료를
컨베이어 벨트로 이동시키며, 컨베이어 벨트를 통해 사료가 급이 구역으로 배출된다.
그리고 하부에 위치한 로드셀을 통해 배출된 사료의 양을 파악하고, AGV를 통해 로봇을 지정된 경로로 이동시킨다. 그림 2는 개발된 자동
사료 급이 로봇(2차 버전)을 나타내고,
사양은
표 1과
같다.
표 1 자동 사료 급이 로봇의 사양
Table 1 Specifications of autonomous feeding robot
Items
|
Specifications
|
Dimension
|
1,612(w)×2,441(D)
×1,926(H) mm
|
Max Capacity of Feed
|
636.8kg
|
Release Rate per
Feed Quantity
|
10kg
|
200g/s
|
15kg
|
300g/s
|
21kg
|
420g/s
|
Moving Speed
|
Driving
|
0.72~4.9km/h
|
Feeding
|
0.36km/h
|
Obstacle Detection Distance of Ultrasonic Sensor
|
Adjustable from
0.3m to 1.5m.
|
Power Source
|
DC 24V Battery
|
2.3 제어 시스템
자동 사료 급이 로봇의 제어 시스템에는 그림 3과 같이 사료 급이 설정 및 작업 상태 확인을 위해 임베디드 PC를 사용하고, 시스템의 구성 요소를 제어하기 위해
DSP(Digital
Signal
Processor) 기반의 메인 제어기를 자체 개발하였다. 그리고 사료를 배출하기 위한 400W, 750W, 1.5kW 3개의 BLDC(Brushless
DC) 모터, 호퍼에 담긴
사료의
양
파악을 위한 로드셀 센서, 작업 정보가 내장된 RFID 태그를 읽기 위한 2개의 RFID 판독기로 구성된다. 그리고 로봇의 주행 중 장애물을
감지하기 위해 초음파 센서, 배터리
부족 시
충전장치와 연동을 위한 적외선 송수신 모듈 등이 장착되어 있다.
그림 3 제어 시스템 블록 다이어그램
Fig. 3 Block diagram of control system
2.4 사료 배출 속도 설정
국내 축사의 한 칸 셀의 평균 폭 5m를 0.36km/h의 속도로 이동하며 사료를 배출하는 것을 고려하여 50초 동안 목표 사료량 배출을
위한 배출 속도를 설정한다.
각 셀에서 사육되는 소들의 크기에 따라 10kg, 15kg, 21kg의 사료를 배출하기 위해 스크루 컨베이어의 회전 속도를 800, 1200,
1470rpm으로 설정한다.
그림 4는
21kg의
사료 배출에 대한 로드셀 측정치를 나타낸다. 스크루의 기구부 구조상 계단형의 배출 형태로 사료의 양이 감소하는 구간은 사료가 컨베이어 벨트
위로 떨어지는 상태이고, 사료의 양이
유지되는
구간은
스크루에 의해 사료가 이동되는 상태이다. 21kg의 사료 배출 목표에 대해 21.2kg의 사료가 배출되어 약 1%의 오차를 나타내었다.
10kg 사료 배출의 경우 50초에서 10.4kg을 배출하여 목표대비 약 4%를 초과하였고, 15kg의 사료 배출의 경우 15.2kg의 배출되어
1%의 오차를 보였다. 목표
사료량이
배출되면
스크루 컨베이어가 감속 시간을 가지며 멈추지만 이후에도 스크루 날 사이의 사료가 조금씩 흘러내리기 때문에 목표치 대비 약간의 오차가 발생하는
것으로 5% 이내의 배출량 조절 성능을
보인다.
그림 4 21kg 사료 배출 실험 결과
Fig. 4 Results of 21kg feed release test
3. 초음파 장애물 분류 시스템
3.1 초음파 센서를 이용한 로봇 운행 방법
그림 5와 같이 로봇 중앙에 위치한 초음파 센서(2)를 기준으로 60cm 간격, 30° 방향으로 초음파 센서(1), (3)이 배치되어 있다. 주행 중 센서(1)
또는 (3)에서
1m 내에
물체가
감지되면 초음파 에코 신호를 분석하여 물체를 판단한 후 로봇의 계속 주행 여부를 결정하고, 센서(2)에서 특정 거리(0.8m, 1m 등 조정
가능) 내에 물체가 감지되면 물체의
종류에
대한 판단
없이 유도선 상의 장애물로 인식하여 로봇의 동작을 정지한다.
그림 5 장애물 인식을 위한 초음파 센서 배치
Fig. 5Arrangement of ultrasonic sensor for obstacle recognition
3.2 초음파 장애물 인식 시스템 하드웨어 구성
하드웨어 시스템은 메인 제어기의 32bit DSP 마이크로 컨트롤러 유닛(TMS320F28335(150MHz, 68KB RAM), 그림 3
참조), 현대모비스사의 차량용
TEC-7000
거리
측정 모듈과 초음파 센서로 구성된다(그림 6 참조).
그림 6 TEC-7000 시리즈 초음파 센서
Fig. 6 TEC-7000 series ultrasonic sensor
TEC-7000 거리 측정 모듈은 TOF(Time of Flight) 측정을 위한 펄스 신호만 출력되는 구조이지만, 본 연구에서는 초음파
에코 신호 분석을 위해 거리 측정 모듈의
회로를
분석한
후 DSP 마이크로 컨트롤러 유닛과 거리 측정 모듈을 연결하여 DSP에서 자체적으로 초음파 발진 신호를 출력하고, 초음파 에코 신호와 TOF
신호를 입력받도록 회로를 구성하였다.
사용된 초음파 센서 모듈은 송수신 겸용으로 40kHz 주파수에 해당하는 25$\mu$sec 주기의 10-cycle 펄스 구형파를 초음파 센서로
보내면 초음파를 한번 발진한다.
수신된
초음파 에코
신호는 거리 측정 모듈에서 4단계의 신호처리 과정을 거친다. 그림 7과 같이 공기 중에서 신호가 감쇠되고
노이즈를 포함한 초음파 에코 신호(A)가 대역 통과 필터(Band Pass
Filter)를 거쳐 복원된 신호(B)가 된다. 그리고 신호(B)는 검파 회로(Detection Circuit)의 정류과정을 거쳐 음 부분이
제거된 신호(C)가 되고, 저역 통과
필터(Low
Pass Filter)를 거쳐 envelope 신호(D)가 추출된다. 슈미트 트리거를 통해 TOF(Time of Flight) 측정을 위한
펄스 신호(E)로 출력된다.
그림 8은
하드웨어
시스템의 블록도를 나타낸다.
그림 7 초음파 에코 신호의 아날로그 신호처리 과정
Fig. 7 Analog signal processing of ultrasonic echo signal
그림 8 초음파 신호처리를 위한 하드웨어 시스템 블록도
Fig. 8 Block diagram of hardware system for ultrasonic signal processing
3.3 초음파 에코 신호의 디지털 변환 및 envelope 검출
그림 9는 그림 7에서 나타낸 거리 측정 모듈의 신호 처리 과정 중
아날로그 초음파 에코 신호(B)와 슈미트
트리거를 통해 출력된 펄스 신호(E)를 나타낸다.
본 연구에서는 감지된 물체를 분석하기 위해 물체의 정보가 많이 포함되어 있는 아날로그 초음파 에코 신호(B)를 사용하고, 단순 거리 측정에는
신호(E)를 사용한다. 40kHz의
아날로그
신호(B)를 DSP에서 2.5$\mu$sec 주기로 ADC 샘플링하여 디지털 신호로 변환한다. 분석에 사용되는 초음파 에코 신호만을 얻기
위해 신호(E)의 첫 번째 상승
에지(Edge)부터
샘플링을 시작하여 초음파 에코 신호의 시작점을 찾고, 두 번째 상승 에지에서 샘플링을 종료하여 디지털 값으로 변환된 초음파 에코 신호를 얻게
된다. 초음파 에코 신호의 시작점부터
신호의
peak
점을 추출하여 envelope을 검출한다. 그림 10(a)는 디지털 값으로 변환된 초음파 에코 신호를 나타내고,
그림 10(b)는 그에 따른 envelope을 나타낸다.
그림 9 아날로그 초음파 에코 신호 및 펄스 신호
Fig. 9 Analog ultrasonic echo signal and pulse signal
그림 10 디지털 초음파 에코 신호 및 envelope
Fig. 10 Digital ultrasonic echo signal and envelope
3.4 초음파 에코 신호의 envelope 특징 파라미터
물체가 위치한 거리 및 각도, 종류에 따라 초음파 에코 신호는 다양한 형태로 측정되기 때문에 기존의 방식은 초음파 에코 신호 envelope의
진폭을 많이 사용하지만, 그 외에
앞, 뒤
기울기
등을 특징 파라미터로 추가하는 방법을 제안한다. 그림 11과 같이 envelope의 각 샘플링에서의 크기가 증가 또는 감소하는 앞, 뒷부분의 기울기를 측정하기 위해
최소제곱법(Least
Square Method)[22]을 이용하여 샘플링 포인트와의 편차가 최소가 되는 직선을 구하고, envelope의 샘플링 포인트 중 최댓값을 진폭으로 한다.
우선 최소제곱법에 적용할 데이터를 정하기 위해 envelope의 샘플링 포인트를 $a _ { i } (i = 0, 1, \cdots ,n
)$, 그중 최대 진폭은 $a _ {
max
}$로
나타낸다. 그리고 envelope의 증가 부분은 단조증가(Mono- tonically increasing), 감소 부분은 단조감소(Monotonically
decreasing)
한다고
가정한다.
그림 11 초음파 에코 신호 envelope의 특징 파라미터
Fig. 11Feature parameter of ultrasonic echo signal envelope
첫째, envelope 증가 부분의 기울기를 구하는 경우 아날로그 초음파 에코 신호의 샘플링 과정에서 신호 앞부분의 노이즈까지 샘플링 되어
기울기에 오차가 생기는 경우가 있었다.
오차가 최소화된
기울기를 구하기 위한 구간을 정하기 위해 물체의 거리, 각도와 재질이 다른 조건에서 측정된 에코 신호들을 분석하여, envelope이 증가하는
부분 중 $a _ { max }$의
10% 이상부터
80% 이하에 해당하는 구간의 샘플링 포인트만을 최소제곱법에 적용할 데이터로 정하였다.
envelope이 증가하는 부분의 기울기를 구하기 위한 샘플링 포인트의 집합인 $S^ { r }$은
식 (1)과 같고, $S^ { r }$ 집합 중 $k$번째 값 $a _ { k
}$와 아날로그
초음파 에코 신호의 디지털 변환 과정에서 $a _ { k }$에 해당하는 디지털 값을 저장한 샘플링 인덱스인 $b _ { k } ^ { r
}$는
식 (2)와 같다. 식 (1)과
식 (2)를
이용하여 최소제곱법을 이용한 envelope의 앞부분 기울기 $\alpha _ { S ^ { r } }$은 식 (3)과 같다.
둘째, envelope이 감소하는 부분의 기울기를 구하는 경우에도 기울기 오차를 최소화하기 위해 샘플링 포인트가 감소하는 구간 중 $a _
{ max }$의 80% 이하부터 마지막
샘플링 포인트
$a _ { n }$까지 기울기를 구하는 데이터로 사용한다. envelope이 감소하는 부분의 기울기를 구하기 위한 샘플링 포인트의 집합인
$S ^ { f }$는
식 (4)와
같고, $S ^ {
f }$ 집합 중 $k$번째 값 $a _ { k }$와 에코 신호의 디지털 변환 과정에서 $a _ { k }$에 해당하는 디지털 값을 저장한
샘플링 인덱스 $b _ { k } ^
{ f }$는
식 (5)와 같다. 식 (4)와
식 (5)를 이용하여 envelope의 뒷부분 기울기 $alpha_ { S^ { f } }$는
식 (6)과 같다.
4. 물체 분류 실험 및 결과
4.1 로봇의 축사 운영 실험 및 대상 물체 선정
개발된 로봇의 축사에서 운영 실험 장면은 그림 12와 같다.
그림 12는 장면 1부터 장면 4까지 시간에 따른 것들이며 로봇이 사료 급이를 원활하게 하고 있음을 나타낸다. 실험
장면에서와
같이
자동화된 축사를 가정할 경우 사료 급이시 고려해야할 기본적인 측면 장애물은 철제 펜스와 소이다. 아울러 작업자와 축사 건물 벽을 추가로 인식해야할
장애물로 고려할 수 있다. 따라서
물체
분류
실험에서는 급이 과정 중 거칠 수 있는 기본적인 장애물로서 철봉 형태의 펜스와 콘크리트 재질의 벽, 소, 그리고 사람을 분류 대상으로 선정한다.
그림 12 로봇의 축사 운영 실험 장면들
Fig. 12 Scenes of robot operation experiments in a cattle shed
4.2 물체별 envelope의 기울기, 진폭 측정 실험
로봇의 측면 초음파 센서의 신호처리를 통한 물체 분류 실험에 대해 논한다. 급이 작업 중 로봇의 이동 속도는 0.36km/h로 초당 10cm
이동하고 초음파 센서의 발진 주기는
0.2sec로 한다. 즉, 로봇이 2cm 이동할 때마다 초음파 신호는 1회 발진한다. 급이 구역(3장 1절 참조)의 폭(70cm) 내에서의
장애물 인식을 위해 충돌 전
최소거리(30cm)부터 48cm까지 2cm마다 총 10회의 측정 데이터를 사용한다.
그림 13은 물체별 실험환경을 나타낸다. 첫 번째 실험에서는 170cm(W)×150cm(H) 규격의 펜스 구조물, 두 번째 실험은 콘크리트 재질의 벽인 고정된
물체를 측정하였다.
펜스와 벽을 측정했을 때 envelope의 앞, 뒷부분 기울기는 그림 14와 같이 일정 범위 내에서 측정되는 것을 확인할 수 있었다.
그림 13 물체별 실험 환경
Fig. 13 Experimental environment for each object
그림 14 펜스와 벽 측정 시 envelope의 기울기
Fig. 14 Slope of envelope for fence and wall measurement
두 물체에 대한 envelope의 앞부분 기울기를 비교해 볼 때 상대적으로 벽이 펜스보다 초음파가 반사되는 면적이 넓기 때문에 초음파 에코
신호의 강도가 커지므로 앞부분 기울기가
크게 측정되는 것을 알 수 있다.
진폭의 경우에도 그림 15와 같이 벽을 측정했을 때가 펜스보다 진폭이 크게 측정되었다.
벽은 거리에 거의 무관하게 일정한 값이 측정되는 반면 펜스는 거리가 가까워지면 철봉 사이의
빈 공간이 확연히 측정되므로 반사 신호의 양이 줄어 진폭이 감소하는 것으로 판단된다.
그림 15 펜스와 벽 측정 시 envelope의 최대 진폭
Fig. 15 Maximum amplitude of envelope for fence and wall measurement
세 번째 실험은 사람, 네 번째 실험은 실제 축사에서 펜스 밖으로 머리를 내민 소를 대상으로 3번의 반복 실험을 통해 기울기와 진폭을 측정하였다.
사람과 소를 측정한 경우 초음파
에코
신호
envelope의 기울기는 그림 16,
그림 17과 같이 앞, 뒷부분 기울기의 변화가 크게 측정되는 것을 확인하였다. 사람과 소의 경우 움직임에 따라 초음파가 반사되는 면적이
달라지고,
반사되는
면적이 고르지 못해 난반사의 영향으로 판단된다. 측정된 진폭의 경우도 그림 18과
그림 19와 같이 변화량이 크게 측정되는 것으로 보아 동일한 원인으로 보인다.
그림 14의 벽과
펜스에
대한
앞부분 기울기 데이터와 그림 16 및
그림 17의 사람과 소에 대한 첫 번째 측정한 앞부분 기울기 데이터로 부터,
각 물체별 앞부분 기울기의 변화량을 구하면 그림 20과 같이
나타난다.
그림 16 사람 측정 시 envelope의 기울기
Fig. 16 Slope of envelope for human measurement
그림 17 소 측정 시 envelope의 기울기
Fig. 17 Slope of envelope for cow measurement
그림 18 사람 측정 시 envelope의 최대 진폭
Fig. 18 Maximum amplitude of envelope for human measurement
그림 19 소 측정 시 envelope의 최대 진폭
Fig. 19Maximum amplitude of envelope for cow measure- ment
그림 20 물체별 envelope 기울기 변화량
Fig. 20Amount of change of envelope slope for each object
4.3 SVM 알고리즘을 이용한 물체 분류
물체 분류 알고리즘은 SVM, 신경회로망, 딥러닝, 결정 트리(Decision tree), 퍼지(Fuzzy) 분류 방법을 이용한 알고리즘
등 다양하다. 각 방법마다 장단점이
있으나[23], 본
연구에서는 제한적인 연산능력을 갖는 임베디드 하드웨어를 고려하여 다른 방법에 비해 계산 복잡성이 적고 일반화 성능이 우수하고 앞 장에서 도출한
특징값을 기반으로 한 분류 방법으로
적합한
SVM
방법을 사용한다.
앞선 실험을 통해 얻은 그래프를 분석해 보면 우선 펜스와 벽의 경우에는 두 물체 간 최대 진폭에 차이가 크게 있으며, 사람과 소의 경우는
최대 진폭 값과 앞부분 기울기의 변화량이
크다는
것을 알
수 있다. 반면에 펜스, 벽, 사람, 소의 진폭만을 비교하면 2000~2200 (ADC 값) 사이 값이므로 진폭만을 특징 파라미터로 하여
이들 4가지 물체를 분류하는 것은 쉽지
않음을 알
수
있다. 또한, 사람과 소의 경우 뒷부분 기울기의 크기를 보면 사람 측정 시에 뒷부분 기울기가 비교적 크게 나타나는 것을 알 수 있다. 이러한
분석을 통해 4가지 물체 분류를 위한
특징
파라미터로서 초음파 신호 envelope의 앞부분 기울기 $x _ { 1 }$, 뒷부분 기울기 $x _ { 2 }$, 최대 진폭 $x _
{ 3 }$, 앞부분 기울기의 변화량 $x
_ {
4
}$를 선정한다.
선정한 특징 파라미터를 SVM의 학습 데이터로 사용하여 물체별 특징 파라미터를 선형 경계로 이진 분류(Binary Classification)하는
초평면(Hyperplane)을
구하여 물체를 판단한다[24, 25].
4가지 물체를 20번씩 측정한 총 80개의 데이터 set을 SVM의 학습 데이터로 사용하여 초평면을 구한다.
물체를 판단하기 위해 그림 21과 같이 우선 크게 고정형 물체(벽, 펜스)와 움직이는 물체(소, 사람)로 물체의 종류를 구분한 후 물체를
판단한다. 먼저 총 80개의 학습 데이터
set을
고정형
물체(펜스, 벽)에 대한 40개의 데이터 set과 움직이는 물체(사람, 소)에 대한 40개의 데이터 set으로 분류하는 초평면인 $f _
{ 1 }$은
식 (7)과 같다. $f _
{ 1
}$이
음수이면 고정형 물체, 양수이면 움직이는 물체로 판단한다. 고정형 물체로 판단되었을 때 고정형 물체에 대한 40개의 데이터 set 중 펜스를
측정했을 때의 20개 데이터 set과
벽을
측정했을
때 20개의 데이터 set을 분류하는 초평면인 $f _ { 2 }$는 식 (8)과 같고, $f _ { 2 }$가 음수이면 펜스, 양수이면 벽으로 판단한다. 그리고 움직이는 물체로
판단되었을 때
움직이는 물체에 대한 40개의 데이터 set 중 사람을 측정했을 때의 20개 데이터 set과 소를 측정했을 때의 20개 데이터 set을 분류하는
초평면인 $f _ { 3 }$는
식 (9)와
같고, $f _ { 3 }$가 음수이면 사람, 양수이면 소로 판단한다.
그림 21 SVM을 이용한 물체 분류 순서도
Fig. 21 Flowchart of object classification using SVM
Fig. 21 Flowchart of object classification using SVM
학습 데이터로 사용하지 않은 물체별 측정 데이터 set 10개씩을 초평면의 파라미터에 입력하여 결과를 확인하였다(표 2 참조).
우선 고정형 물체와 움직이는 물체로 구분하는 물체의 종류 판단은 100% 정확도를 보였다. 고정형 물체 중 펜스와 벽을 판단하는 경우도 각각
100%의 정확도로 물체가 판단되었고,
움직이는 물체
중 사람과 소를 판단하는 경우에는 각각 80%의 정확도를 보였다 (표 3 참조).
움직이는 물체이므로 사람과 소에서 측정한 데이터 set이 유사하게 측정된 경우가 있기 때문으로
보인다.
그러나
이러한 결과는 제한된 수의 데이터에 대한 분류 결과이므로 추후 보다 많은 데이터에 대한 분류 실험을 통해 성능 향상이 필요하다.
표 2 학습된 SVM의 검증용 데이터
Table 2 Data for verification of the trained SVM
|
$x _{1}$
|
$x _{2}$
|
$x _{3}$
|
$x _{4}$
|
Fence
|
24.47
|
-11.70
|
2165
|
0
|
26.36
|
-13.26
|
2180
|
1.89
|
25.70
|
-15.24
|
2179
|
-0.66
|
26.89
|
-12.65
|
2199
|
1.2
|
25.99
|
-11.88
|
2186
|
-0.9
|
26.49
|
-15.85
|
2177
|
0.49
|
29.48
|
-14.83
|
2188
|
2.99
|
27.98
|
-16.84
|
2180
|
-1.5
|
30.14
|
-10.53
|
2201
|
2.16
|
31.25
|
-16.42
|
2215
|
1.11
|
Wall
|
55.13
|
-19.56
|
2231
|
0
|
55.27
|
-18.56
|
2229
|
0.14
|
57.69
|
-16.26
|
2223
|
2.42
|
59.23
|
-12.64
|
2269
|
1.54
|
52.64
|
-11.96
|
2252
|
-6.59
|
50.94
|
-18.23
|
2245
|
-1.7
|
54.52
|
-14.85
|
2239
|
3.58
|
59.65
|
-17.62
|
2248
|
5.13
|
62.95
|
-14.96
|
2249
|
3.31
|
61.99
|
-18.26
|
2256
|
-0.97
|
Human
|
35.32
|
-26.66
|
2015
|
0
|
28.13
|
-14.56
|
2100
|
-7.19
|
26.90
|
-20.69
|
1980
|
-1.23
|
39.56
|
-18.65
|
2120
|
12.66
|
20.21
|
-14.88
|
1960
|
-19.35
|
29.24
|
-9.65
|
1980
|
9.02
|
27.15
|
-29.73
|
2195
|
-2.09
|
29.33
|
-18.63
|
1919
|
2.18
|
19.29
|
-23.73
|
1965
|
-10.04
|
19.72
|
-12.03
|
2001
|
0.43
|
Cow
|
18.55
|
-15.65
|
2102
|
0
|
19.23
|
-17.50
|
2005
|
0.68
|
10.37
|
-8.98
|
1989
|
-8.87
|
5.98
|
-9.88
|
2001
|
-4.39
|
16.23
|
-15.36
|
2103
|
10.25
|
20.36
|
-13.69
|
2036
|
4.13
|
18.67
|
-8.99
|
2058
|
-1.69
|
19.65
|
-20.69
|
2063
|
0.98
|
9.98
|
-19.89
|
1998
|
-9.67
|
10.56
|
-23.65
|
2036
|
0.58
|
그럼에도 불구하고 제안된 2단 분류기는 일차적으로 고정 장애물과 이동 장애물을 구분한 후 고정 또는 이동 장애물 중 하나를 특정하도록 하여
추후 고정 또는 이동 장애물이 추가되는
경우에는 응용 가능할 뿐 만 아니라 저가의 초음파 센서를 사용하여서도 새로운 특징값을 고안하면 물체 분류가 가능함을 보인 것에도 의의가 있다고
하겠다.
한편 4개의 클래스를 한 단계로 분류하는 SVM 방법인 ‘오류 보정 출력 코드(error correcting output code)' 방법(ECOC
방법)을 적용해 보았으나
전반적으로 동일한 분류 성능을 보였으며 펜스의 경우는 오히려 인식률이 저하되는 결과를 보였다.
표 3 실험 물체에 대한 인식률
Table 3 The rate of recognitions according to experimental object
물체
거리
|
Fence
|
Wall
|
Human
|
Cattle
|
Total
|
30~38cm
|
100%
|
100%
|
80%
|
80%
|
90%
|
40~48cm
|
100%
|
100%
|
80%
|
80%
|
90%
|
5. 결 론
본 논문에서는 인간 작업자를 대신하여 축사에서 자동으로 소의 사료 급이 작업을 수행하는 새로운 사료 급이 로봇을 소개하고, 로봇에 부착된 초음파
센서를 이용하여 안전한 로봇의 이동을 위한
새로운 장애물 분류 시스템을 제안하였다. 물체마다 측정되는 초음파 에코 신호의 패턴이 달라지는 것에 착안하여 신호의 앞, 뒤 기울기, 앞부분
기울기의 변화량, 그리고 최대 진폭을 특징
파라미터로 선정하였다. 축사와 관련된 물체인 펜스, 벽, 사람과 소를 대상으로 초음파 에코 신호 envelope의 기울기와 진폭을 측정하는
실험을 진행하였으며, 측정된 데이터 set을
SVM의 학습 데이터로 설정하여 물체별 데이터 set을 분류하기 위한 초평면을 구한 후 학습 데이터로 사용하지 않은 측정 데이터 set을 적용해봄으로써
물체의 분류가 가능함을 검증하였다.
추후 보다 많은 데이터와 다양한 장애물을 적용하거나 딥러닝과 같은 인공지능 방법을 적용하여 분류기 성능 향상을 위한 추가 연구가 필요하다.
감사의 글
본 논문은 시스템산업거점기관지원사업(로봇산업클러스터조성사업-과제번호: R0003943)에서 지원하여 수행되었음.
References
"Livestock Trend Survey: Number of Farms and Cattle, Statistics Korea", 2017
J. G. Park, J. O. Kim, "Development of milk feeding robot system for individual management
of calves", Journal of Korean Institute of Information Technology, Vol. 13, No. 2,
pp. 35-44, 2015
H. K. Kim, S. J. Moon, J. D. Lee, S. O. Choi, "Cattle shed management system based
on wireless sensor network with bio and environmental sensors", J. Korean Inst. Commun.
Sci., Vol. 38, pp. 573-586, 2013
H. G. Kim, C. J. Yang, H. Yoe, "Design and Implementation of Livestock Disease Forecasting
System", The Journal Of Korea Information And Communications Society, Vol. 37, No.
12, pp. 1263-1270, 2012
"http://www.lelycenter.com/"
"http://jinyoungcage.com/
"
"http://www.samwooinc.net/
"
"http://leeten.co.kr/product/
"
"http://www.silti.co.kr/
"
"http://www.chco.co.kr/
"
"http://www.nias.go.kr/
"
"https://www.lely.com/solutions/feeding/"
S. S. Ahn, Y. C. Lee, J. H. Yoo, Y. J. Lee, "Development and verification of the automated
cow-feeding system driven by AGV", Journal of The Korea Academia-Industrial Cooperation
Society, Vol. 18, No. 3, pp. 232-241, 2017
J. H. Ko, W. J. Kim, M. J. Chung, "A method of acoustic landmark extraction for mobile
robot navigation", IEEE Transactions on Robotics and Automation, Vol. 12, No. 3, pp.
478-485, Jun. 1996
H. C. Cho, K. S. Lee, "A study on system of object recognition using ultrasonic sensor",
Journal of The Korean Institute of Illuminating and Electrical Installation Engineers,
Vol. 12, No. 3, pp. 74-82, Aug. 1998
C. S. Kim, B. J. Choi, Y. J. Lee, S. R. Lee, "Simultaneous driving system of ultrasonic
sensors using codes", JCASE, Vol. 10, No. 11, pp. 103-1028, Nov. 2004
G. Benet, M. Martínez, F. Blanes, P. Pérez, J. E. Simó, "Differentiating walls from
corners using the amplitude of ultrasonic echoes", Robotics and Autonomous Systems,
Vol. 50, No. 1, pp. 13-25, Jan. 2005
L. Kleeman, R. Kuc, "Mobile Robot Sonar for Target Localization and Classification",
The International Journal of Robotics Research, Vol. 14, No. 4, pp. 295-318, Aug.
1995
J. M. M. Abreu, T.F. Bastos, L. Calderón, "Ultrasonic echoes from complex surfaces:
An application to object recognition", Sensors and Actuators: A. Physical, Vol. 31,
No. 1-3, pp. 182-187, Mar. 1992
Lindsay Kleeman, Roman Kuc, "Optimal sonar array for target localization and classification",
Proceedings - IEEE International Conference on Robotics and Automation, No. pt 4,
pp. 3130-3135, 1994
H. Peremans, K. Audenaert, J. M. Van Campenhout, "A High-Resolution Sensor Based on
Tri-aural Perception", IEEE Transactions on Robotics and Automation, Vol. 9, No. 1,
pp. 36-48, Feb. 1993
A. K. Aziz, R. B. Kellogg, A. B. Stephens, "Least squares methods for elliptic systems",
Mathematics of Computation, Vol. 44, No. 169, pp. 31-38, Jan. 1985
P. Kamavisdar, S. Saluja, S. Agrawal, "A survey on image classification approaches
and techniques", IJARCC, Vol. 2, No. 1, pp. 1005-1009, 2013
B. Schölkopf, K. K. Sung, C. J. C. Burges, F. Girosi, P. Niyogi, T. Poggio, V. Vapnik,
"Comparing support vector machines with gaussian kernels to radial basis function
classifiers", IEEE Transactions on Signal Processing, Vol. 45, No. 11, pp. 2758-2765,
1997
T. Hastie, S. Rosset, R. Tibshirani, J. Zhu, "The entire regularization path for the
support vector machine", Journal of Machine Learning Research, Vol. 5, pp. 1391-1415,
Oct. 2004
저자소개
2016년 한국해양대학교 제어자동화공학부 졸업
2018년 경북대학교 전자공학부 석사
현재 재활공학연구소 연구원
관심분야는 임베디드 시스템, 서비스 로봇, 센서 신호처리
E-mail :
hnlsg211@kcomwel.or.kr
2013년 경북대학교 전자공학부 졸업
2015년 동 대학원 석사
2015년~현재 동 대학원 박사과정
관심분야는 지능 제어, 임베디드 시스템, 서비스 로봇
E-mail :
leeyc@knu.ac.kr
1996년 경북대학교 전자공학과 졸업
1998년 동 대학원 석사
2015년 동 대학원 박사
현재 대구기계부품연구원 책임연구원
관심분야는 서비스 로봇, 임베디드 시스템, 지능제어, 센서 융합
E-mail :
zecks@dmi.re.kr
1984년 한양대학교 전자공학과 졸업
1986년 한국과학기술원 전기 및 전자공학과 석사
1994년 동대학원 박사
1995년~현재 경북대학교 IT대학 전자공학부 교수
관심분야는 서비스 로봇, 재활 로봇, 지능 제어, 임베디드 시스템
E-mail :
yjlee@ee.knu.ac.kr