Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

DC 서보모터 파라미터 추정

이 예제에서는 다양한 물리 모델링 제품을 사용하여 구성된 멀티도메인 DC 서보모터 모델의 파라미터를 추정하는 방법을 보여줍니다.

이 예제를 실행하려면 Simscape™ Driveline™과 Simscape Electrical™이 필요합니다.

DC 서보모터 시스템에 대한 설명

전기 및 기계 컴포넌트가 포함된 DC 서보모터는 제1원리를 사용하여 멀티도메인 모델링을 설명하는 좋은 예를 제공합니다.

DC 서보모터는 제어 전자장치(H-Bridge)를 포함하고, 모터 축에 연결된 디스크를 포함하는 더 큰 시스템의 일부입니다. 아래에 전체 모델 spe_servomotor가 나와 있으며, 여기서 Input Signal (V)는 H-bridge 회로에 인가되는 전압 신호이고 Output Signal (deg)는 모터 축의 각위치입니다.

open_system('spe_servomotor')

DC servo motor 서브시스템 내 DC 모터의 제1원리 모델을 개발했습니다. Simscape Electrical을 사용하여 전기 컴포넌트를 모델링하고 Simscape Driveline을 사용하여 모터의 기계 컴포넌트를 모델링했습니다. 아래 그림은 서보모터 서브시스템의 내용을 보여줍니다.

open_system('spe_servomotor/DC Servo Motor')

DC 모터 모델은 전류와 토크의 관계를 보여줍니다(왼쪽 녹색 선). 토크로 인해 모터 축이 회전하게 되며 이 회전은 Back EMF(역기전력, back electromotive force)와 관계가 있습니다. 나머지 파라미터에는 축 관성, 점성 마찰(감쇠), 전기자 저항, 전기자 인덕턴스가 포함됩니다.

제조업체에서 이들 파라미터 중 일부에 대한 값을 제공할 수 있지만 이는 근사치일 뿐입니다. 모델이 실제 DC 서보모터 시스템을 정확하게 표현하는지 확인하기 위해 이러한 파라미터를 가능한 한 정확하게 추정해 보겠습니다.

모터 입력에 일련의 전압 펄스를 인가하면 이에 대한 응답으로 모터 축이 회전합니다. 그러나 모델 파라미터가 물리 시스템의 파라미터와 일치하지 않으면 모델 응답도 실제 시스템의 응답과 일치하지 않습니다. 이 경우 Simulink® Design Optimization™이 파라미터 값을 추정하는 데 중추적인 역할을 합니다. 파라미터 추정 프로세스는 다음과 같이 명확히 정의된 여러 단계로 구성됩니다.

  • 시스템(실험)에서 테스트 데이터를 수집합니다.

  • 추정할 파라미터를 지정합니다(초기 추측값, 파라미터 범위 등 포함).

  • 추정을 구성하고 적절한 추정 알고리즘을 실행합니다.

  • 다른 테스트 데이터 세트와 비교하여 결과를 검증하고 필요한 경우 위의 단계를 반복합니다.

Simulink Design Optimization은 파라미터 추정 수행, 추정 프로젝트 구성, 향후 작업을 위한 저장을 지원하는 사용자 인터페이스인 파라미터 추정기 앱을 제공합니다.

서보모터 모델의 오른쪽 아래에 있는 주황색 블록을 더블 클릭하여 파라미터 추정기(이 프로젝트에 대한 데이터를 미리 불러옴)를 시작합니다. 이는 측정된 실험 데이터 EstimationData로 구성되어 있습니다. 다른 용도를 위해 MATLAB® 변수, MAT 파일, Excel® 파일 또는 쉼표로 구분된 값 파일을 비롯한 다양한 소스에서 실험 데이터 세트를 가져올 수 있습니다. 파라미터 추정기는 추정을 위해 선택된 서보모터 서브시스템의 파라미터(B, J, Km, La, Ra)도 사전에 불러옵니다. 이 파라미터 추정기는 또한 추정 이후에 나중에 사용할 검증 데이터 ValidationData로 구성되어 있습니다. EstimationData에서 측정된 데이터는 실험 플롯에 표시됩니다. 이 예제에서는 추정에 사용되는 데이터 세트가 하나만 있습니다.

실험 플롯은 측정된 데이터가 현재 모델과 얼마나 일치하는지 확인하는 데에도 사용됩니다. 파라미터 추정 탭에서 모델 응답 플로팅을 클릭하여 시뮬레이션된 신호 데이터를 실험 플롯에 표시합니다. 시뮬레이션이 측정된 데이터와 일치하지 않아, 모델 파라미터를 추정해야 함을 알 수 있습니다.

추정을 위한 파라미터 선택

Simulink Design Optimization을 사용하면 응용 사례에 가장 적합한 방식으로 모델의 파라미터 중 일부 또는 전부를 추정할 수 있습니다. 추정 파라미터는 파라미터 추정 탭에서 파라미터 선택을 클릭하여 선택합니다. DC 모터 예제의 경우 모터 모델의 5개 파라미터 B, J, Km, La, Ra를 이미 불러왔습니다. 물리적 통찰력을 바탕으로 이러한 파라미터는 음수가 될 수 없음을 알 수 있으므로 하한을 0으로 설정합니다.

DC 모터 모델의 파라미터 추정

추정을 위한 파라미터가 지정된 상태에서 추정에 사용할 실험을 선택합니다. 파라미터 추정 탭에서 실험 선택을 클릭하고 추정을 위해 EstimationData를 선택합니다.

이제 추정을 시작할 준비가 거의 다 되었지만 먼저 추정 진행률을 모니터링하기 위한 다른 플롯을 생성합니다. 플롯 추가를 클릭하고 파라미터 궤적을 선택합니다. 이렇게 하면 추정하는 동안 파라미터 값이 어떻게 변하는지 보여주는 플롯이 생성됩니다. 플롯 탭의 오른쪽에 있는 화살표를 클릭하고 "모두 타일 형식으로 배열"을 선택하여 실험 플롯과 궤적 반복 플롯이 모두 표시되도록 플롯을 배치합니다.

파라미터 추정 탭에서 추정 버튼을 클릭하여 추정을 시작합니다. 추정은 추정이 수렴되고 종료될 때까지 파라미터 값을 계속 반복합니다. 파라미터 추정은 다양한 최신 추정 방법을 제공합니다. 가장 일반적으로 선택할 수 있는 방법에는 비선형 최소제곱 방법과 넬더-미드 최적화 방법 등이 있습니다. 이들 방법에 대한 자세한 내용은 Optimization Toolbox™ 문서에서 확인할 수 있습니다. 파라미터 추정을 위해 Global Optimization Toolbox의 패턴 탐색 방법을 사용할 수도 있습니다.

아래 플롯은 측정된 데이터를 시뮬레이션된 데이터와 겹쳐 보여줍니다. 시뮬레이션된 데이터는 추정된 파라미터가 포함된 모델에서 가져옵니다. 추정 프로세스 전후의 시스템 응답을 비교하면 추정이 모델 파라미터를 성공적으로 식별하고 시뮬레이션된 응답이 실험 데이터와 정확하게 일치함을 명확하게 알 수 있습니다.

검증

추정을 완료한 후에는 다른 데이터 세트와 비교하여 결과를 검증하는 것이 중요합니다. 성공적인 추정은 추정에 사용한 실험 데이터뿐만 아니라 실험에서 수집된 다른 데이터 세트와도 일치해야 합니다.

추정 결과를 검증하기 위해 ValidationData의 두 번째 데이터 세트를 사용했습니다. 다음 그림에서 볼 수 있듯이 모델 응답과 데이터 세트가 매우 잘 일치합니다. 실제로 이 예제에서는 두 곡선이 거의 동일합니다.

요약

여러 분야와 업계의 엔지니어 및 과학자들은 동적 시스템 모델링의 이점에 대해 잘 알고 있습니다. 이러한 엔지니어와 과학자들은 제1원리 수학 또는 테스트 데이터 기반 방법을 사용할 수 있습니다. 제1원리 모델은 시스템 동작에 대한 중요한 통찰력을 제공하지만 정확도가 부족할 수 있습니다. 데이터 기반 모델은 정확한 결과를 제공하지만 시스템의 물리적 과정에 대한 이해가 제한적인 경향이 있습니다. 이 게시물에서는 실험 데이터를 이용하여 모델 파라미터를 추정함으로써 DC 서보모터 모델의 정확도를 향상시키기 위해 파라미터 추정을 사용하는 방법을 보여주었습니다.

모델을 닫습니다.

bdclose('spe_servomotor')