KR100889961B1 - 스텝 모터 위치 오차 보정 방법 및 시스템 - Google Patents

스텝 모터 위치 오차 보정 방법 및 시스템 Download PDF

Info

Publication number
KR100889961B1
KR100889961B1 KR1020070042168A KR20070042168A KR100889961B1 KR 100889961 B1 KR100889961 B1 KR 100889961B1 KR 1020070042168 A KR1020070042168 A KR 1020070042168A KR 20070042168 A KR20070042168 A KR 20070042168A KR 100889961 B1 KR100889961 B1 KR 100889961B1
Authority
KR
South Korea
Prior art keywords
step motor
current command
rotor
command table
position error
Prior art date
Application number
KR1020070042168A
Other languages
English (en)
Other versions
KR20080097060A (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
Application filed by (주)컨벡스 filed Critical (주)컨벡스
Priority to KR1020070042168A priority Critical patent/KR100889961B1/ko
Priority to US11/823,398 priority patent/US7688019B2/en
Publication of KR20080097060A publication Critical patent/KR20080097060A/ko
Application granted granted Critical
Publication of KR100889961B1 publication Critical patent/KR100889961B1/ko

Links

Images

Classifications

    • 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
    • H02P8/00Arrangements for controlling dynamo-electric motors of the kind having motors rotating step by step
    • H02P8/12Control or stabilisation of current
    • 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/404Numerical 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 control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41176Compensation control, position error with data from lookup memory
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41326Step motor

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Power Engineering (AREA)
  • Control Of Stepping Motors (AREA)

Abstract

본 발명은 스텝 모터 오차 보정 방법 및 시스템에 관한 것으로, 모션 제어기가 스텝 모터 드라이버에 회전자 위치 명령으로 적어도 전기각 1주기에 대응하는 수효의 위치 오차 보정용 펄스를 순차적으로 입력하는 단계, 회전자 위치 명령을 입력받은 스텝 모터 드라이버가 소정의 전류 명령 테이블을 기초로 스텝 모터를 적어도 전기각 1주기 동안 마이크로 스텝 방식으로 구동하는 단계, 스텝 모터 구동 단계에서 스텝 모터 회전자의 실제 위치를 검출하는 단계, 회전자 위치 명령과 검출 단계에서 검출된 회전자의 실제 위치를 비교하여 위치 오차를 산출하는 단계, 그리고 산출된 위치 오차에 기초하여 소정의 전류 명령 테이블을 보정하는 단계를 포함한다. 본 발명에 의하면 스텝 모터를 마이크로 스텝 방식으로 구동할 때 발생하는 위치 오차를 없앨 수 있다.
스텝 모터, 마이크로 스텝 제어, 엔코더, 스텝 모터 드라이버, 위치 오차 보정

Description

스텝 모터 위치 오차 보정 방법 및 시스템{METHOD AND SYSTEM FOR COMPENSATING POSITION ERROR OF STEP MOTOR}
도 1은 본 발명의 실시예에 따른 스텝 모터 위치 오차 보정 시스템을 나타낸 블록도이다.
도 2는 본 발명의 실시예에 따른 스텝 모터 위치 오차 보정 시스템의 동작을 설명하기 위한 흐름도이다.
<도면부호의 설명>
110: 모션 제어기, 120: 엔코더,
130: 보정 장치, 210: 스텝 모터 드라이버,
220: 스텝 모터
본 발명은 스텝 모터 위치 오차 보정 시스템 및 방법에 관한 것이다.
스텝 모터(Step Motor)는 간단한 제어 회로만으로도 분해능은 낮지만 모터의 회전 각도를 일정하게 제어할 수 있으며, 고가의 위치 센서를 별도로 구비하지 않고도 고정도의 위치 제어가 가능하다. 이러한 장점으로 인해, 스텝 모터는 컴퓨터 주변기기, 비디오 테이프 레코더(VTR), X-Y 테이블, 반도체 장비나 보안용 카메라 방향 제어 장치 등에 널리 쓰이고 있다.
종래에는 스텝 모터를 풀 스텝(full step) 또는 하프 스텝(half step) 제어 방법으로 불리는 기본각 제어 방식에 의해 구동하였다. 기본각 제어 방식에 의하면 스텝 모터는 하나의 입력 펄스 당 기본 이동각인 1.8° 혹은 0.9°로 회전한다. 비교적 큰 각도인 기본 이동각으로 회전하므로 저속에서는 회전 시마다 잔 진동을 유발하게 되어 모터가 부드러운 회전을 할 수가 없고 중저속에서는 이러한 잔 진동으로 인하여 축 진동이 모터가 회전을 할 수 없을 정도로 커지게 된다(탈조 현상).
이러한 기본각 제어 방식의 단점을 극복하기 위해서 마이크로 스텝 제어 방식이 제시되었다. 마이크로 스텝 제어 방식은 기본 이동각보다 작은 각도(마이크로 스텝)로 나누어 스텝 모터를 구동하는 방식으로 회전각의 분해능을 높여 제어하는 방법이다. 마이크로 스텝 제어에 의하면 회전각이 작으므로 저속 회전시 소음 및 진동이 작아지고 그 결과 모터의 탈조가 발생하지 않는다.
그런데 마이크로 스텝 구동에 의해 모터 회전각의 분해능을 높인다는 의미는 모터 회전각의 정밀도를 높인다는 의미가 아니다. 즉, 마이크로 스텝 구동을 할 때 스텝 모터가 실제로 이와 같이 매우 작은 각을 정확하게 회전하는지 여부(회전각의 정밀도)는 모터 회전각의 분해능과는 다른 문제인 것이다.
예를 들면, 통상적인 스텝 모터를 기본각이 1.8°인 풀 스텝으로 구동하면 회전 명령 1펄스 당 1.8°회전하고 하프 스텝 구동 시에는 0.9°회전한다. 이에 반해 마이크로 스텝 구동에 의하면 하나의 회전 명령 당 360/25000(=0.0144)°로 매우 작은 각을 회전하게 되어 회전각의 분해능을 높일 수는 있다. 하지만 스텝 모터는 자체적으로 위치 오차를 함유하고 있으며 마이크로 스텝 구동에 의하더라도 통상적으로 ±5% 정도의 위치 오차는 발생한다. 이와 같은 ±5%의 오차는 특히 정밀한 위치 제어가 요구되는 경우에 결코 무시할 수 없다.
따라서 본 발명이 이루고자 하는 기술적 과제는 모터 회전각의 정밀도를 높일 수 있는 스텝 모터 위치 오차 보정 방법 및 시스템을 제공하는 것이다.
이러한 기술적 과제를 이루기 위한 본 발명의 한 실시예에 따른 스텝 모터 위치 오차 보정 방법은, 모션 제어기가 스텝 모터 드라이버에 회전자 위치 명령으로 적어도 전기각 1주기에 대응하는 수효의 위치 오차 보정용 펄스를 순차적으로 입력하는 단계, 상기 회전자 위치 명령을 입력받은 스텝 모터 드라이버가 소정의 전류 명령 테이블을 기초로 스텝 모터를 적어도 전기각 1주기 동안 마이크로 스텝 방식으로 구동하는 단계, 상기 스텝 모터 구동 단계에서 상기 스텝 모터 회전자의 실제 위치를 검출하는 단계, 상기 회전자 위치 명령과 상기 검출 단계에서 검출된 회전자의 실제 위치를 비교하여 위치 오차를 산출하는 단계, 그리고 상기 산출된 위치 오차에 기초하여 상기 소정의 전류 명령 테이블을 보정하는 단계를 포함한다.
상기 전류 명령 테이블의 보정은 선형 보간(linear interpolation) 방법을 이용할 수 있다.
상기 보정된 전류 명령 테이블은 다음 수학식에 의하여 구해질 수 있다.
Figure 112007032617572-pat00001
(여기서,
Figure 112007032617572-pat00002
,
Figure 112007032617572-pat00003
는 상기 보정된 전류 명령 테이블을 이루는 전류 명령 데이터, f[k], g[k]는 보정 전의 전류 명령 테이블을 이루는 전류 명령 데이터, θ[k]는 상기 회전자의 실제 위치, △θ[k]는 상기 산출된 위치 오차, M은 상기 스텝 모터의 전기각 1주기에 대응하는 마이크로 스텝 수)
본 발명의 다른 태양에 따른 컴퓨터로 읽을 수 있는 매체는 상기한 방법 중 어느 하나를 컴퓨터에 실행시키기 위한 프로그램을 기록한다.
본 발명의 다른 태양에 따른 스텝 모터 위치 오차 보정 시스템은, 회전자 위치 명령으로 적어도 전기각 1주기에 대응하는 수효의 위치 오차 보정용 펄스를 순차적으로 스텝 모터 드라이버에 입력하는 모션 제어기, 상기 모션 제어기에 의해 입력된 펄스에 따라 상기 스텝 모터 드라이버가 소정의 전류 명령 테이블을 기초로 스텝 모터를 적어도 전기각 1주기 동안 마이크로 스텝 방식으로 구동하는 동안 상기 스텝 모터 회전자의 실제 위치를 검출하는 엔코더, 그리고 상기 검출되는 회전자의 실제 위치와 상기 소정의 전류 명령 테이블에 따라 상기 스텝 모터 회전자가 이동해야 할 위치 명령을 비교하여 위치 오차를 산출하고, 상기 산출된 위치 오차를 이용하여 상기 소정의 전류 명령 테이블을 보정하는 보정 장치를 포함한다.
상기 회전자 위치 명령을 상기 스텝 모터 드라이버에 입력하는 모션 제어기를 더 포함할 수 있다.
본 발명의 다른 태양에 따른 스텝 모터 시스템은, 스텝 모터, 그리고 제1 전류 명령 테이블을 저장하고, 외부로부터 회전자 위치 명령으로 입력 펄스가 입력될 때마다 상기 제1 전류 명령 테이블을 기초로 상기 스텝 모터를 마이크로 스텝 방식으로 구동하는 스텝 모터 드라이버를 포함하며, 상기 제1 전류 명령 테이블은 상기 회전자 위치 명령으로 적어도 전기각 1주기에 대응하는 수효의 위치 오차 보정용 펄스를 모션 제어기로부터 순차적으로 입력받은 상기 스텝 모터 드라이버가 제2 전류 명령 테이블을 기초로 상기 스텝 모터를 적어도 전기각 1주기 동안 마이크로 스텝 방식으로 구동하면서 상기 스텝 모터 회전자의 실제 위치와 상기 회전자 위치 명령을 비교하여 산출된 위치 오차를 이용하여 상기 제2 전류 명령 테이블을 보정해서 구해진다.
그러면 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세하게 설명한다.
도 1은 본 발명의 실시예에 따른 스텝 모터 위치 오차 보정 시스템을 나타낸 블록도이다.
도 1을 참고하면, 스텝 모터 위치 오차 보정 시스템(이하, 스텝 모터 보정 시스템)은 모션 제어기(110), 엔코더(120) 및 보정 장치(130)를 포함하며, 스텝 모터(220)와 스텝 모터 드라이버(210)에 연결되어 각종 신호 및 데이터를 주고받을 수 있다.
스텝 모터(220)는 스텝 모터 드라이버(210)에서 정현파 형태로 인가되는 상전류에 따라 마이크로 스텝 방식으로 구동된다.
스텝 모터 드라이버(210)는 전류 명령 테이블을 메모리(도시하지 않음)에 저 장하고 외부 장치(도시하지 않음) 또는 모션 제어기(110)로부터 입력 펄스가 입력되는 시점마다 전류 명령 테이블로부터 순차적으로 전류 명령 데이터를 읽어와 전류 명령을 생성한다. 또한 스텝 모터 드라이버(210)는 전류 명령을 정확히 추종하도록 각 상 전류를 제어하여 스텝 모터(220)의 각 상에 인가함으로써 스텝 모터(220)를 마이크로 스텝 방식으로 구동한다.
모션 제어기(110)는 위치 명령(θ*)으로 N개의 펄스를 순차적으로 스텝 모터 드라이버(210)에 입력하여 스텝 모터(220)가 구동되도록 한다.
엔코더(120)는 스텝 모터(220)의 회전자(도시하지 않음)에 연결되어 회전자의 실제 위치(θ)를 검출하고, 이를 보정 장치(130)에 전송한다. 엔코더(120)는, 예를 들면, 로터리 센서(rotary sensor)일 수 있다.
보정 장치(130)는 엔코더(120)로부터 검출되는 회전자의 실제 위치(θ)와 스텝 모터(220)의 회전자가 이론적으로 이동해야 할 위치 명령(θ*)을 비교하여 위치 오차(Δθ)를 산출하고, 산출된 위치 오차(Δθ)를 이용하여 선형 보간(linear interpolation) 방법을 통해 전류 명령 데이터를 보정한다. 보정 장치(130)는 데스크톱 컴퓨터뿐만 아니라 노트북 컴퓨터, 워크스테이션, 팜톱(palmtop) 컴퓨터 등과 같이 메모리 수단을 구비하고 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 단말기로 구현될 수 있다.
그러면 마이크로 스텝(Micro Step) 제어 방식으로 구동되는 스텝 모터(220)에 대하여 좀 더 상세하게 설명한다. 여기서 스텝 모터(220)는, 예를 들어, 2상 하이브리드 스텝 모터인 것으로 하여 설명한다.
2상 하이브리드 스텝 모터(220)의 발생 토크 τe는 다음 [수학식 1]과 같이 둘 수 있다.
Figure 112007032617572-pat00004
여기서, ia는 a상 전류, ib는 b상 전류, θ는 회전자 기계각(위치), KT는 토크 상수, Nr은 회전자 치수(number of teeth)이다.
스텝 모터(220)의 a상, b상에 대한 전류 명령을 다음 [수학식 2]와 같이 정현파 형태로 선택할 수 있다.
Figure 112007032617572-pat00005
여기서, ia *는 a상 전류 명령이고, ib *는 b상 전류 명령이며, θ*는 회전자 위치명령이다.
각 상전류(ia, ib)가 스텝 모터 드라이버(210)의 전류 제어기에 의해 잘 제어된다고 가정하면 전류 명령(ia *, ib *)에 의해 스텝 모터의 각 상에 인가되는 상전류(ia, ib)는 다음 [수학식 3]과 같다.
Figure 112007032617572-pat00006
따라서 마이크로 스텝 구동 시 2상 하이브리드 스텝 모터(220)의 발생토크 τe는 [수학식 1], [수학식 2] 및 [수학식 3]에 의하면 다음 [수학식 4]와 같이 된다.
Figure 112007032617572-pat00007
따라서 발생토크 τe가 '0'이 되는 평형 위치(θeq)는 'θ* ' 또는 'θ*+π/Nr'가 된다.
그런데 θeq = θ*인 경우 다음 [수학식 5]의 관계가 성립하고,
Figure 112007032617572-pat00008
θeq *+π/Nr인 경우 다음 [수학식 6]의 관계가 성립한다.
Figure 112007032617572-pat00009
따라서, [수학식 5] 및 [수학식 6]을 참조하면, 평형 위치(θeq) 중에서 안정한 평형 위치는 θeq = θ*이 된다. 즉 스텝 모터(220)를 마이크로 스텝 구동할 때 스텝 모터(220)의 회전자 위치는 위치 명령(θ*)과 일치하도록 제어될 수 있다. 결국 스텝 모터(220)의 각 상전류(ia, ib)를 [수학식 2]와 같이 제어하면 회전자 위치(θ)를 임의의 위치 명령(θ* )과 일치하게 제어할 수 있다.
그러면 이러한 마이크로 스텝 구동에 기초하여 스텝 모터(220)를 실제로 구동하는 방법에 대하여 설명한다.
스텝 모터 드라이버(210)는 전류 명령 테이블을 메모리(도시하지 않음)에 저장하고 외부로부터 입력펄스가 입력되는 시점(k)마다 전류명령 테이블로부터 순차적으로 전류명령 데이터를 읽어와 전류 명령을 생성한다.
스텝 모터 드라이버(210)는, 예를 들면, 다음 [수학식 7]과 같이 각각 M개의 데이터로 이루어진 사인(sin), 코사인(cos) 형태의 전류 명령 데이터를 가지는 전류 명령 테이블을 메모리에 저장해 두고 외부로부터 입력 펄스가 입력되는 시점(k)마다 전류 명령 테이블로부터 순차적으로 전류 명령 데이터를 읽어와 전류 명령을 생성한다. 이 전류 명령 테이블은 스텝 모터(220)를 전기각 1주기 동안 M개의 마 이크로 스텝으로 나누어 회전시키도록 한다. 즉, M은 스텝 모터(220)의 전기각 1주기에 대응하는 마이크로 스텝 수(분해능)이다.
Figure 112007032617572-pat00010
여기서, f[k]와 g[k]는 각각 스텝 모터(220)의 a상, b상에 대한 전류 명령에 대응하는 데이터 값이다.
그러면 마이크로 스텝 구동 시 스텝 각(Step Angle: θsa)은 다음 [수학식 8]과 같이 된다.
Figure 112007032617572-pat00011
한편 위치 명령으로 N개의 펄스가 입력되는 경우 스텝 모터 드라이버(220)는 입력 펄스가 입력되는 시점(k)마다 전류 명령 테이블로부터 순차적으로 전류 명령 데이터를 읽어와 각 상에 대한 전류 명령을 다음 [수학식 9]와 같이 생성한다. 위치 명령은 스텝 모터(220)가 이동해야할 위치에 대한 명령을 의미한다.
Figure 112007032617572-pat00012
여기서 '%'는 나머지 연산자이다.
따라서 k번째 펄스가 입력되는 시점의 위치 명령(θ*[k])은 다음 [수학식 10]과 같이 되고,
Figure 112007032617572-pat00013
마지막 N번째 펄스가 입력되는 시점의 위치 명령(θ*[N])은 다음 [수학식 11]과 같이 된다.
Figure 112007032617572-pat00014
위에서 살펴본 것처럼 전류 명령(ia *[k], ib *[k])을 정확히 추종하도록 a상, b상 전류 제어를 하면 위치 명령(θ*[k])과 그에 따른 회전자의 실제 위치(θ[k])는 서로 정확히 일치되도록 제어될 수 있다.
그러면 이러한 스텝 모터(220) 및 스텝 모터 드라이버(210)에 대하여 위치 오차를 보정하는 방법에 대하여 도 2를 참고하여 상세하게 설명한다.
도 2는 본 발명의 실시예에 따른 스텝 모터 위치 오차 보정 시스템의 동작 흐름도이다.
도 2를 참고하면, 먼저 스텝 모터 드라이버(210)에 미리 준비되어 있는 전류 명령 테이블을 전달하여 저장한다(S310). 본 단계(S310)에서 전달되는 전류 명령 테이블은 아직 위치 오차(Δθ)가 고려되지 않은 보정 전의 것으로 [수학식 7]에 의해 이론적으로 구해질 수 있다.
다음으로 모션 제어기(110)는 회전자 위치 명령(θ*[k])으로 N개의 펄스를 순차적으로 스텝 모터 드라이버(210)에 입력하여(S320), 스텝 모터 드라이버(210)가 보정 장치(130)에서 전달된 전류 명령 테이블을 기초로 스텝 모터(220)를 마이크로 스텝 방식으로 구동하도록 한다(S330). 여기서 입력 펄스의 수효 N은 위치 오차(Δθ)를 충분히 추출할 수 있도록 분해능(M) 이상인 것이 바람직하며 따라서 적어도 전기각 1주기 동안 스텝 모터(220)를 구동하게 된다.
다음으로 스텝 모터(220)가 구동되는 동안 엔코더(120)는 회전자의 실제 위치(θ[k])를 검출하여 보정 장치(130)로 전달한다(S340).
그리고 보정 장치(130)는 엔코더(120)로부터 검출되는 회전자의 실제 위치(θ[k])와 스텝 모터(130)에 제공한 전류 명령 테이블에 따라 회전자가 이론적으로 이동해야 할 위치명령(θ*[k])을 비교하여 위치 오차(Δθ)를 산출한다(S350).
보정 장치(130)는 산출된 위치 오차(Δθ)를 이용하여 선형보간(linear interpolation) 방법을 통해 전류 명령 테이블을 다음 [수학식 12]와 같이 보정한다(S360). 위치 오차(Δθ) 산출에 이용되는 위치 명령(θ*[k])은 [수학식 10]에 따라 이론적으로 계산된 값을 이용할 수 있다.
Figure 112007032617572-pat00015
마지막으로 보정 장치(130)는 스텝 모터 드라이버(210)의 메모리에 저장되어 있던 전류 명령 테이블을 [수학식 12]에 따른 보정된 전류 명령 테이블로 갱신한다(S370).
이와 같이 보정된 전류 명령 테이블이 구비된 스텝 모터 드라이버(210)는 스텝 모터(220)를 위치 오차 없이 구동할 수 있게 된다.
이에 대하여 좀 더 상세하게 설명한다. 2상 하이브리드 스텝 모터(220)의 발생 토크 τe가 [수학식 1]과 같이 이상적인 정현파 형태를 가진다면, [수학식 2]와 같은 전류 명령을 사용할 경우 실제 회전자 위치 θ(k)는 명령 위치 θ*(k)와 오차 없이 정확히 일치되도록 제어되지만, 실제 대부분의 2상 하이브리드 스텝 모터(220)의 경우 발생 토크 τe는 [수학식 1]과 같이 이상적인 정현파 형태가 아니라 약간의 고조파(harmonics) 성분을 포함하고 있다. 따라서 보다 실제적인 2상 하이브리드 스텝 모터(220)의 발생 토크 τe는 다음 [수학식 13]을 따른다.
Figure 112007032617572-pat00016
여기서 T(Nrθ)는 2π 주기 함수이며, 다음 [수학식 14]와 같이 기본 주파수 성분 sin(Nrθ)와 고조파 성분 H(Nrθ)의 합으로 표시된다.
Figure 112007032617572-pat00017
스텝 모터의 a상, b상의 전류 명령을 [수학식 2]와 같이 정현파 형태로 선택하고 전류 제어가 잘된다고 가정하면 [수학식 2], [수학식 3], [수학식 13] 및 [수학식 14]에 의한 발생토크 τe는 다음 [수학식 15]와 같이 계산된다.
Figure 112007032617572-pat00018
여기서,
Figure 112007032617572-pat00019
이다.
[수학식 15]로부터 알 수 있듯이 G(Nrθ,Nrθ*) 항 때문에 발생 토크가 0이 되는 평형 위치(θeq)가 θ*가 아니기 때문에 회전자의 실제 위치 (θ[k])와 위치 명령(θ*[k]) 사이에 위치 오차(Δθ)가 발생하게 된다.
그러나 본 발명의 실시예에서와 같이 위치 오차(Δθ)를 고려하여 보정된 전류 명령 테이블이 구비된 스텝 모터 드라이버(210)와 스텝 모터(220)에 의하면 발 생 토크에 포함된 고조파 성분에 의하여 발생하는 위치 오차(Δθ) 없이 구동할 수 있게 된다.
따라서 본 발명의 실시예에 따라 보정된 전류 명령 테이블을 구비한 스텝 모터 드라이버(210) 및 스텝 모터(220)에 의하면 별도의 센서 없이 스텝 모터(220)를 고정도로 위치 제어할 수 있다.
본 발명의 실시예는 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터로 읽을 수 있는 매체를 포함한다. 이 매체는 앞서 설명한 스텝 모터 위치 오차 보정 방법을 실행시키기 위한 프로그램을 기록한다. 이 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 이러한 매체의 예에는 하드디스크, 플로피디스크 및 자기 테이프와 같은 자기 매체, CD 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 자기-광 매체, 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 구성된 하드웨어 장치 등이 있다. 또는 이러한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상에서 본 발명의 바람직한 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
이와 같이, 본 발명에 의하면 스텝 모터를 마이크로 스텝 방식으로 구동할 때 발생하는 위치 오차를 없앨 수 있다. 또한 별도의 센서 없이 스텝 모터를 고정도로 위치 제어할 수 있다.

Claims (11)

  1. 모션 제어기가 스텝 모터 드라이버에 회전자 위치 명령으로 적어도 전기각 1주기에 대응하는 수효의 위치 오차 보정용 펄스를 순차적으로 입력하는 단계,
    상기 회전자 위치 명령을 입력받은 스텝 모터 드라이버가 소정의 전류 명령 테이블을 기초로 스텝 모터를 적어도 전기각 1주기 동안 마이크로 스텝 방식으로 구동하는 단계,
    상기 스텝 모터 구동 단계에서 상기 스텝 모터 회전자의 실제 위치를 검출하는 단계,
    상기 회전자 위치 명령과 상기 검출 단계에서 검출된 회전자의 실제 위치를 비교하여 위치 오차를 산출하는 단계, 그리고
    상기 산출된 위치 오차에 기초하여 상기 소정의 전류 명령 테이블을 보정하는 단계
    를 포함하는 스텝 모터 위치 오차 보정 방법.
  2. 제1항에서,
    상기 전류 명령 테이블의 보정은 선형 보간(linear interpolation) 방법을 이용하는 스텝 모터 위치 오차 보정 방법.
  3. 제1항에서,
    상기 보정된 전류 명령 테이블은 다음 수학식
    Figure 112007032617572-pat00020
    (여기서,
    Figure 112007032617572-pat00021
    ,
    Figure 112007032617572-pat00022
    는 상기 보정된 전류 명령 테이블을 이루는 전류 명령 데이터, f[k], g[k]는 보정 전의 전류 명령 테이블을 이루는 전류 명령 데이터, θ[k]는 상기 회전자의 실제 위치, △θ[k]는 상기 산출된 위치 오차, M은 상기 스텝 모터의 전기각 1주기에 대응하는 마이크로 스텝 수)
    에 의해 구해지는 스텝 모터 위치 오차 보정 방법.
  4. 컴퓨터에 제1항 내지 제3항 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체.
  5. 회전자 위치 명령으로 적어도 전기각 1주기에 대응하는 수효의 위치 오차 보정용 펄스를 순차적으로 스텝 모터 드라이버에 입력하는 모션 제어기,
    상기 모션 제어기에 의해 입력된 펄스에 따라 상기 스텝 모터 드라이버가 소정의 전류 명령 테이블을 기초로 스텝 모터를 적어도 전기각 1주기 동안 마이크로 스텝 방식으로 구동하는 동안 상기 스텝 모터 회전자의 실제 위치를 검출하는 엔코더, 그리고
    상기 검출되는 회전자의 실제 위치와 상기 소정의 전류 명령 테이블에 따라 상기 스텝 모터 회전자가 이동해야 할 위치 명령을 비교하여 위치 오차를 산출하고, 상기 산출된 위치 오차를 이용하여 상기 소정의 전류 명령 테이블을 보정하는 보정 장치
    를 포함하는 스텝 모터 위치 오차 보정 시스템.
  6. 제5항에서,
    상기 회전자 위치 명령을 상기 스텝 모터 드라이버에 입력하는 모션 제어기를 더 포함하는 스텝 모터 위치 오차 보정 시스템.
  7. 제5항에서,
    상기 전류 명령 테이블의 보정은 선형 보간(linear interpolation) 방법을 이용하는 스텝 모터 위치 오차 보정 시스템.
  8. 제5항에서,
    상기 보정된 전류 명령 테이블은 다음 수학식
    Figure 112007032617572-pat00023
    (여기서,
    Figure 112007032617572-pat00024
    ,
    Figure 112007032617572-pat00025
    는 상기 보정된 전류 명령 테이블을 이루는 전류 명령 데이터, f[k], g[k]는 보정 전의 전류 명령 테이블을 이루는 전류 명령 데이터, θ[k]는 상기 회전자의 실제 위치, △θ[k]는 상기 산출된 위치 오차, M은 상기 스텝 모터의 전기각 1주기에 대응하는 마이크로 스텝 수)
    에 의해 구해지는 스텝 모터 위치 오차 보정 시스템.
  9. 스텝 모터, 그리고
    제1 전류 명령 테이블을 저장하고, 외부로부터 회전자 위치 명령으로 입력 펄스가 입력될 때마다 상기 제1 전류 명령 테이블을 기초로 상기 스텝 모터를 마이크로 스텝 방식으로 구동하는 스텝 모터 드라이버를 포함하며,
    상기 제1 전류 명령 테이블은,
    상기 회전자 위치 명령으로 적어도 전기각 1주기에 대응하는 수효의 위치 오차 보정용 펄스를 모션 제어기로부터 순차적으로 입력받은 상기 스텝 모터 드라이버가 제2 전류 명령 테이블을 기초로 상기 스텝 모터를 적어도 전기각 1주기 동안 마이크로 스텝 방식으로 구동하면서 상기 스텝 모터 회전자의 실제 위치와 상기 회전자 위치 명령을 비교하여 산출된 위치 오차를 이용하여 상기 제2 전류 명령 테이블을 보정해서 구해지는 스텝 모터 시스템.
  10. 제9항에서,
    상기 제1 전류 명령 테이블은 상기 제2 전류 명령 테이블을 선형 보간(linear interpolation)하여 산출되는 스텝 모터 시스템.
  11. 제9항에서,
    상기 제1 전류 명령 테이블은 다음 수학식
    Figure 112007032617572-pat00026
    (여기서,
    Figure 112007032617572-pat00027
    ,
    Figure 112007032617572-pat00028
    는 상기 제1 전류 명령 테이블을 이루는 전류 명령 데이터, f[k], g[k]는 상기 제2 전류 명령 테이블을 이루는 전류 명령 데이터, θ[k]는 상기 회전자의 실제 위치, △θ[k]는 상기 산출된 위치 오차, M은 상기 스텝 모터의 전기각 1주기에 대응하는 마이크로 스텝 수)
    에 의해 구해지는 스텝 모터 시스템.
KR1020070042168A 2007-04-30 2007-04-30 스텝 모터 위치 오차 보정 방법 및 시스템 KR100889961B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070042168A KR100889961B1 (ko) 2007-04-30 2007-04-30 스텝 모터 위치 오차 보정 방법 및 시스템
US11/823,398 US7688019B2 (en) 2007-04-30 2007-06-27 Method and system for compensating for position error of step motor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070042168A KR100889961B1 (ko) 2007-04-30 2007-04-30 스텝 모터 위치 오차 보정 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20080097060A KR20080097060A (ko) 2008-11-04
KR100889961B1 true KR100889961B1 (ko) 2009-03-24

Family

ID=39886130

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070042168A KR100889961B1 (ko) 2007-04-30 2007-04-30 스텝 모터 위치 오차 보정 방법 및 시스템

Country Status (2)

Country Link
US (1) US7688019B2 (ko)
KR (1) KR100889961B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101361551B1 (ko) * 2012-05-16 2014-02-24 (주)아이파워컨 레졸버 위상 오차 보정 장치 및 방법

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009011087A (ja) * 2007-06-28 2009-01-15 Murata Mach Ltd ステッピングモータのマイクロステップ制御方法および電動装置
US7705555B2 (en) * 2007-12-18 2010-04-27 Freescale Semiconductor, Inc. Method and controller for detecting a stall condition in a stepping motor during micro-stepping
US20090184834A1 (en) * 2008-01-22 2009-07-23 United Microelectronics Corp. System and method for monitoring step motor
US8154142B2 (en) * 2009-07-30 2012-04-10 General Electric Company Communicating energy storages with different functions
JP5942741B2 (ja) * 2012-09-26 2016-06-29 ブラザー工業株式会社 数値制御装置と回転テーブル位置調整方法
CN103399582B (zh) * 2013-07-25 2016-11-16 浙江宇视科技有限公司 一种球机失步检测方法和装置
CN104698927B (zh) * 2015-02-10 2017-10-17 西安诺瓦电子科技有限公司 基于增量式旋转编码器的旋钮调值方法及相关装置
CN104716879B (zh) * 2015-02-27 2017-03-15 深圳市雷赛软件技术有限公司 一种步进电机的电流控制方法及装置
KR101986736B1 (ko) * 2017-11-29 2019-09-30 한국생산기술연구원 스텝 모터의 회전자의 초기 정렬 장치 및 이의 정렬 방법
CN109197047B (zh) * 2018-08-02 2020-10-23 山东省计算中心(国家超级计算济南中心) 一种适用于小区育种播种机的编码器自动控制方法
CN110954852B (zh) * 2018-09-27 2022-05-17 迈来芯电子科技有限公司 传感器设备、系统以及相关方法
KR102565900B1 (ko) * 2019-01-30 2023-08-09 한화비전 주식회사 영역 줌 기능을 제공하는 촬상장치 및 그 방법
CN112994544A (zh) * 2019-12-16 2021-06-18 北京大豪科技股份有限公司 电机的控制方法、装置、存储介质及电子设备
JP7447684B2 (ja) * 2020-06-04 2024-03-12 コニカミノルタ株式会社 超音波診断装置、及び超音波プローブ
CN112762623A (zh) * 2020-12-31 2021-05-07 芜湖美的厨卫电器制造有限公司 用于步进电机的方法、装置、恒温阀及热水器
EP4068017A1 (en) * 2021-03-31 2022-10-05 Hiwin Mikrosystem Corp. Dynamic displacement inaccuracy compensation system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990041780A (ko) * 1997-11-24 1999-06-15 유무성 스텝핑 모터의 위치 제어 장치
JPH11252994A (ja) * 1998-02-27 1999-09-17 Dia Dick Systems:Kk ステッピングモータの制御装置および制御方法
JP2003339193A (ja) 2002-03-15 2003-11-28 Japan Servo Co Ltd ステッピングモータの駆動装置
KR20050042703A (ko) * 2003-11-04 2005-05-10 삼성전자주식회사 스텝 모터의 탈조 방지 방법 및 시스템

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5890205A (ja) * 1981-11-25 1983-05-28 Fanuc Ltd 位置制御方式
JPH01148100A (ja) * 1987-12-01 1989-06-09 Matsushita Electric Ind Co Ltd 位置制御装置
US5187417A (en) * 1990-08-06 1993-02-16 Cincinnati Milacron Inc. Motor control apparatus and method
JP3242223B2 (ja) * 1993-08-02 2001-12-25 オークマ株式会社 電動機の制御装置
US5844394A (en) * 1996-09-20 1998-12-01 Matsushita Electric Industrial Co., Ltd. Stepping motor controller
JPH11215894A (ja) * 1998-01-23 1999-08-06 Matsushita Electric Ind Co Ltd ステッピングモータの制御装置
US6195220B1 (en) * 1998-05-21 2001-02-27 Seagate Technology Llc Method and apparatus utilizing field ratioing demodulation techniques for a null-type servo pattern
JP4465117B2 (ja) * 1998-11-12 2010-05-19 パナソニック株式会社 ステッピングモータの制御装置
JP4502734B2 (ja) * 2004-07-15 2010-07-14 三菱電機株式会社 電動機の回転位置検出装置の原点オフセット量算出方法およびこの算出方法を用いた電動機制御装置
JP4769141B2 (ja) * 2006-08-03 2011-09-07 東芝ストレージデバイス株式会社 ヘッド位置制御方法、ヘッド位置制御装置およびディスク装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990041780A (ko) * 1997-11-24 1999-06-15 유무성 스텝핑 모터의 위치 제어 장치
JPH11252994A (ja) * 1998-02-27 1999-09-17 Dia Dick Systems:Kk ステッピングモータの制御装置および制御方法
JP2003339193A (ja) 2002-03-15 2003-11-28 Japan Servo Co Ltd ステッピングモータの駆動装置
KR20050042703A (ko) * 2003-11-04 2005-05-10 삼성전자주식회사 스텝 모터의 탈조 방지 방법 및 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101361551B1 (ko) * 2012-05-16 2014-02-24 (주)아이파워컨 레졸버 위상 오차 보정 장치 및 방법

Also Published As

Publication number Publication date
KR20080097060A (ko) 2008-11-04
US20080265824A1 (en) 2008-10-30
US7688019B2 (en) 2010-03-30

Similar Documents

Publication Publication Date Title
KR100889961B1 (ko) 스텝 모터 위치 오차 보정 방법 및 시스템
CN106679710B (zh) 一种磁编码器校准方法及系统
JP2020018168A (ja) モータモジュールおよびモータ認証方法
CN110224652A (zh) 基于增量式编码器校正转子磁极位置方法、系统及介质
US7733051B2 (en) Model-based active electronic damping for stepper motors
US7859209B2 (en) Control device for synchronous motor
JP2008148467A (ja) 同期電動機の制御装置
KR20070094488A (ko) 스테핑 모터의 제어장치
JP5321449B2 (ja) モータ制御装置
JP4488749B2 (ja) ステッピングモータのマイクロステップ駆動装置およびその制御方法ならびにその運転方法
JPH10229691A (ja) モータの速度制御装置
US7006321B2 (en) Data storage apparatus, rotation control apparatus, and rotation control method
KR20130128061A (ko) 레졸버 위상 오차 보정 장치 및 방법
JP6737999B2 (ja) 電圧指令値を出力する制御装置
JP6844617B2 (ja) モータモジュール、モータステップ動作制御システム、およびモータ制御装置
US9998042B2 (en) Torque disturbance cancellation for a motor
JPWO2012046693A1 (ja) ステッピングモータのマイクロステップ駆動制御装置
JP2004274855A (ja) ローター位置検出調整方法及びローター位置検出調整装置
JP2004336949A (ja) モータ駆動制御方法及びモータ駆動制御装置
CN115811260A (zh) 一种电机的旋变零点辨识方法、装置及计算机存储介质
JP2001336951A (ja) 回転位置検出装置及び方法
JP3949134B2 (ja) ステッピングモータの制御装置
JP2018046697A (ja) モータ駆動装置およびモータシステム
Moon et al. Missing step detection in a high speed micro stepping motor using current feedback
JP2660006B2 (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: 20130315

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140515

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee