KR100287427B1 - Apparatus for generating pulse train - Google Patents

Apparatus for generating pulse train Download PDF

Info

Publication number
KR100287427B1
KR100287427B1 KR1019980047411A KR19980047411A KR100287427B1 KR 100287427 B1 KR100287427 B1 KR 100287427B1 KR 1019980047411 A KR1019980047411 A KR 1019980047411A KR 19980047411 A KR19980047411 A KR 19980047411A KR 100287427 B1 KR100287427 B1 KR 100287427B1
Authority
KR
South Korea
Prior art keywords
pulse
latch
value
adder
pulse train
Prior art date
Application number
KR1019980047411A
Other languages
Korean (ko)
Other versions
KR19990014408A (en
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
Application filed by 강석희 filed Critical 강석희
Priority to KR1019980047411A priority Critical patent/KR100287427B1/en
Publication of KR19990014408A publication Critical patent/KR19990014408A/en
Application granted granted Critical
Publication of KR100287427B1 publication Critical patent/KR100287427B1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/64Generators producing trains of pulses, i.e. finite sequences of pulses
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P25/00Arrangements or methods for the control of AC motors characterised by the kind of AC motor or by structural details
    • H02P25/02Arrangements or methods for the control of AC motors characterised by the kind of AC motor or by structural details characterised by the kind of motor
    • H02P25/06Linear motors
    • H02P25/064Linear motors of the synchronous type
    • H02P25/066Linear motors of the synchronous type of the stepping type

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

PURPOSE: An apparatus for generating pulse train is provided to use a clock which is lower than a radio reference clock by utilizing an adder for compensating for an effective place. CONSTITUTION: A pulse period register(30) is used for storing a period of pulse. A pulse increase register(31) is used for storing an increase of the pulse according to a sampling time. The first, the second, and the fourth latches(34,35,36) are used for latching the stored values through data buses(32,33) by the same signal output(47) of a comparator(49). The first latch(34) is used for storing an integer value corresponding to the pulse period. The second latch(35) is used for storing a fractional value of the pulse period. An adder(39) and an adder output(43) are added by a D-flipflop(44) whenever a carry signal(50) of a timer(48) is outputted. An overflow value(42) is added to the integer value of the first latch(34). The added value is latched by a signal of the third latch(36).

Description

펄스열 발생장치Pulse train generator

본 발명은 서보드라이버 또는 스텝핑드라이버의 위치, 속도지령 신호인 펄스를 원하는 모션동작이 되게 주파수 및 위치지령을 할 수 있도록하기 위한 펄스열 발생에 관한 것으로 산업용으로 널리 사용되고 있는 각종 모터 구동장치에 필수적인 제어로직으로 집적회로(ASIC 또는 FPGA)로 설계되어 모션컨트롤러에 탑재되는 펄스열발생장치에 관한 것이다.The present invention relates to the generation of pulse train for enabling the frequency and position command of the servo driver or stepping driver to be the desired motion operation of the pulse which is the speed command signal. The present invention relates to a pulse train generator which is designed as an integrated circuit (ASIC or FPGA) and mounted on a motion controller.

일반적으로 제1도에 있어서 펄스열 발생기(3)는 CPU(2)와 조합디어 시스템 구성을 이루고 서보드라이버 또는 스탭핑드라이버(6)의 상위 모션컨트롤러(1)에 장착되어 사용된다. 상위 모션컨트롤러(1)의 CPU(2)로 프로그래밍된 스퀀스에 따라 모터(6)의 우치 또는 속도제어를 펄스(4) 형태로 하위 구동장치(5)에 지령하여 원하는 각도 및 위치를 제어한다. 종래의 펄스열 발생기의 내부 로직은 제2도에서 출력코자하는 가속도, 감속도, 주파수 및 목표펄스량을 일정 시점에 계산하여 각각의 레지스터(10, 11, 12, 13)에 기억시킨다. 이 값들은 타이머(14)의 기준클럭에 의해 '1'씩 감소하여 타이머값이 '0'이 될 때 펄스가 발생되고, 그 펄스는 카운터(16)에 의해 계수된 다음 목표펄스량 레지스터(13)의 값과 비교기(17)에서 비교되어 두 값이 동일 할때까지 타이머는 펄스를 출력하게 된다. 타이머의 펄스 출력(15)은 펄스열 형태설정(18)에서 원하는 파형의 펄스 P+(19), P-(20)를 출력한다.In general, in FIG. 1, the pulse train generator 3 forms a system configuration in combination with the CPU 2 and is mounted on the upper motion controller 1 of the servo driver or the stepping driver 6 and used. According to the sequence programmed by the CPU 2 of the upper motion controller 1, the lower gear 5 is commanded to the lower driving device 5 in the form of a pulse 4 to control the right or speed control of the motor 6 to control the desired angle and position. . The internal logic of the conventional pulse train generator calculates the acceleration, deceleration, frequency, and target pulse amounts to be outputted in FIG. 2 at a predetermined time point and stores them in the registers 10, 11, 12, and 13, respectively. These values are decremented by '1' by the reference clock of the timer 14 so that a pulse is generated when the timer value becomes '0', and the pulse is counted by the counter 16 and then the target pulse amount register 13 Value is compared with the comparator 17 and the timer outputs a pulse until the two values are the same. The pulse output 15 of the timer outputs the pulses P + 19 and P- 20 of the desired waveform in the pulse train form setting 18.

이와같은 기존의 펄스열 발생장치는 기준클럭으로 수백 메가헤르쯔(MHz)를 사용하여 최대로 출력하는 펄스의 주기 및 펄스열의 정밀도를 유지하고 있다. 따라서 사용되는 집적회로의 특성이 좋아야 하며 그에따른 코스트 상승이 요구된다. 또한 펄스열의 주파수를 임의의 시점에서 변경하고자 할 때 펄스 출력으로 반영되는 시점지연과, 다양한 온라인 모션동작을 주변장치(로봇 또는 PLC)와 연동하여 구현코자 할 때 이미 계산된 위치, 속도 패턴(제3도)을 각각의 레지스터에 기억시킨 상태이므로 임의의 시점에서 위치, 속도 패턴을 변경하는데 많은 제약이 따른다.The conventional pulse train generator maintains the accuracy of the pulse cycle and the pulse output to the maximum by using several hundred megahertz (MHz) as a reference clock. Therefore, the characteristics of the integrated circuit used must be good and accordingly the cost increase. In addition, when the frequency of the pulse train is to be changed at an arbitrary time, the time delay reflected by the pulse output and the position and velocity pattern already calculated when implementing various online motion operations in conjunction with a peripheral device (robot or PLC) Since 3 degrees) is stored in each register, there are many restrictions in changing the position and velocity patterns at any point in time.

제3도의 시간대비 속도형상에 대응하는 모터구동 패턴(24:가속, 25:등속, 26:감속, 27:조그속도)을 예시한 것으로 각 구간에 따라 출력되는 펄스열(28)은 가감속 및 등속도에 맞는 펄스주기와 목표하는 위치에 대응하는 펄스갯수가 정확히 발생되어야 한다. 일반적으로 상위 컨트롤러(1)에서는 임의의 속도, 위치 패턴을 일정샘플링 타임마다 계산하게되고 그 값은 한 샘플링 구간에 해당하는 속도 또는 위치 증분량에 해당한다. 이와 같이 CPU에서 계산된 정보를 즉시 반영코자 하는 제어방식에서는 기존의 펄스발생장치로는 많은 제약조건이 따르게된다.The motor driving pattern (24: acceleration, 25: constant speed, 26: deceleration, 27: jog speed) corresponding to the time-to-speed shape of FIG. 3 is illustrated. The pulse train 28 outputted according to each section is acceleration / deceleration and constant speed. The pulse period corresponding to the figure and the number of pulses corresponding to the target position should be generated accurately. In general, the upper controller 1 calculates an arbitrary speed and position pattern for each sampling time, and the value corresponds to a speed or position increment corresponding to one sampling interval. As described above, in the control method for immediately reflecting the information calculated by the CPU, many constraints are applied to the conventional pulse generator.

본 발명은 펄스열 발생 방식을 일정한 샘플링 타임마다 계산된 위치 정보에서 펄스의 증분량과 펄스간격을 계산하여 레지스터에 기억시키고, 원하는 펄스의 정도를 확보하기 위해 내부에 유효자리 보상을 위한 덧셈기(Adder)를 부가하여 종래의 고주파 기준클럭보다 낮은 클럭을 사용 할 수 있게하여 특성이 좋은 고속의 집적회로칩의 사용에 의한 코스트 상승을 피할 수 있게하였다. 또한 각 샘플링 구간에서 계산된 목표값이 다음 샘플링 구간에서 펄스 발생로직에 반영되는 구조로 종래의 다양한 모션구현의 애로사항을 극복하였다.The present invention calculates the incremental amount and pulse interval of the pulse from the position information calculated at a constant sampling time in the register and stores the pulse train generation method in the register to secure the effective position of the adder (Adder) In addition, it is possible to use a clock lower than the conventional high frequency reference clock to avoid the cost increase by using a high-speed integrated circuit chip with good characteristics. In addition, the target value calculated in each sampling section is reflected in the pulse generation logic in the next sampling section to overcome the difficulties of various conventional motion implementations.

제1도는 펄스열 발생기의 사용 예1 is a use example of the pulse train generator

제2도는 상용 모션컨트롤러에 사용되고 있는 펄스열 발생장치의 블록도2 is a block diagram of a pulse train generator used in a commercial motion controller.

제3도는 펄스열의 파형도3 is a waveform diagram of a pulse train

제4도는 본 발명의 펄스열 발생장치4 is a pulse train generator of the present invention

제5도는 샘플링 시간 단위로 처리하는 펄스열의 시간 및 펄스수의 관계도5 is a relation diagram of time and number of pulses of a pulse train processed in units of sampling time

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

. 레지스터(10, 11, 12, 13, 30, 31) : 제1도의 CPU(2)에서 읽고 또는 쓸 수 있는 데이터 저장장소.. Registers 10, 11, 12, 13, 30, and 31: Data storage places that can be read or written by the CPU 2 of FIG.

. 타이머(14, 48) : 입력 기준클럭으로 동작하는 로더블타이머로 로드된 초기값에서 '1'씩 감소하여 '0'에 도달하면 캐리를 발생하는 장치.. Timer 14, 48: A device that generates a carry when it reaches '0' by decreasing '1' from the initial value loaded by the retractable timer operating as an input reference clock.

. 비교기(17, 49) : 두개의 입력 데이터의 값이 동일할 때 신호를 발생하는 장치.. Comparator (17, 49): A device that generates a signal when the values of two input data are the same.

. 펄스열 형태설정(18, 52) : 설정된 모드에 따라 펄스열의 형태를 조정하는 장치.. Pulse train form setting (18, 52): Device to adjust the form of pulse train according to the set mode.

. P+, P- : 펄스 형태 선택에 따라 '펄스신호와 방향신호' 또는 정방향펄스와 역방향펄스' 또는 '2상의 구형파(일명 엔코더 신호)'형태로 출력되는 펄스출력 신호.. P +, P-: Pulse output signal output in the form of 'pulse signal and direction signal' or forward and reverse pulse 'or' two-phase square wave (aka encoder signal) 'according to the pulse type selection.

. S1 : 제4도의 로더블 타이머(48)의 캐리신호 펄스열 출력임.. S1: The carry signal pulse string output of the retractable timer 48 of FIG.

. S2 : 제4도의 비교기(49)의 두 입력이 동일할 때 발생되는 출력 신호임.. S2: Output signal generated when two inputs of the comparator 49 of FIG. 4 are identical.

본 발명의 제4도의 펄스발생 로직과 CPU연산으로 제5도의 원하는 제어값(펄스증분량과 펄스간격)을 구하여 펄스열을 제어하는 방식으로 구성된다.The pulse generation logic and CPU operation of FIG. 4 of the present invention are used to obtain a desired control value (pulse increment and pulse interval) of FIG. 5 to control the pulse train.

제5도에 있어서 속도패턴(61)에 대응하는 디지털 값으로 각 샘플링타임 Ts(60)에서 계산된 위치 증분량 P0(62)∼P4를 속도에 대응하는 펄스주기 T0(64)∼T4와 펄스수로 환산하여 제4도의 레지스터에 기억시키면 펄스발생로직은 원하는 펄스를 발생시키게 된다.In Fig. 5, the position increment amounts P0 (62) to P4 calculated at each sampling time Ts (60) are digital values corresponding to the speed pattern 61, and the pulse periods T0 (64) to T4 corresponding to the speed and pulses. When converted into numbers and stored in the register of Fig. 4, the pulse generating logic generates the desired pulse.

제4도에 있어서 CPU에서 연산된 펄스간격(제5도의 T0∼T4)을 저장하는 펄스간격 레지스터(30)와 펄스증분량(제5도의 P0∼P4)을 저장하는 펄스증분량 레지스터(31)로 구성되어 각 샘플링 타임마다 새로운 값으로 저장되고 각각의 값은 데이터버스(32, 33)을 통하여 비교기(49)의 동일신호 출력 S1(47)에 의하여 래치1(34), 래치2(35), 래치4(36)에 래치된다. 여기서 래치1에는 소수점 이하의 유효자리를 포함한 펄스주기에 해당하는 정수값이 저장되고, 래치2에는 펄스주기의 소숫점 이하 값이 저장된다. 소수점 이하값은 로더블 타이머(48)의 캐리신호 S2(50)가 출력될 때 마다 덧셈기(39)와 덧셈기 출력(43)은 플립플롭 DFF(44)에 의하여 더해지고, 덧셈기의 오버플로우 값(42)은 래치1의 정수값과 덧셈기(41)에서 더해지고 그 값은 래치3(46)에 S2신호에 의하여 래치된다. 이 로직은 수십 메가헤르쯔(MHz)의 기준클럭으로 보증할 수 있는 최대 주파수의 정밀도를 일정 정도(레졸루션) 이상 보증하기 위한 유효자리 보상방식으로 한 샘플링 구간내에서 하드웨어 로직으로 보상되게 되어 소프웨어로 처리할 수 없는 미세조정을 행할 수가 있다.In FIG. 4, a pulse interval register 30 for storing pulse intervals (T0 to T4 in FIG. 5) calculated by the CPU and a pulse increment register 31 for storing pulse increments (P0 to P4 in FIG. 5). Each value is stored as a new value at each sampling time, and each value is latched 1 (34) and latched 2 (35) by the same signal output S1 (47) of the comparator 49 through the data buses 32 and 33. And latch 4 (36). Here, the latch 1 stores an integer value corresponding to a pulse period including a significant digit below the decimal point, and the latch 2 stores a value below the decimal point of the pulse period. The value below the decimal point is added to the adder 39 and the adder output 43 by the flip-flop DFF 44 whenever the carry signal S2 50 of the loadable timer 48 is output, and the overflow value of the adder ( 42 is added to the adder 41 by the integer value of the latch 1 and the value is latched by the S2 signal to the latch 3 46. This logic is a software that is compensated by hardware logic within the sampling interval with effective digit compensation method to guarantee the accuracy of the maximum frequency that can be guaranteed with a reference clock of several tens of megahertz (MHz) to a certain degree (resolution). Fine adjustments cannot be made.

위와같이 발생된 펄스 S2는 카운터(51)로 계수되고 비교기(49)로 전달되어 펄스증분량인 래치4(36)와 비교되며 동일한 값이되면 신호 S1(47)이 발생되고 이 신호는 래치1, 래치2, 래치4에 새로운 값을 로드하게 한다. 따라서 각 샘플링에 출력되는 펄스수는 목표값과 일치되며 원하는 펄스형태는 펄스형태설정(52)에 의해 여러가지 형상으로 하위 서보드라이버 또는 스탭핑드라이버의 입력규격에 맞게 출력할 수있다.The pulse S2 generated as described above is counted by the counter 51 and transferred to the comparator 49 to be compared with the latch 4 36 which is the pulse increment, and when the same value is reached, the signal S1 47 is generated and the signal is latched 1. To load new values into latch 2 and latch 4. Therefore, the number of pulses output to each sampling is consistent with the target value, and the desired pulse shape can be output in various shapes by the pulse shape setting 52 in accordance with the input specifications of the lower servo driver or the stepping driver.

본 발명에 의한 펄스열 발생방식은 일정한 샘플링타임 마다 목표로하는 위치, 속도의 정보를 전달시키므로 어느 시점에서나 목표치 변경이 가능하고 시스템 구성시동제어 및 동기동작을 구현코자 할 때 원할한 모션제어가 가능한 펄스출력을 발생시킬 수 있다. 또한 수십 메가헤르쯔(MHz)의 기준클럭으로도 최고주파수(대략 수십 메가헤르쯔)의 정도를 낼 수 있는 장점을 가지므로 상용화 되어있는 프로그래머블 로직(예를들면 FPGA 또는 EPLD)으로도 쉽게 실현할 수 있다.The pulse train generation method according to the present invention transmits the target position and velocity information at a constant sampling time, so that the target value can be changed at any point and smooth motion control is possible when implementing system configuration start control and synchronous operation. Can generate output. It also has the advantage of achieving the highest frequency (approximately tens of megahertz) even with a reference clock of tens of megahertz (MHz), which can be easily realized with commercially available programmable logic (eg FPGA or EPLD).

Claims (1)

목표로하는 펄스열의 주파수와 갯수를 발생시기 위하여 일정 샘플링타임 마다 펄스간격과 펄스증분량을 인가하고, 원하는 펄스 주파수를 얻기 위한 유효자리 보상 장치인 덧셈기를 부가하여 주파수의 정밀도를 개선하고, 펄스수를 카운터로 계수하여 목표량에 도달하면 다음 목표치를 로딩하여 연속적인 펄스를 발생시키는 펄스열 발생장치.In order to generate the desired frequency and number of pulse trains, pulse intervals and pulse increments are applied at certain sampling times, and an adder which is an effective position compensation device for obtaining a desired pulse frequency is added to improve the accuracy of the frequency. Is a pulse train generator that generates a continuous pulse by loading the next target value when the target value is reached by counting the counter.
KR1019980047411A 1998-11-06 1998-11-06 Apparatus for generating pulse train KR100287427B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980047411A KR100287427B1 (en) 1998-11-06 1998-11-06 Apparatus for generating pulse train

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980047411A KR100287427B1 (en) 1998-11-06 1998-11-06 Apparatus for generating pulse train

Publications (2)

Publication Number Publication Date
KR19990014408A KR19990014408A (en) 1999-02-25
KR100287427B1 true KR100287427B1 (en) 2001-04-16

Family

ID=37515004

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980047411A KR100287427B1 (en) 1998-11-06 1998-11-06 Apparatus for generating pulse train

Country Status (1)

Country Link
KR (1) KR100287427B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7183731B2 (en) 2004-05-18 2007-02-27 Samsung Electronics Co., Ltd. Pulse generating method and pulse generator, and motor control system using the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7183731B2 (en) 2004-05-18 2007-02-27 Samsung Electronics Co., Ltd. Pulse generating method and pulse generator, and motor control system using the same

Also Published As

Publication number Publication date
KR19990014408A (en) 1999-02-25

Similar Documents

Publication Publication Date Title
US5119045A (en) Pulse width modulation circuit
JPS5931897B2 (en) frequency synthesizer
EP0165046B1 (en) Pulse generator for generating a train of pulses representing the displacement of a body
KR100249718B1 (en) Time interval measurement system and method applied therin
US4034367A (en) Analog-to-digital converter utilizing a random noise source
KR100287427B1 (en) Apparatus for generating pulse train
CN101458511A (en) Hardware interpolation method based on programmable logic device
US4476420A (en) Circuit arrangement for synthesizing a sinusoidal position signal having a desired phase and high-resolution positioning system making use of the circuit arrangement
US5216346A (en) Waveform processing circuit for pulse generator
JP2011061929A (en) Motor speed control device
US4095157A (en) Digital servomechanism control system
JPS61208310A (en) Delay time setting pulse generator
RU2181903C2 (en) Digital controller for system controlling electromagnetic suspension of rotor
KR970002301B1 (en) Position controlling circuit for injection moulding machine
SU1695267A1 (en) Linear interpolator
JPH0430813Y2 (en)
SU1167736A1 (en) Number-to-frequency converter
US5565797A (en) Clock signal generating device
JP2736583B2 (en) Motor speed control device
JP3555726B2 (en) Pulse generator
KR0168082B1 (en) Digital pwm signal generating apparatus
SU1619087A1 (en) Method and apparatus for determining natural forms and frequencies of oscillations of tested object
JP2517764Y2 (en) D / A converter
SU1224725A1 (en) Meter of linear displacement speed
RU2205446C2 (en) Capacitive differential transmitter signal digitizer

Legal Events

Date Code Title Description
A201 Request for examination
G15R Request for early opening
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20070102

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee