Created
February 3, 2020 21:38
-
-
Save elbruno/286d1f954a823653c245287ad42fc7b4 to your computer and use it in GitHub Desktop.
DjiTelloSdkOfficialSample1.3.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# | |
# Tello Python3 Control Demo | |
# | |
# http://www.ryzerobotics.com/ | |
# | |
# 1/1/2018 | |
# | |
# official source: https://terra-1-g.djicdn.com/2d4dce68897a46b19fc717f3576b7c6a/Tello%20编程相关/Both/Tello3(1).py | |
import threading | |
import socket | |
import sys | |
import time | |
import platform | |
host = '' | |
port = 9000 | |
locaddr = (host,port) | |
# Create a UDP socket | |
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) | |
tello_address = ('192.168.10.1', 8889) | |
sock.bind(locaddr) | |
def recv(): | |
count = 0 | |
while True: | |
try: | |
data, server = sock.recvfrom(1518) | |
print(data.decode(encoding="utf-8")) | |
except Exception: | |
print ('\nExit . . .\n') | |
break | |
print ('\r\n\r\nTello Python3 Demo.\r\n') | |
print ('Tello: command takeoff land flip forward back left right \r\n up down cw ccw speed speed?\r\n') | |
print ('end -- quit demo.\r\n') | |
#recvThread create | |
recvThread = threading.Thread(target=recv) | |
recvThread.start() | |
while True: | |
try: | |
python_version = str(platform.python_version()) | |
version_init_num = int(python_version.partition('.')[0]) | |
# print (version_init_num) | |
if version_init_num == 3: | |
msg = input(""); | |
elif version_init_num == 2: | |
msg = raw_input(""); | |
if not msg: | |
break | |
if 'end' in msg: | |
print ('...') | |
sock.close() | |
break | |
# Send data | |
msg = msg.encode(encoding="utf-8") | |
sent = sock.sendto(msg, tello_address) | |
except KeyboardInterrupt: | |
print ('\n . . .\n') | |
sock.close() | |
break |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment