KR100575917B1 - 구동 기구 제어 장치, 구동 기구의 제어 방법, 구동 기구의 구동 동작 확인 방법, 및 이들 방법의 프로그램을 기록한 기록 매체 - Google Patents

구동 기구 제어 장치, 구동 기구의 제어 방법, 구동 기구의 구동 동작 확인 방법, 및 이들 방법의 프로그램을 기록한 기록 매체 Download PDF

Info

Publication number
KR100575917B1
KR100575917B1 KR1020010025404A KR20010025404A KR100575917B1 KR 100575917 B1 KR100575917 B1 KR 100575917B1 KR 1020010025404 A KR1020010025404 A KR 1020010025404A KR 20010025404 A KR20010025404 A KR 20010025404A KR 100575917 B1 KR100575917 B1 KR 100575917B1
Authority
KR
South Korea
Prior art keywords
data
drive
control
time
drive mechanism
Prior art date
Application number
KR1020010025404A
Other languages
English (en)
Other versions
KR20010104242A (ko
Inventor
가와세유지
Original Assignee
세이코 엡슨 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2000140541A external-priority patent/JP4655328B2/ja
Priority claimed from JP2000158348A external-priority patent/JP4631131B2/ja
Application filed by 세이코 엡슨 가부시키가이샤 filed Critical 세이코 엡슨 가부시키가이샤
Publication of KR20010104242A publication Critical patent/KR20010104242A/ko
Application granted granted Critical
Publication of KR100575917B1 publication Critical patent/KR100575917B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical 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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical 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/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4142Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by the use of a microprocessor

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • General Engineering & Computer Science (AREA)
  • Control Of Stepping Motors (AREA)
  • Character Spaces And Line Spaces In Printers (AREA)
  • Vehicle Body Suspensions (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)
  • Control Of Electric Motors In General (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Automatic Disk Changers (AREA)
  • Threshing Machine Elements (AREA)
  • Steering Controls (AREA)

Abstract

고속도의 CPU 및 전용 하드웨어를 사용하지 않고, 스텝 모터, 헤드 등의 구동 기구를 높은 정밀도로 구동시키는 것이다.
구동 기구의 동작을 전환하는 타이밍을 제어하기 위한 타이밍 데이터 및 각 전환 타이밍시의 구동 기구의 동작을 제어하기 위한 복수의 제어 데이터를 메모리에 기억해 두고, CPU로부터의 구동 명령을 수신한 후에, DMA에 의해 메모리로부터 타이밍 데이터를 판독하여 상기 각 타이밍 데이터를 계시 장치에 송신하고, 계시 장치로부터의 전환 타임 업 신호에 근거하여 DMA에 의해 메모리로부터 복수 종류의 구동 제어 데이터를 각 종류마다 순차적으로 판독하여 구동 제어부에 송신하며, 제어 데이터의 모든 종류의 송신이 일순하였을 때에 다음 타이밍 데이터를 계시 장치에 송신하여 마찬가지의 동작을 반복하도록 구성한다. 구동 제어부는 제어 데이터에 근거하여 구동 기구를 구동한다.

Description

구동 기구 제어 장치, 구동 기구의 제어 방법, 구동 기구의 구동 동작 확인 방법, 및 이들 방법의 프로그램을 기록한 기록 매체{APPARATUS FOR CONTROLLING A DRIVE MECHANISM, METHOD FOR CONTROLLING A DRIVE MECHANISM, METHOD FOR VERIFYING A DRIVE OPERATION OF THE DRIVE MECHANISM, AND RECORD MEDIUM FOR RECORDING COMPUTER PROGRAM OF THESE METHODS}
도 l은 본 발명이 적용되는 실시예 1의 구동 장치의 구성 예를 도시하는 도면,
도 2는 본 발명의 실시예 1의 구성을 도시하는 블럭도,
도 3은 본 발명의 실시예 1의 구성을 더욱 상세하게 설명하기 위한 기능 블록도,
도 4는 도 3의 제어 장치에 의해 각종 제어 데이터를 구동부(5)에 송신하는 경우의 데이터 송신의 순서 및 데이터의 흐름을 이미지적으로 도시한 도면,
도 5는 스텝 모터의 구동을 제어하는 본 발명의 제어 장치의 실시예 2를 나타내는 기능 블록도,
도 6은 스텝 모터(25)를 구동하는 경우의 모터 제어의 전형 예를 나타내는 그래프,
도 7은 모터 구동 개시의 요구로부터 전환 타이밍 데이터, 제 1 제어 데이터 및 제 2 제어 데이터의 설정을 거쳐서 모터의 구동 동작을 실행하고, 다음 전환 타이밍을 설정하는 일련의 제어 동작의 반복 처리의 상태 변이를 도시하는 도면,
도 8은 실시예 2에 따른 모터의 구동 제어 처리 수단의 흐름도,
도 9는 인자 헤드의 구동을 제어하는 본 발명에 따른 제어 장치의 실시예 3을 나타내는 기능 블록도,
도 10은 헤드 구동 개시의 요구로부터 전환 타이밍 데이터, 제 1 제어 데이터 및 제 2 제어 데이터의 설정을 거쳐서 인쇄 동작을 실행하여, 다음 전환 타이밍을 설정하는 일련의 제어 동작의 반복 처리의 상태 변이를 나타내는 도면,
도 11은 본 발명의 실시예 4에 따른 구동 기구 제어 장치의 구성의 개략을 나타내는 도면으로서, 구동 기구로서 시리얼 프린터의 인자 헤드를 인자 라인에 따라 횡 방향으로 이동시키는 캐리지 구동 기구를 도시하는 도면,
도 12는 도 11에 나타내는 캐리지 구동 기구 제어 장치의 동작을 보다 상세하게 설명하기 위한 기능 블록도,
도 13은 시리얼 프린터의 캐리지의 이동 가능 영역(81), 인자 가능 영역(82), 인자 금지 영역(83) 및 홈 포지션의 위치를 도시하는 도면,
도 14는 구동 확인의 처리시의 각 상태를 나타내는 천이도,
도 15는 본 발명의 구동 확인 수단(50)의 구성 예를 나타내는 도면,
도 16은 구동 확인 수단(50)의 제어부(60)의 확인 동작 처리를 나타내는 흐름도,
도 17은 모터 구동 개시의 요구로부터 전환 타이밍 데이터, 위상 패턴 데이터 및 상 전류 데이터의 설정을 거쳐서, 다음 전환 타이밍을 설정하는 일련의 제어 동작과, 그 동작중에 있어서의 구동 확인 처리 동작의 관계를 나타내는 상태 천이도,
도 18은 CPU를 이용한 종래의 구동 확인 처리를 설명하는 블록도.
도면의 주요 부분에 대한 부호의 설명
1 : CPU 2 : 메모리
3 : DMA 4 : 계시 수단
5 : 구동부 6 : 구동 제어부
7 : 구동 기구 8 : 어드레스 버스
9 : 데이터 버스 10 : 타이밍 데이터 기억 수단
11 : 제 1 제어 데이터 기억 수단
12 : 제 2 제어 데이터 기억 수단
13 : 제 n 제어 데이터 기억 수단
14 : 제 1 다이렉트 메모리 액세스 수단
15 : 제 2 다이렉트 메모리 액세스 수단
16 : 제 1 제어 수단 17 : 제 2 제어 수단
50 : 구동 확인 수단 70 : 구동부
24 : 모터 구동 제어부 74 : 모터 드라이버
25 : 모터 73 : 캐리지
71 : 구동 전달 기구 72 : HP 검출 수단
본 발명은 정밀하고 정확한 동작이 요구되는 구동 장치 및 제어 방법에 관한 것이다.
최근의 전자 기기의 구동 기구는 지극히 고속이고 또한 정확한 동작이 요구된다. 그 때문에, 예컨대 프린터에 있어서는, 인자 용지의 구동 또는 캐리지의 구동 등에 스텝 모터 또는 리니어 모터 등이 채용되고 있다. 또한, 프린터에서는, 올바른 위치에 올바른 문자 도형 등을 인쇄하기 위해서, 인자 용지 및 캐리지의 움직임에 맞추어 인자 헤드를 정확하고 또한 고속으로 구동(인쇄 동작)시킬 필요가 있다. 본 발명은 최근의 전자 기기에 사용되는 이러한 각종 구동 기구를 고속이고 또한 정확하게 구동하기 위한 제어 장치, 제어 방법 및 그 방법을 기록한 기록 매체에 관한 것이다.
구동 기구의 종래 기술에 따른 제어에는, CPU에 의한 인터럽트 신호 제어 방식과, 전용 하드웨어에 의한 제어 방식이 있다. 고속이고 또한 정확한 구동 제어는, 예컨대 헤드 기구와 같은 각종의 다른 구동 기구에서도 필요하게 되지만, 이하에서는 이들 제어 방식을 스텝 모터(이하 모터라 칭함)의 구동 제어의 경우를 이 용하여 설명한다. 모터의 구동 제어에 있어서는, 상(相) 전환 타이밍마다 모터에 부가하는 전류의 위상 패턴을 전환하거나 모터에 흐르는 전류의 크기를 변경하는 등의 제어를 하지 않으면 안 된다. 모터의 가속시 및 감소시에 있어서는, 가/감속 상황에 따라 위상의 전환 타이밍을 순차적으로 전환하면서 모터에 공급하는 전류의 크기를 순차적으로 변화시킬 필요가 있으므로 특히 복잡한 제어가 필요하게 된다.
전용 하드웨어에 의한 제어는, 모터의 위상 전환 및 전류값을 전용 하드웨어에 의해 제어하는 것이다.
그러나, 전용 하드웨어를 사용하는 경우에는, 고정밀도의 구동이 가능해지는 이점을 갖는 한편, 일반적으로 전용 하드웨어를 마련하기 위한 비용이 높아지고, 개발 기간이 장기화하며, 제어 방법의 변경을 유연하게 실행하는 것이 어렵다고 하는 등의 각종 불리한 점도 갖고 있다.
이에 대해, CPU에 의한 인터럽트 제어 방식은, 소정의 타이밍으로 CPU에 의한 인터럽트 처리를 실행하여, 모터에 부가하는 전류의 위상 패터닝을 전환하거나, 모터에 흐르는 전류의 크기를 제어하기 위한 제어 데이터를 메모리로부터 판독하여, 구동 제어부에 공급하는 것이다. 이러한 CPU에 의한 인터럽트 제어 방식은 개발 기간의 단축화가 가능하고 또한 제어 동작의 변경에도 유연하게 대응할 수 있으며, 또한 개발 및 제조 비용을 낮게 억제하는 것이 가능하다. 최근의 전자 기기의 개발에 있어서는, 개발 기간의 단축화, 설계 변경 요구로의 신속한 대응이 요구되기 때문에, CPU에 의한 인터럽트 제어 방식이 많이 이용되고 있다.
CPU의 인터럽트 처리에 있어서는, CPU로부터 송신한 제어 데이터에 따라, 구동 기구가 동작하고 있는 한, 기밀한 구동 제어를 실행할 수 있다. 그러나, 어떠한 이상 원인에 의해, 구동 장치가 구동 제어 데이터대로 동작할 수 없는 경우가 발생하는 것도 있다. 예컨대, 인자 헤드의 캐리지 구동 기구에 있어서, 어떠한 원인(페이퍼 잼(paper jam) 등)에 의해 캐리지의 진로가 방해되고, 캐리지의 움직임이 저지된 것으로 한다. 이러한 상황하에서 제어부로부터 위상 패턴을 전환하여, 전류를 공급한 것으로 해도, 캐리지가 움직일 수 없기 때문에 모터가 회전할 수 없다. 이러한 상태가 발생한 경우, 제어부가 제어 데이터에 근거하여 계산상 인식하고 있는 캐리지의 위치(캐리지가 본래 있어야 할 위치 : 이론상의 동작 위치)와, 실제로 캐리지가 존재하고 있는 위치(현실의 동작 위치)가 상이하여, 캐리지의 정확한 구동 제어를 실행할 수 없다.
이러한 사태가 발생한 경우에 적절한 대응 처리를 실행하기 위해, 프린터 헤드의 캐리지 등의 구동 기구에 있어서는, 실제의 캐리지 위치를 센서 등에 의해 정기적으로 검출하여, 캐리지가 정확하게 구동되고 있는지 여부를 확인하고 있다. 이러한 동작의 확인은 CPU 제어하에서, 정기적(예컨대, 6초간에 1회의 비율)으로 소정의 센서 위치(예컨대, 홈 포지션(home position))까지 캐리지를 이동시켜, 캐리지의 물리적인 위치를 검출하고, 그 위치와 제어 데이터에 근거하는 어긋남을 비교하는 것에 의해 행해진다. 이러한 위치 확인 동작의 경우에도, CPU의 인터럽트 처리에 의해 메모리로부터 구동용 제어 데이터를 판독하여 모터를 구동하고, 캐리지를 홈 포지션 방향으로 이동시킨다. 구동 제어의 정밀도는 제어 데이터에 근거하여 계산한 계산상의 캐리지의 위치와 캐리지가 홈 포지션에서 실제로 검출된 위 치와의 어긋남에 의해 확인된다.
도 18을 이용하여, CPU를 이용한 종래의 구동 확인 처리 동작을 설명한다. CPU(1)는 위상 전환 타이밍마다, 메모리(2)에 기억되어 있는 제어 데이터 테이블로부터 모터 구동을 위한 제어 데이터를 판독하여, 모터 구동 제어부(24)에 송신한다. 모터 구동 제어부(24)는 제어 데이터에 근거하여 모터 드라이브(74)를 구동하여 모터(25)를 회전시킨다. 모터(25)가 회전하면 동력 전달 기구(71)를 거쳐서 캐리지(73)가 이동 통로내를 좌우로 이동한다. CPU(1)는 제어 데이터의 송신과 동시에 송신한 제어 데이터로부터 모터 구동량을 산출하며, 그것에 근거하여 캐리지(73)의 이론상의 현재 위치를 파악하고 있다. 캐리지(73)의 이동 통로에는, 홈 포지션의 위치에 포토센서와 같은 검출기(72)가 마련되어 있고, 캐리지(73)가 홈 포지션 위치에 도달하면, 검출 회로(75)에 의해 캐리지의 존재를 검출한다. 검출 회로(75)는 캐리지(73)가 홈 포지션 위치에 있는 것을 검출하면, CPU(1)에 대해 인터럽트 신호(HP 검출 신호)를 송출한다. CPU(1)는 인터럽트 신호를 수신한 때에, 캐리지(73)의 계산상의 위치와 홈 포지션을 비교하는 것에 의해, 캐리지(73)가 정상으로 구동되고 있는지 여부를 확인하고, 계산상의 위치가 홈 포지션 위치로부터 크게 어긋나 있을 때에는 구동 이상이라고 판단하여 소정의 에러 처리를 실행하고 있다. 이와 같이 CPU(1)의 인터럽트 처리에 의한 모터 구동 제어, 및 위치 확인 동작에 의해 캐리지의 정확한 이동 동작이 유지되어 있다.
그러나, CPU의 인터럽트 처리 방식에서는, 구동 후에 제어 데이터를 메모리로부터 판독하기 때문에 CPU의 부하가 커진다. CPU는 통상 다수의 처리를 실행하는 것이기 때문에, 다른 처리를 포함한 CPU 전체의 처리 능력이 충분하지 않은 경우에는 인터럽트 처리 시간에 편차가 발생하여, 고속이며 고정밀도의 구동이 곤란하게 되는 경우가 있다. 이러한 경우에, 인터럽트 처리의 편차를 억제하여 고정밀도의 모터 구동을 가능하게 하는 데에는, CPU의 고속화를 도모하는 등의 어떠한 대응 처치가 필요하게 된다. 이 점, 구동 에러 검출 동작 및 처리를 CPU의 인터럽트 처리에 의해 실행하는 경우에도 마찬가지이다. 그래서, 본 발명은 구동 제어 기동후의 CPU의 인터럽트 처리를 최소한으로 억제한 구동 기구의 제어 장치, 제어 방법 및 그 기록 매체를 제공하는 것을 목적으로 한다.
또한, 본 발명은 제어 방법을 용이하게 변경할 수 있는 각종 구동 기구의 제어 장치, 제어 방법 및 그 기록 매체를 제공하는 것을 목적으로 한다.
또한, 본 발명은 구동 제어 기동 후의 CPU의 인터럽트 처리를 최소한으로 억제한 구동 에러 검출이 가능한 구동 제어 장치 및 그 제어 방법을 제공하는 것을 목적으로 한다. 또한, 본 발명의 다른 목적은, 제어 데이터에 근거하는 이론상의 구동량과, 실제로 구동된 양을 비교하는 것에 의해 구동 제어가 정확하게 행해지고 있는지 여부를 확인하여, 정밀도의 구동 제어를 실행할 수 있는 구동 제어 장치를 제공하는 것이다.
본 발명자는 전술의 문제점을 해결하기 위한 연구를 거듭한 결과, 대개의 CPU에 탑재되어 있는 다이렉트 메모리 액세스(Direct Memory Access : 이하 DMA라 칭함) 제어부에 의해 메모리로부터 복수의 제어 데이터를 순차적으로 판독하여, 구동 제어부에 송신하는 것에 의해 상기 과제를 해결하였다.
본 발명에서는, 구동량에 따라서 구동 타이밍을 제어하는 구동 타이밍 데이터(계시 데이터) 테이블과, 각 전환 타이밍마다 사용되는 각종 제어 데이터를 각 종류마다 기록한 복수의 테이블을 구동 기구의 구동 개시 전에 메모리상에 기억해 둔다. CPU에 의한 구동 개시 요구가 있으면, DMA는 최초의 전환 타이밍 데이터를 판독하고, 그 전환 타이밍 데이터를 트리거로 하여 차례차례 제어 데이터 및 다음 전환 타이밍 데이터를 판독한다. 이에 의해, DMA에 의해 전환 타이밍마다 각종 제어 데이터를 순차적으로 판독하여, 구동 기구에 필요한 제어 데이터를 송신함으로써, 구동 기구의 시동 후 정지까지의 일련의 동작을 CPU의 인터럽트없이 자립적으로 제어한다. 전환 타이밍은 타이밍 데이터를 타이머로 설정하는 것에 의해 제어한다.
본 발명의 구동 제어 장치의 한 형태는, 구동 기구를 제어하는 제어 데이터 및 제어 데이터의 송신 타이밍을 제어하는 계시(計時) 데이터를 생성하고, 구동 제어부로의 제어 데이터의 송신을 기동하는 기동 신호를 송출하는 데이터 생성 수단과, 제어 데이터에 근거하여 구동 기구의 동작을 제어하는 구동 제어부와, 계시 데이터 및 제어 데이터를 기억하는 기억 수단과, 계시 데이터를 수신하였을 때에 시간 계측 동작을 개시하여, 수신한 상기 계시 데이터에 의해 지정된 시간이 경과하였을 때에 타임 업(time up) 신호를 출력하는 계시 수단과, 소정의 기동 신호에 근거하여 기동되고, 계시 데이터를 기억 수단으로부터 판독하여, 계시 수단에 송신하는 제 1 다이렉트 메모리 액세스 수단과, 계시 수단으로부터 타임 업 신호를 수신하는 것에 의해, 제어 데이터를 기억 수단으로부터 판독하여, 구동 제어부에 송신하는 제 2 다이렉트 메모리 액세스 수단을 구비하는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 데이터 생성 수단이 복수의 계시 데이터와 당해 계시 데이터에 대응하는 복수의 제어 데이터를 생성하는 수단을 더 구비하고, 제 2 다이렉트 메모리 액세스 수단이 첫번째의 계시 데이터에 대응하는 제어 데이터의 송신 완료 후에, 두번째의 계시 데이터를 판독하기 위한 기동 신호를 상기 제 1 다이렉트 메모리 액세스 수단에 출력하는 수단을 더 구비하며, 제 1 다이렉트 메모리 액세스 수단이 제 2 메모리 액세스 수단으로부터의 기동 신호에 근거하여, 기억 수단으로부터 두번째의 계시 데이터를 판독해서, 계시 수단에 송신하는 수단을 더 구비하는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 제 2 다이렉트 메모리 액세스 수단이 계시 수단으로부터의 타임 업 신호에 의해 기동되고, 타임 업 신호의 수신 후에, 구동 기구의 동작을 제어하기 위해 기억 수단에 기억된 복수의 제 1 제어 데이터로부터, 계시 데이터에 대응하는 제 1 제어 데이터를 판독하여, 구동 제어부에 송신하는 제 1 제어부와, 제 1 제어 데이터의 송신 종료에 의해 기동되며, 구동 기구의 동작을 제어하기 위해 기억 수단에 기억된 복수의 제 2 제어 데이터로부터, 계시 데이터에 대응하는 제 2 제어 데이터를 판독하는 구동 제어부에 송신하여, 송 신 후에 제 1 다이렉트 메모리 액세스 수단에 기동 신호를 출력하는 제 2 제어부를 구비하는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 구동 기구가 스텝 모터 구동 기구로 이루어지고, 계시 데이터, 및 제어 데이터는 각각, 모터의 위상 전환 타이밍을 제어하기 위한 타이밍 데이터, 모터의 위상 전환시에 설정하는 위상 패턴 데이터, 및 위상 전환시에 모터에 공급하는 전류를 제어하는 상 전류값으로 이루어지는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 데이터 생성 수단이 모터의 가속 시 및 정상 동작시에 있어서의 각각의 계시 데이터 위상 패턴 데이터, 및 상 전류값의 기본 데이터를 구비하고 있고, 이들 기본 데이터에 근거하여 구동시의 상기 계시 데이터, 제 1 제어 데이터, 및 제 2 제어 데이터를 작성하는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 구동 기구가 헤드 구동 기구로 이루어지고, 상기 계시 데이터 및 상기 제어 데이터가 각각 헤드 구동의 타이밍을 제어하는 데이터, 실제로 헤드를 구동시키는 구동 트리거 데이터, 및 인쇄 데이터로 이루어지는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 구동 기구를 제어하는 제어 데이터 및 제어 데이터의 송신 타이밍을 제어하는 계시 데이터를 생성하고, 구동 제어부로의 제어 데이터의 송신을 기동하는 기동 신호를 송출하는 데이터 생성 수단과, 제어 데이터에 근거하여 구동 기구의 동작을 제어하는 구동 제어부와, 계시 데이터 및 제어 데이터를 기억하는 기억 수단과, 계시 데이터를 수신하였을 때에 시간 계측 동작을 개시하여, 수신한 계시 데이터에 의해 지정된 시간이 경과하였을 때에 타임 업 신호를 출력하는 계시 수단과, 소정의 기동 신호에 근거하여 기동되고, 기억 수단으로부터 계시 데이터를 판독하여 계시 수단에 전송하며, 그 후 계시 수단으로부터 출력되는 상기 타임 업 신호에 근거하여 기억 수단으로부터 제어 데이터를 구동 제어부에 송신하는 다이렉트 메모리 액세스 수단과, 구동 기구의 동작부가 제 1 기준 위치에 도달하였을 때에 위치 검출 신호를 출력하는 위치 검출 수단과, 송신한 상기 제어 데이터로부터 구동 기구의 계산상의 동작 위치를 산출하고, 당해 계산상의 동작 위치와 검출 신호에 근거하는 실제의 동작 위치를 비교하는 것에 의해 구동 기구의 동작 상태를 확인하며, 구동 동작의 이상을 검출하였을 때에 동작 이상 신호를 출력하는 구동 확인 수단을 구비하는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 구동 확인 수단이 소정의 카운트 데이터가 설정되는 비교 데이터 기억부와, 제 2 기준 위치에서 초기 설정되어 상기 타임 업 신호를 수신할 때마다 카운트되는 카운터와, 비교 데이터 기억부에 기억된 소정의 카운트 데이터와 카운터의 카운트값을 비교하는 비교기를 구비하며, 위치 검출 신호를 수신하였을 때의 비교기의 비교 출력에 따라, 구동 기구의 동작 상태를 확인하는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 구동 확인 수단의 상기 비교 데이터 기억부가 적어도, 제 2 기준 위치로부터 제 1 기준 위치까지의 카운트값의 허용 하한값을 기억하는 제 1 비교 데이터 기억부와, 제 2 기준 위치로부터 제 1 기준 위치까지의 카운트값의 허용 상한값을 기억하는 제 2 비교 데이터 기억부를 구비하며, 구동 확인 수단은 카운터의 카운트값이 상기 허용 하한값 이하 또는 상기 허용 상한값 이상의 범위에서 위치 검출 신호를 수신하였을 때에, 동작 이상 신호를 출력하는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 구동 확인 수단이 동작 이상 신호를 인터럽트 신호로서 데이터 생성 수단에 출력하고, 데이터 생성 수단은 인터럽트 신호에 근거하여 동작 이상에 대응하는 에러 처리를 실행하는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 구동 확인 수단으로부터의 상기 동작 이상 신호에 근거하여, 구동 기구의 동작을 정지시키는 구동 정지 신호를 또한 출력하는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 구동 기구가 스텝 모터에 의한 구동 기구로 이루어지고, 상기 제어 신호는 상기 스텝 모터의 위상 변경의 전환 타이밍을 기동하기 위한 계시 신호와, 상기 전환 타이밍마다의 위상 패턴과, 상기 전환 타이밍마다의 공급 전류값으로 이루어지는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 구동 기구가 스텝 모터에 의해 구동되는 캐리지로 이루어지는 것을 특징으로 한다.
본 발명의 구동 제어 장치의 다른 형태는, 구동 기구가 잉크젯으로 이루어지는 인자(印字) 헤드의 캐리지 구동 기구로 이루어지고, 구동 확인 수단이 잉크젯 헤드 클리닝 동작을 위한 캐리지 구동 동작 시에 구동 확인 동작 처리를 실행하는 것을 특징으로 한다.
본 발명의 구동 기구의 제어 방법의 한 형태는, (a) 구동 기구를 제어하는 각 종류마다 복수개의 데이터를 갖는 적어도 한 종류의 제어 데이터 및 해당 복수개의 제어 데이터를 한개씩 순차적으로 송신하기 위한 복수의 타이밍 데이터를 생성하여 기억하는 공정과, (b) 복수의 타이밍 데이터의 첫번째의 데이터를 판독하는 공정과, (c) 판독한 상기 첫번째의 타이밍 데이터를 수신하였을 때에 시간 계측 동작을 개시하여, 해당 첫번째의 타이밍 데이터에 의해 지정된 시간의 경과시에 타임 업 신호를 출력하는 공정과, (d) 타임 업 신호에 근거허여, 기억한 모든 종류의 제어 데이터의 첫번째의 데이터를 판독해서, 구동 기구를 제어하는 수단에 송신하는 공정과, (e) 첫번째의 상기 제어 데이터의 모두를 구동 기구의 제어 수단에 송신하였을 때에, 기억한 타이밍 데이터의 두번째의 데이터를 판독하고, 판독한 두번째의 타이밍 데이터에 근거하여, 공정 (c) 내지 (e)를 실행하는 공정과, (f) 기억한 복수의 타이밍 데이터 모두에 관한 판독이 종료될 때까지 상기 공정 (e)를 반복하는 공정을 구비하는 것을 특징으로 한다.
본 발명의 구동 기구의 제어 방법에 따른 다른 형태는, 공정 (d)가 타임 업 신호에 의해, 제 1 종류의 제어 데이터로부터 최후 종류의 제어 데이터까지 각 종류의 제어 데이터를 순차적으로 하나씩 판독하여 구동 제어부에 송신하는 공정을 구비하는 것을 특징으로 한다.
본 발명의 구동 기구의 제어 방법에 따른 다른 형태는, 타이밍 데이터가 스텝 모터의 위상을 전환하는 상 전환 타이밍 데이터이며, 제어 데이터가 상기 상 전환 타이밍에, 스텝 모터에 부가되는 상 패턴 데이터, 및 각 전환 타이밍마다 각 상 패턴에 흐르는 상 전류값으로 이루어지는 것을 특징으로 한다.
본 발명의 구동 기구의 제어 방법에 따른 다른 형태는, 타이밍 데이터가 헤드 구동의 타이밍을 제어하는 타이밍 데이터이며, 제어 데이터가 헤드의 구동 트리거 데이터, 및 인쇄 데이터로 이루어지는 것을 특징으로 한다.
본 발명의 구동 기구의 구동 동작 확인 방법중 한 형태는, (a) 동작 확인용의 소정의 구동을 실행시키기 위해서, 복수의 제어 데이터와 해당 제어 데이터를 송신하는 타이밍을 제어하는 복수의 타이밍 데이터를 생성하여 기억하는 공정과, (b) 타이밍 데이터를 순차적으로 판독하고, 해당 판독한 타이밍 데이터에 근거하는 소정의 타이밍에, 기억한 제어 데이터를 순차적으로 판독하여 구동 기구의 제어 수단에 순차적으로 송신해서, 구동 기구를 구동하는 공정과, (c) 타이밍 데이터 및 제어 데이터에 근거하여, 구동 기구의 구동량을 산출하는 공정과, (d) 산출한 구동량으로부터 계산한 동작 위치와, 구동 기구의 동작부가 소정의 위치에 도달하였을 때에 출력되는 위치 검출 신호에 의해 인식되는 현실의 동작 위치로부터 계산상의 위치와 현실의 위치의 차이를 산출하는 공정과, (e) 계산상의 동작 위치와 현실의 동작 위치의 차이가 소정의 범위 밖일 때에 구동 동작 이상 신호를 출력하는 공정을 구비하는 것을 특징으로 한다.
본 발명의 구동 기구의 구동 동작 확인 방법에 따른 다른 형태는, 구동 기구의 계산상의 구동량을 산출하는 공정 (c)가 공정 (b)에서 연속하는 소정의 타이밍마다 전송되는 제어 데이터의 송신 회수를 카운트하는 공정으로 이루어지는 것을 특징으로 한다.
본 발명의 구동 기구의 구동 동작 확인 방법에 따른 다른 형태는, 공정 (e)가 이론상의 동작 위치와 현실의 동작 위치가 소정의 범위 밖일 때에 구동 기구의 동작을 정지시키는 정지 신호를 출력하는 공정을 더 포함하는 것을 특징으로 한다.
본 발명의 구동 기구의 구동 동작 확인 방법에 따른 다른 형태는, 타이밍 데이터는 스텝 모터의 위상 패턴의 전환 타이밍 및 전류 제어 데이터를 전환하는 전환 타이밍 제어 데이터로 이루어지고, 제어 데이터가 각 전환 타이밍마다의 위상 패턴 데이터와, 각 전환 타이밍마다 공급하는 전류 제어 데이터로 이루어지는 것을 특징으로 한다.
본 발명의 다른 형태는, 전술한 구동 기구의 구동 방법 또는 구동 동작 확인 방법의 각 공정을 실현하는 실행 명령 세트 및 데이터 세트를 구비하는 것을 특징으로 하는 컴퓨터 프로그램이다.
본 발명의 다른 형태는, 전술한 구동 기구의 구동 방법 또는 구동 동작 확인 방법의 각 공정을 실현하는 실행 명령 세트 및 데이터 세트를 구비하는 컴퓨터 프로그램을 저장한 컴퓨터로 판독 가능한 정보 기록 매체이다.
또한 본 발명의 다른 형태는, 전술한 바와 같이 구동 기구의 구동 방법 또는 구동 동작 확인 방법의 컴퓨터 프로그램을 기록한 정보 기록 매체가 컴팩트 디스크, 플로피 디스크, 하드 디스크, 또는 자기 기록 테이프로 이루어지는 것을 특징으로 한다.
(발명의 실시예)
이상, 도면을 참조하여, 본 발명의 실시예를 상세하게 설명한다.
(실시예 1)
도 1에 본 발명이 적용되는 구동 장치의 구성 예를 나타낸다.
도 1은 본 발명의 실시예 1을 나타내는 구동 제어 장치 구성의 개략을 나타내는 블록도이다. CPU(1)는 중앙 처리 장치로서, 메모리(2)에 기억된 프로그램(펌웨어, OS를 포함함)에 따라 각종 연산, 처리 및 제어를 실행한다. (3)는 다이렉트 메모리 액세스 제어부(이하 DMA라 칭함)이며, CPU(1)의 개재없이 각종 입출력 장치와 메모리(2) 사이에서의 데이터 송신을 실행하는 장치이다.
또한, 도 1에는 설명을 알기 쉽게 하기 위해, 입출력 장치로서는 계시 수단(4)과, 구동부(5)만을 나타내고 있다. 메모리(2)의 판독 어드레스 및 판독한 데이터의 송신 목적지는, 어드레스 라인(8)에 의해 지정되고, 판독된 데이터는 데이터 버스(9)에 의해 송신된다.
메모리(2)로부터 계시 수단(4)에 타이밍 데이터가 송신되면, 계시 수단(4)은 수신한 타이밍 데이터에 따라 시간을 계측하여, 소정의 시간이 경과하였을 때에 타임 업 신호를 DMA에 출력한다. 이에 의해 DMA(3)는 메모리(2)로부터 구동 제어부(6)에 소정의 데이터를 송신하고, 이들 제어 데이터에 따라 구동부(5)의 구동 기구(7)가 동작한다.
다음에, 도 2를 이용하여 본 발명의 실시예를 상세하게 설명한다. 도 2는 본 발명의 실시예 1을 도시하는 기능 블록도이다.
도면 중, (10)은 구동 기구의 동작을 전환하는 타이밍을 제어하는 데이터를 기억하고 있는 타이밍 데이터 기억 수단이다. (11)는 전환 후의 구동 기구의 동작을 제어하기 위한 제 1 제어 데이터를 기억하고 있는 제 1 제어 데이터 기억 수단이며, (12)는 제 2 제어 데이터를 기억하고 있는 제 2 제어 데이터 기억 수단이다. (13)는 제 n 번째의 제어 데이터를 기억하고 있는 제 n 제어 데이터 기억 수단이다. 이들 데이터 기억 수단(10∼13)은 메모리내에 할당된 소정의 어드레스 공간인 것 및 이 기억 수단에 소정의 데이터를 구동 동작의 개시 전에 CPU에 의해 설정해 두는 것이 바람직하다.
(14)는 제 1 다이렉트 메모리 액세스 수단(이하 제 1 DMA 수단이라 칭함)이며, (15)는 제 2 다이렉트 메모리 액세스 수단(이상 제 2 DMA 수단이라 칭함)이다. 제 1 DMA(14) 및 제 2 DMA 수단(15)은 하나의 DMA에 의해 구성하더라도 좋고, 개개로 마련된 복수개의 DMA에 의해 구성하더라도 좋다.
(4)는 계시 수단에서 타이밍 데이터에 근거하여 시간 경과를 계측하고, 타임 업 신호를 출력한다. (6)는 구동 제어부에서, 제 1 제어 수단(16)(도 3에 도시함), 제 2 제어 수단(17)(도 13에 도시함)에 의해 송신된 제어 데이터를 수신하는 것에 의해 구동 기구(7)의 구동을 제어한다. 구동 기구(7)는, 예컨대 스텝 모터 또는 인쇄 헤드이나 이것에 한정되지 않는다.
동작에 대해 설명한다. CPU(1)로부터 제 1 DMA 수단(l4)에 구동 개시 신호가 송신되면, 제 1 DMA 수단(14)은 타이밍 데이터 기억 수단(10)의 테이블로부터 첫번째의 타이밍 데이터를 판독하여, 계시 수단(4)에 송신한다. 이 경우에 있어서 타이밍 데이터는, 현재의 동작 상황으로부터 다음 동작으로 전환하기까지의 시간 간격을 지정하는 시간 데이터이어도 좋다. 현재, 이 타이밍 데이터가 계시 수단(4)에 송신되면, 계시 수단(4)은 타이밍 데이터로 지정된 시간 경과를 계측하여, 지정 시간이 경과하였을 때에 타임 업 신호를 제 2 DMA 수단(15)에 출력한다.
타임 업 신호를 수신한 제 2 DMA 수단(15)은 우선, 제 1 제어 데이터 테이블(11)의 최초로 기억되어 있는 제어 데이터를 판독하여, 구동부(5)의 구동 제어부(6)에 송신한다. 제 1 제어 데이터의 송신이 완료하면, 다음에 제 2 제어 데이터 테이블(12)의 최초로 기억되어 있는 제어 데이터를 판독하여, 구동 제어부(6)에 송신한다. 마찬가지로 해서, 순차적으로, 구동 제어에 필요한 제 n 번째의 종류의 제어 데이터인 제 n 제어 데이터 테이블(13)의 최초로 기억되어 있는 제어 데이터를 구동 제어부(6)에 송신한다. 이들 제 1 내지 제 n 제어 데이터(n 종류)에 근거하여, 구동 제어부(6)는 구동 기구의 동작을 제어한다. 여기에 "n"은 임의의 수이며, 헤드 구동, 캐리지 구동, 용지 이송 등의 구동 대상에 따른 구동 제어에 필요한 제어 데이터의 수(종류)에 따라 다르다.
한편, 최후인 제 n 번째의 제어 데이터가 구동 제어부(6)에 송신되면, 제 n 제어 데이터의 구동 제어부(6)로의 송신을 트리거로 하여(송신의 완료를 트리거로 하는 것이 바람직하지만, 예컨대, 송신의 개시 등, 송신에 관한 어떠한 이벤트를 트리거로 해도 좋음 : 이하에서는 송신의 완료를 트리거로 하는 것으로 하여 설명함), 재차 제 1 DMA 수단(14)이 기동된다. 제 1 DMA 수단(14)의 기동은 도 2에 실 선(27)으로 도시하는 바와 같이, 제 n 제어 데이터의 송신 완료 후에 제 2 DMA 수단(15)으로부터 제 1 DMA 수단(14)에 인터럽트 신호를 송신하여 기동하도록 구성해도 좋고, 파선(28)으로 도시하는 바와 같이, 구동 제어부(6)로부터 제 1 DMA 수단(14)에 인터럽트 신호를 송신하여 기동하도록 구성하더라도 좋다.
제 1 DMA 수단(14)은 제 2 DMA 수단(15) 또는 구동 제어부(6)로부터의 인터럽트에 의한 기동 신호에 의해, 타이밍 데이터 테이블(10)로부터 두번째의 타이밍 데이터를 판독하고, 판독한 타이밍 데이터를 계시 수단(4)에 송신한다. 계시 수단(4)은 수신한 타이밍 데이터에 의해 지정된 시간 경과를 계측하고, 당해 데이터에 의해 지정된 시간의 경과시에 제 2 DMA 수단(15)에 다음(제 2 회째)의 타임 업 신호를 출력한다.
이 타임 업 신호를 수신하면, 제 2 DMA 수단(15)은 전회와 마찬가지로 해서 제 1 제어 데이터 테이블 내지 제 n 제어 데이터 테이블로부터 각각의 테이블의 두번째에 기억되어 있는 제어 데이터를 순차적으로 판독하여, 그 데이터를 구동 제어부(6)에 순차적으로 송신한다.
이하 마찬가지로 해서, 소정의 구동이 종료할 때까지, 타이밍 데이터 테이블(1O)∼제 n 제어 데이터 테이블(13)에 기억되어 있는 타이밍 데이터 및 각 제어 데이터에 따라, 구동 기구(7)가 구동된다. 구동량, 구동 속도 등의 구동 기구(7)의 제어 데이터로서, 구동 대상에 따른 타이밍 데이터 및 가공 제어 데이터의 모두를 구동 개시하기 전에 미리 CPU(1)에 의해 각 테이블(10 내지 13)에 설정해 두는 것에 의해, 구동 개시 후에는 CPU(1)의 개재없이 구동 기구를 정확하게 구동하는 것이 가능해진다.
다음에 제 2 DMA 수단(15)에 대해 보다 상세하게 설명한다.
또한, 도 2에서는, 구동 기구의 동작 제어에 타이밍 데이터 이외의 제어 데이터로서, 제 1 내지 제 n 제어 데이터(n 종류)를 사용하고 있지만, 전술한 바와 같이, 사용되는 제어 데이터의 종류는, 구동 기구 및 구동 형태에 따라 다르다. 예컨대, 스텝 모터의 구동 제어 등과 같이, 타이밍 데이터에 부가하고 또한 2 종류의 제어 데이터를 사용하는 경우가 전형적인 예이다. 따라서, 이하의 설명에서는, 설명을 알기 쉽게 하기 위해서, 타이밍 데이터와 2 종류의 제어 데이터를 사용하는 경우에 대해 설명한다.
도 3은 타이밍 데이터와 2 종류의 제어 데이터를 사용하는 경우의 실시예의 구성을 나타내는 기능 블럭도이다. 제 2 DMA 수단(15)은 제어 데이터의 종류에 대응하여, 제 1 제어 수단(16)과 제 2 제어 수단(17)이 마련되어 있다. 제 1 및 제 2 제어 수단(16, 17)도 CPU의 개재없이 메모리로부터 직접 데이터의 판독이 가능한 다이렉트 메모리 액세스 제어 수단이다.
제 1 DMA 수단으로부터 타이밍 데이터가 계시 수단(4)에 송신되면, 계시 수단(4)은 타이밍 데이터로 지정된 소정의 시간이 경과하였을 때에 타임 업 신호를 제 1 제어 수단(16)에 출력한다.
타임 업 신호를 수신한 제 1 제어 수단(16)은 제 1 제어 데이터 기억 수단(11)에 기억되어 있는 제 1 제어 데이터 테이블로부터 제 1 제어 데이터를 판독하여, 구동부(5)의 구동 제어부(6)에 송신한다. 제 1 제어 데이터의 구동 제어부(6)로의 송신이 완료하면, 제 2 제어 수단(17)이 기동된다. 제 2 제어 수단(l7)은 제 1 제어 데이터의 송신이 완료하였을 때에 제 1 제어 수단(16)으로부터 제 2 제어 수단(17)에 인터럽트 신호를 송출하여(실선(26)으로 도시함) 기동되도록 구성하더라도 좋고, 제 1 제어 데이터를 수신 완료한 후에 구동 제어부(6)로부터 제 2 제어 수단(17)에 인터럽트 신호(파선(29)으로 도시함)를 송출하여 기동되도록 구성하더라도 좋다.
제 2 제어 수단(17)은 제 2 제어 데이터 테이블(l2)에 기억되어 있는 최초의 제 2 제어 데이터를 판독하여, 구동 제어부(6)에 송신한다. 구동 제어부(6)는 이들 제어 데이터에 근거하여, 제 1 제어 데이터를 수신하였을 때 또는 제 1 및 제 2 제어 데이터의 쌍방을 수신하였을 때에 구동 기구(7)의 동작을 개시한다.
한편, 제 2 제어 데이터의 구동 제어부(6)로의 송신이 완료하면, 제 1 DMA 수단(14)이 기동된다. 제 1 DMA 수단(14)을 기동하기 위해서, 제 2 제어 데이터의 송신이 완료한 후에 제 2 제어 수단(17)으로부터 제 1 DMA 수단(14)으로 인터럽트 신호를 발생시키도록(실선(27)으로 도시함) 구성하더라도 좋고, 구동 제어부(6)로부터 제 1 DMA 수단(14)에 인터럽트 신호를 발생시키도록(파선(28)으로 도시함) 구성하더라도 좋다.
제 1 DMA 수단(14)은 제 2 제어 수단(17) 또는 구동 제어부(6)로부터의 인터럽트 신호를 수신하는 것에 의해, 타이밍 데이터 테이블로부터 다음(제 2 회째)의 타이밍 데이터를 판독하고, 판독한 타이밍 데이터를 계시 수단(4)에 송신한다. 계시 수단(4)은 수신한 타이밍 데이터에 근거하여 시간 경과를 측정하고, 해당 데이터에 의해 지정된 시간이 경과하였을 때에 제 1 제어 수단(16)에 다음(두번째)의 타임 업 신호를 출력한다.
이 타임 업 신호에 의해, 제 1 제어 수단(16)은 전회와 마찬가지로 하여 제 1 제어 데이터 테이블로부터 다음의 제 1 제어 데이터를 판독하고, 그 데이터를 구동 제어부(6)에 송신한다. 제 1 제어 데이터의 송신이 완료하면, 전회와 마찬가지로 제 2 제어 수단(17)이 구동되어 제 2 제어 데이터 기억 테이블로부터 다음 제 2 제어 데이터가 판독되고, 그 데이터가 구동 제어부(6)에 송신된다. 이 단계에서, 전회의 제어 데이터에 근거하는 구동 기구(7)의 동작은 종료하고, 다음의 제어 데이터에 근거하는 동작이 개시된다.
이하 마찬가지로 해서, 소정의 구동이 종료할 때까지, 타이밍 데이터 테이블(10), 제 1 제어 데이터 테이블(11) 및 제 2 제어 데이터 테이블(12)에 기억된 타이밍 데이터 및 제어 데이터에 근거하여 구동 기구(7)가 구동된다.
도 4는 타이밍 데이터 및 각종 제어 데이터를 구동부(5)에 송신하는 경우의 데이터 송신 순서 및 데이터 흐름을 이미지적으로 나타낸 것이다. 타이밍 데이터 테이블(10), 제 1 제어 데이터 테이블(11), 제 2 제어 데이터 테이블(12)이 메모리(2)내의 소정의 어드레스 공간에 마련되어 있고, 제 1 DMA 수단(14), 제 1 제어 수단(16) 및 제 2 제어 수단(17)은 DMA(3)내에 마련되어 있다.
구동 기구의 동작을 개시하기 전에, 우선, CPU(1)가 이제부터 구동하고자 하는 구동부(5)를 제어하기 위한 타이밍 데이터, 제 1 제어 데이터, 제 2 제어 데이터를 메모리(2)의 소정의 어드레스에 기입한다. 그 후 이하와 같이 동작하여 구동부(5)의 동작이 제어된다.
① CPU(1)가 DMA(3)의 DMA 제어부(18)에 제 1 DMA 수단(14)을 기동하는 신호를 송출한다.
② 이에 의해 DMA 제어부(18)는 제 1 DMA 수단(14)을 기동한다.
③ 제 1 DMA 수단(14)은 전술한 바와 같이, 메모리(2)의 타이밍 데이터 테이블(10)로부터 데이터를 판독한다. 판독 데이터의 어드레스는 제 1 DMA 수단(14)의 소스 어드레스 레지스터에 기억되어 있고, 한 번 판독할 때마다 다음의 데이터 어드레스를 지정하도록 증분된다.
④ 판독된 타이밍 데이터(도시하지 않음)는 송신 어드레스 레지스터(20)에 지정된 어드레스에 근거하여, 계시 수단(4)에 송신된다.
⑤ 계시 수단(4)은 타이밍 데이터에 의해 소정의 시간 경과를 감시하여, 그 시간 경과시에 제 1 제어 수단(16)에 대해 타임 업 신호를 제 1 제어 수단(16)에 출력한다. 계시 수단으로서, 타이머를 사용할 수 있다.
⑥ 타임 업 신호를 수신한 제 1 제어 수단(16)은 자신의 소스 어드레스 레지스터(도시하지 않음)에 근거하여 제 1 제어 데이터를 판독한다. 그 후, 소스 어드레스 레지스터의 어드레스를 다음의 데이터 어드레스로 증분시킨다.
⑦ 판독한 제 1 제어 데이터는 송신 어드레스 레지스터(도시하지 않음)에 근거하여 구동부(5)에 송신된다.
⑧ 제 1 제어 데이터의 송신이 종료하면, 제 2 제어 수단(17)이 기동된다.
⑨ 제 2 제어 수단(17)은 제 2 제어 데이터를 판독한다. 그 후, 제 1 DMA 수단(14) 및 제 1 제어 수단(16)과 마찬가지로 자신의 소스 어드레스 레지스터(도시하지 않음)를 다음 데이터 어드레스로 증분시킨다.
⑩ 판독한 제 2 제어 데이터는 구동부(5)에 송신된다.
⑪ 제 2 제어 데이터의 송신이 완료하면, 제 1 DMA 수단(14)이 다시 기동되어 소스 어드레스 레지스터(19)가 증분된 어드레스 데이터에 근거하여, 다음의 타이밍 데이터가 판독된다.
이하 마찬가지의 처리가 구동 종료할 때까지 반복되어, 구동 기구의 동작이 제어된다.
또한, 이하의 설명에 있어서는, 스텝 모터를 이용한 구동 기구 또는 인자 헤드 구동 기구에 대해 본 발명을 적용한 예를 이용하여 설명한다. 그러나, 본 발명은 이것에 한정되는 것이 아니라, 리니어 모터에 의한 구동 기구, 초음파 진동자를 이용한 구동 기구, 전자석을 사용한 구동 기구, 또는 이들을 조합한 구동 기구 이외에, 본 발명의 기술 사상이 적용 가능한 모든 구동 기구를 그 대상으로 하고 있다. 따라서, 그 적용 대상 장치도 프린터에 한하지 않고, ATM, 카드 판독기 스캐너 등의 상기 구동 기구가 적용 가능한 모든 장치가 대상으로 된다.
(실시예 2)
도 5를 이용하여 본 발명의 실시예 2를 설명한다. 도 5는 스텝 모터의 구동을 제어하는 본 발명의 제어 장치의 예를 나타내는 기능 블럭도이다. 도 5에서는, 도 3의 제 1 DMA 수단(14), 제 1 제어 수단(l6) 및 제 2 제어 수단(17)이 각각 위상 전환 타이밍 제어 수단(21), 위상 패턴 제어 수단(22) 및 상 전류 제어 수단(23)으로서 도시하고 있다. 이들 각 제어 수단은 모두 DMA 수단에 의해 구성되는 것이지만, 이들 수단의 제어 기능을 기능 블록으로 하여 알기 쉽게 나타낸 것이다. 이들 제어 수단(21∼23)으로부터 소정의 제어 데이터를 모터 구동 제어부(24)에 송신하여 모터(25)의 구동을 제어한다.
도 6은 스텝 모터(25)를 구동하는 경우의 모터 제어의 전형 예를 나타내는 그래프이다. 스텝 모터를 구동하기 위해서는, 모터에 부가하는 전압의 위상을 순차적으로 전환할 필요가 있다. 또한, 모터를 구동하는 경우에는, 도 6(a)에 도시하는 바와 같이 동작 개시로부터 서서히 가속하고, 정상 속도까지 도달한 것을 유지하여, 정지 위치에 근접하면 감소할 필요가 있다. 그 때문에, 위상의 전환 타이밍은 가속시, 정상 속도시 및 감속시에 따라 달라진다. 또한, 가속, 정상 속도 및 감속을 제어하기 위해서는 각각의 기간에 있어서 전류의 제어도 필요하게 된다.
도 6(b)에 도시하는 바와 같이 구동 개시시에는 많은 전류를 흘려 모터의 회전을 가속할 필요가 있다. 정상 속도시에는 일정 속도를 유지할 만큼의 전류로도 좋지만, 감속시에는 브레이크를 걸기 위해서 큰 전류를 흘릴 필요가 있다. 또한, 도 6(b)로부터 알 수 있는 바와 같이, 모터 정지 후에도 모터에는 미 전류가 흐른다. 이것은, 모터의 잔류 진동을 빨리 감쇠시키는 것을 목적으로 하여, 모터 정지 후에 모터의 전체 상에 미 전류를 흘리는 것이다(이것을 러쉬(rush) 통전이라고 부름). 따라서, 모터가 정지 위치에 도달한 후, 최후의 제어 데이터로서, 러쉬 통전의 위상 패턴(전체 상), 러쉬 통전의 전류값, 및 러쉬 통전 시간이 구동 제어부에 송신되어, 러쉬 통전 시간의 경과시에 모터 구동 동작은 종료한다.
각 그래프의 밑에 있는 숫자는, 각 위상의 전환 타이밍을 나타내고 있다. 여기서부터 알 수 있는 바와 같이, 모터(25)의 구동은 두번째의 전환 타이밍으로부터 개시된다.
이들 타이밍 데이터 이외의 제어 데이터는, 구동하고자 하는 구동 기구의 예정 구동량에 맞추어, 모터(25)의 가속, 일정 속도의 구동, 감속 및 정지까지의 구동 동작을 순차 제어하는 데 필요한 모든 데이터가 CPU(1)에 의해 모터 구동의 개시 전에 생성되어, 메모리(2)의 각 테이블(10 내지 12a)에 기억된다.
도 7을 이용하여 보다 상세하게 설명한다. 도 7은 모터 구동 개시의 요구로부터 전환 타이밍 데이터, 제 1 제어 데이터 및 제 2 제어 데이터의 설정을 거쳐서, 다음 전환 타이밍을 설정하는 일련의 제어 동작을 위한 반복 처리의 상태 변이를 도시하는 도면이다.
CPU(1)에 의해 구동 개시가 전해지면, 제 1 DMA 수단(21)은 위상 전환 타이밍을 규정하는 타이밍 데이터 테이블(10)의 최초의 시간 데이터(타이밍 데이터)를 판독하여 타이머(4)에 송신한다. 타이머(4)는 수신한 시간 데이터에 근거하여 소정의 시간 경과를 감시한다(제 1 상태 : 40).
타이머(4)가 소정의 시간 경과를 검지하면 제 1 제어 수단(22)은, 제 1 제어 데이터 테이블(1la)로부터 최초의 위상 패턴 데이터를 판독하여, 모터 구동 제어부(24)에 위상을 설정한다(제 2 상태 : 41).
최초의 위상 패턴 데이터의 송신이 종료하면, 제 2 제어 수단(23)이 제 2 제 어 데이터 테이블(12a)로부터 최초의 상 전류값을 판독하고, 모터 구동 제어부(24)에 최초의 상 전류값을 설정한다. 제 2 제어 수단(23)에 의해 상 전류값의 설정이 행해지면, 모터(25가 구동을 개시한다(제 3 상태 : 42).
상 전류의 송신이 종료하면, 다시 제 1 DMA 수단(21)이 기동되고, 타이밍 데이터 테이블(10)로부터 다음 시간 데이터(타이밍 데이터)가 판독되어 타이머(4)에 설정된다(제 1 상태 : 40). 타이머(4)가 소정의 시간 경과를 검지하면, 제 2 DMA 수단(15)에 의해 다음 위상 패턴이 모터 구동 제어 수단(6)에 설정되고(제 2 상태 : 41), 곧 이어서 상 전류값이 설정된다(제 3 상태 : 42). 이에 의해, 두번째의 위상 패턴에 의한 구동이 개시된다.
이하의 설명으로부터 알 수 있는 바와 같이, 첫번째의 시간 데이터(타이밍 데이터)는 최초의 위상 패턴, 상 전류값을 설정하기 위한 더미의 값이다. 모터(25)는 두번째의 타이밍 데이터(시간 데이터)로 지정된 기간이 경과하여 위상 패턴 등이 변경되기까지의 기간, 최초로 설정된 위상 패턴 및 상 전류값에 따라 구동된다. 마찬가지로 다음 위상 패턴 및 상 전류값에 따라 다음 전환 타이밍까지 모터(25)가 구동된다.
이렇게 하여, 모터(25)는 도 6(a)에 도시하는 바와 같이 두번째의 전환 타이밍으로부터 구동을 개시하여, 소정의 전환 타이밍 데이터 및 제어 데이터에 따라, 그 구동 동작이 제어된다.
도 8은 모터의 구동 제어의 처리 순서를 나타내는 흐름도를 나타낸다.
프로그램 등에 의해 스텝 모터(25)의 구동이 요구되면, CPU(1)는 구동 기구의 동작 개시로부터 정지까지의 제어에 필요한 위상 전환의 타이밍 데이터(본 예에서는 시간 데이터)와, 그 전환 타이밍마다 설정되는 위상 패턴 데이터 및 전류값 데이터를 산출하여, 메모리(2)상의 소정의 어드레스에 마련된 각종 테이블(10 내지 12a)에 그들의 데이터를 설정한다(S100). 그 후, CPU(1)로부터 제 1 DMA 수단(21)에 모터 구동 개시의 신호가 출력한다(S101).
CPU(1)로부터의 구동 개시 지시에 의해, 제 1 DMA 수단(21)은 메모리(2)의 타이밍 데이터 테이블로부터 시간 데이터를 판독하고(S102), 타이머(4)에 세트한다 (S103). 타이머로의 시간 데이터의 세트에 의해 타이머는 시동하여, 설정 시간의 경과 후 타임 업 신호를 제 1 제어 수단922)에 출력한다. 타임 업 신호를 수신할 때까지는 이 상태를 계속한다(S104 : 아니오). 타임 업 신호를 수신하면(S104 : 예), 제 1 제어 수단(22)이 메모리(2)의 위상 패턴 데이터를 판독하고(Sl05), 모터 구동 제어부(24)에 송신한다(S106).
위상 패턴 데이터의 송신이 종료하면, 다음에 제 2 제어 수단(23)에 의해 상 전류 데이터 테이블로부터 상 전류 데이터를 판독하고(S107), 모터 구동 제어부(24)에 상 전류값을 설정하는 타이밍 데이터 기억 수단으로부터 타이밍 데이터를 판독하여, 계시 장치(4)에 송신한다. 이에 의해 모터(25)에 상 전류가 흘러, 모터의 구동을 개시한다.
그 후, 다음 위상 전환의 타이밍 데이터(시간 데이터)가 있으면(S109 : 예), 제 1 DMA 수단(21)이 다음 시간 데이터를 전환 타이밍 데이터 테이블로부터 판독하여 타이머(4)에 세트하고(S102, 103), 타이머(4)가 타임 업할 때까지, 이 상태를 유지한다(S104 : 아니오). 즉, 제 1 회째의 처리 공정(S106)에서 설정한 위상 패턴에, 제 2 회째의 처리 공정(S103)에서 설정한 시간 데이터에 의해 지정한 기간, 제 1 회째의 처리 공정(S108)에서 설정한 상 전류가 흐르게 된다.
타이머(4)가 타임 업하면(S104 : 예), 제 2 회째의 위상 패턴 데이터 및 상 전류 데이터가 모터 구동 제어부(24)에 설정되고(S105∼S108), 제 3 회째의 시간 데이터로 지정된 기간, 그들 설정값에 대응하는 전류가 흐른다(S102∼Sl04). 이하 마찬가지로 해서, 위상 전환 타이밍 데이터 테이블의 타이밍 데이터에 근거하여, 순차 마찬가지의 처리가 반복된다(S102∼S109). 위상 전환 타이밍 데이터 테이블에, 다음의 시간 데이터가 없어지면, 처리를 종료한다.
(실시예 3)
다음에 도 9를 이용하여 본 발명의 다른 실시예를 설명한다. 도 9는 인자 헤드의 구동을 제어하는 본 발명에 따른 제어 장치의 예를 나타내는 기능 블럭도이다. 도 9에서는, 도 3의 제 1 DMA 수단(14), 제 1 제어 수단(16) 및 제 2 제어 수단(17)이 각각 헤드 구동 타이밍 제어부(30), 헤드 구동 트리거 제어부(31) 및 인자 데이터 제어부(32)로서 도시되어 있다. 도 3의 실시예와 마찬가지로, 이들 각 제어부(30 및 32) 수단도 DMA에 의해 구성되는 것이지만, DMA의 기능을 블럭으로 분할하여 알기 쉽게 나타낸 것이다. 이들 제어부(30∼32)에 의해 소정의 제어 데이터를 헤드 구동 제어부(33)에 송신하여 헤드(34)의 구동을 제어한다.
기본적인 동작은 실시예 2에서 설명한 것과 마찬가지이지만, 그 처리하는 제 어 데이터가 다르다. 타이밍 데이터로서는, 헤드 구동 타이밍 데이터, 헤드 구동 트리거 데이터 및 인자 데이터이며, 이들 데이터는 구동 전에 CPU에 의해 테이블에 설정된다.
기본 동작의 일례를, 도 10을 이용하여 설명한다. 제 1 DMA로 이루어지는 구동 타이밍 제어부(30)에 의해 헤드를 구동하는 타이밍 데이터를 타이머(4)에 설정한다(제 1 상태 : 40a). 타이머(4)가 타임 아웃하면 헤드 구동 트리거 제어부(31)에 의해 구동 트리거를 헤드 구동 제어부에 송신하여, 헤드를 구동시킨다(제 2 상태 : 41a). 이 단계에서는 인자 데이터가 송신되어 있지 않기 때문에, 아무것도 인자하지 않는다. 다음에 헤드 구동 제어부(33)에 의해, 예컨대 1 라인 도트분의 인자 데이터를 송신한다(제 3 상태 : 42a). 송신되는 인자 데이터의 양은 1회의 헤드 구동에 의해 인자 가능한 것으로 하는 것이 바람직하다. 헤드 구동 제어부(33)는 수신한 인쇄 데이터를 기억해 두고, 다음 회의 구동 트리거를 수신하였을 때에 인쇄한다.
이상의 설명에서는, 모터를 구동하는 구동 제어 장치와, 헤드 구동 제어 장치를 각기 따로따로 설명하였으나, 실제의 프린터 동작에서는 어느 쪽의 구동 기구도 서로 관련하면서 동작한다. 따라서, 헤드 구동 제어 장치 및 모터 구동 장치의 각각에 본 발명을 적용하여, 서로 동기를 취하면서 동작시키는 것도 가능하다. 이 경우의 동기 취득으로서는, 예컨대, 모터 구동 기구와 헤드 구동 기구 쌍방의 제어 데이터를 작성하는 단계에서 쌍방의 동기를 취하여 각각의 제어 데이터를 작성하여 메모리에 기억하고, 실제의 구동은 그 동기 완료 제어 데이터에 근거하여 각각 독립적으로 구동하는 방법을 채용할 수 있다. 또한, 예컨대 모터 구동의 타이밍을 실제의 헤드 구동의 타이밍에 동기시키도록 하는 등, 실제의 동작에 있어서 동기를 취하도록 구성할 수도 있다.
또한, 전술의 설명에서는, 각 제어 데이터의 송신이 완료하였을 때에 다음 제어 데이터를 판독하여 송신하는 구성을 나타내었으나, 구동 장치의 성질에 따라, 타이밍 데이터 및 각 제어 데이터를 동시에 송신하도록 구성하더라도 좋고, 타이밍 데이터를 제외한 다른 제어 데이터를 동시에 송신하도록 구성하더라도 좋으며, 또한 소정의 복수의 제어 데이터만을 동시에 송신하도록 구성하더라도 좋다.
(실시예 4)
다음에 도 11을 이용하여, 본 발명의 구동 제어 장치의 다른 실시예를 설명한다. 도 11은 본 발명의 다른 실시예에 따른 구동 기구 제어 장치의 개략을 나타내는 블럭도이며, 구동 기구로서 시리얼 프린터의 인자 헤드를 인자 라인에 따라 가로 방향으로 이동시키는 캐리지 구동 기구를 나타내고 있다. 캐리지 구동 기구(70)는 스텝 모터로 구동되어, 스텝 모터의 위상을 정확하게 변화시켜 가는 것에 의해, 캐리지를 정확하게 이동시키고 있다. 또한, 도 11에서는 설명을 알기 쉽게 하기 위해서, 주요한 입출력 장치인 계시 수단(4)과, 캐리지 구동부(70)만 나타내고 있으나, 필요에 따라 각종 수단이 마련된다.
CPU(1)는 중앙 처리 장치이며, 메모리(2)에 기억된 프로그램(펌웨어, OS를 포함함)에 따라 각종 연산, 처리 및 제어을 실행한다. DMA(3)는 다이렉트 메모리 액세스 제어부이며, CPU(1)의 개재없이 각종 입출력 장치와 메모리(2) 사이에서의 데이터의 송신을 실행하는 장치이다.
메모리(2)에는, CPU의 동작을 제어하는 펌웨어, OS(오퍼레이팅 시스템) 및 각종 프로그램 등이 기억되어 있는 것 이외에, 캐리지 구동부(70)를 제어하기 위해 필요한 각종 제어 데이터 등이 기억된다. 메모리(2)로부터 데이터를 판독하기 위한 어드레스, 및 메모리(2)로부터 판독한 데이터의 송신 목적지는 어드레스 라인(8)에 의해 지정되고, 판독된 데이터는 데이터 버스(9)를 거쳐서 송신된다.
메모리(2)로부터 계시 수단(4)에 타이밍 데이터가 송신되면, 계시 수단(4)은 수신한 타이밍 데이터에 따라 시간을 계측하여, 소정의 시간이 경과하였을 때에 타임 업 신호를 DMA(3)에 출력한다. 이에 의해 DMA(3)는 메모리(2)로부터 캐리지 구동부(70)의 모터 제어부(24)에 소정의 데이터를 송신한다. 모터 제어부는 이들 제어 데이터에 따라서 모터 드라이버(74)를 구동하여, 모터(25)를 회전시킨다. 모터(25)가 회전하면 동력 전달 기구(치 부착 벨트, 기어 등에 의해 구성됨)(71)에 의해, 캐리지(73)가 인자 라인에 따라 캐리지 이동 통로내를 이동한다.
캐리지 통로내에는, 캐리지 이동 통로내의 홈 포지션에 홈 포지션 검출 센서(이하, HP 검출 센서라 칭함)(72)가 마련되어 있다. HP 검출 센서로서는, 광 센서, 초음파 센서, 기계적 센서 등의 각종 센서를 사용할 수 있다.
HP 검출 센서(72)의 출력 신호는 구동 확인 수단(50)에 송출된다. 구동 확인 수단(50)은 캐리지(73)의 계산상의 위치를 순차적으로 추적하고 있고, HP 검출센서(72)가 캐리지를 검출한 때의 캐리지(73)의 계산상의 위치로부터, 계산상 캐리 지의 위치와 실제의 캐리지 위치의 어긋남을 검출하고, 어긋남이 소정의 범위보다 클 때에, CPU에 인터럽트 신호를 송출한다. CPU는 구동 확인 수단(50)으로부터의 인터럽트 신호에 의해 소정의 에러 대응 처리를 실행한다.
다음에, 도 12를 이용하여 도 11의 실시예를 더욱 상세하게 설명한다. 도 12는 도 11에 나타내는 캐리지 구동 기구 제어 장치의 동작을 보다 상세하게 설명하기 위한 기능 블럭도이다. 도면 중, 메모리(2)에는, 각종 제어 데이터 테이블(10 내지 12a)가 마련되어 있다. 이들 테이블에 기억되어 있는 각종의 제어 데이터는 여기로부터 움직이는 캐리지의 이동에 따라 모터의 구동을 제어하기 위한 데이터이며, 모터 구동 제어 프로그램 등(도시하지 않음)에 의해 작성되어, 모터 구동 동작의 개시 전에 메모리(2)에 기억된다.
(10)은 모터의 동작을 전환하는 타이밍을 제어하기 위한 제어 데이터(계시 데이터)를 기억하고 있는 타이밍 데이터 테이블이다. (1la)는 각 전환 타이밍마다 모터에 공급하는 전압의 위상 패턴 데이터를 기억하고 있는 위상 패턴 데이터 테이블, (12a)는 각 전환 타이밍마다 모터에 흐르는 전류값을 기억하고 있는 상 전류값 테이블이다.
또한, 도 12에서는, 3개의 제어 데이터를 기억하고 있는 예를 나타내고 있으나, 피구동 기구의 종류에 따라서, 3개 이상 또는 3개 이하의 제어 데이터를 기억하도록 구성하더라도 좋다. 또한, 이들 데이터를 메모리(2)가 아니라, 메모리(2)와는 별도의 레지스터 등의 기억 수단(도시하지 않음)에 기억하도록 구성하더라도 좋다.
메모리(2)의 데이터 테이블(10 내지 12a)은 각각 DMA(3)의 위상 전환 타이밍 제어부(21), 위상 패턴 제어부(22) 및 상 전류 제어부(23)에 의해 판독되고, 소정의 각 부에 송신된다. 이들의 제어부(21 내지 23)는 DMA에 의해 구성되어 있고, 각 제어부(21 내지 23)가 메모리(2)로부터 순차적으로 제어 데이터의 송신을 실행한다. 이들 DMA에 의한 최초의 송신 동작은, CPU(1)로부터의 동작 개시 신호에 의해 기동되고, 그 후에는 각 송신 처리의 종료 또는 타임 업 신호에 의해 각 제어부(DMA)(21 내지 23)가 순차적으로 기동되어, 송신 동작이 실행된다.
우선, 타이밍 데이터가 위상 전환 타이밍 제어부(21)에 의해 타이밍 데이터 테이블(10)로부터 계시 수단(4)에 송신된다. 계시 수단(4)은 수신한 타이밍 데이터에 근거하여 시간 경과를 계측하고, 타임 업 신호를 위상 패턴 제어부(22) 및 구동 확인 수단(50)에 출력한다. 위상 패턴 제어부(22)는 타임 업 신호의 수신에 따라 위상 패턴 데이터를 위상 패턴 데이터 테이블(1la)로부터 모터 구동 제어부(24)에 송신한다. 모터 구동 제어부(24)는 수신한 위상 패턴 데이터를 모터 드라이바(74)에 출력한다. 다음에, 상 전류 제어부(23)가 상 전류값 테이블(12a)로부터 상 전류값을 판독 모터 구동 제어부(24)에 송신한다. 모터 구동 제어부(24)는 수신한 상 전류값을 모터 드라이버(74)에 출력하고, 이에 의해 모터(25)가 회전을 개시한다. 모터(25)가 회전하면 동력 전달 기구(71)를 거쳐서, 캐리지(73)가 이동 통로내로의 이동을 개시한다.
상 전류값의 송신이 완료하면, 상 전류 제어부(23)는 제어를 위상 전환 타이밍부(21)에 건네 준다. 이에 따라 위상 전환 타이밍부(21)는 다음 타이밍 데이터 를 판독하여, 계시 수단(4)에 송신한다. 계시 수단(4)은 타이밍 데이터로 지정된 시간의 경과 후에 타임 업 신호를 송출하고, 위상 패턴 제어부(22)를 기동하여, 다음 위상 패턴을 송신한다. 이하 순차적으로 마찬가지의 처리가 행해지고, 모터(25)가 순차적으로 가속되면서 구동되어 캐리지(73)가 이동한다.
도 13을 이용하여 캐리지의 이동 경로에 대해 설명한다. 도 13은 시리얼 프린터 캐리지의 이동 가능 영역(81), 인자 가능 영역(82), 인자 금지 영역(83) 및 홈 포지션의 위치를 도시하는 도면이다. 캐리지의 이동 범위의 대부분은 인자 가능 영역(82)이며, 캐리지(73)가 이 영역을 이동하면서, 인자 헤드(도시하지 않음)에 의해 인자를 실행한다. 인자 가능 영역(82)은 프린터의 종류에 따라 다르지만, 도 13에서는 설명을 간단히 하기 위해서 한 종류만 나타내고 있다. 도면의 우단으로부터 일정의 범위는 인자 금지 영역(83)이다. 인자 금지 영역(83)에서는, 캐리지(73)의 이동은 가능하나, 인자는 할 수 없다.
인자 금지 영역(83)에는 홈 포지션(이하 HP라 칭함)이라고 불리우는 소정의 위치(제 1 기준 위치에 상당함)에 HP 검출 센서(위치 검출기에 상당함)(72)(도 11, 도 12 참조)가 마련되어 있다. 캐리지(73)가 이동하여, HP 검출 센서를 가로지르면 HP 검출 센서에 의해 캐리지(73)가 검출되고, 캐리지(73)가 실제로 홈 포지션의 위치까지 이동한 것을 확인하는 것이 가능해진다. HP 검출 센서(72)가 캐리지를 검출하면 검출 신호를 구동 확인 수단(50)에 송출한다.
캐리지(73)의 이동은 모터(25)를 구동하는 것에 의해 행해진다. 예컨대, 인자를 하는 경우에는, 인자하는 범위가 연속하여 1 라인인 경우에는, 캐리지(73)는 인자 가능 영역(82)의 우단 위치로부터 인자 가능 영역의 좌단까지 이동한다. 인자 종료 후, 그 위치에서 정지하고 있는지, 인자 가능 영역의 우단까지 되돌아가는지는, 자유롭게 설계할 수 있다. 인자를 위한 캐리지(73)의 이동은, 전술한 바와 같이, 예정 이동량에 맞추어 필요한 모터 제어 데이터를 미리 작성하여 메모리에 기억하고, 기억한 제어 데이터를 DMA에서 판독하여 구동 제어부로 순차적으로 송신하는 것에 의해 실행된다. 모터 제어 데이터의 생성 및 메모리로의 기억 동작은, CPU 및 소정의 프로그램에 의해 실행할 수 있다.
캐리지 구동 동작이 정확하게 행해지고 있는지 여부를 확인하기 위한 캐리지 구동 동작(이하 구동 상태 확인 동작이라 칭함)도, 인자의 경우와 마찬가지로, 미리 모터 제어 데이터를 작성하여 메모리에 기억하며, 그것을 DMA에 의해 순차적으로 판독하여 구동 제어부에 송신하는 것에 의해 실행된다. 이 구동 상태 확인 동작은 정확한 구동 동작을 실현하기 위해서, 적어도 일정한 시간 간격마다 행해진다.
예컨대, 잉크젯 프린터 등에서는, 장기간 인자를 실행하지 않는 경우의 인자 헤드의 건조를 방지하기 위해, 인자가 행해질 때에는 정기적으로 더미의 잉크 검출 동작을 실행하고 있다. 그 때문에, 캐리지는 정기적으로(예컨대, 6초 내지 10초 이내에 1회 등) 잉크 분출을 받아들이는 잉크 리셉터의 위치로 이동한다. 따라서, 잉크 리셉터를 통상, 인자 금지 영역(83)내의 홈 포지션 근방에 마련하는 것에 의해, 이 잉크 판독 동작시에 이것과 동시에 구동 확인 처리를 실행하도록 구성하는 것도 가능하다. 이 경우, 캐리지(73)의 구동 동작은 공통이지만, 잉크 분출을 위 한 인자 헤드 구동 제어와 병행하여, 구동 상태 확인 처리를 실행하는 것이 필요하다.
도 l4를 이용하여, 구동 확인 처리 동작의 일례에 대해 설명한다. 도 14는 구동 상태 확인 처리의 일례를 설명하기 위한 상태 천이도를 나타낸다.
도 14의 처리 동작의 예를 설명하기 전에, 구동 상태를 확인하기 위한 캐리지 이동 동작의 전형 예를 간단히 설명한다. 우선, 캐리지는 대기 상태에서, 제 2 기준 위치(도 13의 S)에 정지하고 있다. 이 상태에서, 구동 상태 확인 동작을 위한 제어 데이터가 메모리에 설정 기억된다. 다음에 CPU로부터 DMA에 구동 개시 신호가 출력되면, DMA가 메모리로부터 제어 데이터를 판독하여, 구동 제어부에 송신한다. 이에 의해, 모터(25)는 구동 제어 동작을 개시한다. 모터가 구동되면 캐리지(73)는 제 2 기준 위치 S로부터 오른쪽 방향으로 순차적으로 이동하여 간다. 캐리지가 홈 포지션 HP를 통과하면, HP 센서로부터 검출 신호가 출력된다. HP 센서로부터의 검출 신호를 수신하면, 이것에 근거하여, 구동 상태의 확인이 행해진다.
다음에, 구동 상태의 확인 처리에 대해 설명한다. 구동 확인 처리를 실행하고 있지 않는 대기 상태(51)에서는, 모든 플러그, 카운터 등이 클리어되어 있다. 구동 확인 처리의 동작을 개시하기 위해서는, 캐리지(73)를 홈 포지션 HP쪽으로 이동시키기 위해서, CPU(1)에 의해 구동 상태 확인 동작을 위한 타이밍 데이터 및 제어 데이터를 생성하고, 생성한 이들 데이터를 메모리(2)의 테이블(10 내지 12a)에 기억한다. 이들 제어 데이터 등의 메모리로의 기억이 완료하면, CPU(1)는 DMA(3)의 위상 전환 타이밍 제어부(21)(도 12 참조)를 기동하여, 캐리지를 이동시키기 위 한 모터(25)의 구동 제어를 개시한다. 이 구동 제어의 기동 신호는, 동시에 구동 확인 처리 동작을 기동하여, 도 14의 하한값 대기 상태(52)로 들어간다.
하한값 대기 상태(52)에서는, 캐리지(73)의 계산상의 위치가 홈 포지션 HP의 위치로서 허용할 수 있는 계산상의 하한값에 도달하였는지 여부를 확인한다. 캐리지(73)의 계산상의 위치가 소정의 하한값에 도달할 때까지의 동안에, HP 검출 신호를 검출한 경우에는, 실제의 캐리지의 위치가 계산상의 캐리지의 위치보다 도 l3의 우측으로 크게 어긋나고 있는 것으로 판단하여, 구동 에러라고 간주하는 것으로 하고 있다. 그 때문에, 하한값에 도달할 때까지의 동안, 홈 포지션 HP를 검출하였는지 여부를 확인한다(HP 판정 1). 하한값에 도달할 때까지의 동안에 홈 포지션 HP를 검출하면 구동 이상이라고 판단하여, 에러 처리를 위한 CPU(1)에 인터럽트 신호가 출력된다(에러 처리 INT 출력 상태(54)). HP 판정 1에서 홈 포지션 HP가 검출되지 않으면, 하한 대기 상태(52)가 계속된다.
계산상의 하한값에 도달하면, 상한값 대기 상태(53)로 이행한다. 상한값 대기 상태(53)에서는, 캐리지(73)의 계산상의 위치가 홈 포지션 HP의 위치로서 허용할 수 있는 계산상의 상한값에 도달할 수 있는지 여부를 확인한다. 캐리지(73)의 계산상의 위치가 소정의 상한값에 도달할 때까지의 동안에, HP 검출 신호를 검출 하지 않는 경우에는, 실제의 캐리지 위치가 계산상의 캐리지 위치보다 도 13의 좌측 방향으로 크게 어긋나고 있는 것으로 판단하여, 구동 에러로 간주한다.
이 상태를 검출하기 위해서, 상한값에 도달할 때까지의 동안, 위상 전환 타이밍마다 홈 포지션 HP를 검출했는지 여부를 확인한다(HP 판정 2). 상한값에 도달 할 때까지 홈 포지션 HP가 검출하지 않는 경우에는 구동 이상으로서, CPU(1)를 기동하여 소정의 에러 처리를 실행하기 때문에 CPU(1)에 인터럽트 신호가 출력한다(상태(54)). CPU(1)에 에러 인터럽트가 행해지면, CPU(1)는 구동 동작 이상을 표시하거나, 에러의 상황에 따라 조정 동작 처리를 실행하여, 에러로부터의 복귀를 대기한다(56).
HP 판정 2에서 홈 포지션 HP가 검출되면, 계산상의 캐리지 위치와 실제의 캐리지 위치의 어긋남이 적정한 범위내인 것으로 하여, 구동 확인 처리를 정상으로 종료시키는 정상 종료 처리(55)가 행해진다. 정상 종료 처리(55)에서는, 홈 포지션 HP를 검출한 후, 캐리지를 인자 가능 영역(82)의 우단 위치까지 이동하는 구동 동작 등이 행해져, 인자 가능 상태로 복귀한다(56).
도 15에 본 발명에 따른 구동 확인 수단(50)의 일 실시예의 기능 블럭도를 나타낸다.
구동 확인 수단(50)은 홈 포지션 HP의 위치로서 허용할 수 있는 계산상의 하한값을 기억하기 위한 하한 레지스터(61)와, 허용할 수 있는 계산상의 상한값을 기억하기 위한 상한 레지스터(65)를 갖고 있다. 하한 레지스터(61) 및 상한 레지스터(65)에는, 데이터 버스(9)를 거쳐서 CPU(1)로부터 상한값 및 하한값이 세트된다. 또한, 구동 확인 수단(50)은 상 전환 신호(타임 업 신호)에 의해 카운트 업되는 카운터(63)가 마련되어 있다. 카운터(63)는 구동 확인 처리 개시 전에 제어부(60)로부터의 신호에 의해 클리어된다. 카운트 업된 카운터(63)의 값은 비교기(62, 64)에 의해, 하한 레지스터(61) 및 상한 레지스터(65)와 비교된다. 카운터(63)의 값( 카운트값)이 하한 레지스터(61) 또는 상한 레지스터(65)와 일치하면, 매칭 신호가 제어부로 보내어진다.
제어부(60)는 제어 레지스터(66)의 데이터에 근거하여 제어되고, 구동 확인 처리 후의 상태(정상 종료 상태, 에러 상태 등)는 상태 레지스터(67)에 기억된다. 제어 레지스터(66)에는 CPU(1)로부터 데이터가 기입되고, 상태 레지스터(67)의 내용은 CPU(1)로부터 판독 가능하다. 또한, 카운터(63)의 카운터값도 데이터 버스(9)를 거쳐서, CPU(1)로부터 판독 가능하다. 제어부(60)에는, 매칭 신호, 상 전환 신호(타임 업 신호), 홈 포지션 신호(HP 신호) 등이 입력되고, 비교기(62 및 64)로부터의 매칭 신호의 출력 타이밍과 HP 신호의 수신 타이밍에 의해, 구동 에러인지 여부를 판정한다.
도 13, 도 15 및 도 19를 이용하여, 제어부(60)의 동작을 설명한다. 도 16은 구동 확인 수단(50)의 제어부(60)의 확인 동작 처리를 도시하는 흐름도이다. 현재, 캐리지(73)는 도 13의 S의 위치에 정지하고 있는 것으로 한다.
구동 확인 동작을 개시하기 전에 CPU(1)는 전술한 바와 같이, 우선, 모터 구동을 위한 제어 데이터를 메모리(2)에 설정한다. 그것과 동시에, CPU(1)는 하한 레지스터(61), 상한 레지스터(65), 제어 레지스터(66) 등의 설정 및 카운터의 클리어를 실행한다. 상한 레지스터(65) 및 하한 레지스터(61)를 어떠한 값으로 세트할지는, 어느 정도의 정밀도로 에러 검출하는 것에 의해, 자유롭게 설정 가능하다. 여기서는, 하한 레지스터(61)에 하한값 "1000"을 설정하고, 상한 레지스터(65)에 상한값 "1020"을 설정하는 것으로 하여 설명한다.
CPU(1)가 DMA(3)의 위상 전환 타이밍부(21)를 기동하면, 동시에 구동 확인 수단(50)도 기동한다(S200). 위상 전환 타이밍부(21)(도 12 참조)로부터의 계시 데이터에 근거하여, 계시 수단(4)은 위상 전환 타이밍마다 타임 업 신호를 출력한다. 이들 타임 업 신호에 근거하여, 위상 패턴 제어부(22) 내지 상 전류 제어부(23)는 모터 구동 제어부(24)에 위상 패턴 데이터 및 상 전류값을 송신한다. 모터 구동 제어부(24)는 이들 제어 데이터에 의해 모터(25)를 구동하여, 캐리지(73)가 홈 포지션 HP를 향하여 이동을 개시한다.
한편, 구동 확인 처리 동작을 개시한 구동 확인 수단(50)에서는, 계시 수단(4)으로부터 타임 업 신호가 출력될 때마다, 카운터(63)가 카운트 업된다(S201, S202). 다음에 HP 검출 센서(72)로부터, 검출 신호가 출력되었는지 여부를 확인하고(S203 : 아니오), HP 검출 신호가 출력되고 있지 않으면, 카운터(63)의 값과 하한 레지스터(6])의 값을 비교한다(S204). 카운터(63)의 값이 상한값에 도달하지 않고 있으면(S204 : 아니오), 재차 마찬가지의 처리를 반복한다(S201, S202, S203, S204).
이 단계에서 HP 검출 신호가 검출된다는 것은, 계산상에서는 캐리지(73)는 하한값 "1000"에도 도달하지 않고 있지 않음에도, 실제로는 캐리지(73)가 홈 포지션 HP에 도달하고 있는 것을 의미하고 있어, 에러 상태로 판단되고(S203 : 예), CPU(1)에 인터럽트 신호가 출력된다(S209). 그 후, 각종 레지스터(61, 65) 등이 클리어되어(S211), 대기 상태로 된다(S200). CPU(1)는 인터럽트에 의한 에러 처리에 의해, 카운터(63)의 값, 및 상태 레지스터(67)의 내용을 참조할 수 있다.
카운터(63)가 카운트 업되어 "1000"로 되면, 하한 레지스터(61)의 값과 카운터(63)의 값이 일치하여(S204 : 예), 상한값 대기 모드(53)(도 14 참조)로 되고, 다음 타임 업 신호를 대기한다(S205 : 아니오). 타임 업 신호를 수신하면(S205 : 예), 카운터(63)가 +1되고(S206), 그 후 HP 검출 신호가 출력되고 있는지 여부를 확인한다(S207). HP 검출 신호가 출력되고 있지 않으면(S207 : 아니오), 상한 레지스터(65)의 값과 카운터(63)의 값이 동등한지 확인되고(S208), 동등하지 않은 경우(S208 : 아니오)에는 마찬가지의 처리가 반복된다(S205, S206, S207, S208).
그 동안, HP 검출 신호가 출력되면(S207 : 예),
하한값 "1000" < 카운터값 < 상한값 "1020"
의 범위에서, 캐리지(73)가 실제로 홈 포지션 HP에 도달한 것으로 되기 때문에, 계산값과 실제의 캐리지(73)의 위치가 허용값내에 있어, 구동 동작은 정상인 것으로 판정하고, 카운터(63), 레지스터(65) 등을 모두 클리어하여(S210), 대기 상태(51)(도 14 참조)로 된다.
카운터의 값이 "1020"로 되면, 상한 레지스터(65)의 값과 카운터(63)의 값이 일치한다(S208 : 예). 이것은, 계산상의 상한값 "1020"까지 구동하고 있을 뿐임에도, 실제로는 캐리지(73)가 홈 포지션에 도달하지 않고 있는 것을 의미하고 있어, 구동 에러로 판단된다.
홈 포지션 HP를 검출한 후의 캐리지(73)의 동작으로서는, 에러로 판정된 경우에는, CPU(1)로의 인터럽트에 의해, CPU(1)에서 모터(25)를 구동 정지시키거나, 또는, 소정의 위치까지 복귀시키도록 모터(25)를 구동시키는 것이 가능해진다. 정 상 종료의 경우에는, 구동 확인 동작을 위한 제어 데이터의 생성 및 메모리(2)로의 설정시에, 단계 수(카운터(63)의 카운트값과 동일함)가 상한값인 "1020" 또는 "1021"을 초과하면, 소정의 위치(예컨대, 제 2 기준 위치인 도 l3의 "S"의 위치)까지 캐리지를 되돌리도록 제어 데이터를 설정해 두는 것 등이 가능하다.
도 17 및 도 12를 이용하여, 캐리지(73)의 구동 제어(모터(25)의 구동 제어)와 구동 확인 수단의 관계를 설명한다.
도 17은 모터 구동 개시의 요구로부터 전환 타이밍 데이터, 위상 패턴 데이터 및 상 전류 데이터의 설정을 거쳐서, 다음의 전환 타이밍을 설정하는 일련의 제어 동작과, 그 동작중에 있어서의 구동 확인 처리 동작의 관계를 나타내는 상태 변이도이다.
CPU(1)에 의해 구동 확인 동작을 위한 구동 개시가 전해지면, 타이밍 데이터 테이블(10)로부터 최초의 타이밍 데이터를 판독하여, 계시 수단(4)에 송신한다. 또한, 타이밍 데이터는 계시 수단(4)에 세트할 시간 데이터이기 때문에, 도 17에서는, 시간 데이터로 기재하고 있다. 계시 수단(4)은 송신된 시간 데이터에 근거하여, 소정의 시간 경과를 감시한다(제 1 상태 : 57).
계시 수단(4)이 소정의 시간 경과를 검지하면, 계시 수단(4)이 타임 업 신호를 출력한다. 이에 근거하여, 위상 패턴 제어부(22)는 위상 패턴 데이터 테이블(11a)로부터 최초의 위상 패턴 데이터를 판독하여, 모터 구동 제어부(24)에 위상을 설정한다(제 2 상태 : 58). 이것과 동시에, 타임 업 신호에 근거하여, 구동 확인 수단(50)이 구동 확인 수단(50)의 카운터(63)를 카운트 업한다.
최초의 위상 패턴 데이터의 송신이 종료하면, 상 전류 제어부(23)가 상 전류값 테이블(12a)로부터 최초의 상 전류값을 판독하여, 모터 구동 제어부(24)에 상 전류값을 설정한다. 상 전류값의 설정이 행해지면, 모터(25)가 구동을 개시한다(제 3 상태 : 59).
상 전류의 송신이 종료하면, 재차 위상 전환 타이밍 제어부(21)가 구동되고, 타이밍 데이터 기억부(21)로부터 다음(두번째)의 타이밍 데이터가 판독되어 계시 수단(4)에 설정된다(제 1 상태 : 57). 계시 수단(4)이 이 두번째의 타이밍 데이터에 근거하여 타임 업 신호를 출력하기까지의 동안, 첫번째의 위상 패턴 및 상 전류값에 의한 모터(25)의 구동이 행해진다.
계시 수단(4)이 소정의 시간 경과를 검지하여, 타임 업 신호를 출력하면, 위상 패턴 제어부(22)에 의해 다음(두번째)의 위상 패턴이 모터 구동 제어부(24)에 설정되고(제 2 상태 : 58), 동시에 구동 확인 수단(50)의 카운터(63)가 +1된다. 계속해서, 상 전류 제어부(23)에 의해, 바로 그 다음(두번째)의 상 전류값이 설정된다(제 3 상태 : 59). 이에 의해, 다음(세번째)의 타임 업 시호가 출력될 때까지, 두번째의 위상 패턴 및 상 전류값에 의한 모터(25)의 구동이 행해진다.
이상의 설명으로부터 알 수 있는 바와 같이, 첫번째의 타이밍 데이터는 최초의 위상 패턴, 상 전류값을 설정하기 위한 더미의 값이다. 모터(25)는 두번째의 타이밍 데이터(시간 데이터)로 지정된 기간이 경과하여 위상 패턴 등이 변경될 때까지, 최초로 설정된 위상 패턴 및 상 전류값에 따라 구동된다. 마찬가지로 다음 위상 패턴 및 상 전류값에 따라 다음 전환 타이밍까지 모터(25)가 구동된다.
이렇게 하여, 모터(25)는 도 6(a)에 도시하는 바와 같이 두번째의 전환 타이밍으로부터 구동을 개시하여, 소정의 전환 타이밍 데이터 및 제어 데이터에 따라, 그 구동 동작이 제어된다. 그 동안, 구동 확인 수단(50)의 카운터(63)는 타임 업 신호가 출력될 때마다 +1되어, 하한 레지스터(61) 및 상한 레지스터(65)의 값과 비교된다.
또한, 이상의 구동 확인의 동작은 메모리내의 동작 프로그램에 의해 제어된다. 예컨대, 프린터에서는, 전술한 실시예에서도 설명한 바와 같이, 통상, 인자 영역으로부터 떨어진 위치에 홈 포지션 센서를 마련하고 있고, 일정 기간내에 적어도 1회, 캐리지를 이 홈 포지션 센서에 검지시키도록 구동하는 것에 의해 구동 확인이 행해진다. 이러한 구동 확인 동작을 어느 정도의 빈도로 실행할지는, 구동 제어 프로그램 작성 단계에서, 당업자가 자유롭게 설계할 수 있는 사항이다. 예컨대, 소정의 시간 간격으로 정기적으로 실행하도록 하거나, 구동 기구의 동작 상황에 따라 확인 동작의 타이밍을 변화시키는 것도 할 수 있다.
또한, 제 1 기준 위치를 인자 영역으로부터 떨어진 홈 포지션에 설정한 경우에는, 인자 중에 홈 포지션을 검출하면 즉시 에러로 하는 것도 가능하다. 단, 제 1 기준 위치가 반드시 인자 영역의 범위 밖에 마련해야만 하는 것이 아니라, 인자 영역내에 제 1 기준 위치를 설정하고, 거기에 위치 검지 센서를 마련하여, 인자 중에 구동 제어 상태의 확인을 실행하도록 하는 것도 가능하다.
또한, 위치 검출 센서를 복수 마련하고, 이들에 대응한 구동 확인 수단을 마 련하더라도 좋다. 예컨대, 위치 검출 센서를 이동 통로의 좌우에 마련하는 것도, 인자 영역내에 1개 이상 마련하는 것도 가능하고, 이동 통로의 좌우 및 인자 영역내에 선택적으로 배치하는 것도 가능하다. 이와 같이 복수개의 위치 검출 센서와 구동 확인 수단을 마련하는 것에 의해, 미세한 구동 동작의 확인이 더욱 가능해져, 신뢰성을 향상시킬 수 있다.
또한, 잉크젯 프린터에 있어서는, 정상의 인자를 실행하기 때문에, 일정의 빈도로 더미의 잉크 분출 동작을 행하고 있다. 그 때문에, 홈 포지션 가까이, 더미의 잉크 분출용의 잉크 수용구를 마련하여 놓은 것에 의해, 더미의 잉크 분출 동작에 따른 캐리지의 구동 동작을 이용하여, 구동 확인 처리를 실행하도록 구성할 수도 있다.
또한, 이상의 구동 동작 확인의 설명에서는, 프린터의 인자 헤드용 캐리지의 구동 기구를 중심으로 설명하였으나, 이것에 한하지 않고, 예컨대, 인자 용지의 반송 기거, 지대의 반송 기구, 자기 헤드 이외의 헤드의 구동 기구 등, 본 발명의 기술 사상이 적용 가능한 모든 분야를 대상으로 하는 것이다. 그 경우에도, 제 1 기준 위치 및 제 2 기준 위치를 어디에 마련할지는, 해당 기술 분야의 기술 상식에 의해 적절하게 설정 가능하다.
또한, 이상의 설명에 있어서는, 주로 스텝 모터에 의한 구동 기구 및 인자 헤드 구동 기구를 이용하여 본 발명의 실시예를 설명했다. 그러나, 전술한 바와 같이, 본 발명은 이것에 한정되는 것이 아니라, 리니어 모터에 의한 구동 기구, 초음파 진동자를 이용한 구동 기구, 전자석을 사용한 구동 기구, 또는 이들을 조합한 구동 기구의 이외의 본 발명의 기술 사상이 적용 가능한 모든 구동 기구를 그 대상으로 하고 있다. 이들 구동 기구의 제어에 있어서도, 본 발명에 따른 DMA 제어에 근거하여, 각각의 구동 기구에 특유의 각종 제어 데이터를 각각의 구동 기구 특유의 타이밍으로 공급하는 것에 의해, 구동 동작을 개시한 후에는, CPU의 개재없이 구동 기구의 제어가 가능해진다.
이상 설명한 바와 같이, 본 발명은 미리 메모리내에 타이밍 데이터 및 소정의 제어 데이터를 기억해 두고, 타이밍 데이터의 타이머로의 설정 및 제어 데이터의 구동 기구로의 송신을 DMA에 의해 순차적으로 실행하도록 구성하였다. 이에 의해, 본 발명에서는, CPU의 인터럽트 처리에 의하지 않고, 또한 고가의 전용 하드웨어를 이용하지 않고, 고정밀도의 모터 구동을 가능하게 하도록 이루어진 것이다.

Claims (25)

  1. 구동 기구를 제어하는 제어 데이터 및 제어 데이터의 송신 타이밍을 제어하는 계시(計時) 데이터를 생성하고, 구동 제어부로의 제어 데이터의 송신을 기동하는 기동 신호를 송출하는 데이터 생성 수단과,
    상기 제어 데이터에 근거하여 구동 기구의 동작을 제어하는 구동 제어부와,
    상기 계시 데이터 및 제어 데이터를 기억하는 기억 수단과,
    상기 계시 데이터를 수신하였을 때에 시간 계측 동작을 개시하고, 수신한 상기 계시 데이터에 의해 지정된 시간이 경과하였을 때에 타임 업(time up) 신호를 출력하는 계시 수단과,
    소정의 기동 신호에 근거하여 기동되고, 상기 계시 데이터를 상기 기억 수단으로부터 판독하여, 상기 계시 수단에 송신하는 제 1 다이렉트 메모리 액세스 수단과,
    상기 계시 수단으로부터 타임 업 신호를 수신하는 것에 의해, 상기 제어 데이터를 상기 기억 수단으로부터 판독하여, 구동 제어부에 송신하는 제 2 다이렉트 메모리 액세스 수단
    을 구비하는 것을 특징으로 하는 구동 기구 제어 장치.
  2. 제 1 항에 있어서,
    상기 데이터 생성 수단은 복수의 계시 데이터와 당해 계시 데이터에 대응하는 복수의 제어 데이터를 생성하는 수단을 더 구비하고,
    상기 제 2 다이렉트 메모리 액세스 수단은 첫번째의 계시 데이터에 대응하는 제어 데이터의 송신 완료 후에, 두번째의 계시 데이터를 판독하기 위한 기동 신호를 상기 제 1 다이렉트 메모리 액세스 수단에 출력하는 수단을 더 구비하며,
    상기 제 1 다이렉트 메모리 액세스 수단은 상기 제 2 메모리 액세스 수단으로부터의 기동 신호에 근거하여, 상기 기억 수단으로부터 두번째의 계시 데이터를 판독해서, 상기 계시 수단에 송신하는 수단을 더 구비하는 것을 특징으로 하는
    구동 기구 제어 장치.
  3. 제 2 항에 있어서,
    상기 제 2 다이렉트 메모리 액세스 수단은,
    상기 계시 수단으로부터의 타임 업 신호에 의해 기동되고, 상기 타임 업 신호의 수신시에, 상기 구동 기구의 동작을 제어하기 위해 상기 기억 수단에 기억된 복수의 제 1 제어 데이터로부터, 상기 계시 데이터에 대응하는 제 1 제어 데이터를 판독하여, 상기 구동 제어부에 송신하는 제 1 제어부와,
    상기 제 1 제어 데이터의 송신 완료에 의해 기동되고, 상기 구동 기구의 동작을 제어하기 위해 상기 기억 수단에 기억된 복수의 제 2 제어 데이터로부터, 상기 계시 데이터에 대응하는 제 2 제어 데이터를 판독하여 상기 구동 제어부에 송신 하며, 송신 후에 상기 제 1 다이렉트 메모리 액세스 수단에 상기 기동 신호를 출력하는 제 2 제어부를 구비하는 것을 특징으로 하는
    구동 기구 제어 장치.
  4. 제 1 항 내지 제 3 항중 어느 한 항에 있어서,
    상기 구동 기구는 스텝 모터 구동 기구로 이루어지고, 상기 계시 데이터, 및 상기 제어 데이터는 각각, 모터의 위상 전환 타이밍을 제어하기 위한 타이밍 데이터, 모터의 위상 전환시에 설정하는 위상 패턴 데이터, 및 위상 전환시에 모터에 공급하는 전류를 제어하는 상(相) 전류값으로 이루어지는 것을 특징으로 하는 구동 기구 제어 장치.
  5. 제 4 항에 있어서,
    상기 데이터 생성 수단은, 모터의 가속시, 감속시 및 정상 동작시에 있어서의 각각의 상기 계시 데이터, 상기 위상 패턴 데이터 및 상기 상 전류값의 기본 데이터를 구비하고 있고, 이들 기본 데이터에 근거하여 구동시의 상기 계시 데이터, 제 1 제어 데이터 및 제 2 제어 데이터를 작성하는 것을 특징으로 하는 구동 기구 제어 장치.
  6. 제 1 항 내지 제 3 항중 어느 한 항에 있어서,
    상기 구동 기구는 헤드 구동 기구로 이루어지고, 상기 계시 데이터 및 상기 제어 데이터는, 각각 헤드 구동의 타이밍을 제어하는 데이터, 실제로 헤드를 구동시키는 구동 트리거 데이터 및 인쇄 데이터로 이루어지는 것을 특징으로 하는 구동 기구 제어 장치.
  7. 구동 기구를 제어하는 제어 데이터 및 제어 데이터의 송신 타이밍을 제어하는 계시 데이터를 생성하고, 구동 제어부로의 제어 데이터의 송신을 기동하는 기동 신호를 송출하는 데이터 생성 수단과,
    상기 제어 데이터에 근거하여 구동 기구의 동작을 제어하는 구동 제어부와,
    상기 계시 데이터 및 제어 데이터를 기억하는 기억 수단과,
    계시 데이터를 수신하였을 때에 시간 계측 동작을 개시하고, 수신한 상기 계시 데이터에 의해 지정된 시간이 경과하였을 때에 타임 업 신호를 출력하는 계시 수단과,
    소정의 기동 신호에 근거하여 기동되고, 상기 기억 수단으로부터 상기 계시 데이터를 판독하여 상기 계시 수단에 전송하며, 그 후 당해 계시 수단으로부터 출력되는 상기 타임 업 신호에 근거하여 상기 기억 수단으로부터 상기 제어 데이터를 상기 구동 제어부에 송신하는 다이렉트 메모리 액세스 수단과,
    상기 구동 기구의 동작부가 제 1 기준 위치에 도달하였을 때에 위치 검출 신호를 출력하는 위치 검출 수단과,
    전송한 상기 제어 데이터로부터 구동 기구의 계산상의 동작 위치를 산출하고, 당해 계산상의 동작 위치와 상기 검출 신호에 근거하는 실제의 동작 위치를 비교하는 것에 의해 상기 구동 기구의 동작 상태를 확인하며, 구동 동작의 이상을 검출하였을 때에 동작 이상 신호를 출력하는 구동 확인 수단
    을 구비하는 것을 특징으로 하는 구동 기구 제어 장치.
  8. 제 7 항에 있어서,
    상기 구동 확인 수단은 소정의 카운트 데이터가 설정되는 비교 데이터 기억부와, 제 2 기준 위치에서 초기 설정되어 상기 타임 업 신호를 수신할 때마다 카운트되는 카운터와, 상기 비교 데이터 기억부에 기억된 상기 소정의 카운트 데이터와 상기 카운터의 카운트값을 비교하는 비교기를 구비하며, 상기 위치 검출 신호를 수신하였을 때의 상기 비교기의 비교 출력에 따라, 상기 구동 기구의 동작 상태를 확인하는 것을 특징으로 하는 구동 기구 제어 장치.
  9. 제 8 항에 있어서,
    상기 구동 확인 수단의 상기 비교 데이터 기억부는 적어도, 상기 제 2 기준 위치로부터 상기 제 1 기준 위치까지의 카운트값의 허용 하한값을 기억하는 제 1 비교 데이터 기억부와, 상기 제 2 기준 위치로부터 상기 제 1 기준 위치까지의 카운트값의 허용 상한값을 기억하는 제 2 비교 데이터 기억부를 구비하며,
    상기 구동 확인 수단은 상기 카운터의 카운트값이 상기 허용 하한값 이하 또는 상기 허용 상한값 이상의 범위에서 상기 위치 검출 신호를 수신하였을 때에, 상기 동작 이상 신호를 출력하는 것을 특징으로 하는 구동 기구 제어 장치.
  10. 제 9 항에 있어서,
    상기 구동 확인 수단은 상기 동작 이상 신호를 인터럽트 신호로서 상기 데이터 생성 수단에 출력하고, 상기 데이터 생성 수단은, 당해 인터럽트 신호에 근거하여 동작 이상에 대응하는 에러 처리를 실행하는 것을 특징으로 하는 구동 기구 제어 장치.
  11. 제 7 항 내지 제 10 항중 어느 한 항에 있어서,
    상기 구동 확인 수단으로부터의 상기 동작 이상 신호에 근거하여, 구동 기구의 동작을 정지시키는 구동 정지 신호를 더 출력하는 것을 특징으로 하는 구동 기구 제어 장치.
  12. 제 7 항 내지 제 10 항중 어느 한 항에 있어서,
    상기 구동 기구는 스텝 모터에 의한 구동 기구로 이루어지고, 상기 제어 데이터는 상기 스텝 모터의 위상 변경의 전환 타이밍을 기동하기 위한 계시 신호와, 상기 전환 타이밍마다의 위상 패턴과, 상기 전환 타이밍마다의 공급 전류값으로 이루어지는 것을 특징으로 하는 구동 기구 제어 장치.
  13. 제 7 항에 있어서,
    상기 구동 기구는 스텝 모터에 의해 구동되는 캐리지로 이루어지는 것을 특징으로 하는 구동 기구 제어 장치.
  14. 제 7 항 내지 제 10 항중 어느 한 항에 있어서,
    상기 구동 기구는 잉크젯으로 이루어지는 인자(印字) 헤드의 캐리지 구동 기구로 이루어지고, 상기 구동 확인 수단은 상기 잉크젯 헤드 클리닝 동작을 위한 캐리지 구동 동작시에 상기 구동 확인 동작 처리를 실행하는 것을 특징으로 하는 구동 기구 제어 장치.
  15. 구동 기구의 제어 방법에 있어서,
    (a) 구동 기구를 제어하는 각 종류마다 복수개의 데이터를 갖는 적어도 한 종류의 제어 데이터 및 해당 복수개의 제어 데이터를 한개씩 순차적으로 송신하기 위한 복수의 타이밍 데이터를 생성하여 기억하는 공정과,
    (b) 상기 복수의 타이밍 데이터의 첫번째의 데이터를 판독하는 공정과,
    (c) 판독한 상기 첫번째의 타이밍 데이터를 수신하였을 때에 시간 계측 동작을 개시하고, 해당 첫번째의 타이밍 데이터에 의해 지정된 시간의 경과시에 타임 업 신호를 출력하는 공정과,
    (d) 상기 타임 업 신호에 근거하여, 상기 기억한 모든 종류의 제어 데이터의 첫번째의 데이터를 판독해서, 상기 구동 기구를 제어하는 수단에 송신하는 공정과,
    (e) 상기 첫번째의 상기 제어 데이터 모두를 상기 구동 기구의 제어 수단에 송신하였을 때에, 상기 기억한 타이밍 데이터의 두번째의 데이터를 판독하고, 해당 판독한 두번째의 타이밍 데이터에 근거하여, 상기 공정 (c) 내지 (e)를 실행하는 공정과,
    (f) 상기 기억한 복수의 타이밍 데이터 모두에 관한 판독이 종료될 때까지 상기 공정 (e)를 반복하는 공정
    을 구비하는 것을 특징으로 하는 구동 기구 제어 방법.
  16. 제 15 항에 있어서,
    상기 공정 (d)는,
    (g) 상기 타임 업 신호에 의해, 제 l 종류의 제어 데이터로부터 최후의 종류의 제어 데이터까지 각 종류의 제어 데이터를 순차적으로 하나씩 판독하여 상기 구동 제어부에 송신하는 공정을 구비하는 것을 특징으로 하는 구동 기구 제어 방법.
  17. 제 15 항 또는 제 16 항에 있어서,
    상기 복수의 타이밍 데이터는 스텝 모터의 위상을 전환하는 상 전환 타이밍 데이터이며, 상기 제어 데이터는 상기 상 전환 타이밍에, 스텝 모터에 부가되는 상 패턴 데이터, 및 각 전환 타이밍마다 상기 각 상 패턴에 흐르는 상 전류값으로 이루어지는 것을 특징으로 하는 구동 기구 제어 방법.
  18. 제 15 항 또는 제 16 항에 있어서,
    상기 복수의 타이밍 데이터는 헤드 구동의 타이밍을 제어하는 타이밍 데이터이며, 상기 제어 데이터는 헤드의 구동 트리거 데이터, 및 인쇄 데이터로 이루어지는 것을 특징으로 하는 구동 기구 제어 방법.
  19. 구동 기구의 구동 동작 확인 방법에 있어서,
    (a) 동작 확인용의 소정의 구동을 실행시키기 위해, 복수의 제어 데이터와 상기 제어 데이터를 송신하는 타이밍을 제어하는 복수의 타이밍 데이터를 생성하여 기억하는 공정과,
    (b) 상기 타이밍 데이터를 순차적으로 판독하고, 해당 판독한 타이밍 데이터에 근거하는 소정의 타이밍에, 상기 기억한 제어 데이터를 순차적으로 판독하여 구동 기구의 제어 수단에 순차적으로 송신해서, 상기 구동 기구를 구동하는 공정과,
    (c) 상기 타이밍 데이터 및 제어 데이터에 근거하여, 구동 기구의 구동량을 산출하는 공정과,
    (d) 상기 산출한 구동량으로부터 계산한 동작 위치와, 구동 기구의 동작부가 소정의 위치에 도달하였을 때에 출력되는 위치 검출 신호에 의해 인식되는 현실의 동작 위치로부터 계산상의 위치와 현실의 위치의 차이를 산출하는 공정과,
    (e) 상기 계산상의 동작 위치와 상기 현실의 동작 위치의 차이가 소정의 범위 밖일 때에 구동 동작 이상 신호를 출력하는 공정
    을 구비하는 것을 특징으로 하는 구동 기구의 구동 동작 확인 방법.
  20. 제 19 항에 있어서,
    상기 구동 기구의 계산상의 구동량을 산출하는 공정 (c)는, 상기 공정 (b)에 서 상기 연속하는 소정의 타이밍마다 전송되는 상기 제어 데이터의 송신 회수를 카운트하는 공정으로 이루어지는 것을 특징으로 하는 구동 기구의 구동 동작 확인 방법.
  21. 제 19 항에 있어서,
    상기 공정 (e)는 상기 계산상의 동작 위치와 상기 현실의 동작 위치가 상기 소정의 범위 밖일 때에 구동 기구의 동작을 정지시키는 정지 신호를 출력하는 공정을 더 포함하는 것을 특징으로 하는 구동 기구의 구동 동작 확인 방법.
  22. 제 19 항 또는 제 20 항에 있어서,
    상기 타이밍 데이터는 스템 모터의 위상 패턴의 전환 타이밍 및 전류 제어 데이터를 전환하는 전환 타이밍 제어 데이터로 이루어지고, 상기 제어 데이터는 각 전환 타이밍마다의 위상 패턴 데이터와, 각 전환 타이밍마다 공급하는 전류 제어 데이터로 이루어지는 것을 특징으로 하는 구동 기구의 구동 동작 확인 방법.
  23. 삭제
  24. 청구항 15 또는 청구항 19에 기재된 구동 기구의 구동을 제어하는 방법의 각 공정을 실현하는 실행 명령 세트 및 데이터 세트를 구비하는 컴퓨터 프로그램을 저장한 컴퓨터로 판독 가능한 정보 기록 매체.
  25. 제 24 항에 있어서,
    상기 정보 기록 매체는 상기 컴퓨터 프로그램을 컴팩트 디스크, 플로피 디스크, 하드 디스크, 또는 자기 기록 테이프에 기록한 것을 특징으로 하는 정보 기록 매체.
KR1020010025404A 2000-05-12 2001-05-10 구동 기구 제어 장치, 구동 기구의 제어 방법, 구동 기구의 구동 동작 확인 방법, 및 이들 방법의 프로그램을 기록한 기록 매체 KR100575917B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2000140541A JP4655328B2 (ja) 2000-05-12 2000-05-12 駆動機構制御装置、駆動機構の制御方法及びその記録媒体
JP2000-140541 2000-05-12
JP2000158348A JP4631131B2 (ja) 2000-05-29 2000-05-29 駆動機構制御装置及びその制御方法
JP2000-158348 2000-05-29

Publications (2)

Publication Number Publication Date
KR20010104242A KR20010104242A (ko) 2001-11-24
KR100575917B1 true KR100575917B1 (ko) 2006-05-02

Family

ID=26591801

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010025404A KR100575917B1 (ko) 2000-05-12 2001-05-10 구동 기구 제어 장치, 구동 기구의 제어 방법, 구동 기구의 구동 동작 확인 방법, 및 이들 방법의 프로그램을 기록한 기록 매체

Country Status (9)

Country Link
US (1) US6848061B2 (ko)
EP (1) EP1154341B1 (ko)
KR (1) KR100575917B1 (ko)
CN (1) CN1199114C (ko)
AT (1) ATE291248T1 (ko)
CA (1) CA2343830C (ko)
DE (1) DE60109354T2 (ko)
ES (1) ES2236078T3 (ko)
HK (1) HK1041951B (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4144240B2 (ja) * 2002-04-12 2008-09-03 セイコーエプソン株式会社 制御装置および制御方法
JP3997172B2 (ja) 2002-04-26 2007-10-24 キヤノン株式会社 モータの制御装置、モータの制御方法、電子機器、記録装置およびモータドライバコントローラ
US7412400B1 (en) 2002-06-27 2008-08-12 Microsoft Corporation System and method for providing personal location information to location consumers from a location services server
US7102122B2 (en) * 2003-05-29 2006-09-05 Hewlett-Packard Development Company, L.P. Methods and means for using a photosensor as an encoder and a trigger
US7114014B2 (en) * 2003-06-27 2006-09-26 Sun Microsystems, Inc. Method and system for data movement in data storage systems employing parcel-based data mapping
US20040268082A1 (en) * 2003-06-27 2004-12-30 Michael Yatziv Method and system for parcel-based data mapping
US7401234B2 (en) * 2004-03-01 2008-07-15 Freescale Semiconductor, Inc. Autonomous memory checker for runtime security assurance and method therefore
US7503074B2 (en) 2004-08-27 2009-03-10 Microsoft Corporation System and method for enforcing location privacy using rights management
JP4533239B2 (ja) * 2005-05-24 2010-09-01 キヤノン株式会社 画像読取装置および画像形成装置
US7779288B2 (en) * 2007-03-19 2010-08-17 Kabushiki Kaisha Toshiba High resolution timer circuit and time count method for suppressing increase in storage capacity
JP2011161649A (ja) * 2010-02-04 2011-08-25 Ricoh Co Ltd 画像形成装置、サーボ制御装置、プログラム
US10409234B2 (en) * 2011-11-28 2019-09-10 Kyocera Corporation Power control apparatus, power control system, and power control method
JP5939236B2 (ja) * 2013-11-29 2016-06-22 株式会社デンソー モータ制御装置
CN109520745B (zh) * 2018-11-28 2021-03-23 北京新能源汽车股份有限公司 一种车辆上下车方便性的验证装置
CN112198818B (zh) * 2019-07-08 2022-05-13 浙江宇视科技有限公司 步进式驱动结构的控制方法、装置、设备及存储介质
CN111262484A (zh) * 2020-03-23 2020-06-09 杭州涂鸦信息技术有限公司 基于linux高精度定时器的步进电机控制方法及其系统和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11289357A (ja) * 1998-04-01 1999-10-19 Japan Radio Co Ltd 受信データ処理方式

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5790740A (en) * 1980-11-26 1982-06-05 Nec Corp Information transfer device
GB2136332B (en) 1983-01-21 1986-09-03 Protocol Eng Ltd Improvements in or relating to computer controlled tools for the production of graphic material for use in colour printing or like processes
US5140340A (en) * 1991-01-30 1992-08-18 Eastman Kodak Company Apparatus and method for printing of images with compensation for dislocation of printing media
JPH0632018A (ja) * 1992-07-22 1994-02-08 Hitachi Ltd プリンタ印字ヘッドの自動調整機構
JPH06113595A (ja) 1992-09-29 1994-04-22 Casio Comput Co Ltd モータ制御装置
US5518324A (en) * 1993-01-29 1996-05-21 International Business Machines Corporation Platen to print head gap adjustment arrangement
US5583410A (en) 1994-10-21 1996-12-10 Pitney Bowes Inc. Method and apparatus for multiplex control of a plurality of stepper motors
JP3625508B2 (ja) * 1994-12-27 2005-03-02 株式会社リコー 画像読取装置
JP3280556B2 (ja) * 1995-11-08 2002-05-13 カルソニックカンセイ株式会社 位置決め装置
JPH09289795A (ja) * 1996-04-22 1997-11-04 Canon Inc パルスモータ駆動装置及びその制御方法
US6075336A (en) * 1996-07-26 2000-06-13 Citizen Watch Co., Ltd. Drive mechanism for stepping motor in printer

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11289357A (ja) * 1998-04-01 1999-10-19 Japan Radio Co Ltd 受信データ処理方式

Also Published As

Publication number Publication date
HK1041951A1 (en) 2002-07-26
CA2343830A1 (en) 2001-11-12
EP1154341A3 (en) 2002-11-13
CN1324032A (zh) 2001-11-28
CN1199114C (zh) 2005-04-27
US6848061B2 (en) 2005-01-25
US20010049754A1 (en) 2001-12-06
DE60109354D1 (de) 2005-04-21
ATE291248T1 (de) 2005-04-15
ES2236078T3 (es) 2005-07-16
EP1154341A2 (en) 2001-11-14
EP1154341B1 (en) 2005-03-16
CA2343830C (en) 2005-02-08
HK1041951B (zh) 2005-12-02
DE60109354T2 (de) 2006-04-27
KR20010104242A (ko) 2001-11-24

Similar Documents

Publication Publication Date Title
KR100575917B1 (ko) 구동 기구 제어 장치, 구동 기구의 제어 방법, 구동 기구의 구동 동작 확인 방법, 및 이들 방법의 프로그램을 기록한 기록 매체
JP4144240B2 (ja) 制御装置および制御方法
US6419338B1 (en) Printing apparatus and a printing method
US5312193A (en) Control device for a matrix printer
JP3053144B2 (ja) プリンタのキャリッジモータ制御装置
JPS63185641A (ja) シリアルドットマトリクスプリンタ
KR0185048B1 (ko) 스텝모터의 위치 제어와 인자헤드의 인자 제어 장치 및 방법
KR100687686B1 (ko) 인쇄 도트 어긋남 보정 제어 방법 및 그 인쇄 장치
EP0303124A1 (en) Control for enabling flight timing of hammers during printing
JP4631131B2 (ja) 駆動機構制御装置及びその制御方法
US4603984A (en) Apparatus and method for the reduction of printing offset in bidirectional printing devices
KR100591096B1 (ko) 셔틀 제어 방법
KR100210353B1 (ko) 프린터의 정밀인쇄제어장치
JPH0899439A (ja) ワイヤドットレコーダ
KR20110002204A (ko) 모터 제어 장치 및 그 모터 제어 방법
JP2739617B2 (ja) シリアルドットプリンタ
JPH0313077B2 (ko)
JP4591646B2 (ja) 印字装置の制御装置
JP3809774B2 (ja) 印字装置および印字方法
JPH01269564A (ja) 印刷システム
JPH0564927A (ja) 印字タイミング調整機能を備えたプリンタ装置
JPS6347176A (ja) プラテンギヤツプ測定装置
JPH07290765A (ja) ドットプリンタのシャトル制御装置
JPS6137459A (ja) 印字幅自動設定装置を備えたプリンタ
JP2000127509A (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: 20130404

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140401

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee