KR102544829B1 - 모터 제어 방법 및 디바이스 - Google Patents

모터 제어 방법 및 디바이스 Download PDF

Info

Publication number
KR102544829B1
KR102544829B1 KR1020217017358A KR20217017358A KR102544829B1 KR 102544829 B1 KR102544829 B1 KR 102544829B1 KR 1020217017358 A KR1020217017358 A KR 1020217017358A KR 20217017358 A KR20217017358 A KR 20217017358A KR 102544829 B1 KR102544829 B1 KR 102544829B1
Authority
KR
South Korea
Prior art keywords
control
motors
motor
controller
sub
Prior art date
Application number
KR1020217017358A
Other languages
English (en)
Other versions
KR20210090662A (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 베이징 징웨이 하이레인 테크놀러지 씨오., 아이엔씨.
Publication of KR20210090662A publication Critical patent/KR20210090662A/ko
Application granted granted Critical
Publication of KR102544829B1 publication Critical patent/KR102544829B1/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
    • H02P5/00Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
    • H02P5/46Arrangements 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
    • H02P5/50Arrangements 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 by comparing electrical values representing the speeds
    • 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
    • H02P5/00Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
    • H02P5/46Arrangements 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
    • H02P5/48Arrangements 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 by comparing mechanical values representing the speeds
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60LPROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
    • B60L15/00Methods, circuits, or devices for controlling the traction-motor speed of electrically-propelled vehicles
    • B60L15/20Methods, circuits, or devices for controlling the traction-motor speed of electrically-propelled vehicles for control of the vehicle or its driving motor to achieve a desired performance, e.g. speed, torque, programmed variation of speed
    • B60L15/2045Methods, circuits, or devices for controlling the traction-motor speed of electrically-propelled vehicles for control of the vehicle or its driving motor to achieve a desired performance, e.g. speed, torque, programmed variation of speed for optimising the use of energy
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60LPROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
    • B60L2220/00Electrical machine types; Structures or applications thereof
    • B60L2220/40Electrical machine applications
    • B60L2220/42Electrical machine applications with use of more than one motor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60LPROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
    • B60L2240/00Control parameters of input or output; Target parameters
    • B60L2240/40Drive Train control parameters
    • B60L2240/42Drive Train control parameters related to electric machines
    • B60L2240/421Speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60LPROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
    • B60L2240/00Control parameters of input or output; Target parameters
    • B60L2240/40Drive Train control parameters
    • B60L2240/42Drive Train control parameters related to electric machines
    • B60L2240/423Torque
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60LPROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
    • B60L2260/00Operating Modes
    • B60L2260/20Drive modes; Transition between modes
    • B60L2260/26Transition between different drive modes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/60Other road transportation technologies with climate change mitigation effect
    • Y02T10/64Electric machine technologies in electromobility
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/60Other road transportation technologies with climate change mitigation effect
    • Y02T10/72Electric energy management in electromobility

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Multiple Motors (AREA)
  • Control Of Electric Motors In General (AREA)

Abstract

모터(motor) 제어 기술분야에 적용할 수 있으며, 특히 모터 제어 시스템의 컨트롤러(controller)에 적용할 수 있는 모터 제어 방법 및 디바이스가 제공된다. 시스템은 하나의 컨트롤러 및 적어도 두 개의 모터들을 포함하고, 모터들의 각각은 하나의 구동 엔티티를 구동시킨다. 방법은, 현재 제어 명령, 구동 엔티티들의 위치 관계, 및 이전 프로그램 사이클이 종료된 후의 시스템 상태를 획득하는 단계; 획득된 정보를 기반으로, 그리고 전환 관계들과 모든 시스템 상태들 사이의 전환 조건들의 미리 설정된 매핑과 조합하여, 현재 제어 명령으로부터, 이전 프로그램 사이클이 종료된 후의 시스템 상태에 대응하는 타겟 시스템 상태를 결정하는 단계; 타겟 시스템 상태에 따라, 타겟 제어 명령을 결정하는 단계; 및 모터들 모두의 액션들을 제어하는 단계를 포함한다. 본 발명은 하나의 컨트롤러를 통해 모든 모터들의 제어를 달성하고, 이로써, 사용되는 컨트롤러들의 수를 줄이고, 각 모터를 위한 제어 프로그램을 설계할 필요를 제거하며, 제어 시스템들의 하드웨어 비용 및 소프트웨어 개발 비용을 절감한다.

Description

모터 제어 방법 및 디바이스
본 출원은, 그 전체가 참조로서 여기에 포함되는, 중국 특허청에 2019년 1월 28일에 제출된 “모터 제어 방법 및 디바이스”라는 명칭의 중국 특허 출원 제201910079629.2호의 우선권을 주장한다.
본 개시는 모터(motor) 제어 기술분야에 관한 것으로, 특히, 모터 제어 방법 및 모터 제어 장치에 관한 것이다.
기존의 모터 제어 방법에서, 컨트롤러(controller)는 미리 설정된 제어 로직을 기반으로 작동하도록, 모터를 제어한다. 예를 들어, 자동차 전기 선루프(sunroof) 제어 시스템에서, 두 개의 컨트롤러들은 선루프의 선셰이드 커튼(sunshade curtain) 및 유리가 이동하도록 제어하기 위해, 시스템 내에 배치된다. 두 개의 컨트롤러들은 선루프의 선셰이드 커튼 및 유리가 이동하도록 제어하기 위해, 선루프의 선셰이드 커튼 및 유리에 제어 명령을 각각 전송한다.
그러나, 기존의 모터 제어 방법에 따르면, 대체로, 하나의 컨트롤러가 하나의 모터에 대응한다. 다수의 모터들을 제어하는 경우에는, 모터들과 동일한 수의 컨트롤러들을 제공하고 컨트롤러들의 각각에 대해 독립적인 제어 로직을 설계할 필요가 있으며, 이로 인해, 제어 시스템의 높은 하드웨어 비용 및 높은 소프트웨어 개발 비용이 초래된다.
이를 고려하여, 본 개시에 따른 모터 제어 방법 및 모터 제어 장치는 하나의 컨트롤러로 다수의 모터들을 제어하도록 제공되어, 제어 시스템의 하드웨어 비용 및 소프트웨어 개발 비용을 절감한다. 구체적인 해결 수단들은 다음과 같다.
제1 양태에서, 본 개시에 따른 모터 제어 방법이 제공된다. 상기 방법은 모터 제어 시스템의 컨트롤러에 적용된다. 상기 모터 제어 시스템은 하나의 컨트롤러 및 적어도 두 개의 모터들을 포함하고, 상기 모터들의 각각은 구동 대상 엔티티(to-be-driven entity)를 구동시킨다. 상기 방법은, 현재 제어 명령들, 구동 대상 엔티티들의 위치 관계(positional relationship), 및 이전 처리 기간(previous processing period)의 종료 시의 시스템 상태(state)를 획득하는 단계 - 상기 이전 처리 기간의 종료 시의 상기 시스템 상태는 상기 이전 처리 기간의 종료 시의 상기 모터들의 동작(motion) 상태들을 나타냄 -; 미리 설정된 매핑 관계(mapping relationship), 상기 구동 대상 엔티티들의 상기 위치 관계, 및 상기 현재 제어 명령들을 기반으로, 상기 이전 처리 기간의 종료 시의 상기 시스템 상태에 대응하는 타겟(target) 시스템 상태를 결정하는 단계 - 상기 미리 설정된 매핑 관계는 시스템 상태들과 상기 시스템 상태들에 대한 전환 조건들(transition conditions) 사이의 전환 관계들을 나타냄 -; 상기 타겟 시스템 상태를 기반으로, 타겟 제어 명령들을 결정하는 단계; 및 상기 타겟 제어 명령들을 기반으로 작동하도록, 상기 모터들을 제어하는 단계를 포함한다.
일 실시예에서, 본 개시의 제1 양태에 따른 상기 모터 제어 방법은, 미리 설정된 마스터 제어 모델(master control model)을 호출하는 단계; 상기 마스터 제어 모델의 미리 설정된 입력 파라미터에 할당될 값을 획득하는 단계; 상기 모터들에 각각 대응하는 기능(function) 제어 명령들을 출력하도록 상기 마스터 제어 모델을 제어하기 위해, 상기 미리 설정된 입력 파라미터에 상기 값을 할당하는 단계; 및 상기 기능 제어 명령들 및 상기 타겟 제어 명령들을 기반으로 전체(total) 제어 명령을 획득하여, 상기 전체 제어 명령을 기반으로 작동하도록 상기 모터들의 각각을 제어하는 단계를 더 포함한다.
일 실시예에서, 상기 마스터 제어 모델은 참조 모델들(reference models)을 포함하고, 상기 참조 모델들은 상기 모터들에 일대일로 대응하고, 상기 미리 설정된 입력 파라미터는 상기 참조 모델들 모두의 입력 파라미터들을 포함하는 세트(set)이고, 상기 참조 모델들 모두는 서브-제어 모델(sub-control model)과 연관되고, 상기 마스터 제어 모델은 상기 할당된 값의 상기 미리 설정된 입력 파라미터를 기반으로 상기 기능 제어 명령들을 출력하도록, 상기 서브-제어 모델을 호출하며, 상기 서브-제어 모델은 상기 기능 제어 명령들을 획득하기 위해 필요한 서브-기능 모델들을 포함한다.
일 실시예에서, 상기 서브-제어 모델은 상기 서브-기능 모델들을 호출하기 위해 복수의 연관 인터페이스들과 함께 배치되고(arranged with), 상기 연관 인터페이스들은 상기 서브-기능 모델들에 일대일로 대응한다.
일 실시예에서, 상기 타겟 제어 명령들을 기반으로 작동하도록 상기 모터들을 제어하는 단계 전에, 본 개시의 제1 양태에 따른 상기 모터 제어 방법은, 상기 타겟 제어 명령들을 필터링하여, 상기 필터링된 타겟 제어 명령들을 기반으로 작동하도록 상기 모터들을 제어하기 위해, 타겟 기능 모델을 호출하는 단계를 더 포함하고, 상기 타겟 기능 모델은 상기 모터들에 의해 수행될 기능들 중 일부를 수행한다.
제2 양태에서, 본 개시에 따른 모터 제어 장치가 제공된다. 상기 장치는 모터 제어 시스템의 컨트롤러에 적용된다. 상기 모터 제어 시스템은 하나의 컨트롤러 및 적어도 두 개의 모터들을 포함하고, 상기 모터들의 각각은 구동 대상 엔티티를 구동시킨다. 상기 장치는 제1 획득 유닛, 제1 결정 유닛, 제2 결정 유닛, 및 제1 제어 유닛을 포함한다. 상기 제1 획득 유닛은 현재 제어 명령들, 구동 대상 엔티티들의 위치 관계, 및 이전 처리 기간의 종료 시의 시스템 상태를 획득하도록 구성되고, 여기서, 상기 이전 처리 기간의 종료 시의 상기 시스템 상태는 상기 이전 처리 기간의 종료 시의 상기 모터들의 동작 상태들을 나타낸다. 상기 제1 결정 유닛은 미리 설정된 매핑 관계, 상기 구동 대상 엔티티들의 상기 위치 관계, 및 상기 현재 제어 명령들을 기반으로, 상기 이전 처리 기간의 종료 시의 상기 시스템 상태에 대응하는 타겟 시스템 상태를 결정하도록 구성되고, 여기서, 상기 미리 설정된 매핑 관계는 시스템 상태들과 상기 시스템 상태들에 대한 전환 조건들 사이의 전환 관계들을 나타낸다. 상기 제2 결정 유닛은 상기 타겟 시스템 상태를 기반으로, 타겟 제어 명령들을 결정하도록 구성된다. 상기 제1 제어 유닛은 상기 타겟 제어 명령들을 기반으로 작동하도록, 상기 모터들을 제어하도록 구성된다.
일 실시예에서, 본 개시의 제2 양태에 따른 상기 모터 제어 장치는 제1 호출 유닛, 제2 획득 유닛, 할당 유닛, 및 제2 제어 유닛을 더 포함한다. 상기 제1 호출 유닛은 미리 설정된 마스터 제어 모델을 호출하도록 구성된다. 상기 제2 획득 유닛은 상기 마스터 제어 모델의 미리 설정된 입력 파라미터에 할당될 값을 획득하도록 구성된다. 할당 유닛은 상기 모터들에 각각 대응하는 기능 제어 명령들을 출력하도록 상기 마스터 제어 모델을 제어하기 위해, 상기 미리 설정된 입력 파라미터에 상기 값을 할당하도록 구성된다. 상기 제2 제어 유닛은 상기 기능 제어 명령들 및 상기 타겟 제어 명령들을 기반으로 전체 제어 명령을 획득하여, 상기 전체 제어 명령을 기반으로 작동하도록, 상기 모터들의 각각을 제어하도록 구성된다.
일 실시예에서, 상기 마스터 제어 모델은 참조 모델들을 포함하고, 상기 참조 모델들은 상기 모터들에 일대일로 대응하고, 상기 미리 설정된 입력 파라미터는 상기 참조 모델들 모두의 입력 파라미터들을 포함하는 세트이고, 상기 참조 모델들 모두는 서브-제어 모델과 연관되고, 상기 마스터 제어 모델은 상기 할당된 값의 상기 미리 설정된 입력 파라미터를 기반으로 상기 기능 제어 명령들을 출력하도록, 상기 서브-제어 모델을 호출하며, 상기 서브-제어 모델은 상기 기능 제어 명령들을 획득하기 위해 필요한 서브-기능 모델들을 포함한다.
일 실시예에서, 상기 서브-제어 모델은 상기 서브-제어 모델은 상기 서브-기능 모델들을 호출하기 위해 복수의 연관 인터페이스들과 함께 배치되고, 상기 연관 인터페이스들은 상기 서브-기능 모델들에 일대일로 대응한다.
일 실시예에서, 본 개시의 제2 양태에 따른 상기 모터 제어 장치는 제2 호출 유닛을 더 포함한다. 상기 제2 호출 유닛은 상기 타겟 제어 명령들을 필터링하여, 상기 필터링된 타겟 제어 명령들을 기반으로 작동하도록 상기 모터들을 제어하기 위해, 타겟 기능 모델을 호출하도록 구성된다.
제3 양태에서, 본 개시에 따른 모터 제어 디바이스가 제공된다. 상기 디바이스는 메모리 및 프로세서를 포함한다. 상기 메모리는 상기 프로세서를 위해 실행 가능한 프로그램을 저장한다. 상기 프로그램은, 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금 본 개시의 제1 양태에 따른 상기 모터 제어 방법을 수행하게 한다.
제4 양태에서, 본 개시에 따른 프로그램을 저장하는 저장 매체가 제공된다. 상기 프로그램은 프로세서에 의해 실행될 때, 상기 프로세서로 하여금 본 개시의 제1 양태에 따른 상기 모터 제어 방법을 수행하게 한다.
제5 양태에서, 본 개시에 따른 컴퓨터 프로그램 제품이 제공된다. 상기 컴퓨터 프로그램 제품은 비일시적 컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 프로그램을 포함한다. 상기 컴퓨터 프로그램은 프로그램 명령어들을 포함한다. 상기 프로그램 명령어들은, 컴퓨터에 의해 실행될 때, 상기 컴퓨터로 하여금 본 개시의 제1 양태에 따른 상기 모터 제어 방법을 수행하게 한다.
상기와 같은 기술적 해결 수단을 기반으로, 본 개시에 따른 모터 제어 방법 및 모터 제어 장치가 제공된다. 방법은 모터 제어 시스템의 컨트롤러에 적용된다. 모터 제어 시스템은 하나의 컨트롤러 및 적어도 두 개의 모터들을 포함하고, 모터들의 각각은 구동 대상 엔티티를 구동시킨다. 방법에서, 현재 제어 명령들, 구동 대상 엔티티들의 위치 관계, 및 이전 처리 기간의 종료 시의 시스템 상태가 먼저 획득되고 - 이전 처리 기간의 종료 시의 시스템 상태는 이전 처리 기간의 종료 시의 모터들의 동작 상태들을 나타냄 -, 이전 처리 기간의 종료 시의 시스템 상태에 대응하는 타겟 시스템 상태가 상기의 획득된 정보, 시스템 상태들과 시스템 상태들에 대한 전환 조건들 사이의 전환 관계들을 나타내는 미리 설정된 매핑 관계, 및 현재 제어 명령어들을 기반으로 결정되고, 타겟 제어 명령들이 타겟 시스템 상태를 기반으로 결정되며, 모터들이 타겟 제어 명령들을 기반으로 작동하도록 제어된다. 본 개시의 모터 제어 방법 및 모터 제어 장치에 따르면, 시스템 상태는 모터들 모두의 동작 상태들을 나타내고, 시스템 상태들과 시스템 상태들에 대한 전환 조건들 사이의 전환 관계들을 나타내는 미리 설정된 매핑 관계는 미리 결정되며, 이로써, 컨트롤러에 의해 모터들 모두를 제어한다. 기존 기술과 비교하여, 본 개시의 모터 제어 방법 및 모터 제어 장치에 따르면, 하드웨어적으로, 모터들 모두가 하나의 컨트롤러에 의해 제어됨으로써, 컨트롤러들의 수를 줄이고, 소프트웨어적으로, 시스템 상태가 모터들 모두의 동작 상태들을 나타내고, 미리 설정된 매핑 관계가 시스템 상태들과 시스템 상태들에 대한 전환 조건들 사이의 전환 관계들을 나타냄으로써, 모터들의 각각에 대해 독립적인 제어 프로그램을 설계할 필요가 없다. 따라서, 본 개시에 따른 모터 제어 방법 및 모터 제어 장치에 의해, 제어 시스템의 하드웨어 비용 및 소프트웨어 개발 비용이 절감될 수 있다.
본 개시의 실시예들에 따른 기술적 해결 수단들 또는 기존 기술을 보다 명확하게 설명하기 위해, 실시예들 또는 기존 기술의 설명에 사용되는 도면들이 이하에서 간략하게 설명된다. 명확하게는, 이하에 설명되는 도면들은 본 개시의 일부 실시예들만을 도시한다. 다른 도면들이 이러한 도면들에 따라 본 개시가 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 어떤 창의적인 노력없이도 획득될 수 있다.
도 1은 본 개시의 일 실시예에 따른 모터 제어 방법의 순서도이다;
도 2는 본 개시의 일 실시예에 따른 차량 적용 시나리오에서의 모터 제어 시스템의 블록도이다;
도 3은 본 개시의 일 실시예에 따른 모터 제어 방법을 구현하기 위한 하드웨어 회로의 블록도이다;
도 4는 본 개시의 일 실시예에 따른 적용 시나리오에서의 모터 제어 방법에서 시스템 상태들 사이의 전환들을 도시하는 개략도이다;
도 5는 본 개시의 일 실시예에 따른 모터 제어 방법에서 마스터 제어 모델의 아키텍처를 도시하는 개략도이다;
도 6은 본 개시의 일 실시예에 따른 모터 제어 방법에서 서브-제어 모델의 아키텍처를 도시하는 개략도이다;
도 7은 본 개시의 일 실시예에 따른 모터 제어 방법에서 마스터 제어 모델의 입력들 및 출력들을 도시하는 개략도이다;
도 8은 본 개시의 일 실시예에 따른 모터 제어 장치의 개략적인 구조도이다;
도 9는 본 개시의 다른 실시예에 따른 모터 제어 장치의 개략적인 구조도이다; 그리고
도 10은 본 개시의 다른 실시예에 따른 모터 제어 장치의 개략적인 구조도이다.
본 개시의 실시예들의 목적들, 기술적 해결 수단들 및 장점들을 보다 명확하게 하기 위해, 본 개시의 실시예들에 따른 기술적 해결 수단들이 본 개시의 실시예들에 사용된 도면들과 함께 이하에서 명확하고 완전하게 설명된다. 설명된 실시예들은 보든 실시예들이 아니라 본 개시의 일부 실시예들일 뿐임이 명백하다. 본 개시의 실시예들을 기반으로, 본 개시의 기술분야에서 통상의 지식을 가진 사람에 의해 어떤 창의적인 노력없이도 획득되는 모든 다른 실시예들이 본 개시의 보호 범위 내에 속한다.
본 개시의 일 실시예에 따른 모터 제어 방법이 제공된다. 방법은 모터 제어 시스템의 컨트롤러에 적용된다. 모터 제어 시스템은 하나의 컨트롤러 및 적어도 두 개의 모터들을 포함하고, 모터들의 각각은 구동 대상 엔티티에 대응한다. 모터 제어 시스템은 상이한 적용 시나리오들에 따라 조정될 수 있다. 예를 들어, 자동차 선루프 제어 시스템 또는 자동차 윈도우 제어 시스템에서, 모터들은 자동차 선루프 제어 시스템 또는 자동차 윈도우 제어 시스템에 배치된 구동 모터들이고, 모터들의 각각에 대응하는 구동 대상 엔티티는 선루프/윈도우의 유리 또는 선셰이드 커튼이다. 명확하게는, 모터 제어 시스템은 작동 명령(operation command)을 내리는 제어 스위치와 같이, 제어 기능들을 수행하기 위해 필요한 다른 메커니즘들을 더 포함한다.
본 개시의 일 실시예에 따른 모터 제어 방법의 순서도인 도 1을 참조한다. 도 1에 도시된 바와 같이, 방법은 다음의 단계들 S100 내지 S130를 포함할 수 있다.
단계 S100에서, 현재 제어 명령들, 구동 대상 엔티티들의 위치 관계, 및 이전 처리 기간의 종료 시의 시스템 상태가 획득된다.
일 실시예에서, 본 개시의 일 실시예에 따른 모터 제어 방법을 구현하기 위해, 모터 제어 시스템의 하드웨어 제어 회로를 개선할 필요가 있다. 차량 적용 시나리오에서의 모터 제어 시스템을 예로 들어, 본 개시의 일 실시예에 따른 모터 제어 방법을 설명한다. 본 개시의 일 실시예에 따른 차량 적용 시나리오에서의 모터 제어 시스템의 블록도인 도 2를 참조한다. 블록도에 도시된 바와 같이, 하나의 컨트롤러만 있고, 컨트롤러는 다수의 모터들에 연결된다. 설명의 편의를 위해, 본 개시의 일 실시예에서는, 도 2에 도시된 하드웨어 연결 모드가 마스터-슬레이브 모드(Master-Slave mode)로 지칭된다.
구체적으로, 컨트롤러가 다수의 모터들 중 어느 하나와 함께 직접 배치되는 경우, 컨트롤러에 직접 연결된 모터와 컨트롤러는 마스터로서 역할을 하고, 컨트롤러에 직접 연결된 모터는 마스터 모터로 지칭되고, 다른 모터들의 각각은 와이어 하니스(wire harness)를 통해 컨트롤러에 연결되며 슬레이브 모터로 지칭된다. 이러한 경우의 연결 모드가 통합(integrated) 연결 모드로 지칭된다.
컨트롤러가 독립적으로 배치되고 어떤 모터와도 직접 연결되지 않는 경우, 컨트롤러는 마스터로서 역할을 하고, 모터들의 각각은 와이어 하니스를 통해 컨트롤러에 연결되며 슬레이브 모터로서 역할을 한다. 이러한 경우의 구성이 마스터 연결 모드로 지칭된다.
상기의 두 가지 연결 모드들에서, 하나의 컨트롤러가 배치되고, 다수의 모터들이 배치된다. 컨트롤러와 모터의 수는 모터 제어 시스템을 기반으로 결정된다. 또한, 도 2는 컨트롤러와 다른 컴포넌트들(components) 사이의 연결을 예시적으로 도시하고 있다. 자동차 윈도우 제어 시스템을 예로 들면, 도 2는 마스터로서 역할을 하는 컨트롤러와 차량 사이의 연결, 및 마스터 컨트롤러와 모터들(도 2에서 슬레이브 1 내지 슬레이브 N으로 도시됨)의 각각 사이의 연결을 도시하고 있다. 전원 라인 '배터리', 접지 라인 'GND', 차량 신호 라인 '차량 신호', 로컬 상호 연결 네트워크 버스 'Lin', 슬레이브 모터들에 연결된 구동 와이어 라인 '드라이브 와이어', 전원 공급 라인 '전원 와이어', 및 신호 라인 '신호 와이어'와 같이, 도 2에 도시된 연결 라인들은 모두 예시적이며, 연결들은 적용 시나리오들에 따라 결정된다. 도면에서, 하나의 스위치 '스위치'만이 컨트롤러와 차량을 연결하기 위해 배치된다는 점이 강조되어야 한다. 실제 적용들에서, 다수의 스위치들이 상이한 모터들을 작동하도록 제어하기 위해, 컨트롤러에 연결되도록 배치되어야 한다.
일 실시예에서, 본 개시의 일 실시예에 따른 모터 제어 방법을 구현하기 위한 하드웨어 회로의 블록도인 도 3을 참조한다. 자동차 윈도우 제어 시스템을 예로 들면, 도 3은 통합 연결 모드에서 모터 제어 시스템의 컴포넌트들 사이의 연결들을 도시하고 있다.
구체적으로, 하드웨어 회로는 전원 공급 회로, 컨트롤러(예를 들면, 도 3의 MCU 회로), 컨트롤러의 주변 회로들, 외부 신호 수집 회로, 슬레이브 구동 회로들, 및 슬레이브 처리 회로들을 포함하지만, 이에 제한되지 않는다. 상술된 바와 같이, 모터들 및 모터들에 연결된 회로들은 슬레이브 1 내지 슬레이브 N으로 표시된다. 예를 들어, 슬레이브 1 신호 처리 회로는 모터 1에 대응하는 신호 처리 회로를 나타낸다. 다른 회로들은 여기에서 자세히 설명되지 않는다. 마스터 모터는 컨트롤러에 직접 연결된 모터이다. 마스터 모터와 컨트롤러 사이의 연결은 마스터 구동 회로 및 마스터 신호 처리 회로에 의해 수행된다.
전원 회로는 예시적으로 전원 라인 '배터리' 및 접지 라인 'GND'를 통해 차량에 연결된다. 전원 회로는 차량에 배치된 축전지(storage battery)와 같은 외부로부터 전기 에너지를 획득하고, 획득된 전기 에너지를 컨트롤러에서 이용할 수 있는 전압 레벨의 전기 에너지로 변환하여, 컨트롤러의 정상 동작을 보장한다. 또한, 전원 회로는, 공급된 전원의 전압이 미리 설정된 사용 요구 사항을 충족하는지의 여부를 검출하여, 컨트롤러가 비정상적인 입력 전압에 의해 손상되는 것을 방지한다. 명확하게는, 전원 공급 회로는 여기에서 상세히 설명되지 않는 다른 필요한 기능들을 수행할 수 있어야 한다.
컨트롤러는 다양한 신호들을 획득한 후에, 미리 설정된 제어 로직을 기반으로 마스터 모터 및 슬레이브 모터들의 각각에 구동 제어 명령을 개별적으로 출력하여, 마스터 모터 및 슬레이브 모터들의 각각을 작동하도록 제어하도록 구성된다.
외부 신호 수집 회로와 차량 사이에는, 스위치 '스위치' 연결 라인, 로컬 상호 연결 네트워크 버스 'Lin', 차량 속도 정보를 획득하기 위한 연결 라인, 원격 제어를 수행하기 위한 연결 라인 등이 배치된다. 외부 신호 수집 회로는 차량으로부터 전기 신호를 획득한다. 외부 신호 수집 회로는 차량으로부터의 전기 신호를 컨트롤러에 의해 수신될 수 있는 신호로 처리하고, 그 신호를 컨트롤러가 위치된 회로로 전송할 수 있다. 컨트롤러 이외의 신호 수집 회로는 외부 신호 수집 회로라는 점에 유의해야 한다.
슬레이브 구동 회로(도 3은 예시적으로 모터(슬레이브 1)에 대응하는 구동 회로 및 모터 (슬레이브 N)에 대응하는 구동 회로를 도시함)는 슬레이브 모터를 작동하도록 구동시킨다. 슬레이브 구동 회로는 컨트롤러에 의해 출력되는 제어 신호(즉, 구동 제어 명령)를 전원 디바이스(power device)를 사용하여 고출력의 전기 출력으로 변환하고, 그 전기 출력을 와이어 하니스를 통해 슬레이브 모터로 전송하여, 슬레이브 모터를 작동하도록 구동시킨다. 슬레이브 모터들의 각각에 대해, 독립적인 슬레이브 구동 회로가 컨트롤러에 배치된다.
슬레이브 신호 처리 회로(도 3은 예시적으로 모터(슬레이브 1)에 대응하는 신호 처리 회로 및 모터(슬레이브 N)에 대응하는 신호 처리 회로를 도시함)는 모터로부터 피드백 신호를 획득하여 처리한다. 슬레이브 신호 처리 회로는 슬레이브 모터로부터 피드백 신호를 획득하고, 피드백 신호를 컨트롤러에 의해 수신될 수 있는 신호로 처리하고, 처리된 신호를 로직 제어를 위해 컨트롤러에 전송할 수 있다. 슬레이브 모터들의 각각에 대해, 독립적인 슬레이브 신호 처리 회고가 컨트롤러에 배치된다.
마스터 모터를 위한 구동 회로 및 신호 처리 회로는 슬레이브 모터를 위한 구동 회로 및 신호 처리 회로와 동일한 기능들을 가지며, 여기에서 반복되지 않는다.
상기의 하드웨어 연결들이 수행된 후에, 처리 기간(processing period)에서, 컨트롤러는, 스위치가 눌렸는지의 여부, 스위치가 눌린 때의 순간(time instant), 및 스위치가 눌린 순서(order)와 같은, 스위치에 대한 상태 정보를 획득할 수 있다. 획득된 스위치에 대한 상태 정보를 기반으로, 컨트롤러는 스위치 상태들과 제어 명령들 사이의 미리 설정된 대응 관계(corresponding relationship)에 따라, 제어 명령을 결정한다. 또한, 구동 대상 엔티티들의 위치 관계가 획득될 수 있다. 위치 관계는 미리 설정된 좌표계(coordinate system)의 원점(origin)으로부터 구동 대상 엔티티들의 거리들을 나타내는 구동 대상 엔티티들의 전후 관계(front-to-back relationship)이거나, 구동 대상 엔티티들과 미리 설정된 좌표계의 원점 사이의 실제 거리들을 나타낼 수 있다. 자동차 윈도우 제어 시스템의 적용 시나리오에서, 구동 대상 엔티티들의 위치 관계는 구동 대상 엔티티들의 각각의 개방 정도(degree of opening)를 나타낼 수 있다.
또한, 컨트롤러는 이전 처리 기간의 종료 시의 시스템 상태를 획득할 필요가 있다. 이전 처리 기간의 종료 시의 시스템 상태는, 모터들의 각각이 작동 중인지의 여부, 및 모터가 앞으로 회전하는지 또는 뒤로 회전하는지와 같은, 이전 처리 기간의 종료 시의 모터들의 동작 상태들을 포함한다. 처리 기간에서, 모터들의 각각에 대해, 동작 상태가 변경되거나 변경되지 않을 수 있으며, 이 처리 기간의 시스템 상태는 그 처리 기간의 종료 시의 모터들의 동작 상태들만을 포함한다는 점에 유의해야 한다. 새로운 처리 기간으로 들어간 후에, 이전 처리 기간의 시스템 상태는 현재 처리 기간의 초기 시스템 상태로 사용된다. 따라서, 현재 제어 명령들, 구동 대상 엔티티들의 위치 관계, 및 이전 처리 기간의 종료 시의 시스템 상태가 획득될 필요가 있다.
단계 S110에서, 이전 처리 기간의 종료 시의 시스템 상태에 대응하는 타겟 시스템 상태는 미리 설정된 매핑 관계, 구동 대상 엔티티들의 위치 관계, 및 현재 제어 명령들을 기반으로 결정된다.
본 개시의 실시예에 따른 모터 제어 방법에서, 미리 설정된 매핑 관계가 미리 결정된다. 미리 설정된 매핑 관계는 시스템 상태들과 시스템 상태들에 대한 전환 조건들 사이의 전환 관계들을 나타낸다. 동일한 현재 시스템 상태에 대해, 상이한 시스템 상태 전환들이 상이한 전환 조건들에서 발생한다.
상술된 바와 같이, 시스템 상태는 모터들의 동작 상태들을 나타낸다. 일 실시예에서, 상태 머신(state machine)은 다수의 시스템 상태들, 즉, 상태 머신의 상태들을 획득하기 위해, 모터들의 동작 상태들의 조합을 결정하도록 구성될 수 있다. 또한, 상태 머신은 시스템 상태들과 시스템 상태들에 대한 전환 조건들 사이의 전환 관계들을 나타낼 수 있다. 즉, 상태 머신은 미리 설정된 매핑 관계를 나타낼 수 있다.
일 실시예에서, 자동차 선루프 제어 시스템(선루프의 유리 및 선셰이드 커튼이 배치되고, 선루프의 유리와 선셰이드 커튼이 둘 다 전자 제어 컴포넌트들임)을 예로 들어, 본 개시의 일 실시예에서 시스템 상태를 설정하는 개념을 설명한다.
기존 디자인들에서, 선셰이드 커튼은 소프트 재질들로 제조되며, 이에 따라, 선셰이드 커튼이 바람 저항 및 기타 요인들의 영향을 받지 않도록 보장하기 위해, 선셰이드 커튼의 개방 정도는 항상 선루프의 유리의 개방 정도보다 더 클 필요가 있다. 따라서, 제어 로직을 설계할 때, 선루프의 유리 및 선셰이드 커튼의 연동 제어가 고려될 필요가 있다. 선루프의 유리 및 선셰이드 커튼의 연동 제어는 다음의 두 가지 제어 유형들을 포함할 수 있다.
타입 A의 경우, 선루프의 유리를 개방시키기 전에, 선루프의 유리가 완전히 개방된 상태에 대응하는 위치(일반적으로, 루프의 중앙에 위치됨)로 선셰이드 커튼이 개방되고, 선셰이드 커튼이 폐쇄되도록 제어되기 전에, 선루프의 유리가 완전히 폐쇄된다.
타입 B의 경우, 먼저, 선루프의 유리와 선셰이드 커튼의 위치들이 비교될 필요가 있다. 선루프의 유리를 개방시키기 전에, 선셰이드 커튼의 개방 정도가 선루프의 개방 정도와 미리 설정된 마진(margin)의 합보다 더 작은 경우, 선셰이드 커튼이 먼저 선루프의 유리의 개방 정도와 미리 설정된 마진의 합에 대응하는 위치로 이동된 다음, 선루프의 유리와 선셰이드 커튼이 함께 개방된다. 미리 설정된 마진은 선루프의 유리와 선셰이드 커튼 사이의 미리 결정된 거리이고, 제어 로직을 설계할 때 결정된다. 선셰이드 커튼의 개방 정도가 선루프의 유리와 미리 설정된 마진의 합보다 더 큰 경우, 특히 선셰이드 커튼의 개방 정도가 선루프의 개방 정도와 미리 설정된 마진의 합보다 더 큰 경우(이 경우는 다음의 상황에 해당한다: 선루프 제어 시스템이 먼저 선셰이드 커튼 개방 명령에 응답하여 작동들을 수행하고, 선셰이드 커튼이 일정 거리 이동한 다음, 정지하고, 즉, 선셰이드 커튼이 완전히 개방되지 않고, 이 후, 선루프 제어 시스템이 선루프 유리 완전 개방 명령을 수신하고 그 명령에 응답하여 작업들을 수행함), 선루프의 유리의 개방 정도는 선셰이드 커튼의 개방 정도보다 더 클 수 없기 때문에, 선루프의 유리가 먼저 선셰이드 커튼의 개방 정도와 미리 설정된 마진의 합에 대응하는 위치로 이동된 다음, 선셰이드 커튼과 선루프의 유리가 함께 개방된다. 선셰이드 커튼을 폐쇄시키거나, 선셰이드 커튼과 선루프의 유리를 연동 폐쇄시킬 때, 대칭 로직이 유사하다. 예를 들어, 선셰이드 커튼을 폐쇄시킬 때, 선셰이드 커튼의 개방 정도가 선루프의 유리의 개방 정도와 미리 설정된 마진의 합보다 더 작은 경우, 선루프의 유리가 먼저 선셰이드 커튼의 개방 정도와 미리 설정된 마진의 합에 대응하는 위치로 이동된 다음, 선루프의 유리와 선셰이드 커튼이 함께 폐쇄되며, 선셰이드 커튼의 개방 정도가 선루프의 유리의 개방 정도와 미리 설정된 마진의 합보다 더 큰 경우, 선셰이드 커튼이 먼저 선루프의 유리의 개방 정도와 미리 설정된 마진의 합에 대응하는 위치로 이동된 다음, 선루프의 유리와 선셰이드 커튼이 함께 폐쇄된다.
타입 B의 제어 로직에서, 선셰이드 커튼의 개방 정도는 항상 선루프의 유리의 개방 정도보다 더 크다는 것이 보정되어야 하는 점에 유의해야 한다. 개방 프로세스 또는 폐쇄 프로세스에서, 선셰이드 커튼의 개방 정도가 선루프의 유리의 개방 정도 이하이면, 선셰이드 커튼의 개방 정도가 선루프의 유리의 개방 정도보다 더 클 때까지, 선셰이드 커튼 또는 선루프의 유리는 일정 거리 이동하도록 제어된다.
모터들의 각각은 구동 대상 엔티티에 대응하는 점에 유의해야 한다. 시스템 상태에 대한 상기의 설명에서, 표현을 용이하게 하기 위해, 시스템 상태는 구동 대상 엔티티들의 위치 관계들 및 구동 대상 엔티티들의 움직임을 기반으로 결정된다. 시스템 상태는 실제로 구동 대상 엔티티들의 위치 관계를 기반으로 모터들의 동작 상태들을 나타냄을 이해해야 한다.
상기의 설명을 기반으로, 본 개시의 실시예들에 따른 자동차 선루프/윈도우 제어 시스템의 적용 시나리오에서, 다수의 시스템 상태들이 모터들의 동작 상태들을 기반으로 획득될 수 있다.
본 개시의 일 실시예에 따른 적용 시나리오에서 모터 제어 방법에서 시스템 상태들 사이의 전환들을 도시하는 개략도인 도 4를 참조한다. 도 4에 도시된 바와 같이, 타입 B의 제어 로직에 따른 선루프의 유리 및/또는 선셰이드 커튼의 개방을 예로 들면, 다수의 시스템 상태들, 시스템 상태들 사이의 전환 관계들(도 4에 도시된 전환 관계들을 포함하지만, 이에 제한되지 않음), 및 시스템 상태들에 대한 전환 조건들(도 4에 도시된 전환 조건들을 포함하지만, 이에 제한되지 않음)이 결정될 수 있다. 도 4에서, G-Cmd는 선루프의 유리에 대한 제어 명령을 나타내고, R- Cmd는 선셰이드 커튼에 대한 제어 명령을 나타내고, Freeze는 제어 명령이 유효하지 않거나 비어 있음을 나타내며, Open은 제어 명령이 유효함을 나타낸다.
아이들(idle) 상태(선루프의 유리 및 선셰이드 커튼이 둘 다 고정된(stationary) 고정 상태);
G-개방 상태(선루프의 유리가 개방된 상태);
R-개방 상태(선셰이드 커튼이 개방되고, 선루프의 유리가 선셰이드 커튼의 움직임을 기다리지 않는 상태);
G-R-개방 상태(선루프의 유리 및 선셰이드 커튼이 둘 다 개방된 상태, 타입 A는 이 상태를 포함하지 않음);
R-개방-G-홀딩 상태(선셰이드 커튼이 개방되고, 선루프의 유리가 선셰이드 커튼이 특정 위치로 이동하도록 기다리는 상태); 및
G-개방-R-홀딩 상태(선루프의 유리가 개방되고, 선셰이드 커튼이 선루프의 유리가 특정 위치로 이동하도록 기다리는 상태, 타입 A는 이 상태를 포함하지 않음).
또한, 이전 처리 기간의 종료 시의 시스템 상태에 대응하는 타겟 시스템 상태는 도 4의 시스템 상태들 사이의 전환들에 대한 개략도에 도시된 바와 같은 미리 설정된 매핑 관계, 구동 대상 엔티티들의 위치 관계, 및 현재 제어 명령들을 기반으로 결정된다. 상술된 바와 같이, 이전 처리 기간의 종료 시의 시스템 상태는 직접 획득될 수 있으며, 구동 대상 엔티티들의 위치 관계는 현재 처리 기간의 시작 시에 획득될 수 있다. 도 4에 도시된 전환 관계들 및 현재 제어 명령들을 기반으로, 이전 처리 기간의 종료 시의 시스템 상태에 대응하는 타겟 시스템 상태가 결정될 수 있다.
구체적으로, 도 4의 화살표들의 각각은 상태 전환을 나타내고, 조건을 충족할 때 트리거된다. 일 예로, 이전 처리 기간의 종료 시의 시스템 상태가 전술된 단계들을 기반으로 아이들 상태로 결정되고, 현재 처리 기간에, 선셰이드 커튼 개방 명령이 수신된 경우, 타겟 시스템 상태는 도 4에 도시된 미리 설정된 매핑 관계에 포함된 시스템 상태들 사이의 전환 관계들에 따라, R-개방 상태로 결정된다. 다른 예로, 현재 제어 명령이 유리 개방 명령이고, 선루프의 유리와 선셰이드 커튼의 위치 관계를 기반으로, 선셰이드 커튼의 개방 정도가 선루프의 유리의 개방 정도와 미리 설정된 마진의 합 이상인 것으로 결정되며, 이전 처리 기간의 종료 시에, 선셰이드 커튼의 개방 정도가 선루프의 유리의 개방 정도와 미리 설정된 마진의 합보다 더 작은, 즉, 이전 처리 기간의 종료 시의 시스템 상태가 R-개방-G-홀딩 상태인 경우, 타겟 시스템 상태는 미리 설정된 매핑 관계에 따라, G-R-개방 상태로 결정된다.
상기의 예들에서, 미리 설정된 매핑 관계는 상기의 두 가지 제어 타입들(타입 A 및 타입 B)을 기반으로 결정되고, 선셰이드 커튼의 개방 정도가 항상 선루프의 유리의 개방 정도보다 더 큰 조건을 충족함을 알 수 있다.
타입 A의 경우, 타입 A에서의 미리 설정된 매핑 관계의 아키텍처는 타입 B에서의 미리 설정된 매핑 관계의 아키텍처와 유사하다. 타입 A에서, G-개방-R-홀딩 상태 및 G-R-개방 상태는 포함되지 않으며, R-개방-G-홀딩 상태 및 G-개방 상태 사이의 전환 관계가 있다. 구체적으로, R-개방-G-홀딩 상태의 시스템이 “선셰이드 커튼이 루프의 중앙 위치에 도달했다”는 전환 조건을 충족하면, 타겟 시스템 상태는 G-개방 상태로 결정된다. 타입 A 및 타입 B에서의 다른 상태 전환들은 동일하며, 여기에서 반복되지 않는다.
실제 상황에 따르면, 다중-모터 제어 시스템의 결함들이 종종 상태 전환 순간에 나타난다. 기존 기술에 따른 제어 방법과 비교하여, 본 개시에 따른 방법에서, 처리 기간에 하나의 상태 전환만이 있고(또는, 시스템 상태 전환이 없음, 즉, 현재 시스템 상태는 타겟 시스템 상태와 동일함), 현재 시스템 상태를 결정하는 파라미터들 및 타겟 시스템 상태를 결정하는 파라미터들이 동일한 처리 기간에서 획득되고, 제어될 타겟들(예컨대, 선루프의 유리 및 선셰이드 커튼)은 독립적이고, 어떤 타겟의 제어도 이전 처리 기간의 실행 결과에 의존하지 않으며, 어떤 타겟의 동작 상태 및 위치 정보는 히스테리시스(hysteresis)없이 현재 처리 기간의 시스템 상태에 영향을 미칠 수 있다.
단계 S120에서, 타겟 제어 명령들은 타겟 시스템 상태를 기반으로 결정된다.
상기의 설명을 기반으로, 시스템 상태는 모터들의 동작 상태들을 기반으로 결정됨을 이해해야 한다. 따라서, 타겟 시스템 상태가 결정된 후에, 타겟 시스템 상태가 나타내는 모터들의 타겟 동작 상태들이 결정된다. 즉, 작동들을 수행할 모터들 및 작동들을 수행하지 않을 모터들이 결정되고, 작동들을 수행할 모터들의 각각에 대해, 모터들의 회전 방향 및 모터에 대응하는 구동 대상 엔티티가 결정된다. 이에 따라, 모터들의 각각에 대해, 타겟 제어 명령이 획득된다.
단계 S130에서, 모터들은 타겟 제어 명령들을 기반으로 작동하도록, 제어된다.
타겟 제어 명령들이 획득된 후에, 모터들이 작동하도록 제어된다. 타겟 제어 명령들이 널(null) 명령을 포함할 수 있으며, 널 명령을 수신한 모터는 어떤 작동도 수행하지 않는다는 점을 이해해야 한다.
본 개시의 실시예들의 모터 제어 방법에 따르면, 하나의 컨트롤러가 다수의 모터들에 대응하고, 시스템 상태가 모든 모터들의 동작 상태들을 나타내며, 시스템 상태들과 시스템 상태들에 대한 전환 조건들 사이의 전환 관계들을 나타내는 미리 설정된 매핑 관계가 미리 결정되고, 이로써, 컨트롤러에 의해 모터들 모두를 제어한다. 기존 기술과 비교하여, 본 개시의 모터 제어 방법에 따르면, 하드웨어적으로, 모터들 모두가 하나의 컨트롤러에 의해 제어됨으로써, 컨트롤러들의 수를 줄이고, 소프트웨어적으로, 시스템 상태가 모터들 모두의 동작 상태들을 나타내고, 미리 설정된 매핑 관계가 시스템 상태들과 시스템 상태들에 대한 전환 조건들 사이의 전환 관계들을 나타냄으로써, 모터들의 각각에 대해 독립적인 제어 프로그램을 설계할 필요가 없다. 따라서, 본 개시에 따른 모터 제어 방법에 의해, 제어 시스템의 하드웨어 비용 및 소프트웨어 개발 비용이 절감될 수 있다.
상기의 단계들이 동일한 처리 기간에서 수행된다는 점에 유의해야 한다. 즉, 다수의 처리 기간들은, 윈도우의 유리를 폐쇄된 상태에서 완전히 개방된 상태로 제어하는 것과 같이, 구동 대상 엔티티가 특정 위치로 이동하도록 제어하는 프로세스를 수행할 필요가 있다. 상기의 단계들은 예상되는 제어를 달성하기 위해 주기적으로 수행된다.
새로운 제어 명령들이 수신되기 전에, 현재 제어 명령들이 효과적으로 실행될 수 있도록 보장하기 위해, 현재 제어 명령들의 적시성(timeliness)을 제한할 필요가 있다는 점에 더 유의해야 한다. 이러한 제한은 기존 기술에 따른 방법을 기반으로 수행될 수 있으며, 본 개시에 한정되지 않는다.
모터 제어 시스템의 대부분의 적용 시나리오들에, 사람들이 참여한다. 참여자들의 안전과 모터 제어 시스템의 디바이스들의 안전을 보장하기 위해, 모터 제어 시스템에는, 긴급하게 작동을 정지하도록 모터를 제어하는 기능 및 감속하도록 모터를 제어하는 기능과 같은, 높은 우선 순위를 갖는 제어 기능이 종종 마련된다.
구체적으로, 자동차 선루프 제어 시스템에서, 선루프 핀치 방지(anti-pinch) 기능 및 모터 열 보호 기능은 높은 우선 순위를 갖는 제어 기능들이다. 선루프 핀치 방지 기능을 예로 들면, 선루프의 유리 및/또는 선셰이드 커튼이 폐쇄 명령에 응답하여 작동하는 동안, 미리 설정된 제어 로직에 따라, 사람의 손과 같은 장애물이 검출되거나, 다른 미리 설정된 트리거 조건이 충족되는 경우에, 선루프 핀치 방지 기능이 수행되어, 선루프의 유리 및/또는 선셰이드 커튼이 장애물을 손상시키는 것을 방지하고, 실행 중인 폐쇄 명령은 실행되지 않게 된다.
상기의 기능들을 수행하기 위해, 기존 기술에 따라, 모터들의 각각에 대해 독립적인 제어 로직이 설계된다. 즉, 모터들의 각각에는, 제어 모델이 마련된다. 그리고, 컨트롤러가 다수의 모터들을 작동하도록 제어하는 경우, 모터들 모두에 각각 대응하는 제어 모델들은 컨트롤러에 로딩될 필요가 있으며, 컨트롤러의 제어 알고리즘을 복잡하게 만들고, 많은 양의 코드로 컨트롤러의 저장 공간 및 기타 리소스들을 많이 차지한다. 제어 기능들이 정상적으로 수행될 수 있도록 보장하기 위해, 컨트롤러의 성능에 대한 요구 사항들이 증가되고, 설계 비용이 증가되어야 하는데, 이는 본 개시가 속하는 기술분야에서 통상의 지식을 가진 사람에게 명백히 바람직하지 않다. 또한, 제어 모델의 일부 서브-기능들은 결함들로 인해 업그레이드 및 수정될 수 있다. 전체 제어 모델의 코드들은 전체적으로 편집되기 때문에, 일부 기능들의 개선은 전체 제어 모델이 그에 따라 수정되어, 제어 모델의 업그레이드, 유지 관리(maintenance) 및 플랫폼화(platformization)에 영향을 미치고, 결과적으로 엄청난 워크로드(workload)가 야기된다.
선루프 핀치 방지 기능 및 모터 열 보호 기능과 같이, 높은 우선 순위를 갖는 제어 기능들은 독립적인 모터들에 개별적으로 적용되지만, 제어 모델들에 대한 제어 로직들은 동일하고, 모터들에 의해 수행되는 제어 기능들은 동일하며, 상이한 파라미터들을 구성할 필요만이 있다(즉, 제어 객체들(objects)이 상이함)는 것이 확인된다. 이를 기반으로, 본 개시의 다른 실시예에 따른 모터 제어 방법이 제공된다.
상기의 실시예들을 기반으로, 미리 설정된 마스터 제어 모델이 미리 설정된 주기(period)로 호출되고, 마스터 제어 모델의 미리 설정된 입력 파라미터에 할당될 값이 획득되고, 획득된 값이 미리 설정된 입력 파라미터에 할당되어, 모터들에 각각 대응하는 기능 제어 명령들을 출력하도록 마스터 제어 모델을 제어하고, 전체 제어 명령이 기능 제어 명령들 및 타겟 제어 명령들을 기반으로 획득되어, 전체 제어 명령을 기반으로 작동하도록 모터들의 각각을 제어한다.
일 실시예에서, 기능 제어 명령들 및 타겟 제어 명령들을 기반으로 전체 제어 명령을 획득할 때, 우선 순위가 명령들의 각각에 대해 미리 설정될 수 있고, 높은 우선 순위를 갖는 명령이 전체 제어 명령으로서 선택될 수 있다.
마스터 제어 모델에 의해 수행되는 제어 기능들은 일반적으로 높은 우선 순위들을 갖고, 마스터 제어 모델이 제어 기능들을 수행하기 위해 정기적으로 호출된다는 것이 보장되는 한, 마스터 제어 모델이 호출되는 미리 설정된 주기는 상기의 실시예들에 따른 제어 방법이 수행되는 기간 보다 더 길 수 있음에 유의해야 한다. 게다가, 본 개시의 일 실시예에 따른 마스터 제어 모델은 제어 시스템의 모터들의 각각의 제어 기능에 대응하는 제어 모델이다. 즉, 모터들의 각각은 제어 기능을 수행하도록 마스터 제어 모델을 호출한다.
일 실시예에서, 본 개시의 일 실시예에 따른 모터 제어 방법에서 마스터 제어 모델의 아키텍처를 도시하는 개략도인 도 5를 참조한다. 도 5는 마스터 제어 모델의 전체 아키텍처를 도시하고 있다. 마스터 제어 모델은 다수의 참조 모델들을 포함하고, 참조 모델들은 모터들에 일대일로 대응하는 것을 알 수 있다. 본 개시의 일 실시예에서, 서브-제어 모델이 제공된다. 참조 모델들의 각각은 호출에 의해 서브-제어 모델과 연관된다. 서브-제어 모델은 다수의 연관 인터페이스들을 포함하고, 연관 인터페이스들은 서브-기능 모델들에 일대일로 대응하며, 서브-기능 모델들은 기능 제어 명령들을 수행한다. 아키텍처를 기반으로, 마스터 제어 모델이 호출된 후에, 마스터 제어 모델의 모든 참조 모델들이 순회되며(traversed), 참조 모델들의 각각은 서브-제어 모델을 호출한다. 마스터 제어 모델의 미리 설정된 입력 파라미터는 모든 참조 모델들의 입력 파라미터들을 포함하는 세트이다. 마스터 제어 모델의 미리 설정된 입력 파라미터에 값을 할당하는 것은 참조 모델들의 각각에 의해 호출되는 서브-제어 모델의 입력 파라미터에 값을 할당하는 것을 나타낸다. 서브-제어 모델은 서브-기능 모델에 대응하는 기능 제어 명령을 획득하기 위해, 서브-기능 모델을 호출한다. 도 5에서, 타겟 A, 타겟 B, …, 타겟 M, 연관 인터페이스 1, 연관 인터페이스 2, …, 연관 인터페이스 L, 및 서브-기능 모델 1, 서브-기능 모델 2, …, 서브-기능 모델 L은 모두 예시이다. 실제 적용들에서, 타겟의 수와 식별자, 연관 인터페이스의 수와 식별자, 및 서브-기능 모델의 수와 식별자는 실제 요구 사항들에 따라 결정된다.
마스터 제어 모델을 구성하기 전에, 설계자는 마스터 제어 모델에 의해 수행될 제어 기능들을 명확히 알고 있다. 마스터 제어 모델을 구성할 때, 먼저 마스터 제어 모델에 의해 수행될 제어 기능들을 기반으로 서브-기능 모델들을 구성할 필요가 있다. 자동차 윈도우 제어 시스템의 윈도우 핀치 방지 기능을 예로 들면, 윈도우 핀치 방지 기능을 수행하기 위해서는, 적어도 다음의 서브-기능 모델들이 필요하다: 핀치 방지 영역 결정 서브-기능 모델, 위치 추출 서브-기능 모델, 전압 변동 검출 서브-기능 모델, 학습 및 초기화 서브-기능 모델, 임계값 선택 서브-기능 모델, 및 핀치 방지 힘 계산 서브-기능 모델이 포함된다. 서브-기능 모델들의 각각은 시스템의 기본 기능 단위(basic function unit)로 이해될 수 있다. 서브-기능 모델에 대응하는 기능은, 서브-기능 모델에 대응하는 프로그램 코드를 실행함으로써, 수행된다.
필요한 서브-기능 모델들이 구성된 후에, 서브-제어 모델을 구성할 필요가 있다. 서브-제어 모델은 단일 제어 타겟(즉, 모터)에 대한 제어 모델로 이해될 수 있다. 기존 기술과 달리, 본 개시의 방법에 따르면, 제어 타겟들의 각각에 대해 서브-제어 모델을 구성할 필요가 없으며, 모든 제어 타겟들의 공통 제어 기능들이 서브-제어 모델에 통합되어 있다. 제어 타겟들의 각각은 서브-제어 모델을 호출할 수 있다. 즉, 서브-제어 모델은 제어 타겟들에 의해 공유된다. 서브-제어 모델은 다수의 연관 인터페이스들을 포함하고, 연관 인터페이스들은 서브-기능 모델들에 일대일로 대응한다.
실제로 구성된 연관 인터페이스의 수는 실제로 연관된 서브-기능 모델의 수보다 많을 수 있다는 점에 유의해야 한다. 프로그램을 업그레이드하거나 새로운 서브-기능 모델을 추가하는 후속 프로세스에서, 연관 인터페이스와 새로운 서브-기능 모델 사이의 호출 관계가 새로운 연관 인터페이스를 구성하지 않고 직접 설정된다. 연관 인터페이스들을 기반으로, 서브-기능 모델들의 각각과 서브-제어 모델은 호출 관계를 갖고, 서브-제어 모델은 서브-기능 모델들의 각각에 대응하는 코드들을 포함하지 않는다. 따라서, 서브-기능 모델을 업데이트하거나 서브-기능 모델에 대응하는 코드들을 조정하는 경우, 다른 서브-기능 모델들을 변경하지 않고, 연관 인터페이스를 사용하여 서브-제어 모델과 서브-기능 모델 사이의 호출 관계를 해제할 필요만이 있어, 서브-기능 모델의 업그레이드 및 조정이 용이해진다.
명확하게, 연관 인터페이스는 배치될 수 없다. 서브-제어 모델은 서브-기능 모델의 기능을 수행하도록, 서브-기능 모델을 직접 호출할 수 있다.
서브-제어 모델을 획득한 후에, 마스터 제어 모델이 구성될 수 있다. 마스터 제어 모델은 다수의 참조 모델들의 세트로 이해될 수 있다. 모터들의 수에 따르면, 대응하는 수의 참조 모델들이 마스터 제어 모델에 구성되고, 참조 모델들의 각각은 동일한 서브-제어 모델과 연관된다. 이에 따라, 마스터 제어 모델이 구성된다.
마스터 제어 모델의 참조 모델들과 서브-제어 모델 사이의 관계들은 서브-제어 모델과 서브-기능 모델들 사이의 관계들과 유사하다는 것을 이해해야 하며, 여기에서 반복되지 않는다.
일 실시예에서, 본 개시의 일 실시예에 따른 모터 제어 방법에서 서브-제어 모델의 아키텍처를 도시하는 개략도(윈도우 핀치 방지 제어 기능을 예로 취함)인 도 6을 참조한다. 서브-제어 모델에서, N 개의 입력 파라미터들과 N 개의 출력 파라미터들이 구성된다. N 개의 입력 파라미터들은 제어 기능들을 수행하기 위해 수신될 필요가 있는 파라미터들이다. N 개의 출력 파라미터들은 모터 구성 모델과 같은 외부 모델과의 연결(프로그램에서, 출력 파라미터들은 모델들 사이의 호출 관계를 실현하기 위해 다른 제어 모델의 입력 파라미터들로 사용될 수 있음)을 위해 사용된다. 따라서, 서브-제어 모델의 출력 파라미터들은 기능적인(functional) 제어 명령들로 이해될 수 있다. 구체적으로, 서브-제어 모델의 출력 파라미터들은 구동 회로로 직접 출력되는 실행 가능한 명령들일 수 있다. 명확하게는, 서브-제어 모델의 출력 파라미터들은 제어 모델을 호출하거나 트리거하기 위해 다른 제어 모델로 입력되는 중간(intermediate) 파라미터들일 수 있다.
도 6에 도시된 바와 같이, 서브-제어 모델을 구성하기 위해 필요한 미리 설정된 입력 파라미터들이 서브-기능 모델들을 기반으로 결정되며, 서브-제어 모델의 입력 파라미터들은 모든 서브-기능 모델들의 입력 파라미터들을 포함한다. 서브-기능 모델들 사이에 미리 설정된 파라미터 호출 관계들이 있다. 호출 관계들은 설계의 시작 시에 설계자에 의해 미리 결정된다. 호출 관계들에 대해 기존 기술이 참조될 수 있으며, 여기에서 반복되지 않는다. 서브-기능 모델들의 각각은 출력 파라미터를 갖는다. 일부 서브-기능 모델들의 출력 파라미터들은 서브-제어 모델에서만 호출되며, 일부 서브-기능 모델들의 출력 파라미터들이 결국 출력된다.
도 6에 도시된 서브-제어 모델에서, 연관 인터페이스들 사이의 미리 설정된 호출 관계들(정보 전송 관계들로 이해될 수 있음)은 실제로 연관 인터페이스들과 연관된 서브-기능 모델들 사이의 호출 관계들임에 유의해야 한다. 사실 상, 연관 인터페이스들은 직접적인 호출 관계를 갖지 않고, 서로에 독립적이다. 연관 인터페이스들은 서브-기능 모델들을 호출하기 위해 서브-제어 모델에 의해 사용된다. 도 6은 서브-기능 모델들 사이의 호출 관계를 보여주기 위해, 연관 인터페이스들 사이의 호출 관계들을 도시하고 있다.
일 실시예에서, 상이한 모터들에 대해, 입력 파라미터와 출력 파라미터는 상이할 수 있다. 모델을 구성할 때 상이한 모터들의 파라미터들을 식별하기 위해, 어레이(array)가 사용될 수 있다. 어레이의 디멘션(dimension)은 하기 수학식에 표현된 바와 같이, 모터들의 수와 동일하다.
Figure 112021065289467-pct00001
일 실시예에서, 서브-제어 모델을 호출하는 참조 모델들을 식별하기 위해, 서브-제어 모델의 입력 파라미터들은 서브-제어 모델에 의해 상이한 파라미터들을 선택하기 위해, 타겟 A, 타겟 B, 및 타겟 M과 같이 모터를 지시하기 위한 적어도 하나의 입력 파라미터를 포함한다.
일 실시예에서, 본 개시의 일 실시예에 따른 모터 제어 방법에서 마스터 제어 모델의 입력들 및 출력들을 도시하는 개략도인 도 7을 참조한다. 도 7에서, 입력은 입력 파라미터를 나타내고, 입력 1 내지 입력 N은 N 개의 입력 파라미터들을 나타내고, 출력은 출력 파라미터를 나타내고, 출력 1 내지 출력 N은 N 개의 출력 파라미터들을 나타내며, A 내지 M은 M 개의 참조 모델들을 나타낸다. 상기의 참조 부호들의 조합은 어떤 참조 모델의 어떤 입력 파라미터 또는 어떤 출력 파라미터를 나타낼 수 있다. 예를 들어, A_입력_1은 참조 모델 A의 입력 파라미터 1을 나타내고, A_출력_1은 참조 모델 A의 출력 파라미터 1을 나타낸다. 상기의 설명을 기반으로, 참조 모델들의 각각은 서브-제어 모델을 호출하고, 그에 따라 참조 모델들의 각각의 입력 파라미터들 및 서브-제어 모델의 입력 파라미터들이 구성된다는 것을 이해해야 한다. 서브-제어 모델은 미리 설정된 입력 파라미터를 기반으로 참조 모델들을 식별한다. 도 5 및 도 7을 참조하면, 마스터 제어 모델은 다수의 참조 모델들을 포함하고, 따라서, 마스터 제어 모델의 미리 설정된 입력 파라미터는 다수의 참조 모델들의 입력 파라미터들의 세트이고, 마스터 제어 모델들의 미리 설정된 출력 파라미터들은 참조 모델들의 출력 파라미터들이다(실제 적용에서, 마스터 제어 모델의 미리 설정된 출력 파라미터들은 서브-기능 모델들의 출력 파라미터들임).
도 7을 참조하면, 도 5에 도시된 마스터 제어 모델이 구성된 후에, 서브-제어 모델이 서브-기능으로 간주될 수 있다. 서브-기능의 경우, 형식적인(formal) 파라미터들은 서브-제어 모델의 입력 파라미터들이고, 실제 파라미터들은 도 7에 도시된 실제로 입력된 파라미터들이며, 실행 결과는 도 7에 도시된 출력 파라미터들이다.
본 개시의 실시예들에 따른 모터 제어 방법에서, 상이한 모터들에 의해 수행될 동일한 제어 기능들이 모듈식으로(modularly) 설계된다. 제어 기능들의 각각은 서브-기능 모델에 대응하고, 다수의 서브-기능 모델들은 서브-제어 모델에 의해 제어되며, 모터에 대응하는 참조 모델은 제어 기능을 수행하도록 서브-제어 모델을 호출한다. 모터들의 각각에 대해 서브-제어 모델 및 서브-기능 모델들을 구성하지 않고, 참조 모델을 호출할 때, 참조 모델의 입력 파라미터들이 서브-제어 모델에 의해 제어되는 서브-기능 모델에 입력되고, 이로써, 서브-기능 모델에 대응하는 제어 기능을 수행한다. 따라서, 본 개시에 따른 방법에 의해, 제어 프로그램의 총 코드 량이 크게 감소되어, 컨트롤러의 성능에 대한 요구 사항이 감소되고, 이로써, 설계 비용이 절감된다.
또한, 서브-기능 모델들의 각각은 제어 기능을 수행할 수 있기 때문에, 제어 기능을 업그레이드하거나 수정할 때, 제어 기능과 관련되지 않은 다른 서브-기능 모델들에 대한 작동들을 수행하지 않고 제어 기능에 대응하는 서브-기능 모델을 업그레이드하거나 수정할 필요만이 있으며, 이로써, 제어 알고리즘의 유지 및 관리가 단순해지고, 유지 관리 인력의 워크로드가 감소된다.
일 실시예에서, 모터 제어 시스템은 적어도 두 개의 모터들을 포함하고, 모터들의 각각은 구동 대상 엔티티에 대응한다. 구동 대상 엔티티들은 상이할 수 있기 때문에, 구동 대상 엔티티들의 특징들을 기반으로, 상이한 로직 분기들(logic branches)을 구성할 필요가 있다. 로직 분기는 모터들의 각각 또는 구동 대상 엔티티들의 각각에 대해 개별적으로 미리 설정된 식별 번호(예컨대, 일련 번호 또는 미리 설정된 코드)로 선택된다. 모터들에 대해 개별적으로 타겟 제어 명령들을 획득한 후에, 모터들에 각각 대응하는 로직 분기들이 선택되며, 타겟 제어 명령들이 수행된다.
일 실시예에서, 본 개시의 실시예들에 따른 모터 제어 방법에서, 타겟 제어 명령들을 획득한 후에, 모터들에 의해 수행될 기능들 중 일부에 대응하는 타겟 기능 모델이 타겟 제어 명령들을 필터링하도록 호출되어, 필터링된 타겟 제어 명령들을 기반으로 작동하도록 모터들을 제어한다. 예를 들어, 자동차 윈도우 제어 시스템에서, 진단(diagnostic) 기능 모델이 모터들의 각각에 의해 호출될 수 있다. 그러나, 진단 기능 모델의 홀 파워(Hall Power) 결합 진단 기능은 슬레이브 모터에 대해서만 수행된다.
타겟 기능 모델은 획득된 타겟 제어 명령들을 필터링하도록 호출될 수 있고, 타겟 기능 모델은 기능 제어 명령들과 타겟 제어 명령들을 비교함으로써 획득되는 총 제어 명령을 필터링하도록 호출될 수 있다는 것에 유의해야 한다.
이하에서, 본 개시의 일 실시예에 따른 모터 제어 장치가 설명된다. 후술되는 모터 제어 장치는 본 개시의 실시예들에 따른 모터 제어 방법을 구현하기 위해 컨트롤러에 구성된 기능적 모듈 아키텍처로 간주될 수 있다. 다음의 설명은 상기의 설명과 상호 참조될 수 있다.
일 실시예에서, 본 개시의 일 실시예에 따른 모터 제 장치의 개략적인 구조도인 도 8을 참조한다. 장치는 제1 획득 유닛(10), 제1 결정 유닛(20), 제2 결정 유닛(30), 및 제1 제어 유닛(40)을 포함한다. 제1 획득 유닛은 현재 제어 명령들, 구동 대상 엔티티들의 위치 관계, 및 이전 처리 기간의 종료 시의 시스템 상태를 획득하도록 구성되고, 여기서, 이전 처리 기간의 종료 시의 시스템 상태는 이전 처리 기간의 종료 시의 모터들의 동작 상태들을 나타낸다. 제1 결정 유닛(20)은 미리 설정된 매핑 관계, 구동 대상 엔티티들의 위치 관계, 및 현재 제어 명령들을 기반으로, 이전 처리 기간의 종료 시의 시스템 상태에 대응하는 타겟 시스템 상태를 결정하도록 구성되고, 여기서, 미리 설정된 매핑 관계는 시스템 상태들과 시스템 상태들에 대한 전환 조건들 사이의 전환 관계들을 나타낸다. 제2 결정 유닛(30)은 타겟 시스템 상태를 기반으로, 타겟 제어 명령들을 결정하도록 구성된다. 제1 제어 유닛(40)은 타겟 제어 명령들을 기반으로 작동하도록, 모터들을 제어하도록 구성된다.
일 실시예에서, 본 개시의 다른 실시예에 따른 모터 제어 장치의 개략적인 구조도인 도 9를 참조한다. 도 8에 도시된 실시예를 기반으로, 장치는 제1 호출 유닛(50), 제2 획득 유닛(60), 할당 유닛(70), 및 제2 제어 유닛(80)을 더 포함한다. 제1 호출 유닛(50)은 미리 설정된 마스터 제어 모델을 호출하도록 구성된다. 제2 획득 유닛(60)은 마스터 제어 모델의 미리 설정된 입력 파라미터에 할당될 값을 획득하도록 구성된다. 할당 유닛(70)은 모터들에 각각 대응하는 기능 제어 명령들을 출력하도록 마스터 제어 모델을 제어하기 위해, 미리 설정된 입력 파라미터에 값을 할당하도록 구성된다. 제2 제어 유닛(80)은 기능 제어 명령들 및 타겟 제어 명령들을 기반으로 전제 제어 명령을 획득하여, 전체 제어 명령을 기반으로 작동하도록, 모터들의 각각을 제어하도록 구성된다.
일 실시예에서, 마스터 제어 모델은 참조 모델들을 포함하고, 참조 모델들은 모터들에 일대일로 대응하고, 미리 설정된 입력 파라미터는 참조 모델들 모두의 입력 파라미터들을 포함하는 세트이고, 참조 모델들 모두는 서브-제어 모델과 연관되고, 마스터 제어 모델은 할당된 값의 미리 설정된 입력 파라미터를 기반으로 기능 제어 명령들을 출력하도록, 서브-제어 모델을 호출하며, 서브-제어 모델은 기능 제어 명령들을 획득하기 위해 필요한 서브-기능 모델들을 포함한다.
일 실시예에서, 서브-제어 모델은 서브-기능 모델들을 호출하기 위해 다수의 연관 인터페이스들과 함께 배치되고, 연관 인터페이스들은 서브-기능 모델들에 일대일로 대응한다.
일 실시예에서, 본 개시의 다른 실시예에 따른 모터 제어 장치의 개략적인 구조도인 도 10을 참조한다. 도 8에 도시된 일 실시예를 기반으로, 장치는 제2 호출 유닛(90)을 더 포함한다. 제2 호출 유닛(90)은 타겟 제어 명령들을 필터링하도록 타겟 기능 모델을 호출하여, 필터링된 타겟 제어 명령들을 기반으로 작동하도록, 모터들을 제어하도록 구성되며, 여기서, 타겟 기능 모델은 모터들에 의해 수행될 기능들 중 일부를 수행하도록 구성된다.
일 실시예에서, 본 개시에 따른 모터 제어 디바이스가 제공된다. 디바이스는 메모리 및 프로세서를 포함한다. 메모리는 프로세서를 위해 실행 가능한 프로그램을 저장한다. 프로그램은, 프로세서에 의해 실행될 때, 프로세서로 하여금 본 개시의 실시예들 중 어느 하나에 따른 모터 제어 방법을 수행하게 한다.
일 실시예에서, 본 개시에 따른 프로그램을 저장하는 저장 매체가 제공된다. 프로그램은, 프로세서에 의해 실행될 때, 프로세서로 하여금 본 개시의 실시예들 중 어느 하나에 따른 모터 제어 방법을 수행하게 한다.
일 실시예에서, 본 개시에 따른 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 프로그램 제품은 비일시적 컴퓨터 판독 가능 저장 매체에 저장되는 컴퓨터 프로그램을 포함한다. 컴퓨터 프로그램은 프로그램 명령어들을 포함한다. 프로그램 명령어들은, 컴퓨터에 의해 실행될 때, 컴퓨터로 하여금 본 개시의 실시예들 중 어느 하나에 따른 모터 제어 방법을 수행하게 한다.
본 명세서의 실시예들은 점진적으로 설명되고, 실시예들의 각각은 서로의 차이점들을 강조하며, 실시예들 사이에서 동일하거나 유사한 부분들은 서로 참조될 수 있다. 실시예들에 개시된 장치는 그들의 방법에 대응하기 때문에, 그에 대한 설명은 비교적 간단하며, 관련 사항들에 대해서는, 방법의 설명을 참조할 수 있다.
본 개시가 속하는 기술분야에서 통상의 지식을 가진 사람이라면 여기에 개시된 실시예들과 관련하여 설명된 각 예의 유닛들 및 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 조합에 의해 실현될 수 있음을 알 수 있다. 하드웨어와 소프트웨어의 호환성을 명확하게 설명하기 위해, 각 실시예의 단계들 및 구성은 상기의 명세서의 기능들을 고려하여 대체로 설명되었다. 기능이 하드웨어 방식으로 실행되는지 또는 소프트웨어 방식으로 실행되는지는 기술적 해결 수단 및 설계 제약 조건의 적용에 따라 다르다. 본 개시가 속하는 기술분야에서 통상의 지식을 가진 사람은 설명된 기능을 실현하기 위해 각 적용에 대해 상이한 방법을 사용할 수 있으며, 이는 적용의 범위를 벗어나는 것으로 간주되지 않는다.
본 개시의 실시예들과 관련하여 설명된 방법들 또는 알고리즘들의 단계들은 하드웨어, 프로세서에 의해 실행되는 소프트웨어 모듈들, 또는 이들의 조합으로 구현될 수 있다. 소프트웨어 모듈들은 RAM(random access memory), 내부 메모리, ROM(read only memory), 전기(electric) 프로그램 가능 ROM, 전기-삭제 가능(electric-erasable) 프로그램 가능 ROM, 레지스터, 하드 디스크, 이동식 디스크 드라이브, CD-ROM, 또는 본 개시가 속하는 기술분야에서 잘 알려진 다른 유형들의 저장 매체 내에 있을 수 있다.
개시된 실시예들에 대한 상기의 설명에 따르면, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 사람은 본 개시를 구현하거나 실시할 수 있다. 실시예들에 대한 다양한 수정들이 본 개시가 속하는 기술분야에서 통상의 지식을 가진 사람에게 명백하다. 여기에 정의된 일반적인 원리들은 본 개시의 범위를 벗어나지 않고 다른 실시예에서 구현될 수 있다. 따라서, 본 개시는 여기에 개시된 실시예들로 제한되지 않고, 여기에 개시된 원리들 및 신규한 특징들에 따라 가장 넓은 범위를 따른다.

Claims (10)

  1. 모터(motor) 제어 시스템의 컨트롤러(controller)에 적용되는 모터 제어 방법에 있어서,
    상기 모터 제어 시스템은 하나의 컨트롤러 및 적어도 두 개의 모터들을 포함하고,
    상기 모터들의 각각은 구동 대상 엔티티(to-be-driven entity)를 구동시키며,
    상기 방법은,
    현재 제어 명령들, 구동 대상 엔티티들의 위치 관계(positional relationship), 및 이전 처리 기간(previous processing period)의 종료 시의 시스템 상태(state)를 획득하는 단계 - 상기 이전 처리 기간의 종료 시의 상기 시스템 상태는 상기 이전 처리 기간의 종료 시의 상기 모터들의 동작(motion) 상태들을 나타내고, 상기 모터들의 동작 상태들은 상기 모터들의 각각이 작동 중(in operation)인지 여부 및 상기 모터들의 각각이 앞으로 회전하는지 또는 뒤로 회전하는지 여부를 나타냄 -;
    미리 설정된 매핑 관계(mapping relationship), 상기 구동 대상 엔티티들의 상기 위치 관계, 및 상기 현재 제어 명령들을 기반으로, 상기 이전 처리 기간의 종료 시의 상기 시스템 상태에 대응하는 타겟(target) 시스템 상태를 결정하는 단계 - 상기 미리 설정된 매핑 관계는 시스템 상태들과 상기 시스템 상태들에 대한 전환 조건들(transition conditions) 사이의 전환 관계들을 나타냄 -;
    상기 타겟 시스템 상태를 기반으로, 타겟 제어 명령들을 결정하는 단계; 및
    상기 타겟 제어 명령들을 기반으로 작동하도록, 상기 모터들을 제어하는 단계
    를 포함하고,
    상기 컨트롤러는 상기 모터들 중 하나와 함께 직접 배치되거나 또는 상기 모터들 중 어느 것과도 직접 연결되지 않고,
    상기 컨트롤러가 상기 모터들 중 하나와 함께 직접 배치될 때, 상기 컨트롤러에 직접 연결된 모터와 상기 컨트롤러는 마스터로서 역할하고, 상기 컨트롤러에 직접 연결된 모터는 마스터 모터가 되고, 나머지 모터들의 각각은 와이어 하니스를 통해 상기 컨트롤러에 연결되며 슬레이브 모터가 되고,
    상기 컨트롤러가 상기 모터들 중 어느 것과도 직접 연결되지 않을 때, 상기 컨트롤러는 마스터로서 역할하고, 상기 모터들의 각각은 와이어 하니스를 통해 상기 컨트롤러에 연결되며 슬레이브 모터로서 역할하는,
    모터 제어 방법.
  2. 제1 항에 있어서,
    미리 설정된 마스터 제어 모델(master control model)을 호출하는 단계;
    상기 마스터 제어 모델의 미리 설정된 입력 파라미터에 할당될 값을 획득하는 단계;
    상기 모터들에 각각 대응하는 기능(function) 제어 명령들을 출력하도록 상기 마스터 제어 모델을 제어하기 위해, 상기 미리 설정된 입력 파라미터에 상기 값을 할당하는 단계; 및
    상기 기능 제어 명령들 및 상기 타겟 제어 명령들을 기반으로 전체(total) 제어 명령을 획득하여, 상기 전체 제어 명령을 기반으로 작동하도록 상기 모터들의 각각을 제어하는 단계
    를 더 포함하는,
    모터 제어 방법.
  3. 제2 항에 있어서,
    상기 마스터 제어 모델은 참조 모델들(reference models)을 포함하고,
    상기 참조 모델들은 상기 모터들에 일대일로 대응하고,
    상기 미리 설정된 입력 파라미터는 상기 참조 모델들 모두의 입력 파라미터들을 포함하는 세트(set)이고,
    상기 참조 모델들 모두는 서브-제어 모델(sub-control model)과 연관되고,
    상기 마스터 제어 모델은 상기 할당된 값의 상기 미리 설정된 입력 파라미터를 기반으로 상기 기능 제어 명령들을 출력하도록, 상기 서브-제어 모델을 호출하며,
    상기 서브-제어 모델은 상기 기능 제어 명령들을 획득하기 위한 서브-기능 모델들을 포함하는,
    모터 제어 방법.
  4. 제3 항에 있어서,
    상기 서브-제어 모델은 상기 서브-기능 모델들을 호출하기 위해 복수의 연관 인터페이스들과 함께 배치되고,
    상기 연관 인터페이스들은 상기 서브-기능 모델들에 일대일로 대응하는,
    모터 제어 방법.
  5. 제1 항에 있어서,
    상기 방법은,
    상기 타겟 제어 명령들을 기반으로 작동하도록 상기 모터들을 제어하는 단계 전에,
    상기 타겟 제어 명령들을 필터링하여, 상기 필터링된 타겟 제어 명령들을 기반으로 작동하도록 상기 모터들을 제어하기 위해, 타겟 기능 모델을 호출하는 단계
    를 더 포함하고,
    상기 타겟 기능 모델은 상기 모터들에 의해 수행될 기능들 중 일부를 수행하는,
    모터 제어 방법.
  6. 모터 제어 시스템의 컨트롤러에 적용되는 모터 제어 장치에 있어서,
    상기 모터 제어 시스템은 하나의 컨트롤러 및 적어도 두 개의 모터들을 포함하고,
    상기 모터들의 각각은 구동 대상 엔티티를 구동시키며,
    상기 장치는,
    현재 제어 명령들, 구동 대상 엔티티들의 위치 관계, 및 이전 처리 기간의 종료 시의 시스템 상태를 획득하도록 구성되는 제1 획득 유닛 - 상기 이전 처리 기간의 종료 시의 상기 시스템 상태는 상기 이전 처리 기간의 종료 시의 상기 모터들의 동작 상태들을 나타내고, 상기 모터들의 동작 상태들은 상기 모터들의 각각이 작동 중(in operation)인지 여부 및 상기 모터들의 각각이 앞으로 회전하는지 또는 뒤로 회전하는지 여부를 나타냄 -;
    미리 설정된 매핑 관계, 상기 구동 대상 엔티티들의 상기 위치 관계, 및 상기 현재 제어 명령들을 기반으로, 상기 이전 처리 기간의 종료 시의 상기 시스템 상태에 대응하는 타겟 시스템 상태를 결정하도록 구성되는 제1 결정 유닛 - 상기 미리 설정된 매핑 관계는 시스템 상태들과 상기 시스템 상태들에 대한 전환 조건들 사이의 전환 관계들을 나타냄 -;
    상기 타겟 시스템 상태를 기반으로, 타겟 제어 명령들을 결정하도록 구성되는 제2 결정 유닛; 및
    상기 타겟 제어 명령들을 기반으로 작동하도록, 상기 모터들을 제어하도록 구성되는 제1 제어 유닛
    을 포함하고,
    상기 컨트롤러는 상기 모터들 중 하나와 함께 직접 배치되거나 또는 상기 모터들 중 어느 것과도 직접 연결되지 않고,
    상기 컨트롤러가 상기 모터들 중 하나와 함께 직접 배치될 때, 상기 컨트롤러에 직접 연결된 모터와 상기 컨트롤러는 마스터로서 역할하고, 상기 컨트롤러에 직접 연결된 모터는 마스터 모터가 되고, 나머지 모터들의 각각은 와이어 하니스를 통해 상기 컨트롤러에 연결되며 슬레이브 모터가 되고,
    상기 컨트롤러가 상기 모터들 중 어느 것과도 직접 연결되지 않을 때, 상기 컨트롤러는 마스터로서 역할하고, 상기 모터들의 각각은 와이어 하니스를 통해 상기 컨트롤러에 연결되며 슬레이브 모터로서 역할하는,
    모터 제어 장치.
  7. 제6 항에 있어서,
    미리 설정된 마스터 제어 모델을 호출하도록 구성되는 제1 호출 유닛;
    상기 마스터 제어 모델의 미리 설정된 입력 파라미터에 할당될 값을 획득하도록 구성되는 제2 획득 유닛;
    상기 모터들에 각각 대응하는 기능 제어 명령들을 출력하도록 상기 마스터 제어 모델을 제어하기 위해, 상기 미리 설정된 입력 파라미터에 상기 값을 할당하도록 구성되는 할당 유닛; 및
    상기 기능 제어 명령들 및 상기 타겟 제어 명령들을 기반으로 전체 제어 명령을 획득하여, 상기 전체 제어 명령을 기반으로 작동하도록, 상기 모터들의 각각을 제어하도록 구성되는 제2 제어 유닛
    을 더 포함하는,
    모터 제어 장치.
  8. 제7 항에 있어서,
    상기 마스터 제어 모델은 참조 모델들을 포함하고,
    상기 참조 모델들은 상기 모터들에 일대일로 대응하고,
    상기 미리 설정된 입력 파라미터는 상기 참조 모델들 모두의 입력 파라미터들을 포함하는 세트이고,
    상기 참조 모델들 모두는 서브-제어 모델과 연관되고,
    상기 마스터 제어 모델은 상기 할당된 값의 상기 미리 설정된 입력 파라미터를 기반으로 상기 기능 제어 명령들을 출력하도록, 상기 서브-제어 모델을 호출하며,
    상기 서브-제어 모델은 상기 기능 제어 명령들을 획득하기 위한 서브-기능 모델들을 포함하는,
    모터 제어 장치.
  9. 제8 항에 있어서,
    상기 서브-제어 모델은
    상기 서브-제어 모델은 상기 서브-기능 모델들을 호출하기 위해 복수의 연관 인터페이스들과 함께 배치되고,
    상기 연관 인터페이스들은 상기 서브-기능 모델들에 일대일로 대응하는,
    모터 제어 장치.
  10. 제6 항에 있어서,
    상기 타겟 제어 명령들을 필터링하여, 상기 필터링된 타겟 제어 명령들을 기반으로 작동하도록 상기 모터들을 제어하기 위해, 타겟 기능 모델을 호출하도록 구성되는 제2 호출 유닛
    을 더 포함하고,
    상기 타겟 기능 모델은 상기 모터들에 의해 수행될 기능들 중 일부를 수행하는,
    모터 제어 장치.
KR1020217017358A 2019-01-28 2019-08-30 모터 제어 방법 및 디바이스 KR102544829B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910079629.2 2019-01-28
CN201910079629.2A CN109889106B (zh) 2019-01-28 2019-01-28 一种电机控制方法及装置
PCT/CN2019/103641 WO2020155621A1 (zh) 2019-01-28 2019-08-30 一种电机控制方法及装置

Publications (2)

Publication Number Publication Date
KR20210090662A KR20210090662A (ko) 2021-07-20
KR102544829B1 true KR102544829B1 (ko) 2023-06-16

Family

ID=66926962

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217017358A KR102544829B1 (ko) 2019-01-28 2019-08-30 모터 제어 방법 및 디바이스

Country Status (5)

Country Link
US (1) US11563391B2 (ko)
EP (1) EP3920404A4 (ko)
KR (1) KR102544829B1 (ko)
CN (1) CN109889106B (ko)
WO (1) WO2020155621A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109889106B (zh) * 2019-01-28 2021-11-23 北京经纬恒润科技股份有限公司 一种电机控制方法及装置
CN113176736A (zh) * 2021-04-13 2021-07-27 宁波奥克斯电气股份有限公司 一种集中式驱动装置共享控制方法以及集中式驱动装置
CN115113554A (zh) * 2021-12-06 2022-09-27 长城汽车股份有限公司 联动控制方法、联动控制装置及车辆
CN116880340B (zh) * 2023-09-07 2023-12-29 深圳金亚太科技有限公司 基于工业物联网的控制终端

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103953245A (zh) * 2014-04-25 2014-07-30 上海大众汽车有限公司 汽车天窗控制系统及其控制方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5239247A (en) * 1992-06-17 1993-08-24 Cincinnati Milacron Reconfigurable master-slave control
US7067996B2 (en) * 2003-06-20 2006-06-27 Asmo Co., Ltd. Open-and-close control system for openable apparatus
CN202280346U (zh) * 2011-09-29 2012-06-20 鲁文杰 一种电动开窗器同步控制系统
CN106411186B (zh) * 2015-08-13 2018-11-20 中山大洋电机股份有限公司 一种多电机系统及其控制方法和应用其的冰柜及控制方法
CN105730389B (zh) * 2016-03-16 2018-11-20 江苏日盈电子股份有限公司 基于速度检测的电动天窗自适应防夹方法
CN106627064A (zh) * 2016-12-13 2017-05-10 大陆汽车电子(长春)有限公司 用于控制车辆的天窗的装置及其方法
CN206983690U (zh) * 2017-07-18 2018-02-09 北京经纬恒润科技有限公司 一种天窗控制装置及整车控制装置
CN108032718A (zh) * 2017-07-18 2018-05-15 北京经纬恒润科技有限公司 一种天窗控制方法及系统
CN108288928B (zh) * 2018-02-12 2019-11-19 北京经纬恒润科技有限公司 一种电动机控制方法、装置及系统
CN207884519U (zh) * 2018-03-01 2018-09-18 弘允新能源(上海)有限公司 一种纯电动汽车四合一体电机控制器
CN109889106B (zh) * 2019-01-28 2021-11-23 北京经纬恒润科技股份有限公司 一种电机控制方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103953245A (zh) * 2014-04-25 2014-07-30 上海大众汽车有限公司 汽车天窗控制系统及其控制方法

Also Published As

Publication number Publication date
US20220021316A1 (en) 2022-01-20
EP3920404A4 (en) 2022-11-02
CN109889106A (zh) 2019-06-14
WO2020155621A1 (zh) 2020-08-06
KR20210090662A (ko) 2021-07-20
CN109889106B (zh) 2021-11-23
EP3920404A1 (en) 2021-12-08
US11563391B2 (en) 2023-01-24

Similar Documents

Publication Publication Date Title
KR102544829B1 (ko) 모터 제어 방법 및 디바이스
EP1612909B1 (en) Power supply integrated circuit with feedback control
US10747696B2 (en) Automatic master-slave system and approach
US9563180B2 (en) Configuration-enabled motor drive safety
CN105500371A (zh) 服务机器人控制器及其控制方法
EP3557345B1 (en) Control apparatus, system program, and control method
CN103645678A (zh) 一种实时响应网络控制系统
US20190056970A1 (en) Method for computer-aided coupling a processing module into a modular technical system and modular technical system
CN104903800A (zh) 运动控制器和使用这种运动控制器的机器人控制系统
US20180253313A1 (en) Operation instruction response control method and terminal for human-machine interface
CN114809855A (zh) 一种基于soa架构的车窗控制系统
CN112462661B (zh) 工业数据采集控制器及其控制方法
US11599081B2 (en) Method and apparatus for proxy execution and computation with an industrial controller
US7103424B2 (en) Re-configurable motion controller drive
CN117075508A (zh) 设备的联动控制方法、装置及计算机设备
CN115617018A (zh) 车辆天窗控制方法、装置、设备及介质
CN107538484B (zh) 一种应用于机器人电机的上位机调试装置
CN109696910A (zh) 一种舵机运动控制方法及装置、计算机可读存储介质
CN112965436B (zh) 一种单线程多轴控制方法及相关装置
CN113641094B (zh) 预防工程机械控制器失效的安全系统及工程机械
CN114458660B (zh) 一种电控总线液压阀用控制系统及控制方法
CN110328667B (zh) 用于机器人的控制方法及装置
CN117170281A (zh) 组件控制系统、方法和介质
CN113778031A (zh) 一种智能控制节点和数据传输方法
CN115865805A (zh) 信号处理方法、装置、设备、车辆及存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant