박봉달의 개발생활

<드론 프로그래밍>#1 DJI TELLO 드론과 필요 환경 구축 / 파이썬 본문

Projects/Drone

<드론 프로그래밍>#1 DJI TELLO 드론과 필요 환경 구축 / 파이썬

박봉달 2021. 8. 17. 22:22
728x90

안녕하세요, 오랜만입니다! 한동안 공부한다고 블로그에 글을 많이 쓰지 못했는데, 이번에 드론 프로그래밍 자료를 좀 남겨놓고자 이렇게 글을 작성합니다. 현재는 배우는 단계이기 때문에 초급 글은 4편으로 구성될 것 같고, 앞으로 추가적으로 프로젝트를 진행해본다면 추가하려고 합니다. 인터넷을 검색해봐도 한국어로 된 드론 프로그래밍 자료는 많이 없어서 혹시나 관심 있으신 학생분들이나 개발자분들에게 도움이 되길 바랍니다.

실제로 코드를 작성하여 소프트웨어를 만드는 것은 눈으로 보이는 실체가 없기에 흥미가 떨어질 수도 있습니다. 드론 개발은 그런 관점에서 꽤나 매력적입니다. 시각적으로 확인 가능한 드론을 프로그래밍하여 원하는 위치로 옮긴다거나 기능을 추가할 수 있기때문에 흥미를 잃지 않고 여러가지 시도해 볼 수 있는 유지력이 강하다고 할 수 있습니다.


1. 개발시 필요한 준비물

DJI TELLO 드론, 파이참(파이썬 IDE)

드론 프로그래밍은 여러 언어로 가능합니다. 간단한 스크래치로도 프로그래밍이 가능합니다. 이 과정에서는 스크래치로 프로그래밍 하지 않고, 더 많은 것을 활용할 수 있는 파이썬 언어를 사용하여 드론 프로그래밍을 진행해보도록 하겠습니다. 이 과정은 파이썬에 대한 기본 문법지식이 있으신 분들에게 추천드립니다.

 

우선은 드론이 필요합니다. 포스팅에 사용할 드론은 DJI 텔로 에듀 드론으로, 일반적인 텔로 드론의 상위 버전이라 생각하시면 좋습니다. 차이점은 크게 개발 언어라고 할 수 있으며, 텔로드론은 1) 스크래치만 가능한 반면, 텔로 에듀 드론은 1) 스크래치 2)스위프트 3)파이썬, 총 3가지의 언어로 드론 개발이 가능합니다.

드론을 구성하는 요소는 드론 프레임, 모터, 프로펠러, 배터리, 리시버, 카메라, 각종 센서 등으로 구성되어있습니다. 드론의 구성을 간단히 짚어보고 넘어가는 것은, 드론이 어떻게 움직이는지를 이해해야 그 기능들을 활용하여 프로그래밍을 해볼 수 있기 때문입니다. 드론의 동작 원리는, 프로펠러가 돌아가며 공중으로 호버링을 하며 각 프로펠러의 회전수에 따라 좌우상하 회전 및 이동이 가능합니다. 이제 드론을 연결해보도록 합시다.


2. 드론 연결 순서

스마트폰 또는 노트북

DJI EDU TELLO 드론은 프로그래밍을 위하여 고안된 드론입니다. 이는 일반 드론처럼 스마트폰과 연결하여 통신하고 제어될 수도 있지만, 이를 PC나 노트북과 연결하여 제어할 수도 있습니다. 텔로 드론과 연결하는 과정은, 다음과 같습니다.

1. 드론의 전원을 작동시킨다

2. Tello 드론 와이파이에 연결한다

3. 드론을 작동시킨다.

여기서 보통은 3번에서 dji tello 앱을 사용하여 드론을 조작 할 수 있습니다. 하지만 이 포스팅에서는 파이썬으로 프로그래밍을 할겁니다. 그러기 위해서는 파이썬과 효과적으로 개발하기 위한 파이썬 인터페이스(IDE)인 파이참을 사용합니다. 그럼 지금 파이참을 설치해보도록 하겠습니다.


3. 파이썬&파이참 설치 방법

파이참 CE 설치하기(무료)

http://www.python.org

 

Welcome to Python.org

The official home of the Python Programming Language

www.python.org

파이썬으로 프로그래밍을 하기 위해서는 파이썬을 설치해야합니다. 홈페이지에서 다운로드를 들어가 최신 파이썬을 다운로드 하면 됩니다. 맥 OS에서는 파이썬이 이미 설치되어있어서 따로 설치하지 않아도 됩니다.

https://www.jetbrains.com/ko-kr/pycharm/download/#section=mac

 

다운로드 PyCharm: JetBrains가 만든 전문 개발자용 Python IDE

 

www.jetbrains.com

설치가 완료되었으면 다음으로 IDE를 설치할 겁니다. 우리는 파이참이라는 IDE를 사용할 건데, 이는 효율적으로 소프트웨어를 개발하기 위한 통합개발환경 소프트웨어 어플리케이션 인터페이스라고 생각하면 됩니다. 파이썬의 문법을 확인해주며, 디버깅을 가능하게 해줍니다. 여기서 순수 파이썬 개발용인 Community를 다운받아 사용하시면 되며, 이는 무료입니다.


여기까지 되었다면 드론 코딩에 필요한 기본 환경구축은 완료되었습니다! 다음 포스팅에서는 프로젝트에 모듈을 임포트하여 프로그래밍 가능한 기능을 추가하는 과정을 간단히 다뤄보도록 하겠습니다.

728x90
반응형