KR100294213B1 - Step Motor Control Method and Apparatus_ - Google Patents
Step Motor Control Method and Apparatus_ Download PDFInfo
- Publication number
- KR100294213B1 KR100294213B1 KR1019980044631A KR19980044631A KR100294213B1 KR 100294213 B1 KR100294213 B1 KR 100294213B1 KR 1019980044631 A KR1019980044631 A KR 1019980044631A KR 19980044631 A KR19980044631 A KR 19980044631A KR 100294213 B1 KR100294213 B1 KR 100294213B1
- Authority
- KR
- South Korea
- Prior art keywords
- acceleration
- resolution
- deceleration pattern
- step motor
- deceleration
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 27
- 230000001133 acceleration Effects 0.000 claims abstract description 131
- 238000003860 storage Methods 0.000 claims abstract description 17
- 239000000872 buffer Substances 0.000 claims description 18
- 230000003139 buffering effect Effects 0.000 claims description 4
- 230000003247 decreasing effect Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 2
- 230000008901 benefit Effects 0.000 abstract description 3
- 238000004519 manufacturing process Methods 0.000 abstract description 3
- 238000012545 processing Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 10
- 238000012937 correction Methods 0.000 description 9
- 238000002360 preparation method Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000006641 stabilisation Effects 0.000 description 2
- 238000011105 stabilization Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
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
- H02P8/00—Arrangements for controlling dynamo-electric motors rotating step by step
- H02P8/14—Arrangements for controlling speed or speed and torque
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/04—Scanning arrangements, i.e. arrangements for the displacement of active reading or reproducing elements relative to the original or reproducing medium, or vice versa
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Facsimile Scanning Arrangements (AREA)
- Control Of Stepping Motors (AREA)
Abstract
본 발명은 평판에 놓여 있는 원고에 대하여 스캐닝모듈을 이동시켜 스캐닝하기 위한 구동력을 제공하는 스텝모터와, 하나의 가감속패턴 및 해상도별 최종속도데이터가 저장되는 저장매체를 포함하며, 적어도 둘 이상의 해상도를 선택할 수 있는 플랫베드방식(Flat Bed Type) 스캐너에 있어서: 사용자가 지정한 임의의 해상도에 대응하여 가감속패턴과 가감속패턴이 적용되는 스텝수 및 지정된 해상도의 최종속도데이터를 검출하고; 검출된 가감속 속도데이터를 스텝수만큼 적용하여 스텝모터를 가속시키며; 현재 스텝수가 스텝수를 초과하면 지정된 최종속도데이터를 이용하여 스텝모터를 구동시킨다.The present invention includes a step motor for providing a driving force for moving and scanning a scanning module with respect to an original placed on a flat plate, and a storage medium for storing one acceleration / deceleration pattern and final speed data for each resolution, and at least two resolutions. A flat bed type scanner capable of selecting: detecting a deceleration pattern and a number of steps to which an acceleration / deceleration pattern is applied and final velocity data of a specified resolution corresponding to an arbitrary resolution designated by a user; Applying the detected acceleration / deceleration speed data by the number of steps to accelerate the step motor; If the current step number exceeds the step number, the step motor is driven using the designated final speed data.
따라서, 본 발명에 의하면, 각 해상도에 대한 다수개의 가감속패턴을 각각 저장할 필요 없이 하나의 가감속패턴과 각 해상도에 대응하는 최종 속도데이터를 저장함으로써, 저장매체에 저장되어야 할 데이터의 용량이 감소하고, 이로 인하여 저장매체의 용량을 줄일 수 있으므로, 제조원가를 절감할 수 있는 이점이 발생한다.Therefore, according to the present invention, the capacity of data to be stored in the storage medium is reduced by storing one acceleration / deceleration pattern and the final speed data corresponding to each resolution without having to store a plurality of acceleration / deceleration patterns for each resolution. And, this can reduce the capacity of the storage medium, there is an advantage that can reduce the manufacturing cost.
Description
본 발명은 스텝모터 제어방법 및 그 장치에 관한 것으로서, 보다 상세하게는 평판에 놓여 있는 원고에 대하여 스캐닝모듈을 이동시켜 스캐닝하는 플랫베드형(Flat Bed Type) 스캐너의 스캐닝모듈을 왕복 운동시키는 스텝모터의 회전상태를 제어함에 있어서, 하나의 기준패턴과 각 해상도별로 기 설정된 스캐닝모듈의 가감속데이터를 이용하여 스텝모터의 회전상태를 제어할 수 있도록 한 스텝모터 제어방법 및 그 장치에 관한 것이다.The present invention relates to a step motor control method and apparatus, and more particularly, to a step motor for reciprocating a scanning module of a flat bed type scanner for moving and scanning a scanning module with respect to an original placed on a flat plate. In the control of the rotation state of the step motor control method and apparatus for controlling the rotation state of the step motor by using a reference pattern and the acceleration and deceleration data of the preset scanning module for each resolution.
일반적으로, 플랫베드방식 스캐너는 원고를 평판상에 고정시켜 세팅하고, 스캐너모듈을 원고의 상측에서 하측으로 혹은 좌측에서 우측으로 이동시키면서 원고면에 기록된 데이터를 스캐닝하는 장치를 말한다. 이러한 플랫베드방식 스캐너는 그 내부에 스캐닝모듈을 이송시키기 위한 스텝모터를 구비하고 있으며, 임의의 해상도에 대하여 일정한 스캐닝속도를 유지하기 위하여 기 설정된 임의의 가감속패턴에 따라 모터의 회전속도를 제어한다. 즉, 사용자가 지정하는 해상도에 따라 다양한 속도로 스캐닝모듈을 이송하여야 하는데, 스캐닝모듈의 이송과정을 안정화시키기 위해서 다양한 구동속도에 따른 다양한 형태의 구동패턴을 적용하여야 한다.In general, a flatbed scanner refers to a device that scans data recorded on an original surface while fixing the original on a flat plate and moving the scanner module from the upper side to the lower side or from the left side to the right side of the original. The flatbed scanner includes a step motor for transferring a scanning module therein, and controls the rotation speed of the motor according to a predetermined acceleration / deceleration pattern in order to maintain a constant scanning speed for an arbitrary resolution. . That is, the scanning module should be transferred at various speeds according to the resolution specified by the user. In order to stabilize the transfer process of the scanning module, various types of driving patterns according to various driving speeds should be applied.
종래에는 사용자가 지정한 해상도에 따른 다양한 속도에 대응하기 위하여 아래의 두 가지 방식을 사용하였다.In the past, the following two methods were used to cope with various speeds according to user-specified resolutions.
첫째, 각 해상도의 구동속도에 대한 가감속패턴을 저장하고, 사용자가 해상도를 지정하면 지정된 해상도에 대응하는 가감속패턴을 검출하여 스텝모터 제어회로에 적용함으로써, 지정된 해상도의 스캐닝동작을 수행한다.First, the acceleration / deceleration pattern for the driving speed of each resolution is stored, and if the user designates the resolution, the acceleration / deceleration pattern corresponding to the designated resolution is detected and applied to the step motor control circuit, thereby performing the scanning operation of the designated resolution.
이러한 방식은 도 1에 도시된 바와 같이, 각 해상도에 대응하여 스텝모터를 최적의 상태로 구동하기 위해서 각 해상도에 대응하는 가속커브를 작성한다. 이 가속커브를 기준으로 하여 최종속도까지 일정한 단계로 가속하기 위하여 가속스텝수를 결정하고, 각 가속스텝에 해당하는 속도데이터를 시간데이터로 생성한 다음 이 시간간격에 스텝모터가 한 스텝씩 동작하도록 테이블화하여 적용한다. 예컨대, 도 1에 도시된 바와 같은 가속커브에 있어서, 75DPI(Dot per Inch)의 가속패턴의 경우, 20단계의 가속스텝수를 설정하여 각 해상도에 대응하는 구동속도 테이블을 형성하기 위한 것이다. 이러한 구동속도데이터는 간단한 계산식으로 가능하지만, 각 해상도에 대응하는 구동속도데이터를 모두 개별적으로 저장하여야 하므로 데이터량이 방대해진다.In this manner, as shown in Fig. 1, an acceleration curve corresponding to each resolution is prepared in order to drive the step motor in an optimal state corresponding to each resolution. Based on this acceleration curve, the number of acceleration steps is determined in order to accelerate to the final speed in a constant step. The speed data corresponding to each acceleration step is generated as time data, and the step motor is operated one step at this time interval. Apply by making a table. For example, in the acceleration curve as shown in FIG. 1, in the case of the 75DPI (Dot per Inch) acceleration pattern, the driving speed table corresponding to each resolution is formed by setting the number of acceleration steps in 20 steps. Such drive speed data is possible by a simple calculation formula, but since the drive speed data corresponding to each resolution must be stored separately, the data amount is enormous.
둘째, 스텝모터의 속도를 몇 개의 단계로만 지정하여 동작시키고, 스캐닝라인에 대하여 화상데이터를 유효(정상데이터로 취함) 또는 무효(화상데이터를 버림)화함으로써 해상도를 조정한다.Second, the speed of the step motor is specified and operated in only a few steps, and the resolution is adjusted by making image data valid (taken as normal data) or invalid (discarded image data) for the scanning line.
그런데, 이와 같은 종래의 플랫베드방식 스캐너에 의하면 다음과 같은 문제점들이 발생한다.However, according to the conventional flatbed scanner, the following problems occur.
첫째, 각 해상도의 구동속도에 대한 가감속패턴을 저장하고, 사용자가 해상도를 지정하면 지정된 해상도에 대응하는 가감속패턴을 검출하여 스텝모터 제어회로에 적용하는 경우, 다수개의 가감속패턴을 롬 등의 저장매체에 저장하여야 하는데, 해상도의 지정개수가 증가함에 따라 저장용량이 증가하므로 대용량의 저장매체를 내장하여야 함에 따라 제조원가가 상승한다.First, when the acceleration / deceleration pattern for the driving speed of each resolution is stored and the user designates the resolution, the acceleration / deceleration pattern corresponding to the designated resolution is detected and applied to the step motor control circuit. The storage capacity increases as the number of resolutions increases, so the manufacturing cost increases as a large storage medium must be built.
둘째, 스텝모터의 속도를 몇 개의 단계로만 지정하여 동작시키고, 스캐닝라인에 대하여 화상데이터를 유효 또는 무효화함으로써 해상도를 조정하는 경우, 원고의 전체 내용이 출력된 화상정보에 반영되지 않으므로 화질의 열화가 발생하게 된다.Second, when the speed of the step motor is specified and operated in a few steps, and the resolution is adjusted by validating or invalidating the image data for the scanning line, the entire content of the original is not reflected in the output image information. Will occur.
따라서, 본 발명은 이와 같은 문제점들을 해결하기 위한 것으로서, 본 발명의 목적은 하나의 가감속패턴을 기준으로 하여 모든 해상도에 적용할 수 있는 최종속도데이터를 저장매체에 저장하고, 사용자에 의해 지정된 해상도에 대응하는 최종속도데이터만을 검출하여 스텝모터의 회전속도를 제어함으로써, 간단하고 안정된 제어과정을 수행할 수 있도록 한 스텝모터 제어방법을 제공함에 있다.Accordingly, an object of the present invention is to solve such problems, and an object of the present invention is to store the final velocity data that can be applied to all resolutions based on one acceleration / deceleration pattern on a storage medium, and to specify a resolution designated by a user. The present invention provides a step motor control method capable of performing a simple and stable control process by detecting only the final speed data corresponding to and controlling the rotation speed of the step motor.
또한, 본 발명의 다른 목적은 위의 스텝모터 제어방법을 수행하기 위한 스텝모터 제어장치를 제공함에 있다.In addition, another object of the present invention is to provide a step motor control apparatus for performing the above step motor control method.
도 1은 종래의 플랫베드방식 스캐너에 있어서, 스텝모터 제어회로에 사용되는 가감속패턴을 도시한 파형도이고,1 is a waveform diagram showing an acceleration / deceleration pattern used in a step motor control circuit in a conventional flatbed scanner.
도 2는 본 발명에 적용된 플랫베드방식 스캐너의 개략적 블럭도이며,2 is a schematic block diagram of a flatbed scanner applied to the present invention,
도 3은 본 발명의 제1 실시예에 의한 스텝모터 제어회로의 상세블럭도이고,3 is a detailed block diagram of a step motor control circuit according to a first embodiment of the present invention;
도 4는 본 발명의 스텝모터 제어과정에 따른 동작타이밍도이며,4 is an operation timing diagram according to the step motor control process of the present invention,
도 5는 각각의 해상도에 대응하여 본 발명에 적용된 속도데이터를 도시한 파형도이고,5 is a waveform diagram showing velocity data applied to the present invention corresponding to each resolution;
도 6은 본 발명의 제2 실시예에 의한 스텝모터 제어회로의 상세블럭도이다.6 is a detailed block diagram of a step motor control circuit according to a second embodiment of the present invention.
<도면의 주요부분에 대한 부호의 설명><Description of the code | symbol about the principal part of drawing>
101: 중앙처리장치 102: 컨트롤러101: central processing unit 102: controller
116: 롬 117: 스텝모터116: Roman 117: Step motor
200: 스텝모터 제어회로 201: 어드레스 버퍼200: step motor control circuit 201: address buffer
202: 가속 램 203: 감속 램202: acceleration ram 203: deceleration ram
204, 205: 데이터 버퍼 206, 217, 218: 제어신호 발생부204 and 205: data buffers 206, 217 and 218: control signal generator
207: 어드레스 카운터 208: 설정가능 카운터207: address counter 208: settable counter
209: 시스템클럭 발생부 210: 인터럽트 발생부209: system clock generator 210: interrupt generator
211: 업/다운 카운터 212: 레지스터211: up / down counter 212: register
213: 풀스텝 패턴메모리 214: 하프스텝 패턴메모리213: full step pattern memory 214: half step pattern memory
215: 카운터 216: 비교기215: counter 216: comparator
219: 패턴메모리219: pattern memory
이와 같은 목적들을 달성하기 위한 본 발명의 특징은, 평판에 놓여있는 원고에 대하여 스캐닝모듈을 이동시켜 스캐닝하기 위한 구동력을 제공하는 스텝모터와, 하나의 가감속패턴 및 해상도별 최종속도데이터가 저장되는 저장매체를 포함하며, 적어도 둘 이상의 해상도를 선택할 수 있는 플랫베스방식 스캐너에 있어서: 사용자가 지정한 임의의 해상도에 대응하여 가감속패턴과 가감속패턴이 적용되는 스텝수 및 지정된 해상도의 최종속도데이터를 검출하고; 검출된 가감속 속도데이터를 스텝수만큼 적용하여 스텝모터를 가속시키며; 현재 스텝수가 스텝수를 초과하면 지정된 최종속도데이터를 이용하여 스텝모터를 구동시키도록 한 점에 있다.A feature of the present invention for achieving the above object is a step motor for providing a driving force for scanning by moving the scanning module with respect to the document placed on the plate, one acceleration and deceleration pattern and the final speed data for each resolution is stored A flat-bed scanner comprising a storage medium and capable of selecting at least two resolutions, the flat-bed scanner comprising: a step number to which an acceleration / deceleration pattern and an acceleration / deceleration pattern are applied according to an arbitrary resolution designated by a user, and final velocity data of the specified resolution Detect; Applying the detected acceleration / deceleration speed data by the number of steps to accelerate the step motor; When the current number of steps exceeds the number of steps, the step motor is driven using the designated final speed data.
여기서, 가감속패턴은 최저해상도에 해당하는 가감속패턴이다.Here, the acceleration / deceleration pattern is an acceleration / deceleration pattern corresponding to the lowest resolution.
한편, 본 발명의 다른 특징은, 평판에 놓여있는 원고에 대하여 스캐닝모듈을 이동시켜 스캐닝하기 위한 구동력을 제공하는 스텝모터와, 하나의 가감속패턴 및 해상도별 최종속도데이터가 저장되는 저장매체를 포함하며, 적어도 둘 이상의 해상도를 선택할 수 있는 플랫베드방식 스캐너에 있어서: 저장매체에 저장된 가감속패턴 및 해상도별 최종속도데이터 저장하는 램과; 가감속패턴과 해상도별 최종속도데이터를 램에 저장하기 위한 어드레스를 제공하는 어드레스 버퍼와; 가감속패턴과 최종속도데이터를 램에 저장하기 위해 일시적으로 버퍼링하는 데이터 버퍼와; 스텝모터의 구동에 필요한 각종 정보가 저장된 레지스터와; 스텝모터가 구동될 때 사용자에 의해 지정된 해상도에 대응하는 가감속패턴과 최종속도데이터를 램으로부터 검출하기 위한 어드레스를 제공하는 어드레스 카운터와; 램으로부터 사용자에 의해 지정된 해상도에 대응하는 가감속패턴 및 최종속도데이터를 입력받아 클럭발생수단으로부터 제공되는 클럭에 따라 한 스텝씩 다운카운팅하는 설정가능 카운터와; 설정가능 카운터의 카운팅값이 "0"이 될 때마다 인터럽트신호를 발생하는 인터럽트 발생부와; 인터럽트 발생부에서 출력된 인터럽트신호를 클럭으로 인가받아 사용자에 의해 지정된 해상도별 가감속패턴에 대응하여 레지스터에 지정된 스텝모터의 회전방향에 따라 업카운팅 및 다운카운팅동작을 수행하면서 카운팅값에 따라 스텝모터의 회전속도를 제어하는 업/다운 카운터를 포함하는 점에 있다.On the other hand, another feature of the present invention includes a step motor for providing a driving force for scanning by moving the scanning module with respect to the document placed on the flat plate, and a storage medium for storing one acceleration / deceleration pattern and the final speed data for each resolution A flatbed scanner capable of selecting at least two resolutions, the flatbed scanner comprising: a RAM configured to store acceleration / deceleration patterns and final speed data for each resolution stored in a storage medium; An address buffer for providing an address for storing the acceleration / deceleration pattern and the final speed data for each resolution in the RAM; A data buffer for temporarily buffering the acceleration / deceleration pattern and the final speed data in the RAM; A register storing various information necessary for driving the step motor; An address counter which provides an address for detecting the acceleration / deceleration pattern and the final speed data from the RAM corresponding to the resolution designated by the user when the step motor is driven; A configurable counter which receives the acceleration / deceleration pattern and the final speed data corresponding to the resolution designated by the user from the RAM and down counts one step according to the clock provided from the clock generating means; An interrupt generator for generating an interrupt signal each time the count value of the settable counter becomes " 0 "; Receives the interrupt signal output from the interrupt generator as a clock and performs the up and down counting operation according to the rotation direction of the step motor specified in the register in response to the acceleration / deceleration pattern specified by the user. It includes an up / down counter that controls the rotational speed of.
여기서, 램은 가감속패턴 및 해상도별 최종속도데이터 중 가속패턴과 해상도별 최종속도데이터를 저장하는 가속 램과; 가감속패턴 및 해상도별 최종속도데이터 중 감속패턴을 저장하는 감속 램을 포함한다.Here, the RAM includes an acceleration RAM for storing the acceleration pattern and the final speed data of each of the acceleration and deceleration pattern and the final speed data for each resolution; It includes a deceleration RAM for storing the deceleration pattern of the acceleration and deceleration pattern and the final speed data for each resolution.
한편, 본 발명의 또 다른 특징은, 평판에 놓여있는 원고에 대하여 스캐닝모듈을 이동시켜 스캐닝하기 위한 구동력을 제공하는 스텝모터와, 하나의 가감속패턴 및 해상도별 최종속도데이터가 저장되는 저장매체를 포함하며, 적어도 둘 이상의 해상도를 선택할 수 있는 플랫베드방식 스캐너에 있어서:On the other hand, another feature of the present invention is a step motor for providing a driving force for scanning by moving the scanning module with respect to the document placed on the plate, and a storage medium that stores one acceleration and deceleration pattern and the final speed data for each resolution For flatbed scanners that include at least two resolutions:
저장매체에 저장된 가감속패턴 및 해상도별 최종속도데이터 저장하는 램과; 스텝모터를 제어하기 위하여 램에 가감속패턴 및 해상도별 최종속도데이터를 저장하거나 검출하는 어드레스 카운터와; 가감속패턴과 최종속도데이터를 램에 저장하기 위해 일시적으로 버퍼링하는 데이터 버퍼와; 클럭발생수단으로부터 제공되는 클럭을 카운팅하는 카운터와; 카운터의 카운팅값과 램에 저장된 가감속패턴 및 해상도별 최종속도데이터 중 사용자에 의해 지정된 가감속패턴 및 최종속도데이터의 데이터값을 비교하여 그 결과에 따라 소정의 제어신호를 출력하는 비교기와; 스텝모터의 구동에 필요한 각종 정보가 저장된 레지스터와; 비교기에서 출력되는 신호 및 레지스터에서 출력되는 회전방향정보에 따라 업카운팅과 다운카운팅동작을 수행하면서 어드레스를 발생하는 업/다운 카운터와; 비교기의 출력신호 및 레지스터의 출력신호에 따라 어드레스 카운터에서 램에 제공되는 어드레스 카운팅값을 증감시키고 리셋시키는 제어신호 발생부를 포함하는 점에 있다.RAM for storing the acceleration / deceleration pattern and the final speed data for each resolution stored in the storage medium; An address counter for storing or detecting acceleration / deceleration patterns and final speed data for each resolution in the RAM to control the step motor; A data buffer for temporarily buffering the acceleration / deceleration pattern and the final speed data in the RAM; A counter for counting a clock provided from the clock generating means; A comparator for comparing the counting value of the counter with the acceleration / deceleration pattern stored in the RAM and the data value of the acceleration / deceleration pattern and the final speed data designated by the user and outputting a predetermined control signal according to the result; A register storing various information necessary for driving the step motor; An up / down counter which generates an address while performing up counting and down counting operations according to the signal output from the comparator and the rotation direction information output from the register; And a control signal generator for increasing and decreasing the address counting value provided to the RAM in the address counter according to the output signal of the comparator and the output signal of the register.
이하, 본 발명의 바람직한 실시예들에 대하여 첨부도면을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호로 표기되었음에 유의하여야 한다. 또한, 하기의 설명에서는 구체적인 블록 혹은 회로의 구성요소 등과 같은 많은 특정사항들이 도시되어 있는데, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐 이러한 특정 사항들이 제거되거나 변형되더라도 본 발명이 실시될 수 있음은 이 기술분야에서 통상의 지식을 가진 자에게는 자명하다 할 것이다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. First, in adding reference numerals to the elements of each drawing, it should be noted that the same elements are denoted by the same reference numerals as much as possible even if they are displayed on different drawings. In addition, in the following description, many specific details are shown, such as specific blocks or components of circuits, which are provided to help a more general understanding of the present invention, and the present invention may be practiced even if these specific details are removed or modified. It will be obvious to those of ordinary skill in the art. In describing the present invention, when it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.
도 2에는 본 발명에 적용된 플랫베드방식 스캐너의 개략적 블럭도가 도시되어 있다.2 is a schematic block diagram of a flatbed scanner applied to the present invention.
도 2를 참조하여 플랫베드방식 스캐너의 개략적 구조에 대하여 설명하면 다음과 같다.The schematic structure of the flatbed scanner with reference to FIG. 2 will now be described.
중앙처리장치(101)는 소정의 프로그램에 따라 시스템을 전반적으로 제어한다.The central processing unit 101 controls the system as a whole according to a predetermined program.
컨트롤러(102)는 메인클럭과 중앙처리장치(101)의 제어에 따라 각 구성부의 기능을 제어하기 위한 타이밍신호를 발생하고, 각 구성부의 요구에 따라 해당하는 제어신호를 발생한다. 여기서, 컨트롤러(102)는 신호처리과정에서 발생한 임시데이터를 저장하기 위한 어드레스정보를 발생하는 어드레스 발생부(102a, 102b)를 포함한다.The controller 102 generates a timing signal for controlling the function of each component under control of the main clock and the central processing unit 101, and generates a corresponding control signal according to the request of each component. Here, the controller 102 includes address generators 102a and 102b for generating address information for storing temporary data generated during signal processing.
램프 제어회로(103)는 원고면에 광을 주사하는 램프(104)의 점등상태를 제어한다.The lamp control circuit 103 controls the lighting state of the lamp 104 which scans light onto the original surface.
센서 구동부(105)는 원고에 기록된 화상의 농도를 전기적인 신호로 광전변환하여 출력하는 이미지센서(예컨대, 전하결합소자(Charge Coupled Device: CCD)를 사용함)(106)를 제어한다.The sensor driver 105 controls an image sensor 106 (for example, using a charge coupled device (CCD)) which photoelectrically converts the density of an image recorded in an original into an electrical signal and outputs the same.
증폭부(107)는 이미지센서(106)에서 출력된 전기적인 화상신호(R, G, B)를 신호처리에 적합한 크기로 증폭한다.The amplifier 107 amplifies the electric image signals R, G, and B output from the image sensor 106 to a size suitable for signal processing.
아날로그/디지털 변환부(108)는 증폭부(107)에서 증폭된 아날로그형태의 화상신호를 디지털형태로 변환한다.The analog / digital converter 108 converts the analog image signal amplified by the amplifier 107 into a digital form.
보정메모리(109)는 아날로그/디지털 변환부(108)에 의해 디지털화된 화상정보를 보정하는 과정을 수행하기 위하여 어드레스 발생부(102a)에서 출력된 어드레스정보에 따라 소정영역에 화상정보를 일시 저장한다.The correction memory 109 temporarily stores the image information in a predetermined area according to the address information output from the address generator 102a to perform a process of correcting the image information digitized by the analog / digital converter 108. .
감마보정부(110)는 보정메모리(109)에 저장된 화상정보를 보정하는데, 이때, 스캐닝과정에서 획득된 화상정보를 실제 원고에 기록된 화상정보와 근사하게 유지시키기 위하여 시스템의 특성별 보정데이터에 따라 화상정보를 보정한다.The gamma correction unit 110 corrects the image information stored in the correction memory 109. At this time, in order to maintain the image information obtained in the scanning process close to the image information recorded in the actual document, the correction data for each characteristic of the system is added. Correct the image information accordingly.
화상메모리(111)는 어드레스 발생부(102b)로부터 출력된 어드레스정보에 따라 감마보정부(110)에서 보정된 화상정보를 소정영역에 저장한다.The image memory 111 stores the image information corrected by the gamma correction unit 110 in the predetermined area in accordance with the address information output from the address generator 102b.
인터페이스부(112)는 컴퓨터(113)와의 데이터 송수신상태를 인터페이싱한다. 즉, 컴퓨터(113)에서 화상데이터의 전송요청이 접수되면, 인터페이스부(112)는 화상메모리(111)로부터 출력된 화상정보를 컴퓨터(113)로 전송하고, 컴퓨터(113)로부터 전송된 각종 제어신호 및 명령어(Command)를 중앙처리장치(101)에 전달한다.The interface unit 112 interfaces data transmission / reception states with the computer 113. That is, when a request for the transfer of image data is received from the computer 113, the interface unit 112 transfers the image information output from the image memory 111 to the computer 113, and various controls transmitted from the computer 113. The signal and the command are transmitted to the central processing unit 101.
클럭발생부(114)는 시스템에서 요구하는 소정의 주파수를 갖는 시스템클럭을 발생한다. 이때, 분주과정을 통하여 시스템에서 요구하는 여러 종류의 주파수를 갖는 시스템클럭을 발생할 수도 있다.The clock generator 114 generates a system clock having a predetermined frequency required by the system. In this case, a system clock having various types of frequencies required by the system may be generated through the dispensing process.
센서부(115)는 원고의 유무를 감지한다.The sensor unit 115 detects the presence or absence of a document.
롬(116)은 중앙처리장치(101)가 수행할 각종 프로그램데이터를 저장한다. 특히, 롬(116)은 스텝모터(117)의 속도제어를 위한 가감속데이터가 저장된다.The ROM 116 stores various program data to be executed by the central processing unit 101. In particular, the ROM 116 stores acceleration / deceleration data for speed control of the step motor 117.
램(118)은 시스템이 각종 프로그램을 수행하는 도중에 발생하는 임시데이터를 일시 저장한다.The RAM 118 temporarily stores temporary data generated while the system executes various programs.
스텝모터 제어회로(200)는 중앙처리장치(101)의 제어에 따라 스텝모터(117)의 회전상태와 회전방향 및 가감속상태를 제어한다.The step motor control circuit 200 controls the rotation state, the rotation direction, and the acceleration / deceleration state of the step motor 117 under the control of the central processing unit 101.
<본 발명의 제1 실시예><1st Example of this invention>
도 3에는 본 발명의 제1 실시예에 의한 스텝모터 제어회로의 상세블럭도가 도시되어 있으며, 도 4에는 본 발명의 스텝모터 제어과정에 따른 동작타이밍도가 도시되어 있으며, 도 5에는 각각의 해상도에 대응하여 본 발명에 적용된 속도데이터를 도시한 파형도가 도시되어 있다.3 shows a detailed block diagram of the step motor control circuit according to the first embodiment of the present invention, and FIG. 4 shows an operation timing diagram according to the step motor control process of the present invention. A waveform diagram showing velocity data applied to the present invention corresponding to the resolution is shown.
도 3을 참조하여 본 발명의 제1 실시예에 의한 스텝모터 제어회로(200)의 상세구성을 설명하면 다음과 같다.The detailed configuration of the step motor control circuit 200 according to the first embodiment of the present invention will be described with reference to FIG. 3.
어드레스 버퍼(201)는 롬(116)에 저장된 가감속 테이블 데이터(최종속도 데이터)를 가속 램(202)과 감속 램(203)에 저장하기 위한 어드레스를 지정한다.The address buffer 201 specifies an address for storing the acceleration / deceleration table data (final speed data) stored in the ROM 116 in the acceleration ram 202 and the deceleration ram 203.
제1 및 제2 데이터 버퍼(204, 205)는 롬(116)에 저장된 가감속 테이블 데이터를 일시적으로 버퍼링한다.The first and second data buffers 204 and 205 temporarily buffer the acceleration / deceleration table data stored in the ROM 116.
제어신호 발생부(206)는 시스템내의 컨트롤러(102)로부터 직접 제어를 받아 스텝모터 제어회로(200)내의 각 구성부를 동작시키기 위한 제어신호를 발생한다.The control signal generator 206 is directly controlled by the controller 102 in the system and generates a control signal for operating each component in the step motor control circuit 200.
어드레스 카운터(207)는 스텝모터(117)를 구동할 때 사용자에 의해 지정된 해상도에 대응하여 가속 램(202) 및 감속 램(203)에 저장된 데이터를 검출하기 위한 어드레스를 제공한다.The address counter 207 provides an address for detecting data stored in the acceleration ram 202 and the deceleration ram 203 corresponding to the resolution specified by the user when driving the step motor 117.
가속 램(202) 및 감속 램(203)은 사용자에 의해 지정 가능한 해상도별 최종 가속 및 감속에 관한 속도데이터가 저장된다.The acceleration ram 202 and the deceleration ram 203 store speed data regarding final acceleration and deceleration for each resolution that can be designated by a user.
설정가능 카운터(208)는 가속 램(202)과 감속 램(203)으로부터 가감속데이터를 입력받아 시스템클럭 발생부(209)로부터 입력되는 클럭에 따라 한 스텝씩 감소시키면서 다운카운팅한다.The settable counter 208 receives the acceleration / deceleration data from the acceleration ram 202 and the deceleration ram 203 and down counts them by one step according to the clock input from the system clock generator 209.
인터럽트 발생부(210)는 설정가능 카운터(208)의 카운팅값이 "0"이 될 때마다 인터럽트신호를 발생한다.The interrupt generator 210 generates an interrupt signal whenever the counting value of the configurable counter 208 becomes " 0 ".
업/다운 카운터(211)는 인터럽트 발생부(210)에서 출력된 인터럽트신호를 클럭으로 인가받아 지정된 패턴에 대응하는 스텝모터(117)의 회전방향에 따라 업카운팅 및 다운카운팅동작을 수행한다.The up / down counter 211 receives an interrupt signal output from the interrupt generator 210 as a clock and performs up counting and down counting operations according to the rotation direction of the step motor 117 corresponding to the specified pattern.
레지스터(212)는 스텝모터(117)의 제어에 관련된 각종 정보를 저장한다.The register 212 stores various kinds of information related to the control of the step motor 117.
풀스텝 패턴메모리(Full Step Pattern Memory)(213)와 하프스텝 패턴메모리(Half Step Pattern Memory)(214)는 사용자에 의해 지정된 해상도에 대응하여 플랫베드방식 스캐너의 구동상태에 대응하는 풀스텝 패턴 및 하프스텝 패턴이 각각 저장된다.The full step pattern memory 213 and the half step pattern memory 214 correspond to the full step pattern corresponding to the driving state of the flatbed scanner according to the resolution specified by the user. Each half-step pattern is stored.
이와 같은 구성을 갖는 본 발명의 제1 실시예에 대한 동작에 대하여 설명하면 다음과 같다.Referring to the operation of the first embodiment of the present invention having such a configuration as follows.
먼저, 도 2에 도시된 바와 같이 플랫베드방식 스캐너는 시스템을 전반적으로 제어하는 중앙처리장치(101)와, 클럭 발생부(114)와 중앙처리장치(101)로부터 설정된 일정한 값을 기준으로 시스템의 각 기능을 제어하기 위한 타이밍신호를 발생하고 필요한 신호를 필요한 시점에서 적절하게 제어하는 컨트롤러(102)를 중심으로 구성된다.First, as shown in FIG. 2, the flatbed scanner is configured based on a constant value set from the central processing unit 101, the clock generator 114, and the central processing unit 101 to control the system as a whole. The controller 102 generates a timing signal for controlling each function and controls the required signal appropriately at a necessary time.
센서 구동부(105)는 화상의 농도를 광전변환작업을 통하여 전기적인 신호로 출력하는 이미지센서(106)를 제어하는 회로이다. 이미지센서(106)에서 출력되는 전기신호는 칼라성분인 R, G, B로 변환되어 증폭부(107)에 입력되고, 증폭부(107)에 의해 일정레벨로 증폭된 각각의 화상신호는 아날로그/디지털 변환부(108)에 입력된다.The sensor driver 105 is a circuit for controlling the image sensor 106 which outputs the density of an image as an electrical signal through a photoelectric conversion operation. The electrical signal output from the image sensor 106 is converted into color components R, G, and B and input to the amplifier 107, and each image signal amplified to a certain level by the amplifier 107 is analog / It is input to the digital converter 108.
아날로그/디지털 변환부(108)에 입력된 화상신호는 디지털데이터로 변환되고, 광전변환시 소자특성에 따라 발생한 신호의 왜곡을 제거하기 위한 작업을 수행한다.The image signal input to the analog / digital converter 108 is converted into digital data, and performs a task for removing distortion of a signal generated according to device characteristics during photoelectric conversion.
보정메모리(109)에 저장된 데이터는 화상을 스캐닝하기 이전의 시스템 특성에 적합하도록 보정데이터를 추출하여 저장해 두었다가 실제 스캐닝동작이 수행될 때 컨트롤러(102)의 제어에 따라 적절한 보정데이터를 출력하여 해당시점에서 적절한 보정작업이 수행되어 화질을 개선한다.The data stored in the correction memory 109 is extracted and stored in accordance with the system characteristics before scanning the image, and then outputs the appropriate correction data under the control of the controller 102 when the actual scanning operation is performed. Corrective action is taken to improve the image quality.
디지털화된 데이터는 감마보정부(110)에 의해 감마보정작업을 수행한 후 화상메모리(111)에 저장되고, 일정한 시점에서 컴퓨터(113)의 요청에 따라 인터페이스부(112)를 통해 컴퓨터(113)로 전송된다. 즉, 화상메모리(111)에 저장된 데이터는 컨트롤러(102)의 어드레스제어에 따라 인터페이스부(112)로 전달되고, 중앙처리장치(101)의 제어에 의해 컴퓨터(113)와의 통신작업이 수행된다.The digitized data is stored in the image memory 111 after performing the gamma correction operation by the gamma correction unit 110, and the computer 113 through the interface unit 112 at the request of the computer 113 at a certain point in time. Is sent to. That is, the data stored in the image memory 111 is transferred to the interface unit 112 according to the address control of the controller 102, and the communication operation with the computer 113 is performed by the control of the central processing unit 101.
센서부(115)는 중앙처리장치(101)의 제어에 따라 램프 제어회로(103)의 신호출력에 따라 구동된 램프(104)의 광출력이 원고에 반사되어 이미지센서(106)에 입력되도록 광학모듈의 위치를 파악하고, 파악된 정보를 중앙처리장치(101)에 전송한다.The sensor unit 115 is configured such that the optical output of the lamp 104 driven according to the signal output of the lamp control circuit 103 under the control of the central processing unit 101 is reflected to the original and input to the image sensor 106. The location of the module is determined, and the detected information is transmitted to the CPU 101.
또한, 플랫베드방식 스캐너는 광학모듈을 이송하기 위한 수단인 스텝모터(117)를 포함하며, 스텝모터(117)는 스텝모터 제어회로(200)에서 제공하는 신호에 따라 구동된다.In addition, the flatbed scanner includes a step motor 117 that is a means for transferring the optical module, the step motor 117 is driven in accordance with the signal provided from the step motor control circuit 200.
한편, 도 4 및 도 5를 참조하여 스텝모터 제어회로의 동작을 설명한다.Meanwhile, the operation of the step motor control circuit will be described with reference to FIGS. 4 and 5.
롬(116)에 저장된 임의의 해상도에 대한 가감속 테이블 데이터(도 5 참조)는 어드레스 버퍼(201)와 제1 데이터버퍼(204)에 의해 가속 램(202)과 감속 램(203)에 순차적으로 저장된다. 여기서, 가감속 테이블 데이터는 도 5에 도시된 바와 같이 기본적으로 최저해상도(즉, 최고속도)에 해당하는 가속패턴에 대한 데이터만을 저장하고 있으며, 이 가속패턴을 기준으로 전 해상도에 걸친 가속패턴으로 활용한다. 예컨대, 230DPI의 해상도로 스캐닝작업을 수행하고자 하는 경우, 11스텝까지는 75DPI의 가속직선에 대해 가속패턴을 적용하고 12스텝으로부터 20스텝까지는 230DPI의 최종속도로 진행한다. 또한, 390DPI로 스캐닝을 한다면 7스텝까지는 75DPI의 가속패턴을 이용하고 8스텝으로부터 20스텝까지는 390DPI의 최종속도로 진행함으로써, 원하는 속도의 가속이 가능하다. 따라서, 종래의 경우에 비하여 롬(116)에 저장될 데이터의 용량이 감소되며, 하나의 가감속테이블을 통하여 전 해상도에 걸쳐 활용할 수 있다.Acceleration and deceleration table data (see FIG. 5) for any resolution stored in ROM 116 are sequentially applied to acceleration ram 202 and deceleration ram 203 by address buffer 201 and first data buffer 204. Stored. Here, the acceleration / deceleration table data basically stores only data for an acceleration pattern corresponding to the lowest resolution (that is, maximum speed) as shown in FIG. Take advantage. For example, when a scanning operation is to be performed at a resolution of 230 DPI, an acceleration pattern is applied to an acceleration straight line of 75 DPI until 11 steps, and the final speed of 230 DPI is performed from 12 steps to 20 steps. In addition, when scanning at 390 DPI, the acceleration speed of 75 steps is used up to 7 steps and the final speed of 390 DPI is used from 8 steps to 20 steps, thereby enabling acceleration of a desired speed. Therefore, compared to the conventional case, the capacity of data to be stored in the ROM 116 is reduced and can be utilized over the entire resolution through one acceleration / deceleration table.
이후, 롬(116)의 다른 영역에 저장되어 있는 풀스텝/하프스텝 구동패턴데이터는 어드레스버퍼(201)가 어드레스를 지정하고 제2 데이터버퍼(205)가 데이터를 전달함에 따라 해당 패턴메모리(213, 214)에 해당데이터를 저장한다. 이러한 준비과정이 종료되면 스캐닝작업의 준비가 완료되고, 컴퓨터(113)로부터 스캐닝명령이 접수되면 중앙처리장치(101)는 레지스터(212)에 구동방법(풀스텝 또는 하프스텝), 회전방향, 속도패턴(가속, 정속, 감속) 신호를 적절한 시점에서 적절한 타이밍으로 저장함으로써 원하는 동작을 수행할 수 있도록 한다.Subsequently, the full-step / half-step driving pattern data stored in another area of the ROM 116 is stored in the corresponding pattern memory 213 as the address buffer 201 designates an address and the second data buffer 205 transfers the data. 214). When the preparation process is completed, the preparation for the scanning operation is completed. When the scanning command is received from the computer 113, the central processing unit 101 drives the register 212 in a driving method (full step or half step), rotation direction, and speed. Pattern (acceleration, constant speed, deceleration) signals are stored at the appropriate timing at the appropriate time to perform the desired operation.
예컨대, 도 4의 동작타이밍도를 참조하여 설명하면, 먼저 정지상태에서는 레지스터(212)의 초기치를 모두 "0"으로 설정한다. 스캐닝명령이 접수되면 스캐닝신호, 가속신호, 정지신호를 모두 "1"로 설정한다. 이것은 정지상태로부터 가속상태로 전환되었음을 의미한다.For example, referring to the operation timing diagram of FIG. 4, first, all initial values of the register 212 are set to "0" in the stop state. When the scanning command is received, the scanning signal, the acceleration signal, and the stop signal are all set to "1". This means the transition from the stop state to the acceleration state.
레지스터(212)의 값(스캐닝신호=1, 가속신호=1, 정지신호=1)들이 설정되면, 가속 램(202)이 인에이블(Enable)되어 어드레스 카운터(207)에서 제공되는 어드레스에 따라 가속 램(202)의 데이터가 출력된다. 이때, 초기치는 "0"이므로, 가속 램(202)에 저장된 "0"번지의 데이터가 설정가능 카운터(208)에 설정되고, 설정가능 카운터(208)의 카운팅값은 시스템 클럭발생부(209)로부터 입력되는 시스템클럭에 따라 "1"씩 감소된다. 설정가능 카운터(208)의 카운팅값이 "0"이 되면 인터럽트 발생부(210)에서 펄스형태의 인터럽트신호를 발생하고, 이 펄스에 따라 업/다운 카운터(211)와 어드레스 카운터(207)의 카운팅값이 "1"씩 증가한다.When the value of the register 212 (scanning signal = 1, acceleration signal = 1, stop signal = 1) is set, the acceleration RAM 202 is enabled and accelerated according to the address provided by the address counter 207. The data of the RAM 202 is output. At this time, since the initial value is "0", the data of address "0" stored in the acceleration RAM 202 is set in the settable counter 208, and the counting value of the settable counter 208 is the system clock generator 209. Decreases by "1" depending on the system clock input from the system. When the count value of the settable counter 208 becomes "0", the interrupt generator 210 generates an interrupt signal in the form of a pulse, and counts the up / down counter 211 and the address counter 207 according to the pulse. The value is increased by "1".
어드레스 카운터(207)의 카운팅값이 "1" 증가하면 어드레스 카운터(207)는 가속 램(202)에 저장된 "1"번지의 데이터를 설정가능 카운터(208)에 설정하고, 업/다운 카운터(211)는 풀스텝 패턴메모리(213) 혹은 하프스텝 패턴메모리(214)에 저장된 패턴값이 출력되어 최종적으로 스텝모터가 한 스텝 이동한 결과가 된다.When the counting value of the address counter 207 increases by "1", the address counter 207 sets the data of the "1" address stored in the acceleration RAM 202 to the settable counter 208 and the up / down counter 211. ) Is a result of the pattern value stored in the full-step pattern memory 213 or the half-step pattern memory 214, and finally the step motor is moved one step.
이후, 설정가능 카운터(208)의 카운팅값이 "0"이 되면, 앞서 설명한 동작과정이 반복 수행된다. 이때, 어드레스 카운터(207)의 카운팅값은 인터럽트 발생부(210)에서 발생된 인터럽트 펄스에 따라 순차적으로 증가한다. 이러한 동작은 스캐닝 명령이 접수될 때 설정된 해상도에 따른 속도 즉, 어떤 속도로 스캐닝작업을 수행하는가에 따라 가속 스텝수가 결정되어 이미 정해진 가속 스텝수만큼 진행되면 중앙처리장치(101)의 제어에 따라 레지스터(212)가 가속 "0", 정속 "1"로 설정되어 스텝모터(117)는 정속상태로 전환한다. 이때는 가속 램(202)의 어드레스는 변하지 않고 일정한 어드레스를 임의의 스텝동안 반복적으로 수행함으로써 안정화구간을 거친 후 화상의 스캐닝동작이 이루어진다.Thereafter, when the counting value of the settable counter 208 becomes "0", the above-described operation is repeatedly performed. At this time, the counting value of the address counter 207 is sequentially increased according to the interrupt pulse generated by the interrupt generator 210. This operation is performed according to the control of the central processing unit 101 when the acceleration step number is determined according to the speed according to the set resolution, that is, the scanning operation is performed when the scanning command is received. 212 is set to acceleration "0" and constant speed "1", and the step motor 117 switches to the constant speed state. At this time, the address of the acceleration RAM 202 is not changed, and the scanning operation of the image is performed after passing through the stabilization period by repeatedly performing a constant address for a certain step.
이후, 정해진 분량(스텝수)만큼 스캐닝동작이 수행되면 스텝모터(117)는 감속상태로 전환된다. 즉, 중앙처리장치(101)의 제어에 따라 레지스터(212)가 정속 "0", 감속 "1"로 설정되면, 감속 램(203)이 인에이블되고 감속 램(203)의 어드레스는 "0"이 된다. 이 상태에서 감속 램(203)의 "0"번지에서 출력되는 감속데이터가 설정가능 카운터(208)에 설정되고, 시스템클럭 발생부(209)에서 제공되는 시스템클럭에 따라 설정가능 카운터(208)의 카운팅값이 "1"씩 감소된다.Thereafter, when the scanning operation is performed by the predetermined amount (step number), the step motor 117 is switched to the deceleration state. That is, when the register 212 is set to the constant speed "0" and the deceleration "1" under the control of the central processing unit 101, the deceleration ram 203 is enabled and the address of the deceleration ram 203 is "0". Becomes In this state, the deceleration data output at address " 0 " of the deceleration ram 203 is set in the settable counter 208, and the settable counter 208 of the settable counter 208 according to the system clock provided from the system clock generator 209. The counting value is decreased by "1".
이후, 설정가능 카운터(208)의 카운팅값이 "0"이 되면 인터럽트 발생부(210)에서 펄스형태의 인터럽트신호를 발생하며, 이 인터럽트펄스에 따라 어드레스 카운터(207)의 카운팅값이 "1"씩 증가한다.Then, when the counting value of the settable counter 208 becomes "0", the interrupt generator 210 generates an interrupt signal in the form of a pulse, and the counting value of the address counter 207 is "1" according to this interrupt pulse. Increases by
"1"번지의 데이터가 설정가능 카운터(208)에 설정되면, 업/다운 카운터(211)의 카운팅값이 증가되어 풀스텝 패턴메모리(213) 혹은 하프스텝 패턴메모리(214)에 설정된 스텝모터(117)의 구동패턴이 출력됨에 따라 스텝모터(117)가 한 스텝 진행하게 된다. 이러한 동작이 일정스텝동안 진행되어 감속상태가 완료되면, 레지스터(212)는 감속 "0", 정지"0"으로 설정되어 스텝모터(117)는 정지하게 된다.When the data at address "1" is set in the settable counter 208, the counting value of the up / down counter 211 is increased to set the step motor (set in the full step pattern memory 213 or the half step pattern memory 214). As the driving pattern of 117 is outputted, the step motor 117 advances one step. When this operation proceeds for a certain step and the deceleration state is completed, the register 212 is set to deceleration " 0 " and stop " 0 " so that the step motor 117 is stopped.
이후, 레지스터(212)가 스텝모터(117)의 회전방향을 "1"로 설정한 상태에서, 위와 같은 과정들을 반복 수행하면, 스텝모터(117)는 역회전을 수행한다. 결국, 이와 같은 과정을 계속 반복함에 따라 미리 설정된 영역에 대한 화상스캐닝작업이 가능하도록 제어할 수 있다.Thereafter, in the state where the register 212 sets the rotation direction of the step motor 117 to "1", if the above steps are repeated, the step motor 117 performs reverse rotation. As a result, by repeating the above process, it is possible to control the image scanning operation for the preset area.
한편, 풀스텝 패턴메모리(213)와 하프스텝 패턴메모리(214)는 사용자의 설정에 따라 선택적으로 동작되어 스텝모터(117)를 구동하기 위한 것으로서, 풀스텝모드인 경우(정해진 해상도에 대응하여 스캐닝작업을 수행하는 경우)에는 풀스텝 패턴메모리(213)에 저장된 구동패턴이 출력되고, 하프스텝모드인 경우(정해진 해상도보다 2배의 해상도로 스캐닝작업을 수행하는 경우)에는 하프스텝 패턴메모리(214)에 저장된 구동패턴이 출력된다.On the other hand, the full-step pattern memory 213 and the half-step pattern memory 214 are selectively operated according to the user's setting to drive the step motor 117. In the full-step mode (scanning according to the predetermined resolution) The driving pattern stored in the full-step pattern memory 213 is output in the case of performing a job, and the half-step pattern memory 214 in the case of the half-step mode (when scanning is performed at twice the resolution). Is stored in the driving pattern.
<본 발명의 제2 실시예><2nd Example of this invention>
도 6에는 본 발명의 제2 실시예에 의한 스텝모터 제어회로의 상세블럭도가 도시되어 있다.6 shows a detailed block diagram of the step motor control circuit according to the second embodiment of the present invention.
도 6을 참조하여 본 발명의 제2 실시예에 따른 스텝모터 제어회로를 설명하면 다음과 같다.Referring to Figure 6 describes a step motor control circuit according to a second embodiment of the present invention.
가속 램(202)과 감속 램(203)은 가속데이터 테이블과 감속데이터 테이블을 각각 저장한다.The acceleration ram 202 and the deceleration ram 203 store the acceleration data table and the deceleration data table, respectively.
어드레스 카운터(207)는 스텝모터(117)를 제어하기 위한 가속 램(202)과 감속 램(203)의 데이터를 저장하거나 검출하며, 스텝모터(117)의 구동패턴이 저장된다.The address counter 207 stores or detects data of the acceleration ram 202 and the deceleration ram 203 for controlling the step motor 117, and stores the driving pattern of the step motor 117.
카운터(215)는 시스템클럭 발생부(209)로부터 제공되는 시스템클럭을 카운팅한다.The counter 215 counts the system clock provided from the system clock generator 209.
비교기(216)는 카운터(215)의 카운팅값과 가속 램(202) 및 감속 램(203)의 데이터값을 비교하여 그 결과에 대응하는 소정신호를 출력한다.The comparator 216 compares the counting value of the counter 215 with the data values of the acceleration ram 202 and the deceleration ram 203 and outputs a predetermined signal corresponding to the result.
업/다운 카운터(211)는 비교기(216)에서 출력되는 신호 및 레지스터(212)에서 출력되는 회전방향신호에 따라 업카운팅(Up Counting) 혹은 다운카운팅(Down Counting)동작을 수행하면서 어드레스를 발생한다.The up / down counter 211 generates an address while performing an up counting or down counting operation according to the signal output from the comparator 216 and the rotation direction signal output from the register 212. .
제1 및 제2 데이터 버퍼(204, 205)는 롬(116)에 저장된 가감속 테이블 데이터를 일시적으로 버퍼링한다.The first and second data buffers 204 and 205 temporarily buffer the acceleration / deceleration table data stored in the ROM 116.
제1 제어신호 발생부(217)는 비교기(216)의 출력신호 및 레지스터(212)의 출력신호에 따라 어드레스 카운터(207)에서 가속 램(202) 및 감속 램(203)에 제공되는 어드레스 카운팅값을 증가 혹은 정지 혹은 리셋시키는 동작을 수행한다.The first control signal generator 217 is an address counting value provided to the acceleration ram 202 and the deceleration ram 203 at the address counter 207 according to the output signal of the comparator 216 and the output signal of the register 212. To increase, stop, or reset.
제2 제어신호 발생부(218)는 카운터(215) 및 업/다운 카운터(211)를 리셋시키거나 시스템클럭 발생부(209)로부터 발생되는 시스템클럭을 카운터(215) 및 업/다운 카운터(211)에 제공한다.The second control signal generator 218 resets the counter 215 and the up / down counter 211, or resets the system clock generated from the system clock generator 209 to the counter 215 and up / down counter 211. To provide.
가속 램(202) 및 감속 램(203)은 사용자에 의해 지정 가능한 해상도별 최종 가속 및 감속에 관한 속도데이터를 저장한다.The acceleration ram 202 and the deceleration ram 203 store speed data regarding final acceleration and deceleration for each resolution that can be specified by a user.
레지스터(212)는 스텝모터(117)의 제어에 관련된 각종 정보를 저장한다.The register 212 stores various kinds of information related to the control of the step motor 117.
패턴 메모리(219)는 도 3에서 언급한 바와 같이 풀스텝 패턴메모리(Full Step Pattern Memory)와 하프스텝 패턴메모리(Half Step Pattern Memory)로 구성되며, 사용자에 의해 지정된 해상도에 대응하여 플랫베드방식 스캐너의 구동상태에 대응하는 풀스텝 패턴 및 하프스텝 패턴이 각각 저장된다.The pattern memory 219 is composed of a full step pattern memory and a half step pattern memory, as mentioned in FIG. 3, and corresponds to a flatbed scanner corresponding to a resolution specified by a user. The full step pattern and the half step pattern corresponding to the driving state are stored, respectively.
이와 같은 구성을 갖는 본 발명의 제2 실시예에 대한 동작에 대하여 도 4 및 도 5를 참조하여 설명하면 다음과 같다.The operation of the second embodiment of the present invention having such a configuration will be described below with reference to FIGS. 4 and 5.
롬(116)에 저장된 임의의 해상도에 대한 가감속 테이블 데이터는 어드레스 카운터(207)와 제1 데이터버퍼(204)에 의해 가속 램(202)과 감속 램(203)에 순차적으로 저장된다. 이후, 롬(116)의 다른 영역에 저장되어 있는 풀스텝/하프스텝 구동패턴데이터는 사용자가 지정한 해상도에 따라 프로그램에서 미리 설정한 구동방법에 의해 풀스텝 혹은 하프스텝의 구동방식이 결정되어 패턴메모리(219)에 저장된다. 이러한 준비과정이 종료되면 스캐닝작업의 준비가 완료되고, 컴퓨터(113)로부터 스캐닝명령이 접수되면 중앙처리장치(101)는 레지스터(212)에 회전방향, 속도패턴(가속, 정속, 감속) 신호를 적절한 시점에서 적절한 타이밍으로 저장함으로써 원하는 동작을 수행할 수 있도록 한다.The acceleration / deceleration table data for any resolution stored in the ROM 116 is sequentially stored in the acceleration RAM 202 and the deceleration RAM 203 by the address counter 207 and the first data buffer 204. Thereafter, the full-step / half-step driving pattern data stored in another area of the ROM 116 is determined by the driving method set in advance by the program according to the resolution specified by the user. Stored at 219. When the preparation process is completed, the preparation for the scanning operation is completed. When the scanning command is received from the computer 113, the central processing unit 101 transmits a rotation direction and a speed pattern (acceleration, constant speed, deceleration) signal to the register 212. By saving at the right time and at the right time, you can perform the desired operation.
예컨대, 도 4의 동작타이밍도를 참조하여 설명하면, 먼저 정지상태에서는 레지스터(212)의 초기치를 모두 "0"으로 설정한다. 스캐닝명령이 접수되면 스캐닝신호, 가속신호, 정지신호를 모두 "1"로 설정한다. 이것은 정지상태로부터 가속상태로 전환되었음을 의미한다.For example, referring to the operation timing diagram of FIG. 4, first, all initial values of the register 212 are set to "0" in the stop state. When the scanning command is received, the scanning signal, the acceleration signal, and the stop signal are all set to "1". This means the transition from the stop state to the acceleration state.
레지스터(212)의 값(스캐닝신호=1, 가속신호=1, 정지신호=1)들이 설정되면, 가속 램(202)이 인에이블(Enable)되어 어드레스 카운터(207)에서 제공되는 어드레스에 따라 가속 램(202)의 데이터가 출력된다. 이때, 초기치는 "0"이므로, 가속 램(202)에 저장된 "0"번지의 데이터가 비교기(216)에 입력되고, 카운터(215)는 제2 제어신호 발생부(218)에서 공급되는 클럭에 따라 "1"씩 증가하여 카운터(215)의 카운팅값과 가속 램(202)으로부터 입력된 "0"번지의 데이터값이 일치하면 비교기(216)는 하나의 펄스를 출력한다. 비교기(216)에서 출력된 펄스에 따라 카운터(215)의 카운팅값은 "0"으로 리셋되고, 업/다운 카운터(211)와 어드레스 카운터(207)의 값이 "1"씩 증가한다.When the value of the register 212 (scanning signal = 1, acceleration signal = 1, stop signal = 1) is set, the acceleration RAM 202 is enabled and accelerated according to the address provided by the address counter 207. The data of the RAM 202 is output. At this time, since the initial value is "0", data of address "0" stored in the acceleration RAM 202 is input to the comparator 216, and the counter 215 is supplied to the clock supplied from the second control signal generator 218. Accordingly, when the counting value of the counter 215 and the data value of the address "0" input from the acceleration RAM 202 coincide with each other, the comparator 216 outputs one pulse. According to the pulse output from the comparator 216, the counting value of the counter 215 is reset to "0", and the values of the up / down counter 211 and the address counter 207 increase by "1".
이때, 어드레스 카운터(207)는 "1"번지의 데이터가 비교기(216)에 입력되고, 업/다운 카운터(211)는 패턴메모리(219)에 저장되어 있는 값이 출력되도록 어드레스를 제공하여 최종적으로 스텝모터(117)가 한 스텝 이동한 결과가 된다.At this time, the address counter 207 provides the address so that data of address "1" is input to the comparator 216, and the up / down counter 211 outputs the value stored in the pattern memory 219. This results in the step motor 117 moving one step.
이후, 비교기(216)에서 비교한 결과 카운터(215)의 카운팅값과 가속 램(202)으로부터 입력된 "1"번지의 데이터값이 일치하면 비교기(216)는 하나의 펄스신호를 출력하고, 앞서 설명한 동작과정이 반복 수행된다. 이러한 동작은 스캐닝 명령이 접수될 때 설정된 해상도에 따른 속도 즉, 어떤 속도로 스캐닝작업을 수행하는가에 따라 가속 스텝수가 결정되어 이미 정해진 가속 스텝수만큼 진행되면 중앙처리장치(101)의 제어에 따라 레지스터(212)는 가속 "0", 정속 "1"로 설정되어 스텝모터(117)는 정속상태로 전환된다. 이때는 가속 램(202)의 어드레스는 변하지 않고 일정한 어드레스를 임의의 스텝동안 반복적으로 수행함으로써 안정화구간을 거친 후 화상의 스캐닝동작이 이루어진다.Subsequently, when the counting value of the counter 215 and the data value of the address "1" input from the acceleration RAM 202 match, the comparator 216 outputs one pulse signal. The described operation is repeated. This operation is performed according to the control of the central processing unit 101 when the acceleration step number is determined according to the speed according to the set resolution, that is, the scanning operation is performed when the scanning command is received. 212 is set to acceleration "0" and constant speed "1", and the step motor 117 is switched to the constant speed state. At this time, the address of the acceleration RAM 202 is not changed, and the scanning operation of the image is performed after passing through the stabilization period by repeatedly performing a constant address for a certain step.
이후, 정해진 분량(스텝수)만큼 스캐닝동작이 수행되면 스텝모터(117)는 감속상태로 전환된다. 즉, 중앙처리장치(101)의 제어에 따라 레지스터(212)가 정속 "0", 감속 "1"로 설정되면, 감속 램(203)이 인에이블되고 감속 램(203)의 어드레스는 "0"이 된다. 이 상태에서 감속 램(203)의 "0"번지에서 출력되는 감속데이터가 비교기(216)에 입력되고, 카운터(215)는 제2 제어신호 발생부(218)에서 제공되는 클럭에 따라 카운팅값이 "1"씩 증가된다.Thereafter, when the scanning operation is performed by the predetermined amount (step number), the step motor 117 is switched to the deceleration state. That is, when the register 212 is set to the constant speed "0" and the deceleration "1" under the control of the central processing unit 101, the deceleration ram 203 is enabled and the address of the deceleration ram 203 is "0". Becomes In this state, the deceleration data output at the address "0" of the deceleration ram 203 is input to the comparator 216, and the counter 215 has a counting value according to the clock provided from the second control signal generator 218. Incremented by "1".
비교기(216)는 카운터(215)의 카운팅값과 감속 램(203)으로부터 입력된 "0"번지의 데이터값이 일치하면 하나의 펄스신호를 발생하고, 이 펄스에 따라 어드레스 카운터(207)의 카운팅값이 "1"씩 증가하여 감속 램(203)에 저장된 "1"번지의 감속데이터가 비교기(216)에 입력되고, 업/다운 카운터(211)의 카운팅값이 증가되어 패턴메모리(219)로부터 다음 스텝에 해당하는 스텝모터(117)의 구동패턴이 출력됨에 따라 스텝모터(117)가 한 스텝 진행하게 된다. 이러한 동작을 앞서 설명한 가속 스텝수만큼 진행한 후 감속과정이 완료되면, 중앙처리장치(101)는 레지스터(212)를 감속 "0", 정지"0"의 상태로 설정하고, 이로 인하여 스텝모터(117)는 정지한다.The comparator 216 generates one pulse signal when the counting value of the counter 215 and the data value of "0" input from the deceleration RAM 203 match, and counts the address counter 207 according to the pulse. Decrease data of address "1" stored in deceleration ram 203 by increasing value by "1" to input to comparator 216, and counting value of up / down counter 211 is increased to form pattern memory 219. As the driving pattern of the step motor 117 corresponding to the next step is outputted, the step motor 117 advances by one step. When the deceleration process is completed after the operation is performed by the number of acceleration steps described above, the central processing unit 101 sets the register 212 to the deceleration " 0 " and the stop " 0 " states. 117 stops.
이후, 레지스터(212)가 스텝모터(117)의 회전방향을 "1"로 설정한 상태에서, 위와 같은 과정들을 반복 수행하면, 스텝모터(117)는 역회전을 수행한다. 결국, 이와 같은 과정을 계속 반복함에 따라 미리 설정된 영역에 대한 화상스캐닝작업이 가능하도록 제어할 수 있다.Thereafter, in the state where the register 212 sets the rotation direction of the step motor 117 to "1", if the above steps are repeated, the step motor 117 performs reverse rotation. As a result, by repeating the above process, it is possible to control the image scanning operation for the preset area.
따라서, 본 발명의 제1 및 제2 실시예에 의하면, 사용자가 지정가능한 해상도별로 스텝모터(117)의 구동패턴을 모두 저장할 필요 없이 적은 용량의 가감속패턴만을 저장한 상태로 각각의 해상도에 대응하여 플랫베드방식 스캐너의 구동상태를 용이하게 제어할 수 있다.Therefore, according to the first and second embodiments of the present invention, the drive pattern of the step motor 117 does not need to be stored for each resolution that can be designated by the user, and only the small acceleration / deceleration patterns are stored, corresponding to the respective resolutions. Thus, the driving state of the flatbed scanner can be easily controlled.
이와 같이, 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범주에서 벗어나지 않는 한도내에서 여러 가지 변형이 가능함은 물론이다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구범위 뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.As described above, in the detailed description of the present invention, specific embodiments have been described, but various modifications are possible without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined by the claims below and equivalents thereof.
결국, 본 발명에 의한 스텝모터 제어방법 및 그 장치에 따르면 다음과 같은 이점이 발생한다.As a result, according to the step motor control method and apparatus according to the present invention the following advantages occur.
첫째, 각 해상도에 대한 다수개의 가감속패턴을 각각 저장할 필요 없이 하나의 가감속패턴과 각 해상도에 대응하는 최종 속도데이터를 저장함으로써, 저장매체에 저장되어야 할 데이터의 용량이 감소하고, 이로 인하여 저장매체의 용량을 줄일 수 있으므로, 제조원가를 절감할 수 있다.First, by storing one acceleration / deceleration pattern and the final speed data corresponding to each resolution without having to store a plurality of acceleration / deceleration patterns for each resolution, the capacity of data to be stored in the storage medium is reduced, thereby storing. Since the capacity of the medium can be reduced, manufacturing cost can be reduced.
둘째, 하나의 가감속패턴과 각 해상도에 대응하는 최종 속도데이터를 이용하여 스텝모터의 이송속도를 제어함으로써, 제어작업이 단순화된다.Second, the control operation is simplified by controlling the feed speed of the step motor using one acceleration / deceleration pattern and the final speed data corresponding to each resolution.
셋째, 스텝모터의 속도를 제어함에 있어서, 하나의 가감속패턴과 각 해상도에 대응하는 최종 속도데이터를 이용하여 모든 해상도에 적용할 수 있으므로, 획득된 화상에 왜곡이 발생하지 않으므로, 안정된 화상정보를 획득할 수 있다.Third, in controlling the speed of the step motor, one acceleration / deceleration pattern and the final speed data corresponding to each resolution can be applied to all resolutions, so that distortion does not occur in the acquired image, thereby providing stable image information. Can be obtained.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980044631A KR100294213B1 (en) | 1998-10-23 | 1998-10-23 | Step Motor Control Method and Apparatus_ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980044631A KR100294213B1 (en) | 1998-10-23 | 1998-10-23 | Step Motor Control Method and Apparatus_ |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20000026890A KR20000026890A (en) | 2000-05-15 |
KR100294213B1 true KR100294213B1 (en) | 2001-07-12 |
Family
ID=19555204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980044631A KR100294213B1 (en) | 1998-10-23 | 1998-10-23 | Step Motor Control Method and Apparatus_ |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100294213B1 (en) |
-
1998
- 1998-10-23 KR KR1019980044631A patent/KR100294213B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20000026890A (en) | 2000-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5673124A (en) | Image scanner having system extending function and image correcting function | |
JPH0614660B2 (en) | Combined asynchronous / synchronous document scanner | |
US5101282A (en) | Variable magnification image | |
US8248668B2 (en) | Image processing device, image processing method, and image forming apparatus | |
JP2002135539A (en) | Image rader | |
KR100294213B1 (en) | Step Motor Control Method and Apparatus_ | |
US5278675A (en) | Image reading system using an interruption of a pulse train to adjust a scanning period | |
US5703454A (en) | Image reading device for scanning a document in first and second modes | |
US7136204B2 (en) | Full-zone optical image addressing apparatus | |
EP0371800B1 (en) | An image reading system | |
JP3800619B2 (en) | Image reading device | |
EP0479537A2 (en) | Image formation apparatus | |
JP3026579B2 (en) | Image reading device | |
JP2001086287A (en) | Image reader | |
JP3563757B2 (en) | Image reading device | |
JPH04369163A (en) | Picture reader | |
JP2000312293A (en) | Printer | |
JPH03241968A (en) | Picture reader | |
JP3387494B2 (en) | Image control device | |
JP2005311946A (en) | Image reader | |
JP2000354137A (en) | Image reader | |
JPH06105125A (en) | Picture reader | |
JPS63196163A (en) | Original processor | |
JPH0341863A (en) | Facsimile equipment | |
JPH08335263A (en) | Scanner device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20070329 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |