- 강의 질문
- AI TECH
Part 8 밸런싱 좌우 컨트롤 개념에 관하여
밸런싱 좌우 컨트롤 상황별 상세 분석에 관해서 여러가지 의문이 들어서 질문 올립니다.
전진 상황을 다룰 때, 강의에서는 Left와 Right가 기본적으로 양수여야한다고 설명이 먼저 나옵니다. 그리고 전진 상황이다 보니 basePWM을 양수로 가정하고 있습니다.
1. 그런데 직진 상황에서 좌회전인 경우, 왼쪽 바퀴보다 오른쪽 바퀴가 더 빨리 돌아야한다고 설명하시고는 강의자료에는 left가 양수이고 right가 음수로 right가 left보다 작을 수 밖에 없게끔 left>0 && right<0으로 설명이 되어져있습니다. 강의자료가 잘못된 것일까요?
2. 일단 좌회전을 제 생각대로 left<0 && right>0 라고 생각하고 더 이야기 하겠습니다. 강의 앞에서는 일단 전진 상황이다보니 Left와 right가 양수라고 하셨는데, 강의자료를 참고하면 좌회전이나 우회전 시 left나 right가 각각 하나씩 음수일 수도 있는 것으로 유추가 되어집니다. 어떤 것이 맞는 설명인지 궁금합니다.
3. basePWM(balancing_pid)가 양수로만 가정했을 때만 생기는 현상이라고 생각되어지는 부분이 있어 질문 드립니다. 만약 전진 중에 속도를 줄이기 위해 바퀴를 앞으로 더 굴리다가 몸체가 순간적으로 뒤로 쏠렸다면, 쓰러지지 않기 위해 basePWM은 순간적으로 음수(-)가 됩니다.
이 경우에는 left<0 && right<0이 가능할 것 같은데, left<0 && right<0을 로직 오류로 보면 안되는 것 아닌가요?
4. basePWM(balancing_pid)는 말 그대로 밸런싱을 위한 pid 값인데, 전진이나 후진할 때 basePWM 값을 가지고만 어떻게 전진이나 후진을 할 수 있게 되는건지 궁금합니다. 현재 밸런싱로봇의 균형이 어떻게 맞춰져있는지에 따라 뒤로 가야할 수도 있고, 앞으로 가서 균형을 맞춰야할 수도 있는데 어떻게 이 balancing_pid 값으로 전진, 후진을 만들어내는거죠?