์๋ ํ์ธ์ฌ ๋ธ๋ก๊ทธ๋ ์ค๋๋ง์ด๋ค์,,,
๋ฒ์จ ๊ทธ๋ก์ฐ๊ฐ ๋๋๊ฐ๊ณ ์๋ค๋ ๋ฏฟ๊ฒจ์ง์๋์~๏ผ๏ผยดะด๏ฝ๏ผใ
์ ๋ฒ ์คํํธ ๋ ์์ฑํ๋ ๊ธ์ ๋ณด๋ ์ ๋ PID ์ ์ด์ ๋ํด ์์๋ณด๊ณ ๊ณต๋ถํ๋ ์๊ธฐ๋ผ
๊ฐ๋ ์ ์ธ ๋ถ๋ถ ์์ฃผ๋ก ๋ง์ด ์ค๋ช ์ ํ์๋ค์,,
์ด๋ฒ์๋ ์ค์ ๋ก ๋๋ก ์ ์ฐ๊ฒฐํด์
PID ์ ์ฉํ๋ ๊ฒฐ๊ณผ๊น์ง์ ๊ณผ์ ์ ๋ํด ์ข ๋ ์์ธํ๊ฒ ์ ์ด๋ณด๋ ค๊ณ ํฉ๋๋คใ ,ใ
ํ ๋ก๋ฅผ ์ ์์๋ ๋ถ๋ค์ด๋ผ๋ฉด ํ ๋ก์๋ ๋น์ ผ ํฌ์ง์ ๋์ด ์๋๋ฐ ์ PID ์ ์ด๋ฅผ ํ์ง? ๋ผ๊ณ ์๊ฐํ์ค ์๋ ์์ ๊ฒ ๊ฐ์ต๋๋ค.
์ ํฌ๋ ์คํํธ-๊ทธ๋ก์ฐํ๊ธฐ๋ฅผ ์งํํด์ค๋ฉด์ ์์ ๊ธฐ๋ฅ์ด ๋ด์ฅ๋์ด ์๋ ๊ฒ์ ๋ฐ๊ฒฌํ์ฌ ํด๋น ๊ธฐ๋ฅ์ ์ฌ์ฉํ ๊น ํ๋ค๊ฐ ์๋์ ๊ฐ์ ์ ํ์ฌํญ์ ๋ฐ๊ฒฌํ๊ฒ ๋์์ต๋๋ค.


์ ์ธ์ ๋ชจ๋์ ์ด์ฉํด์ ๊ทธ๋ฐ์ง ๋ฌผ ๋๋ ํฌ๋ช ํ ํ๋ฉด ์๋ก ๋นํํ๋ ๊ฒฝ์ฐ์ ํด๋น ๊ธฐ๋ฅ์ด ์๋ํ์ง ์์ ์ ์๋ค๊ณ ํฉ๋๋ค.
๋ฌผ ์์์ ์๋ํด์ผ ํ๋ SeeSea ์ด๊ธฐ ๋๋ฌธ์, ๊ธฐ์กด์ ์ ์ฉํ๋ ค๊ณ ํ๋ PID์ ์ด ๊ฐ๋ฐ์ ๊ณ์ ์งํํ๊ธฐ๋ก ํ์ต๋๋ค.
๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถ
ํ ๋ก ์๋๋ ๊ต์ก์ ๋ชฉ์ ์ผ๋ก ๋์จ ๋๋ก ์ด๊ธฐ์ ์์ฒด ์ฑ์ ํตํด์ ํธ๋ํฐ์ผ๋ก๋ ๊ฐ๋จํ๊ฒ ์กฐ์ข ์ด ๊ฐ๋ฅํ๋, pid์ ์ด๋ฅผ ์ํ ์ฝ๋๋ฅผ python์ผ๋ก ์์ฑํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ๊ทธ์ ๋ง๋ ํ๊ฒฝ์ ๊ตฌ์ถํด์ค๋๋ค.
1. pycharm ์ค์น
ํด๋น ์ฌ์ดํธ์ ๋ค์ด๊ฐ์ pycharm IDE๋ฅผ ์ค์นํด์ค๋๋ค.
(๊ธฐ์กด์ python์ ์ฌ์ฉํ์ ์์ผ์ จ๋ ์๋์ฐ ์ ์ ๋ผ๋ฉด python๋ ์ค์นํด์ผํฉ๋๋ค!!)
https://www.jetbrains.com/ko-kr/pycharm/download/#section=mac
PyCharm ๋ค์ด๋ก๋: JetBrains๊ฐ ๋ง๋ ์ ๋ฌธ ๊ฐ๋ฐ์์ฉ Python IDE
www.jetbrains.com
2. ํ๋ก์ ํธ ์์ฑ ๋ฐ ๋ชจ๋ import
a) ์ ํ๋ก์ ํธ ์์ฑ
pycharm์ ์คํ -> ํ์ผ -> ์ ํ๋ก์ ํธ๋ฅผ ๋๋ฌ ์๋ก์ด ํ๋ก์ ํธ๋ฅผ ์์ฑํฉ๋๋ค.

b) dji tello ๋ชจ๋ import
ํ์ผ -> ์ค์ -> ํ๋ก์ ํธ ํญ์ ๋ค์ด๊ฐ ํ + ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.

๋ฒํผ์ ํด๋ฆญํ๋ฉด ์๋์ ๊ฐ์ ์ฐฝ์ด ๋ํ๋๋๋ฐ ๊ทธ ์ค djitellopy๋ฅผ ์ฐพ์ ์ค์นํด์ฃผ์๋ฉด ๋ฉ๋๋ค.

djitellopy๋ฅผ ์ค์นํ๋ฉด ์๋์ผ๋ก numpy์ oepncv๋ ์ค์น๋ฉ๋๋ค.
๋ง์ฝ ์๊น๋ ธ๋ค๋ฉด ์ด๊ฒ๋ ์ค์นํด์ฃผ์ธ์!

์ด๋ ๊ฒ ํ๊ฒฝ ๊ตฌ์ถ์ ๋ง์ณค์ต๋๋ค!!(๊ฐ๋จํ์ ธ?!~)
๋๋ก - ๋ ธํธ๋ถ ์ฐ๊ฒฐ
๋๋ก ์ ์์ ํจ ํ์ ๋ ธํธ๋ถ์์ ์์ดํ์ด ๊ฒ์์ ํ๋ฉด TELLO ์ฐ๊ฒฐ์ ์ํ ์์ดํ์ด๋ฅผ ๋ฐ๊ฒฌํ ์ ์์ต๋๋ค.

TELLO-XXXXX ์ ๊ฐ์ด ๋จ๊ฒ ๋๋๋ฐ ํด๋น ์์ดํ์ด์ ์ฐ๊ฒฐํด์ฃผ์๋ฉด ๋ฉ๋๋ค~~
์ด๋ ๊ฒ ์ฐ๊ฒฐ์ ํ๋ฉด ๋ ธํธ๋ถ๊ณผ ๋๋ก ์ด ํต์ ํ๊ธฐ ์ํ ์ค๋น๋ฅผ ๋ง์ณค์ต๋๋ค.
์ดํ์ ์ฝ๋์ ์๋ connect๊ฐ ์คํ๋๋ฉด ์ฝ๋๋ฅผ ํตํด ๋๋ก ์ ์กฐ์ข ํ ์ ์์ต๋๋ค.
์ด์ค PI ์ ์ด ์ ์ฉ
์ด์ ํฌ์คํ ์์ ๋งํ ๊ฒ ์ฒ๋ผ,
P ์ ์ด๋ ๋น๋ก ์ ์ด
$${P=K_{p}*Error}$$
I ์ ์ด๋ ์ ๋ถ ์ ์ด
$${I=K_{i}*\int_{0}^{t}Error dt}$$
์ ๋๋ค.
์ด์ ์คํํธ๋ ์ ์๋ ๋ด์ฉ์ฒ๋ผ ๊ธฐ์กด์ PI ์ ์ด๋ ๋ชฉํ ์์น์์ ์์น์ฐจ์ด๋ฅผ ERROR ๊ฐ์ผ๋ก ์ค์ ํ์๋๋ฐ ์ด์ค PI๋ฅผ ์ ์ฉํ๋ฉฐ ERROR ๊ฐ์ ๋ค๋ฅด๊ฒ ์ค์ ํ์์ต๋๋ค.

์ด์ค PI ์ ์ด๋ฅผ ๋ณด๋ฉด ํฌ๊ฒ 2ํํธ๋ก ๋๋ ์ ์๋๋ฐ์,
๋ฐ๋ก
๊ฐ๋์ ๋ํ PI ์ ์ด ๋ถ๋ถ
๊ณผ
๊ฐ์๋์ ๋ํ PI ์ ์ด ๋ถ๋ถ
์ผ๋ก ๋๋ ์ ์์ต๋๋ค.
๋ํ, ์ด์ ๋ฐ๋ผ ๊ณ์ฐ์ ์ฌ์ฉํ๋ ERROR ๊ฐ์ด ๋ฌ๋ผ์ง๋๋ค.
1) ๊ธฐ์กด์ PID ์ ์ด์ ์ ์ฌํ๊ฒ ๋ชฉํ ๊ฐ๋์ ํ์ฌ ๊ฐ๋์ ์ฐจ์ด๋ฅผ ERROR ๊ฐ์ผ๋ก ํ์ฌ P ์ ์ด๋ฅผ ์ ์ฉํฉ๋๋ค.
2)P ์ ์ด๋ก ๋์ถ๋ ๊ฐ์ ๊ฐ์๋ ๋ชฉํ๊ฐ์ผ๋ก ํ์ฌ ํ์ฌ ๊ฐ์๋์์ ์ค์ฐจ๋ฅผ ๊ตฌํด PI ์ ์ด๋ฅผ ์งํํฉ๋๋ค.
์์ ๋ด์ฉ๋ค์ ๋ฐํ์ผ๋ก ์์ฑํ ์ฝ๋์ ์ผ๋ถ๋ฅผ ์ฒจ๋ถํ๋๋ก ํ๊ฒ ์ต๋๋ค.
์ ์ฒด ์ฝ๋๋ ๊นํ๋ธ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์~!

pid ํ๋ก๊ทธ๋จ์์ ๊ณ์ฐ์ ํ์ํ ๋ณ์๋ค์ ๋๋ค.


์ด์ค PI๋ฅผ ๊ตฌํํ๊ณ ๊ณ์ฐํ๋ ๋ถ๋ถ์ ๋๋ค.
์คํ ๊ฒฐ๊ณผ

์์์ ๋ณด๋ฉด ์ ์ ์์ง๋ง, ํ๋กํ ๋ฌ ๊ฐ๋๋ฅผ ๋ฐ์ด์ ์ธ๋ถ ์์ธ์ ์ฃผ์์ ๋ ์ธ๋ถ ์์ธ์ ๋ฐ๋ ค๋ฌ๋ค๊ฐ๋ ๋ค์ ์ ์๋ฆฌ๋ก ๋์์ค๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค!!!!!

ํน์๋ ๋ฌผ ์์์ ์๋์ด ์๋ ๊น ํ์ ์ธ๋๊ฐ ์ง์ ์ง ์์กฐ์ ๋ฌผ์ ๋ฐ์ ์ง์ ํ ์คํธ๋ ํด๋ณด์์ต๋๋ค ใ ใ ใ

๊ธฐ๋ํจ๊ณผ
SeeSea๋ ๊ฐ์ ๋ฒ์๋ฅผ ์ ๋ ฅ๋ฐ์ ํ, ์ด๋ฅผ ๋ฐํ์ผ๋ก ์ฌ๋ฌ ๋์ ๋๋ก ์ด ๊ฐ์ ์ฌ๊ฐ์ง๋๊ฐ ์๋๋ก ์ต์ ์ ์์น์ ๋ฐฐ์น๋๊ธฐ๋๋ฌธ์ ์ค์ ๋ ์์น์ ์์ ์ ์ผ๋ก ์์นํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
PID ์ ์ด๋ก ์ธํ์ฌ ๋ฌผ ์์์๋ ์์ ์ ์ธ ๋นํ์ด ๊ฐ๋ฅํด์ง์ผ๋ก์จ ๋ฐ๋ท๋ฐ๋๊ณผ ๊ฐ์ ์ธ๋ถ ์์ธ์๋ ์์ ์ ์ผ๋ก ๊ฐ์๋ฅผ ์งํํ ์ ์์ ๊ฒ์ด๋ผ ์์ํฉ๋๋ค.
ํ ๋ก ์๋๋ก ํ๋ก์ ํธ๋ฅผ ์งํํ๋ ๋๊ตฐ๊ฐ์๊ฒ ๋์์ด ๋๊ธฐ๋ฅผ ๋ฐ๋ผ๋ฉฐ....
์ด์์ผ๋ก ์ด์ค PI๋ฅผ ์ด์ฉํ ํ ๋ก ์๋ ์์น ์ ์ด ํฌ์คํ ์ ๋ง๋ฌด๋ฆฌํ๋๋ก ํ๊ฒ ์ต๋๋ค.
์๋ฝ !!!
'๐capstone' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
PID ์ ์ด๋ฅผ ์ด์ฉํ ๋๋ก ์ ์์น ์ ์ด (1) | 2022.11.24 |
---|