KR100462612B1 - 직류 모터 제어 방법 및 장치 - Google Patents
직류 모터 제어 방법 및 장치 Download PDFInfo
- Publication number
- KR100462612B1 KR100462612B1 KR10-2002-0039153A KR20020039153A KR100462612B1 KR 100462612 B1 KR100462612 B1 KR 100462612B1 KR 20020039153 A KR20020039153 A KR 20020039153A KR 100462612 B1 KR100462612 B1 KR 100462612B1
- Authority
- KR
- South Korea
- Prior art keywords
- speed
- interrupt
- error
- control signal
- determined
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P6/00—Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
- H02P6/14—Electronic commutators
- H02P6/16—Circuit arrangements for detecting position
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
- G05B19/4062—Monitoring servoloop, e.g. overload of servomotor, loss of feedback or reference
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/41—Servomotor, servo controller till figures
- G05B2219/41329—Dc motor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/42—Servomotor, servo controller kind till VSS
- G05B2219/42306—Excess in error, compare reference with feedback
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/42—Servomotor, servo controller kind till VSS
- G05B2219/42307—Compare actual feedback with predicted, simulated value to detect run away
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Power Engineering (AREA)
- Control Of Direct Current Motors (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
직류 모터 제어 방법 및 장치가 개시된다. 대상을 구동시키는 직류 모터를 제어하는 이 방법은, 대상의 위치를 초기화시키는 (a) 단계와, 대상의 위치가 목표 위치인가를 판단하는 (b) 단계와, 대상의 위치가 목표 위치가 아닌 것으로 판단되면, 제1 인터럽트가 발생했는가를 판단하고, 제1 인터럽트가 발생하지 않았다고 판단되면 (b) 단계로 진행하는 (c) 단계와, 제1 인터럽트가 발생했다고 판단되면, 소정의 속도 궤적에서 제1 인터럽트가 발생한 시점에 상응하는 기준 속도를 찾고, 대상의 위치를 구하고, 제2 인터럽트마다 갱신되는 대상의 현재 속도를 계산하고, 기준 속도와 현재 속도간의 차이를 구하는 (d) 단계와, 차이가 속도 에러 제한값보다 큰가를 판단하고, 차이가 속도 에러 제한값보다 크지 않은 것으로 판단되면 (b) 단계로 진행하는 (e) 단계 및 차이가 속도 에러 제한값보다 큰 것으로 판단되면, 에러가 발생하였음을 알리는 (f) 단계를 구비하고, 제2 인터럽트는 제1 인터럽트보다 더 빈번하게 발생되는 것을 특징으로 한다. 그러므로, 대상의 에러를 민감하게 감지할 수 있을 뿐만 아니라 외부의 간섭으로부터 직류 모터 및 대상의 안정성을 확보시킬 수 있고 불필요한 전력 소모를 방지시킬 수 있으며 대상의 위치가 변화되지 않음에도 불구하고 계속적으로 PWM 신호의 듀티를 증가시킴으로 인해 발생할 수 있는 전술한 종래의 여러가지 제반 문제들을 해결할 수 있는 효과를 갖는다.
Description
본 발명은 직류(DC:Direct Current) 모터에 관한 것으로서, 특히 직류 모터에 의해 구동되는 대상을 제어하는 방법 및 장치에 관한 것이다.
일반적으로 잉크 젯 프린터 혹은 복합기에서 헤드를 장착한 캐리어를 구동시키기 위한 구동원으로서 모터 예를 들면 직류(DC) 모터 또는 스텝(step) 모터를 사용한다. 특히, 직류 모터를 이용하여 캐리어를 구동할 때 사람에 의해 혹은 다른 외부 요인에 의해 캐리어에 간섭이 발생할 수 있다. 이 경우, 종래의 모터 제어 방법은, 간섭이 너무 심한 경우에도 구동중인 모터를 정지시킬 수 없으며, 사용자에게 이러한 상황을 알릴 수도 없었다. 즉, 종래의 모터 제어 방법은 외부 간섭이 발생할 경우 간섭을 극복하기 위해 모터를 제어하는 펄스 폭 변조(PWM:Pulse Width Modulaton) 신호의 듀티를 계속해서 증가시킨다. 이와 같이 듀티를 계속해서 증가시킴에도 불구하고 직류 모터에 의해 제어되는 대상 즉, 캐리어의 위치가 목표 위치로 조정되지 않으면, 대상에 에러가 발생한 것으로 결정한다.
결국, 전술한 종래의 모터 제어 방법은 직류 모터의 구동중에 외부 간섭이 발생할 때 대상의 속도 정보를 이용하지 않고 위치 정보만을 이용하여 대상의 위치 변화를 시도한다. 따라서, 대상에 에러가 발생하였는가를 민감하게 검출할 수 없는 문제점이 있다. 또한, 이와 같이 에러 검출의 민감도가 낮기 때문에, 외부 간섭을 극복하기 위해 PWM 신호의 출력값이 최대화될 경우, 캐리어의 움직임중에 용지가 찢어질 수 있는 등의 문제가 발생할 수 있다. 게다가, 직류 모터의 구동중에, 대상의 위치가 목표 위치로 접근하지 않으면 위치를 변화시키기 위해 PWM 신호의 듀티를 계속해서 증가시키므로 전력을 상당히 소모시키는 문제점을 갖는다.
본 발명이 이루고자 하는 기술적 과제는, 직류 모터에 의해 구동되는 대상이 외부 간섭에 의해 에러를 발생시킬 경우 이를 감지하여 사용자에게 알리는 한편,부가적으로 직류 모터의 동작을 정지시킬 수도 있는 직류 모터 제어 방법을 제공하는 데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는, 상기 직류 모터 제어 방법을 수행하는 직류 모터 제어 장치를 제공하는 데 있다.
도 1은 본 발명에 의한 직류 모터 제어 방법의 일 실시예를 설명하기 위한 플로우차트이다.
도 2는 소정의 속도 궤적과 실제 속도 궤적을 예시적으로 나타내는 그래프이다.
도 3은 본 발명에 의한 직류 모터 제어 방법의 다른 실시예를 설명하기 위한 플로우차트이다.
도 4는 본 발명에 의한 직류 모터 제어 방법을 수행하는 본 발명에 의한 직류 모터 제어 장치의 블럭도이다.
도 5는 잉크 젯 프린터 또는 복합기의 블럭도이다.
상기 과제를 이루기 위해, 대상을 구동시키는 직류 모터를 제어하는 본 발명에 의한 직류 모터 제어 방법은, 상기 대상의 위치를 초기화시키는 (a) 단계와, 상기 대상의 위치가 목표 위치인가를 판단하는 (b) 단계와, 상기 대상의 위치가 상기 목표 위치가 아닌 것으로 판단되면, 제1 인터럽트가 발생했는가를 판단하고, 상기 제1 인터럽트가 발생하지 않았다고 판단되면 상기 (b) 단계로 진행하는 (c) 단계와, 상기 제1 인터럽트가 발생했다고 판단되면, 소정의 속도 궤적에서 상기 제1 인터럽트가 발생한 시점에 상응하는 기준 속도를 찾고, 상기 대상의 위치를 구하고, 제2 인터럽트마다 갱신되는 상기 대상의 현재 속도를 계산하고, 상기 기준 속도와 상기 현재 속도간의 차이를 구하는 (d) 단계와, 상기 차이가 속도 에러 제한값보다 큰가를 판단하고, 상기 차이가 상기 속도 에러 제한값보다 크지 않은 것으로 판단되면 상기 (b) 단계로 진행하는 (e) 단계 및 상기 차이가 상기 속도 에러 제한값보다 큰 것으로 판단되면, 에러가 발생하였음을 알리는 (f) 단계로 이루어지고, 상기 제2 인터럽트는 상기 제1 인터럽트보다 더 빈번하게 발생되는 것이 바람직하다.
상기 다른 과제를 이루기 위해, 대상을 구동시키는 직류 모터를 제어하는 본 발명에 의한 직류 모터 제어 장치는, 상기 대상의 위치를 버퍼링하여 출력하는 버퍼와, 목표 위치와 상기 버퍼로부터 입력한 상기 대상의 위치를 제1 제어 신호 및 제1 인터럽트에 응답하여 비교하고, 비교된 결과를 제2 제어 신호로서 출력하는 제1 비교부와, 상기 제2 제어 신호 및 상기 제1 인터럽트에 응답하여, 소정의 속도 궤적에서 상기 제1 인터럽트가 발생한 시점에 상응하는 기준 속도를 찾는 기준 속도 검출부와, 상기 제2 제어 신호 및 상기 제1 인터럽트에 응답하여, 상기 대상의 위치를 검색하고, 검색된 상기 대상의 위치를 상기 버퍼로 출력하는 위치 검색부와, 상기 제2 제어 신호 및 상기 제1 인터럽트에 응답하여, 제2 인터럽트마다 갱신되는 상기 대상의 현재 속도를 계산하는 현재 속도 계산부와, 상기 기준 속도와 상기 현재 속도간의 차이를 계산하고, 계산된 상기 차이를 출력하는 차 검출부와, 상기 차이와 속도 에러 제한값을 비교하고, 비교된 결과를 상기 제1 제어 신호로서 출력하는 제2 비교부 및 상기 제1 제어 신호에 응답하여, 에러가 발생하였음을 사용자에게 알리는 에러 알림부로 구성되고, 상기 제2 인터럽트는 상기 제1 인터럽트보다 더 빈번하게 발생되는 것이 바람직하다.
이하, 본 발명에 의한 직류 모터 제어 방법을 첨부한 도면들을 참조하여 다음과 같이 설명한다.
도 1은 본 발명에 의한 직류 모터 제어 방법의 일 실시예를 설명하기 위한 플로우차트로서, 대상의 위치가 목표 위치가 아니고 제1 인터럽트가 발생하였을 때 기준 속도와 현재 속도간의 차이를 구하는 단계(제10 ∼ 제16 단계들) 및 차이가 속도 에러 제한값보다 클 때 에러를 알리는 단계(제18 및 제20 단계들)로 이루어진다.
도 1에 도시된 본 발명에 의한 직류(DC) 모터 제어 방법은 대상(object)을 구동시키는 직류 모터를 제어한다. 이를 위해, 먼저, 대상의 위치를 초기화시킨다(제10 단계).
제10 단계후에, 대상의 위치가 목표 위치인가를 판단한다(제12 단계). 만일, 대상의 위치가 목표 위치인 것으로 판단되면, 도 1에 도시된 본 발명에 의한 직류 모터 제어 방법을 종료한다. 이 때, 본 발명에 의한 직류 모터 제어 방법은 대상의 위치가 목표 위치인 것으로 판단되면, 직류 모터의 움직임을 멈추게 한다.
그러나, 대상의 위치가 목표 위치가 아닌 것으로 판단되면, 제1 인터럽트가 발생했는가를 판단한다(제14 단계).
도 2는 소정의 속도 궤적(26)과 실제 속도 궤적(28)을 예시적으로 나타내는 그래프로서, 횡축은 시간을 나타내고 종축은 속도를 각각 나타낸다. 도 2에 도시된 바와 같이, 대상은 시간이 경과함에 따라 가속되어 정속에 도달하고, 정속에 도달한 후 시간이 지남에 따라 감속된다고 가정한다.
만일, 제1 인터럽트가 발생하지 않았다고 판단되면, 제12 단계로 진행한다. 그러나, 제1 인터럽트가 발생했다고 판단되면, 소정의 속도 궤적에서 제1 인터럽트가 발생한 시점에 상응하는 기준 속도를 찾고, 대상의 위치를 구하며, 제2 인터럽트마다 갱신되는 대상의 현재 속도를 계산하고, 기준 속도와 현재 속도간의 차이를 구한다(제16 단계). 이 때, 제2 인터럽트는 제1 인터럽트보다 더 빈번하게 발생된다. 예를 들어, 도 2에 도시된 시점(t1)에서 제1 인터럽트가 발생하였다면, 기준 속도는 도 2에 도시된 v1이 된다. 이와 같이, 제1 인터럽트가 발생한 시점이 점차 증가함에 따라 기준 속도는 속도 궤적에서 목표 속도(30)에 수렴하게 된다.
제16 단계후에, 대상의 기준 속도와 현재 속도간의 차이가 소정의 속도 에러 제한값보다 큰가를 판단한다(제18 단계). 만일, 대상의 기준 속도와 현재 속도간의 차이가 소정의 속도 에러 제한값보다 크지 않은 것으로 판단되면, 제12 단계로 진행한다.
그러나, 대상의 기준 속도와 현재 속도간의 차이가 속도 에러 제한값보다 큰 것으로 판단되면, 에러가 발생하였음을 사용자에게 알린다(제20 단계). 예를 들어 도 2를 참조하면, 시간(t2)에서 외부 간섭이 발생하여 소정의 속도 궤적(26)으로부터 실제 속도 궤적(28)으로 속도가 이탈된다고 가정할 때 기준 속도(30)와 현재 속도간의 차이가 속도 에러 제한값(32)보다 큰 것으로 판단되면, 직류 모터에 의해 제어되는 대상에 에러가 발생하였음을 사용자에게 알린다. 따라서, 사용자는 에러가 발생하였음을 알 수 있다. 이 때, 본 발명에 의하면, 대상의 기준 속도와 현재 속도간의 차이가 속도 에러 제한값보다 큰 것으로 판단되어 에러가 발생하였음을 사용자에게 알릴 때, 직류 모터의 움직임을 멈추게 할 수 있다.
도 3은 본 발명에 의한 직류 모터 제어 방법의 다른 실시예를 설명하기 위한 플로우차트로서, 대상의 위치가 목표 위치가 아니고 제1 인터럽트가 발생하였을 때 기준 속도와 현재 속도간의 차이를 구하는 단계(제40 ∼ 제46 단계들), 차이와 속도 에러 제한값간의 대소에 따라 속도 에러 카운트값을 달리 구하는 단계(제48∼ 제52 단계들) 및 속도 에러 카운트값이 에러 카운트 제한값보다 클 때 에러를 알리는 단계(제54 및 제56 단계들)로 이루어진다.
도 3에 도시된 제40, 제42, 제44, 제46 및 제48 단계들 각각은 도 1에 도시된 제10, 제12, 제14, 제16 및 제18 단계들 각각에 해당하며 동일한 동작을 수행하므로, 그들에 대한 상세한 설명은 생략한다.
한편, 도 3에 도시된 직류 모터 제어 방법에서, 기준 속도와 현재 속도간의 차이가 속도 에러 제한값보다 큰 것으로 판단되면, 속도 에러 카운트값을 증가시킨다(제50 단계). 예를 들어 도 2를 참조하면, 시간(t2)에서 외부 간섭이 발생하여 소정의 속도 궤적(26)으로부터 실제 속도 궤적(28)으로 속도가 이탈하였다고 가정할 때, 기준 속도(30)와 현재 속도간의 차이가 속도 에러 제한값(32)보다 큰 것으로 판단되면, 속도 에러 카운트값을 증가시킨다. 그러나, 기준 속도와 현재 속도간의 차이가 속도 에러 제한값보다 크지 않은 것으로 판단되면, 속도 에러 카운트값을 리셋시킨다(제52 단계).
제50 또는 제52 단계후에, 속도 에러 카운트값이 에러 카운트 제한값보다 큰가를 판단한다(제54 단계). 여기서, 속도 에러 카운트값은 대상의 속도가 에러를 갖는 지속 시간을 의미한다. 이 때, 전술한 속도 에러 제한값 및 에러 카운트 제한값은 어느 정도로 대상의 에러를 민감하게 검출할 것인가에 따라 결정된다.
만일, 속도 에러 카운트값이 에러 카운트 제한값보다 크지 않은 것으로 판단되면, 제42 단계로 진행한다. 그러나, 속도 에러 카운트값이 에러 카운트 제한값보다 큰 것으로 판단되면, 에러가 발생하였음을 사용자에게 알린다(제56 단계). 예를들어 도 2를 참조하면, 대상의 속도가 에러를 갖는 지속 시간(t3-t2)이 에러 카운트 제한값(34)보다 큰 것으로 판단되면, 대상에 에러가 발생하였음을 시점(t3)에서 사용자에게 알린다.
본 발명에 의하면, 도 3에 도시된 직류 모터 제어 방법은 대상의 위치가 목표 위치인 것으로 판단되면 직류 모터의 움직임을 멈추게 할 수 있다. 또한, 도 3에 도시된 직류 모터 방법은 속도 에러 카운트값이 에러 카운트 제한값보다 큰 것으로 판단되면, 에러가 발생하였음을 사용자에게 알리는 한편, 직류 모터의 움직임을 멈추게 할 수 있다.
이하, 전술한 직류 모터 제어 방법을 수행하는 본 발명에 의한 직류 모터 제어 장치의 구성 및 동작을 첨부한 도면들을 참조하여 다음과 같이 설명한다.
도 4는 본 발명에 의한 직류 모터 제어 방법을 수행하는 본 발명에 의한 직류 모터 제어 장치의 블럭도로서, 버퍼(70), 제1 비교부(72), 기준 속도 검출부(74), 위치 검색부(76), 현재 속도 계산부(78), 차 검출부(80), 제2 비교부(82), 에러 알림부(84), 카운터(86), 제3 비교부(88) 및 모터 제어부(90)로 구성된다.
도 4에 도시된 직류 모터 제어 장치는 대상을 구동시키는 직류 모터를 제어하기 위해 도 1 또는 도 3에 도시된 직류 모터 제어 방법을 수행한다.
먼저, 버퍼(70)는 직류 모터에 의해 제어되는 대상의 위치를 버퍼링하고, 버퍼링된 결과를 제1 비교부(72)로 출력한다. 이 때, 도 1에 도시된 제10 또는 도 3에 도시된 제40 단계를 수행하기 위해, 초기 상태에서 버퍼(70)는 초기화된다. 따라서, 초기 상태에서 초기화된 대상의 위치가 제1 비교부(72)로 출력된다.
제12 단계를 수행하기 위해, 제1 비교부(72)는 입력단자 IN1을 통해 입력한 목표 위치와 버퍼(70)로부터 입력한 대상의 위치를 제2 비교부(82)로부터 입력한 제1 제어 신호(C1) 및 제1 인터럽트(I1)에 응답하여 비교하고, 비교된 결과를 제2 제어 신호(C2)로서 출력한다. 여기서, 제1 인터럽트(I1)는 제1 인터럽트가 발생될 때 발생된다.
또는, 제42 단계를 수행하기 위해, 제1 비교부(72)는 제3 비교부(88)로부터 입력한 제3 제어 신호(C3) 또는 제1 인터럽트(I1)에 응답하여 목표 위치와 대상의 위치를 비교하고, 비교된 결과를 제2 제어 신호(C2)로서 출력할 수도 있다. 예컨대, 제1 비교부(72)는 제1 인터럽트(I1)를 통해 제1 인터럽트가 발생하지 않았다고 인식되면, 입력단자 IN1을 통해 입력한 목표 위치와 버퍼(70)로부터 입력한 대상의 위치를 비교하고, 비교된 결과를 제2 제어 신호(C2)로서 출력한다.
제16 또는 제46 단계를 수행하기 위해, 도 4에 도시된 직류 모터 제어 장치는 기준 속도 검출부(74), 위치 검색부(76), 현재 속도 계산부(78) 및 차 검출부(80)를 마련할 수 있다.
여기서, 기준 속도 검출부(74)는 제1 비교부(72)로부터 입력한 제2 제어 신호(C2) 및 제1 인터럽트(I1)에 응답하여, 예를 들면 도 2에 도시된 소정의 속도 궤적(26)에서 제1 인터럽트가 발생한 시점에 상응하는 기준 속도를 찾는다. 예컨대, 제2 제어 신호(C2)를 통해 대상의 위치가 목표 위치가 아닌 것으로 인식되고 제1인터럽트(I1)를 통해 제1 인터럽트가 발생한 것으로 인식되면, 기준 속도 검출부(74)는 소정의 속도 궤적에서 제1 인터럽트가 발생한 시점에 상응하는 기준 속도를 찾고, 찾아진 기준 속도를 차 검출부(80)로 출력한다.
이 때, 위치 검색부(76)는 제1 비교부(72)로부터 입력한 제2 제어 신호(C2) 및 제1 인터럽트(I1)에 응답하여, 대상의 위치를 검색하고, 검색된 대상의 위치를 버퍼(70)로 출력한다. 예컨대, 제2 제어 신호(C2)를 통해 대상의 위치가 목표 위치가 아닌 것으로 인식되고 제1 인터럽트(I1)를 통해 제1 인터럽트가 발생한 것으로 인식되면, 대상의 위치를 검색한다. 여기서, 버퍼(70)는 위치 검색부(76)로부터 대상의 위치가 입력될 때마다 이전에 입력한 대상의 위치를 갱신하고, 갱신된 대상의 위치를 제1 비교부(72)로 출력한다.
또한, 현재 속도 계산부(78)는 제1 비교부(72)로부터 입력한 제2 제어 신호(C2) 및 제1 인터럽트(I1)에 응답하여, 제2 인터럽트마다 갱신되는 대상의 현재 속도를 계산하고, 계산된 대상의 현재 속도를 차 검출부(80)로 출력한다. 예컨대, 제2 제어 신호(C2)를 통해 대상의 위치가 목표 위치가 아닌 것으로 인식되고 제1 인터럽트(I1)를 통해 제1 인터럽트가 발생한 것으로 인식되면, 현재 속도 계산부(78)는 제2 인터럽트마다 갱신되는 대상의 현재 속도를 계산한다. 차 검출부(80)는 기준 속도 검출부(74)로부터 입력한 기준 속도와 현재 속도 계산부(78)로부터 입력한 현재 속도간의 차이를 계산하고, 계산된 차이를 제2 비교부(82)로 출력한다.
예를 들어, 직류 모터에 의해 제어되는 대상이 잉크 젯 프린터 또는 복합기의 캐리어일 경우, 입력단자 IN2를 통해 인코더 센서부(미도시)로부터 구형파 신호를 입력하고, 구형파 신호를 이용하여, 위치 검색부(76)는 캐리어의 위치를 구하고 현재 속도 계산부(78)는 캐리어의 현재 속도를 구할 수 있다. 여기서, 인코더 센서부는 캐리어의 움직임을 센싱하고, 센싱된 결과를 구형파 신호로서 위치 검색부(76) 및 현재 속도 계산부(78)로 각각 출력한다. 이 때, 구형파 신호는 캐리어의 위치 및 속도에 대한 정보를 갖고 있다.
제18 또는 제48 단계를 수행하기 위해, 제2 비교부(82)는 처 검출부(80)로부터 입력한 차이와 입력단자 IN3을 통해 입력한 속도 에러 제한값을 비교하고, 비교된 결과를 제1 제어 신호(C1)로서 에러 알림부(84)로 출력한다.
제20 단계를 수행하기 위해, 에러 알림부(84)는 제2 비교부(82)로부터 입력한 제1 제어 신호(C1)에 응답하여, 에러가 발생하였음을 사용자에게 출력단자 OUT1을 통해 알린다. 예컨대, 제2 비교부(82)로부터 입력한 제1 제어 신호(C1)를 통해 기준 속도와 현재 속도간의 차이가 속도 에러 제한값보다 큰 것으로 인식되면, 에러 알림부(84)는 대상에 에러가 발생하였음을 사용자에게 출력단자 OUT1을 통해 알린다. 여기서, 제2 비교부(82)로부터 입력한 제1 제어 신호(C1)를 통해 기준 속도와 현재 속도간의 차이가 속도 에러 제한값보다 크지 않은 것으로 인식되면, 제12 단계를 수행하기 위해, 제1 비교부(72)는 대상의 위치와 목표 위치를 비교한다.
제50 및 제52 단계들을 수행하기 위해, 카운터(86)는 제2 비교부(82)로부터 입력한 제1 제어 신호(C1)에 응답하여 카운팅 동작을 수행하거나 리셋되며, 카운팅된 결과를 속도 에러 카운트값으로서 제3 비교부(88)로 출력한다. 예컨대, 제2 비교부(82)로부터 입력한 제1 제어 신호(C1)를 통해 기준 속도와 현재 속도간의 차이가 속도 에러 제한값보다 큰 것으로 인식되면, 카운터(86)는 카운팅 동작을 수행하여 속도 에러 카운트값을 증가시킨다. 그러나, 제1 제어 신호(C1)를 통해 기준 속도와 현재 속도간의 차이가 속도 에러 제한값보다 크지 않은 것으로 인식되면, 카운터(86)는 카운팅된 결과 즉, 속도 에러 카운트값을 리셋시킨다.
제54 단계를 수행하기 위해, 제3 비교부(88)는 카운터(86)로부터 입력한 속도 에러 카운트값과 입력단자 IN4를 통해 입력한 에러 카운트 제한값을 비교하고, 비교된 결과를 제3 제어 신호(C3)로서 출력한다. 여기서, 제3 비교부(88)로부터 입력한 제3 제어 신호(C3)를 통해 속도 에러 카운트값이 에러 카운트 제한값보다 크지 않은 것으로 인식되면, 제42 단계를 수행하기 위해, 제1 비교부(72)는 대상의 위치와 목표 위치를 비교한다.
제56 단계를 수행하기 위해, 에러 알림부(84)는 제3 비교부(88)로부터 입력한 제3 제어 신호(C3)에 응답하여, 에러가 발생하였음을 사용자에게 알린다. 예컨대, 제3 제어 신호(C3)를 통해 속도 에러 카운트값이 에러 카운트 제한값보다 큰 것으로 인식되면, 에러 알림부(84)는 대상에 에러가 발생하였음을 사용자에게 출력단자 OUT1을 통해 알린다.
본 발명에 의하면, 도 4에 도시된 직류 모터 제어 장치는 모터 제어부(90)를 더 마련할 수 있다. 여기서, 모터 제어부(90)는 제2 비교부(72)로부터 입력한 제2 제어 신호(C2) 또는 제3 비교부(88)로부터 입력한 제3 제어 신호(C3)에 응답하여 제4 제어 신호(C4)를 발생하고, 발생한 제4 제어 신호(C4)를 직류 모터(미도시)로출력단자 OUT2를 통해 출력한다. 따라서, 제4 제어 신호(C4)를 통해 대상의 위치가 목표 위치인 것으로 인식되거나 속도 에러 카운트값이 에러 카운트 제한값보다 큰 것으로 인식되면, 직류 모터는 움직임을 멈춘다.
전술한 본 발명에 의한 직류 모터 제어 방법 및 장치는 잉크 젯 프린터 또는 복합기에서 잉크 젯 헤드를 장착한 캐리어를 구동시키는 직류 모터 및 그 캐리어를 제어하기 위해 적용될 수 있다. 이와 같이 적용되는 본 발명에 의한 직류 모터 제어 방법 및 장치를 첨부된 도면을 참조하여 다음과 같이 설명한다.
도 5는 잉크 젯 프린터 또는 복합기의 블럭도로서, 직류 모터 제어 장치(110), PWM 신호 발생부(112), 펄스 카운터(114), 전력부(116), 플랜트(plant)(118) 및 인코더 생성부(124)로 구성된다. 여기서, 플랜트(118)는 DC 모터(120) 및 캐리어 시스템(122)로 구성된다.
도 5에 도시된 DC 모터(120)는 캐리어 시스템(122)을 구동하는 역할을 하고, 캐리어 시스템(122)은 잉크 젯 헤드를 장착하기 위한 캐리어 및 인코더 스트립퍼등의 주변 기구물로 이루어져 있다. 이 때, 인코더 생성부(124)는 라인 스트리퍼(line stripper)를 이용하여 캐리어의 속도와 위치에 대한 정보를 갖는 구형파 신호를 발생한다. 이 때, 펄스 카운터(114)는 구형파 신호에 응답하여 카운팅 동작을 수행한다. 여기서, 직류 모터 제어 장치(110)는 도 4에 도시된 직류 모터 제어 장치를 포함하며, 펄스 카운터(114)로부터 일정 주기마다 입력되는 캐리어의 속도와 위치 정보를 갖는 카운팅된 결과를 이용하여 최적의 PWM 신호가 PWM 신호 발생부(112)로부터 전력부(116)로 발생되도록 한다. 여기서, 전력부(116)는 PWM 신호에 응답하여 DC 모터(120)에 전력을 공급하고, DC 모터(120)는 전력부(116)로부터 공급되는 전력에 응답하여 캐리어 시스템(122)을 구동시킨다.
이상에서 설명한 바와 같이, 본 발명에 의한 직류 모터 제어 방법 및 장치는 대상의 위치 변화만을 이용하여 대상의 에러를 인지하는 종래의 모터 제어 방법과 달리, 일정 시간 단위로 즉, 제1 인터럽트가 발생할 때마다 구한 대상의 속도 및 위치와 소정 속도 에러 제한값 및 에러 카운트 제한값을 이용하여 일정 시간 이상 지속되고 일정 레벨 이상 벗어난 대상의 에러를 민감하게 감지할 수 있을 뿐만 아니라 에러가 감지될 때 직류 모터의 움직임을 멈추게 할 수 있어 외부의 간섭으로부터 직류 모터 및 대상의 안정성을 확보시킬 수 있고 불필요한 전력 소모를 방지시킬 수 있으며 대상의 위치가 변화되지 않음에도 불구하고 계속적으로 PWM 신호의 듀티를 증가시킴으로 인해 발생할 수 있는 전술한 종래의 여러가지 제반 문제들을 해결할 수 있는 효과를 갖는다.
Claims (6)
- 대상을 구동시키는 직류 모터를 제어하는 직류 모터 제어 방법에 있어서,(a) 상기 대상의 위치를 초기화시키는 단계;(b) 상기 대상의 위치가 목표 위치인가를 판단하는 단계;(c) 상기 대상의 위치가 상기 목표 위치가 아닌 것으로 판단되면, 제1 인터럽트가 발생했는가를 판단하고, 상기 제1 인터럽트가 발생하지 않았다고 판단되면상기 (b) 단계로 진행하는 단계;(d) 상기 제1 인터럽트가 발생했다고 판단되면, 소정의 속도 궤적에서 상기 제1 인터럽트가 발생한 시점에 상응하는 기준 속도를 찾고, 상기 대상의 위치를 구하고, 제2 인터럽트마다 갱신되는 상기 대상의 현재 속도를 계산하고, 상기 기준 속도와 상기 현재 속도간의 차이를 구하는 단계;(e) 상기 차이가 속도 에러 제한값보다 큰가를 판단하고, 상기 차이가 상기 속도 에러 제한값보다 크지 않은 것으로 판단되면 상기 (b) 단계로 진행하는 단계; 및(f) 상기 차이가 상기 속도 에러 제한값보다 큰 것으로 판단되면, 에러가 발생하였음을 알리는 단계를 구비하고,상기 제2 인터럽트는 상기 제1 인터럽트보다 더 빈번하게 발생되는 것을 특징으로 하는 직류 모터 제어 방법.
- 제1 항에 있어서, 상기 직류 모터 제어 방법은(g) 상기 차이가 상기 속도 에러 제한값보다 큰 것으로 판단되면, 속도 에러 카운트값을 증가시키는 단계;(h) 상기 차이가 상기 속도 에러 제한값보다 크지 않은 것으로 판단되면, 상기 속도 에러 카운트값을 리셋시키는 단계; 및(i) 상기 (g) 또는 상기 (h) 단계후에, 상기 속도 에러 카운트값이 에러 카운트 제한값보다 큰가를 판단하고, 상기 속도 에러 카운트값이 상기 에러 카운트제한값보다 크지 않은 것으로 판단되면 상기 (b) 단계로 진행하고, 상기 속도 에러 카운트값이 상기 에러 카운트 제한값보다 큰 것으로 판단되면, 상기 (f) 단계로 진행하는 단계를 더 구비하는 것을 특징으로 하는 직류 모터 제어 방법.
- 제2 항에 있어서, 상기 직류 모터 제어 방법은상기 대상의 위치가 상기 목표 위치인 것으로 판단되거나 상기 속도 에러 카운트값이 상기 에러 카운트 제한값보다 큰 것으로 판단되면, 상기 직류 모터의 움직임을 멈추게 하는 단계를 더 구비하는 것을 특징으로 하는 직류 모터 제어 방법.
- 대상을 구동시키는 직류 모터를 제어하는 직류 모터 제어 장치에 있어서,상기 대상의 위치를 버퍼링하여 출력하는 버퍼;목표 위치와 상기 버퍼로부터 입력한 상기 대상의 위치를 제1 제어 신호 및 제1 인터럽트에 응답하여 비교하고, 비교된 결과를 제2 제어 신호로서 출력하는 제1 비교부;상기 제2 제어 신호 및 상기 제1 인터럽트에 응답하여, 소정의 속도 궤적에서 상기 제1 인터럽트가 발생한 시점에 상응하는 기준 속도를 찾는 기준 속도 검출부;상기 제2 제어 신호 및 상기 제1 인터럽트에 응답하여, 상기 대상의 위치를 검색하고, 검색된 상기 대상의 위치를 상기 버퍼로 출력하는 위치 검색부;상기 제2 제어 신호 및 상기 제1 인터럽트에 응답하여, 제2 인터럽트마다 갱신되는 상기 대상의 현재 속도를 계산하는 현재 속도 계산부;상기 기준 속도와 상기 현재 속도간의 차이를 계산하고, 계산된 상기 차이를 출력하는 차 검출부;상기 차이와 속도 에러 제한값을 비교하고, 비교된 결과를 상기 제1 제어 신호로서 출력하는 제2 비교부; 및상기 제1 제어 신호에 응답하여, 에러가 발생하였음을 사용자에게 알리는 에러 알림부를 구비하고,상기 제2 인터럽트는 상기 제1 인터럽트보다 더 빈번하게 발생되는 것을 특징으로 하는 직류 모터 제어 장치.
- 제4 항에 있어서, 상기 직류 모터 제어 장치는상기 제1 제어 신호에 응답하여 카운팅 동작을 수행하거나 리셋되며, 카운팅된 결과를 속도 에러 카운트값으로서 출력하는 카운터; 및상기 속도 에러 카운트값과 에러 카운트 제한값을 비교하고, 비교된 결과를 제3 제어 신호로서 출력하는 제3 비교부를 더 구비하고,상기 에러 알림부는 상기 제3 제어 신호에 응답하여, 에러가 발생하였음을 사용자에게 알리고, 상기 제1 비교부는 목표 위치와 상기 버퍼로부터 입력한 상기 대상의 위치를 상기 제3 제어 신호 및 상기 제1 인터럽트에 응답하여 비교하는 것을 특징으로 하는 직류 모터 제어 장치.
- 제5 항에 있어서, 상기 직류 모터 제어 장치는상기 제2 제어 신호 또는 상기 제3 제어 신호에 응답하여 제4 제어 신호를 발생하는 모터 제어부를 더 구비하고,상기 직류 모터는 상기 제4 제어 신호에 응답하여 움직임을 멈추는 것을 특징으로 하는 직류 모터 제어 장치.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0039153A KR100462612B1 (ko) | 2002-07-06 | 2002-07-06 | 직류 모터 제어 방법 및 장치 |
US10/608,063 US6831438B2 (en) | 2002-07-06 | 2003-06-30 | Method and apparatus for controlling DC motor |
CNB03159770XA CN1287239C (zh) | 2002-07-06 | 2003-07-06 | 用来控制直流电动机的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0039153A KR100462612B1 (ko) | 2002-07-06 | 2002-07-06 | 직류 모터 제어 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040004923A KR20040004923A (ko) | 2004-01-16 |
KR100462612B1 true KR100462612B1 (ko) | 2004-12-20 |
Family
ID=32464405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2002-0039153A KR100462612B1 (ko) | 2002-07-06 | 2002-07-06 | 직류 모터 제어 방법 및 장치 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6831438B2 (ko) |
KR (1) | KR100462612B1 (ko) |
CN (1) | CN1287239C (ko) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4137854B2 (ja) * | 2004-07-30 | 2008-08-20 | ファナック株式会社 | 電動機の制御装置 |
US7360862B2 (en) * | 2005-03-14 | 2008-04-22 | Ncr Corporation | Inkjet apparatus and a method of controlling an inkjet mechanism |
US7904182B2 (en) * | 2005-06-08 | 2011-03-08 | Brooks Automation, Inc. | Scalable motion control system |
JP2007094952A (ja) * | 2005-09-30 | 2007-04-12 | Brother Ind Ltd | 駆動制御装置 |
US10591892B2 (en) * | 2015-06-05 | 2020-03-17 | Renesas Electronics America Inc. | Configurable mapping of timer channels to protection groups |
US10236815B2 (en) * | 2016-12-02 | 2019-03-19 | Arm Ltd. | Sensor error detection and correction |
CN107154760A (zh) * | 2017-06-06 | 2017-09-12 | 深圳市杰美康机电有限公司 | 一种混合式步进电机的高速高转矩实现方法 |
US11698046B2 (en) * | 2018-12-12 | 2023-07-11 | Eaton Intelligent Power Limited | EGR pump system and control method of EGR pump |
CN114625176A (zh) * | 2020-12-10 | 2022-06-14 | 合肥欣奕华智能机器股份有限公司 | 双驱动装置的运动同步控制方法及相关装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4371819A (en) * | 1980-12-11 | 1983-02-01 | Pako Corporation | Pulse width modulation speed control |
US4777609A (en) * | 1985-12-11 | 1988-10-11 | International Business Machines Corporation | Print head motor control system having steady state velocity compensation |
JPH01222681A (ja) * | 1988-03-01 | 1989-09-05 | Fujitsu Ltd | プリンタの印字ヘッド駆動制御方式 |
JPH06286276A (ja) * | 1993-04-02 | 1994-10-11 | Pfu Ltd | キャリア・ジャム検出制御方法 |
KR950004713A (ko) * | 1993-07-08 | 1995-02-18 | 최훈 | 디지탈서보모터의 위치제어방법 및 그 장치 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4893068A (en) * | 1988-11-15 | 1990-01-09 | Hughes Aircraft Company | Digital servo employing switch mode lead/lag integrator |
US6304408B1 (en) * | 1997-06-19 | 2001-10-16 | Texas Instruments Incorporated | Apparatus and method for a reduced seek-to-track time fuzzy rule controller for a hard disk drive read/write head actuator |
-
2002
- 2002-07-06 KR KR10-2002-0039153A patent/KR100462612B1/ko not_active IP Right Cessation
-
2003
- 2003-06-30 US US10/608,063 patent/US6831438B2/en not_active Expired - Fee Related
- 2003-07-06 CN CNB03159770XA patent/CN1287239C/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4371819A (en) * | 1980-12-11 | 1983-02-01 | Pako Corporation | Pulse width modulation speed control |
US4777609A (en) * | 1985-12-11 | 1988-10-11 | International Business Machines Corporation | Print head motor control system having steady state velocity compensation |
JPH01222681A (ja) * | 1988-03-01 | 1989-09-05 | Fujitsu Ltd | プリンタの印字ヘッド駆動制御方式 |
JPH06286276A (ja) * | 1993-04-02 | 1994-10-11 | Pfu Ltd | キャリア・ジャム検出制御方法 |
KR950004713A (ko) * | 1993-07-08 | 1995-02-18 | 최훈 | 디지탈서보모터의 위치제어방법 및 그 장치 |
Also Published As
Publication number | Publication date |
---|---|
CN1287239C (zh) | 2006-11-29 |
KR20040004923A (ko) | 2004-01-16 |
US20040108828A1 (en) | 2004-06-10 |
US6831438B2 (en) | 2004-12-14 |
CN1495583A (zh) | 2004-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100462612B1 (ko) | 직류 모터 제어 방법 및 장치 | |
EP0222113A2 (en) | Collision avoidance system | |
US7810901B2 (en) | Driving apparatus | |
US20050110746A1 (en) | Power-saving method for an optical navigation device | |
US11085752B2 (en) | Surface property measuring device and control method for same | |
JP2004220348A (ja) | 車両走行状態検出装置及び車両走行制御装置 | |
JP4833617B2 (ja) | 印字媒体搬送装置及び印字媒体搬送方法 | |
US7135831B2 (en) | Method and device for controlling motor | |
JP5113138B2 (ja) | 電子玩具及びその移動方法 | |
JP6101931B2 (ja) | モータ駆動装置 | |
WO2018192393A1 (zh) | 一种接近传感器的校准方法及装置 | |
JP2010011680A (ja) | 負荷同定方法およびロボットの制御システム | |
JP2008097347A (ja) | モータ制御装置 | |
JP2738802B2 (ja) | キャリア・ジャム検出制御方法 | |
JP2003276807A (ja) | スタッカークレーンの速度・位置制御方法 | |
JP3900111B2 (ja) | 車両用外界認識装置 | |
KR101872405B1 (ko) | 차량 윈도우 제어 장치 및 그 방법 | |
JP4483812B2 (ja) | 印刷装置、スティックスリップ対応方法、プログラム、及び印刷システム | |
JP2012111144A (ja) | インクジェット記録装置 | |
KR101058030B1 (ko) | 모터 제어 장치 및 방법 | |
JP3456389B2 (ja) | パワーウィンドウ装置 | |
KR100849159B1 (ko) | 인쇄 매체 반송 장치 및 인쇄 매체 반송 방법 | |
KR100423975B1 (ko) | 무인반송시스템과 주행제어방법 | |
KR19980042223A (ko) | 현수하중 안정제어장치 | |
JP2022154876A (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: 20121129 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20131128 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20141127 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |