概述
从零开始使用Python编程DJI Tello
从一台未安装python环境的电脑 -->用python编程无人机,其实一点也不复杂。步骤为以下几点:
安装python以及Python IDLE的基础操作
阅读无人机的相关sdk
安装无人机相关库
接下来就是写代码编程啦
一:安装python(这里以win作为案例)
1.下载安装包:在Python的官网 www.python.org 中找到最新版本的Python安装包,点击进行下载,请注意,当你的电脑是32位的机器,请选择32位的安装包,如果是64位的,请选择64位的安装包;
2.打开安装包开始行动:(再次页面不要着急下一步,一定点击下面的Add python 3.6 to PATH)
3.然后点击install Now就可以啦
4.看到以下提示恭喜你,第一步已做好
5.测试
Python安装好之后,我们要检测一下是否安装成功用系统管理员打开命令行工具cmd。输入“python-V”,然后敲回车,如果出现以下界面,则表示我们安装成功了:
6.基本上到这里就安装的差不多了,继续往下看吧;
7.创建 并且运行python文件,在这里提倡大家每个项目的编程给他独立的文件夹,那么就开始吧。
在我指定路径下创建文件夹,并且打开python IDLE-File-New File然后直接保存文件到刚刚的路径下
8.我们直接在刚刚创建的python文件里面用print()函数打印一段话吧
print(“Hello Tello”) 点击Run -Run Module即可运行我们的第一个程序
9.出现以下界面的同学是很棒的哦(软件使用部分结束)
二:去大疆官网查找相关无人机编程资料,这里毕竟是新手贴,所以用比较容易理解的djitellopy库,tello SDK2.0
tello sdk .pdf
输入以上网站去阅读sdk的相关指令,如果看不懂没关系,先记住里面的Tello命令表的内容就行(也不需要刚刚开始全部记住command、takeoff、land等)详细的介绍后面有时间逐步更新这里先不赘述
三:安装tello相关库文件
这里需要介绍的是如何给python 安装第三方库,也就是我们需要编程的djitellopy库
1.打开命令行工具cmd(这里使用的国内镜像豆瓣源),输入
pip install djitellopy -i https://pypi.douban.com/simple/
这个就是这个是python安装库的命令,djitellopy 是我们用到的库,-i 后面的网址是豆瓣源网址。然后直接回车就可以。(电脑需要联网哈图片)
在这里会自动为你的电脑安装djitellopy需要的相关库,比如opencv库,出现Successfully installed时候我们就欢呼吧!
我们开始编写代码吧!
回到我们的IDLE
首先导入tello的包从djitellopy里面
from djitellopy import Tello
接着创建一个Tell0对象,也就是我们的无人机,我们需要对它进行编程控制,创建Tello对象不会连接到Tello或尝试向Tello发送任何命令。我们可以将Tello对象视为实际无人机的软件表示。
t = Tello()
此时我们需要调用连接无人机的方法(函数)其实这个函数发送的就是我们刚刚从sdk中看的"command"命令,让无人机进入sdk模式,我们在对无人机进行任何控制,都需要调用此函数,否则无法控制。
定义此函数截图如下:
t.connect()
接下来就是让无人机起飞啦(如果这里有报错或者起飞不了,请查看电池电量或者进tello软件查看是否有错误提示)
起飞时候需要放置安全的环境下进行哈
t.takeoff()
在这里如果我们直接想查看电量就调用以下方法(猜猜库文件如何定义get_battery()函数呢?)
response = t.get_battery()
print(response)
查完电量我们也可以往某一个方向移动,比如向前飞!(其他方向的移动我相信你已经学????了)
move_forward()函数定义如下:
t.move_forward(100)
嗯。。。。由于时间关系先写到这里!我们后面????
那就????️ 吧!
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210415090015444.png
t.land()
到此呢,我们编程无人机的第一个小项目已经完成,相信你可以继续往下编写你的程序!说到这里我们刚刚调用的那几个无人机函数,哪里来的呢!?
整体代码如下,为什么要加入时间模块呢?因为有些时候无人机上一个指令没有执行完毕,不会立马执行下一个指令的.
后面会接着讲结合djitellopy库的相关内容
from djitellopy import Tello
import time
t=Tello()
t.connect()
t.takeoff()
time.sleep(3)
response = t.get_battery()
print(response)
time.sleep(3)
t.move_forward(100)
t.land()
友情提示:运行程序时记得无人机开机连接电脑
到这里,你是否给个三连呢?请关注我的微信公众号
关注我下期再见!
最后
以上就是欣慰抽屉为你收集整理的从零开始使用Python编程DJI Tello的全部内容,希望文章能够帮你解决从零开始使用Python编程DJI Tello所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复