[python] DJI Tello 드론 코딩 (프로그래밍)
첨부 '10' |
---|
# DJI Tello
# 프로그래밍 가능한 드론
최근 프로그래밍 교육 열풍이 시작되면서 사용자 레벨에서 직접 프로그래밍을 통해 제어할 수 있는 드론(Drone)들이 이미 판매되고 있다. 말이 거창해 코딩에 프로그래밍이지.. 사실 드론에서 제공하는 외부 API(명령)을 리모컨 대신 호출하는 것이 전부이다.
그 중 유명했던 것(과거형)이 한국 회사에서 만든 코드론(CoDrone)인데 최근에 드론계의 애플이라 불리는 DJI에서도 프로그래밍이 가능한 Ryzerobotics Tello Drone을 새로 출시했다.
(코드론은 아두이노 기반으로 제작된 키트를 직접 조립해서 만들어야 하고 Tello는 예쁜 완성품으로 바로 사용할 수 있는데 왜 코드론이 더 비싸지? ㅠㅠ 코드론 Lite $120 / Pro $180 vs. 텔로 $99)
# CoDrone vs. Tello
어쨌든..
이런 종류의 드론을 제어하기 위한 프로그래밍 언어와 환경은 다양하다.
심지어 프로그래밍에 익숙하지 않은 아이들이나 초급자라도 간편하게 시작할 수 있다.
예를 들어, 초급자의 경우 드론블럭(Droneblocks), 스크래치(Scratch) 2.0 등의 GUI 툴을 이용하여 미리 정해진 명령 블럭들을 조립해서 실행하면 된다.
# DronBlocks application for iOS
# Scratch 2.0
![scratch.jpg](https://www.hooni.net/xe/files/attach/images/207/225/090/411bee3a4bbecb58ab0b14dde091f8a5.jpg)
조금 더 고급진(?) 방법은 현업에서 실제로 사용하는 프로그래밍 언어로 구현하는 것이다. 드론이 제공하는 네트워크에 접속하고 명령어 스펙을 구현하는 것이다.
다른 드론도 비슷하겠지만 Tello의 경우,
Tello가 제공하는 WiFi 네트워크에 접속해서 소켓을 열고 UDP 패킷에 명령어를 전송하는 방식이다.
# Demo Video that I made to control using python.
직접 명령을 입력해서 Tello에게 전달하는 데모 프로그램
우선 Wi-Fi를 지원하는 디바이스가 필요하다.
그리고 UDP 소켓 통신이 가능한 프로그래밍 언어라면 모두 가능하다.
중요한 것은 Tello Drone의 명령어셋이다.
명령어셋은 Tello SDK 문서에 명세되어 있고 RYZE 홈페이지에서 다운로드 할 수 있다.
https://www.ryzerobotics.com/tello/downloads
Command | Description | Possible Response |
command | Enter command mode | OK / FALSE |
takeoff | Auto takeoff | OK / FALSE |
land | Auto landing | OK / FALSE |
up xx | Fly upward xx cm (20-500) | OK / FALSE |
down xx | Fly downward xx cm (20-500) | OK / FALSE |
left xx | Fly left xx cm (20-500) | OK / FALSE |
right xx | Fly right xx cm (20-500) | OK / FALSE |
forward xx | Fly forward xx cm (20-500) | OK / FALSE |
back xx | Fly backward xx cm (20-500) | OK / FALSE |
cw xx | Rotate clockwise xx degree (1-3600) | OK / FALSE |
ccw xx | Rotate counter-clockwise xx degree (1-3600) | OK / FALSE |
flip x | Flip x (l, r, f, b, bl, rb, fl, fr) | OK / FALSE |
speed xx | Set current speed as xx cm/s (1-100) | OK / FALSE |
speed? | Get current speed | xx (0-100) |
battery? | Get current battery percentage | xx (0-100) |
time? | Get current flight time | xx (second) |
첨부된 예제는 Python 언어로(2.7) 작성된 것이다.
# Sample - drone_auto.py
해당 명령어들이 실행되면서 자동으로 비행한다.
import time
import tello
def main():
drone = None
try:
drone = tello.Tello()
print 'Battery : %d%%' % drone.battery()
except RuntimeError:
print 'Failed to initialize the drone.\n'
print 'Please, check your Wi-Fi SSID.\n'
return
drone.takeoff()
time.sleep(3)
drone.forward(50)
time.sleep(3)
drone.cw(90)
time.sleep(3)
drone.flip('f')
time.sleep(3)
drone.land()
time.sleep(3)
print 'Battery : %d%%' % drone.battery()
print 'Flight time: %s' % drone.flight_time()
if __name__ == '__main__':
main()
-
?
후니님 화이팅! 가즈아~ lfd.uci.edu/~gohlke/pythonlibs/#opencv
-
감사합니다^_____^;
-
?
자료 잘 보았습니다! 자료가 급히 필요해서 가입을 했는데 로그인이 안되네요.. 혹시 자료 다운받을 수 있는 다른 방법이 있을까요?
-
메일로 보내드립니다.
-
?
텔로 파이썬 코딩에 관심이 있어서 웹 검색으로 가입하게 되었습니다. 가입처리가 완료가 안되었는지 다운로드가 안되네요.
-
회원 가입과 무관하게 모두 열람하실 수 있습니다.
다운로드를 원하시면 메일 주소 남겨주시면 보내드립니다. -
?
1.텔로가 와이파이로만 연결이 가능한가요?<br>웹검색으로 찾아봤는데 충전단자인 micro 5p 단자로 파이썬 코드 (이미지) 다운로드하는 내용을 찾기 어렵네요. ㅠㅠ;<br>(현재 노트북이 없이 데스크탑으로만 개발하려니 와이파이 동글이 필요할 것 같네요.)<br>(안드로이드 상에서 드론 블럭스 앱과 텔로 앱으로 연결 조종은 해 보았습니다.)<br><br>Ryze 직원도 아닌데 귀찮은 질문 죄송합니다. ^^;<br><br>superusr2003@지메일 (휴리스틱) 입니다.<br>첨부파일 메일 부탁 드립니다.<br>감사합니다
-
안드로이드, iOS 앱들도 결국 텔로와 wifi로 연결된 상태에서 통신을 하는 것입니다.
클라이언트가 무슨 플랫폼이든 상관 없이 저 규격으로 패킷을 보내면 동작합니다. - ?
-
?
드론 프로그램을 공부 중입니다. 자료 부탁 드립니다.
감사합니다. - ?
-
?
안녕하세요 tello 드론에 대한 정보가 많이 부족한데 이런 자료 보여주셔서 감사합니다.
저는 Tello 드론을 활용한 졸업작품을하는 대학생입니다.
자료 보내주시면 제 졸업작품에 너무도 큰 도움이 될 것 같습니다.
혹시 제가 자료를 메일로 받을 수 있을까요? -
?
안녕하세요!! 드론 코딩에 대한 자료들을 찾다가 후니님의 자료를 보았습니다. 너무 유익한 자료라 공부하는데에굉장한 도움이 될거 같습니다. 번거롭게 해드려 죄송합니다. 혹시 자료를 메일로 받아볼 수 있을까요!? 제 메일은 h5435sh@gmail닷컴 입니다!
감사합니다!! -
?
안녕하세요. 텔로를 파이썬을 사용하여 코딩해보고 싶은데 제가 모르는게 너무 많네요. ㅠㅠ
자료 보내주시면 정말 감사드리겠습니다. chnexpert@지메일닷컴 입니다. 감사합니다. -
?
제가 파이썬 공부중인데 앞으로 드론이 어떻게 동작하는지 알고 싶은데 파일 좀 보내주실수있나요?
제 이메일은 tnr8284148@naver입니다 - ?
-
?
텔로 에듀 초등학생들에게 가르치고 있는 교사입니다.
에듀 앱으로는 명령어까지는 했는데... 이제 학생들에게 군집비행 시범을 보여줄려고 하다가 글을 발견하게 되었습니다.
홈피에 영어로 되어있어. 대략 살펴보니 와이파이로 드론 여러대 연결하고 파이썬 프로그램 깔아서.
예제 파일 실해하면 되지 않을가 싶습니다.
sungo55@naver
이 메일로 부탁드립니다. 실례가 되지 않는다면 연락처 메일에 남겨주시면 제가 잘 모르는 사항은
연락드려도 가능할까요. -
?
인터넷 검색하다 여기까지 왔습니다. 저는 고등학교 교사로 텔로에듀를 구입했고, 학생들에게 가르치려고 준비중입니다. 선생님과 연락하고 싶습니다. 제 메일은 ryu0314@naver입니다.
- ?
- ?
- ?
- ?
-
?
안녕하세요. 텔로를 파이썬을 사용하여 코딩해보고 싶습니다.
자료 보내주시면 많은 도움이 될 것 같습니다. saba9543@naver 입니다.
감사합니다. - ?
-
?
안녕하세요~ 저는 유정훈이라고 합니다. 좋은 자료 공유해 주셔서 감사합니다. 회원가입을 했는데 로그인이 아직 안되네요. 이메일로 첨부자료를 보내주시면 정말 감사하겠습니다. 수고하세요~!!!
- ?
- ?
-
?
파이썬에서 텔로 날려보고 싶습니다
자료 부탁드립니다 ^^
감사합니다 -
?
python 자료부탁드립니다.
- ?
-
?
파이써자료 부탁드립니다. 아이들과 파이썬으로 텔로 컨트롤 하려합니다.
-
?
파이썬으로 드론을 비행하고 있는 중인데요,
현재 데모 cmd로 기존 명령어를 입력하면 단순명령은 동작은 잘 됩니다.
그런데 조건문을 줘서 (만약 v를 입력하면, forward 50 후 back 30) 이러한 명령을
실행시키려고 하는데 명령어 입력하는 법을 잘 모르겠네요 ㅠ - ?
- ?
-
?
저도 파이썬으로 텔로를 작동하고자 합니다. 귀한 자료 부탁드려도 되나요...
mansword@naver
감사합니다. -
?
안녕하세요.
텔로 파이썬 자료를 메일로 보내 주실 수 있는지요~..
메일 주소는 bjchoi0239@지메일입니다..
부탁 좀 드리겠습니다 - ?
-
?
텔로 에듀를 파이썬을 이용해 코딩을 해보고 싶어요ㅠㅠ 자료보내주시면 감사하겠습니다.
kim46825@naver -
?
안녕하세요!!! 좋은 정보 감사합니다. 혹시 군집비행 관련해서는 글쓰신 건 없으신가요??? 지금 축제 준비로 인해 군집 비행에 도전해 보려고 하는데,,, 잘 되지 않아서 도움을 구하려고 합니다.
- ?
- ?
- ?
- ?
- ?
- ?
-
?
파이썬으로 텔로 카메라 연동해서 학습시킨 데이터로 사물 인식 시스템을 만들려고 하는데 와이파이로 드론 카메라와 연결할 수는 없나요??
-
?
안녕하세요?
텔로에듀를 구매 했는데....파이썬으로 코딩을 하려고 합니다.....도움 부탁드립니다.
kihong0316@naver
감사합니다. -
?
안녕하세요?
텔로에듀 파이썬 코딩 도움 부탁드립니다.
kihong0316@naver
감사합니다. - ?
- ?
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
49 | Develop |
[jsp][php] 간단한 강좌 자료..
![]() |
hooni | 2003.04.23 | 8158 |
48 | Develop |
[c] flooding 알고리즘 미로 찾기(도스용) 소스코드
9 ![]() |
hooni | 2003.04.23 | 12607 |
47 | Develop |
[c] 테트리스(Tetris) 게임(도스용) 소스코드
![]() |
hooni | 2003.04.23 | 11528 |
46 | Develop |
[c] 파일입출력, 링크리스트(linked list)를 이용한 주소록(도스용) 소스코드
1 ![]() |
hooni | 2003.04.23 | 11199 |
45 | Develop |
[c] 간단한 자료구조(stack, queue, linked list) 구현 소스
6 ![]() |
hooni | 2003.04.23 | 10171 |
44 | Develop | [unix] 쉘 스크립트 예제 모음 | hooni | 2003.04.23 | 15016 |
43 | Develop | [linux] 쉘 스크립트를 이용한 BBS | hooni | 2003.04.23 | 10084 |
42 | Develop | [c] pcap을 이용한 패킷 분석 ㅎㅎ | hooni | 2003.04.23 | 10254 |
41 | Develop | [js] 스크롤을 포함한 마우스 위치 찾는 코드 | hooni | 2003.04.23 | 8551 |
40 | Develop | [js] 쿠키(cookie)에 대한 설명과 예제.. | hooni | 2003.04.23 | 8357 |
39 | Develop | [php] URL/URI 관련 환경변수 | hooni | 2003.04.23 | 9224 |
38 | Develop | [js] 자바스크립트로 응용프로그램 실행 ㅎㅎ | hooni | 2003.04.23 | 9854 |