이하에서는 첨부된 도면을 참조하여 본 발명을 보다 자세하게 설명한다.
도 1은 본 발명의 일 실시 예에 따른 모터 제어 장치를 나타내는 블럭도이다. 도 1에 도시된 모터 제어 장치(100)는 비교기(101), 모터부(110), 기어비(105), 백래쉬부(120), 감산기(107), 부하(130) 및 외란 관측기(140)를 포함한다.
모터부(110)는 외부로부터 기준 전압(R)을 제공받아, 그 기준 전압(R)을 처리하여 모터 회전에 따른 각 변위를 출력한다. 기어비(105)는 모터부(110)를 통해 전달되는 각 변위를 소정의 기어비로 처리하여 그에 따른 출력 신호를 생성하며, 그 출력 신호를 통해 기어(미도시)를 구동시킨다. 이 경우, 모터부(110)는 일반적으로 DC 모터일 수 있으며, AC 모터가 이용될 수도 있다.
백래쉬부(120)는 모터 회전에 따라 기어가 구동하는 동안 기어와 부하(130) 간의 백래쉬에 따른 외란 신호(d)를 산출한다. 이를 위해, 기어와 부하(130) 간의 백래쉬를 외부에서 가해지는 외란 신호로 모델링하고, 모델링된 백래쉬에 따른 토크 신호를 산출한다. 이 경우, 토크 신호는 모델링된 백래쉬를 거쳐 기어에서 부하(130)로 전달되는 토크를 의미한다. 또한, 백래쉬부(120)는 상기의 토크 신호를 외부에서 인가되는 외란 신호(d)로써 모터부(110)에 전달한다.
백래쉬부(120)는 외란 신호(d)를 부하(130)에 전달하여 부하(130)를 구동시킨다. 이 과정을 통해, 부하(130)에서 출력되는 출력 신호(y)는 외부로 출력됨과 동시에 감산기(107)에 전달되어 백래쉬부(120)로 다시 피드백될 수 있다. 이는, 부하(130) 구동시 발생하는 외란을 측정하기 위한 것이다.
외란 관측기(140)는 기준 전압(R) 및 모터부(110)에 후속하여 연결된 기어비(105)의 출력 신호를 수신한다. 그리고, 기준 전압(R)과 기어비(105)의 출력 신호를 비교하여 모터 제어 장치(100)에서 발생하는 외란(특히, 백래쉬로 인해 발생하는 외란)을 관측하고, 그 관측 결과를 관측 신호로 출력한다.
이 관측 신호는 외란 관측기(140)와 연결된 피드백 라인(150)을 통해 비교 기(101)로 입력된다. 이에 따라, 외부로부터 제공되는 기준 입력(R)에서 관측 신호가 감산되어 모터부(110)에 전달됨으로써, 모터 제어 장치(100)에서 발생하는 외란을 보상해줄 수 있게 된다.
도 2a 및 도 2b는 도 1에 도시된 모터 제어 장치에서 백래쉬 모델링에 따른 토크 신호 생성 방법을 나타내는 도면이다. 도 2a는 기어(1)와 부하(2) 사이에 존재하는 백래쉬를 모델링하는 방법을 나타내는 도면이며, 도 2b는 모델링된 백래쉬에 따른 기어와 부하 사이의 토크를 그래프화한 도면이다.
백래쉬(bl)란 기어(1)와 부하(2) 사이에 존재하는 공극에 의한 놀음으로, 이러한 백래쉬(bl)는 모터에서 발생된 토크가 기어(1)를 통해 부하(2)로 전달되는지 여부에 따라 데드존(dead zone) 모델로 설명될 수 있다.
도 2a에 도시된 것과 같이, 비선형 비틀림 스프링으로 기어(1)를 모델링하고, 비선형 비틀림 스프링에 대한 축의 강성(k)을 통해 부하(2)로 토크가 전달되는 구조를 갖는다. 이 같은 구조에서 기어(1)와 부하(2) 사이의 상대 변위와 백래쉬(bl) 크기에 따라 기어(1)에서 부하(2)로의 토크 전달 여부가 결정될 수 있다.
또한, 부하(2)로 전달되는 토크는 기어(1)가 부하(2)에 접촉되었는지 여부에 따라 다른 값을 가지게 된다. 구체적으로, 기어(1)와 부하(2)가 서로 떨어져 있을 때, 즉, 도 2a에 도시된 것과 같은 상태일 때는, 부하(2)로 전달되는 토크는 0이 된다. 이는, 기어(1)와 부하(2) 간의 상대 변위가 백래쉬(bl)보다 작은 경우에, 기어(1)가 백래쉬(bl)보다 작은 구간을 이동하게 되므로 부하(2)로 전달되는 토크는 0이 된다.
반면, 기어(1)와 부하(2)가 접촉하여 일 방향으로 이동할 때는, 소정의 값을 갖는 토크가 부하(2)로 전달된다. 이는, 기어(1)과 부하(2) 간의 상대 변위가 백래쉬(bl) 크기보다 큰 경우에, 기어(1)가 백래쉬(bl)보다 큰 구간을 이동하게 되므로, 부하(2)로 특정값을 갖는 토크가 전달된다.
기어(1)를 통해 부하(2)로 전달되는 토크는 다음과 같은 수학식 1 내지 3을 통해 얻어질 수 있다.
수학식 1 내지 3에서, TL은 기어(1)를 통해 부하(2)로 전달되는 토크, θm은 모터의 회전각도, θL은 부하(2)의 회전각도, θG는 기어(1)의 회전각도, β는 기어(1)와 부하(2) 간의 상대 변위, N은 기어비, bl은 백래쉬이며, k는 축의 강성 계수를 나타낸다.
도 2a에 도시된 방법을 통해 백래쉬를 모델링하고, 모델링된 백래쉬를 수학식 1 내지 3에 적용하여 도 2b에 도시된 것과 같은 그래프를 얻을 수 있다. 도 2b는 백래쉬(bl)에 따라 부하(2)에 전달되는 토크(TL)를 그래프화 것이다. 이렇게 얻어진 토크(TL) 신호를 도 1에 도시된 것과 같이, 모터부(110)에 제공하게 된다. 이에 따라, 모터부(110)는 토크(TL) 신호를 외부에서 가해지는 외란 신호(d)로 입력받게 된다.
도 2a 및 도 2b에 도시된 바와 같이, 비선형 요소인 백래쉬를 모델링하여 외란 신호를 생성하는 것으로, 결과적으로, 모터부(110)에 비선형 요소를 포함하는 외란 신호를 제공하여, 그에 대한 외란을 보상할 수 있도록 한다.
도 3은 도 1에 도시된 모터 제어 장치의 구성을 구체화한 도면이다. 도 3에 도시된 모터 제어 장치(100')는 도 1에 도시된 모터 제어 장치(100)와 동일한 것으로, 모터부(110), 백래쉬부(120) 및 외란 관측기(140)의 구성을 구체화한 것이다. 따라서, 모터부(110), 백래쉬부(120) 및 외란 관측기(140)에 대해서 보다 구체적으로 설명한다.
모터부(110)는 제1 감산기(111a), 제2 감산기(111b), 전류 변환부(113), 토크부(115), 회전부(117) 및 역기전력부(119) 및 적분기(103)를 포함한다.
전류 변환부(113)는 모터부(110)에 입력되는 기준 전압(R)을 전류로 변환하는 역할을 한다. 구체적으로, 전류 변환부(113)는 임피던스 1/Ls+R에 대한 전달함수 형태로 표현되어, 기준 전압(R)을 전류로 변환시킨다.
토크부(115)는 전류 변환부(110)를 통해 전달되는 전류에 토크 상수(kt)를 인가하여, 변환된 전류에 비례하는 토크를 출력한다.
한편, 제2 감산기(111b)는 토크부(115)에서 전달되는 토크에서 백래쉬부(120)로부터 제공되는 외란 신호(d)를 감산하여, 그에 대한 토크 수정값을 출력한다.
회전부(117)는 제어 대상을 지칭하는 것으로, 모터가 될 수 있다. 이 회전 부(117)는 제2 감산기(111b)를 통해 출력되는 토크 수정값에 의해 구동되며, 토크 수정값에 대응되는 각속도로 회전하게 된다.
역기전력부(119)는 회전부(117)의 각속도에 역기전력 상수를 인가하여 역기전력 전압을 출력한다. 그리고, 출력된 역기전력 전압을 제1 감산기(111a)에 전달한다.
제1 감산기(111a)는 기준 전압(R)에서 역기전력부(119)로부터 전달받은 역기전력 전압을 감산하여 감산 결과값을 생성한다. 이 경우, 감산 결과값은 백래쉬부(120)에서 제공된 외란 신호에 의해 회전부(117)의 구동에 오차가 발생하는 것을 보상해주기 위한 것으로, 전류 제어부(113)에 제공된다.
한편, 적분기(103)는 모터부(110)의 회전부(117)에 의해 각속도가 출력되면, 이 각속도를 적분하여 각 변위로 변환한다. 그리고, 기어비(105)를 통해 각변위를 소정의 기어비로 처리하여 그에 따른 출력 신호를 생성한다.
백래쉬부(120)는 모터부(110)의 기어비(105)에서 출력되는 출력 신호를 제공받아 외란 신호(d)를 출력한다. 이 때, 외란 신호(d)는 기어(미도시)와 부하(130) 사이의 백래쉬에 의해 발생하는 외란을 의미하는 것으로, 기어에서 부하로 전달되는 토크(TL) 신호가 될 수 있다. 이 경우, DC 제어부(110)의 토크부(115)에서 출력된 토크와 상기의 토크(TL) 신호가 동일하면 백래쉬에 의한 외란이 발생되지 않은 이상적인 상태가 된다. 하지만, 기어와 부하(130) 사이의 백래쉬에 의해 외란이 발생함에 따라, 토크부(115)에서 출력된 토크와 상기의 토크(TL) 신호가 동일하지 않게 된다. 따라서, 백래쉬부(120)는 백래쉬(121)를 모델링하여 외란신호를 생성하고, 백래쉬(121)와 기어의 축의 강성 계수(k)를 고려하여 토크 신호(TL)를 출력한다. 이렇게 출력된 토크(TL) 신호를 모터부(110)의 제2 감산기(111b)에 외부에서 인가되는 외란 신호(d)로 제공한다. 이에 대한 구체적인 설명은 도 2a 및 도 2b를 통해 제공하였다.
외란 관측기(140)는 플랜트 모델링부(141), 필터링 플랜트 역모델링부(145) 및 제3 감산기(143)를 포함한다.
플랜트 모델링부(141)는 기준 전압(R)을 제공받아 기준 전압에서 외란 신호를 검출한다. 이 경우, 플랜트 모델링부(141)는 제1 감산기(111a), 전류 변환부(113), 토크부(115) 및 역기전력부(119)로 구성된 하나의 플랜트(P1)이다. 따라서, 플랜트 모델링부(141)는 플랜트(P1)에 대한 전달함수로 모델링된다. 구체적으로, 플랜트 모델링부(141)는 제1 감산기(111a)에 대한 전달함수와 전류 변환부(113)에 대한 전달함수, 그리고 토크 상수(Kt) 및 역기전력 상수(Kb)를 더하여 플랜트(a)를 모델링(P1)한 것이다. 이 같이 모델링된 플랜트 모델링부(141)는 기준 전압(R)이 통과하게 되면 외란 신호를 검출한다.
필터링 플랜트 역모델링부(145)는 기어비(105)에서 출력되는 출력 신호에서 고주파 성분을 제거하고 외란 성분을 검출한다. 이 경우, 필터링 플랜트 역모델링부(145)는 저역 통과 필터(미도시)를 포함하는 것으로, 이 저역 통과 필터를 이용하여 기어비(105)에서 출력되는 출력 신호에서 고주파 성분을 제거한다.
한편, 필터링 플랜트 역모델링부(145)는 모터부(110)의 회전부(117), 적분기(103), 기어비(105), 백래쉬(121) 및 부하(130) 및 기어에 대한 축의 강성 계수(k)를 하나의 플랜트(P2)로 보고, 이 플랜트(P2)를 역모델링한 것이다. 구체적으로, 필터링 플랜트 역모델링부(145)는 회전부(117)의 전달함수, 적분기(103)의 전달함수, 기어비(105), 백래쉬(121)에 대한 값, 부하(130)의 전달함수 및 기어에 대한 축의 강성 계수(K)를 더하고, 그 결과값이 전달함수에서 분모와 분자의 위치를 바꾸는 방식으로 플랜트(P2)를 역모델링(P2-1)한 것이다. 저역 통과 필터에 의해 고주파 성분이 제거된 출력 신호는 상술한 바와 같이 역모델링된 필터링 플랜트 역모델링부(145)를 통과하면서 외란 성분이 검출될 수 있게 된다.
제3 감산기(143)는 플랜트 모델링부(141)에서 출력된 외란 성분에서 필터링 플랜트 역모델링부(145)에서 검출된 외란 성분을 감산하여 백래쉬에 대한 관측 신호를 출력한다.
피드백 라인(150)은 외란 관측기(140)의 제3 감산기(143)를 통해 출력되는 백래쉬에 대한 관측 신호를 비교기(101)로 전달하여, 기준 전압(R)을 조정한다. 즉, 모터 제어 장치(100')에 입력되는 기준 전압(R)에서 관측 신호를 감산하여 그 감산 결과값이 모터부(110)에 입력되도록 한다. 이 같은 방법으로 모터 제어 장치(100')에서 발생하는 백래쉬를 관측하고 보상하여 줌으로써, 보다 정확한 동작을 구현하는 모터 제어 장치(100')를 제공할 수 있게 된다.
한편, 플랜트 모델링부(141)는 모터 제어 장치(100')의 초기 동작시(예를 들어, 최초 구동시, 또는 리셋 구동시)에는 모터 제어 장치(100')에 입력되는 기준 전압(R)을 제공받지만, 지속적으로 구동되는 경우에는 비교기(101)를 통해 조정된 기준 전압을 제공받을 수 있게 된다. 즉, 플랜트 모델링부(141)는 모터 제어 장치(100')에 입력되는 기준 전압(R)에서 피드백 라인(150)을 통해 전달되는 관측 신호를 감산하는 방식으로 조정된 기준 전압을 제공받게 된다. 따라서, 플랜트 모델링부(141)는 조정된 기준 전압에서 외란 신호를 검출하게 된다.
도 3에 도시된 외란 관측기(140)에서 플랜트 모델링부(141) 및 필터링 플랜트 모델링부(145)는 백래쉬에 따른 외란을 관측하여, 그 관측 신호로 모터 제어 장치(100')의 외란을 양호한 형태로 보상한다. 하지만, 플랜트 모델링부(141) 및 필터링 플랜트 모델링부(145)를 실제 장치에 적용하는 경우, 전달함수 형태의 수학식에 파라미터를 대입하게 되면 수학식은 고차항 형태로 이루어지게 된다. 따라서, 수학식을 마이크로 프로세서에서 연산 가능한 형태로 간략화하여 실제 장치에 적용 이 용이하도록 한다.
간략화되지 않은 플랜트 모델링부(141) 및 필터링 플랜트 역모델링부(145)각각은 수학식 4와 같이 모델링될 수 있다.
수학식 4가 플랜트 모델링부(141)에 적용되는 경우, a1, a2, …, aq 및 b1, b2, …, bp는 전류 변환부(113), 토크부(115), 역기전력부(119) 및 제1 감산기(111a)에 대한 파라미터 입력값들이다. 즉, 수학식 4가 플랜트 모델링부(141)에 적용되는 경우, 전류 변환부(113), 토크부(115), 역기전력부(119) 및 제1 감산기(111a) 각각의 전달함수를 모두 더하고, 파라미터 입력값을 입력할 수 있다.
또한, 수학식 4가 필터링 플랜트 역모델링부(145)에 적용되는 경우, 회전부(117), 적분기(103), 기어비(105), 백래쉬(121), 부하(130) 및 기어에 대한 축의 강성 계수(k)에 대한 파라미터 입력값이될 수 있다. 또한, 수학식 4에서 l 및 m은 10~20 범위의 수를 갖는다.
예를 들어, 간략화되지 않은 수학식 4로 모델링된 플랜트 모델링부(141) 및 필터링 플랜트 역모델링부(145) 각각에 파라미터 입력값을 대입하면, 다음의 수학 식 5 및 6이 될 수 있다.
수학식 4에서 R1은 플랜트 모델링부(141)에 파라미터 값을 대입한 것이며, 수학식 5에서 R2는 필터링 플랜트 역모델링부(145)에 파라미터 값을 대입한 것이다. 이 경우, R1 및 R2를 참조하면, 앞서 설명한 바와 같이 고차항 형태로 이루어져 있어 연산 과정이 복잡하다. 따라서, 이 같은 연산 과정을 간략화하기 위해 수학식 4를 인수분해할 수 있다. 구체적으로, 수학식 4를 인수분해하여 값이 유사한 분자, 분모의 항들을 소거하는데, 이 과정에서 수학식 4로 표현되는 플랜트 모델링부(141) 및 필터링 플랜트 역모델링부(145)를 간략화하기 전과 후의 전달함수 DC 게인이 동일하도록 유지시키는 것이 필요하다. 이는 플랜트 모델링부(141) 및 필터링 플랜트 역모델링부(145)의 전달함수 저주파 특성을 동일하게 유지하기 위한 것이다.
수학식 4의 간략화를 위한 인수분해는 다음의 수학식 7을 통해 이루어질 수 있다.
수학식 7을 이용하여 수학식 4를 인수분해하면, 다음의 수학식 8과 같이 간략화된다. 즉, 본 발명에 따른 플랜트 모델링부(141) 및 필터링 플랜트 역모델링부(145)는 수학식 8로 모델링될 수 있다.
수학식 8이 플랜트 모델링부(141)에 적용되는 경우, a1, a2, …, aq 및 b1, b2, …, bp는 전류 변환부(113), 토크부(115), 역기전력부(119) 및 제1 감산기(111a)에 대한 파라미터 입력값들이다. 또한, 수학식 8이 필터링 플랜트 역모델링부(145)에 적용되는 경우, 회전부(117), 적분기(103), 기어비(105), 백래쉬(121), 부하(130) 및 기어에 대한 축의 강성 계수(k)에 대한 파라미터 입력값이될 수 있다. 이러한 파라미터 입력값은 정해진 값이 아니며, 변경될 수 있는 값들이다. 또한, p 및 q는 3~5 범위의 수를 갖는다.
예를 들어, 간략화된 수학식 8로 모델링된 플랜트 모델링부(141) 및 필터링 플랜트 역모델링부(145) 각각에 파라미터 값을 대입하면, 다음의 수학식 9 및 10과 같다.
R1은 플랜트 모델링부(141)에 파라미터 값을 대입한 것이며, R2는 필터링 플랜트 역모델링부(145)에 파라미터 값을 대입한 것으며, 수학식 5 및 6과 비교할 때 보다 간략화된 연산 과정을 갖는다. 이에 따라, 마이크로 프로세서를 통해 연산 처리할 수 있게 되어 실제 장치에 적용하는 것이 용이해진다.
한편, 수학식 5 및 6, 그리고, 수학식 9 및 10에 입력된 파라미터 값들은 모터 제어 장치에 실질적으로 적용되는 것이나, 이는 일 실시 예에 불과한 것으로 이에 한정되지 않으며 각 모터 제어 장치에 따라서 상이한 파라미터 값이 입력될 수 있다.
이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안 될 것이다.