자동으로 PID 매개 변수를 자동으로 조정하려면 어떻게해야합니까?


15

MCU에 구현 된 PID 컨트롤러를 사용하여 피드백을 수행하는 간단한 서보 시스템이 있습니다. 그러나 시스템의 속성은 동적으로 변경되므로 모든 상황에서 PID 매개 변수를 조정할 수 없습니다.

내 로봇은 다음과 유사한 역 구동 가능한 전기 모터를 갖춘 경량 암입니다.

경량 로봇 암

팔은 무거운 물체를 집거나 책상을 가로 질러 물체를 밀거나 당기는 등 여러 가지 작업을 수행합니다. 이러한 각 작업에는 쉽게 예측할 수없는 다른 PID 튜닝 매개 변수가 필요합니다.

내가 정말로 원하는 것은 팔의 동작에 반응하여 매개 변수를 신중하게 조정할 수있는 더 높은 수준의 기능입니다. 예를 들어, 팔이 진동하고 있음을 발견하면 P가 감소하고 D가 증가 할 수 있습니다. 또는 팔이 목표에 도달하지 않은 것을 발견하면 I가 증가 할 수 있습니다.

그러한 알고리즘이 존재합니까? 알고리즘이 매개 변수를 즉시 완성하지 않아도 행복합니다. EG 매개 변수가 새로운 값으로 조정되기 전에 암이 몇 번 진동 할 수 있습니다.

답변:


10

동료와 저는 모터 전류 제어 루프의 PID 매개 변수를 즉시 튜닝 하기 위한 단순한 알고리즘 을 구현했습니다 . 기본적으로 알고리즘은 한 번에 하나의 매개 변수를 수정 한 다음 양호도 측정에 대한 일부 피드백 매개 변수에 대한 데이터를 수집합니다. 우리는 현재 목표 설정 값과의 백분율 편차입니다. 피드백 파라미터가 나아 졌는지에 따라 다음 파라미터가 그에 따라 수정되었습니다.

또는 Wikipedia에서 다음과 같이 말합니다.

정식 tableau로 선형 프로그램을 제공하십시오. 심플 렉스 알고리즘은 각각 개선 된 기본 실행 가능한 솔루션을 제공하는 연속적인 피벗 연산을 수행하여 진행됩니다. 각 단계에서 피벗 요소의 선택은이 피벗이 솔루션을 개선해야한다는 요구 사항에 따라 크게 결정됩니다.

기술적으로 우리 는 단순한 유형의 Nelder-Mead 방법 을 사용했습니다 . 최적의 출력 매개 변수를 검색 할 때 입력 매개 변수를 수정하는 방법을 볼 경우 언덕 오르기 알고리즘 이라고도 할 수 있습니다 .

Nelder-Mead 애니메이션

Nedler-Mead는 설정 점을 추적 할 수 있기 때문에이 경우에 가장 효과적이었습니다. 이는 토크 요구가 증가함에 따라 현재 목표 설정 값이 변경 되었기 때문에 중요했습니다.

Nelder–Mead 기술은 정지 지점으로 수렴 할 수있는 휴리스틱 검색 방법입니다.


접근 방식과 결과가 제공되는 경우이를 연결할 수 있습니까?
SPRajagopal

@SPRajagopal 죄송하지만 없습니다. 더 이상 해당 회사에서 근무하지 않으며 데이터에 액세스 할 수 없습니다.
embedded.kyle

4

이러한 문제에 대한 좋은 접근 방식을 적응 제어라고합니다. 간단히 말해서 모델은 알려져 있지만 모델의 매개 변수 (질량, 관성 등)는 추정하지 않는 제어 방법입니다. 알 수없는 매개 변수를 추정하는 것이 임무입니다. 위키피디아 에서 간단한 소개를 볼 수있다 . 로봇 공학 : 모델링, 계획 및 제어 텍스트 Siciliano et al. 주제를 더 철저히 다루십시오.

@Rocketmagnets 쿼리에 대한 응답으로 편집 :

요컨대, 시스템의 수학적 모델, 즉 강제 또는 다른 방식으로 시스템이 시간이 지남에 따라 어떻게 진화 하는지를 설명하는 방정식이 있어야하지만 다양한 구성 요소의 질량, 관성 등과 같은 동적 매개 변수를 알 필요는 없습니다. .. 이러한 매개 변수를 추정하는 것은 적응 형 컨트롤러의 역할입니다. 그러나 알려지지 않은 각 매개 변수에 대해 초기 추측을해야합니다. 그런 다음 시스템이 실행되면 제어 신호, 출력 신호 및 선형 회귀 또는 경사 하강과 같은 방법을 사용하여 알 수없는 매개 변수 값을 업데이트합니다. 시간이 지남에 따라 매개 변수는 실제 매개 변수와 일치하지 않을 수 있지만 즉, 질량이 잘못 될 수 있지만 값은 계속 작동하지만 정상 상태가되는 값으로 수렴됩니다.

여기에서 방법에 대해 설명하는 텍스트를 참조하는 것이 좋습니다. 예를 들어, Marc Bodson 박사는 그의 웹 사이트 에 그의 적응 형 제어 : 안정성, 견고성 및 수렴 텍스트를 PDF 형식으로 제공하고 있음을 알았습니다 .


방법에 대한 설명을 해 줄 수 있습니까?
Rocketmagnet

1
나는 최근에 그 방법에 대해 배웠다는 것을 감안할 때 내가 정의를 할 수 있을지 의심 스럽다. 또한 단일 방법이 아니라 지난 50 년 동안 개발 된 기술 모음입니다. 그러나 좀 더 정교하게 답변을 편집하겠습니다.
DaemonMaker

2

설명하는 프로세스를 적응 형 PID라고합니다.

그래도 과잉 인 것 같습니다. 외부 장애를 다룰 때 PID가 매우 견고하다는 것을 알았으며 설명 한 작업이 단일 이득 세트의 기능을 넘어서는 것은 아닙니다.


이것들은 단지 외부 교란 이상입니다. 이것은 관절의 특성에 변화가 있습니다. 예를 들어 로봇 질량을 두 배로 늘리면 오버 슈트가 발생합니다.
Rocketmagnet
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.