KR100734345B1 - Control system for motor - Google Patents
Control system for motor Download PDFInfo
- Publication number
- KR100734345B1 KR100734345B1 KR1020060025298A KR20060025298A KR100734345B1 KR 100734345 B1 KR100734345 B1 KR 100734345B1 KR 1020060025298 A KR1020060025298 A KR 1020060025298A KR 20060025298 A KR20060025298 A KR 20060025298A KR 100734345 B1 KR100734345 B1 KR 100734345B1
- Authority
- KR
- South Korea
- Prior art keywords
- motor
- data
- motor control
- control
- motors
- Prior art date
Links
Images
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
- H02P5/00—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
- H02P5/74—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors controlling two or more ac dynamo-electric motors
-
- 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
- H02P27/00—Arrangements or methods for the control of AC motors characterised by the kind of supply voltage
- H02P27/04—Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage
- H02P27/06—Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage using dc to ac converters or inverters
- H02P27/08—Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage using dc to ac converters or inverters with pulse width modulation
-
- 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
- H02P29/00—Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
- H02P29/02—Providing protection against overload without automatic interruption of supply
- H02P29/024—Detecting a fault condition, e.g. short circuit, locked rotor, open circuit or loss of load
- H02P29/028—Detecting a fault condition, e.g. short circuit, locked rotor, open circuit or loss of load the motor continuing operation despite the fault condition, e.g. eliminating, compensating for or remedying the fault
-
- 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
- H02P29/00—Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
- H02P29/02—Providing protection against overload without automatic interruption of supply
- H02P29/032—Preventing damage to the motor, e.g. setting individual current limits for different drive conditions
-
- 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
- H02P29/00—Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
- H02P29/60—Controlling or determining the temperature of the motor or of the drive
-
- 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
- H02P5/00—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
- H02P5/46—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors for speed regulation of two or more dynamo-electric motors in relation to one another
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Control Of Multiple Motors (AREA)
Abstract
Description
도 1은 일반적인 AC 모터 제어시스템을 설명하기 위한 회로블록도이다.1 is a circuit block diagram for explaining a general AC motor control system.
도 2는 종래의 복수의 모터를 제어하는 모터 제어 시스템의 블록도이다.2 is a block diagram of a motor control system for controlling a plurality of conventional motors.
도 3은 또 다른 종래의 복수의 모터를 제어하는 모터 제어 시스템의 블록도이다.3 is a block diagram of another conventional motor control system for controlling a plurality of motors.
도 4는 본 발명의 일실시예의 전체적인 구성을 나타내는 블록도이다.4 is a block diagram showing the overall configuration of an embodiment of the present invention.
도 5는 도 4의 모터 제어의 상세도이다.5 is a detailed view of the motor control of FIG. 4.
도 6은 본 발명의 일실시예에의 모터 드라이브의 구성을 나타내는 블록도이다.6 is a block diagram showing a configuration of a motor drive according to an embodiment of the present invention.
도 7은 본 발명의 일실시예의 모터 제어 동작을 설명하는 다이어그램이다.7 is a diagram illustrating a motor control operation of an embodiment of the present invention.
도 8은 본 발명의 일실시예의 모터 드라이버의 동작을 설명하는 다이어그램이다.8 is a diagram for explaining the operation of the motor driver of one embodiment of the present invention.
본 발명은 모터를 제어하는 모터 제어 시스템에 관한 것으로, 더욱 상세하게는 소프트웨어로 구성된 모터 제어기를 구비한 메인 프로세서와 모터에 구비되는 드라이버 간에 데이터 송수신에 의하여 모터들이 제어되는 모터 제어시스템에 관한 것이다.The present invention relates to a motor control system for controlling a motor. More particularly, the present invention relates to a motor control system in which motors are controlled by data transmission and reception between a main processor having a motor controller configured with software and a driver included in the motor.
하나의 모터를 제어하기 위해서는 개별적인 모터 제어기가 설치된다.In order to control one motor, an individual motor controller is installed.
도 1은 일반적인 AC 모터 제어시스템을 설명하기 위한 회로블록도이다.1 is a circuit block diagram for explaining a general AC motor control system.
콘버터(1)는 입력되는 교류전원을 직류전원으로 변화하여 모터 제어 모듈(4)에 의하여 스위칭 소자들이 제어되어 소정의 교류전원으로 변환하는 PWM 인버터(3)에 의하여 구동된다. 콘버터(1)와 인버터(3) 사이에는 인버터(3)의 스위칭 소자를 보호하기 위한 스너버 회로(2)가 설치되어 있고, 인버터(3)와 모터(5) 사이에는 각상의 전류를 감지하는 전류감지부가 설치되어 있어 감지된 전류를 모터 제어 모듈(4)에 피드백(feedback) 시키고, 모터(5)에는 엔코더(6)가 설치되어 있어 모터(5)의 회전자의 위치 및 속도를 모터 제어 모듈(4)에 피드백 시킨다.The
모터 제어 모듈(4)은 피드백 되는 전류, 속도, 위치를 기초로 위치 제어기(Position Controller), 속도 제어기(Velocity Controller), 전류 제어기(Current Controller)에 의하여 생성된 신호에 의하여 PWM 제어기에서 PWM 제어신호가 생성되고, PWM 제어신호는 인버터(3)의 스위칭 소자의 게이트에 공급됨으로써 제어가 이루어진다.The
이러한 구성에서 모터 제어 모듈(4)은 통상적으로 마이콤으로 이루어지고 있다.In this configuration, the
도 2는 종래의 복수의 모터를 제어하는 모터 제어 시스템의 블록도이다.2 is a block diagram of a motor control system for controlling a plurality of conventional motors.
복수의 모터(1), (2)…(n)를 제어하기 위해서는 상위 레벨에 메인 프로세서 (MP1)와 메인 프로세서(MP1) 내부에 모터 컨트롤러(MC1)가 있고 컨트롤러(MC1)과 하위 레벨에 모터(1), (2)…(n)를 구동시키는 콘버터와 인버터가 내장되는 각각의 모터 드라이버(1'), (2')…(n')는 통신에 의하여 연결되도록 하고 있다. A plurality of motors (1), (2). In order to control (n), there is a motor controller MC1 inside the main processor MP1 and the main processor MP1 at the upper level, and the
모터 컨트롤러((MC1)와 모터 드라이버(1'), (2), …(n') 간의 통신은 직접적인 1:1 통신 방식이나 1:n의 다중점 통신 방식을 사용했는데, 이와 같은 방법은 사용하는 모터의 수가 많으면 많을수록 모터 컨트롤러와 모터 드라이버 사이를 연결하는 배선이 현저하게 늘어나는 문제와 더불어 메인프로세서에서 직접 모터를 제어하기 때문에 이에 대한 과부하문제도 발생하게 되었다.The communication between the motor controller (MC1) and the motor driver (1 '), (2), ... (n') used a direct 1: 1 communication method or a 1: n multi-point communication method. As the number of motors increases, the wiring between the motor controller and the motor driver increases significantly, and the overload problem occurs because the motor is directly controlled by the main processor.
도 3은 또 다른 종래의 복수의 모터를 제어하는 모터 제어 시스템의 블록도이다.3 is a block diagram of another conventional motor control system for controlling a plurality of motors.
도 3에 도시된 시스템은 도 2의 시스템의 문제점들을 보완하는 시스템으로, 복수의 모터(1), (2)…(n)에는 각각의 모터 드라이버(1'), (2), …(n')와 모터 컨트롤러(MC1'), (MC2')…(MCn')가 장착되어 있으며, 모터 컨트롤러는 메인 프로세서(MP)와 네트워크 통신방식을 사용한다. The system shown in FIG. 3 is a system that complements the problems of the system of FIG. 2, and includes a plurality of motors (1), (2). (n) includes the respective motor drivers 1 ', (2),... (n '), motor controllers MC1', (MC2 ')... (MCn ') is installed and the motor controller uses the main processor (MP) and network communication method.
사용하는 통신 방식은 Master/Slave구조와 같은 통신을 하는데, 상위 레벨의 메인 프로세서(MP)를 마스터로 하위레벨의 디바이스를 슬레이브로 정의하고 마스터와 슬레이브간의 통신은 다음 그림과 같이 2개의 통신 연결선을 이용하여 통신한다. 하나의 마스터에 여러 개의 슬레이브는 단지 2개선을 이용한 통신연결을 통해 원활한 통신이 가능하기 때문에 기존의 모터제어 시 문제였던 배선 수를 줄이게 된다.The communication method used is the same as the Master / Slave structure.The upper level main processor (MP) is used as the master, and the lower level device is defined as the slave, and the communication between the master and the slave uses two communication connection lines as shown in the following figure. Communicate using Since multiple slaves in one master can communicate smoothly using only two wires, the number of wires that have been a problem in conventional motor control is reduced.
또한 상위 메인 프로세서(MP)는 직접적으로 모터를 제어하지 않고 모터 제어 데이터를 전송하기위한 통신 인터페이스만을 하기 때문에 시스템의 상위 어플리케이션 제어에 집중할 수가 있다는 장점이 있다.In addition, since the upper main processor MP does not control the motor directly, only the communication interface for transmitting the motor control data has an advantage of focusing on the upper application control of the system.
그러나, 이러한 모터 제어시스템에는 다수의 고기능의 마이컴으로 이루어진 모터 컨트롤러(MC1), (MC2), …, (MCn)가 개별 모터들에 각각 장착되어야 하기 때문에 시스템 구축비용이 많이 들어가게 되고, 모터 제어시스템을 하나의 모듈로 구현하고자 할 때 모터 컨트롤의 자체 사이즈가 크기 때문에 모듈화 구현의 어려움이 있다.However, such a motor control system includes motor controllers MC1, MC2,... Since the system (MCn) must be mounted on each of the individual motors, the system construction cost is high, and when the motor control system is implemented as a module, the motor control has a large size, which makes it difficult to implement the module.
또한, 각각의 제어기가 개별적으로 동작되기 때문에 각각의 모터를 동기화시키는 데에 문제가 있었다.In addition, there was a problem in synchronizing each motor because each controller is operated individually.
또한, 이러한 시스템에서 모터수가 확장되거나 모터의 제어가 변환되어 시스템을 변경하여야 하는 경우, 시스템이 하드웨어적으로 구현되어 있어 변경이 곤란한 문제점이 있었다.In addition, in such a system, when the number of motors is expanded or the control of the motor is changed to change the system, the system is implemented in hardware, which makes it difficult to change the system.
또한, 모터 컨트롤러가 마이컴에 의하여 이루어지기 때문에 기본적인 PID 제어에서부터 고기능의 모터 제어, 예를 들어 퍼지 PID 제어, 선형 PID 제어, 퍼지-뉴로를 이용한 제어, 유전 알고리즘을 이용한 제어, 예측 모터 제어 등을 수행하기가 어렵다.In addition, since the motor controller is made by the microcomputer, it performs basic PID control to high-performance motor control such as fuzzy PID control, linear PID control, fuzzy-neuro control, genetic algorithm control, predictive motor control, and the like. Difficult to do
본 발명은 이러한 문제점들을 해결하기 위한 것으로, 본 발명의 목적은 메인 프로세서에 복수의 모터를 제어하는 소프트웨어로 구성된 모터 제어기를 구비하고, 모터 제어기와 각각의 제어대상의 모터들에 고속 통신망에 의하여 데이터를 송수신하도록 함으로써 시스템 구성이 저렴하고, 확장 및 변경이 용이한 모터 제어 시스템을 제공하기 위한 것이다.SUMMARY OF THE INVENTION The present invention has been made to solve these problems, and an object of the present invention is to include a motor controller composed of software for controlling a plurality of motors in a main processor, and to the motor controller and each of the motors to be controlled by a high speed communication network. It is to provide a motor control system inexpensive, easy to expand and change the system configuration by transmitting and receiving.
또한, 본 발명의 다른 목적은 복수의 모터를 제어함에 있어서 고기능의 모터제어가 이루어지도록 하는 모터 제어 시스템을 제공하기 위한 것이다. In addition, another object of the present invention is to provide a motor control system for high-performance motor control in controlling a plurality of motors.
상기 목적들에 따르는 본 발명은 적어도 하나 이상의 모터들을 제어하는 모터 제어 시스템에 있어서: 상기 적어도 하나 이상의 모터들을 구동시키기 위해서 상기 모터들에 각각 설치되는 모터 드라이버들; 상기 모터들을 제어하는 모터 제어 데이터를 생성하는 모터 제어기와, 상기 모터 제어 데이터를 통신망을 통하여 상기 모터 드라이버들에 전송하고, 상기 모터 드라이버들로부터 수신되는 피드백 데이터를 상기 통신망을 통하여 수신하여 상기 모터 제어기로 공급하는 통신인터페이스를 구비하는 메인 프로세스를 포함하는 것을 특징으로 한다.According to the above objects, there is provided a motor control system for controlling at least one or more motors, the motor control system comprising: motor drivers respectively installed on the motors to drive the at least one motors; A motor controller for generating motor control data for controlling the motors; and transmitting the motor control data to the motor drivers through a communication network, and receiving feedback data received from the motor drivers through the communication network. It characterized in that it comprises a main process having a communication interface for supplying to.
또한, 본 발명에서 상기 모터 제어기는 모터의 제어데이터를 생성하는 모터 제어 객체와 각 모터의 스케쥴을 관리하는 스케쥴러 객체를 포함하는 것이 바람직하다.In the present invention, the motor controller preferably includes a motor control object for generating control data of the motor and a scheduler object for managing the schedule of each motor.
또한, 본 발명에서 상기 모터와 상기 모터 드라이버에서 검출한 각종 센서 신호 데이터를 상기 메인 프로세서로 전송하여 모터 제어시스템의 진단(Diagnostic), 안전(Safety), 예지(Prognostic) 기능을 포함하는 것이 바람직하다. In the present invention, it is preferable to include the diagnostic, safety, and prognostic functions of the motor control system by transmitting various sensor signal data detected by the motor and the motor driver to the main processor. .
또한, 본 발명에서 상기 메인 프로세스는 동기화에 필요한 시간을 제어하는 타이머, 모터 구동시의 에러와 동기화 에러가 발생했을 때 이를 담당하는 익셉션 핸들러 객체, 상기 모터간의 동기화를 위한 싱크 매니져 객체를 더 포함하는 것이 바람직하다.In addition, the main process in the present invention further includes a timer for controlling the time required for synchronization, an exception handler object that is responsible for when errors and synchronization errors occur when the motor drive, synchronization manager object for synchronization between the motors; It is preferable.
또한, 본 발명에서 상기 모터 드라이버는 상기 모터 제어기와 데이터를 송수신하기 위한 통신 모듈과 상기 통신 모듈로부터 수신되는 데이터에 의하여 상기 모터를 구동시키고, 상기 모터의 동작에 의하여 피드백 신호를 생성하는 모터 드라이버 모듈을 포함하는 것이 바람직하다.In addition, in the present invention, the motor driver is a communication module for transmitting and receiving data with the motor controller and the motor driver module for driving the motor by the data received from the communication module, and generates a feedback signal by the operation of the motor It is preferable to include.
또한, 본 발명에서 상기 통신 모듈은 상기 메인 프로세서와의 통신에서 사용하는 물리 계층(Physical Layer)과 데이터 링크 계층(Data Link Layer) 및 어플리케이션 계층(Application Layer Interface)을 포함하며, 상기 어플리케이션 계층은 상기 메인 프로세서의 모터 제어 데이터를 상기 모터 드라이버 모듈에 전송하고, 상기 피드백 데이터를 수신하며, 상기 메인 프로세서에 전송하여 모터의 위치, 속도, 토크를 제어 뿐 만 아니라 진단, 예지, 안전기능을 할 수 있게 하는 것이 바람직하다.In addition, in the present invention, the communication module includes a physical layer, a data link layer, and an application layer interface used in communication with the main processor. The motor control data of the main processor is transmitted to the motor driver module, the feedback data is received, and the main processor is not only used to control the position, speed, and torque of the motor, but also to perform diagnosis, prediction, and safety functions. It is desirable to.
또한, 상기 모터 드라이버 모듈은 교류전압을 직류 전압으로 변환하는 콘버터와, 입력되는 상기 모터 제어 데이터에 의하여 PWM(Pulse width Modulation) 신호를 생성하는 모터 드라이브 프로세스와, 상기 모터 드라이브 프로세서에 의하여 스위칭 소자를 사용하여 교류전압을 생성하는 PWM 인버터와, 상기 모터의 엔코더 값을 계수하는 엔코더 펄스 카운터(Encoding Pulse Counter)와, 상기 모터에 인가되는 전압으로부터 전류 값을 측정하는 전류센서를 포함하고, 상기 엔코더 펄스 카운터와 상기 전류센서로부터 생성된 데이터를 상기 피드백 데이터로 상기 통신모듈에 전송하는 것이 바람직하다.The motor driver module may include a converter for converting an AC voltage into a DC voltage, a motor drive process for generating a pulse width modulation (PWM) signal based on the input motor control data, and a switching device by the motor drive processor. A PWM inverter for generating an alternating current voltage, an encoder pulse counter for counting an encoder value of the motor, a current sensor for measuring a current value from a voltage applied to the motor, and the encoder pulse. Preferably, the data generated from the counter and the current sensor is transmitted to the communication module as the feedback data.
이하, 첨부된 도면에 따라서 본 발명의 일실시예를 상세히 설명하기로 한다.Hereinafter, an embodiment of the present invention according to the accompanying drawings will be described in detail.
도 4는 본 발명의 일실시예의 전체적인 구성을 나타내는 블록도이고, 도 5는 도 4의 모터 제어의 상세도이다.4 is a block diagram showing the overall configuration of an embodiment of the present invention, Figure 5 is a detailed view of the motor control of FIG.
도 4의 실시 예는 모터(1), (2), …,(n)에는 모터를 구동시키는 모터 드라이버(10), (20)…(n0)가 설치되고, 메인 프로세서에는 소프트웨어로 구성된 모터 제어기(100)가 설치되어 모터들을 제어하는 제어 데이터를 생성하며, 모터 드라이버와 고속 통신망으로 연결되어 데이터를 송수신 한다. 이때, 모터 제어기(100)는 종래 기술인 도 3에 도시된 하위 레벨의 모터 컨트롤러의 기능을 소프트웨어로 구성하였기 때문에 모터 쪽의 하위레벨의 크기를 줄일 수 있으며, 모터 드라이버에서 과전류, 과전압, 온도, 기계적 오차 등을 검출하여 통신모듈을 통하여 전송 받음으로써 모터 시스템의 진단, 예지, 안전기능을 할 수 있다.4 shows the
모터 제어기(100)의 전체적인 구조는 도 5에 도시되며, 하위 레벨의 모터 드라이버(10), (20), …, (n0)와 연결되어 모터를 제어하는 중추적인 역할을 한다.The overall structure of the
모터 제어기(100)는 응용 프로그램인 애플리케이션 프로세스(Application Process:101)와, 연결된 각 모듈들을 제어하며, 입력된 모터 제어명령과 모터 드라 이버들로부터 피드백 된 데이터에 의하여 모터 제어 데이터를 생성하며, 여러 개의 모터를 제어할 경우 각 모터의 스케줄 관리를 담당하는 모터 컨트롤러(102)와, 모터 제어기(102)와 연결되어 모터들의 동기화에 필요한 시간을 제어하는 타이머(103), 모터 구동시의 에러와 동기화 에러가 발생했을 때 이를 담당하는 익셉션 핸들러(exception handler:104), 모터간의 동기화를 위한 싱크 매니져(sync manager:105), 하위 레벨의 모터 드라이버(10), (20), …, (n0)와의 통신을 담당하는 통신 인터페이스(communication interface: 106)로 이루어진다.The
애플리케이션 프로세스(101)의 프로그램에서 모터를 제어할 필요가 있을 경우 모터제어기(102)에 제어를 넘기고 다른 프로그램 테스크(Task)를 수행을 한다. When it is necessary to control the motor in the program of the
이때, 모터 제어기(100)는 컴퓨터에서 운용되는 프로그램이기 때문에 마이컴에서 원활하게 동작되지 못하는 선형 PID제어, 퍼지-뉴로를 이용한 모터 제어, 유전 알고리즘을 이용한 모터 제어, 예측 제어, 최적화 제어의 고급 제어기능이 구현될 수 있다.At this time, since the
도 6은 본 발명의 일실시예에의 모터 드라이브의 구성을 나타내는 블록도이다.6 is a block diagram showing a configuration of a motor drive according to an embodiment of the present invention.
하위레벨로서 모터(1), (2), …,(n)에 각각 설치된 모터 드라이버(10), (20)…(n0)는 각각 통신모듈(Communication Interface Module: 200)과, 모터 드라이버 모듈(Motor driver Module: 300)로 구성된다.
통신모듈(200)은 메인 프로세서(100)와의 통신에서 사용하는 물리층(Physical Layer:201)과 데이터 링크층(Data Linj Layer:202) 및 어플리케이션층 (Application Layer Interface:203)으로 구성되며, 어플리케이션층(203)의 경우 모터 모터 제어기(100)의 모터 제어 데이터를 모터 드라이버 모듈(300)에 전송하고, 피드백 데이터를 수신하는 인터페이스 역할을 한다.The
커뮤니케이션 모듈(200)은 모터 제어기(100)와의 통신으로 모터 제어 데이터를 수신하여 모터를 구동하고 모터의 전류값, 엔코더 값을 메인 프로세서(100)에 전송하여 모터의 위치, 속도, 토크제어를 할 수 있도록 해준다. The
모터 드라이버 모듈(300)은 교류전압을 직류 전압으로 변환하는 콘버터(302), 입력되는 제어데이터에 의하여 PWM 신호를 생성하는 모터 드라이브 프로세스(301)와, 모터 드라이브 프로세서(301)에 의하여 스위칭 소자를 사용하여 교류전압을 생성하는 PWM 인버터(304), 스위칭 소자의 온/오프가 고속으로 될 경우에 정격전압 이상의 전압이나 역기전력에 의해 회로의 소자가 파괴되는 것을 방지하는 스너버 회로(Snubber circuit:303), 모터의 엔코더 값을 계수하는 엔코더 펄스 카운터(Encoding Pulse Counter: 305)와 모터에 인가되는 전압으로부터 전류 값을 측정하는 전류센서(306)로 이루어진다.The
이하, 본 발명의 동작과정을 도 7에 도시된 일실시예의 동작 다이어그램을 통하여 설명하기로 한다.Hereinafter, an operation process of the present invention will be described with an operation diagram of the embodiment shown in FIG.
모터 제어기(100)의 모터 제어 서비스를 수행하는 객체는 어플리케이션 프로그램, 스케쥴러, 싱크 매니져, 모터 제어 , 커뮤니케이션 인터페이스, 익셉션 핸드러이다. 이중에 모터 제어기(102)는 복수 모터들의 스케줄을 관리하는 스케줄러 객체와 모터의 위치, 속도, 토크제어를 수행하는 모터 제어 객체를 구비한다.Objects that perform the motor control service of the
모터 제어 객체의 실행은 어플리케이션 프로세스(101)의 프로그램 수행에 포함된 시작 이벤트의하여 시작된다. 어플리케이션 프로세스(101)는 모터의 제어를 모터 제어 객체에 전담시키고, 자신은 다른 처리를 한다. 만일 모터 제어 객체는 모터 제어가 종료되면 어플리케이션 프로그램에 모터제어 종료 이벤트를 생성하여 이에 대한 처리를 하게한다.Execution of the motor control object is started by the start event included in the program execution of the
에러 및 예외와 부가경로 등을 제외한 기본 모터 제어 흐름을 살펴보면, 스케쥴러 객체에서 모터제어순서를 설정하고 실행리스트를 작성하고 리스트의 순서대로 모터 제어 객체에서 제어 프로세스를 실행하도록 한다. 제어 프로세스를 실행하면 프로그램 된 알고리즘에 따라서 모터의 위치, 속도, 토크 값을 설정하고 이 설정된 데이터 값을 커뮤니케이션 인터페이스 객체에서 하위 레벨의 모터 드라이버와의 통신을 위해 모터 제어 프레임을 생성하고 이 프레임을 전송한다. 모터 드라이버에 데이터가 정상적으로 전송되었는지 확인하고 프레임 전송이 완료된다면 모터 드라이버에서 전송한 드라이버 피드백 데이터프레임을 수신할 때 까지 기다린다. Looking at the basic motor control flow excluding errors, exceptions, and additional paths, we set the motor control sequence in the scheduler object, create a run list, and execute the control process on the motor control object in the order of the list. When the control process is executed, it sets the position, speed and torque values of the motor according to the programmed algorithm and generates the motor control frame and transmits this set data value for communication with the lower level motor driver in the communication interface object. do. Check if the data is transmitted to the motor driver normally. If the frame transmission is completed, wait until the driver feedback data frame transmitted from the motor driver is received.
드라이버 피드백 데이터 프레임을 수신하게 되면 피드백 데이터를 추출하고 우선 제어 프로세스에서 설정한 토크 값과 실제의 토크 값을 비교하여 토크제어를 하고 토크제어가 완료되면 속도제어, 속도제어가 완료되면 위치제어를 하게 된다. 위치 제어까지 완료가 되면 하나의 제어 프로세스 실행이 끝나게 되는데 이때 스립(Sleep)상태의 다른 제어프로세서를 깨우고 자신은 프로세서 종료상태 여부를 확인하고 종료상태이면 프로세서를 삭제하고 스케쥴러 객체의 프로세스 리스트 목록에 서 삭제한다. 종료 상태가 아니라면 슬립 상태로 전환된다.When the driver feedback data frame is received, the feedback data is extracted and the torque control is compared by comparing the torque value set in the control process with the actual torque value, and the speed control is completed when the torque control is completed, and the position control is performed when the speed control is completed. do. When the position control is completed, the execution of one control process is finished. At this time, the other control processor in the sleep state is awakened, and it checks whether the processor is in the end state, deletes the processor if it is in the end state, and removes the processor from the process list of the scheduler object. Delete it. If not, it goes to sleep.
모터 제어기의 모든 실행이 완료가 되면 스케줄러 객체의 제어 프로세스 리스트 목록이 비어있을 것이고, 이때 어플리케이션 프로그램에 모터제어가 완료되었음을 알린다.When all execution of the motor controller is completed, the list of the control process list of the scheduler object will be empty, and the application program will be notified that the motor control is completed.
도 7에서 에러 및 예외상황은 스케쥴러 객체의 새로운 제어 프로세스 추가, 싱크 매니저 객체의 동기화 에러, 모터 제어 객체에서의 위치, 속도, 토크 제어시의 에러, 모터 드라이버에서 수신된 모터와 모터 드라이버 에러가 있는데, 이때의 에러 및 예외는 엑셉션 핸들러 객체를 이용하여 각각의 상황에 맞게 처리한다.Errors and exceptions in FIG. 7 include a new control process of the scheduler object, a synchronization error of the sink manager object, a position in the motor control object, an error in the speed and torque control, and a motor and motor driver error received from the motor driver. In this case, errors and exceptions are handled for each situation using the exception handler object.
도 8은 모터 드라이버의 동작을 설명하는 다이어그램이다.8 is a diagram for explaining the operation of the motor driver.
커뮤니케이션 모듈(200)의 물리층에서 제어 프레임을 수신하게 되면서 모터 구동이 시작된다. 데이터 링크층은 수신 받은 제어 프레임에서 데이터를 추출하고 어플리케이션층 인터페이스에서 추출한 데이터를 모터 드라이버 모듈(300)에 전송한다. 모터 드라이버 모듈(300)의 모터 드라이버 프로세스는 제어 데이터에 맞는 3상 PWM 신호를 생성하고 이 3상 PWM신호에 맞게 인버터에서 모터의 직류전압을 교류전압으로 전환하게 모터에 인가한다.The motor drive starts as the control frame is received at the physical layer of the
모터에 부착된 전류 센서와 엔코더에서 전류값과 엔코딩 펄스 값을 감지하여 커뮤니케이션 모듈(200)의 어플리케이션 인터페이스로 전송하고 이 센서 데이터(전류와 엔코딩 펄스값)를 메인 프로세서에 전송할 수 있는 데이터 프레임을 다시 데이터 링크층에서 생성한다. 이 센서 데이터 프레임은 물리층을 통해서 메인 프로세서로 전송되어 모터 제어기(100)의 모터 제어기 객체에서 위치, 속도, 토크제어를 할 수 있게 한다.Current sensors and encoders attached to the motor detect current values and encoding pulse values and transmit them to the application interface of the
상기의 목적과 구성을 갖는 본 발명에 따르면, 메인 프로세스에 복수의 모터를 제어할 수 있는 소프트웨어로 구성된 모터 제어기를 탑재함으로써 하위레벨의 모터의 드라이버를 단순화시킬 수 있다. 따라서 개별적으로 모터에 각각 설치되는 제어기의 값이 저렴하게 되므로 전체 시스템의 제조원가가 저렴하게 된다.According to the present invention having the above objects and configurations, it is possible to simplify the driver of the lower level motor by mounting a motor controller composed of software capable of controlling a plurality of motors in the main process. Therefore, the value of the controller that is individually installed in the motor is inexpensive, so the manufacturing cost of the entire system is inexpensive.
또한, 모터들을 제어하는 제어 기능이 메인 프로세스에 탑재되기 때문에 모터들의 제어기능의 확장 및 변경이 용이하다.In addition, since the control function for controlling the motors is mounted in the main process, it is easy to expand and change the control function of the motors.
또한, 모터를 제어하는데 있어서 발생하는 에러 및 예외상황을 메인 프로세서의 진단 및 안전기능을 통해 모터나 모터 드라이버의 고장을 미리 방지할 수 있다.In addition, errors and exceptions that occur in controlling the motor can be prevented in advance by the diagnosis and safety functions of the main processor.
또한, 모터들을 제어하는 기능이 메인 프로세서의 모터 제어기의 객체들로 구성되기 때문에 퍼지 PID 제어, 선형 PID 제어, 퍼지-뉴로를 이용한 제어, 유전 알고리즘을 이용한 제어, 예측 모터 제어등과 같은 고기능의 제어를 수행할 수 있다.In addition, since the functions for controlling the motors are composed of the objects of the motor controller of the main processor, high-performance control such as fuzzy PID control, linear PID control, fuzzy-neuro control, genetic algorithm control, predictive motor control, etc. Can be performed.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060025298A KR100734345B1 (en) | 2006-03-20 | 2006-03-20 | Control system for motor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060025298A KR100734345B1 (en) | 2006-03-20 | 2006-03-20 | Control system for motor |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100734345B1 true KR100734345B1 (en) | 2007-07-03 |
Family
ID=38502890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060025298A KR100734345B1 (en) | 2006-03-20 | 2006-03-20 | Control system for motor |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100734345B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101061930B1 (en) * | 2008-12-18 | 2011-09-02 | 한국생산기술연구원 | Multiple motor control system and method |
CN109302103A (en) * | 2018-11-29 | 2019-02-01 | 上海福赛特控制技术有限公司 | A kind of motor driven remotely separated and electric machine control system |
KR20210087348A (en) * | 2020-01-02 | 2021-07-12 | 세메스 주식회사 | Driving apparatus of semiconductor manufacturing equipment and driving method of semiconductor manufacturing equipment |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04215108A (en) * | 1990-12-13 | 1992-08-05 | Yaskawa Electric Corp | Control method for multi axis servo system |
KR20010011272A (en) * | 1999-07-27 | 2001-02-15 | 윤종용 | Object-oriented robot programming system and method |
-
2006
- 2006-03-20 KR KR1020060025298A patent/KR100734345B1/en not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04215108A (en) * | 1990-12-13 | 1992-08-05 | Yaskawa Electric Corp | Control method for multi axis servo system |
KR20010011272A (en) * | 1999-07-27 | 2001-02-15 | 윤종용 | Object-oriented robot programming system and method |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101061930B1 (en) * | 2008-12-18 | 2011-09-02 | 한국생산기술연구원 | Multiple motor control system and method |
CN109302103A (en) * | 2018-11-29 | 2019-02-01 | 上海福赛特控制技术有限公司 | A kind of motor driven remotely separated and electric machine control system |
KR20210087348A (en) * | 2020-01-02 | 2021-07-12 | 세메스 주식회사 | Driving apparatus of semiconductor manufacturing equipment and driving method of semiconductor manufacturing equipment |
KR102594072B1 (en) * | 2020-01-02 | 2023-10-24 | 세메스 주식회사 | Driving apparatus of semiconductor manufacturing equipment and driving method of semiconductor manufacturing equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102208888B (en) | Motor driving system, motor controller, and safety function expander | |
EP2367278B1 (en) | Electric power converter | |
EP3203627B1 (en) | Power conversion device, power conversion method, and power conversion system | |
US6806660B2 (en) | Motor controlling serial communication device and motor driver | |
EP1588924B1 (en) | Vehicle controller | |
EP3388906B1 (en) | Motor control system, motor controller, and method for setting safety function | |
CN107493041B (en) | Multi-path motor control system and control method and self-service financial equipment | |
EP2677657B1 (en) | Alternating-current rotating machine control device | |
JP2002345252A (en) | Method and apparatus for operating a plurality of power converters | |
US9563180B2 (en) | Configuration-enabled motor drive safety | |
JP7225689B2 (en) | motor controller | |
CN103765760A (en) | Integrated servo system, motor system, and motor control method | |
KR100734345B1 (en) | Control system for motor | |
US11036402B2 (en) | Control device, control method and recording medium | |
JP2019161759A (en) | Motor drive system | |
US11548132B2 (en) | Power tool | |
KR101061930B1 (en) | Multiple motor control system and method | |
US9912262B2 (en) | Positioning arrangement for moving an object that is to be positioned | |
JP7449950B2 (en) | Power conversion device and predictive diagnosis method used therefor | |
CN101217444B (en) | Network control method based on CAN bus | |
CN109768738B (en) | Motor control device, control system, and motor control method | |
JP2007300694A (en) | Inverter device | |
KR101291660B1 (en) | Distributed control system and reconfiguration method for the same | |
JP6201457B2 (en) | Drive equipment | |
CN100590564C (en) | Compound signal processing system and method for multiple fans |
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: 20130424 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20140513 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20150717 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |