설정 값에 지속적인 힘이 필요하지 않을 때 PID 위치 제어


1

설정 점에 위치를 유지하기 위해 외부 힘이 필요하지 않을 때 PID 제어 알고리즘을 실제로 적용하는 데 어려움을 겪고 있습니다.

예를 들어, 나는 모터 샤프트에 수직으로 부착 된 질량을 갖는 기어드 전기 모터를 가지고 있습니다. 질량은 샤프트에 고정되어 미끄러지지 않고 샤프트와 함께 회전합니다. 질량에 대한 센서는 수평에 대한 각도 (내 경우에는 가속도계)를 알고 있으며 오류 피드백에 사용됩니다. 제어 시스템은 아래 그림과 같이 질량이 항상 샤프트 위로 수직으로 균형을 이루도록 모터를 구동하려고 시도합니다. 모터 자체는 임의로 회전 할 수있는 로봇 팔에 부착되므로 모터는 항상 질량을 수직으로 유지합니다. 여기에 이미지 설명을 입력하십시오

여기서 중요한 점은 일단 모터가 설정 점을 달성하면 (질량이 샤프트 위에 수직 임) 모터에서 더 이상 작업 할 필요가 없다는 것입니다. 거기에 힘을 가할 필요가 없습니다. 실제로, 기어링에 충분한 백 드라이 마찰이있어, 예를 들어 질량이 수직에서 10 도인데도 여전히 그대로 유지됩니다.

내 질문은 이러한 종류의 시스템에 대한 PID 제어 루프를 올바르게 구현하는 것과 관련이 있습니다. 혼란스러워 한 상황은 다음과 같습니다.

질량이 수직에서 5도 편향되어 있다고 가정 해 봅시다. PID 루프에서는 오류가 매우 작기 때문에 P 구성 요소가 매우 작습니다. 따라서 적분기는이 정상 상태 오류를 제거하는 대부분의 작업을 수행합니다. 그것은 작업을 수행하고 질량을 수직 위치로 유도하기에 충분한 전력을 모터에 추가합니다. 일단 수직 위치에 도달하면, 그것을 유지하기 위해 추가적인 힘이 필요하지 않습니다. 그러나이 적분기 구성 요소는 여전히 0이 아닌 값을 가지며 모터를 계속 구동하여 질량을 설정 점을 통과하여 반대쪽으로 옮깁니다. 설정 점에 대한 불가피한 진동이 발생합니다.

이 경우 PID 알고리즘에 특별한 고려 사항이 있습니까? 아니면 표준 PID 알고리즘이 위에서 설명한 시스템에 어떻게 반응하는지 근본적으로 오해하고 있습니까?

편집 :
내 원래 질문은 "안정적"이라는 단어를 잘못 사용했습니다. 이를 지적 해준 Carl Witthoft에게 감사합니다. 그러나 내 질문의 초점은 시스템이 위치 오차가 0에 가까워 질 때 제어력이 0으로 떨어지도록 요구할 때 PID 루프를 올바르게 구현하는 방법입니다.


포지셔너는 일반적으로 PD 컨트롤러입니다.
OldUgly

도움이 될 수있는 정보 제공의 목적을 위해 : 비례 = 힘, 적분 = 얼마나 빠르며, 미분 = 나는 둘 다 저항합니다.
Ken

답변:


2

컨트롤러에서 비례 및 적분 항의 효과에 대해서는 정확하지만 미분 부분을 잊지 마십시오! 적분 항은 시스템에 에너지를 추가하는 경향이 있지만, 도함수는 오차 변화 속도를 늦추어 에너지를 뺍니다. 시스템에서 마찰이나 댐핑처럼 작용합니다. 파생적인 용어는 일반적으로 물리적 댐핑이 많지 않은 시스템에 필요합니다. 그렇지 않으면 정지하기 전에 많이 진동합니다. 그렇기 때문에 일반적으로 PD 및 PID 컨트롤러를 볼 수 있지만 P는 거의 없으며 내가 아는 한 결코 제어하지 않습니다.

문제를 어떻게 해결합니까? 두 가지 옵션이 있습니다.

첫 번째 옵션은 미분 게인을 늘리는 것입니다. 이렇게하면 진동이 줄어들지 만 시스템의 응답이 느려집니다.

KIe(t)dtmglKIemgl질량이 부착 된 팔의 길이입니다). 이것은 적분 항의 크기에 대한 최악의 추정치입니다. 거기에서 시작하여 원하는 성능을 얻을 때까지 줄이십시오.

최상의 성능을 얻으려면 옵션 1과 2의 조합을 사용해야합니다.


1

당신은 "안정적"의 정의를 혼동하고 있습니다. 그렇습니다, 가해진 힘이 없을 때 무게는 수직으로 유지 될 것입니다. 그러나 그것은 당신이 찾고있는 안정성이 아닙니다 (오비완에 사과). Heisenberg Uncertainty Principle (1)에 설명 된대로 어떤 힘이나 양자 변동을 원한다면 시스템이 평형을 벗어나게하기 때문에 이것을 "불안정한 평형"이라고합니다.
반대로, 무게가로드 아래에 수직으로 매달려있는 경우, 이는 약간의 변위가 중력에 의해 반작용하여 시스템을 평형 점으로 되돌리기 때문에 "안정한 평형"입니다.

예, 무게를 계속 유지하려면 일종의 컨트롤러가 필요합니다.

[1] 네, 하이젠 베르크는 이런 맥락에서 어리석은 일이지만 효과의 크기를 보여주기 위해 이와 같은 거시적 문제를 겪는 물리학 학생들이 많이 있습니다.


칼, 고마워 질문을 편집하고 다시 말하겠습니다. 그러나 그 외에도 제 질문은 여전히 ​​유효합니다. 내가 묻는 것의 핵심은 질량이 설정 점 근처에있을 때 적분기의 동작에 관한 것입니다.
Dan Laks

0

"질량이 수직에서 5도 편향되어 있다고 가정 해 봅시다."

PID 제어기가 활성화 된 상태에서 질량이 어떻게 정지 되었습니까?

"오류가 매우 작기 때문에 P 성분이 매우 작습니다."

비례 오차 는 매우 작지만 비례 이득 은 "P 구성 요소"를 원하는만큼 크게 만듭니다.

"수직 위치가 달성되면, 그것을 유지하기 위해 추가적인 힘이 필요하지 않습니다."

질량이 제자리 로 이동 했어야합니다 . 질량과 속도 (정확한 위치에 도달 함)는 관성 이 있음을 의미합니다 . 관성에 따라 속도를 제거하기 위해 힘이 가해 지거나 질량이 수직을 통과해야합니다.

"설정 점에 대한 불가피한 진동이 발생합니다."

CarlWitthoft보다 더 무뚝뚝하기 위해, 질량이 영원히 유지 될 정도로 정밀하게 위치를 잡을 수 있습니까? 그가 언급 한 이유는 대답이 아니다. 그러한 입장은 본질적으로 불안정하다. 충분한 시간이 주어지면 넘어 질 것입니다.

"표준 PID 알고리즘이 위에서 설명한 시스템에 어떻게 반응하는지 근본적으로 오해하고 있습니까?"

PID 컨트롤러를 잘못 이해하고 있다고 생각하지 않습니다. PID 제어의 일부 단점을 발견하기 시작했다고 생각합니다. 기준 위치를 90도 (평행에서지면으로)로 제어하려고 할 때 "드 로프"를 방지하는 동일한 통합 오류로 인해 하중을 수직으로 제어하려고 할 때 오버 슈트가 발생합니다.

"피드 포워드"라는 용어를 추가하여이 (상대적으로 간단한) 경우의 단점을 극복 할 수 있습니다. 즉, 하중 각도, 질량 및 질량이 부착 된 암의 길이에 따라 예상 하중 토크를 계산할 수 있습니다.

계산하는 부하 토크 는 하중을 특정 위치에 유지하는 데 필요한 정적 토크입니다. 모델링 오류 (질량 측정 오류, 유효 모멘트 암 등)가있는 경우 하중을 새 위치 로 이동 하기위한 토크 나 위치를 유지하기 위한 제어 기능을 제공하지 않습니다 .

거친 전류 (토크)로 모터를 "시딩 (seeding)"함으로써 부하를 어느 각도 로든 유지해야하며 , PID 컨트롤러는 일련의 "유니버설"게인으로 조정되어 어느 각도에서나 동일하게 동작해야합니다.

요약하면 다음과 같습니다.

PID 제어는 기본 시스템이 변경되지 않을 때 가장 효과적입니다. 시스템이 변경되면 (예를 들어 필요한 토크가 변경되는 경우) 제어 게인을 변경하거나 성능이 저하됩니다.

보상 컨트롤러 (예 : 피드 포워드 제어)를 사용하여 기본 시스템을 "정상화"하여보다 다양한 "강력한"PID 컨트롤러를 홍보 할 수 있습니다.

기록을 위해, 나는 확고한 단어를 싫어합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.